「プロパティ」→「基本情報」タブの「外部参照名称」は、「テキスト」,「コンボボックス」,「チェックボックス」,「ラジオボタン」,「DB参照ボタン」,「カレンダーボタン」,「ハイパーリンク(テキスト)」の固定リテラル、パラメータ等の値を定義した外部ファイルの外部参照名称を定義します。
初期値を外部ファイルで定義しておくと、デザイナーで定義した複数フォームの固定リテラル、パラメータ等の値を変更したいときに、外部ファイルの修正だけて一括変更できるメリットがあります。
外部ファイルはXML 形式で記述しますので、参照名称はXMLで記述可能な文字を使用する必要があります。
外部ファイルは、メモ帳等のテキストエディタで SetControl.xml というファイルを作成します。
SetControl.xml は、文字コードを ANSI で保存してください。
(記述内容はXMLの規約に従ってください。)
外部ファイルの記述形式
<?xml version=”1.0″ encoding=”Shift_JIS” ?>
<ROOT name=”Set Control Data”>
<VERSION>任意に記述</VERSION>
<TITLE>任意に記述</TITLE>
<FORM>
<FORMNAME></FORMNAME>
<SECTION>
<SECTIONNAME></SECTIONNAME>
<DATA>
<NAME></NAME>
<SETDATA>
<CTRL>外部参照名称ごとの記述</CTRL>
:繰り返し
</SETDATA>
</DATA>
</SECTION>
</FORM>
</ROOT>
記述形式の補足
- <FORM>, <SECTION>, <DATA>, <CTRL> はそれぞれの階層で複数設定することができます。
- <FORMNAME> はフォーム定義ファイル名(フォーム名.xml)を記述するか省略することができます。省略はすべてのフォーム定義ファイル名が対象になります。
実行時、外部ファイルの先頭から一致する <FORMNAME> を検索します。一致するとその階層の定義内容を参照して外部ファイルの検索を終了します。よって、フォーム定義ファイル名を省略した <FORMNAME> は外部ファイルの末尾に定義してください。 - <SECTIONNAME>, <NAME> は現在未使用です。
<CTRL>の記述
<CTRL> は項目属性で記述ルールが異なります。
- 「テキスト」,「カレンダーボタン」,「ハイパーリンク(テキスト)」
<CTRL>外部参照名称,固定リテラル</CTRL>
(例)
「外部参照名称」が”タイトル”の項目の固定リテラルに”商品一覧”を設定
<CTRL>タイトル,商品一覧</CTRL> - 「コンボボックス」
<CTRL>外部参照名称,初期値,リスト1,リスト2,…</CTRL>
(例)
「外部参照名称」が”品名”の項目のパラメータに”冷蔵庫,テレビ,洗濯機”を設定
<CTRL>品名,冷蔵庫,テレビ,洗濯機</CTRL> - 「チェックボックス」,「ラジオボタン」
<CTRL>外部参照名称,0または1</CTRL>
(例)
「外部参照名称」が”確認”の項目の固定リテラルに”1″(チェックオン)を設定
<CTRL>確認,1</CTRL> - 「DB参照ボタン」
■ ボタンに文字を表示
<CTRL>外部参照名称,固定リテラル</CTRL>
(例)
「外部参照名称」が”担当参照”の項目の固定リテラルに”検索”を設定
<CTRL>担当参照,検索</CTRL>
■ DSNとSQL文を設定
<CTRL>[DSN],外部参照名称,DSN文</CTRL>
<CTRL>[SQL],SQL文</CTRL>
(例1)
「外部参照名称」が”担当参照”の項目のDSNを設定
<CTRL>[DSN],担当参照,Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\FormPatData\form\sample.mdb</CTRL>
(例2)
「外部参照名称」が”担当参照”の項目のDSNを外部DSN定義を参照
<CTRL>[DSN],担当参照,DSNxxx</CTRL>
DSNxxxの実際の内容はオプション環境ファイル(option.config)に定義します。
詳しくは「環境ファイル・リファレンスガイド」の「オプション環境ファイル(option.config)」を参照してください。
(例3)
「外部参照名称」が”担当参照”の項目のSQL文を設定
<CTRL>[SQL],担当参照,SELECT コード, 担当名 FROM 担当 ORDER BY コード</CTRL>
注意:固定リテラルの行のみの定義は可能ですが、DSNとSQL文は2行を対で定義してください。
SetControl.xml はFormPat実行環境のフォーム定義ファイル(XMLファイル)と同じフォルダへ格納します。
これは、FormPatの「フォーム設定」画面の[フォームファイル送信]ボタンからアップロードすることで行えます。