数式・集計フィールドで、テーブルにない値を表示する

UI部品 基本編

 

この記事でわかること:
・テーブルに存在しないデータを算出または集計して表示する方法
・Forguncyにおける数式フィールドと集計フィールドの使い方

本記事はForguncy製品サイトで公開しているリストビュー概要資料における、各機能の実装方法を解説したものです。
リストビュー概要資料は下記リンクからご覧いただけます。

>お役立ち資料 – リストビュー概要

プロジェクトファイル
(作成バージョン:(10.0.12.0)
stepup_listview_before.fgcp
stepup_listview_after.fgcp(実装済みプロジェクトファイル)

1.プロジェクトを確認する

今回の演習で使用するプロジェクトの確認をします。

手順1-1.テーブルを確認

今回使用するテーブルは発注テーブルです。

手順1-2.ページを確認 

プロジェクトには複数のページが内蔵されています。
そのうち、今回使用するページは「テーブルにないフィールドを挿入」です。

2.数式を使う

Forguncyでは、「=」で始まる式を数式として使用できます。
数値や演算子、関数などを用いて計算式の結果を画面上に表示することが可能です。
今回の演習では「セルに直接数式を入力する」方法と、「テーブルに数式フィールドという新しいフィールドを作成する」方法を解説します。

手順2-1.セルに直接数式を入力

リストビュー内のセルに直接数式を入力し、値を求めます。
この方法では計算処理がクライアント側で行われているため接続のレスポンスやサーバーの負荷の面で優れていますが、その分クライアント側に処理の負荷がかかります。
S6セルに「=K6*O6」と入力します。
この式で、リストビュー上に各商品の合計金額が表示されるようになります。

直接データベースのテーブルを参照して値を取得

Forguncyには独自の関数ODataというものがあります。
ODataは直接データベースのテーブルを参照して値を取得することができます。
これを使うと、リストビューにデータ連結しているテーブルとは別のテーブルにあるデータを表示することも可能になります。
しかし、サーバーに負荷がかかりやすかったり、ページのエクスポート時に制限があったりなどデメリットもあります。
詳細については、ヘルプを参照してください。
>>OData(Forguncyヘルプ)

手順2-2.テーブルに数式フィールドを作成

テーブル側にForguncy専用の数式フィールドを作成し、そのフィールドをリストビューに表示することで算出した値を表示します。
計算処理はサーバー側で行われるため、サーバー上のデータベースのレコードが更新されたタイミングで数式フィールドの値も自動的に更新されます。
ナビゲーションウィンドウの発注テーブルを右クリックし、[数式フィールドの追加…]をクリックします。
数式フィールドの追加ウィンドウが開くので、下記のように設定します。

フィールド名合計金額_数式フィールド
データ型整数
数式[数量]*[単価]

作成した数式フィールドをナビゲーションウィンドウからページ上のAB6セルにドラッグアンドドロップします。
これで商品ごとの合計金額が表示されるようになりました。

3.集計フィールドを使う

Forguncy専用のフィールドは数式フィールドのほかにも集計フィールドというものがあります。
この集計フィールドでは集計関数を用いて、複数のレコードの値を集計した数値を表示することができます。
使用できる集計関数は「AVG :平均」「COUNT:データの個数」「MAX:最大値」「MIN:最小値」「SUM:合計」の5つです。
また、計算はサーバー側で行われます。

手順3-1.テーブルに集計フィールドを作成

ナビゲーションウィンドウの発注テーブルを右クリックし、[集計フィールドの追加…]をクリックします。
集計フィールドの追加ウィンドウが開くので、下記のように設定します。

フィールド名総計_集計フィールド
データ型整数
集計関数SUM
対象フィールド合計金額_数式フィールド

作成した数式フィールドをナビゲーションウィンドウからページ上のG14セルにドラッグアンドドロップします。
これで月ごとに発注した商品の総計が表示されるようになりました。

集計フィールドのTips

F集計フィールドをリストビューに配置すると、レコードごとに行が表示されるわけではなく自動的にまとまった単位で行が表示されます。
つまり、クライアントに計算対象のレコードが全件返されるわけではなく、集計結果のデータのみが返されます。
また、集計フィールドを配置したリストビューには集計したいキーではないフィールドを配置してはいけません。
正しい結果が出力されなくなります。
集計フィールドはレコードを表示するものではなく、集計した結果を表示するものだという点を覚えておいてください。

4.デバッグを実行する

デバッグを行うには、動作確認したいページを開いた状態でリボンの[ホーム]>[デバッグ]>[開始]ボタン、またはForguncy Builderの左上にある▶ボタンを押下してプロジェクトをデバッグ実行します。

プロジェクトを実行すると、それぞれの手順で設定した数式・集計の値が表示されるのが確認できます。

ForguncyのUI部品についてもっと知る

Forguncyの開発スタートガイドやオンラインヘルプでは、ユーザーがより使いやすいアプリを作成するのに便利なUI部品についてより詳しくご紹介しています。
こちらもぜひご活用ください。

>開発スタートガイド – Forguncyで機能的なUIを作成する

>Forguncyヘルプ – Forguncyの仕様と制限

>Forguncyヘルプ – リストビュー

>お役立ち資料 – リストビュー概要

>ノーコードWebアプリ開発ツール「Forguncy」

ノーコードWebアプリ開発ツール「Forguncy」

Forguncy(フォーガンシー)は複数のシステムと直接接続して参照・更新が行えるデータ管理機能と、Excel感覚でレイアウトができる画面デザイン機能を備えたノーコードWeb開発&運用プラットフォームです。基幹システムでは対応できず、仕方なくExcelやAccessで管理していた業務のサブシステム化を強力に支援します。

CTR IMG