- リリース ノート
- 基本情報
- インストール
- 構成
- Integrations
- 認証
- アプリおよびディスカバリー アクセラレータを使用する
- AppOne のメニューとダッシュボード
- AppOne の設定
- TemplateOne 1.0.0 のメニューとダッシュボード
- TemplateOne 1.0.0 セットアップ
- TemplateOne のメニューとダッシュボード
- TemplateOne 2021.4.0 のセットアップ
- Purchase-to-Pay Discovery Accelerator のメニューとダッシュボード
- Purchase to Pay Discovery Accelerator の設定
- Order to Cash Discovery Accelerator のメニューとダッシュボード
- Cash Discovery Accelerator の設定への注文
- 基本コネクタ (AppOne 用)
- SAP コネクタ
- SAP Order to Cash Connector for AppOne
- SAP Purchase to Pay Connector for AppOne
- SAP Connector for Purchase to Pay Discovery Accelerator
- SAP Connector for Order-to-Cash Discovery Accelerator
- Superadmin
- ダッシュボードとグラフ
- テーブルとテーブル項目
- アプリケーションの整合性
- 使い方 ....
- SQL コネクタを使用する
- 便利なリソース
集計式
GROUP BY
関数と比較できます。
集計式は、集計レベルで一意の値ごとに値を計算します。 既定では、 ルート レベル、つまり表全体の値が 1 つです。
以下に集計式の例を示して、Invoices (請求書) データセットのすべての金額の合計を計算します。
sum(records.amount)
は、以下のように評価されます。
- Invoices (請求書) のすべてのレコード を作成します。
- レコードごとに 、Amount datasource 属性の値を選択します。
- これらのすべての金額の合計を返します。
式によって一意の値が 1 つ計算されますが、この値はデータセット内のすべてのレコードに追加されます。 以下に、4 つの行を含むデータセットの例を示します。
データセット全体に対する集計を計算する代わりに、レコードのグループに対する値を計算することもできます。
以下に、サプライヤーごとの合計金額を計算するための集計式の例を示します。
集計レベルが追加され、式のスコープがこの新しいレベルに設定されます。 以下はデータセットの例です。
集計式は、スコープ レベル内の各値について 1 回ずつ計算されます。 この値は、このスコープ内の各レコードに追加されます。 したがって 、[合計金額] は 1 回計算され、4 回コピーされて各レコードに記録されます。 サプライヤーごとの合計金額 は 3 回計算されます。 "Supplier A" のレコードが 2 つ存在するため、この値は両方のレコードに設定されます。 「Supplier B」と「Supplier C」には1つのレコードしかないので、値が対応するレコードに割り当てられます。
p
(親の場合) と c
(子) を使用してツリー構造を上下に走査できます。
p
は 1 つのノードを返しますが、複数の子を持つことができます。したがって、 c
ノードのリストを返します。
以下に、親レベルに基づく集計式の例を示します。
percentage(sum(records.Amount) / sum(p.records.Amount) * 100)
サプライヤーごとの割合を計算します。
- サプライヤーに関連付けられた金額の合計を、すべての金額の合計で割った値です。
- スコープは親レベル (つまりルート) にシフトします。
- 結果に 100 を掛けてパーセンテージにキャストします。
以下に、子レベルに基づいた集計式の例を示します。
count(c)
式は、 Supplier 型のすべてのサプライヤーのリストを返します。それぞれの子はサプライヤーであるため、子の数 c
カウントされます。
if()
関数を条件チェックに使用できます。 ただし、この関数はレコードごとにのみ適用できます。 if-ステートメントを使用してレコードのグループ内の条件を確認することはできません。 ツリー構造を使用すると、たとえばプロパティを表現するために、データの (特定の部分) に対してループ処理を実行できます。
これらのタイプの計算では、以下の関数を使用できます。
機能 |
説明 |
---|---|
|
[スコープ] の [条件 ] の評価が少なくとも 1 つ
true 場合 true を返します。
|
|
[スコープ] のすべての条件 の評価が [
true ] の場合 true を返します。
|
以下の画像で例をご確認ください。
例: 式
exists(records, find(lower(Supplier), 'consulting')
名前の一部として「コンサルティング」を持つサプライヤーの請求書があるかどうかを、サプライヤーの種類ごとに確認します。
lower
サプライヤー名を小文字に変換し、チェック ケースを大文字と小文字を区別しないようにするために使用します。
filter()
関数を使用できます。
以下に、フィルターを基にした集計式の例を示します。
count(
unique(
filter(
records,
supplier_type = "Machinery"
).Supplier
)
)
count(
unique(
filter(
records,
supplier_type = "Machinery"
).Supplier
)
)
内側から外に向かって表現は次のように構築されます。
- 現在のスコープ内のすべてのレコードを取得します。
- これらのレコードをフィルター処理して、 サプライヤーの種類 の 機械が 残っているレコードだけが残ります。
- フィルター処理された各レコードに対して、 Supplier データソース属性の値を返します。
- 重複する値をすべてリストから削除するため、一意の値ごとには 1 つのアイテムのみが取得されます。
-
リストに残りのアイテムの数をカウントします。
records
、このケース所有者に属するレコードのリストです。
式は、各 ケース所有者に対して値を返します。これは、種類が [機械]である一意の Suppliers の数を表します。
[設定] パネルのメニューには、集計のフィルター処理を追加するオプションが含まれています。
以下の表では 、[設定] メニューのオプションについて説明します。
オプション |
説明 |
---|---|
フィルター式を有効化 |
式をフィルターとして入力できます。 |
フィルター コントロールを有効化する |
[フィルター コントロールを編集] ダイアログを 開きます。このダイアログでは、リストから使用可能なフィルター コントロールを選択できます。 |
比較期間を有効化 |
比較期間や式を追加して、フィルター処理する前の期間の数を定義できます。 |
エンドユーザー フィルターを適用する |
利用可能なエンドユーザー フィルターを適用できます。 |
並べ替え機能を使用すると、最高または最低の値を判断したり、レコードを特定の順序で処理したりできます。
式の最初または最後のレコードが必要な場合は、次の方法でレベルを並べ替えることができます。
-
A。。Z と Z です。A を値で並べ替えます。
- 文字列の場合、アルファベット順に並べ替えられます。
- 数値の形式 (ダブル、整数) では、数値に並べ替えられます。
- 時間関連のフォーマット (日時、日付) は、時系列順に並べ替えられます。
- 0.9 および 9.0 はグループのレコード数に対して並べ替えられます。
- [式 ] では、式を入力でき、データは上で説明した値に基づいて並べ替えられます。
これらの並べ替えオプションごとに、順序を昇順または降順に設定できます。
以下の画像に、各ケースで最初に作業するユーザーが決定された並べ替えの例を示します。
first(records.User)
各 Case ID
の最初の User
を決定します。Event end
は昇順で並べ替えられます。