PARENTGROUPVALの使い方

普段はあんまり凝ったレポートは作っていないので、PARENTGROUPVALを使ったことはありませんでした。
ちょうどレポート関係の質問があって、もしかしたらPARENTGROUPVALが使えるのではと思い試してみました。

**そのときの質問**
[Formula to calculate percentage of Pass Rate](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000BtPqN)
最終的にこんなイメージのレポートを作りたい。小計ごとの比率を出したい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/a9325df5-401f-1cb6-6f8f-48c1bcd432ea.png)



**参考**
1. トレイルヘッド : [PREVGROUPVAL() と PARENTGROUPVAL() を使用したグループの比較](https://trailhead.salesforce.com/ja/content/learn/projects/rd-summary-formulas/rd-compare-groups)
2. ヘルプの説明
　今までこれだけを読んでたからさっぱり中身を理解できませんでした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/54d28b91-f70b-fef3-c28a-e416558dabd5.png)
+ [PARENTGROUPVAL関数の考え方について](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000JgOooSAF)
 
# 使い方の整理

サマリーレベルの数式に追加します。

```
RowCount / PARENTGROUPVAL(RowCount, ILM_Qualification_Answersheets__c.ILM_Level__c)
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/500ebfbb-0afa-46bf-00b1-ad521b2ca45d.png)

でも、これで安心してはいけません。Displayタブをクリックして以下の設定も行います。
この設定をしていなくて、機能しないっていう質問もよく見かけます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/56a72520-166e-f0b4-c935-49cd815fdd55.png)

# 他の設定も整理


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/fe03f70b-070b-d1c6-2544-7ce53344bbe9.png)

| No| 指定の仕方 |意味|
|:--|:---------------------|:------------|
|1|ILM_Qualification_Answersheets__c.ILM_Level__c|ILM_Level__cを分母にして計算する|
|2|ILM_Qualification_Answersheets__c.Status__c|Status__cを分母に計算する。100%になって意味がない|
|3|||
|4|GRAND_SUMMARY|Total計を分母に計算する|
|4|ROW_GRAND_SUMMARY|Total計を分母に計算する|


# 類似の質問
+ [Formula to calculate percentage of Pass Rate](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000BtPqN)
+ [Classic環境](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000PezQRSAZ)
+ [How to find Opportunity Closed Won by Product percentage?](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007cmOMJSA2)

```
RowCount / PARENTGROUPVAL( OPPORTUNITY_NAME: UNIQUE, GRAND_SUMMARY)
```



# 集計の結果

+ [Salesforce での集計数式と行レベルの数式](https://qiita.com/Keiji_otsubo/items/80207337f2627b0364cc)

今回の場合はどちらも結果は一致しています。

```
RowCount / PARENTGROUPVAL(RowCount, GRAND_SUMMARY)
RowCount / PARENTGROUPVAL(RowCount, ROW_GRAND_SUMMARY) 
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/11d9591d-b0a2-b2d4-a82f-785a0b6db9ae.png)

この場合はやはりROW_GRAND_SUMMARYが正解のようです。
[PARENTGROUPVAL Returning 100% for All Groups?](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000Hk0TV)

# 2つのグルーピングでの集計

```
RowCount / PARENTGROUPVAL(RowCount ,RepTest__c.USERs__c ) 
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/b5a084a9-2226-2a9e-8373-f52a73fe2442.png)

[Need Help with report formula](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000HEhk8)

# COLUMN_GRAND_SUMMARY

```
RowCount /
PARENTGROUPVAL（RowCount,Assigned_Vet_Grouping,COLUMN_GRAND_SUMMARY）
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/4a010257-ae28-a16d-ae68-a992b52964e9.png)

+ [RowCountのパーセンテージ](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000FWsHG)
+ [Report formula to calculate the percentage of overall report total per column?](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000HjuUB)

# 集計した値同士の計算

```
Courses_Completed:SUM / Courses_Enrolled:SUM  
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/04426c98-9435-f93b-7ff2-05f2b04faaad.png)

[Help with percentage formula](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000FUfFWSA1)

```
IF(CLOSED:SUM = 0,
0,
( WON:SUM / CLOSED:SUM )
)
```

[How do I fix my win rate report?](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000G2lf6)

-------------------------------------

ParentGroupVal 関数は、Salesforce レポートのあまり知られていない機能の 1 つです。この記事では、概要レポート、結合レポート、またはマトリックス レポート内でPARENTGROUPVAL関数を使用して、概要レポートの主要な指標を作成する方法を学習します。この関数は、現在のグループより 1 つ上のレベルのグループである親グループから集計値を取得します。構文は、コンテキスト内のレポートの種類に応じて異なります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/9742a875-939f-1a03-55e1-8b45a60b3d92.png)

+ [Powering your Salesforce reports using the PARENTGROUPVAL function](https://focusonforce.com/analytics-and-reporting/powering-your-reports-using-parentgroupval-function/)

# 営業所別、担当者別の集計で担当者の件数割合を出したい

こんな感じに出したい

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/8d925339-f6f4-190d-fee3-6829c70f515b.png)

PARENTGROUPVALの式の中では担当営業所（Account.TantoEigyousyo_Formula__c）を指定して、行グループに担当者名を指定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/5c403f3a-7715-551f-3007-1ee81d7d0ece.png)

行グループにを担当営業所を指定したら...
ここでどのレベルに集計するかを指定するんだな。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/e52354ee-42a4-be0c-cbc1-9010440b2730.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/1cf53530-8fce-9ff3-eba9-4d619e3e6882.png)



# このようなレポート

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/3d549870-38d0-39d1-1f25-9f7e0181da30.png)


+ [レポートの集計項目の数式作成について](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007eqyM0)

:::note
集計レベル数式でCUST_OWNER_NAMEの部分にグルーピングした所有者を指定してください。

また、選択済みのグループにも今月のアプローチ（行レベル数式だと思いますが...）を選びます。

```
RowCount / PARENTGROUPVAL(RowCount ,CUST_OWNER_NAME )
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/aba0d745-6e38-5b4c-b336-9d58c7af4b93.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/051b5462-6aa1-2f98-a143-8f04bde36701.png)
:::

さらに棒グラフ化？

この数式を適用する方法：

行グループ→所有者

列グループ→今月アプローチ

```
RowCount / PARENTGROUPVAL(RowCount,所有者,COLUMN_GRAND_SUMMARY)
```