みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
「FileMaker Server 11」+「FileMaker Pro 11 Advanced」にて、「カスタムWeb公開 with PHP」を使っております。
グローバルフィールドに値が設定できずに困っております。
下記のことを試してみました。
1)「FileMaker Pro 11 Advanced」にて、テーブル(gTbl)を作成し、グローバルフィールド(gValue)を作成。
2)上記テーブル(gTbl)に、新規レコードを1つ作成。グローバルフィールド(gValue)は未設定(空欄)。
3)上記グローバルフィールドに値を設定するための、「フィールド設定「gTbl::gValue; "aaaa"」」のみを含むスクリプト(setValue)を作成。
4)上記ファイルを、FileMaker Server 11 にアップロード、開く。
5)サーバーで公開した上記ファイルを、ネットワーク経由で「共有ファイル」として開き、FileMaker Pro 11 Advanced からスクリプト(setValue)を実行。
→ グローバルフィールド(gValue)に、値"aaaa"が設定される
6)FileMaker Server 上にあるPHPファイルへネットワーク経由でアクセスしスクリプト(setValue)を実行。newPerformScriptCommand("gTbl", "setValue"); のあと、execute()。
→ getField()でグローバルフィールド(gValue)を確認したが、値が設定されていない(空)。
7)サーバーで公開した上記ファイルを、ネットワーク経由で「共有ファイル」として開き、FileMaker Pro 11 Advanced から
グローバルフィールド(gValue)の「グローバル格納」のチェックを外す。
8)FileMaker Server 上にあるPHPファイルへネットワーク経由でアクセスしスクリプト(setValue)を実行。newPerformScriptCommand("gTbl", "setValue"); のあと、execute()。
→ getField()でフィールド(gValue)を確認すると、値"aaaa"が設定される。
・グローバルフィールドへの値設定に関する疑問点
・同じスクリプトを FileMaker Pro 11 Advanced から実行するとうまくいき、PHPから実行するとうまくいかない。何故か?
・PHPからスクリプトを呼び出した場合、グローバルフィールドだと値が設定できないが、グローバルではないフィールドだと値が設定される。何故か?
グローバルフィールドの初期値や公開時の挙動については、色々調べ理解していたつもりで、グローバルフィールドはネットワーク経由で共有使用する際にはユーザー毎の値が持てる便利な使い方ができると思っていたのですが、どうしてもPHPからグローバルフィールドの値を変えることが出来ずに困惑しております。何か根本的な間違いや勘違いがあるのかもしれませんが、行き詰まってしまいました。ご教授頂ければ幸いです。
wader 様
ありがとうございます。
戻り値を取得する仕組みがあるのかもしれないと思いつつも、自分では解決方法を見いだせず、
ユーザー毎の情報を持つテーブルに、スクリプトからの戻り値を設定するフィールドを設け対応しておりました。
APIとしては、戻り値を受け取る仕組みはないようですね。。。
実は、カスタムWeb公開時のグローバルフィールドの挙動について、解決できないところがありまして、今嵌まっております。。。
この件は、別途質問させて頂こうと思います。
FileMaker Server 11 のカスタムWeb公開 with PHP について、教えて頂きたく投稿致しました。
newPerformScriptCommand() 及び execute() にて、FileMaker Pro 11 のスクリプトを実行しております。
スクリプト内で「現在のスクリプトの終了」にて戻り値を設定した場合、この戻り値をPHP側で受け取りたいと思っていますが方法が判りません。
スクリプトの結果をPHPで取得する方法についてご教授ください。
よろしくお願い致します。
Pages: 1
[ Generated in 0.005 seconds, 6 queries executed - Memory usage: 515.04 KiB (Peak: 519.89 KiB) ]