710-20 | 会計
入力アプリのフィールド構成
収支データアプリ
- 収支データの明細が登録されている
- 各レコードに集計用の科目が設定済
損益計算書マスタアプリ
- 出力する損益計算書のレイアウト情報が登録されている
- 収支データ上に存在しないkrewDataで集計する科目も登録(売上総利益、販売費計、営業利益、経常利益)
- インデント(段落表示)したい科目名はスペースを入れて最終的に表示させたい形式で登録
出力アプリのフィールド構成
月別損益計算書アプリ
- 科目ごとの収支を月別に管理するアプリ
- 科目と金額に加えてソート順やカラー等のレイアウト情報も設定
1.入力アプリを設定
- 入力アプリコマンドを追加し、アプリの選択で「収支データ」アプリを選択する
- フィールドの選択で「勘定科目」「大項目」「中項目」「金額」「発生日」を選択する(「大項目」「中項目」は途中集計の確認用で処理には利用しません)
2.グループ化コマンドで勘定科目をキーに金額を集計する
収支データの金額を集計します。(「大項目」と「中項目」は集計に関与しませんが、プレビューでデータを確認しやすくなるので残しておきます。)
年度と月、勘定科目単位での集計を行うため、必要なデータを抽出後、集計を行います。
年度を抽出する
- データ編集コマンドを追加して次のように設定する
・結果を保存するフィールド:「年度」という新しいフィールドを作成
・編集方法:数式
・編集内容:IF(日付<>””,IF(MONTH(日付)>=4, YEAR(日付), YEAR(日付)-1),””)
月を抽出する
- データ編集コマンドを追加して次のように設定する
・結果を保存するフィールド:「月」という新しいフィールドを作成
・編集方法:日付編集
・編集内容:月を抽出、フィールド、発生日
勘定科目、年度、月をキーに金額を集計する
- グループ化コマンドを追加して、グループ化する項目フィールドを選択で「勘定科目」「年度」「月」を選択する
- 集計する値が保存されているフィールドで各々「大項目」「中項目」「金額」を追加
- 集計した値を保存するフィールド名は変更しない
- 集計方法を選択で、「大項目」:「最大値」、「中項目」:「最大値」、「金額」:「合計」を選択する
3.「売上総利益」を算出してレコード追加する
集計した勘定科目ごとのレコードから「売上高」と「売上原価」を抽出して、これらを集計して「売上総利益」を算出します。
「売上総利益」=「売上高」ー「売上原価」
売上高と売上原価の抽出
- フィルタコマンドを追加して標準フィルタを選択
- フィルタの項目に「勘定科目」を選択して、条件を=(等しい)5100(売上原価の科目コード)、同様の条件で1100(売上高の科目コード)を設定する
(※実際に運用で利用する際は該当の勘定科目コードを指定してください) - フィルタ条件はいずれかの条件を満たすを選択する
集計用に売上原価の金額をマイナスに変更する
「売上総利益」=「売上高」ー「売上原価」の演算をこの後の処理でグループ化で合計して算出するため、「売上原価」の符号を変更します。
- データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「金額」を選択する
- 編集方法で「数式」を選択
- 編集内容の数式に「金額*-1」を設定
- 検索条件に「勘定科目」を選択して、条件を=(等しい)5100(売上原価の科目コード)に設定する
「売上総利益」の勘定科目を設定する
予め「損益計算書マスタ」に登録しておいた「売上総利益」の勘定科目を設定します。
- データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
- 編集方法で「値を設定」を選択
- 編集内容に「2000」を設定
- 検索条件に「すべてのレコード」のまま
「売上総利益」を算出する
- グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」「年度」「月」を選択する
- 集計する値が保存されているフィールドで「金額」を選択
- 集計した値を保存するフィールド名も「金額」のまま
- 集計方法で「合計」を選択
ポイント
この後の販売管理費の合計/営業利益/経常利益のいずれも、対象となるデータの抽出方法は異なりますが、レコード間で加減の演算をする処理は同様になるので、いまいちど処理のポイントをおさらいしておきます。
1.演算対象データの取得
フィルタコマンド利用して対象レコードを取得します。
2.減算するレコードの符号を変更する
データ編集コマンドで符号を変更します。
3.集計キーを設定
データ編集コマンドを使用して、集計キーを一致させます。
4.算出
グループ化コマンドを利用して、合算します。
4.販売管理費を集計する
#2で勘定科目ごとに集計したデータから「販売管理費」のみを抽出します。
事前に勘定科目マスタで販売管理費のみ抽出できるようなコードの振り方や名前を設定しておくことがポイントです。
今回使用する科目マスタでは、「科目コード」の上2桁が52または「大項目」に販売管理費と設定しておき、収支データ登録時にルックアップで科目マスタから科目コードと大項目等をコピーする運用を想定しています。
販売管理費の抽出
- フィルタコマンドを追加して、数式を選択
- 数式にLEFT(勘定科目,2)=”52″を設定(勘定科目の上2桁が”52″)
「販売管理費」の勘定科目を設定する
予め「損益計算書マスタ」に登録しておいた「販売管理費」の勘定科目を設定します。
- データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
- 編集方法で「値を設定」を選択
- 編集内容に「5200」を設定
- 検索条件に「すべてのレコード」のまま
「販売管理費」を算出する
- グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」「年度」「月」を選択する
- 集計する値が保存されているフィールドで「金額」を選択
- 集計した値を保存するフィールド名も「金額」のまま
- 集計方法で「合計」を選択
5.営業利益を集計する
これまでの処理で算出した「売上総利益」と「販売管理費」を使用して、「営業利益」を算出します。(「営業利益」=「売上総利益」ー「販売管理費」)
「売上総利益」レコードと「販売管理費」レコードを取得
レコード結合コマンドを利用して、各々のレコードを取得します。
- レコード結合コマンドを追加して、売上総利益の算出結果と販売管理費の集計結果のコマンドから線でつなぐ
- 結合方法では、共通するフィールドのみを含めるを選択
集計用に販売管理費の金額をマイナスに変更する
「営業利益」=「売上総利益」ー「販売管理費」の演算をこの後の処理でグループ化で合計して算出するため、「販売管理費」の符号を変更します。
- データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「金額」を選択する
- 編集方法で「数式」を選択
- 編集内容の数式に「金額*-1」を設定
- 検索条件に「勘定科目」を選択して、条件を=(等しい)5200(の科目コード)に設定する
「営業利益」の勘定科目を設定する
予め「損益計算書マスタ」に登録しておいた「営業利益」の勘定科目を設定します。
- データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
- 編集方法で「値を設定」を選択
- 編集内容に「6000」を設定
- 検索条件に「すべてのレコード」のまま
「営業利益」を算出する
- グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」「年度」「月」を選択する
- 集計する値が保存されているフィールドで「金額」を選択
- 集計した値を保存するフィールド名も「金額」のまま
- 集計方法で「合計」を選択
6.経常利益を算出する
これまでの処理で算出した「営業利益」と科目集計で算出した「営業外収益」、「営業外費用」を使用して、「営業利益」を算出します。(「経常利益」=「営業利益」+「営業外収益」ー「営業外費用」)
「営業外収益」、「営業外費用」レコードを取得
科目集計済のレコードから「営業外収益」、「営業外費用」を取得。
- フィルタコマンドを追加して、標準フィルタを選択
- フィルタの項目に「勘定科目」を選択して、条件を=(等しい)7000(営業外収益の科目コード)、同様の条件で8000(営業外費用の科目コード)を設定する(※実際に運用で利用する際は該当の勘定科目コードを指定してください)
- フィルタ条件はいずれかの条件を満たすを選択する
「営業利益」レコードと「営業外収益」、「営業外費用」レコードを結合
レコード結合コマンドを利用して、各々のレコードを取得します。
- レコード結合コマンドを追加して、営業利益の算出結果と「営業外収益」、「営業外費用」の抽出結果を線でつなぐ
- 結合方法では、「営業外収益/営業外費用抽出」を選択
集計用に営業外費用の金額をマイナスに変更する
「経常利益」=「営業利益」+「営業外収益」ー「営業外費用」の演算をこの後の処理でグループ化で合計して算出するため、「営業外費用」の符号を変更します。
- データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「金額」を選択する
- 編集方法で「数式」を選択
- 編集内容の数式に「金額*-1」を設定
- 検索条件に「勘定科目」を選択して、条件を=(等しい)8000(の科目コード)に設定する
「経常利益」の勘定科目を設定する
予め「損益計算書マスタ」に登録しておいた「経常利益」の勘定科目を設定します。
- データ編集コマンドを追加して、結果を保存するフィールドに「既存フィールドのデータを置換」を選択して、フィールドを選択に「勘定科目」を選択する
- 編集方法で「値を設定」を選択
- 編集内容に「9000」を設定
- 検索条件に「すべてのレコード」のまま
「経常利益」を算出する
- グループ化コマンドを追加して、グループ化する項目フィールドで「勘定科目」「年度」「月」を選択する
- 集計する値が保存されているフィールドで「金額」を選択
- 集計した値を保存するフィールド名も「金額」のまま
- 集計方法で「合計」を選択
7.すべての科目レコードを結合する
これまで算出してきたすべてレコードを結合させます。
すべてのレコードを結合
レコード結合コマンドを利用して、各々のレコードを取得します。
- レコード結合コマンドを追加して「科目集計」を集計したレコードと「売上総利益」、「販売管理費」、「営業利益」、「経常利益」の算出結果をコマンドから線でつなぐ
- 結合方法では、共通するフィールドのみを含めるを選択
8.損益計算書マスタからレイアウト情報を補完する
損益計算書を表示する際、科目名やソート順は非常に重要な要素です。最終的に表示したいレイアウト情報を損益計算書マスタに定義しておき、情報を補完します。こうすることで、表示レイアウトや順序を変更したい場合に、フローを変更せずにアプリの情報を変更するだけでレイアウトを変更することができるようになります。
損益計算書マスタを入力アプリとして追加
- 入力アプリコマンドを追加し、アプリの選択で「損益計算書マスタ」アプリを選択する
- フィールドの選択で「科目コード」「科目」「ソート順」「行カラー」を選択する
集計したレコードに損益計算書マスタの情報を補完する
アプリ結合コマンドを利用して、損益計算書マスタの情報を補完します。
- アプリ結合コマンドを追加して「全レコード結合」と「損益計算書マスタ」を左外部結合で結合し、「勘定科目」と「科目コード」を条件に設定
9.月をフィールドに変換し、レコードを年度単位に作成する
- 行ー列変換コマンドを追加し、以下のように設定する
・列に変換するフィールド:月
・行を識別するフィールド:勘定科目、科目コード - 3~5の項目は次のように設定する
・新しい列名:4月~3月までを記載
・新しい列を識別する値:月に対応する数字を記載
・列に保存する値が保存されているフィールド:全ての行において「金額」フィールドを選択
10.出力アプリを設定する
- 出力アプリコマンドを追加して、アプリの選択で「710-20 月別損益計算書」アプリを選択する
- 出力方式に「更新」を選択し、「更新または追加」にチェックする
- データ編集フローのフィールドで、アプリのフィールドと対になるデータ編集フローのフィールドを選択する
- 更新キーとして、「勘定科目」と「年度」にチェックする
11.出力結果を確認する
「損益計算書」アプリで意図した損益計算書のレイアウトになっているか確認します。
kintone側の[一覧の設定]で損益計算書マスタから補完したソート順を指定しています。
krewSheetによる表示
損益計算書の表示をExcelと同等にしたい場合は、krewSheetを適用するとより視認性の高い損益計算書を作成できます。条件付き書式で行全体の色を変更したり、Excelファイルへエクスポートも可能です。ぜひ、こちらもお試しください。
krewSheet 製品情報:https://krew.grapecity.com/products/krewsheet.htm
サンプルファイルのダウンロードはこちら
https://download.krew.mescius.jp/study/krewdata-drill/pratical/dt710-20profitandloss-month.zip