4D v16.3

Is record loaded

ホーム

 
4D v16.3
Is record loaded

Is record loaded 


 

Is record loaded {( aTable )} -> 戻り値 
引数   説明
aTable  テーブル in レコードを検査するテーブル または 省略時、デフォルトテーブル
戻り値  ブール in True: レコードはロードされている そうでなければFalse

説明   

Is record loaded コマンドは、aTableのカレントレコードがカレントプロセス内にロードされていればTrueを返します。

4D Server: 原理的には、テーブル同士が自動リレーションでリンクされている場合、リレート先テーブルのカレントレコードは自動でロードされます (リレーションについて 参照)。しかし 4D Server は最適化のため、リレートレコードのフィールドの読み込みや編集などの必要なときにだけ、これらのレコードをロードします。そのため、ローカルモードでは Is record loaded コマンドが True を返すような場合でも、リモートモードでは同コマンドは False を返します。

例題  

“次レコード”または“前レコード”の自動アクションを使用するかわりに、これら2つのボタン用にオブジェクトメソッドを書いて、これらの動作を向上させることができます。"次へ"ボタンは、カレントレコードがセレクションの最後のレコードであればセレクションの最初のレコードを表示し、"前へ"ボタンは、セレクションの最初のレコードであればセレクションの最後のレコードを表示します。

  ` “前へ” ボタンのオブジェクトメソッド (自動アクションなし)
 If(Form event=On Clicked)
    PREVIOUS RECORD([Group])
    If(Not(Is record loaded([Group])))
       GOTO SELECTED RECORD([Group];Records in selection([Group]))
  `セレクションの最後のレコードに移動
    End if
 End if
 
  ` “次へ” ボタンのオブジェクトメソッド (自動アクションなし)
 If(Form event=On Clicked)
    NEXT RECORD([Group])
    If(Not(Is record loaded([Group])))
       GOTO SELECTED RECORD([Groups];1)
  `セレクションの最初のレコードに移動
    End if
 End if

 
プロパティ 

プロダクト: 4D
テーマ: レコード
番号: 669

This command can be run in preemptive processesリモートモードでは動作が異なります。

 
履歴 

初出: 4D v6.5

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)