【PBCS】ビジネス・ルール:値代入時の注意点
ビジネス・ルールでの値代入の方法
①DATACOPYコマンドの使用
【特徴】
・代入元→代入先への直接代入に有効
・代入先がブロックが生成されていない(使用されていない)交点の場合
自動的にブロック生成されて値が代入される
【コマンド例】
/* 予算から実績に値を一括コピー */
DATACOPY Budget TO Actual;
②式による代入
【特徴】
・代入元→代入先に代入する際に任意の計算を含む際に有効
・代入先がブロックが生成されていない(使用されていない)交点の場合
ブロックは自動生成されない
【コマンド例】
/* 予算から実績に値を一括コピー(その際予算の2割掛けを行う) */
Actual = Budget * 1.2;
式代入時のブロック生成
式での代入時には、ブロックがない交点に自動生成されることがないため
明示的にブロックを生成する必要がある
(ビジネス・ルールのジョブは成功するが、
生成されていない交点に値は入らない)
試行錯誤したところ、以下の条件でブロック生成と値の代入が出来た
①ブロックが1つも生成されていないメンバーはFIXに含めず、式にてメンバー指定すること
②式の右辺で掛け計算を行うこと
【例】
以下のような次元構成の時に、4月の売上予算の3割増しの金額を同月の売上実績に代入したい場合
次元名 | メンバー |
---|---|
Years(年度) | FY19(2019年) |
Entity(組織) | Osaka(大阪支社) |
Version(バージョン) | Working(作業用) |
Account(勘定科目) | Sales(売上) |
Period(月) | April(4月) |
Scenario(シナリオ) | Budget、Actual(予算、実績) |
/* ↓ブロックが生成されている次元のみをFIXに含める */
FIX ("FY19"
,"Osaka"
,"Working"
,"April"
)
/* 式の右辺で掛け計算を行う(直接代入のときは*1にする) */
"Sales"(
IF (@ISMBR("Budget"))
"Actual"="Budget"->"Sales" *1.3;
ENDIF
)
ENDFIX
【実行結果】
Author And Source
この問題について(【PBCS】ビジネス・ルール:値代入時の注意点), 我々は、より多くの情報をここで見つけました https://qiita.com/iwa_gino/items/37b3a80b5ace6003609c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .