みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
「VB.NET」で作成されてWinアプリとFileMakerを連動させたいと思っています。
「Event を送信」で設定すればできるようなのですが、どのように設定すればいいのかわからず、質問させて頂きました。
したい事は以下の2点です。
①対象レコードにある、特定のフィールドの値を、当該Winアプリに送り、その値を元に当該アプリを実行させる。
②当該アプリが取得した値を、FMのレコードに送る。
Winアプリ自体は、別のプログラマにたんので作ってもらうのですが、
どのように仕込んでもらったらいいのかも不明です。
FileMaker側の設定方法、
Winアプリ側への依頼内容、
ともにアドバイスをいただけると嬉しいです。
よろしくお願いします。
環境、Win7 FM14
コマンドライン引数ではあまりたくさん送れませんが、「対象レコード」はどの位まで必要ですか?
「FMのレコード」は新規レコードですか?
多いと万単位になります。
難しいようでしたら、csvに書き出して、それをVB側で読み込ませるといった流れでもOKです。
その際、VBが終了した時に、終了したことがFM側で認識できる方法は欲しいのですが?
よろしくお願いします。
PetaExecuteプラグインが使えそうな気がします。
http://www.free-sharesoft.com/libDL/jp9 … /0003.html
Ver12では使えています。
FileMaker側からvbを呼び出し、vbが終わるまで待っています。
私の場合、csv書き出しをして、その後FileMakerでそのcsvを読み込むスクリプトを走らせています。
Offline
②当該アプリが取得した値を、FMのレコードに送る。
とあるので、「PetaExecuteプラグイン」を使う場合、「当該アプリ」に標準出力で戻り値を出力するようにしてもらう必要があります。
また、
「当該アプリ」から「FMP:プロトコル」で値を返すようにすれば、プラグイン無しで戻り値を取得出来ます。
「FMP:プロトコル」VB.NET の例:
VBは、触らないので未検証ですが、C#は、イケるので大丈夫でしょう。
VB.NET の場合、
System.Diagnostics.Process.Start("FMP:~")
参考:
指定したURLをブラウザで開く、電子メールソフトを開く: .NET Tips: C#, VB.NET : http://dobon.net/vb/dotnet/process/openbrowser.html
Last edited by qb_dp (2015-06-30 19:59:17)
Offline
渡すデータが多いのならコマンドラインでなくファイル経由などになるでしょうから、終了したらActiveXでスクリプト実行するだけでいいかも。
処理内容によってはわざわざ別プログラム作るんでなくFM内のWEBビューアとかでできないのかな。
Offline
PetaExecuteがFM14で動くか試そうと思ったけど、ダウンロードがリンク切れになってました。
確か、Unicodeに対応してなかった気がしましたが...
Javaが必要ですが、ScriptMasterで同様の処理が可能です。
Last edited by wader (2015-06-30 21:11:49)
Offline
みなさん。ありがとうございます。
ただ、私にはどれも難しいです。。。
じっくり拝見させて頂き、考えていきたいと思います。
wanderさん
>渡すデータが多いのならコマンドラインでなくファイル経由などになるでしょうから、終了したらActiveXでスクリプト実行するだけでいいかも。
→ これは具体的にどうすればいいのですか?
PetaExecuteは
http://www.vector.co.jp/download/file/w … 05963.html
からダウンロードできます。
Offline
ありがとうございます。
PetaExecuteは、FM13では使えましたがFM14ではだめでした。計算結果が常に「?」
違った。FM14では関数リストが対応しなくなったので関数名を自分で打たなくてはいけなくなって、ハイフンを入れ忘れてただけでした。
Unicode非対応というのは、例えばファイル名にSJIS外の文字があると、cmd /c dir の結果でそこだけが「?」に置きかえられたりします。
Pages: 1
[ Generated in 0.009 seconds, 9 queries executed - Memory usage: 521.59 KiB (Peak: 526.49 KiB) ]