初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 初心者のFileMaker pro Q&A » IEで「URLを開く」スクリプトを実行するとエラーが表示される。 » 2017-05-15 16:31:29

kazoo
Replies: 0

■環境
FileMaker Server 15.0.1.137 (WebDirectで利用)
FileMaker14.0.6
サーバ: Windows2012 R2
クライアントWindows10
ブラウザ:IE11 バージョン:11.1198.14393 更新バージョン:11.0.42

テキストフィールドに、基幹システムの指定のURLを登録し、
「URLを開く」スクリプトをボタンに設定し(単一ステップ)、
ページを開くようにしたいと思っています。

WebDirectからアクセスし、ボタンをクリックすると、
ポップアップで登録したURLのページは開くのですが、
ブラウザ中央に、背景がベージュで茶色い文字で、
以下のメッセージが大きく表示されてしまいます。


「ウインドウを開くことができませんでした。
ブラウザのポップアップブロックを無効にしてから再試行してください。」


ポップアップ自体は、IEのツール→ポップアップブロックより無効としており、
ポップアップは事実表示されております。
しかし上記メッセージが表示される状態です。
yahooなどの一般サイトのURLで試しても同様の状態でした。

また、このスクリプトを実行後、メッセージは消える場合もあるのですが、
表示されたままブラウザが固まってしまい再ログインしなければならない時もあります。
Chromeで試してみたところ、上記メッセージは表示されず正常に表示されました。
ブラウザを変更すれば良いのでしょうが業務都合上IEを利用しなければならず困っています。

どなたか本事象の原因の解決方法が分かる方はいらっしゃいますでしょうか。
宜しくお願い致します。

#2 Re: 初心者のFileMaker pro Q&A » バッチファイルの戻り値の受け取り » 2016-05-11 17:18:55

Webdirectでの使用の為、上記コマンドはクライアントPCからは通りませんでしたが、
Server上で、比較するバッチファイルの、
ファイルの更新日付が違かった場合に2を返していた部分を変更し、
ご教示いただいた start fmp~と記述して手動実行したところ、
正常に実行できインポート出来ました。
しかし、FileMaker Serverのスケジュールのシステムスクリプトに登録し実行しても
Windowsのタスクスケジューラに登録して実行してもインポート処理が実施されませんでした。
比較用のテキストファイルの更新日は変更されているので、処理は通っており、
このコマンドが自動実行できないもののようです。
こうなるとあきらめて今まで通りの運用を続けるしかないようです。

ありがとうございました。

#3 Re: 初心者のFileMaker pro Q&A » バッチファイルの戻り値の受け取り » 2016-05-10 18:50:33

ありがとうございます。

やりたい事は、FileMaker Serverのスケジュールで、他で使用しているシステムからダウンロードした
CSVファイルのインポートを自動で行えるようにしたいのです。

その別のシステムが以下、FileMakerの指定ディレクトリに自動でファイルを格納してくれれば済む話なのですが、
諸事情により当分難しく現在はディレクトリへの格納は難しく、サーバに入りディレクトリにCSVを格納し、
FileMaker Serverのインポート用のスケジュールを手動実行している状態です。

指定ディレクトリ
C:\Program Files\FileMaker\FileMaker Server\Data\Documents\SeihinkaList

そのため以下のような方法はどうかと思い試してみたのです。

・クライアントから、上記指定ディレクトリにCSVを転送するバッチファイルを実行(作成済)

・上記指定ディレクトリのファイルの更新日時が以前と同じであれば1を、違ければ2を返すバッチファイルを作り、
これをFileMakeServerのスケジュールで実行し、実行結果が1の場合は何もせず、2の場合、
FilemMakerのインポートのスクリプトを実行(作成済)
更新日時については別のテキストファイルに保持、比較を行い2であった場合のみ更新日時を更新する。

上記であればクライアントでCSVをダウンロードして転送用のバッチファイルを
実行するだけで済むかなと思ったのですがなかなかうまくいかない状態です。
このような方法は難しいのでしょうか。

宜しくお願い致します。

#4 初心者のFileMaker pro Q&A » バッチファイルの戻り値の受け取り » 2016-05-09 18:10:32

kazoo
Replies: 6

お世話になってます。

環境
Windows Server 2012 R2
FileMaker Server 14
FileMaker Pro 14 Webdirectで利用

FileMakerからバッチファイルを実行し、
バッチファイルの戻り値をFileMaker側に受け取る事は可能でしょうか。
実行自体は「Eventを送信」で可能なのは分かっているのですが、
値の受け取り方が分からず悩んでいます。そもそもできないのかも不明です。

例えば、
バッチファイルの実行結果が1であればスクリプトを実行、2であれば何もしないのような事をしたいのですが、
可能でしょうか。

宜しくお願いします。

#5 Re: 初心者のFileMaker pro Q&A » インポート用のドキュメントパスとテンポラリパスが通らなずCSVファイルが認識されない。 » 2016-02-05 17:52:37

ありがとうございます。
フォルダの権限を変更する事で、無事スケジュールでのインポート処理が可能となりました。
ですが、スクリプト内のインポート処理の後のLoop処理が走っていない状態です。
今、Filemaker Serverのスケジュールに登録しているスクリプトの内容は以下です。

----------------------------------------------------
全レコードを表示
対象外のみを表示

<インポート処理>

レコード/検索条件/ページへ移動[最初の]

Loop
  if [テーブル名::予定=""]   #予定がブランクのものについては”予”を追加
    テキストを装入[選択;
    テーブル名::予定[予]]
  End if
  if [テーブル名::作成日=""]  #作成日がブランクのものについては作成日を追加(WebDirectでは日付フィールドオプションの作成日の追加が機能しない為)
    計算結果を装入 [選択;
    テーブル名::作成日;Get(日付)]
  End if
  レコード/検索条件/ページへ移動[次の;
  最後まできたら終了]
End Loop
全レコードを表示
レコード/検索条件/ページへ移動 [最初の]
----------------------------------------------------

今回のスクリプトとは別に、WEBブラウザ上で使用する為用に手動で実行する用のスクリプトがあるのですが、
そちらはWebdirectの仕様により、ファイルの指定等ができない為、
インポート処理の部分のみが上記と違うスクリプトになっています。 → レコードのインポート[] としているだけ
そちらのスクリプトは上記Loop処理部分もDBに反映されます。
また、今回試しているスケジュール上のスクリプトも、FileMaker上手動実行した場合は反映されます。
FileMaker Serverのスケジュールからだと反映されないのは何故でしょうか。
何度も申し訳ありませんがよろしくお願い致します。

#6 Re: 初心者のFileMaker pro Q&A » インポート用のドキュメントパスとテンポラリパスが通らなずCSVファイルが認識されない。 » 2016-02-04 19:00:23

Moz様、qb_dp様 ありがとうございます。

qb_dp様が記載されていた、

$filepath
filewin:/C:/Users/{ユーザー名}/Documents/test.csv

と下の行を追加することで、最初の投稿の際に記載した、
「レコードのインポート」での以下の部分は解消され、
インポート順の指定が見えるようになりました。

インポート順の指定 → インポートのフィールドが表示されず

しかし設定後、qb_dp様がサーバテストの項目で記載されている、
C:/Program Files/FileMaker/FileMaker Server/Data/Documents/の下にtest.csvは存在しませんでした。
現在はクライアントでなく、サーバの C:/Users/{ユーザー名}/Documents/にtest.csvを格納して試しています。
上記はスクリプトを指定した際、自動的に格納されるものなのでしょうか。
それともここに手動で格納するものなのでしょうか。

とりあえず手動で格納してFileMaker Serverのスケジュールから実行してみたところ、
スクリプトは実行され、状態はOKになったものの、インポート自体はされていませんでした。

FileMaker Serverでは以下のログが出力されていました。

「CSVインポート(スケジュール名)」が完了しました;最後のスクリプトエラー(100)

ファイルが見つかりません。というエラーになっていますが、
ファイルを認識していないのはディレクトリの権限の問題等によるものなのでしょうか。
現在ディレクトリ等はデフォルトの状態で試しているのですが、
変更すべき箇所がありましたらご教授いただけますでしょうか。

宜しくお願い致します。

#7 Re: 初心者のFileMaker pro Q&A » インポート用のドキュメントパスとテンポラリパスが通らなずCSVファイルが認識されない。 » 2016-02-03 18:17:02

Mozさん回答ありがとうございます。
3以外のエラーは以下になります。

1)Filemakerで実行した際のエラー
[一致するレコードを更新]オプションに対し、少なくとも1組の照
合リール度が指定されなければなりません。

2)スクリプト実行後のFileMaker Serverのログビューア
スケジュール「スクリプト名」が完了しました;最後のスクリプトエラー(409)。
DB名:スクリプト名:Import Recordsでスケジュール「スクリプト名」スクリプトエラー(2020)

スケジュールの状態の所は、FileMakerスクリプトエラーとなっています。

アクセス権ですか、全てインストールして使い始めたばかりの環境でまだ何も設定変更等しておりません。
(Administratorでは実行しています。)
その辺が問題になるのでしょうか。

#8 Re: 初心者のFileMaker pro Q&A » インポート用のドキュメントパスとテンポラリパスが通らなずCSVファイルが認識されない。 » 2016-02-03 17:00:58

Mozさん、回答ありがとうございます。また、ご指摘の件申し訳ありません。今後、焦らずに進めます。

以下の4つのスクリプトをFileMaker Serverのスケジュールから試しましたが全てスクリプトエラーになりました。
現在、DBには20レコードあり、インポートしようとしているCSVは600件程あり、
勿論、C:/Program Files/FileMaker/FileMaker Server/Data/Documentsにはtest.csvが格納されています。
ここからスクリプトエラーになる原因が何か考えられますでしょうか。

1)
変数を設定:[$filepath
値: Get(ドキュメントパス) & "test.csv"]
レコードのインポートダイアログなし;「$filepath」;
一致するレコードを更新; シフトJIS]

2)
変数を設定:[$filepath
値: "filewin:/C:/Program Files/FileMaker/FileMaker Server/Data/Documents/test.csv"]
レコードのインポートダイアログなし;「$filepath」;
一致するレコードを更新; シフトJIS]

3)
レコードのインポート[ダイアログなし;「Get(ドキュメントパス) & "test.csv"」;
一致するレコードを更新;シフトJIS]

4)
レコードのインポート[ダイアログなし;「filewin:/C:/Program Files/FileMaker/FileMaker Server/Data/Documents/test.csv」;
一致するレコードを更新;シフトJIS]

#9 Re: 初心者のFileMaker pro Q&A » インポート用のドキュメントパスとテンポラリパスが通らなずCSVファイルが認識されない。 » 2016-02-03 14:17:13

Mozさん返信ありがとうございます。

お教え頂いたURLに記述されているパスにファイルを格納してみましたが、
同様、ファイル「test.csv」が見つからなかったため、処理を完了できません。
と表示されました。また、そこでOKボタンをクリックすると、
「ファイルを開く」ダイアログが開き、そこにはtest.csvが存在していました。

/C:/Users/John Smith/Documents
上記ディレクトリのtest.csvを削除してスクリプトを実行すると上記の「ファイルを開く」ダイアログにtest.csvが存在していない
再度格納して実行したところ、test.csvが存在していた。

/C:/Program Files/FileMaker/FileMaker Server/Data/Documents/
上記ディレクトリにtest.csvを格納していなかった状態でも、「ファイルを開く」ダイアログにtest.csvが存在していた。

上記結果から最初の方のパスを読みに行っているのだと思います。
色々試してみましたが、以下の状態でスクリプトを直接実行したところ、
「フィールドデータのインポート順」ダイアログが表示され、
インポート側のフィールドが見えるようになりました。
------------------------------------------------------------------------
[変数を設定]
値: "filewin:/"を"filewin:"にした

[レコートのインポート]
ダイアログなし → ONをOFFにした
インポート順の指定 → インポート側のフィールドが表示されず(?)
------------------------------------------------------------------------
また、FileMaker Serverのスケジュールを実行したところ、状態はOKになりましたがDB側では何も起きていないようでした。

WebDdirectではインポートの”ダイアログなしで実行”はサポートされていないのは分かっていましたが、
クライアントがWebブラウザからアクセスして実行した場合の制限と思っていました。
ですが上記の結果だと、FileMaker ServerのスケジュールでもWebdirectを利用しているという時点で、
ダイアログなしで実行はサポートされないということなのでしょうか。

Webdirectを利用されている方で、自動で定期的なFMへのインポートをされている方はいらっしゃいますでしょうか。
いらっしゃいましたら方法をご教授いただけますでしょうか。
それとも手動インストールしか方法は無いというのが結論なのでしょうか。

#10 初心者のFileMaker pro Q&A » インポート用のドキュメントパスとテンポラリパスが通らなずCSVファイルが認識されない。 » 2016-02-02 17:58:19

kazoo
Replies: 12

お世話になります。
Filemaker Serverのスケジュール機能にて
CSVファイルのインポートを自動で実行するようにする為、、
Filemakerの以下サイトのサンプルを見てスクリプトを作成したのですが、
CSVファイルを認識しない状況です。
http://filemaker-jp.custhelp.com/app/an … a_id/8892/
●環境
Windows Server 2012 R2 Std
Filemaker Server.14  Webdirect10人同時接続
Filemaker Pro.14
仮想環境で構築し、ネットワーク接続でアクセスし、
サーバ上のFilemakerで以下内容のスクリプトを試しています。
現在試しているスクリプトの内容は以下です。
------------------------------------------------------------------------
[変数を設定]
名前: $filepath
値: "filewin:/" & Get(ドキュメントパス) & "test.csv"
繰り返し: 1
[レコートのインポート]
ダイアログなし → ON
データソースを指定 → ファイルパス一覧: $filepath
インポート順の指定 → インポートのフィールドが表示されず
------------------------------------------------------------------------
インポートするCSVファイルは、計算フィールドの
Get(ドキュメントパス)で返されたディレクトリに格納したのですが
スクリプトを実行すると、
ファイル「test.csv」が見つからなかったため、処理を完了できません。
と表示されます。そこでOKボタンをクリックすると、
「ファイルを開く」ダイアログが開き、そこにはtest.csvが存在している状態です。
Get(テンポラリパス)で返されるディレクトリに格納しても同様でした。
filewin:/の部分も//に変えてみたりしたのですが変化がありませんでした。
上記から何かわかる事はありますでしょうか。

#11 Re: 初心者のFileMaker pro Q&A » Webdirectでのレコードのインポートについて » 2015-09-15 16:31:55

度々すみません。
後から作成したサンプルですがその後、問題なくインポート出来ましたので、
先に構築したDBかExcellのどこかがおかしいのだと思います。
もう少し検証してみます。

ありがとうございました。

#12 Re: 初心者のFileMaker pro Q&A » Webdirectでのレコードのインポートについて » 2015-09-15 15:07:23

scripterさん

ご回答ありがとうございます。

シートは1シートになります。また、フィールドデータのインポート順は表示されません。
最初は手動でなく、インポート先を指定したスクリプトでやっても同様に駄目な状態でした。

現在構築中の物とは別に、簡単にA、B、Cと三列で、数行データを入力したExcellファイルと、
同様のフィールド名でテーブル作成したDBをアップロードしてインポートを試してみましたが
フィールドデータのインポート順は表示されませんでした。

権限についてはAdmin権限で、完全アクセス の状態になっています。

#13 初心者のFileMaker pro Q&A » Webdirectでのレコードのインポートについて » 2015-09-14 16:36:48

kazoo
Replies: 3

お世話になっております。
FilemakerとServerともにVer.14を使用しています。

環境
サーバ: Windows server2012 R2 Standard
クライアント:Windos7

Webdirectを利用して、クライアントPCのブラウザからExcellファイルをDBにインポートしたいと思っています。

ブラウザ上のメニューからレコードのインポートを選択し、ファイルを選択し、
インポートボタンを押すと処理は走るのですが、何もインポートされません。

ファイルは.xlsxで、300行程のデータがあります。
DBのフィールド名ととExcellの一行目の項目は同じ名前にしてあります。


インポート時のダイアログには、サポートされているファイルとして、xlsと.xlsxの表記がありますし、
インポート自体もファイルメーカー社のサイトにも対応している記述があります。
http://filemaker-jp.custhelp.com/app/an … 4%E8%BC%83

但し、FileMaker 14 WebDirect ガイドの18Pの、
データのインポートとエクスポートの表では、Excelのインポートが×になっています。
https://fmhelp.filemaker.com/docs/14/ja … _guide.pdf

上記解決方法をお判りの方、ご教授頂けますでしょうか。

宜しくお願い致します。

#15 初心者のFileMaker pro Q&A » ファイル間リレーションので関連レコードへの移動について » 2015-08-07 18:16:29

kazoo
Replies: 3

お世話になります。

現在、FMP14の評価版を試用しています。
以前(FMP6まで)使用していたのですが、
当時とは違い1ファイルで複数のテーブルを作成出来るようになっていたり
当時の「関連レコードへ移動」スクリプトの使い方とイメージと異なり手こずっております。

●ファイルA
・テーブル1
  受注IDフィールド

●ファイルB
・テーブル1
  受注IDフィールド

上記ファイルのテーブルをお互い、「受注ID」フィールド同志でリレーションしています。
「関連レコードへ移動」スクリプトを使用して、
互いの指定のレイアウトの関連レコードに飛ぶようにしたいのですが、
スクリプトのオプション画面にてどのような設定をすれば良いでしょうか。
(例えばファイルAからBの関連レコードに飛ぶ場合)
または、現在はファイル間の関連レコードへの移動は出来ないのでしょうか。

上記のようにファイルを分けた理由は、両テーブルとも日々数十件レコードが追加されていく為、
分けており、あとはあまりレコード追加がされる事がないファイル(各種マスタテーブル)があります。
上記のような理由でファイルを分けて構築したのですが、その点もあまり気にしなくて良いのでしょうか。

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 7 queries executed - Memory usage: 634.56 KiB (Peak: 671.97 KiB) ]