スクリプト/ワークフローでの複数ファイルのインポートスクリプトでマルチファイルインポートを使用する最適な方法は何ですか?
[ユーザーが設定を編集して「インポート」をクリックできるようにします。]
私の現在のアプローチ:
- Pause the script till the import is ready:
- whileループを使用する
- 停止するにはインポートコールバックの設定
finished= 0;
mfi = Multiple File Import(
<<SET import="" callback=""></SET>
get a list of the imported data tables:<BR />via <FONT face="courier new,courier">_wfb_Listdiff()</FONT> (from Workflow Builder):<BR />
<CODE class=" language-jsl">_wfb_ListDiff = Function( {tempOld, tempNew},
For( i = 1, i <= N Items( tempOld ), i++,
For( k = N Items( tempNew ), k >= 1, k--,
If( tempOld[i] == tempNew[k],
Remove From( tempNew, k, 1 )
)
)
);
tempNew;
);
Custom_step_tables_old = Get Data Table List();
MFI();
while(no(finished), wait());
Custom_step_tables_new = Get Data Table List();
dts = _wfb_ListDiff( Custom_step_tables_old, Custom_step_tables_new );
- if there is no data ..
後続のコード実行を停止するには、チェックを入れます
if (items(dts) ==0, Throw("no data"));
did you know that 停止() inside a Workflow step just stops the execution of the current step?
so: 投げる()。
-
ユーザーはMFIダイアログを次のように閉じることができます。

then the while loop will run forever (or: till the user presses ESC)
-> add an on close script:
my win = mfi << createwindow;
wait(0);
current window() << on close(finished=1)
<LINGO-LABS id="lingo-labs-867950" slang="en-US" mode="UPDATE"><LINGO-LABEL>自動化とスクリプト</LINGO-LABEL></LINGO-LABS>Re: スクリプト/ワークフローでの複数ファイルのインポートコールバック関数からインポートされたテーブルのリストを取得できるはずです。SetImportCallback の例を参照してください。
JSLが<
Re: スクリプト/ワークフローでの複数ファイルのインポートこんにちは@Craige_Hales
代わりに、[インポート] ボタンの動作を変更しました。
my win[ButtonBox(8)] << set function (dts = mfi << Import Data(); wait(0); finished=1);
しかし、残念ながら、元のインポートもトリガーされます。
...そこで、インポート ボタンを別のボタンに置き換えました。
my win = mfi << createwindow;
my win[ButtonBox(8)] << sib append (Button Box ("Import +",dts = mfi << Import Data(); wait(0); my win << close window()));<BR />my win[ButtonBox(8)] << delete
どのような例を指しているのか、見つけられませんでした。
Re: スクリプト/ワークフローでの複数ファイルのインポートカテゴリ セレクターにオブジェクト (またはすべて) が表示されていることを確認します。

Re: スクリプト/ワークフローでの複数ファイルのインポート: )