【Power Apps】添付ファイルをPower Automateで処理

  • 添付ファイルをPower Automateで処理
    添付ファイルをPower Appsでデータソースとして登録せずにPower Automateで処理する方法。

    添付ファイルコントローラーはデータソースに一時的にShare Pointを追加し
    Formを作ろうとすると、添付ファイルコントローラーが自動的に追加されるので、
    その添付ファイルコントローラーを切り取りして使うと効率が良い。

    Galleryを追加しておき、Itemsには「colItemAttachmentFile」を設定しておく。
    Gallery内にはテキストと画像を配置し、それぞれ「ThisItem.Name」と「ThisItem.Value」を設定しておく。
    Galleryは非表示としておく。

    画面でボタンをクリックしたら以下の処理を行う。

    ClearCollect(colItemAttachmentFile, S01_atc_添付ファイル.Attachments);
    ForAll(S01_gly_添付ファイル一覧.AllItems As tmp,
        Collect(colUpdateFile,
            {
                Title: tmp.Name,
                FileData: tmp.S01_obj_添付ファイルオブジェクト.Image,
                Name: tmp.Name,
                Value: tmp.S01_obj_添付ファイルオブジェクト.Image
            }
        )
    );
    Collect(colItemBase, {添付ファイル: colUpdateFile});
    Set(gblJSONData, JSON(colItemBase, JSONFormat.IncludeBinaryData));
    
    PowerAutomate名称.Run(gblJSONData)
    

    Power Automateの処理は以下の通り。
    ・Share Pointコネクタ-新しいフォルダの作成
     一覧またはライブラリ:ドキュメント
     フォルダーのパス:00_管理/添付資料/Share PointのID/日付

    ・それぞれに適用する:添付ファイル
     前のステップから出力を選択します:body(‘JSON_の解析’)

    ・JSONの解析:添付ファイル
     Content:items(‘それぞれに適用する:添付ファイル’)[‘添付ファイル’]
     Schema:以下の内容

    {
        "type":"array",
        "items": {
            "type":"object",
            "properties": {
                "FileData": {
                    "type":"string"
                },
                "Title": {
                    "type":"string"
                }
            },
            "required": [
                "FileData",
                "Title"
            ]
        }
    }
    

    ・それぞれに適用する:添付ファイル単一
     前のステップから出力を選択します:body(‘JSON_の解析:添付ファイル’)

    ・変数の設定
     名前:添付ファイル識別子
     値:string(variables(‘添付ファイル識別子整数’))

    ・変数の設定
     名前:添付ファイル名分割配列
     値:split(items(‘それぞれに適用する:添付ファイル単一’)[‘Title’],’.’)

    ・変数の設定
     名前:添付ファイル名の日付付与
     値:concat(variables(‘添付ファイル名分割配列’)[sub(length(variables(‘添付ファイル名分割配列’)), 2)],’_’,variables(‘添付ファイル識別子’))

    ・変数の設定
     名前:添付ファイル名禁則文字置換
     値:replace(items(‘それぞれに適用する:添付ファイル単一’)[‘Title’],variables(‘添付ファイル名分割配列’)[sub(length(variables(‘添付ファイル名分割配列’)), 2)],variables(‘添付ファイル名の日付付与’)),’>’,”)
    上記以外に「<」などの禁則文字を空欄に置換

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です