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

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

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

You are not logged in.

Announcement

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


#1 2023-05-30 16:09:45

kosugi203
Guest

特定のフィールドを編集した時のみ更新日時を更新する方法

こんにちは。
Win10Pro、FMP11を使用しています。


■テーブルA
フィールド名 タイプ
-------------------------------------------------------------------------------------------
更新日時    タイムスタンプ (入力値の自動化-修正情報-タイムスタンプ(日付と時刻))
フィールドA テキスト
フィールドB テキスト
フィールドC テキスト
フィールドD テキスト


のようにした場合、
フィールドA~Dのどの値が更新されても更新日時は更新されると思いますが、これを
「フィールドAまたはBが更新された場合は更新日時が更新されるが、
それ以外のフィールドが更新されても更新日時は更新されない」
のようにする事は可能でしょうか?

思いついた方法としては、
・フィールド「更新日時」は入力値の自動化を行わない。
・現在のタイムスタンプでフィールド「更新日時を」上書きするスクリプトを
  任意のフィールドにスクリプトトリガ「OnObjectModify」で設定する。

という案ですが、既に既存のスクリプトトリガが設定されているフィールドがあったり
対象項目が結構多い為、他の方法で解決出来ないかと思ってこちらに書き込ませて頂きました。
不勉強ですみませんがご教示頂けると幸いです。

よろしくお願いいたします。

#2 2023-05-30 16:13:42

Shin
Member

Re: 特定のフィールドを編集した時のみ更新日時を更新する方法

フィールドA フィールドB を、主キーでつないだ別テーブルにするのが一番簡単でしょう。

Offline

#3 2023-05-30 16:30:05

kosugi203
Guest

Re: 特定のフィールドを編集した時のみ更新日時を更新する方法

Shin様
早速のご連絡、大変ありがとうございます。

こちらは既に運用を開始している為、別テーブルに分割するのが難しい状況です。
(フィールドやスクリプト、リレーションの追加なら可能です)

この場合、解決は難しいでしょうか?

#4 2023-05-30 16:41:20

himadanee
Guest

Re: 特定のフィールドを編集した時のみ更新日時を更新する方法

計算値自動入力で
Evaluate ( "Get(タイムスタンプ)" ; [ フィールドA ; フィールドB ] )
とかでは。

#5 2023-05-30 16:41:47

qb_dp
Member

Re: 特定のフィールドを編集した時のみ更新日時を更新する方法

以下とか、

専用のタイムスタンプフィールドを作成し、
入力値の自動化 計算式 で以下を設定
Evaluate ( "Get (CurrentTimestamp)" ; [フィールドA ; フィールドB] )

「□フィールドに既存の値が存在する場合は置き換えない」のチェックは外す。

Offline

#6 2023-05-30 17:06:16

kosugi203
Guest

Re: 特定のフィールドを編集した時のみ更新日時を更新する方法

himadanee様 qb_dp様

ありがとうございます!
教えて頂いた方法にて無事解決いたしました!
大変助かりました!

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 510.76 KiB (Peak: 517.76 KiB) ]