Forguncy 10 オンラインヘルプ
アプリの開発 / 画面の設計 / リストビュー / リストビューにおける計算と集計 / 数式による行方向の計算
このトピックで
    数式による行方向の計算
    このトピックで

    リストビュー内の行にあるフィールドを参照して、数式を用いることができます。
    この方法として、次の2つがあります。リストビュー内の列を計算、もしくは集計したい場合は、数式による列方向の計算を参照してください。

    1. セルに直接数式を設定する方法

      計算はクライアント(Webブラウザー)上で行われます。ここではこの設定方法を説明します。

    2. 数式フィールドを用いる方法

      数式内で参照するフィールドが同じリストビュー内にない(表示したくない)場合に、この方法を用いることで計算できます。計算はサーバー上にあるデータベースにおいて行われます。設定方法については、テーブルに数式フィールドを作成するを参照してください。

    セルに直接数式を設定する方法

    1. リストビューを作成します。

      この例では「給与」と「交通費」フィールドのデータを合計する数式を作成します。

    2. 行テンプレートに数式を入力します。

      入力セルを選択して「数式ボックス」に行テンプレートの数式を入力します。

      数式の入力方法や数式はExcelと同様です。

      セルを直接選択して数式を入力することもできます。

      上記のように「=G3+L3」という数式を記述した場合、アプリケーションの実行時にはそれぞれの行のG列の値とL列の値の足し算が行われます。すなわち、行方向の参照は基準となる「3」から1つずつずれていくことになります。通常のセルに記載する数式とは異なり、リストビュー内のセルに記載する数式は常に行ごとに参照セルがずれていくことに注意する必要があります。たとえば、リストビュー内のセルからリストビューの外にある特定のセルを行に関係なく参照したい場合、「=B3」ではなく絶対参照を使った「=B$3」と記載します。詳細は数式の使用を参照してください。

      参考: Excelと同様に、関数を使用した数式も設定できます。Forguncyで使用可能な関数については関数一覧を参照してください。

    3. 合計の列ヘッダー名を設定しておきます。

    4. 行テンプレートの書式を設定してから、[ホーム]→[開始(デバッグ)]で数式の結果を確認します。

      参考: 数式の表示結果は、あくまでも画面上だけのものになり、データ連結していてもテーブルは更新されません。リストビュー の更新は、通常、編集対象となる行(レコード)にフォーカスがあり、次の行に移動するといったタイミングで、その行のデータをデータベースに更新しようとします。(リストビューを編集対象にするには、予めリストビューを選択すると表示される「デザイン」タブから、「編集を許可」チェックボックスをチェックしておく必要があります。)

      このため、フォーカス移動によってレコードを更新させるか、あるいは、更新ボタンを配置し、その更新ボタンのコマンドで以下の図のように「リストビュー データの更新」-「リストビュー更新確定」を設定することで、更新ボタンをクリックしたタイミングで全レコードが更新されます。