4D v18

entitySelection.drop( )

ホーム

 
4D v18
entitySelection.drop( )

entitySelection.drop( )  


 

説明  

entitySelection.drop( ) メソッドは、データストア内でデータクラスにリレートされているテーブルのエンティティセレクションに所属しているエンティティを削除します。エンティティセレクションはメモリ内に残ります。

: エンティティの削除は恒久的なものであり、取り消しはできません。ロールバックで戻すことができるように、このアクションはトランザクション内で呼び出すことが推奨されています。

entitySelection.drop( ) の実行中にロックされたエンティティに遭遇した場合、そのエンティティは削除されません。デフォルトでは、メソッドはエンティティセレクション内の全てのエンティティを処理し、エンティティセレクション内にドロップ不可なエンティティを返します。最初に遭遇したドロップ不可なエンティティでメソッドの実行を止めたい場合は、mode 引数にdk stop dropping on first error 定数を渡します。

例題  

dk stop dropping on first error オプションを使用しない場合の例:

 C_OBJECT($employees;$notDropped)
 $employees:=ds.Employee.query("firstName=:1";"S@")
 $notDropped:=$employees.drop() // $notDropped はドロップされなかったエンティティを全て格納したエンティティセレクション
 If($notDropped.length=0) //削除アクションは成功、全てのエンティティが削除された
    ALERT("You have dropped "+String($employees.length)+" employees") //ただしドロップされたエンティティはメモリの中には残っています
 Else
    ALERT("Problem during drop, try later")
 End if

dk stop dropping on first error オプションを使用した場合の例:

 C_OBJECT($employees;$notDropped)
 $employees:=ds.Employee.query("firstName=:1";"S@")
 $notDropped:=$employees.drop(dk stop dropping on first error//$notDropped はドロップできなかった最初のエンティティを格納したエンティティセレクション
 If($notDropped.length=0) //削除アクションは成功、全てのエンティティが削除された
    ALERT("You have dropped "+String($employees.length)+" employees") //ただしドロップされたエンティティはメモリの中には残っています
 Else
    ALERT("Problem during drop, try later")
 End if



参照 

entitySelection.add( )

 
プロパティ 

プロダクト: 4D
テーマ: ORDA - エンティティセレクション

 
ページの目次 
 
履歴 

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v18)