くらっちのクラウド日記

仕事や勉強で得た Microsoft 365 関連の技術知識を投稿していくブログです。

【PowerApps】DataVerse-列の種類チートシート

DataVerse でテーブルを作成する際、列の追加が必要です。
列は様々な種類が用意されているため、それぞれどんな利用ができるのか事前に知りたいですよね。
テーブルを作成する際の参考となればと思い、列の種類の特徴をそれぞれ書き起こしてみました。
一部確認中であったり情報が足りていない部分があるので、今後も更新していきます。

目次

テキスト

テキストの共通仕様
 データの種類「1行テキスト」は最大文字数:4000文字
 データの種類「複数行テキスト」は最大文字数:1048576文字

プレーンテキスト(1行テキスト)

= データの種類:1行テキスト 書式:テキスト
改行不可

テキスト領域

= データの種類:1行テキスト 書式:テキスト領域
改行を許可するテキスト列で、少量の複数行テキストに使用します。
※複数行テキストとの違いは、使用できる文字数の多さ。

リッチテキスト(1行テキスト)

= データの種類:1行テキスト 書式:リッチテキスト

電子メール

= データの種類:1行テキスト 書式:電子メール
全角文字は入力不可。
半角英数字 入力可能。
@マーク含めたドメイン必須。
「mailto:xxxxxxx」形式のリンクが作成される。

例:
入力⇒example-email123@contoso.com
結果⇒mailto:example-email123@contoso.com

電話番号

= データの種類:1行テキスト 書式:電話番号
全角文字も入力が可能。入力形式の指定なし。
「tel:xxxxxxx」形式のリンクが作成される。
「-(ハイフン)」の有無関係なし

例:
入力⇒090-1111-2222 結果⇒tel:090-1111-2222
入力⇒09011112222 結果⇒tel:09011112222

<確認中> 株式銘柄コード

= データの種類:1行テキスト 書式:株式銘柄コード

URL

= データの種類:1行テキスト 書式:URL
https://」形式のリンクが作成される。
https://」or「http://」が入力されていない場合、自動的に「https://」が先頭に付加される。

例:
入力⇒www.yahoo.co.jp 結果⇒https://www.yahoo.co.jp
入力⇒https://contoso.com 結果⇒https://contoso.com

プレーンテキスト(複数行テキスト)

= データの種類:複数行テキスト 書式:テキスト
改行を許可するテキスト列。
テキストの装飾は不可。
※テキスト領域との違いは、使用できる文字数の多さ。

リッチテキスト(複数行テキスト)

= データの種類:複数行テキスト 書式:リッチテキスト

数値

整数

= データの種類:整数 書式:なし
数値のサイズ
標準の場合:-2,147,483,648 ~ 2,147,483,648
ビッグの場合:-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,808

小数点を含む数値は入力不可。
半角数字のみ入力可能。

小数点

= データの種類:整数 書式:なし
設定可能な範囲:-100,000,000,000 ~ 100,000,000,000
小数点以下の桁数:0 ~ 10桁
半角数字のみ入力可能。

小数点を含む数値が表示される。
小数点以下の桁数が1以上で整数のみ入力の場合、表示は小数点以下を含む数値となる。
設定した小数点以下の数値は四捨五入される。

例
小数点以下の桁数が0桁の場合 入力:150 ⇒ 表示:150
小数点以下の桁数が2桁の場合 入力:150 ⇒ 表示:150.00
小数点以下の桁数が2桁の場合 入力:20.155 ⇒ 表示:20.16

浮動株

= データの種類:整数 書式:なし
設定可能な範囲:-100,000,000,000 ~ 100,000,000,000
小数点以下の桁数:0 ~ 5桁
半角数字のみ入力可能。

小数点以下の桁数が1以上で整数のみ入力の場合、表示は小数点以下を含まない。

例
小数点以下の桁数が0桁の場合 入力:150 ⇒ 表示:150
小数点以下の桁数が2桁の場合 入力:150 ⇒ 表示:150
小数点以下の桁数が2桁の場合 入力:20.155 ⇒ 表示:20.16

<確認中> 言語コード

= データの種類:整数 書式:なし

<確認中> 期間

= データの種類:整数 書式:なし

<確認中> タイムゾーン

= データの種類:整数 書式:なし

日付と時刻

日付と時刻

YYYY/MM/DD HH:mm の形式で入力。
カレンダーから選択が可能。

日付のみ

YYYY/MM/DD の形式で入力。
カレンダーから選択が可能。

検索

検索

既存の別テーブルを参照する。 参照している別テーブルのレコード値を選択して入力が可能。

<確認中> 顧客

選択肢

選択肢

複数選択に変更可能。
「グローバルな選択肢と同期しますか?」で「はい」を選択すると、複数のテーブルで使用できる選択肢を作成する。
「いいえ」を選択すると、表示中のテーブルでのみ使用可能な選択肢を作成する。

はい/いいえ

択一選択を作成可能。
選択肢は既定で「はい」「いいえ」だが、「承認」「却下」などに名称を変更することができる。
選択肢は2つまで。

通貨

設定可能な範囲:-922,337,203,685,477 ~ 922,337,203,685,477

精度のソースについては下記リンク先を参照。
通貨と価格における小数点以下の精度【Docs】

精度プロパティ⇒小数点以下の桁数 を設定可能。
 小数点以下の桁数:0 ~ 4 桁
 入力値に小数点以下が含まれている場合、設定した桁数まで出力される。

価格設定の小数点以下の精度
 入力値に小数点以下が含まれている場合、小数点以下は四捨五入されて整数(価格)が出力される。

通貨の有効桁数
 通貨の小数点以下の有効桁数は、検証した結果 小数点以下3桁まで表示された。(円の場合に限る?)

オートナンバー

自動入力。
オートナンバーの種類:文字列が先頭に付加される数
⇒接頭辞、最小桁数、シード値(開始値)を決定する必要がある

例:ex-1001,ex-1002 ...


オートナンバーの種類:日付が先頭に付加される数
⇒日付形式、最小桁数、シード値(開始値)を決定する必要がある

例:2022-06-20-1001,2022-06-20-1002 ...

オートナンバーの種類:カスタム
⇒形式を書式設定で記載、シード値(開始値)を決定する必要がある

例:接頭辞(emp)付きオートナンバーの場合
 emp-{SEQNUM:4}
例:ランダム文字列含むオートナンバーの場合
 ex-{RANDSTRING:3}

ファイル

ファイル

ファイルサイズ:1KB ~ 131072KB
バイナリ データを格納するために使用。
単一のイメージ、メモ、または添付ファイルを保存することを目的としている。
設定できる最大サイズは 10 GB

画像

ファイルサイズ:1KB ~ 30720KB
イメージは 10 MB 未満で、次の形式のいずれかである必要あり。
jpg、jpeg、gif、tif、tiffbmppng

画像アップロードの際、.jpg 形式に変換され、ダウンロードした画像も.jpg 形式となる。
画像は、サムネイル画像として 144 x 144 ピクセルの最大サイズまでサイズ変更され、すべての画像は正方形に切り取られる。

参考

Microsoft DataVerse の列データ型【Docs】

【PowerApps】テーブルからレコードを集計して件数を表示する方法

今回は「アンケートの集計結果」のように、PowerApps でレコードを集計して件数を表示する方法を紹介します。

目次

データソースの構成

サンプルのデータソースは、下図構成のSharePoint リスト(旅行先リスト)を使用します。
本記事では下記リストを利用して説明を行います。

列名 列の種類
希望旅行先 1行テキスト
年齢 選択肢

画面の構成

PowerAppsにはギャラリーを配置しています。
ギャラリーのレイアウトは「タイトルとサブタイトル」を選択しています。

手順

手順1.Gallery の設定

Gallery には集計後(重複を削除した状態)の「旅行先リスト」を表示するので、Gallery の「Items」に下図のコードを入力します。

Distinct 関数は、指定した列から重複レコードを削除する関数です。
上図では「希望旅行先」列で重複のチェックをしています。
 Docs - PowerApps での Distinct 関数

手順2.Title の設定

Galley - Title の「Text」に下図のコードを入力します。
「ThisItem.Result」で Distinct 関数の結果を表示します。



Distinct関数は結果を「テーブル形式」で返します。
返されたテーブル値はResult で取得・参照します。
今回は Result で、重複なしの「希望旅行先」を取得しています。

手順3.SubTitle の設定

Galley - SubTitle の「Text」に下記のコードを入力します。



Filter関数は、条件に一致するレコードを絞り込んでテーブル形式で返します。
 Docs - PowerApps での Filter、Search、および LookUp 関数
CountRows関数は、テーブルのレコード件数を数値で返します。
 Docs - PowerApps の Count、CountA、CountIf、および CountRows 関数

下図は完成イメージです。
「旅行先リスト」から「希望旅行先」列ごとに集計を行ったので「沖縄」をカウントしたら5件あった、というイメージですね。
しかし、1点補足に記載の注意事項があります。

補足.注意事項

委任問題

PowerApps でデータを扱う場合、委任の問題が大きく関係してきます。
Docs - キャンバス アプリでの委任について

PowerApps は、データ処理を PowerApps 側で行わず、データソース(SharePointSQLServerなど)に処理を委任して、処理結果を PowerApps 側に持ってくることができます。
これにより端末や通信時の負担を大幅に減らせるのです。

この「データソースに処理を委任することができるかどうか」が PowerApps で大規模なデータセットを操作する上で重要なポイントになります。

大規模なデータセットを操作するには、委任できるデータソースと数式が必要です。
 ・データソースと数式で委任がサポートされている場合は、データソース側に処理が委任されて、処理結果がPowerAppsに返されます。
 ・データソースと数式で委任がサポートされていない場合は、PowerApps 側で処理が必要なため、連携されるレコード数などが制限されます。

PowerApps の仕様で、PowerApps 側で処理可能なレコード件数は、500 件に制限されます。
※手動による設定変更で、MAX 2,000 件まで増加可能。

委任可能な関数と、委任不可の関数を組み合わせた場合

委任可能な関数(Filterなど)と委任不可な関数(CountRowsなど)を組み合わせた場合、委任不可なものとなり、返されるレコード数は最大500件となります。

本記事で利用した「旅行先リスト」を使って500件を超えるとどうなるのか試してみました。

下図右側の集計後リストは、今回の記事と同じ方法で作成した Galley です。
SharePointの旅行先リストには「沖縄」は523件あるのに、PowerAppsでは「沖縄」が500件に減っています。

理由は、CountRows 関数は委任不可の関数であるため、PowerApps 側で処理可能な件数500件を超えたからです。
データソース全体が500件を超える場合、もしくは、絞り込まれた後の件数が500件を超える場合は、正確な計算ができないため、十分にご注意ください。

【Exchange】組織全体で会議招待メールを自動承諾させる

はじめに

今回は組織全体のルールとして、特定のユーザーから予定参加依頼(会議招待)メールを受信した際に予定参加を「自動承諾」する方法 をご紹介します。
組織全体でメールの仕訳ルールを適用する場合、Exchange管理センターでトランスポートルールを作成します。

目次

トランスポートルールと仕訳ルールの違い

トランスポートルール

組織で管理するルールであり、設定条件によっては全ユーザーが対象となります。

仕訳ルール

ユーザー自身が設定・管理するルールであり、個人が対象となります。
Aさんが自分の Outlook クライアントで作成した仕訳ルールは、Bさんには適用されません。

注意事項

本記事の内容を設定する場合は、下記の点を考慮して運用に問題ないかご検討ください。

・本記事設定後は、メールを確認せず自動的に予約が承諾されます。
・予定の重複があってもすべて “承諾” されます。
・設定は全ユーザーに適用されます。

設定手順

下記手順を実施して、予定参加依頼メールに対し自動承諾するルールを作成します。

1.Exchange 管理者権限を持つユーザーで、Exchange 管理センター にサインイン。
2.左側メニューより [メール フロー] > [ルール] をクリック。
3.画面中央より [ルール] 下の [+] アイコン > [ルールの新規作成] を選択。

4.[ルールの新規作成] ウィンドウ下部の [その他のオプション] をクリック。

5.[名前] にルールの名前を入力します。
6.[このルールを適用する条件...] で [メッセージのプロパティ...] > [メッセージの種類を含む] を選択。
7.[メッセージの種類の選択] 画面で [予定表作成] を選択して [OK] をクリック。

※ 特定ユーザーからのメールのみ自動承諾する場合は、下記8~10を設定します。
8.[このルールを適用する条件...] の下にある [条件の追加] をクリック。
9.[送信者...] を選択 > [アドレスに次のいずれかの単語が含まれる] を選択。
10.送信者のメールアドレスを入力 > [+]をクリック > [OK]をクリックする。
 ※ここで設定したメールアドレスから受信した予定参加依頼メールのみ自動承諾を行います。

11.[実行する処理...] で [メッセージのプロパティを変更する...] > [メッセージヘッダーの設定] を選択。
12.[メッセージ ヘッダー] > [テキストの入力...] をクリックし、[メッセージ ヘッダー] 画面で [X-MS-Exchange-Organization-CalendarBooking-Response] を入力して [OK] をクリック。
13.[値] > [テキストの入力...] をクリックし、[ヘッダー値] 画面にて [Accept] と入力後 [OK] をクリック。


14.最後に[保存] をクリック。

完成形はこんな感じ。設定から反映まで 30 分程度時間がかかります。

上図赤枠外の設定は任意です。
優先度は「0」が一番高く最優先で実行されます。

参考

Exchange Online でメール フロー ルールを使用して、予定表に会議を自動的に追加する

Exchange Online のメール フロー ルール (トランスポート ルール)

【PowerAutomate】アイテムまたはフォルダに対するアクセス権付与について

SharePoint の アクション「アイテムまたはフォルダに対するアクセス権付与」に関するTipsです。 このアクションは名前の通り、SharePoint のアイテムまたはフォルダに対して権限を付与します。

ただし、アクションに存在する権限は「Can Edit」か「Can Read」のみです。
他の権限を付与する場合は権限ごとに割り当てられた「RoleID」を指定する必要があります。

既定の権限に割り振られている RoleID は下記の通り。

権限名(日本語) 権限名(英語) RoleID
フルコントロール Full Control 1073741829
デザイン Design 1073741828
編集 Edit 1073741830
投稿 Contribute 1073741827
閲覧 Read 1073741826
制限付きビュー Limited Access 1073741825
読み取り専用 View Only 1073741924


「アイテムまたはフォルダに対するアクセス権付与」アクションの書き方は下図のようになります。


サイト内で独自の権限を作成している場合は、下記場所に接続することでRoleIDを確認することができるようです。(Docs記事参照)

https://<your-sharepoint-site>/_api/web/roledefinitions

参考

リスト アイテムとファイルのアクセス許可を管理し、Power Automateする(Docs)
https://docs.microsoft.com/ja-jp/sharepoint/dev/business-apps/power-automate/guidance/manage-list-item-file-permissions

【SharePoint】実践!列の書式設定 サンプル2

こんにちは、くらっちです。
前回の下記事に続き、SharePoint の「列の書式設定」のサンプルを紹介します。
列の書式設定は、アイテムやファイルに影響はなく表示のみが変更されます。
本記事では「▲サンプルコード」をクリックすることで、サンプルを参照できます。

kurattyodiary.hatenablog.com

目次

1.対象列のユーザー宛にメールを送信する

メールアイコンをクリックすると、メールソフトが起動します。
必ず列の種類「ユーザーまたはグループ」列に対して書式設定を行ってください。
メール作成にあたってリストに必要な列は下表の通りです。

メール項目 列内部名 列の種類
宛先 (任意) ユーザーまたはグループ
件名 Title 1行テキスト
本文 Comment 複数行テキスト(書式なしテキスト)
アイテムのID ID ※標準のID列を使用


サンプルコード

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
  "elmType": "div",
  "children": [
      {
          "elmType": "span",
          "style": {
              "padding-right": "8px"
          },
          "txtContent": "@currentField.title"
      },
      {
          "elmType": "a",
          "attributes": {
              "iconName": "Mail",
              "class": "sp-field-quickActions",
              "href": {
                  "operator": "+",
                  "operands": [
                      "mailto:",
                      "@currentField.email",
                      "?subject=",
                      "[$Title]",
                      "&body=",
                      "[$Comment]",
                      "\r\n---\r\n",
                      "@currentField.title",
                      "\r\n詳細はコチラをクリック!\r\n https://contoso.sharepoint.com/sites/[サイト名]/Lists/[リスト名]/DispForm.aspx?ID=",
                      "[$ID]"
                  ]
              }
          }
      }
  ]
}


2.複数人宛のメールを作成する

承認者が1人の場合は「Send email to ユーザー名」
承認者が複数の場合は「Send email to N members」と列に表示されます。
リンククリックで、メールソフトが起動して宛先には全員のメールアドレスが入力されます。
列の種類は「ユーザーまたはグループ」列を使ってください。


サンプルコード

{
    "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
    "elmType": "a",
    "style": {
        "display": "=if(length(@currentField) > 0, 'flex', 'none')"
    },
    "attributes": {
        "href": {
            "operator": "+",
            "operands": [
                "mailto:",
                "=join(@currentField.email, ';')"
            ]
        }
    },
    "children": [
        {
            "elmType": "span",
            "txtContent": {
                "operator": "+",
                "operands": [
                    "Send email to ",
                    {
                        "operator": "?",
                        "operands": [
                            "=length(@currentField) == 1",
                            "@currentField.title",
                            "='all ' + length(@currentField) + ' members'"
                        ]
                    }
                ]
            }
        }
    ]
}


3.数値によって進む進捗アイコン

書式設定を適用した列の数値に従ってプログレスアイコンが進んでいきます。
下図の場合、Progress列には上から「2、1、3」が入力されており、その数値に従ってアイコンが表示されます。
列の種類は「数値列」を使ってください。

サンプルコード

{
    "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
    "elmType": "div",
    "style": {
      "font-size": "16px"
    },
    "children": [
      {
        "elmType": "span",
        "attributes": {
          "title": "Step 1",
          "iconName": "=if(@currentField < 1, 'TriangleRight12', 'TriangleSolidRight12')",
          "class": "='ms-fontColor-' + if(@currentField == 1, 'green', if(@currentField > 1, 'greenLight', 'neutralLight'))"
        },
        "style": {
          "padding": "0 2px"
        }
      },
      {
        "elmType": "span",
        "attributes": {
          "title": "Step 2",
          "iconName": "=if(@currentField < 2, 'TriangleRight12', 'TriangleSolidRight12')",
          "class": "='ms-fontColor-' + if(@currentField == 2, 'green', if(@currentField > 2, 'greenLight', 'neutralLight'))"
        },
        "style": {
          "padding": "0 2px"
        }
      },
      {
        "elmType": "span",
        "attributes": {
          "title": "Step 3",
          "iconName": "=if(@currentField < 3, 'TriangleRight12', 'TriangleSolidRight12')",
          "class": "='ms-fontColor-' + if(@currentField == 3, 'green', if(@currentField > 3, 'greenLight', 'neutralLight'))"
        },
        "style": {
          "padding": "0 2px"
        }
      }
    ]
  }


4.他列の承認状況に従って進む進捗アイコン

他の列の入力値に従ってプログレスアイコンが進んでいきます。
下図の場合、承認ステータスの値(進捗状況)に従ってアイコンが表示されます。
Proguress列は列の種類に指定はありませんが、承認ステータス列は「選択肢列」にしてください。

サンプルコード

{
    "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
    "elmType": "div",
    "style": {
      "font-size": "16px"
    },
    "children": [
      {
        "elmType": "span",
        "attributes": {
          "title": "Step 1",
          "iconName": "=if([$Status] == '申請中', 'TriangleSolidRight12', 'TriangleRight12')",
          "class": "='ms-fontColor-' + if([$Status] == '申請中', 'green', if([$Status] == '審査中', 'greenLight', if([$Status] == '承認', 'greenLight', 'neutralLight')))"
        },
        "style": {
          "padding": "0 2px"
        }
      },
      {
        "elmType": "span",
        "attributes": {
          "title": "Step 2",
          "iconName": "=if([$Status] == '審査中', 'TriangleSolidRight12', 'TriangleRight12')",
          "class": "='ms-fontColor-' + if([$Status] == '審査中', 'green', if([$Status] == '承認', 'greenLight', 'neutralLight'))"
        },
        "style": {
          "padding": "0 2px"
        }
      },
      {
        "elmType": "span",
        "attributes": {
          "title": "Step 3",
          "iconName": "=if([$Status] == '承認', 'TriangleSolidRight12', 'TriangleRight12')",
          "class": "='ms-fontColor-' + if([$Status] == '承認', 'green', 'neutralLight')"
        },
        "style": {
          "padding": "0 2px"
        }
      }
    ]
  }

参考ページ

Use column formatting to customize SharePoint https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/column-formatting

Office UI Fabric Icons (IconNameの検索に役立ちます) https://uifabricicons.azurewebsites.net/

【SharePoint】実践!列の書式設定 サンプル1

最近までめちゃくちゃ忙しくて久々の投稿です。ようやく記事書ける、嬉しい。。

今回は、SharePoint リストをカスタマイズするための「列の書式設定」についてです。
「列の書式設定」はjsonを用いて記述しますが「jsonの書き方がわからない💦」という方も多いと思います。
そこで今回はどれもすぐに利用できるものを用意しました。

列の書式設定は、アイテムやファイルに影響はなく表示のみが変更されます。
安心してご活用ください。

この記事で記載しているサンプルは、「初めて」列の書式設定を活用する方向けの記事です。
「▲サンプルコード」の部分をクリックすることで、サンプルコードを参照できます。

コードをコピーして、列の書式設定に張り付ければ適用できます。

目次

1.入力値の中央揃え

リストアイテムの文字表示は、基本的に左寄せです。
中央揃えに変更するには下記コードを利用します。
列の種類はどれでも利用可能です。

サンプルコード

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
  "elmType": "div",
  "style": {
    "display": "table",
    "width": "100%"
  },
  "children": [
    {
      "elmType": "div",
      "txtContent": "@currentField",
      "style": {
        "display": "table-cell",
        "text-align": "center",
        "vertical-align": "middle"
      }
    }
  ]
}

2.文字サイズの拡張

ハイパーリンクまたは画像」列などリンクを含むテキストの文字サイズを大きくする場合は「@currentField」「@currentField.desc」の両方を指定する必要があります。

文字サイズの調整は、下記を修正することで可能です。
 小:sp-field-fontSizeSmall
 中:sp-field-fontSizeMedium
 大:sp-field-fontSizeLarge
特大:sp-field-fontSizeXLarge


サンプルコード

{
     "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
     "elmType": "a",
     "style": {
          "box-sizing": "border-box",
          "padding": "0 2px",
          "overflow": "hidden",
          "text-overflow": "ellipsis"
     },
     "attributes": {
          "class": "sp-field-fontSizeLarge",
          "href": "@currentField",
          "target": "_blank"
     },
     "txtContent": "@currentField.desc"
}

3.ユーザー列にユーザーのアイコンを表示する

ユーザー列は標準ではユーザー名のみ表示されますが、同時に自分のアイコンも表示させることが可能です。
必ず列の種類「ユーザーまたはグループ」列を指定してください。

サンプルコード

{
    "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
    "elmType": "div",
    "children": [
        {
            "elmType": "img",
            "style": {
                "width": "32px",
                "height": "32px",
                "overflow": "hidden",
                "border-radius": "50%",
                "margin": "2px"
            },
            "attributes": {
                "src": "='/_layouts/15/userphoto.aspx?size=S&accountname=' + @currentField.email",
                "title": "@currentField.title"
            }
        },
        {
            "elmType": "span",
            "style": {
                "vertical-align": "middle",
                "margin-left": "2px"
            },
            "txtContent": "@currentField.title"
        }
    ],
    "defaultHoverField": "@currentField"
}

使い方を覚えれば、あとはHTMLとCSSの知識で何とかなりそうです。
次回はもうちょっとだけ作りこんだ実用方法をご紹介したいと思います。

参考ページ

Use column formatting to customize SharePoint(Docs)

https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/column-formatting

SharePointリストの書式設定(JSON) チートシート

https://qiita.com/Momono_gg/items/58bf768fb83bddfbdca1

【PowerAutomate】SharePoint フィルタークエリの書き方講座

はじめに

Power Automate によるフロー作成時、SharePointの「複数の項目を取得する」などのアクションを利用するシーンがありますよね。
詳細オプションの中にあるフィルタークエリを利用することでアイテムを絞り込むことができるのですが、そのクエリがとても難しい!!

そこでこの記事では、利用頻度の高いフィルタークエリをサンプルコード付きで紹介します。

目次

注意事項

・フィルタークエリに利用する列名は列の内部名です。
・Year や Month といった日付関数は利用できません。
・「複数行テキスト」「ハイパーリンクまたは画像」の列はフィルタークエリで利用できません。

フィルタークエリ

A eq B

A は B と等しい を表す。

例:Department が 経理部 であるアイテムを取得する
Department eq '経理部'

A ne B

A は B と等しくない を表す。

例:Department が 経理部 ではないアイテムを取得する
Department ne '経理部'

A ge B

A が B 以上 を表す。

例:Price が 1,000円 以上のアイテムを取得する
Price ge 1000

A gt B

A が B より大きい を表す。

例:Price が 1,000円 より大きいアイテムを取得する
Price gt 1000

A le B

A が B 以下 を表す。

例:Price が 1,000円 以下のアイテムを取得する
Price le 1000

A lt B

A が B 未満 を表す。

例:Price が 1,000円 未満のアイテムを取得する
Price lt 1000

substringof(A,B)

B に 文字列A が含まれている を表す。

例:UserName に '島' が含まれているアイテムを取得する
substringof('島',UserName)

startswith(A,B)

A の始まりが 文字列B を表す。

例:CountryName の始まりが 'Jap' であるアイテムを取得する
startswith(CountryName,'Jap')

A add B

A + B を表す。

例:Price +1,000円 が2,000円未満のアイテムを取得する
(Price add 1000) lt 2000

A sub B

A - B を表す。

例:Price -1,000円 が500円未満のアイテムを取得する
(Price sub 1000) lt 500

null値の利用

例:Address が null ではないアイテムを取得する
Address ne null