自動生成されるPower Appsの画面を修正したいのですが、うまく動きません。まぁ、はじめめから機能するとは思ってなかっけど嫌なものです。本当にこのツールは使い物になりません。
2ページ目では、値を取得できませんね。
Power Apps で Microsoft Lists または SharePoint ライブラリ フォームを簡単にカスタマイズ できるようになりました。 この記事では、これらのフォームの動作とカスタマイズ方法について詳しく説明します。
リスト フォームをカスタマイズしたことがある場合、既定の生成されたフォームが、項目の作成、表示、編集などのすべての操作に対応していることをご存知でしょう。 これは、生成された数式と SharePointIntegration コントロールによって実現されています。
既定の生成されたフォームを理解する
既定の生成されたフォームは、次のコントロールと対応する既定値で構成されています:
- FormScreen1 - これは、フォームを含むスクリーン です。
-
SharePointForm1 - これは、リスト アイテムの作成、表示、または編集に使用されるフォーム です。
- データ ソース - フォームがカスタマイズされているリストです。
- 項目 - リストから選択された項目です。 これは、Power Apps Studio で操作するとき便利なように、リストの First() 項目に設定されています。
If( IsBlank(SharePointIntegration.Selected) || IsEmpty(SharePointIntegration.Selected),
First('*YourListName*'),
SharePointIntegration.Selected )
上記の数式パターン (... SharePointDatasourceName.Selected を使用) は、フォームの Item プロパティで機能します。 SharePoint レコードの値を設定する数式パターンについては、以下のセクション を参照してください。
この2つの説明はさっぱり意味が分かりませんね。以下のセッションではOnView プロパティが出てくるけど、どこにもないよ。
OnView プロパティなんかは、ここにはない。
- OnSuccess - 項目が正常に作成または保存されると、フォームがリセットされ、SharePoint でこのフォームが非表示になります。
ResetForm(SharePointForm1); RequestHide()
OnSuccess もないけど... 何の説明だろう。
えええ、SharePointForm1 の話をしている? おいおい黒丸ってことはSharePointForm1とは並列... 話題が変わったと思うよ、普通の場合。外人さんの思考は違うのか?
- SharePointIntegration - このコントロールは、SharePoint と Power Apps の間でユーザー アクションを伝達します。
-
データ ソース - フォームがカスタマイズされているリストです。
'YourListName'
-
OnNew - SharePointForm1 を新しいモードに設定します。
NewForm(SharePointForm1)
-
OnView - SharePointForm1 を表示モードに設定します。
ViewForm(SharePointForm1)
-
OnEdit - SharePointForm1 を編集モードに設定します。
EditForm(SharePointForm1)
-
OnSave - SharePointForm1 の変更を送信します。 フォームの送信が成功すると、 SharePointForm1.OnSuccess 式が実行されます。
SubmitForm(SharePointForm1)
-
OnCancel - SharePointForm1 の変更をリセットします。 ユーザーが SharePoint で キャンセル を選択すると、SharePoint では常にフォームが非表示になります。
ResetForm(SharePointForm1)
これらの既定値によって、SharePoint 内で実行したときにフォームが機能し、ユーザーが SharePoint でフォームと対話したときに Power Apps フォーム モードが変更され、変更内容が SharePoint に確実に送信されます。
SharePointIntegration コントロールを理解する
SharePointIntegration コントロールは、SharePoint と Power Apps の間でユーザー アクションを伝達します。
注意
SharePointIntegration コントロールのプロパティには、フォームが SharePoint で実行されているときにのみアクセスでき、Power Apps Studio でフォームをカスタマイズしているときにはアクセスできません。 これらのプロパティは、OnStart または OnVisible では使用できないことがあります。
SharePointIntegration コントロールには、次のプロパティがあります:
-
選択済み - リストから選択された項目です。
-
OnNew - ユーザーが SharePoint で 新規 ボタンを選択、または 項目の作成 フォームを開くときに実行するアクション。
-
OnView - ユーザーが SharePoint で 項目 を選択、または 項目の詳細 フォームを開くときに実行するアクション。
-
OnEdit - ユーザーが SharePoint で すべてを編集 ボタンを選択、または 項目の編集 フォームを開くときに実行するアクション。
-
OnSave -ユーザーが SharePoint で 保存 ボタンを選択したときに実行するアクション。
-
OnCancel -ユーザーが SharePoint で キャンセル ボタンを選択したときに実行するアクション。
-
SelectedListItemID - リストで選択された項目 ID です。
-
データ ソース – フォームが表示、編集、または作成するレコードが含まれるリストです。 このプロパティを変更すると、Selected プロパティと SelectedItemID プロパティが機能しなくなる場合があります。
現在の設定を見ると最初のページが設定されています。
既定のフォームをカスタマイズする
既定の生成されたフォームと SharePointIntegration コントロールを理解したら、数式を変更して、フォームをさらにカスタマイズすることができます。 フォームをカスタマイズするときの注意事項をいくつか次に示します:
- ユーザーが SharePoint で 保存 を選択したときの動作をカスタマイズするには、SharePointIntegration コントロールの OnSave 式を使用します。 複数のフォームがある場合は、現在使用しているフォームに対する変更だけを送信してください。
OnNew、OnView、および OnEdit 式の変数には異なる値を設定します。 OnSave 式でこの変数を使用すると、使用されているフォームを指定できます。
- すべてのフォームの OnSuccess 式に必ず RequestHide() を含めてください。 これを忘れると、SharePoint はフォームを非表示にするタイミングを認識できません。 また、フォームが表示されロジックを実行できる間にすべてのコードが実行できるように、RequestHide() を呼び出した後は重要なコードを実行しないでください。
- SharePoint では、ユーザーが キャンセル を選択したときにフォームの非表示を制御できないので、SharePointIntegration コントロールの OnCancel 式で必ずフォームをリセットしてください。
- SharePointIntegration コントロールのプロパティは OnStart または OnVisible では使用できないことがあり、それらのイベントはリストの読み込み中に 1 回だけ実行します。 OnNew、OnView、または OnEdit 式を使って、フォームが毎回ユーザーに表示される前にロジックを実行できます。
SharePointIntegration は追加できないなぁ
ここでも追加できないって書かれてます。