【SAC】SAP Analytics Cloudの小技集

# はじめに
SAP Analytics Cloud（以下SAC）のストーリーを作成時にこんなこと出来るかな、なんとなく出来そうだけどな、でもどう設定するんだろうといった事はないでしょうか。出来なくてもいいけど、出来たらちょっとうれしい小技を今回は紹介したいと思います。

# 紹介事例
　①テーブルの累計表示の仕方
　②ストーリー計算の計算エラーの回避方法
　③乗算・除算の合計表示について

 # 1 テーブルの累計表示の仕方
 以下の様な日々の実績の表はすぐに作成できると思います。ただし日毎の累計を表示するとなると、どうすれば良いんだろう？とならないでしょうか。
最初は計算式で日毎の足し算をして表示しようと思いましたが、式が長くなりすぎて断念しました。
もっと簡単な方法があるだろうと思い、調べた結果、ありました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/c8ee1ed1-eb2f-4be9-5c65-3e8fcd3d3ee2.png)

※累計機能を使う前提としてストーリーを作成する際は「最適化されたデザインエクスペリエンス」を選択してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/85a628eb-4ada-76d7-e0e2-86b7fb2aae7a.png)
※ただし、従来のものと比べ制限事項があるので注意して下さい。以下参考URL
https://help.sap.com/docs/SAP_ANALYTICS_CLOUD/00f68c2e08b941f081002fd3691d86a7/2d00f5ff0c9245a99a9df96cb83236a9.html?locale=ja-JP&q=%E6%9C%80%E9%81%A9%E5%8C%96%E3%81%95%E3%82%8C%E3%81%9F

＜設定方法＞
　①メジャーから計算追加を行います。
 　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/9afc7c4e-b417-8a72-6075-5fd17a27d3dd.png)

　②タイプ：累計を選択します。
 　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/9ecc1757-98a7-f9e1-b911-b8c13e603e5d.png)

　③必要項目を入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/9b59dcf9-7db1-f710-595d-473271f6dbb3.png)
　・オペレーション：以下の選択があります。
 　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/64bff792-d472-4d8f-4c89-dc2ef438c649.png)
　・累計ディメンション：累計を行いたいディメンションを設定します。
　・メジャー：累計値の元となるメジャー項目を指定します。
　・名前：任意の名前を付けて下さい。

　④作成後、メジャー項目に追加されるので選択します。
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/f17f4790-6309-d528-a49d-d797a65607f6.png)

　⑤累計表示の完成です。簡単ですね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/e7995891-14e8-c02f-8f7b-77afee90b951.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/7dfd1f15-1549-e375-8874-404e1a93055a.png)

# ２ストーリー計算の計算エラーの回避方法
テーブル上の項目どうしを計算できる事はご存じでしょうか？
各項目を選択し、右クリックで「クライアント計算の追加」で計算可能です。
以下は生産高÷材料費の比率を求める例です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/fb6ea895-d0b2-c657-ee9c-9db353a4e23b.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/9826e6a1-b5e6-fedf-0d84-7b353c7d4e28.png)

ただし、この方法だと値が無い場合等で計算できない場合、Error表示されてしまいます。
気にする人は気にしますよね。私は気になりました。Error表示消したいですよね。
計算式を記入する方法があったので紹介したいと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/340dab0a-108b-e6c3-6986-e08c1e1a3aee.png)

＜設定方法＞
　テーブルの項目を選択し、右クリックで「行の追加」をクリックします。繰返を選択下さい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/4c37bd3d-0e54-75c6-439b-5fc53dcf5699.png)


空の行が追加されますので、式を入力します。
Excelと同じでセルを指定して計算式を作成します。今回は生産高のセルがnullや0であればnull、そうでない場合は「生産高÷材料費」する様にしています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/5c776065-46b2-52ea-94cd-1006df736973.png)

結果、Errorが表示されなくなりましたね。ちょっとした処理でテーブルが見やすくなりましたね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/b59ac667-44e1-6d2d-20df-b1bfb74296b2.png)

 # ３ 乗算・除算の合計表示について
 　SAC側で計算する事はあるかと思います。（※取得元のデータソース側で計算してもらうに越したことないですが。）
 以下の例ですと時間単価×加工時間＝加工費を表示する場合があったとします。
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/7bf7d0bc-2378-6d29-c327-cf94a487f086.png)

　その場合、費目の合計表示をした場合、加工費の合計はどうなるでしょうか？
時間単価の合計（894,270）× 加工時間の合計（6,157）＝加工費（5,506,020,390）
となりますね。これは本来表示したい値ではないはずです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/dd0ffae0-0a09-e483-bf72-14b3b4c52e96.png)

　本来欲しいのは費目単位で計算した結果の合計を表示したいはずです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/8c029cde-d61b-9b45-02e3-795d564fa2c3.png)

＜設定方法＞
　①メジャーの計算追加を行います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/7cb774a2-7f46-4560-b651-d2a8e81e0ea2.png)
　・タイプ：集計
　・オペレーション：SUM
　・集計ディメンション：今回は費目毎に集計したいので「費目」を選択。
　・メジャー：加工費（計算メジャー）
　・名前：任意の名前を付けて下さい。

  ②①のメジャーを追加した結果です。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/70f5e0e6-b0ab-7877-8df4-b07d8dc601c1.png)
  合計値が一致していますね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2705941/0fdb6c23-aae4-4933-7810-5001c0577ae7.png)

# おわりに
今回、ご紹介したい小技集は以上となります。出来そうで出来ない、でもやっぱり出来たみたいな内容が結構あったりします。今回、紹介した方法でなくても実現は可能かと思いますが選択肢として持って頂くと意外なところで役に立つかと思いますので参考にして頂ければと思います。今後も紹介したい内容があれば投稿して行こうと思います。