krew Data ドリル

krewData ドリル

krewDataの利用方法をマスターできるドリルです。これをやれば自由自在にkintneアプリのデータを集計したり、複数のアプリのデータをまとめることができるようになりますので、ぜひ活用してください!

フィールド構成の異なるアプリを突き合わせて予実管理を行う ―部門・全社単位で経費の予実管理―

500-40  | 予実管理


以下のように、予実データと実績データを別々のアプリで管理しており、各アプリのデータ構造が異なる場合があります。

予算データと実績データのデータ構造が異なる

krewDataを利用すると、アプリのデータ構造を変換することができます。
この記事では、krewDataを利用し以下のように予算データと実績データのデータ構造を揃えて、予実管理を行う方法を解説します。

予算データと実績データのデータ構造を揃える

入力アプリのフィールド構成

予算アプリ
  • 各部門の1年分の予算が登録されている

予算管理アプリのフィールド構成

予算管理アプリの詳細画面

実績管理アプリ
  • 各部門の日単位の実績金額が登録されている

実績管理アプリのアプリ構成

実績管理アプリ詳細画面

出力アプリのフィールド構成

予実管理(部門別)アプリ
  • 各部門の予算と実績が出力される
  • 差異、達成率が確認できる

予実管理(部門別)アプリのアプリ構成

予実管理(全社)アプリ
  • 全部門の予算と実績が月ごとに出力される
  • 差異、達成率が確認できる

予実管理(全社)アプリ

入力アプリを設定

予算管理アプリを入力アプリコマンドに設定
  1. 入力アプリコマンドを追加し、アプリの選択で「予算管理」アプリを選択する
  2. フィールドの選択で次を選択する
    ・部門コード ・部門名 ・勘定科目 ・年度 ・4月~3月までのフィールド

入力アプリコマンドの設定

実績管理アプリを入力アプリコマンドに設定
  1. 入力アプリコマンドを追加し、アプリの選択で「実績管理」アプリを選択する
  2. フィールドの選択で次のフィールドを選択する
    ・部門コード ・部門名 ・勘定科目 ・日付 ・金額

実績管理アプリを入力アプリコマンドに設定する

予算管理アプリの各月フィールドをレコードに変換する

列一行変換でフィールドをレコードに変換する 

予算管理アプリでは、12か月分の予算を1レコードに保持しています。

予算管理アプリのフィールド構成

変換前のレコード

月単位の集計を行う為に、各月フィールドをレコードに変換します。

  1. 列一行コマンドを追加する
  2. 変換する列名を保存する新しいフィールドに「月」を入力する
  3. 変換する列の値を保存する新しいフィールド名に「予算」を入力する
  4. 行に変換する列に4月~3月までのフィールドを選択する
  5. 変換した行に保存する元の列を識別する値に「各月に対応する数字」を入力

列一行変換でデータ構造を変換

変換後はデータが次のように変化します。

変換後のデータ構造

変換後のデータ
月フィールドのフィールドタイプを調整する

列一行変換後には、フィールドタイプが文字列になります。ここでは、月フィールドを数値に変換します。

変換前のフィールドタイプ

変換前はフィールドタイプが文字列
  1. フィールドタイプ設定コマンドを追加する
  2. 変更するフィールドに「月」を入力する
  3. 新しいフィールドタイプとして数値を設定する

数値に変換した

数値に変換後のプレビュー

予算管理アプリから年を算出する

年度と月フィールドを利用して年を算出する

入力アプリでは年度単位で予算を入力していますが、出力アプリでは年単位で集計を行うため、「年度」と「月」フィールドの値を利用して年を算出します。

  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「年」する
  3. 編集方法として「数式」を選択し、以下のような数式を設定する
    設定する数式: =IF(月>=4,年度,年度+1)
    ※1月~3月は年度に1を追加することで年を算出します

年を抽出

フィールドタイプを調整する
  1. フィールドタイプ設定コマンドを追加する
  2. 変更するフィールドに「年」を入力する
  3. 新しいフィールドタイプとして「数値」を設定する

フィールドタイプを設定する

実績管理アプリから年度を抽出する

年度を抽出する
  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「年度」する
  3. 編集方法として「数式」を選択する
  4. 編集内容に「=IF(MONTH(日付)>=4, YEAR(日付), YEAR(日付)-1)」と入力する

年度を抽出

フィールドタイプを調整する 
  1. フィールドタイプ設定コマンドを追加する
  2. 変更するフィールドに「年度」を入力する
  3. 新しいフィールドタイプとして数値を設定する

フィールドタイプを設定する

実績管理アプリから年と月を抽出する

年を抽出する
  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「年」とする
  3. 編集方法は「日付編集」を選択する
  4. 編集内容には、「年を抽出」「フィールド」「日付」と設定する

日付から年を抽出する

月を抽出する
  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「月」とする
  3. 編集方法は「日付編集」を選択する
  4. 編集内容には、「月を抽出」「フィールド」「日付」と設定する

月を抽出する

部門・勘定科目ごとに毎月の費用を集計する

予算管理アプリで月ごとの合計予算を集計する
  1. グループ化コマンドを追加する
  2. グループ化する項目フィールドに次の6つを設定する
    ・部門コード ・部門名 ・勘定科目 ・年度 ・年 ・月
  3. 集計する値が保存されているフィールドに「予算」を設定する
  4. 集計した値を保存するフィールド名に「金額」を設定する
  5. 集計方法は「合計」を設定する

月ごとに集計する

グループ化後のデータ

実績管理アプリで月ごとの合計予算を集計する
  1. グループ化コマンドを追加する
  2. グループ化する項目フィールドに次の6つを選択する
    ・部門コード ・部門名 ・勘定科目 ・年度 ・年 ・月
  3. 集計する値が保存されているフィールドに「予算」を設定する
  4. 集計した値を保存するフィールド名に「金額」を設定する
  5. 集計方法は「合計」を設定する

月ごとに集計する

グループ化後のデータ

予算管理アプリと実績管理アプリを結合する

予算データと実績データを結合します。結合すると「差異」や「達成率」が算出できるようになります。

  1. アプリ結合コマンドを追加する
  2. 各アプリから「グループ化」と「グループ化1」をキーとして左外部結合を選択する
  3. 元になるアプリの条件フィールドとして次を設定する
    ・部門コード ・勘定科目 ・年 ・月
  4. 結合するアプリの条件フィールドとして次を設定する
    ・部門コード ・勘定科目 ・年 ・月

アプリ結合を行う

結合後のデータ

結合後のデータ

フローを分岐し、フィールド情報を調整する

この先は、「予実管理(部門別)」と「予実管理(全社)」の2つの出力アプリにデータを出力するためコマンドを二手に分けて設定を行います。

フローを分岐する

また、アプリ結合によって値が重複したフィールドが作成されているため、必要なフィールドのみに絞り込みます。

フィールドが重複している

  1. フィールド選択コマンドを追加する
  2. 使用するフィールドとして次を設定する
    ・部門コード ・部門名 ・勘定科目 ・年度 ・年 ・月 ・金額 ・金額_1
  3. 新しいフィールド名を次のように設定する
    ・金額:予算 ・金額_1:実績

アプリ名の変更

  1. フィールド選択コマンドを追加する
  2. 使用するフィールドとして次を設定する
    ・部門コード ・部門名 ・勘定科目 ・年度 ・年 ・月 ・金額 ・金額_1

フィールド選択コマンドを追加

部門ごとの達成率と実績を計算する

達成率を計算する
  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「達成率」とする
  3. 編集方法は「数式」を選択し、以下のように数式を設定する
    設定する数式:=IF(ISBLANK(実績),"",実績/予算)

達成率を計算する

差異を計算する 
  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「達成率」とする
  3. 編集方法は「数式」を選択し、以下のように数式を設定する
    設定する数式:=予算-実績

差異の計算

日付フィールドを作成する

日付フィールドとして日付を保持するために日付フィールドを作成します。

  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「日付」とする
  3. 編集方法は「数式」を選択し、以下のように数式を設定する
    設定する数式:=DATE(年,月,1)

日付フィールドを作成

全社単位のレコードを作成する

全社単位でグループ化する

全社で集計するために、全社単位でグループ化したレコードを作成します。

全社単位で集計する

  1. グループ化コマンドを追加する
  2. グループ化する項目フィールドを次のように設定する
    ・年度 ・年 ・月
  3. 集計する値が保存されているフィールドに「金額」「金額_1」を設定する
  4. 集計した値を保存するフィールド名に「予算」と「実績」を設定する
  5. 集計方法はどちらも「合計」を選択する

全社で集計する

作成したデータ

日付フィールドを作成する
  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「日付」とする
  3. 編集方法は「数式」を選択し、以下のように数式を設定する
    設定する数式:=DATE(年,月,1)

日付フィールドを作成する

全社の達成率を計算する

達成率を計算する

予算管理(全社)アプリに出力する達成率を計算します。

  1. データ編集コマンドを追加する
  2. 結果を保存する新しいフィールドを作成し、フィールド名を「達成率」とする
  3. 編集方法は「数式」を選択し、以下のように数式を設定する
    設定する数式:=IF(ISBLANK(実績),"",実績/予算)

全社の達成率を計算する

フィールドタイプを調整する
  1. フィールドタイプ設定コマンドを追加する
  2. 変更するフィールドに「達成率」を入力する
  3. 新しいフィールドタイプとして「数値」を設定する

フィールドタイプ設定

出力アプリを設定する

予実管理(部門ごと)を出力アプリに設定 
  1. 出力アプリコマンドを追加する
  2. 出力方式に「更新」を選択し、「更新または追加」オプションを有効にする
  3. データ編集フローのフィールドで、アプリのフィールドと対になる編集フローのフィールドを選択する
  4. 更新キーで次を有効にする
    ・部門コード ・勘定科目 ・年 ・月

出力アプリコマンドに設定

予実管理(全社)を出力アプリに設定
  1. 出力アプリコマンドを追加する
  2. 出力方式に「更新」を選択し、「更新または追加」オプションを有効にする
  3. データ編集フローのフィールドで、アプリのフィールドと対になる編集フローのフィールドを選択する
  4. 更新キーで次のフィールドを有効にする
    ・年 ・月

出力アプリコマンドに設定

出力結果を確認する

予実管理(部門ごと)の出力結果

部門ごとの予実状況が確認できるようになりました。

部門ごとの予実状況

予実管理(全社)の出力結果

全社の予実状況が確認できるようになりました。

全社の出力結果