損益計算書を作成する
710-10 | 会計
このフローは、「 kintoneで損益計算書(PL)を作成しよう! 」で掲載している記事の具体的なフローの作成方法です。
入力アプリのフィールド構成
収支データアプリ
収支データの明細が登録されている
各レコードに集計用の科目が設定済

損益計算書マスタアプリ
出力する損益計算書のレイアウト情報が登録されている
収支データ上に存在しないkrewDataで集計する科目も登録(売上総利益、販売費計、営業利益、経常利益)
インデント(段落表示)したい科目名はスペースを入れて最終的に表示させたい形式で登録

出力アプリのフィールド構成
損益計算書アプリ
科目と金額に加えてソート順やカラー等のレイアウト情報も設定

1.入力アプリを設定
1. 入力アプリコマンドを追加し、アプリの選択で「収支データ」アプリを選択する
2. フィールドの選択で「勘定科目」「大項目」「中項目」「金額」を選択する(「大項目」「中項目」は途中集計の確認用で処理には利用しません)
2.グループ化コマンドで勘定科目をキーに金額を集計する
収支データの勘定科目をキーに金額を集計します。(「大項目」と「中項目」は集計に関与しませんが、プレビューでデータを確認しやすくなるので残しておきます。)
勘定科目をキーに金額を集計する
1. グループ化コマンドを追加して、グループ化する項目フィールドを選択で「勘定科目」を選択する
2. 集計する値が保存されているフィールドで各々「大項目」「中項目」「金額」を追加
3. 集計した値を保存するフィールド名は変更しない
4. 集計方法を選択で、「大項目」:「最大値」、「中項目」:「最大値」、「金額」:「合計」を選択する

収支データを科目キーごとに集計した結果(売上総利益や経常利益等はこのデータをもとに算出する)
3.「売上総利益」を算出してレコード追加する
集計した勘定科目ごとのレコードから「売上高」と「売上原価」を抽出して、これらを集計して「売上総利益」を算出します。
「売上総利益」=「売上高」ー「売上原価」
売上高と売上原価の抽出
1. フィルタコマンドを追加して、標準フィルタを選択
2. フィルタの項目に「勘定科目」を選択して、条件を=(等しい)5100(売上原価の科目コード)、同様の条件で1100(売上高の科目コード)を設定する(※実際に運用で利用する際は該当の勘定科目コードを指定してください)
3. フィルタ条件はいずれかの条件を満たすを選択する

売上高と売上原価の抽出

売上高と売上原価の抽出したプレビュー
集計用に売上原価の金額をマイナスに変更する
「売上総利益」=「売上高」ー「売上原価」の演算をこの後の処理でグループ化で合計して算出するため、「売上原価」の符号を変更します。
1. データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「金額」を選択する
2. 編集方法で「数式」を選択
3. 編集内容の数式に「金額*-1」を設定
4. 検索条件に「勘定科目」を選択して、条件を=(等しい)5100(売上原価の科目コード)に設定する
売上原価の符号を変更

「売上総利益」の勘定科目を設定する
予め 「損益計算書マスタ」に登録しておいた「売上総利益」の勘定科目 を設定します。
1. データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
2. 編集方法で「値を設定」を選択
3. 編集内容に「2000」を設定
4. 検索条件に「すべてのレコード」のまま
「売上総利益」の勘定科目を設定

「売上総利益」を算出する
1. グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」を選択する
2. 集計する値が保存されているフィールドで「金額」を選択
3. 集計した値を保存するフィールド名も「金額」のまま
4. 集計方法で「合計」を選択

ポイント
この後の販売管理費の合計/営業利益/経常利益のいずれも、対象となるデータの抽出方法は異なりますが、 レコード間で加減の演算をする処理は同様 になるので、いまいちど処理のポイントをおさらいしておきます。
1.演算対象データの取得
フィルタコマンド利用して対象レコードを取得します。

処理後のデータイメージ
2.減算するレコードの符号を変更する
データ編集コマンドで符号を変更します。

処理後のデータイメージ
3.集計キーを設定
データ編集コマンドを使用して、集計キーを一致させます。

処理後のデータイメージ(勘定科目が変更されている)
4.算出
グループ化コマンドを利用して、合算します。

処理後のデータイメージ(売上総利益レコードを作成)
4.販売管理費を集計する
#2で勘定科目ごとに集計したデータから「販売管理費」のみを抽出します。
事前に 勘定科目マスタで販売管理費のみ抽出できるようなコードの振り方や名前を設定しておくこと がポイントです。
今回使用する科目マスタでは、「科目コード」の上2桁が52または「大項目」に販売管理費と設定しておき、収支データ登録時にルックアップで科目マスタから科目コードと大項目等をコピーする運用を想定しています。

収支データ(「販売管理費」を抽出できるような科目コードおよび大項目の名前が設定されている)
販売管理費の抽出
1. フィルタコマンドを追加して、数式を選択
2. 数式にLEFT(勘定科目,2)=”52″を設定(勘定科目の上2桁が”52″)

販売管理費の抽出
「販売管理費」の勘定科目を設定する
予め 「損益計算書マスタ」に登録しておいた「販売管理費」の勘定科目 を設定します。
1. データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
2. 編集方法で「値を設定」を選択
3. 編集内容に「5200」を設定
4. 検索条件に「すべてのレコード」のまま

「販売管理費」を算出する
1. グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」を選択する
2. 集計する値が保存されているフィールドで「金額」を選択
3. 集計した値を保存するフィールド名も「金額」のまま
4. 集計方法で「合計」を選択

5.営業利益を集計する
これまでの処理で算出した「売上総利益」と「販売管理費」を使用して、「営業利益」を算出します。(「営業利益」=「売上総利益」ー「販売管理費」)
「売上総利益」レコードと「販売管理費」レコードを取得
レコード結合コマンドを利用して、各々のレコードを取得します。
1. レコード結合コマンドを追加して、売上総利益の算出結果と販売管理費の集計結果のコマンドから線でつなぐ
2. 結合方法では、共通するフィールドのみを含めるを選択
売上総利益レコードと販売管理費レコードを結合

結合結果
集計用に販売管理費の金額をマイナスに変更する
「営業利益」=「売上総利益」ー「販売管理費」の演算をこの後の処理でグループ化で合計して算出するため、「販売管理費」の符号を変更します。
1. データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「金額」を選択する
2. 編集方法で「数式」を選択
3. 編集内容の数式に「金額*-1」を設定
4. 検索条件に「勘定科目」を選択して、条件を=(等しい)5200(の科目コード)に設定する

「営業利益」の勘定科目を設定する
予め 「損益計算書マスタ」に登録しておいた「営業利益」の勘定科目 を設定します。
1. データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
2. 編集方法で「値を設定」を選択
3. 編集内容に「6000」を設定
4. 検索条件に「すべてのレコード」のまま

「営業利益」を算出する
1. グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」を選択する
2. 集計する値が保存されているフィールドで「金額」を選択
3. 集計した値を保存するフィールド名も「金額」のまま
4. 集計方法で「合計」を選択
営業利益の集計
6.経常利益を算出する
これまでの処理で算出した「営業利益」と科目集計で算出した「営業外収益」、「営業外費用」を使用して、「営業利益」を算出します。(「経常利益」=「営業利益」+「営業外収益」ー「営業外費用」)
「営業外収益」、「営業外費用」レコードを取得
科目集計済のレコードから「営業外収益」、「営業外費用」を取得。
1. フィルタコマンドを追加して、標準フィルタを選択
2. フィルタの項目に「勘定科目」を選択して、条件を=(等しい)7000(営業外収益の科目コード)、同様の条件で8000(営業外費用の科目コード)を設定する(※実際に運用で利用する際は該当の勘定科目コードを指定してください)
3. フィルタ条件はいずれかの条件を満たすを選択する
科目集計から営業外収益と営業外費用を抽出

「営業利益」レコードと「営業外収益」、「営業外費用」レコードを結合
レコード結合コマンドを利用して、各々のレコードを取得します。
1. レコード結合コマンドを追加して、営業利益の算出結果と「営業外収益」、「営業外費用」の抽出結果を線でつなぐ
2. 結合方法では、「営業外収益/営業外費用抽出」を選択
「営業外収益」「営業外費用」、「経常利益」のレコードを結合

集計用に営業外費用の金額をマイナスに変更する
「経常利益」=「営業利益」+「営業外収益」ー「営業外費用」の演算をこの後の処理でグループ化で合計して算出するため、「営業外費用」の符号を変更します。
1. データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「金額」を選択する
2. 編集方法で「数式」を選択
3. 編集内容の数式に「金額*-1」を設定
4. 検索条件に「勘定科目」を選択して、条件を=(等しい)8000(の科目コード)に設定する

「経常利益」の勘定科目を設定する
予め 「損益計算書マスタ」に登録しておいた「経常利益」の勘定科目 を設定します。
1. データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
2. 編集方法で「値を設定」を選択
3. 編集内容に「9000」を設定
4. 検索条件に「すべてのレコード」のまま

「経常利益」を算出する
1. グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」を選択する
2. 集計する値が保存されているフィールドで「金額」を選択
3. 集計した値を保存するフィールド名も「金額」のまま
4. 集計方法で「合計」を選択

7.すべての科目レコードを結合する
これまで算出してきたすべてレコードを結合させます。
すべてのレコードを結合
レコード結合コマンドを利用して、各々のレコードを取得します。
1. レコード結合コマンドを追加して「科目集計」を集計したレコードと「売上総利益」、「販売管理費」、「営業利益」、「経常利益」の算出結果をコマンドから線でつなぐ
2. 結合方法では、共通するフィールドのみを含めるを選択
全レコード結合

損益計算書に必要なすべてのレコードを結合した結果(「大項目」「中項目」が空白のレコードがkrewData内で算出して新たに追加したレコード)
8.損益計算書マスタからレイアウト情報を補完する
損益計算書を表示する際、科目名やソート順は非常に重要な要素です。最終的に表示したいレイアウト情報を損益計算書マスタに定義しておき、情報を補完します。こうすることで、表示レイアウトや順序を変更したい場合に、 フローを変更せずにアプリの情報を変更するだけでレイアウトを変更することができるようになります。
損益計算書マスタを入力アプリとして追加
入力アプリコマンドを追加し、アプリの選択で「損益計算書マスタ」アプリを選択する
フィールドの選択で「科目コード」「科目」「ソート順」「行カラー」を選択する
損益計算書マスタを入力アプリとして追加
集計したレコードに損益計算書マスタの情報を補完する
アプリ結合コマンドを利用して、損益計算書マスタの情報を補完します。
1. アプリ結合コマンドを追加して「全レコード結合」と「損益計算書マスタ」を左外部結合で結合し、「勘定科目」と「科目コード」を条件に設定

損益計算書マスタから補完されたデータ
9.出力アプリを設定する
1. 出力アプリコマンドを追加して、アプリの選択で「損益計算書」アプリを選択する
2. 出力方式に「再生成」を選択する
3. データ編集フローのフィールドで、アプリのフィールドと対になるデータ編集フローのフィールドを選択する
10.出力結果を確認する
「損益計算書」アプリで意図した損益計算書のレイアウトになっているか確認します。
kintone側の[一覧の設定]で損益計算書マスタから補完したソート順を指定しています。

損益計算書(kintone 標準一覧)
krewSheetによる表示
損益計算書の表示をExcelと同等にしたい場合は、krewSheetを適用するとより視認性の高い損益計算書を作成できます。条件付き書式で行全体の色を変更したり、Excelファイルへエクスポートも可能です。ぜひ、こちらもお試しください。

損益計算書(krewSheetによる表示)
サンプルファイルのダウンロードはこちら
演習をお客様のkintone環境で試す

実際の動作を確認できるテンプレートを公開しています。
こちらの記事でご紹介した内容をご自身の環境で試したい方はダウンロードしてご利用ください。




















