Skip to main content

 

開発に関するよくある質問

 

 

OutSystems

エンティティからのデータの削除

エンティティからテストデータを削除するにはどのようにすればよいですか。

例: テストデータを含む2つのエンティティ(LocationおよびStore)があり、これらの両方のデータを消去する必要があります。

エンティティ

注記: StoreエンティティにはLocationエンティティに対する外部キーがあります。

回答

エンティティからすべてのテストデータを削除するには、独自のロジックとバックオフィス画面を作成する必要があります。以下の手順を実行します。

  1. 新しいサーバーアクション(この場合はClearData)を作成し、SQLクエリを追加します。「ダミー」の出力エンティティ/ストラクチャをSQLクエリに追加します(この場合はLocation)。

  2. 以下のSQLスニペットをSQLクエリに追加します。

    DELETE FROM {Store};
    DELETE FROM {Location};
    

    これにより、最初にStoreエンティティからすべてのデータが削除され、次にLocationエンティティからすべてのデータが削除されます。削除する順序が重要です。必ず子エンティティ(別のエンティティを参照するエンティティ)のデータを削除してから、親エンティティのデータを削除します。

    サーバーアクションとSQLクエリ

  3. 新しいWeb画面(この場合はBackOffice)を作成し、その画面にボタンを追加し、[On Click]>[Destination]を新しい画面アクション(この場合は「ClearTestData」)に設定します。

  4. ClearTestData画面アクション内で、ClearDataサーバーアクションを呼び出します。

    画面アクション