2024/01/31

@DbColmun の使い方

今回は@関数の中でもかなり使用頻度の高い @DbColumn の基本的な使い方について紹介します。


機能イメージ

まずは作成する機能にです。部門名を管理するフォームがあり、あらかじめ社内の部をマスタデータとして登録しておいたとします。

報告書フォームのフィールド ”部” の選択肢をマスタデータから読み込むというものです。例えば次のように部門欄の[▼]ボタンをクリックするとマスタデータから部を選択します。ユーザは選択するだけなので操作が簡単ですし、手入力と違い表記ブレが発生しないので、データの精度も上がりますね。


フォームの設計

このような機能を提供するのが、ダイアログリストという種類のフィールドとなります。

このフィールドに対して選択肢を与える機能がフィールドプロパティの2つ目の[制御]タブにあります。選択肢の指定方法はさまざまな種類があるのですが、”式で選択肢を設定”を選び、その下に事前に作成したビューからデータを取得する式を記述します。ここで使用する式が今回のテーマの @DbColmun 関数になります。


@DbColmun の仕様

デザイナーヘルプによると @DbColmun の構文は次のように記載されています。

@DbColumn(class:cache; server:database; view; columnNumber)

引数は 4 つです。class と cache、server と database は ":"(コロン)でつながっている点に注意が必要です。コロンはリスト演算子ですので、2 つの値をリスト値(複数値)として 1 つの引数に渡す仕様ということです。プログラミング言語的には、配列で指定するということになりますね。

引数の指定方法は次の通りです。

class 文字列 アクセスするデータベースの種類を指定
Notes/Domino の場合 "Notes" または "" (Null 文字列) を指定
cache 文字列 "" (Null 文字列) で結果をキャッシュ
“ReCache” で最新データによってキャッシュが更新
“NoCache” で常に結果を取得
server 文字列 サーバとファイル名を指定
"" (Null 文字列) で自分自身の DB
database 文字列
view 文字列 結果を取得するビュー名
columnNumber 数値 結果を取得するビュー内の列番号を指定

戻り値は、指定したビューの指定した列にある値がリスト値で返されます。


@DbColmun の動作

改めて先のサンプルの式を確認しましょう。

@DbColumn("Notes":"NoCache"; ""; "vDept"; 1)

引数では、次のように指定されていることが読み取れます。

  • Notes/Domino から結果を取得
  • キャッシュは利用せず常に最新の結果を取得
  • 自分自身のDB に接続
  • vDept ビューの 1 列目を取得

この式を中心にビューの設計とアプリの動作を図式すると以下の通りとなります。


0 件のコメント:

コメントを投稿