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

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

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

You are not logged in.

Announcement

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


#1 2018-04-05 23:10:27

top
Member

毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

ある作業を自動化したくて苦労しています。
力を貸していただきたいです。


FMpro12、win8.1です。

やりたいことは以下の2点です。

1. 入退院テーブルで毎月1日になったら「毎月1日に入院中の患者」を抽出して、入院管理番号を別テーブルにインポートする
2. 1日移行に新規入院患者が入院したら自動で計画書が作成されるように、入退院テーブルに新規レコードが作られた段階で、計画書テーブルにもレコードを作る。

このスクリプトステップをどんな風に組み立ててもうまくいきません。

具体的に教えていただくことはできませんか?
宜しくお願い致します。



入退院テーブルに、以下のようなフィールドがあります。

・患者ID
・入院日
・退院日
・入院管理番号


計画書テーブル
・入院管理番号
・(その他、フォーマットに準じたフィールド)


入退院テーブルと計画書テーブルは、
入院管理番号でリレーションをしています。

患者マスタテーブルには、
・患者ID
・患者名
・入院管理ID

があり、患者マスタテーブルと入退院テーブルは患者IDでリレーションしています。




宜しくお願いします。

Offline

#2 2018-04-06 09:15:40

チポ
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

1.  1日の時点で退院日が空白のレコードを検索しておいて、計画書テーブルでそれをインポート

2.  リレーションの設定で、計画書テーブルのレコード作成を許可とします。
     入退院テーブルの入院管理番号フィールドにスクリプトトリガ OnObjectExit の
     スクリプトで計画書テーブル::入院管理番号に入力。

でいいのでは。

Offline

#3 2018-04-06 09:35:31

top
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

チポ様


なるほどですね。
ありがとうございます。

この計算式だと、毎月1日になったときに手動でボタンをクリックするなりしないといけないと思います。

もしできるなら、完全に自動化したいのですが、
毎月1日になったら、入院中の患者を検索して計画書テーブルにそれをインポートする仕組みは作れますか?
変数か何かを使いますか?


教えてください。

Offline

#4 2018-04-06 10:01:59

Shin
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

https://community.filemaker.com/thread/184991
と同じ投稿ですか?

> 毎月1日になったら、
この処理が簡単そうで、考えないといけない事がいくつかあり、処理を複雑にします。
また、ファイルを開いた時のトリガー処理にすれば、比較的簡単なのですが、運用上、入院当日に必ずつくる、という事になっていれば、1日に入院の方の処理はどうするかを考える必要があります。また、複数回ファイルが開かれたときに、処理がすんでいるかどうかを確認する、必要があります。その際に、前回に処理が完了しているかどうか、プリンター側で印刷に失敗した時には再実行が必要になる、なども処理を面倒にします。

Offline

#5 2018-04-06 10:26:09

top
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

Shin様

ファイルメーカーコミュニティと同じ投稿をしてしまいました。
以後、重複した質問は避けるようにします。
大変申し訳ありませんでした。


Shin wrote:

この処理が簡単そうで、考えないといけない事がいくつかあり、処理を複雑にします。
また、ファイルを開いた時のトリガー処理にすれば、比較的簡単なのですが、運用上、入院当日に必ずつくる、という事になっていれば、1日に入院の方の処理はどうするかを考える必要があります。また、複数回ファイルが開かれたときに、処理がすんでいるかどうかを確認する、必要があります。その際に、前回に処理が完了しているかどうか、プリンター側で印刷に失敗した時には再実行が必要になる、なども処理を面倒にします。

そうですか。

この計画書は、入院している患者は毎月必ず作成しないといけない書類です。

ですので、新規入院の場合は必ず作成できるようにはなると思いますが、
次月以降に自動で作成できるようにするには複雑な処理が必要になるのですね。

では、手動でも月初に入院している患者を検索、抽出して計画書テーブルにインポートする形が一番今のところ簡単なやり方という理解でよろしいでしょうか?

Offline

#6 2018-04-06 11:10:10

Shin
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

上に書いた通り、完全に自動化するとなると、既に処理済みかどうかの判断を行う必要が出てきます。
1日になって、当月のレコードがあるかどうかでも、ある程度は判断できますが、将来の入院が入力された時点で計画書が作られているのでしたら、それを除外しておく必要があるでしょう。
そのためのテーブルを作って処理日を保存していくのが確実でしょうが、プリンターがエラーを出した時に FM 側では検知できませんの、手動での再処理が必要になります。これは、特定の人のみが携わる作業でしたらいいのですが、誰かが行う、という運用でしたら、抜けてしまう可能性が出てきます。

FileMaker ディスカッションのスレッドに、サンプルをおいておきます。

Last edited by Shin (2018-04-06 14:47:13)

Offline

#7 2018-04-06 13:32:15

チポ
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

リレーション
  入退院::入院管理番号 = 計画書::入院管理番号
                                   日付(年月?)の降順ソート

これで、
入退院の入院中のレコードから見て、
計画書に当月のレコードがない場合は計画書のレコードを作る必要がある。

ということですよね。

1日に限らず毎日開くときにこの判定をすればいいのでは。

Offline

#8 2018-04-08 13:01:36

top
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

チポ wrote:

リレーション
  入退院::入院管理番号 = 計画書::入院管理番号
                                   日付(年月?)の降順ソート

これで、
入退院の入院中のレコードから見て、
計画書に当月のレコードがない場合は計画書のレコードを作る必要がある。

ということですよね。

1日に限らず毎日開くときにこの判定をすればいいのでは。

チポ様
ありがとうございます。

確かに毎日開くときにこの判定をすればいいです。

この"判定"というのは、使用者が視覚で判断するということでしょうか?
ファイルメーカーに判断させるための術がありますでしょうか?

Offline

#9 2018-04-08 15:13:05

Shin
Member

Re: 毎月1日になった段階で計画書が自動で作成されるスクリプトステップと、追加入院に対する計画書作成の自動化のステップについて

> ファイルメーカーに判断させるための術がありますでしょうか?
https://community.filemaker.com/thread/184991
のスレッドのサンプルファイルに組み込んでありますが。

Last edited by Shin (2018-04-08 15:14:41)

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 8 queries executed - Memory usage: 536.06 KiB (Peak: 556.97 KiB) ]