2017年5月20日土曜日

FileMaker 簡易WEBスクレイピング

FileMaker 簡易WEBスクレイピング
動作検証
OS:Windows 10
FileMaker Pro 16
※FileMaker Pro 12以降OK。たぶん。

例:WEBビューアで表示中のHTMLソースから 一番目の a href の値を取得。

■スクリプト名:SetField(fn,val)
フィールドを名前で設定 [$fn; $val]


Web ビューアの設定 [オブジェクト名:"web1"; URL:
"javascript:
function f(){
var val=document.getElementsByTagName('a')[0].href;
window.open( 'fmp://$/{ファイル名}?script=SetField(fn,val)&$fn={テーブル名::フィールド名}&$val='+encodeURIComponent(val), 'fmp' ) ;}
f();
"
]



Internet Explorer の値しいウインドウが一つ開いてしまう。
「この Web サイトがこのコンピューターのプログラムを開くことを許可しますか?」
と出る。
「この種類のアドレスを開く前に常に確認する」
のチェックを外しておくと次からは出ない。

もっと制御したい場合は、コチラ:Operate_ie : https://sites.google.com/site/scriptmakerps/operate_ie

もっと、もっと制御したい場合は、コチラ:
FileMaker + Google ChromeでWEBスクレイピング!  : https://sites.google.com/site/scriptmakerps/example/filemaker-google-chromeweb-scraping

Windows FileMaker fmpプロトコル レジストリ

Memo
FileMaker
Windows
fmpプロトコル ターゲット
レジストリ

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\FMP\shell\open\command]
@="C:\\Program Files\\FileMaker\\FileMaker Pro 16 Advanced\\FileMaker Pro Advanced.exe %1"

2017年5月14日日曜日

PowerShell から FileMaker ODBC 経由でレコードの値を更新。|FileMaker ODBC|UPDATE|PowerShell

PowerShell から FileMaker ODBC 経由でレコードの値を更新。|FileMaker ODBC|UPDATE|PowerShell


[void][System.Reflection.Assembly]::LoadWithPartialName('System.Data');
$connectionString = 'driver={FileMaker ODBC};server=localhost;database=テスト;uid=admin;pwd=;';

$cmd = "UPDATE `"テスト`" SET`"フィールド1`"='フィールド1の値更新'  WHERE `"key`" = '74194D2E-DEE1-8E44-BFD1-48FF0E88052A' ";

$odbc_con = New-Object System.Data.Odbc.OdbcConnection($connectionString);
$odbc_con.Open();
$odbc_cmd = New-Object System.Data.Odbc.OdbcCommand;
$odbc_cmd.Connection = $odbc_con;
$odbc_cmd.CommandText = $cmd;

$Result = $odbc_cmd.ExecuteNonQuery();

$odbc_cmd.Dispose();
$odbc_con.Close();
$odbc_con.Dispose() ;
$Result;
<#UPDATE、INSERT、および DELETE のステートメントでは、戻り値は、コマンドは、影響を受ける行の数です。#>