0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

MicroStrategyにおけるID・DESCの挙動

Last updated at Posted at 2023-05-10
1 / 2

はじめに

本記事ではMicroStrategyにおける
IDとDESCの設定不備によっておこる挙動についてご紹介します。

ID・DESCとは

アトリビュートに設定できるものです。
他のカラムをキーとして名称や説明などを取得したい際にDESCに設定すると
IDをキーに、データを取得することができます。
IDにはコード、DESCには説明や名称などを設定することが多いです。
image.png

ケース

今回のケースではエリアの名称が定期的に変わる場合を想定します。
当時のエリア名称:エリア名称 ※トランザクションから取得
最新のエリア名称:エリア名称(マスタ)※マスタから取得
image.png
データベースには以下のデータが格納されているとします。
※こちらは記事用に準備したテストデータです。
AAAの名称が東京エリア→関東エリアに変わったことがわかります。
上記の通り、トランザクション当時の名称を取得するためデータベースのまま
画面上でも取得できることが正しいです。
image.png
本来であればIDにエリア名称をセットするべきですが
マスタから取得するときのようにIDとDESCにカラムをセットします。
image.png
image.png
そうすると以下のように表示され、トランコード4の名称が
関東エリアではなく東京エリアで表示されてしまいます。
これはトランザクションのエリアコードをキーにエリア名称を取得するので
実行するたびに値が変わったり、maxがセットされたりなど正しい値を取得できません。
「名称や説明はDESCで設定する」という誤った理解をしたまま実装するとこのような不備が発生します。またデータが変わらないと検知できないため、初期での検知は難しくとも、のちの不具合に繋がる可能性があります。
image.png

さいごに

製品仕様を理解していないと発生する事象かと思います。
また検知してから水平展開で改修するとなると相当な工数がかかります。
そのため開発からこのような細かい仕様を把握しておくことが重要となります。
以上、みなさまの業務の一助となれましたら幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?