みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
OS:Win10、Ver.12
下記、インポートファイルが存在しない場合のカスタムダイアログを表示させるにはどうしたらよろしでしょうか。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
今日は20202年12月23日とします。
デスクトップ上に「import_1223.xlsx」というExcelファイルがあります。
FileMakerでは「f1」「f2」「f3」というフィールドがあります。(Excelと同様にならべています)
今日の日付と一致する場合はインポート可、一致しない場合やファイルがない場合はインポート不可。といった感じで
カスタムダイアログを表示しようと思ってスクリプトを組んてみましたがうまくいきません。
下記の編み方が間違っているのでしょうか。
【スクリプト名】ファイルからインポート_条件
変数を設定 [$folderpass; 値;:Get (デスクトップパス)&"import_"&"Month(Get(日付))&Day(Get(日付))&".xlsx"]
If [$folderpass = 0]
カスタムダイアログを表示 ["error"; "インポートファイルが存在しません。スクリプトを終了します。"]
Else
レコードのインポート [ダイアログなし; 「$folerpass」;追加;シフト JIS]
End If
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
どなたかご教示いただけますと幸いです。よろしくお願いいたします。
Offline
変数にパスを設定しても、テキストが設定されるだけなので、実際のファイルとは何も関係はなく、0にはなりません。
FM12ではファイルがない場合のエラー処理はできず、ファイル存在をチェックする機能がなかったと思います。
プラグインとかEvent送信でOS機能を使うか、適当な「必ず存在するファイル」をファイルパスの2行目に指定しておいて、それをオブジェクトフィールドに挿入、結果のファイル名で判別する、とかじゃなかったかな。
最新バージョンなら「ファイルの存在を取得」ステップで簡単に判別できます。
こんな手順でいいのでは
エラー処理[オン]
レコードのインポート(ファイルのパスを指定)
If[ Get ( 最終エラー ) ]
カスタムダイアログを表示
End If
全くマンマですが、、
Offline
[ Generated in 0.004 seconds, 9 queries executed - Memory usage: 507.13 KiB (Peak: 518.27 KiB) ]