Current form table

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 11 (Modified)


Current form table ポインタ

引数説明
このコマンドには、引数はありません。
戻り値ポインタ現在表示されているフォームが属すテーブルへのポインタ

説明

Current form tableコマンドは、カレントプロセスで表示または印刷されているフォームが属するテーブルのポインタを返します。

以下の場合では、関数はNilを返します。

・カレントプロセスに表示または印刷されているフォームがない。

・カレントフォームがプロジェクトフォームである。

カレントプロセスで複数のウィンドウが開いている(最後に開かれたウィンドウがカレントアクティブウィンドウになる) 場合、このコマンドはアクティブウィンドウにフォームが表示されているテーブルへのポインタを返します。

現在表示されているフォームがサブフォームエリア用の詳細フォームである場合、ユーザがデータ入力中であり、ダブルクリック可能なサブフォームエリアのレコードまたはサブレコードをダブルクリックしたことを意味します。この場合には、コマンドは以下を返します:

・サブフォームがテーブルを表示している場合、サブフォームエリアに表示されたそのテーブルへのポインタ

・サブフォームエリアがサブテーブルを表示している場合には、重要な意味を持たないポインタ

例題

アプリケーション全体を通して、レコードを表示する際には、以下の表示方法に従います。フォーム内に変数vsCurrentRecord がある場合、ユーザーが新しいレコードを処理していれば、"New Record" と表示します。ユーザが5200レコードから成るセレクションの56番目のレコードを処理していれば、56/5200と表示します。

そのためには、オブジェクトメソッドを使用して変数vsCurrentRecordを作成します。その後、このオブジェクトメソッドをコピーして、すべてのフォームに貼り付けます。

      ` vsCurrentRecord non-enterable variable object method
   Case of
      : (Form event =On Load)
         C_STRING (31;vsCurrentRecord)
         C_POINTER ($vpParentTable)
         C_LONGINT ($vlRecordNum)
         $vpParentTable:=Current form table
         $vlRecordNum:=Record number ($vpParentTable->)
         Case of
            : ($vlRecordNum=-3)
               vsCurrentRecord:="New Record"
            : ($vlRecordNum=-1)
               vsCurrentRecord:="No Record"
            : ($vlRecordNum>=0)
               vsCurrentRecord:=String (Selected record number ($vpParentTable->))+" of "+
                                          String (Records in selection ($vpParentTable->))
         End case
   End case

参照

DIALOG, INPUT FORM, OUTPUT FORM, PRINT SELECTION.


4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次