SAS Viya

Viya4でViya内からViyaのAPIを呼ぶ方法

自身のサーバ名やlocalhostを指定してもうまくいかないが、Kubernetesのコンテナ名を指定するとうまく呼ぶことができる。

マイクロサービス名 サーバアドレスの代わりに指定する値
microanalyticScore sas-microanalytic-score https://サーバアドレス/microanalyticScore/modules/steps/executehttps://sas-microanalytic-score/microanalyticScore/modules/steps/execute

基本的には、頭にsas-をつけた上で、マイクロサービス名をハイフンつなぎに変えるとうまくいく。

[Intelligent Decisioning] MASへパブリッシュしたAPIを実行する

https://{サーバアドレス}/microanalyticScore/modules/{パブリッシュ名}/steps/executeに対し、POSTする

https://developer.sas.com/rest-apis/microanalyticScore/createStepExecution

[Intelligent Decisioning] ルックアップテーブルの内容をまるごと取得する

https://サーバアドレス/referenceData/domains/{ドメインID}/contents/{コンテンツID}/entriesに対し、GETすると、"items"にリスト形式で格納されているものが取得できる。

/referenceData/{ドメインID}/contents/{コンテンツID}は、ルックアップテーブルの「プロパティ」タブから、オブジェクトURIとして確認できる。

https://developer.sas.com/rest-apis/referenceData/getReferenceDataDomainEntries

SAS Studioでルールセットを実行する

%DCM_EXECUTE_RULESET(
  URI = ルールセットのオブジェクトURI,
  INPUTTABLE = 入力するCASテーブル,
  OUTPUTTABLE = 実行結果を格納するCASテーブル
)

https://go.documentation.sas.com/doc/jp/edmcdc/v_056/edmmacro/n1qm5ur1pz8bn6n1kq0frf3n111d.htm

ログに変数を出力する(DS2言語)

put variable_name=;

https://go.documentation.sas.com/doc/ja/pgmsascdc/v_061/ds2ref/n1b5ndvbk83gctn1b0rjx7bokrip.htm

変数を定義する(DS2言語)

declear varchar(100) variable_name;
dcl varchar(100) variable_name2;

https://go.documentation.sas.com/doc/ja/pgmsascdc/v_061/ds2ref/n1c15oj6g6nak3n12tx7t7j3kj8e.htm

Intelligent DecisioningのDS2コードファイルなどで記述する場合、具体的な処理の記述よりも前にdeclareステートメントを記述する必要がある。

methodステートメントで定義した関数の返り値を設定する(DS2言語)

return 'return_value';

https://go.documentation.sas.com/doc/ja/pgmsascdc/v_061/ds2ref/n0i3wjydjq18nsn10zyap1n6cp4i.htm

文字列YYYYMMDDをSAS日付値に変換する

date_sasvalue = inputn('20250831', 'yymmdd8.');

https://go.documentation.sas.com/doc/ja/pgmsascdc/v_061/ds2ref/n0l4p5obkjy2ygn1o7h5a6p602zm.htm

データグリッド変数を使う