テーブルデータを更新する2つの方法

UI部品 基本編

 

この記事でわかること:
・リストビューに値を入力する方法
・リストビューに入力した値でテーブルデータを即時更新する方法
・リストビューに入力した値を任意のタイミングでテーブルに登録する方法

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

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

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

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

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

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

プロジェクトには複数のテーブルが内蔵されています。
今回は発注テーブルを使用します。

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

プロジェクトには複数のページが内蔵されています。
そのうち、今回使用するページは「テーブルデータの更新」ページです。

2. カレントレコードを移動した際に更新する

リストビュー上のカレント行が別の行に移動した際にデータが編集されていた場合、テーブルデータを更新する処理を実装します。
この時、テーブルデータが更新されるタイミングはカレントレコードが移動した時となります。

手順2-1.リストビューの編集許可を設定

ページ上のリストビューを選択した状態で、リボンの[リストビューツール]>[デザイン]>[更新処理]>[編集を許可]にチェックを入れます。
この設定を行うと、セルをダブルクリックすることで編集モードへと移行します。
また、Excelと同様にキーボードのF2キーを押下することでも編集モードへ移行できます。

手順2-2. リストビューの即時更新を有効に設定

リストビューの即時更新を有効にします。
リストビューを右クリックし、「リストビュー設定…」をクリックします。
リストビュー設定ウィンドウが開くので、「データ」タブの「リストビューのデータを即時更新しない」のチェック欄を確認します。
デフォルトではチェックが外れていますが、もしチェックがついているようであれば外してください。

この設定を行うと、入力後の値はリストビュー上のカレントレコードが変わったタイミングでテーブルデータが更新されます。
実際に動作を確認するには4.デバッグ実行を行ってください。

手順3の「ボタン押下で更新する」の内容をデバッグで動作確認する際には「データ」タブの「リストビューのデータを即時更新しない」にチェックを入れてください。

3. ボタン押下で更新する

リストビューにデータを入力しただけでは更新せず、ボタンを押下したタイミングでテーブルデータを更新する処理を実装します。
手順3-1ではリストビューに入力した値でテーブルデータの更新します。
手順2-1のリストビューの編集許可設定を行っていない場合は、先にそちらを行ってください。

手順3-1.リストビューの即時更新を無効に設定

リストビュー標準の即時更新を無効にします。
リストビューを右クリックし、「リストビュー設定…」をクリックします。
リストビュー設定ウィンドウが開くので、「データ」タブの「リストビューのデータを即時更新しない」にチェックを入れます。

これで行移動による更新が行われなくなりました。

手順2の「カレントレコードを移動した際に更新する」の内容をデバッグで動作確認する際には「データ」タブの「リストビューのデータを即時更新しない」のチェックを外してください。

手順3-2.更新ボタンの設定

テーブルデータを更新するためのボタンの設定を行います。

手順3-2-1.入力値で更新

リストビューに直接入力した値でテーブルを更新する処理を設定します。
入力値で更新ボタンを選択し、右ペインの[セル型]タブからコマンド…ハイパーリンクをクリックします。
コマンドウィンドウが開くので、リストビューの操作コマンドを選択します。
設定は下記のように行います。

対象リストビュー:リストビュー1
処理の種類:リストビューの更新確定

 

これで、入力を行ったすべての行でテーブルデータの更新が行われます。

手順3-2-2.特定の値で更新

任意のレコード・フィールドに特定の値を更新する処理を追加します。
この設定を行うと、今回のアプリでは全レコードの出荷状態フィールドに「出荷済み」という文字列を設定してテーブルを更新できるようになります。
今回は全レコードを対象にしていますが、更新対象は「選択行」、「条件に合致する行」、「すべての行」、「カレントレコード」から選択できます。

出荷状態の更新ボタンを選択し、右ペインの[セル型]タブからコマンド…ハイパーリンクをクリックします。
コマンドウィンドウが開くので、リストビューの操作コマンドを選択します。
設定は下記のように行います。

対象リストビュー:リストビュー1
処理の種類:更新
リストビューの列出荷状態
出荷済み
更新対象レコード:すべての行

 

ここまでの設定で画面上のリストビューには「出荷済み」と表示されますが、データベースにはまだ書き込まれていません。
書き込むには、以下のように再度リストビューの操作コマンドを追加し、「リストビューの更新確定」を設定します。

対象リストビュー:リストビュー1
処理の種類:リストビューの更新確定

 

これで、すべての行でテーブルデータの更新が行われます。

4.デバッグを実行する

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

プロジェクトを実行すると、ページが表示されます。
手順2の設定ではリストビュー上のセルをダブルクリック、またはF2キーを押下するとセルが編集モードに移行し、値の更新が可能になることが確認できます。
手順3の設定ではボタンを押下したタイミングでテーブルデータの更新が行われます。
ただし、手順2の「カレントレコードを移動した際に更新」は手順3-1の設定を行っていると動作しません。
設定を戻す方法も手順3-1に記載していますので、そちらを参考にデバッグを行ってください。

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

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

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

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

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

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

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

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

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

CTR IMG