CHGDIMSファンクションは、式のディメンション性を変更したり、式の評価時にディメンション・ステータスを変更するファンクションです。
構文
CHGDIMS (expression, limit-type)
ここで、limit-typeは次のいずれかです。
[CACHE] LIMITSAVE valueset-list
[CACHE] LIMIT valueset-list
TO dimension-list
ADD dimension-list
パラメータ
変更する対象の式。
制限の結果をキャッシュするように指定し、CHGDIMSをコールしたOLAP DML文の実行が終了するまでCHGDIMSの後続の実行で使用できるように、その結果を保存します。
式のディメンション・ステータスの値が位置に設定されてから、CHGDIMSコマンドが実行されます(つまり、LIMITSAVEを指定した場合、現行のディメンション・ステータスの値は変更されません)。たとえば、式がLAGファンクションの場合に相対位置変更が現在の値から計算されるようにしたり、SQL SELECT文のような外部ループ内にCHGDIMSをコーディングする場合に、外部ループで設定されるディメンション・ステータスの値を保持したいときに、CHGDIMSにLIMITSAVEを指定します。
expressionのディメンション・ステータスの値が新しいステータスの最初の位置に設定されてからexpressionが評価されます。これは、expressionが評価される直前に発行されたLIMIT TOコマンドとほぼ同じ方法で行われます。
値セットの名前またはLIMITファンクション。
expressionのディメンションをdimension-listで指定されたディメンションとして、expressionの評価が行われるように指定します。
expressionのディメンションをexpressionのディメンションおよびdimension-listで指定されたディメンションとして、expressionの評価が行われるように指定します。
例
アナリティック・ワークスペースに次のオブジェクトがあるとします。
DEFINE PRODUCT DIMENSION TEXT DEFINE GEOG DIMENSION TEXT DEFINE SALES VARIABLE INTEGER <PRODUCT GEOG>
さらに、sales
変数に次のような値が含まれているとします。
-------------------SALES------------------- ------------------PRODUCT------------------ GEOG Trousers Skirts Dresses Shoes -------------- ---------- ---------- ---------- ---------- USA 13 20 32 18 Canada 17 32 15 28
次のコード行は、式の条件付けに応じて、TOTAL(sales)
式により返される値がどのように異なるかを示しています。
"Total over all dims with standard status SHOW TOTAL(sales) 175 "Total over all dims using new status for product SHOW CHGDIMS(TOTAL(sales) LIMIT(product TO FIRST 2))) 82 "Total just over product SHOW TOTAL(CHGDIMS(sales TO product)) 83