みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
win10 FM19を使用しています。
お世話になっています。
以前、ポータル内のフィールドの変更ログが取得できず、FMDB-blueを教えて頂きまして、
こちらのページを参考に(https://qiita.com/siebenunddreissig/items/73b299837cc6e6c78afa)
FMDB-blueを設置しました、機能的には十分なのですが、
1点ポータルや各レコードのログを取得した場合、どのレコードで行われた変更なのかが判断できず、困っておりました。
各レコードには、固有のIDを付けていましたので、IDと変更ログのレコード紐づけたいのですが、
方法等ご存知の方がおりましたら、教えていただけないでしょうか。
宜しくお願い致します。
Offline
なしたまご様
FMDB-blue開発者の37と申します。
ご利用いただき、大変嬉しく思っております。
ご質問に対して、簡単に説明すると、
ログを取るレコードについての固有のIDとなる、いわゆる「主キー」は、
FMDB-blue_Dataファイル内の
D_LogDataテーブル
d_DataID.textフィールド
(D_LogData::d_DataID.text)
に保存されます。
また、テーブルを指定するには、
GetBaseTableAddressFrom(%tableOccurenceName)
関数で得られる
「BaseTable名@BaseFile名」となっているデータが必要です。
※BaseTable名やBaseFile名は、ExecuteSQL関数でのみ確認できるデータです。
D_LogDataテーブルでは、
d_BaseTableAddress.textフィールドに
このテーブル指定のための「BaseTable名@BaseFile名」が
保存されてます。
SampleApp_Interface.fmp12ファイルで、
該当レコードに関連するログを表示するようにしてありますので、
ご参照ください。
説明下手で申し訳ございません。
可能な限り対応させていただきますので、不明な点がありましたら、
またお聞きください。
よろしくお願いいたします。
Offline
37さん、有難うございます。
FMDB-blue開発者様との事恐縮です。
使わせて頂いております。
ご説明頂きました、
d_DataID.textフィールドと編集側のファイルの主キーをリレーションキーにしまして、
変更レコードのIDを取得する事が出来ました。
ありがとうございます。
こちらのファイルは無料で使わせて頂いても問題ないのでしょうか。
Offline
なしたまご様
37です。解決されたようで、何よりです。
該当Appは、
三条項BSDライセンス (3-clause BSD license)
「無保証」であることの明記と著作権およびライセンス条文自身の表示を再頒布の条件とするライセンス規定
で配布しておりますので、無償でOKです。
個人使用なら全く気にしなくて良いですし、配布するようなら、
私の著作権とライセンス条項を表示いただければ、ライセンス違反にはなりません。
ただし、これを利用することで生じるいかなる損害についても、開発者は責任を問わないことはご承知おき下さい。
ライセンス原文については、該当App内でも確認できるようになっています。
また、
https://licenses.opensource.jp
で確認することもできます。
よろしくお願いいたします。
Offline
ありがとうございました。
Offline
Pages: 1
[ Generated in 0.011 seconds, 9 queries executed - Memory usage: 508.75 KiB (Peak: 514.55 KiB) ]