ローカルマクロ変数をリモート側で利用する

[OS]ALL
[リリース]
[キーワード] SAS/CONNECT MACRO

[質問]

ローカルホストで定義したマクロ変数をリモートホストで使用することはできますか?

[回答]

ローカルホストのマクロ変数値を、リモートホストのマクロ変数に渡すことはできません(逆は%SYSRPUTステートメントで可能です)。 リモートホストのマクロ変数に値を渡す場合、以下のような「%LETステートメントをリモート実行させるマクロ」を作成して対応してください。

● マクロプログラム

%macro syslput(macvar,macval,remote=);
 options nosource nonotes;
 %let str=%str(rsubmit &remote;options nosource;)  %nrstr(%let)
  %str(&macvar = &macval;options source;endrsubmit;);
 &str;
 options notes source;
%mend syslput;

● 使用例

  1. マクロ変数 sysinfo の値をデフォルトのリモートセッションのマクロ変数 rc にセットする。
           %syslput(rc,&sysinfo)
           

  2. 指定したリモートセッションのマクロ変数flagに、値1をセットする。
           %syslput(flag,1,renote=mvs)