計算式プラグインで変更したルックアップフィールドの自動取得について

お世話になっております。

計算式プラグインを使用して、テーブル内の複数行に対する一括入力機能を作成しています。

具体的には、スペースフィールドに BUTTON() で「反映する」ボタンを設置し、ARRAY_FOR() と FSET() を使用して、テーブル内のチェックボックス「一括反映」にチェックが入った行だけ、以下の項目を更新しています。

  • 工事番号(ルックアップフィールド)
  • 通勤宿泊情報
  • 遠隔地情報

ボタン押下による各フィールドへの値の反映は正常に動作しており、工事番号についても既存値を上書きできています。

しかし、工事番号の値は変更されるものの、ルックアップの「取得」が実行されず、コピー先の工事名などが更新されません。

別途、ルックアップ自動取得プラグイン(Ver.8)も導入していますが、こちらでは今回の FSET() による変更に対して自動取得が実行されない状況です。

計算式プラグインの FSET() でルックアップフィールドの値を変更した際に、ルックアップ取得も実行する方法はありますでしょうか?

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


BUTTON(“反映する”,
ARRAY_FOR(COUNTROW(作業報告書テーブル),idx,
IF(AND(
IN(SUBTABLE(一括反映,idx),“✓”),
一括入力工事番号<>“”
),
FSET(工事番号,一括入力工事番号,idx)
)
),
ARRAY_FOR(COUNTROW(作業報告書テーブル),idx,
IF(AND(
IN(SUBTABLE(一括反映,idx),“✓”),
一括入力通勤宿泊情報<>“”
),
FSET(通勤宿泊情報,一括入力通勤宿泊情報,idx)
)
),
ARRAY_FOR(COUNTROW(作業報告書テーブル),idx,
IF(AND(
IN(SUBTABLE(一括反映,idx),“✓”),
一括入力遠隔地情報<>“”
),
FSET(遠隔地情報,一括入力遠隔地情報,idx)
)
)
)



FSET は、ルックアップ取得を行わないので、代替策としてはルックアップ項目に計算式で値をセットするようにします。
ボタンは、それを処理するためのフラグを立てるだけにします。
フラグは、2回目の計算処理で自動クリアさせます。

header3:($HEADER3) HEADER

BUTTON("SET",
  FSET(フラグ,"Y")
)

フラグ SINGLE_LINE_TEXT

IF(EV_INFO("step")=0,フラグ)

Table.顧客番号:顧客番号_0 NUMBER (LOOKUP) (editable)

IF(AND(フラグ="Y",IN(一括反映,"✅")),顧客番号,顧客番号_0)
「いいね!」 1

ご回答いただき、ありがとうございました。

ご教示いただいたフラグを利用する方法に変更したところ、チェックした行への一括反映と、ルックアップの自動取得が正常に動作することを確認できました。

別のフラグフィールドを作るという発想は全く無かったです。
また1つ計算式プラグインの理解が深まり、大変助かりました。

今後ともよろしくお願いいたします。

「いいね!」 1

このトピックは最後の返信から 60 分が経過したので自動的にクローズされました。新たに返信することはできません。