LoginSignup
0
2

More than 1 year has passed since last update.

【Power Apps】URL パラメーターを指定して SharePoint リストアイテムを表示する

Last updated at Posted at 2023-03-16

【Power Apps】URL パラメーターを指定して SharePoint リストアイテムを表示する

URL パラメーターに SharePoint カスタムリストのアイテム ID を指定し、Power Apps で作成したフォームで表示する方法です。URL パラメーターに指定された値を取得するためには、Param 関数 を使います。

準備

SharePoint のカスタムリスト (例では、Announce リスト) でアプリを作成します。

  1. 対象のカスタムリストを表示して、[統合] > [Power Apps] > [アプリの作成] を選択します。
    image-20230314135358317.png
  2. 名前を入力し、[作成] ボタンをクリックします。
    image-20230314135431909.png
  3. 自動でアプリが作成されます。
    image-20230314135521093.png

パラメーターの有無で開くスクリーンを変更する

StartScreen プロパティ

App の StartScreen プロパティを設定します。

URL パラメーターがない場合は一覧画面 (BrowseScreen)、ある場合は詳細表示画面 (DetailScreen) が初期表示画面になるように設定します。
image-20230314144000873.png

If(
    IsBlank(Param("ID")),
    BrowseScreen1,
    DetailScreen1
)

パラメーターをグローバル変数に設定する

OnStart プロパティ

App の OnStart プロパティを設定します。

URL パラメーターがある場合にグローバル変数(_ID)に数値に変換した値を設定します。
image-20230316091803790.png

If(
    !IsBlank(Param("ID")),
    Set(_ID, Value(Param("ID")))
);

Form コンポーネントに表示するアイテムを設定する

Item プロパティ

DetailScreen1 の DetailForm1 と EditScreen1 の EditForm1 それぞれの Item プロパティを設定します。

グローバル変数(_ID) が生成されていない場合は一覧画面 (BrowseScreen) のギャラリーで選択しているアイテムを指定し、ある場合は LookUp 関数でアイテムを取得するように設定します。
image-20230316092358298.png

If(
    IsBlank(_ID),
    BrowseGallery1.Selected,
    LookUp(Announce, ID = _ID)
)

カスタムリストからアプリのフォームを直接開く

列の書式設定を設定してビューからアイテムの詳細をアプリで開くように設定します。

準備

作成したアプリの [詳細] から Web リンク(URL) を取得しておきます。

列の書式設定

列の書式を設定してアプリが開くように設定します。
image-20230316102317031.png

書式設定

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/row-formatting.schema.json",
  "elmType": "a",
  "txtContent": "@currentField",
  "attributes": {
    "target": "_blank",
    "href": "='https://apps.powerapps.com/play/e/{環境 ID}/a/{アプリID}?tenantId={テナントID}&ID=' + [$ID]"
  }
}

参考サイト

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2