SAS Enterprise Guideの新機能です。私はプロセスフローの実行中にファイルをアップロードするようにユーザーに促す方法を探しています。このファイルは、プロセスフローの次のステップで使用されます。SAS EGプロセスフロー中にファイルをアップロードするように促すメッセージ
これは可能ですか?どのような選択肢がありますか?
SAS Enterprise Guideの新機能です。私はプロセスフローの実行中にファイルをアップロードするようにユーザーに促す方法を探しています。このファイルは、プロセスフローの次のステップで使用されます。SAS EGプロセスフロー中にファイルをアップロードするように促すメッセージ
これは可能ですか?どのような選択肢がありますか?
SASはファイルオープンダイアログボックスの「ネイティブ」呼び出しをサポートしていないようですが、どこにでも表示される共通ファイルピッカーダイアログボックスを提供するWindows APIを呼び出すことができます。
sascbtbl
ファイル名を使用し、modulec
を呼び出す必要があります。私はこの答えをここでスタブとして入れており、来週にそれを試してみる予定です。一方
は、ここでは窓に現在のプロセスID(PID)を取得するには、上記の使用方法の例です:
filename sascbtbl "%sysfunc(pathname(work))\sascbtbl.txt" lrecl=500;
data _null_;
file sascbtbl;
infile datalines;
input;
put _infile_;
datalines4;
routine GetCurrentProcessId
minarg=0
maxarg=0
stackpop=called
callseq=byvalue
module=kernel32;
;;;;
run;
%let current_sas_process_id = %sysfunc(modulen(*e,GetCurrentProcessId));
%put ¤t_sas_process_id;
上記のあなたがする必要がある場合、基本的なアプローチですが、代わりにGetCurrentProcessId
クラスを呼び出すと、おそらくFileOpenDialog
クラスなどを呼び出す必要があります(パラメータをとるほど複雑です)。
興味深い。私はこれについてあなたのさらなる考えを楽しみにしています。その間にこのコードを試してテストします。 – SQALEX101
ユーザーがファイルへのパスを提供している場合、コードを使用してファイルをインポートできますか?または、インポート・データ・タスクを使用する必要がありますか? – Reeza
私はそれらにインポートデータタスクを使用する必要があります。静的なファイルパスは私の目的のためには行いません。アップロードがプロセスフローの中の割り込み/プロンプトとほぼ同じように動作するようにしたい。 – SQALEX101