前のページ|次のページ

CMDMACシステムオプション

コマンドスタイルマクロの呼び出しを制御します。

該当要素: 構成ファイル、OPTIONSウィンドウ、 OPTIONSステートメント、SAS起動時
カテゴリ: Macro
PROC OPTIONS GROUP= MACRO
種類: システムオプション
デフォルト: NOCMDMAC

構文

CMDMAC | NOCMDMAC

必須引数

CMDMAC

マクロプロセッサが、各ウィンドウ環境コマンドの先頭ワードを調べて、それがコマンドスタイルのマクロ呼び出しであるかどうかを判定するようにします。

注: CMDMACオプションを有効にすると、SASシステムはまずマクロライブラリを検索し、発行されたウィンドウ環境コマンドの先頭ワードと同じ名前のマクロが見つかった場合、そのマクロを実行します。この場合、予期せぬ結果が発生することがあります。

NOCMDMAC

コマンドスタイルのマクロ呼び出しに関して、いかなるチェックも行いません。NOCMDMACオプションを有効にしている場合にマクロプロセッサがコマンドスタイルのマクロ呼び出しを検出すると、マクロプロセッサはその呼び出しをSASコマンドとして扱い、そのコマンドが無効な場合や使用法が誤っている場合にはエラーメッセージを出力します。

詳細

CMDMACシステムオプションは、コマンドスタイルマクロとして定義されたマクロがコマンドスタイルで呼び出されるかどうかを制御します。または、そのようなマクロをネームスタイルのマクロ呼び出しとして呼び出す必要があるかどうかを制御します。次の2つの例は、コマンドスタイルのマクロ呼び出しとネームスタイルのマクロ呼び出しの例をそれぞれ表しています。
  • macro-name parameter-value-1 parameter-value-2
  •  %macro-name(parameter-value-1, parameter-value-2)
CMDMACオプションを指定すると、マクロ機能は、コマンドライン上の先頭ワードに対応する名前を見つけようとして、現在のセッション中にコンパイルされたマクロを検索するため、処理時間が増大します。MSTOREDオプションが有効である場合、コンパイル済みマクロを含んでいるライブラリからそのワードに対応する名前が検索されます。MAUTOSOURCEオプションが有効である場合、自動呼び出しライブラリからそのワードに対応する名前が検索されます。さらにMRECALLシステムオプションも有効である場合、前回の検索でワードが見つからなかった場合でも検索が続行されるため、より多くの処理時間がかかる可能性があります。
どのオプションが有効であるかにかかわらず、ネームスタイルの呼び出しを使用すれば、コマンドスタイルマクロを含むすべてのマクロを呼び出すことができます。

比較

マクロを呼び出す場合には、ネームスタイルのマクロ呼び出しを使用する方が効率的です。ネームスタイルのマクロ呼び出しでは、マクロプロセッサは、パーセント記号に続くワードに対応するマクロ名のみを検索するためです。
前のページ|次のページ|ページの先頭へ