※ 検証中メモ
トリガーの設定
トリガー条件
// ニュースを判別
@equals(triggerBody()?['PromotedState'],2.0)
// メジャーバージョン=投稿済みニュースと判別
@equals(mod(float(triggerBody()?['{VersionNumber}']),1.0),0)
検証メモ
SharePoint のトリガーの接続と、SharePoint サイトの所有者を同じユーザーアカウントにした場合、SharePoint サイトのメンバーがニュースを下書き保存すると、直前にメジャーバージョンのニュースがフェッチされてしまう。
色々調べたところ、メンバーがニュースを下書きすると、直前のメジャーバージョンに対して CheckoutUser の情報が加筆されていた。これによってファイルが変更されたと判断されて、直前のメジャーバージョンのニュースがフェッチされてしまうっぽい。
取り急ぎはトリガー条件に下記を加えて、CheckoutUser が書かれたメジャーバージョンをフェッチの対象から除外すると良さそう。
// メンバーによる下書きを除外
@empty(triggerBody()?['CheckoutUser'])
SharePoint、所有者とメンバーで下書きの扱いが違うのが謎。引き続き、SharePoint の仕様を調査。