2017-11-20 24 views
2

proc fcmp関数パラメータのデフォルト値を指定することはできますか?このような何か:Proc FCMP - デフォルトパラメータ値

proc fcmp outlib=work.funcs.funcs; 

    function my_func(param1, param2='default_value_here' $); 
    * DO STUFF; 
    endsub; 

run; 

ドキュメントと私は受け取っていたエラーメッセージから、私は、それがサポートされていることを示すことになる何かを見ていないよそれであれば、それは大きな見落としだろうように思えます場合。

SAS 9.4TSM4

答えて

2

それは(のように、明らかに、あなたは機能自体に同等のロジックを適用することにより、デフォルトをエミュレートすることができ)あなたが記述の方法ではできません。これは、デフォルトがあれば呼び出すことができません。

proc fcmpは、「オプション」引数(VARARGS配列を除く)をサポートしていません。したがって、常に値を提供する必要があります(欠落またはヌル参照を含む可能性があります)。したがって、デフォルトは適用されません。

これがSASware投票用紙に掲載された場合、私の投票権が得られます。オプションの引数は間違いなくfcmpのオプションにする必要があります!

+2

残念なことに、FCMPには、最初は特定の手順をサポートするために追加されたもので、後でデータステップに追加されたものであり、私が知る限り、コードしてください。一口。 IIRCの後ろにある原動力の人は、数年後に他のプロジェクトに移りました.FCMPは、一流になるための十分な支援を得られませんでした。おそらく、DS2がそれを置き換えることを期待していたからです。 )残念ながら、マクロ言語はまだ関数のために勝ちます。 – Joe

関連する問題