アプリ集計プラグインを使って、複数レコードのテーブルを1テーブルにまとめた後、計算式プラグインで商品ごとに集計してみます。
その1の内容に商品ごとの集計する処理を計算式プラグインで追加します。
今回は、アプリ集計プラグイン、計算式プラグイン、項目書式プラグイン、ちょっと便利なプラグインを使います。
概要
セット番号をルックアップで複数指定して、商品をテーブルにまとめたセットマスタアプリから、商品情報を明細テーブルに取得します。
明細テーブルから商品ごとに集計して、集計テーブルにセットします。
セット番号を指定すると、すぐに明細テーブルと集計テーブルに反映されます。
ただし、明細テーブルの行数が多くなると、動作が遅くなります。
明細テーブルは、30行程度までが実用範囲だと思います。
- アプリ集計プラグインでテーブル内のルックップで指定された複数のセット番号の商品を1テーブルに取得
- 計算式プラグインで、商品ごとに集計
操作例
マスタアプリ
集計アプリ
集計先テーブルを追加します。
- セット情報: 取得するセットを指定するテーブル
- 有効: 取得対象にチェック
- 明細テーブル: マスタアプリから取得したセット情報
- KEY1: 集計キーとして使います。
- 集計先テーブル: 部品ごとの集計先
アプリ集計プラグインの設定
マスタアプリから、明細テーブルへデータを取得する設定を行います。
その1とほとんど同じです。
- テーブル項目
- KEY1 :集計キー
- IF(分類="明細",商品,"")
- 明細の場合は、商品。それ以外は、"" をセット
- IF(分類="明細",商品,"")
- KEY1 :集計キー
計算式プラグインの設定
明細テーブルから集計テーブルに商品ごとの集計をおこないます。
その他に、いくつか集計と編集不可等の指定をします。
- 「循環参照を許可」をチェック
// 合計金額
SUMIF(AND(有効,商品セット名),セット金額)
// セット情報概要
JOIN(
TARRAYIF(AND(有効,商品セット名),
商品セット名&"("&FIXED(セット金額)&")"),
" ")
// 明細テーブル : チェックのみで、テーブル項目が入力不可になります。
// KEY1 : 非表示
// 集計テーブル
TLTABLE(明細テーブル,
TPFILTER(IN(分類,"明細","小計")),
TPKEY(分類,KEY1,単価),
TPVAL(数量,"sum",金額,"sum"),
TPOUT(T分類,T商品,T単価,T数量,T金額),
TPSORT(T分類,0,T商品,1)
)
// TNo
ROWNO(集計テーブル)+1
// T分類、T商品、T単価 : チェックのみ
// T数量
IF(T分類="明細",T数量)
// T金額 : チェックのみ
項目書式プラグインの設定
テーブルが見やすくなるように、テーブル行の背景色をかえます。
- セット情報: 無効の時に書式指定
- 有効=""
- 明細テーブル: 小計行に書式指定
- 分類="小計"
- 集計テーブル: 小計行に書式指定
- 分類="小計"
ちょっと便利なプラグインの設定
テーブル操作を少し便利にするオプションを指定します。
- F24 テーブルのヘッダ固定
- F30 詳細画面でテーブル行数表示
- F31 詳細画面でテーブルフィルター