データを加工したり補ったり、カスタム項目はとても便利です。ただデータソースの種類によって書き方が変わるので、最初はとっつきにくいかと思います。
本記事ではよく使うデータソース別にカスタム項目の書き方をまとめました。CSV/Excel、Dr.Sum(データストレージ)、MotionBoard Viewに分けています。
関数は基本的なものを記載しています。これらを使えるようになると幅が広がります!
このページに辿り着いた皆さんの中には、カスタム項目のエラーでお困りの方もいるのではないでしょうか?下記がよくあるエラーです。
・データの取得でエラーが発生しました。指定された項目が存在しないか、参照権限がありません。エラー番号:E-COMMUNICATOR-04090
・Dr.Sumでエラーが発生しました。 (原因:SQL文解析エラー)エラー番号:E-COMMUNICATOR-00110
・データソース定義のカスタム項目の内容が不正です。
カスタム項目を使ってる場合、これらのエラーは書き方の誤りが原因のときが多々あります。
特にデータソースを切り替えたときに発生しやすいです。項目は同じなのに、怒涛のエラーが‥というのはあるあるです。参照元のデータソースに依存するので仕方ないとはいえ、つまづきやすいポイントです。
以下の書き方を参考にしてもエラーが解消できなかったり、複雑な計算式を作成したいときは、是非サポートへのお問い合わせをご利用くださいね。
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
ウイングアーク | ‘ウイングアーク’ | ‘ウイングアーク’ |
支店コードと支店名は基本項目とします。 作成例:100-六本木店
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
[支店コード]-[支店名] | 支店コード||’-‘||支店名 | 支店コード||’-‘||支店名 |
日付は基本項目とします。 作成例:2020/01/23→01
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
SUBSTRING([日付],”5″,”7″) | SUBSTRING(日付,’6′,’2′) | SUBSTRING(日付,’6′,’2′) |
製品は基本項目とします。 作成例:MB→MotionBoard
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
REPLACE([製品],”MB”,”MotionBoard”) | REPLACE(製品,’MB’,’MotionBoard’) | REPLACE(製品,’MB’,’MotionBoard’) |
性別は基本項目とします。 作成例:1なら男、2なら女
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
REPLACE([性別],”1|2″,”男|女”) | DECODE(性別,’1′,’男’,’2′,’女’) | CASE 性別 WHEN ‘1’ THEN ‘男’ WHEN ‘2’ THEN ‘女’ END |
点数は基本項目とします。 作成例:点数が80以上なら◎、60以上なら〇、それ以外なら×
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
対応していません 回避策:MotionBoard ViewにしてCASEで対応*1 |
CASE WHEN 点数 > 80 THEN ‘◎’ WHEN 点数 > 60 THEN ‘○’ ELSE ‘×’ END | CASE WHEN 点数 > 80 THEN ‘◎’ WHEN 点数 > 60 THEN ‘○’ ELSE ‘×’ END |
CASEはいきなり一行で書くとごちゃっとするので、改行を付けて作成してから一行に戻すのもおすすめです。
CASE
WHEN 点数 > 80 THEN '◎'
WHEN 点数 > 60 THEN '○'
ELSE '×'
END
条件分岐をしたいときはCASEが基本です。データストレージの場合はDECODEも使えます。
対象項目は基本項目とします。 作成例:NULLを0に変換する
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
対応していません |
NVL(対象項目,0) | COALESCE(対象項目,0) |
対象項目は基本項目とします。 作成例:文字型を数値型にする
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
対応していません |
TO_NUMERIC(対象項目) | CAST(対象項目 AS DOUBLE) |
*1 CSV/ExcelをMotionBoard Viewに置き換える方法 UNION結合のMotionBoard View定義を作成する 手順1~5、7~10を行います。(手順6のサブテーブルを選択は不要です) |
受注日、案件登録日は日付型の基本項目とします。 作成例:受注までの所要日数(受注日-案件登録日)を算出する
作成するカスタム項目のデータ型は数値型にしてください。
CSV/Excel | データストレージ(Dr.Sum) | MotionBoard View |
---|---|---|
(GETTIME([受注日])-GETTIME([案件登録日]))/1000/60/60/24
|
DATEDIFF(‘DAY’, 案件登録日,受注日)
または
TO_NUMERIC(TO_CHAR(受注日-案件登録日, ‘DD’))
|
DATEDIFF(‘DAY’, 案件登録日,受注日)
|
カスタム項目の書き方に関わるナレッジは、以下のURLからご確認いただけます。
以下のURLでは、データストレージ(Dr.Sum)、Oracle、SQL Server、PostgreSQL、MySQLでの書き方をご確認いただけます。
その他の関数はマニュアルにてご確認ください。
CSV/Excelで使える関数 |
データストレージ(Dr.Sum)で使える関数 |
MotionBoard Viewで使える関数 |
本記事ではカスタム項目の書き方についてご紹介しました。やりたいことは同じでも、データソースによって結構書き方が違いますよね。
私自身カスタム項目を作るときはこういったメモを見ながら試行錯誤して作成しています。そのメモをもとに記事化してみました。本記事が皆さんのお役に立てたらとても嬉しいです!
Related article
Pick up
Ranking
Info