みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
はじめまして。
11月からFileMakerを使い始めて、他の言語はこれまで色々使った事がありましたが、FileMakerの個性的な仕様に戸惑いつつこちらのサイトを参照させて頂きながらどうにかアプリケーションの完成も見えてきました。御礼を申し上げます。
さて、今回、ご質問させて頂きたいのは、分離モデルでのバックアップ後のFileMakerの挙動です。
現在、アプリケーションファイル、マスタファイル、履歴ファイルの3種類のファイルを作り、アプリケーションファイルを閉じる時に閉じるイベントで、3つのファイルをバックアップする様にしています。
バックアップは問題なく動作しているのですが、ファイルが閉じた後にFileMaker自身が起動してしまいます。(最近使った一覧を表示する様にしていますのでその状態で起動)
その上、起動したFileMakerを閉じると、再び起動するがすぐに閉じる。(これで終了)という不可解な挙動をします。
要するにプログラムファイルを閉じて、再度FileMakerを閉じると言う処理が必要となっています。
色々試してみると、どうもアプリケーションファイルのみをバックアップする場合は何事もなく終了し、参照している外部ファイルをバックアップするとこの挙動が発生する様です。
バックアップの方法は、アプリケーションファイルから、マスターと履歴のバックアップスクリプトに対して保存パスを渡して「外部スクリプトを実行」で実行すると言う方法を採っています。
アプリケーションファイル及びその他のバックアップ方法に関しては一般的に使われる「名前を付けて保存」で行っていますので特に変わった事は行っていません。
外部ファイルが閉じるタイミングが良くわからない為、外部スクリプトで「現在のスクリプトを終了」時に戻り値を入れて、それを参照して次の処理を行う様な処理も入れています。
終了しない訳ではないので、説明できる理由(例えば、バックアップファイルが新しく作られた為FileMakerがそれを検知して起動する = なアホな等)があれば良いのですが、この様な現象となる理由が分かりません。
ちなみに、終了時のイベントで処理するのが問題かもしれないと思い、ボタンで実行して、敢えて他のレイアウトを参照する等して閉じてみても同様の結果となります。
何か理由若しくは解決方法をご存知方はいらっしゃいませんでしょうか。
リレーションやレイアウトの都合でファイルメーカーが自動的に開いたファイルは、親ファイルに連動して自動的に閉じられます。
ですが外からスクリプトが実行されると、自動的に開かれていたファイルでもユーザーが開いたファイルとみなされるようで、親ファイルを閉じても連動しなくなります。
外から呼び出されるスクリプトの最後に
ファイルを閉じる[現在のファイル]
を追加、または呼び出し側で呼出先のファイルを閉じるステップを追加すれば、また親ファイルに連動して閉じられるようになります。
ファイルを閉じるステップを実行しても参照に必要なファイルが強制的に閉じられることはないので、気軽に追加しておいて問題ありません。
追記:表示できるウインドウがあればそれが表示されると思いますが、非表示のウインドウしか残っていない場合は何も表示出来ないため、ファイルメーカーの起動センターが表示されるのだと思われます。
Last edited by mic (2021-01-29 23:24:20)
Offline
ありがとうございます。
早速、呼び出し側のスクリプトで、各ファイルが保存されたフラグをチェックした後に「ファイルを閉じる」処理を追加したら一発解決しました。
バックアップをする時としない時で挙動が異なるのはそう言う理由だったのですね。
使って2ヶ月程度ではとても分からない所でしたが大変助かりました。
Pages: 1
[ Generated in 0.003 seconds, 7 queries executed - Memory usage: 508.12 KiB (Peak: 514.8 KiB) ]