Power Apps で同時実行機能を使用する方法

Power Apps で同時実行機能を使用する方法

このブログ投稿では、Power Apps 内で同時実行機能を使用する方法を学びます。同時関数を使用すると、名前が示すように、Power Apps 内で関数を同時に実行できます。

通常、プロセスやワークフローを実行するときは、すぐに次のプロセスやワークフローを実行する必要があります。ただし、アプリを同時に実行するか、代わりに同時に実行することでアプリを最適化できる特殊なケースがあります。それがこの投稿で説明する内容です。

ここにあるのは、 Power Apps内で最適化したい非常に単純なアプリケーションです。ユーザーがここにフレーズを入力すると、[シーケンスの実行] ボタンによってさまざまな処理が行われます。

Power Apps で同時実行機能を使用する方法

[シーケンスの実行] ボタンOnSelect プロパティに移動しましょう。

Power Apps で同時実行機能を使用する方法

ここでわかるように、かなり多くのことが起こっています。まず、変数StartTime = Nowを設定して、これにかかる時間を測定します。

Power Apps で同時実行機能を使用する方法

次に、Output というコレクション変数をクリアします。

Power Apps で同時実行機能を使用する方法

そして、おそらく最も長い時間がかかる一連の作業を実行します。基本的に、テキスト入力に入力したものはすべて、フランス語、ドイツ語、オランダ語、韓国語、ギリシャ語、スペイン語、ヒンディー語に翻訳するようMicrosoft Translatorに依頼します。各行の末尾のセミコロンは、これが連続して発生することを表します。

Power Apps で同時実行機能を使用する方法

最後に行うことの 1 つは、これらすべての入力とすべての変数を取得し、それらからコレクションを作成することです。このコレクションには、翻訳したい実際のテキスト、翻訳先の言語、および実際に翻訳されたテキストが含まれています。そしてまた、フランス語、ドイツ語、オランダ語などに対しても同じことを行います。

目次

SharePoint接続を更新する

また、SharePoint接続を更新して、処理時間をさらに延長します。次に、このシーケンス全体にかかる時間を追跡するため、変数EndTime = Nowを設定します。

繰り返しますが、これはセミコロンの存在によってわかるシーケンスです。各セミコロンは新しい関数の開始を表すため、これはすべて順番に行われます。

Power Apps で同時実行機能を使用する方法

「シーケンスの実行」ボタンをクリックして、このプログラムを実行してみましょう。実際のフレーズHello、言語、および対応する翻訳を含むテーブルが出力されることがわかります。

Power Apps で同時実行機能を使用する方法

下部には、SharePoint リストを更新するときに 500 ミリ秒かかったことがわかります。

Power Apps で同時実行機能を使用する方法

明らかに、これにはそれほど時間はかかりませんでした。そして、処理に 500 ミリ秒かかるものに興奮する人はいません。

しかし、これらのプロセス (サードパーティのサービスを使用する) に時間がかかる場合はどうなるでしょうか? ここに 1 つの単語を書く代わりに、米国憲法の第 2 条をコピーして貼り付け、シーケンスを実行したらどうなるでしょうか?

Power Apps で同時実行機能を使用する方法

こちらは少し時間がかかりました。1700 ミリ秒、つまり約 1.7 秒かかりました。

米国憲法第 3 条をコピーして貼り付けると、飛躍的に時間がかかります。現在約 4 秒です。

Power Apps で同時実行機能を使用する方法

Power Apps のシーケンシャル関数と同時関数

これらの関数を順番に実行し、非常に複雑な関数を使用する傾向がある場合は、実際に時間がかかる傾向があるため、これらの関数を同時に実行するユースケースを確認できます。

今度はまったく同じことを実行してみましょう。ただし、右側ではそれを同時に実行します。これをHelloに戻し、シーケンスを実行し、これのコピーを作成して、右側に持っていきましょう。

Power Apps で同時実行機能を使用する方法

このボタンの OnSelect プロパティに移動し、それを同時実行するように変更する必要があります。Clear Output の後に、 「 Concurrent 」という単語を入力します。

Power Apps で同時実行機能を使用する方法

Power Apps 内の並行関数は、さまざまな関数を引数として、または Power Apps が数式と呼ぶものを受け取ります。つまり、Power Apps が最初にフランス語、次にドイツ語、次にオランダ語を実行するのではなく、すべてを同時に実行することになります。

これらすべての関数を並行関数で囲みます。エラーが発生する理由は、並行関数が引数をカンマで区切られた数式として受け取るためです。現在セミコロンを使用しているので、これらの項目をそれぞれ入力してカンマに変更するだけです。

最後のセミコロンについては、この関数の最後の引数なので削除します。次に、concurrent も技術的には関数であるため、この最後にセミコロンが必要になります。

Power Apps で同時実行機能を使用する方法

ここには依存関係がないため、最後に行うことの 1 つは、顧客リストの更新を同時実行関数に移動することです。

Power Apps で同時実行機能を使用する方法

繰り返しますが、これを行う理由は、これらの関数がすべて相互に依存していないためです。つまり、これらの関数を順番に実行する必要がないからです。これらは同時に発生する可能性があるため、私たちは最初にこれを行っています。

したがって、これをすべて完了したら、ここに移動して、これをStart Time twoEnd Time twoに設定する必要があります。これは、他の開始時間変数と他の終了時間変数と競合しないようにするためです。 。

Power Apps で同時実行機能を使用する方法

Power Apps で同時実行機能を使用する方法

また、変数がマッシュアップしないように、[出力] を[出力 2]に変更します。

Power Apps で同時実行機能を使用する方法

この関数を閉じてテストしてみましょう。変数をEnd TimeからEnd Time Twoに、Start TimeからStart Time Twoに変更します。

Power Apps で同時実行機能を使用する方法

次に、このボタンが生成する出力 2 を確認するようにデータ テーブルを変更します。ボタンを[Run Sequence]から[Run Concurrent]に変更します。

Power Apps で同時実行機能を使用する方法

これで、まったく同じことを行う 2 つのものができました。1 つは順番に実行し、もう 1 つは同時に実行します。

いくつかのテストを行ってみましょう。「Hello」と入力し、シーケンスを実行します。最初にシーケンス ボタンを実行し、次に同時ボタンを実行します。

Power Apps で同時実行機能を使用する方法

同時実行はシーケンシャルよりも約 2 倍または 3 倍高速であることがわかります。ここで、米国憲法のセクション 1、2、3、4、5、6、7 をコピーして、シーケンス ボタンと同時ボタンを使用した場合にどれくらい時間がかかるかを見てみましょう。

シーケンスボタンを押すのに時間がかかり、一時停止が目立っていました。ユーザーはそれを気に入らないでしょう。ただし、同時に実行すると、かかる時間はわずか 1 秒です。

Power Apps で同時実行機能を使用する方法

まだ時間がかかります。しかし、できる限り最適化された方法でそれを行っていることはご存知でしょう。ユーザーにとって 1 秒と 3 秒の差は大きな意味を持ちます。

3 倍の乗数は、Power Apps を最適化するのに非常に適しています。

Power Apps の同時実行機能の利点

ここでは最適化されていないものがいくつかあることに注意してください。40、50、または 60 の言語があるとします。その場合、順番に実行しているよりも多くのことを同時に実行しているため、2 倍または 3 倍の乗数に気づくだけでなく、10 倍または 12 倍の乗数に気づく可能性があります。

したがって、この例では乗数は 3 倍しか見えませんが、ここで実行しているプロセスよりも多くの同時プロセスがある場合には、速度がさらに速くなることがわかります。

結論

このブログ投稿では、同時関数とは何か、およびそれを使用して Power Apps をより最適化する方法について説明しました。複数のデータ更新や複数のデータソースの読み込みを行う場合、同時実行機能を使用すると高速に実行できます。

ご冥福をお祈りします、
ヘンリー・ハビブ


Python における Self とは: 実際の例

Python における Self とは: 実際の例

Python における Self とは: 実際の例

RでRDSファイルを保存してロードする方法

RでRDSファイルを保存してロードする方法

R の .rds ファイルからオブジェクトを保存および読み込む方法を学習します。このブログでは、R から LuckyTemplates にオブジェクトをインポートする方法についても説明します。

最初の N 営業日の再考 – DAX コーディング言語ソリューション

最初の N 営業日の再考 – DAX コーディング言語ソリューション

この DAX コーディング言語チュートリアルでは、GENERATE 関数の使用方法とメジャー タイトルを動的に変更する方法を学びます。

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

このチュートリアルでは、マルチスレッド動的ビジュアル手法を使用して、レポート内の動的データ視覚化から洞察を作成する方法について説明します。

LuckyTemplates のフィルター コンテキストの概要

LuckyTemplates のフィルター コンテキストの概要

この記事では、フィルター コンテキストについて説明します。フィルター コンテキストは、LuckyTemplates ユーザーが最初に学習する必要がある主要なトピックの 1 つです。

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Apps オンライン サービスが、さまざまなソースから生成されたさまざまなレポートや分析情報の管理にどのように役立つかを示したいと思います。

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

LuckyTemplates でのメジャー分岐や DAX 数式の結合などの手法を使用して、利益率の変化を計算する方法を学びます。

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

このチュートリアルでは、データ キャッシュの具体化のアイデアと、それが結果を提供する際の DAX のパフォーマンスにどのように影響するかについて説明します。

LuckyTemplates を使用したビジネス レポート

LuckyTemplates を使用したビジネス レポート

これまで Excel を使用している場合は、ビジネス レポートのニーズに合わせて LuckyTemplates の使用を開始するのに最適な時期です。

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて