メインコンテンツまでスキップ
バージョン: 20 R7 BETA

FORM SET OUTPUT

FORM SET OUTPUT ( {aTable ;} form {; userForm} )

引数説明
aTableTable出力フォームを設定するテーブル, または 省略した場合、デフォルトテーブル
formText, Object(プロジェクトまたはテーブル)フォーム名(文字列)、
あるいはフォームを定義した.jsonファイルへのPOSIXパス(文字列)、
あるいは開くフォームを定義したオブジェクト
userFormText使用するユーザフォーム名

説明

FORM SET OUTPUT コマンドは、formまたはuserFormaTableのカレント出力フォームとして設定します。このフォームはaTableに属するものでなければなりません。

form 引数で表示したいフォームを指定します。以下のいづれかを渡すことができます:

  • フォーム名
  • 使用するフォームの詳細を格納している有効な.josn ファイルへのパス(POSIX シンタックス、フォームファイルパス参照)
  • フォームの詳細を格納しているオブジェクト

このコマンドのスコープはカレントプロセスです。各テーブルはプロセスごとに出力フォームを持っています。

注: 構造的な理由から、このコマンドはプロジェクトフォームと互換がありません。プロジェクトフォームをformに渡しても、コマンドは何も行いません。

FORM SET OUTPUT はフォームを表示しません。データ印刷や表示、他のコマンドで使用するフォームを指定するだけです。フォームの作成に関する詳細は4D Design Referenceマニュアルを参照してください。

デフォルト出力フォームはテーブルごとにエクスプローラウィンドウで指定します。このデフォルト出力フォームは、FORM SET OUTPUT コマンドで出力フォームを指定しない場合や、指定したフォームが存在しない場合に使用されます。

任意の引数userForm を使用して、(formを基に作成された) ユーザフォームをデフォルトの出力フォームとして設定することができます。有効なユーザフォーム名を渡すと、カレントプロセスの出力フォームに代わり、このフォームがデフォルトとして使用されます。これにより、(_o_CREATE USER FORM コマンドで生成された) 複数の異なるカスタムユーザフォームを同時に使用できるようになり、現在の状況で適切なフォームを使用することができます。

ユーザフォームに関する詳細はユーザフォームの概要 の節を参照してください。

出力フォームは3つのコマンドグループ(画面上にレコードをリスト表示するグループ、レポートを作成するグループ、データを書き出すグループ)で使用されます。DISPLAY SELECTIONMODIFY SELECTION コマンドは、出力フォームを使用してレコードのリストを表示します。PRINT LABEL や 60 コマンドを使用してレポートを作成する際にも出力フォームを使用します。各データ書き出しコマンド(EXPORT DIF、85 そして EXPORT TEXT)でも出力フォームを使用します。

例題 1

以下の例は、FORM SET OUTPUT コマンドの典型的な使用方法です。この例ではFORM SET OUTPUT コマンドを出力フォームが使用される直前に記述していますが、直前である必要はありません。実際、このFORM SET OUTPUTコマンドがこのメソッドの前に同じプロセス内で実行されていれば、このコマンドを全く別のメソッドで実行しても構いません:

 FORM SET INPUT([Parts];"Parts In") //入力フォームを設定
 FORM SET OUTPUT([Parts];"Parts List") //出力フォームを設定
 MODIFY SELECTION([Parts]) //このコマンドは両フォームを使用する

例題 2

以下の例は.json フォームへのパスを使用して従業員リスト内のレコードを印刷する場合を考えます:

 FORM SET OUTPUT([Personnel];"/RESOURCES/PersonnelForm.json")
 ALL RECORDS([Personnel])
 PRINT SELECTION([Personnel])

参照

DISPLAY SELECTION
EXPORT DIF
EXPORT SYLK
EXPORT TEXT
FORM SET INPUT
MODIFY SELECTION
PRINT LABEL
PRINT SELECTION

プロパティ

コマンド番号54
スレッドセーフである