0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

rex0220 計算式プラグイン テーブル内小計2

Posted at

kintone のテーブルで、小計に値引き・仕切を計算してみます。
計算式プラグイン、項目検証プラグイン、項目書式プラグインを使います。
rex0220 計算式プラグイン テーブル内小計に値引き・仕切行を追加

テーブル内小計

小計行の次行に「値引き」行・「仕切」行を追加します。

  • 詳細画面
    2023-05-23_20h48_16.png
  • 編集画面
    2023-05-23_20h57_55.png

計算式プラグインの設定

.js
// No
ROWNO(テーブル)+1
// 商品
LET(CNO,ROWNO(テーブル),
  SWITCH(分類,
    "小計",LET(PNO,NVL(LASTIF(AND(ROWNO(テーブル)<CNO,分類="小計"),ROWNO(テーブル)),-1),
      FIRSTIF(AND(ROWNO(テーブル)<CNO,ROWNO(テーブル)>PNO,分類="概要"),商品)),
    "値引き",IF(SUBTABLE(分類,CNO-1)="小計",SUBTABLE(商品,CNO-1)),
    "仕切",IF(SUBTABLE(分類,CNO-1)="値引き",SUBTABLE(商品,CNO-1)),
    商品)
)
// 数量
SWITCH(分類,
  "明細",数量,
  "値引き",1,
  ""
)
// 単価
IF(IN(分類,"明細","値引き"),単価,"")
// 金額
LET(CNO,ROWNO(テーブル),
  SWITCH(分類,
    "明細",数量*単価,
    "小計",LET(PNO,NVL(LASTIF(AND(ROWNO(テーブル)<CNO,分類="小計"),ROWNO(テーブル)),-1),
      SUMIF(AND(ROWNO(テーブル)<CNO,ROWNO(テーブル)>PNO,分類="明細"),金額)),
    "値引き",数量*単価,
    "仕切",IF(SUBTABLE(分類,CNO-2)="小計",SUBTABLE(金額,CNO-2))+IF(SUBTABLE(分類,CNO-1)="値引き",SUBTABLE(金額,CNO-1)),
    "")
)

2023-05-23_21h04_08.png

項目検証プラグインの設定

.js
// 商品の入力不可
IN(分類,"小計","値引き","仕切")
// 数量の入力不可
分類!="明細"
// 単価の入力不可
IN(分類,"概要","小計","仕切")

2023-05-23_21h03_19.png

項目書式プラグインの設定

.js
// テーブル行の条件
IN(分類,"小計","値引き","仕切")

2023-05-23_21h05_39.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?