項目が変更されているかどうかのフラグについて
お世話になっております。
フォーム上の何かしらの項目が変更されている場合はイベントを実行できないようにしたいのですが、すべての項目に項目変更ロジックを設定して、項目が変更されたらフラグを立ててやる他に何か良い方法はございますか?
よろしくお願いいたします。
-
全項目を文字列で変数に代入するようにしておき、その変数の項目変更ロジックでフラグを立てる。
というような方法をとったことがあります。
レコード後処理を通れば変更したと判断する。という方法にしたこともあります。
もっと楽な関数やイベントがあれば良いなと思うのですが。
-
私はあまり使用しない関数ですが、VarModという関数はありますね。
https://www.magicsoftware.co.jp/files/magic_help/Magicxpa2/Expression_Editor/VarMod.htm
可能かどうか検証してみて下さい。
-
>岡林拓也さん
ご回答ありがとうございます。
レコード後処理より動的にフラグを立てたいので、前者の方法がよさそうです。
そのようなやり方があるのですね。勉強になりました。
>daiさん
ご回答ありがとうございます。
VarMod関数の存在は知っていましたが、使ったことはありませんでした。
何か面白い使い方できるかもしれません。試してみます。
-
ViewMod という関数もありますね。
でも項目の値を変更して、その項目にとどまったままファンクションキーを押したとします。
システム F7 などでは、まだその時点で変更は確定していないのか
ViewMod(0)はFalseでした。 -
nkmtさん、
ViewMod() 関数試してみました。すごいですね、この関数!
私のところでは、項目にとどまったままでも戻り値がちゃんとTrueに切り替わりました。ボタンにズームを貼り付け、ボタンが押されたら関数発行で試しました。
-
たぶん、カラムのフォーカスが移動したかどうかで、項目編集が確定するのでしょうね。
サインインしてコメントを残してください。
コメント
6件のコメント