- 基本情報
- ライセンス
- セットアップと構成
- サービスの利用
- 参照
- 例とチュートリアル
- エンティティをプロジェクトで使用する
- エンティティ レコードのファイル フィールドをアップロードする
- エンティティ レコードのファイル フィールドをダウンロードする
- 「バッチ」系のアクティビティを使用して CSV からデータをアップロードする
- ログ
[プレビュー]Data Fabric ユーザー ガイド
Studio を使用すると、エンティティ レコードの特定のファイルを簡単に操作できます。これらのアクティビティにより、エンティティ レコードの指定したフィールドの指定したファイルを、アップロード、ダウンロード、または削除することができます。
1 つのファイルの最大サイズは 10 MB です。10 MB を超えると、予期しない動作が発生する可能性があります。
以下のサンプルには、オリンピック大会関連の Wikipedia ページからファイルをダウンロードして Data Fabric / Data Service にアップロードする方法を示すための、メイン XAML が含まれています。
前提条件ステップ 1: Data Fabric / Data Service でエンティティを作成する
「エンティティを作成する」ページに詳細に記載された手順を実行して、オリンピックに関する情報を保存するエンティティを作成しました。
「Olympics」エンティティには、Name (テキスト)、Logo (ファイル) といったフィールドがあります。
エンティティには、そのエンティティの作成に関する詳細情報を提供するために、システム組み込みフィールドが自動的に追加されます。

前提条件ステップ 2: エンティティを Studio にインポートする
Studio のワークフロー内にエンティティをインポートします。
次のワークフローは、オリンピックの特定の大会に関する情報と画像をスクレイピングし、見つかったデータを引数にマッピングして、それらをメイン ワークフローに渡します。

ステップ 3: ワークフローを構築する
クエリ関連のレコード
[ エンティティ レコードにクエリ を実行] アクティビティを使用し、 name 変数を設定することで、Data Fabric / Data Service の「Olympics」エンティティからレコードのリストを抽出します。このアクティビティは、[ 名前 ] フィールドのすべてのレコードを順に existingRecords 変数に出力し、後続の [条件分岐 (if )] アクティビティで使用できるようにします。

条件分岐 (if)
[条件分岐 (if)] アクティビティを追加することで、existingRecords 変数が 0 であるかどうかに応じて、2 通りの異なるアクションのいずれかを実行できます。

1. レコードが存在しない場合は作成して値を割り当てます。
レコードが 1 つも見つからなかった場合、つまり existingRecords=0 条件が満たされた場合は、新しい [シーケンス] を作成し、[ 複数代入 ] アクティビティを使用して olympics 変数と olympics.Name 変数に値を代入し、収集した情報を [エンティティ レコードを作成] アクティビティを使用して Data Service に追加します。
「エンティティをプロジェクトで使用する」ページの「データ レコードを作成する」セクションに示した例が参考になるでしょう。

2. レコードが既に存在する場合は、そのレコードに値を割り当てます。
レコードが見つかった場合、つまり existingRecords=0 条件が満たされなかった場合は、[代入] アクティビティまたは [複数代入] アクティビティを使用して値を existingRecords 変数に代入します。

ファイルをレコードのフィールドにアップロード (Upload File to Record Field)
ここでは、[レコード フィールドにファイルをアップロード] アクティビティを使用し、作成したファイルを「Olympics」エンティティ レコードの「Logo」フィールドにアップロードします。

ローカル ファイルを削除する
Wikipedia からローカル (自分のマシン) にダウンロードしたファイルを Data Fabric/Data Service にアップロードし終わったら、[ 削除 ] アクティビティを使用してローカルのファイルを削除します。

出力パネルに変数の値を表示する
文字列変数の値を表示する [1 行を書き込み ] を追加します。この例では、出力パネルに olympics.Nameを追加しました。

以上の作業が完了すると、プロジェクトは次のように表示されます。
