2019年3月27日水曜日

FileMaker fmpプロトコルの対象を取得・書き換え レジストリ PowerShell


fmpプロトコルの対象を取得
PowerShell

$RegPath = "Registry::HKCR\FMP\shell\open\command" ;
$ItemProperty=Get-ItemProperty -Path $RegPath;
$ItemProperty.'(default)';

戻り値:
"C:\Program Files\FileMaker\FileMaker Pro 17 Advanced\FileMaker Pro Advanced.exe %1"




fmpプロトコルの対象を書き換え
PowerShell ※管理者権限でPowerShell を起動しておく

$value="C:\Program Files\FileMaker\FileMaker Pro 17 Advanced\FileMaker Pro Advanced.exe %1";
Set-ItemProperty $RegPath -name "(default)" -value $value;


fmpプロトコルの対象を書き換え
PowerShell ※管理者権限で実行


$Command='$value=\"C:\Program Files\FileMaker\FileMaker Pro 17 Advanced\FileMaker Pro Advanced.exe %1\";$RegPath = \"Registry::HKCR\FMP\shell\open\command\" ;Set-ItemProperty $RegPath -name \"(default)\" -value $value;';

Start-Process powershell -ArgumentList $Command -Verb RunAs -Wait;

2019年3月8日金曜日

FileMaker ExecuteSQL|フィールド名取得

ファイルメーカー フィールド名取得

Let (
[ $query = " SELECT FieldName
FROM FILEMAKER_FIELDS
WHERE TableName = '{TableOccurrence}'
AND
FieldClass = 'Normal'
AND
FieldType NOT LIKE 'global%'
AND
FieldName NOT IN('{Field1}','{Field2}')
"
];
ExecuteSQL ( $query ; ", " ; "" )
)

FileMaker ExecuteSQL|BaseTableName を取得

ファイルメーカー ベーステーブル名を取得。

Let (
[ query = "

SELECT
'$'||TableName||'='||'\"'||BaseTableName||'\"'
FROM FileMaker_Tables

"
; Result =  ExecuteSQL ( query
; "" ; ";" )
]; Result
)


/*
FROM FileMaker_Tables
1. TableName
2. TableID
3. BaseTableName
4. BaseFileName
5. ModCount
*/