Category( "Customize" ){ return results; };

PowerApps の変数の使い方と使いどころ

PowerApps でアプリを作成する場合、変数を利用する必要性が出てくることがあります。ただ、この変数という存在は目に見えづらく、これまでプログラミング(コーディング)を経験したことのないユーザーにはひとつのハードルにもなっているような気がしています。

とは言えやっぱり変数を利用できた方が、作成できるアプリの幅も大きく異なってくるというわけで、PowerApps のキャンバス アプリでの変数の動作について僕が勉強したときの手順や理解の内容を書いてみたいと思います。

さきに書いておくと、勉強してみて思ったことは「出来る限り変数は使わない方が良い」ということです。その理由は、記事の最後のほうに書いてあります。

Read More

SharePoint Online モダン ページで “ちょっと” カスタマイズできる方法を模索してみる

SharePoint Online のモダン ページを利用すると、ユーザーが自由にページのレイアウトを作成したり必要な Web パーツを配置したりといったことが簡単にできます。

しかし一方で、何かしら “ちょっと” カスタマイズしたいなと思ったときには SharePoint Framework を利用して Web パーツの作成が必要だったりなど、その “ちょっと” が難しくなってもいます。

従来であればコンテンツ エディタ Web パーツやスクリプト エディタ Web パーツを利用して JavaScript などで “ちょっと” のカスタマイズができたのですが、残念ながらこうした機能はモダン ページでは提供されていません。

というわけで、これはどうにかならないものかなーと思い、調べたり試行錯誤したりと模索しています。

Read More

SharePoint Online モダン リストの View formatting を試してみた

早く使えないかなと期待していた「View formatting」という機能がターゲット リリースのテナントで利用できるようになっていました。機能の日本語名は「ビューの書式設定」のようですね。

これまでも利用できていた「Column formatting(列の書式設定)」は、文字通り「列」の表示形式を JSON により指定できるものでしたが、この「View formatting(ビューの書式設定)」では、リストやライブラリに登録された「行」つまりは「アイテム」の表示形式を同じく JSON で指定できるものになっています。

ちなみに、Column formatting を試したときの記事は下記のリンク先です。

SharePoint Online モダン リストの Column formatting を試してみた
https://idea.tostring.jp/?p=3163

これにより、モダン リストにおけるビューの表現力がグッと高まると思います。さっそく試してみましょう。

Read More

SharePoint Online 既存のチーム サイトに Office 365 グループを接続してみた

Microsoft からの先月末のアナウンスによると、いよいよ既存の(すでに作成済みの)SharePoint Online チーム サイト(クラシック表示)に、Office 365 グループを接続できるようになるとのことで、さっそく試してみたので記録を残しておきます。

アナウンスは、下記のリンク先ですね。

Rolling out: tenant admin tools to connect existing SharePoint team sites to new Office 365 Groups
https://techcommunity.microsoft.com/t5/SharePoint-Blog/Rolling-out-tenant-admin-tools-to-connect-existing-SharePoint/ba-p/188750

それでは実際にやってみましょう。

Read More

Microsoft Flow を使って SharePoint Online に保存されたドキュメントの承認ワークフローを作ってみる

Microsoft Flow にある SharePoint コネクタを見ていたところ「コンテンツの承認状態を設定します」というアクションを見つけました。はは~ん、これで SharePoint のドキュメント ライブラリに保存されたドキュメントの承認ワークフローを作れば良いんだな?と思い試してみたところ、ちょいと工夫が必要そうだったのでメモを残しておきます。

ちなみに、「コンテンツの承認状態を設定します」アクションのドキュメントは下記のリンク先ですね。

SharePoint – Connectors | Microsoft Docs – Set content approval status
https://docs.microsoft.com/ja-jp/connectors/sharepointonline/#set-content-approval-status

Read More

PowerShell の CSOM を使って SharePoint Online の 5,000 件を超えるアイテムが格納されたリストから全アイテムを取得する

SharePoint Online を利用していると、リストに格納されたアイテムが 5,000 件を超えることも珍しくありません。こうしたリストのアイテムを PowerShell の CSOM で扱おうと思うと、5,000 件の壁にぶつかります。

これは、SharePoint Online からは一度に 5,000 件より多いアイテムを取得できないためです。ではどうするかというと、5,000 件の制限の範囲内で小分けにしてアイテムを取得していきます。ページングというやつですね。

ではさっそくスクリプトを見ていきましょう。

Read More

SharePoint Online 管理シェルでモダン サイトを作成する

SharePoint Online 管理シェルからサイト コレクションを作成するには、みなさんご存知の通り New-SPOSite を利用するわけですが、つい先日までは、このコマンドでは SharePoint Online のモダン サイトを作成することができませんでした。

そのため、下記の記事のように REST API を利用して作成を試みていたわけです。

SharePoint Online の新しいコミュニケーション サイトは REST API で作成できるらしい
https://idea.tostring.jp/?p=3257

ところが先ほど確認してみたところ、このコマンドでもモダン サイトを作成できるようになっていたのでメモしておきます。

Read More

PowerShell から SharePoint Online の CSOM を呼び出すときに、HTTP リクエストに User Agent を設定する(スロットリング回避策?)

SharePoint Online は、CSOM や REST API の呼び出しにスロットリングが設けられており、頻繁にリクエストを送っているとサーバー側から実行が制限されてしまいます。どのくらいの頻度でリスエストを送ると制限されるのかについては、情報が公開されていないので悩むところではあるのですが…、この制限を超えるとサーバーからは「429」または「503」のコードが返ってきます。

この制限の回避策についてはリファレンスが公開されています。

SharePoint Online で調整またはブロックを回避する
https://docs.microsoft.com/ja-jp/sharepoint/dev/general-development/how-to-avoid-getting-throttled-or-blocked-in-sharepoint-online

回避策のひとつは、制限されることを前提にしたリトライ処理をあらかじめ組み込んでおくことです。PowerShell での実装については、以前に Microsoft のサポートチームがブログで書いてくれていますね。

PowerShell サンプル : SharePoint Online HTTP 調整 (応答コード : 429) 対策の増分バックオフ リトライ
https://blogs.technet.microsoft.com/sharepoint_support/2016/10/08/powershell-csom-sample-code-for-spo-http-429-incremental-backoff-retry/

(2019/1/23 追記)サポートチームのサンプルに改訂版が出ていました。

[改訂版] SharePoint Online HTTP 調整 (応答コード : 429) 対策の増分バックオフ リトライ
https://blogs.technet.microsoft.com/sharepoint_support/2018/11/09/powershell-csom-sample-code-for-spo-http-429-incremental-backoff-retry-2/

もうひとつの回避策は、HTTP リクエストに決められた命名規則の User Agent を含めることとあります。リファレンスには「適切に装飾されたトラフィックは、不適切な装飾を施したトラフィックより優先されます。」とあるので、制限される頻度を低くできる可能性があるのだと思います。

というわけで、PowerShell で CSOM を扱うときにどのように User Agent を含めたら良いかについてメモしておきます。

Read More