Congratulations!

[Valid RSS] This is a valid RSS feed.

Recommendations

This feed is valid, but interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

Source: http://sharepoint247.com/feed/

  1. <?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
  2. xmlns:content="http://purl.org/rss/1.0/modules/content/"
  3. xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  4. xmlns:dc="http://purl.org/dc/elements/1.1/"
  5. xmlns:atom="http://www.w3.org/2005/Atom"
  6. xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  7. xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  8. >
  9.  
  10. <channel>
  11. <title>Arild Aarnes</title>
  12. <atom:link href="http://sharepoint247.com/feed/" rel="self" type="application/rss+xml" />
  13. <link>http://sharepoint247.com</link>
  14. <description>Mostly about Power Platform these days, but some Microsoft 365 stuff as well</description>
  15. <lastBuildDate>Thu, 26 Jan 2023 07:21:31 +0000</lastBuildDate>
  16. <language>en-US</language>
  17. <sy:updatePeriod>
  18. hourly </sy:updatePeriod>
  19. <sy:updateFrequency>
  20. 1 </sy:updateFrequency>
  21. <generator>https://wordpress.org/?v=6.1.6</generator>
  22. <item>
  23. <title>How to use ChatGPT from Power Apps</title>
  24. <link>http://sharepoint247.com/power-apps/how-to-use-chatgpt-from-power-apps/</link>
  25. <comments>http://sharepoint247.com/power-apps/how-to-use-chatgpt-from-power-apps/#respond</comments>
  26. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  27. <pubDate>Mon, 23 Jan 2023 13:57:45 +0000</pubDate>
  28. <category><![CDATA[Power Apps]]></category>
  29. <category><![CDATA[Power Platform]]></category>
  30. <category><![CDATA[AI]]></category>
  31. <guid isPermaLink="false">http://sharepoint247.com/?p=1281</guid>
  32.  
  33. <description><![CDATA[<p>Have you ever wanted someone or &#8220;something&#8221; to automatically send &#160;replies to emails you receive? I thought that might be functionality I wanted, and since I probably can&#8217;t get anyone&#8230;</p>
  34. The post <a href="http://sharepoint247.com/power-apps/how-to-use-chatgpt-from-power-apps/">How to use ChatGPT from Power Apps</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  35. <content:encoded><![CDATA[<p>Have you ever wanted someone or &#8220;something&#8221; to automatically send &nbsp;replies to emails you receive? <br>I thought that might be functionality I wanted, and since I probably can&#8217;t get anyone to do this, it had to be &#8220;something&#8221;.</p>
  36.  
  37.  
  38.  
  39. <p>A lot of hype around <a href="https://openai.com/blog/chatgpt/">ChatGPT</a> at the moment so I thought it could get the task done along with Microsoft Power Platform.</p>
  40.  
  41.  
  42.  
  43. <p>We&#8217;ll start with a simple application where you can paste the text from an email and have ChatGPT create a reply. Always possibel to extend the application later if we want to.<br>To make it a little more interesting, we can ask ChatGPT to give different types of answers.&nbsp; For example, ChatGPT may respond sarcastically, angry, very happy, etc.</p>
  44.  
  45.  
  46.  
  47. <p>Create a new Power App on <a href="https://make.powerapp.com">https://make.powerapp.com</a>, we choose to build a canvas app and select tablet layout.</p>
  48.  
  49.  
  50.  
  51. <p>Power Platform has over 900 connectors to other systems and one of these is to Open AI. So we will use this connector, after all, it greatly simplifies our process of connecting the Power App to ChatGPT .</p>
  52.  
  53.  
  54.  
  55. <p>We select Add data and add the Open AI connector.</p>
  56.  
  57.  
  58. <div class="wp-block-image">
  59. <figure class="aligncenter size-full is-resized"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h00_36.png" data-rel="lightbox-image-0" data-rl_title="" data-rl_caption="" title=""><img decoding="async" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h00_36.png" alt="" class="wp-image-1282" width="286" height="524" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h00_36.png 286w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h00_36-164x300.png 164w" sizes="(max-width: 286px) 100vw, 286px" /></a><figcaption class="wp-element-caption">Select the Open AI connector</figcaption></figure></div>
  60.  
  61.  
  62. <p>To configure the link we need an API key from Open AI. You can create your API key here <a href="https://beta.openai.com/account/api-keys">Account API Keys &#8211; OpenAI API</a> after you have created an account on Open AI. <br>The API key is entered as &#8220;Bearer &lt;your API key&gt;&#8221;</p>
  63.  
  64.  
  65.  
  66. <p>Add a Text&nbsp; Input control and set the mode to Multiline, giving it a sensible name like txtEmailText. <br>Copy the Text Input control using CTRL-C and CTRL-V so that you have two.</p>
  67.  
  68.  
  69.  
  70. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h20_58.png" data-rel="lightbox-image-1" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="618" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h20_58-1024x618.png" alt="" class="wp-image-1283" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h20_58-1024x618.png 1024w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h20_58-300x181.png 300w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h20_58-768x463.png 768w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h20_58-1536x927.png 1536w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h20_58.png 1609w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption class="wp-element-caption">Power App with two multiline text input controls</figcaption></figure>
  71.  
  72.  
  73.  
  74. <p>Name the copied control txtReplyText.<br>Add a button and name it btnCallChatGPT and set Text property to &#8220;Generate reply&#8221;.</p>
  75.  
  76.  
  77.  
  78. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h44_24.png" data-rel="lightbox-image-2" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="669" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h44_24-1024x669.png" alt="" class="wp-image-1284" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h44_24-1024x669.png 1024w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h44_24-300x196.png 300w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h44_24-768x502.png 768w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h44_24-1536x1003.png 1536w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h44_24.png 1609w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption class="wp-element-caption">Add a button control</figcaption></figure>
  79.  
  80.  
  81.  
  82. <p>We want to tell ChatGPT what type of reply we want, such as angry, sarcastic, happy, etc. to be able to select the tone we add a Combobox. &nbsp;Name it cmbTone and set the Items property to &nbsp;[&#8220;Angry&#8221;,&#8221;Sad&#8221;,&#8221;Nice&#8221;,&#8221;Extremely happy&#8221;,&#8221;Sarcastic&#8221;,&#8221;Evil&#8221;]</p>
  83.  
  84.  
  85.  
  86. <p>Turn of «Allow multiple selections” and “Allow searching”</p>
  87.  
  88.  
  89.  
  90. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h52_05.png" data-rel="lightbox-image-3" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="618" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h52_05-1024x618.png" alt="" class="wp-image-1285" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h52_05-1024x618.png 1024w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h52_05-300x181.png 300w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h52_05-768x463.png 768w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h52_05-1536x927.png 1536w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_09h52_05.png 1609w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption class="wp-element-caption">Add a Combobox control to set the tone of the reply</figcaption></figure>
  91.  
  92.  
  93.  
  94. <p>Now we are ready to call ChatGPT. Go to the OnSelect property on the button. &nbsp;Thats where we are going to write the formula to contact ChatGPT via the OPEN AI connector.</p>
  95.  
  96.  
  97.  
  98. <p>We first create a variable to store of the response we get from ChatGPT.</p>
  99.  
  100.  
  101.  
  102. <p>UpdateContext({locReply: Blank()});</p>
  103.  
  104.  
  105.  
  106. <p>This clears the variable and is used to set responses to blank the next time you click the button.</p>
  107.  
  108.  
  109.  
  110. <p>Lets call ChatGPT via the connector we previously set up. Description of the connector and parameters it uses <a href="https://learn.microsoft.com/en-us/connectors/openaiip/">can be found here</a></p>
  111.  
  112.  
  113.  
  114. <p>We use these parameters when calling ChatGPT</p>
  115.  
  116.  
  117.  
  118. <figure class="wp-block-table"><table><thead><tr><th>Name</th><th>Required</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td>engine</td><td>And</td><td>String</td><td>Which engine should be used by ChatGPT. &nbsp;Choose from text-davinci-003, text-davinci-002, text-curie-001, text-babbage-001, text-ada-001. Description of the different engines you can find on <a href="https://beta.openai.com/docs/models/gpt-3">Models &#8211; </a><a href="https://beta.openai.com/docs/models/gpt-3">OpenAI</a><a href="https://beta.openai.com/docs/models/gpt-3"> API</a></td></tr><tr><td>prompt</td><td>And</td><td>string</td><td>The question or phrase you want ChatGPT to answer or complete. In our case, we use the text from the email formatted as a question</td></tr><tr><td>n</td><td>&nbsp;</td><td>Integer</td><td>How many responses should be generated. In our case 1</td></tr><tr><td>best_of</td><td>&nbsp;</td><td>Integer</td><td>If set to more than 1 then &nbsp;multiple response options are generated &#8220;server-side&#8221; and the best one is returned. In our case, this is set to 1</td></tr><tr><td>temperature</td><td>&nbsp;</td><td>float</td><td>Higher values mean that the model will take more risk. We set this to 1</td></tr><tr><td>max_tokens</td><td>&nbsp;</td><td>Integer</td><td>One token equals approximately 4 characters of text (up to 4000 tokens between command prompt and completion). We set to 100 now, this may need to be increased to take larger emails after finishing testing</td></tr><tr><td>frequency_penalty</td><td>&nbsp;</td><td>float</td><td>Numbers between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, reducing the models&#8217; likelihood of repeating the same line verbatim. &nbsp;In our case 0</td></tr><tr><td>presence_penalty</td><td>&nbsp;</td><td>float</td><td>Numbers between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the models&#8217; likelihood of talking about new topics. &nbsp;In our case 0</td></tr></tbody></table></figure>
  119.  
  120.  
  121.  
  122. <p>We use the following to generate our promt to the connector:</p>
  123.  
  124.  
  125.  
  126. <pre class="wp-block-preformatted">"can you create a reply in a " &amp; cmbTone.Selected.Value &amp; " tone to the following email: " &amp; txtEmailText. Text</pre>
  127.  
  128.  
  129.  
  130. <p>This will form a question for ChatGPT and it will create a reply to the text of the email in the &#8220;tone&#8221; we have chosen.<br>That means our call for Onselect on our button will be like this: </p>
  131.  
  132.  
  133.  
  134. <pre class="wp-block-preformatted">UpdateContext({locReply: Blank()});
  135.  
  136. UpdateContext(
  137.    {
  138.        locReply: 'OpenAI(IndependentPublisher)'. Completion(
  139.            "text-davinci-002",
  140.            "can you create a reply in a " &amp; cmbTone.Selected.Value &amp; " tone to the following email: " &amp; txtEmailInput.Text,
  141.            {
  142.                n: 1,
  143.                best_of: 1,
  144.                max_tokens: 100,
  145.                temperature: 1,
  146.                frequency_penalty: 0,
  147.                presence_penalty: 0
  148.            }
  149.        )
  150.    }
  151. );</pre>
  152.  
  153.  
  154.  
  155. <p></p>
  156.  
  157.  
  158.  
  159. <p>This formula will store the response in our variable locReply. What is missing then is to set &nbsp;the Text Input box from earlier to display the answer. Navigate the txtReplyText control and sett Default property to</p>
  160.  
  161.  
  162.  
  163. <pre class="wp-block-code"><code>First(locReply.choices.text).text</code></pre>
  164.  
  165.  
  166.  
  167. <p>This will extract the first response from ChatGPT and display it in the text field. In our case we will only get an answer and then this is what will appear.</p>
  168.  
  169.  
  170.  
  171. <p>Then we are ready to test. Run the Power App and paste the email in the left text field. You can test with this email text:</p>
  172.  
  173.  
  174.  
  175. <p class="has-white-background-color has-background has-small-font-size">Hi James,<br><br>We would like to invite you to our webinar the Wednesday 25 January to learn more about Power Platform and low-code. If you would like to attend please reply to this e-mail with your name and the words “Yes, I would like to attend your webinar on Power Platform”</p>
  176.  
  177.  
  178.  
  179. <p class="has-white-background-color has-background has-small-font-size">Hope to see you there.</p>
  180.  
  181.  
  182.  
  183. <p class="has-white-background-color has-background has-small-font-size">Best regards,<br>Austin Powers</p>
  184.  
  185.  
  186.  
  187. <p>Click on the Generate Reply button, wait for a couple of seconds and see the answer from ChatGPT.</p>
  188.  
  189.  
  190.  
  191. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18.png" data-rel="lightbox-image-4" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="574" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18-1024x574.png" alt="" class="wp-image-1286" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18-1024x574.png 1024w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18-300x168.png 300w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18-768x430.png 768w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18-1536x861.png 1536w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18-1250x700.png 1250w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h20_18.png 1702w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption class="wp-element-caption">Example reply in a nice tone</figcaption></figure>
  192.  
  193.  
  194.  
  195. <p>After some decorating and adjustment, the application may look like this:</p>
  196.  
  197.  
  198.  
  199. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h23_40.png" data-rel="lightbox-image-5" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="555" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h23_40-1024x555.png" alt="" class="wp-image-1287" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h23_40-1024x555.png 1024w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h23_40-300x163.png 300w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h23_40-768x416.png 768w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h23_40-1536x833.png 1536w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h23_40.png 1900w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>
  200.  
  201.  
  202.  
  203. <p>Time to test and ask for different types of answers. Here&#8217;s an example when we ask for an angry response:</p>
  204.  
  205.  
  206.  
  207. <figure class="wp-block-image size-full"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_00.png" data-rel="lightbox-image-6" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="799" height="713" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_00.png" alt="" class="wp-image-1288" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_00.png 799w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_00-300x268.png 300w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_00-768x685.png 768w" sizes="(max-width: 799px) 100vw, 799px" /></a><figcaption class="wp-element-caption">Angry reply</figcaption></figure>
  208.  
  209.  
  210.  
  211. <p>Or how about a sarcastic answer:</p>
  212.  
  213.  
  214.  
  215. <figure class="wp-block-image size-full"><a href="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_52.png" data-rel="lightbox-image-7" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="985" height="896" src="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_52.png" alt="" class="wp-image-1289" srcset="http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_52.png 985w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_52-300x273.png 300w, http://sharepoint247.com/wp-content/uploads/2023/01/2023-01-23_12h26_52-768x699.png 768w" sizes="(max-width: 985px) 100vw, 985px" /></a><figcaption class="wp-element-caption">A sarcastic reply</figcaption></figure>
  216.  
  217.  
  218.  
  219. <p>Try a few examples and see what you get <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f60a.png" alt="😊" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
  220.  
  221.  
  222.  
  223. <p>ChatGPT also understand other languages than English, so it is possible to ask in let&#8217;s say Norwegian and get answers in Norwegian.</p>
  224.  
  225.  
  226.  
  227. <p>The application can of course be extended to view emails from your Outlook directly,  so you don&#8217;t have to paste it here, and other enhancements, but for now we&#8217;ve shown how easy it is to get started  with ChatGPT together with Microsoft Power Platform.</p>The post <a href="http://sharepoint247.com/power-apps/how-to-use-chatgpt-from-power-apps/">How to use ChatGPT from Power Apps</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  228. <wfw:commentRss>http://sharepoint247.com/power-apps/how-to-use-chatgpt-from-power-apps/feed/</wfw:commentRss>
  229. <slash:comments>0</slash:comments>
  230. </item>
  231. <item>
  232. <title>How-to download a file from Dataverse File column in Power Apps canvas app</title>
  233. <link>http://sharepoint247.com/power-apps/how-to-download-a-file-from-dataverse-file-column-in-power-apps-canvas-app/</link>
  234. <comments>http://sharepoint247.com/power-apps/how-to-download-a-file-from-dataverse-file-column-in-power-apps-canvas-app/#comments</comments>
  235. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  236. <pubDate>Mon, 15 Nov 2021 10:02:56 +0000</pubDate>
  237. <category><![CDATA[Dataverse]]></category>
  238. <category><![CDATA[Power Apps]]></category>
  239. <category><![CDATA[Power Platform]]></category>
  240. <category><![CDATA[Canvas app]]></category>
  241. <guid isPermaLink="false">http://sharepoint247.com/?p=1233</guid>
  242.  
  243. <description><![CDATA[<p>If you want to download a file from a Dataverse File type column in your Power Apps canvas app, this is not as straightforward as you might think.I recently had&#8230;</p>
  244. The post <a href="http://sharepoint247.com/power-apps/how-to-download-a-file-from-dataverse-file-column-in-power-apps-canvas-app/">How-to download a file from Dataverse File column in Power Apps canvas app</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  245. <content:encoded><![CDATA[<p>If you want to download a file from a Dataverse File type column in your Power Apps canvas app, this is not as straightforward as you might think.<br>I recently had this requirement in a project and needed to figure out a way to do this. I started be taking a look at a Power Apps Model driven app. In a model driven app I&#8217;m able to download a file from a Dataverse File type column out of the box.<br>I looked at the URL for the file in the model driven app and got something like this:<br> <br>https://xxxxxxxxx.crm4.dynamics.com/api/data/v9.0/cr8f6_photolocationimages(e9c897ee-6344-ec11-8c62-6045bd8db1ac)/cr8f6_file/$value</p>
  246.  
  247.  
  248.  
  249. <figure class="wp-block-image size-full"><a href="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35.png" data-rel="lightbox-image-0" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="836" height="418" src="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35.png" alt="" class="wp-image-1237" srcset="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35.png 836w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35-300x150.png 300w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35-768x384.png 768w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35-400x200.png 400w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35-600x300.png 600w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-13_19h36_35-800x400.png 800w" sizes="(max-width: 836px) 100vw, 836px" /></a><figcaption>Model Driven app with the File type column</figcaption></figure>
  250.  
  251.  
  252.  
  253. <p>After examining the URL I find that the first part is the URL for the Power Platform Environment I&#8217;m working in. That&#8217;s the  https://xxxxxxxxx.crm4.dynamics.com  part.  <br>The next bit is the URL to the Dataverse API, api/data/v9.0, next is the name of my table, in my case  cr8f6_photolocationimages.<br>Next is the Unique identifier for this record in the table,  e9c897ee-6344-ec11-8c62-6045bd8db1ac <br>And last is the name of my File type column,  cr8f6_file </p>
  254.  
  255.  
  256.  
  257. <p>So I figured if I could generate the same URL in my Canvas App, that would make me able to download the file.</p>
  258.  
  259.  
  260.  
  261. <h4>Environment variable</h4>
  262.  
  263.  
  264.  
  265. <p>I created a new solution at <a href="https://make.poweraps.com" target="_blank" rel="noreferrer noopener">make.powerapps.com</a> and crated an Environment Variable there to hold the URL for my environment.<br>Click New, Other and Environment Variable in your solution to add the New Environment Variable. Give it a Name, set Data Type toText and add a Current Value with the URL to your environment.</p>
  266.  
  267.  
  268.  
  269. <figure class="wp-block-image size-full"><a href="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h19_14.png" data-rel="lightbox-image-1" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="334" height="716" src="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h19_14.png" alt="" class="wp-image-1240" srcset="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h19_14.png 334w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h19_14-140x300.png 140w" sizes="(max-width: 334px) 100vw, 334px" /></a></figure>
  270.  
  271.  
  272.  
  273. <p>Create a table in dataverse with a File type column. In my example I created a table named PhotoLocationImages and created a File type column named File.</p>
  274.  
  275.  
  276.  
  277. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h30_16.png" data-rel="lightbox-image-2" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="308" src="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h30_16-1024x308.png" alt="" class="wp-image-1247" srcset="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h30_16-1024x308.png 1024w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h30_16-300x90.png 300w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h30_16-768x231.png 768w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h30_16-400x120.png 400w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h30_16.png 1332w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>
  278.  
  279.  
  280.  
  281. <h4>Canvas App</h4>
  282.  
  283.  
  284.  
  285. <p>Now edit your canvas app, or create a new one in the same solution. In the Power App naviage to data and add a few data sources. Add Environment Variables Values and Environment Variable Definitions and your table with the File column you want to download from. In my case the table is PhotoLocationImages.</p>
  286.  
  287.  
  288.  
  289. <figure class="wp-block-image size-full"><a href="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h45_55.png" data-rel="lightbox-image-3" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="575" height="556" src="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h45_55.png" alt="" class="wp-image-1242" srcset="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h45_55.png 575w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h45_55-300x290.png 300w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_08h45_55-400x387.png 400w" sizes="(max-width: 575px) 100vw, 575px" /></a><figcaption>The datasources for the Canvas app</figcaption></figure>
  290.  
  291.  
  292.  
  293. <p>Add a gallery to your canvas app and set the datasource to your table. For this demo it will be PhotoLocationImages.<br>In your applications OnStart set a global variable to the URL of your environment. We will get this from the Environment Variable we created earlier.</p>
  294.  
  295.  
  296.  
  297. <pre class="wp-block-code"><code>Set(
  298.    glbEnvURL,
  299.    LookUp(
  300.        'Environment Variable Values',
  301.        'Environment Variable Definition'.'Schema Name' = "bv_EnvironmentURL"
  302.    ).Value
  303. );</code></pre>
  304.  
  305.  
  306.  
  307. <p>In the Gallery add a label and set its Text property to ThisItem.File.Filename. File is the name of my File type column in Dataverse. This will show the filename of your file.<br>Add an icon and set its OnSelct property to the following formula</p>
  308.  
  309.  
  310.  
  311. <pre class="wp-block-code"><code>Launch(glbEnvURL &amp;amp; "/api/data/v9.0/cr8f6_photolocationimages(" &amp;amp; ThisItem.PhotoLocationImage &amp;amp; ")/cr8f6_file/$value")</code></pre>
  312.  
  313.  
  314.  
  315. <p> cr8f6_photolocationimages is the name of my Dataverse table and  cr8f6_file  is the name of the File type column.<br>This will create a URL like the following for the click of the icon<br> https://xxxxxxxxx.crm4.dynamics.com/api/data/v9.0/cr8f6_photolocationimages(e9c897ee-6344-ec11-8c62-6045bd8db1ac)/cr8f6_file/$value <br>This is the same type URL as that of a model driven app and will download the file from your canvas app</p>
  316.  
  317.  
  318.  
  319. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h08_48-1.png" data-rel="lightbox-image-4" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="580" src="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h08_48-1-1024x580.png" alt="" class="wp-image-1246" srcset="http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h08_48-1-1024x580.png 1024w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h08_48-1-300x170.png 300w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h08_48-1-768x435.png 768w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h08_48-1-400x227.png 400w, http://sharepoint247.com/wp-content/uploads/2021/11/2021-11-15_09h08_48-1.png 1347w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>
  320.  
  321.  
  322.  
  323. <p>Run your app and click on the icon to download a file from the dataverse table. assuming you have uploaded som files to test <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>The post <a href="http://sharepoint247.com/power-apps/how-to-download-a-file-from-dataverse-file-column-in-power-apps-canvas-app/">How-to download a file from Dataverse File column in Power Apps canvas app</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  324. <wfw:commentRss>http://sharepoint247.com/power-apps/how-to-download-a-file-from-dataverse-file-column-in-power-apps-canvas-app/feed/</wfw:commentRss>
  325. <slash:comments>2</slash:comments>
  326. </item>
  327. <item>
  328. <title>Power Apps &#8211; filter datasource for records between two dates</title>
  329. <link>http://sharepoint247.com/power-apps/power-apps-filter-datasource-for-records-between-two-dates/</link>
  330. <comments>http://sharepoint247.com/power-apps/power-apps-filter-datasource-for-records-between-two-dates/#respond</comments>
  331. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  332. <pubDate>Fri, 08 Oct 2021 14:13:28 +0000</pubDate>
  333. <category><![CDATA[Dataverse]]></category>
  334. <category><![CDATA[Power Apps]]></category>
  335. <category><![CDATA[Power Platform]]></category>
  336. <guid isPermaLink="false">http://sharepoint247.com/?p=1207</guid>
  337.  
  338. <description><![CDATA[<p>Filter a gallery control to show only items between two dates selected from two datepickers. In this example I added two datepickers to the canvas. Name them dtFromDate and dtToDate.I&#8230;</p>
  339. The post <a href="http://sharepoint247.com/power-apps/power-apps-filter-datasource-for-records-between-two-dates/">Power Apps – filter datasource for records between two dates</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  340. <content:encoded><![CDATA[<p>Filter a gallery control to show only items between two dates selected from two datepickers.</p>
  341.  
  342.  
  343.  
  344. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_15h28_57.gif" data-rel="lightbox-image-0" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="1024" height="572" src="http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_15h28_57-1024x572.gif" alt="" class="wp-image-1211" srcset="http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_15h28_57-1024x572.gif 1024w, http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_15h28_57-300x167.gif 300w, http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_15h28_57-768x429.gif 768w, http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_15h28_57-400x223.gif 400w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption> Gallery listing items between two dates </figcaption></figure>
  345.  
  346.  
  347.  
  348. <p>In this example I added two datepickers to the canvas. Name them dtFromDate and dtToDate.<br>I then added a vertical gallery control and named it glShoots.<br>I added a datasource named Photoshoots. In my example this is a Dataverse table, but a SharePoint list with two date columns should work the same.</p>
  349.  
  350.  
  351.  
  352. <figure class="wp-block-image size-full"><a href="http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_16h05_10.png" data-rel="lightbox-image-1" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="751" height="619" src="http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_16h05_10.png" alt="" class="wp-image-1216" srcset="http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_16h05_10.png 751w, http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_16h05_10-300x247.png 300w, http://sharepoint247.com/wp-content/uploads/2021/10/2021-10-08_16h05_10-400x330.png 400w" sizes="(max-width: 751px) 100vw, 751px" /></a></figure>
  353.  
  354.  
  355.  
  356. <p>In the Items properties of the gallery we will put this formula:</p>
  357.  
  358.  
  359.  
  360. <pre class="wp-block-code"><code>Filter(Photoshoots,FromShootDate &amp;gt;= dtFromDate.SelectedDate And ToShootDate &amp;lt;= dtToDate.SelectedDate)</code></pre>
  361.  
  362.  
  363.  
  364. <p>This will filter the gallery to only show items betwen the two selected dates.</p>
  365.  
  366.  
  367.  
  368. <p>If we wanted the opposite to happen, not show any records from the selected dates, we would replace the formula in the Items property in the gallery with something like this:</p>
  369.  
  370.  
  371.  
  372. <pre class="wp-block-code"><code>Filter(Photoshoots,FromShootDate &amp;gt; dtToDate.SelectedDate Or ToShootDate &amp;lt; dtFromDate.SelectedDate)</code></pre>The post <a href="http://sharepoint247.com/power-apps/power-apps-filter-datasource-for-records-between-two-dates/">Power Apps – filter datasource for records between two dates</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  373. <wfw:commentRss>http://sharepoint247.com/power-apps/power-apps-filter-datasource-for-records-between-two-dates/feed/</wfw:commentRss>
  374. <slash:comments>0</slash:comments>
  375. </item>
  376. <item>
  377. <title>How to loop through more than 100 000 records in a Dataverse table</title>
  378. <link>http://sharepoint247.com/flow/how-to-loop-through-more-than-100-000-records-in-a-dataverse-table/</link>
  379. <comments>http://sharepoint247.com/flow/how-to-loop-through-more-than-100-000-records-in-a-dataverse-table/#comments</comments>
  380. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  381. <pubDate>Mon, 05 Jul 2021 08:55:14 +0000</pubDate>
  382. <category><![CDATA[Dataverse]]></category>
  383. <category><![CDATA[Flow]]></category>
  384. <category><![CDATA[Power Platform]]></category>
  385. <category><![CDATA[Power Automate]]></category>
  386. <guid isPermaLink="false">http://sharepoint247.com/?p=1059</guid>
  387.  
  388. <description><![CDATA[<p>When using the List Row&#8217;s action in Power Automates Dataverse connector, the default item limit is 5000 items. If your table contains more than 5,000 records, you can enable Pagination&#8230;</p>
  389. The post <a href="http://sharepoint247.com/flow/how-to-loop-through-more-than-100-000-records-in-a-dataverse-table/">How to loop through more than 100 000 records in a Dataverse table</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  390. <content:encoded><![CDATA[<p>When using the List Row&#8217;s action in Power Automates Dataverse connector, the default item limit is 5000 items.</p>
  391.  
  392.  
  393.  
  394. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/content.png" data-rel="lightbox-image-0" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="905" height="1024" src="http://sharepoint247.com/wp-content/uploads/2021/07/content-905x1024.png" alt="" class="wp-image-1060" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/content-905x1024.png 905w, http://sharepoint247.com/wp-content/uploads/2021/07/content-265x300.png 265w, http://sharepoint247.com/wp-content/uploads/2021/07/content-768x869.png 768w, http://sharepoint247.com/wp-content/uploads/2021/07/content.png 960w" sizes="(max-width: 905px) 100vw, 905px" /></a></figure>
  395.  
  396.  
  397.  
  398. <p>If your table contains more than 5,000 records, you can enable Pagination in settings on List rows action. This can give you up to 100,000 records.</p>
  399.  
  400.  
  401.  
  402. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_08h56_32.png" data-rel="lightbox-image-1" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="645" height="357" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_08h56_32.png" alt="" class="wp-image-1061" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_08h56_32.png 645w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_08h56_32-300x166.png 300w" sizes="(max-width: 645px) 100vw, 645px" /></a></figure>
  403.  
  404.  
  405.  
  406. <p>If the table has more than 100,000 records, you&#8217;ll need to use slightly different techniques to return all records. This involves turning off Pagination in List Row&#8217;s action and using Skip Token instead. When Pagination is not on, the response from the action will contain a @odata.nextLink parameter that can be used to query for the next set of records. When Pagination is off, 5,000 records are default per request. By parsing @odata. NextLink and get the skip token you can use this in the next query with List rows to get the next 5000 records. That’s how you can loop until @odata.nextLink is empty, then you should get all records.</p>
  407.  
  408.  
  409.  
  410. <h2>Power Automate flow sample to retrieve all records</h2>
  411.  
  412.  
  413.  
  414. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h10_03.png" data-rel="lightbox-image-2" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="686" height="549" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h10_03.png" alt="" class="wp-image-1062" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h10_03.png 686w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h10_03-300x240.png 300w" sizes="(max-width: 686px) 100vw, 686px" /></a></figure>
  415.  
  416.  
  417.  
  418. <p>First a List Rows, no Pagination on. This will return the first 5,000 records and return a @odata. NextLink parameter with a ship token we can use to get the next 5000 records.</p>
  419.  
  420.  
  421.  
  422. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h16_36.png" data-rel="lightbox-image-3" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="748" height="292" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h16_36.png" alt="" class="wp-image-1063" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h16_36.png 748w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h16_36-300x117.png 300w" sizes="(max-width: 748px) 100vw, 748px" /></a></figure>
  423.  
  424.  
  425.  
  426. <p>After first querying with List Rows, we will get a @odata.nextLink (if the table contains more than 5000 records). We need to parse this to get the Skip token. Skip Token should be used in the next query with List Rows to get that in the next set of records. Create a String variable and use the following expression to obtain Skip Token:</p>
  427.  
  428.  
  429.  
  430. <pre class="wp-block-preformatted">if
  431. (
  432.    empty
  433.    (
  434.        outputs('List_rows_2')?['body/@odata.nextLink']
  435.    ),
  436.    '',
  437.    decodeUriComponent
  438.    (
  439.        last
  440.        (
  441.            split
  442.            (
  443.                uriQuery(outputs('List_rows_2')?['body/@odata.nextLink']),
  444.                'skiptoken='
  445.            )
  446.        )
  447.    )
  448. )
  449. </pre>
  450.  
  451.  
  452.  
  453. <p>&#8220;List_rows_2&#8221; is the name of your List Row action</p>
  454.  
  455.  
  456.  
  457. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h35_55.png" data-rel="lightbox-image-4" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="786" height="453" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h35_55.png" alt="" class="wp-image-1064" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h35_55.png 786w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h35_55-300x173.png 300w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h35_55-768x443.png 768w" sizes="(max-width: 786px) 100vw, 786px" /></a></figure>
  458.  
  459.  
  460.  
  461. <p>Then set up a Do until loop where we loop until there is no return of a @odata.nextLink, which means we have got all records.</p>
  462.  
  463.  
  464.  
  465. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h19_29.png" data-rel="lightbox-image-5" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="747" height="766" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h19_29.png" alt="" class="wp-image-1065" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h19_29.png 747w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_09h19_29-293x300.png 293w" sizes="(max-width: 747px) 100vw, 747px" /></a></figure>
  466.  
  467.  
  468.  
  469. <p>We need the new Skip Token from the List Rows query inside the Do until loop. Use expression, refer to List rows in the loop and get your hands on the next ship token.&nbsp;This Skip Token is used in List Rows in the do Unit loop.</p>
  470.  
  471.  
  472.  
  473. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h34_07.png" data-rel="lightbox-image-6" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="721" height="922" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h34_07.png" alt="" class="wp-image-1066" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h34_07.png 721w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h34_07-235x300.png 235w" sizes="(max-width: 721px) 100vw, 721px" /></a></figure>
  474.  
  475.  
  476.  
  477. <p>In addition to this, we have to change the timeout value of the Do until loop. default is that it has a timeout of 1 hour. This is far too small when we talk about over 100,000 records. Click on Change limits and change the timeout to e.g. PT30H this is a timeout of 30 hours for the Do until loop. Timeout value uses<a href="https://en.wikipedia.org/wiki/ISO_8601" target="_blank" rel="noreferrer noopener"> ISO 8601 standard</a></p>
  478.  
  479.  
  480.  
  481. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_11h11_16.png" data-rel="lightbox-image-7" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="768" height="313" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_11h11_16.png" alt="" class="wp-image-1068" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_11h11_16.png 768w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_11h11_16-300x122.png 300w" sizes="(max-width: 768px) 100vw, 768px" /></a></figure>
  482.  
  483.  
  484.  
  485. <p>Power Autmate should now loop through all records in a dataverse table. My test of about 200 000 rows in a table took close to 30 hours to run.</p>
  486.  
  487.  
  488.  
  489. <h2>Power Automate Flow Overview</h2>
  490.  
  491.  
  492.  
  493. <figure class="wp-block-image size-large"><a href="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h39_08.png" data-rel="lightbox-image-8" data-rl_title="" data-rl_caption="" title=""><img decoding="async" loading="lazy" width="621" height="1024" src="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h39_08-621x1024.png" alt="" class="wp-image-1071" srcset="http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h39_08-621x1024.png 621w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h39_08-182x300.png 182w, http://sharepoint247.com/wp-content/uploads/2021/07/2021-06-30_10h39_08.png 743w" sizes="(max-width: 621px) 100vw, 621px" /></a></figure>
  494.  
  495.  
  496.  
  497. <h2>References</h2>
  498.  
  499.  
  500.  
  501. <p><a href="https://linnzawwin.blogspot.com/2021/01/retrieve-more-than-100000-dataverse.html">Retrieve more than 100,000 Dataverse Rows with List Records Action in Cloud Flow Using Skip Token (linnzawwin.blogspot.com)</a></p>
  502.  
  503.  
  504.  
  505. <p><a href="https://docs.microsoft.com/en-us/power-automate/dataverse/list-rows">Use lists of rows in flows &#8211; Power Automate | Microsoft Docs</a></p>The post <a href="http://sharepoint247.com/flow/how-to-loop-through-more-than-100-000-records-in-a-dataverse-table/">How to loop through more than 100 000 records in a Dataverse table</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  506. <wfw:commentRss>http://sharepoint247.com/flow/how-to-loop-through-more-than-100-000-records-in-a-dataverse-table/feed/</wfw:commentRss>
  507. <slash:comments>1</slash:comments>
  508. </item>
  509. <item>
  510. <title>Power Platform Governance</title>
  511. <link>http://sharepoint247.com/power-apps/power-platform-governance/</link>
  512. <comments>http://sharepoint247.com/power-apps/power-platform-governance/#respond</comments>
  513. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  514. <pubDate>Fri, 25 Sep 2020 13:00:23 +0000</pubDate>
  515. <category><![CDATA[Power Apps]]></category>
  516. <category><![CDATA[Power Platform]]></category>
  517. <category><![CDATA[ALM]]></category>
  518. <guid isPermaLink="false">http://sharepoint247.com/?p=1036</guid>
  519.  
  520. <description><![CDATA[<p>Now that Microsoft Power Platform is growing and more and more customers have users who ask, or are already creating apps, it becomes more and more important to have good&#8230;</p>
  521. The post <a href="http://sharepoint247.com/power-apps/power-platform-governance/">Power Platform Governance</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  522. <content:encoded><![CDATA[<p>Now that Microsoft Power Platform is growing and more and more customers have users who ask, or are already creating apps, it becomes more and more important to have good governance on the platform.</p>
  523.  
  524.  
  525.  
  526. <figure class="wp-block-image size-large is-resized"><img decoding="async" loading="lazy" src="http://sharepoint247.com/wp-content/uploads/2020/09/Picture1-1.png" alt="" class="wp-image-1037" width="818" height="443" srcset="http://sharepoint247.com/wp-content/uploads/2020/09/Picture1-1.png 605w, http://sharepoint247.com/wp-content/uploads/2020/09/Picture1-1-300x163.png 300w" sizes="(max-width: 818px) 100vw, 818px" /></figure>
  527.  
  528.  
  529.  
  530. <p>Fortunately, Microsoft has come up with a lot of great tools to help us with just that.</p>
  531.  
  532.  
  533.  
  534. <h4>Environments</h4>
  535.  
  536.  
  537.  
  538. <p>A Power Platform environment is a container that can be used to distinguish applications that, for example, need different security settings, roles, audiences, etc.<br>It is also used to distinguish between Development, Test/QA and Production environment.</p>
  539.  
  540.  
  541.  
  542. <figure class="wp-block-image size-large is-resized"><img decoding="async" loading="lazy" src="http://sharepoint247.com/wp-content/uploads/2020/09/Picture2-1.png" alt="" class="wp-image-1038" width="818" height="438" srcset="http://sharepoint247.com/wp-content/uploads/2020/09/Picture2-1.png 605w, http://sharepoint247.com/wp-content/uploads/2020/09/Picture2-1-300x161.png 300w" sizes="(max-width: 818px) 100vw, 818px" /></figure>
  543.  
  544.  
  545.  
  546. <p>There are several types of Environments on the Power Platform, including a Default environment that comes with your Microsoft 365 tenant.</p>
  547.  
  548.  
  549.  
  550. <p><strong>The default environment</strong> has special characteristics, all licensed user in your Microsoft 365 tenant is automatically assigned to Environment Maker roles, that means they have access to create Power Apps in this environment. The default environment is intended for personal exploration and increased productivity by expanding functionality in Microsoft 365. It is not recommended to run apps in production in the Default environment. Another best practice is to rename Default too a more descriptive name to show it’s real purpose, such as &#8220;Personal Productivity.&#8221;<br>The default environment cannot be deleted, and storage space is limited to 32 GB.</p>
  551.  
  552.  
  553.  
  554. <p><strong>Trial environment</strong>, intended for quick testing of functionality and is automatically deleted after 30 days. Limited to a user. Can be changed to a Production environment.</p>
  555.  
  556.  
  557.  
  558. <p><strong>Sandbox environment, </strong>not intended for production. Typically used for development and testing. A sandbox environment can be reset so that all data is deleted or copied so that production data is updated for testing.</p>
  559.  
  560.  
  561.  
  562. <p><strong>Production environment, </strong>as the name says, this is the type of environment you should create for your production applications and data. You can have multiple Production environment in your tenant.</p>
  563.  
  564.  
  565.  
  566. <p><strong>Teams environment</strong>, Microsoft has just released Project Oakdale, this is Power Apps for Teams and contains a Common Data Service database for each Team where a Power App is being developed. Your tenant will then get a Microsoft team environment for each of these Teams.</p>
  567.  
  568.  
  569.  
  570. <figure class="wp-block-image size-large"><img decoding="async" loading="lazy" width="1024" height="266" src="http://sharepoint247.com/wp-content/uploads/2020/09/2020-09-24_12h51_22-1-1024x266.png" alt="" class="wp-image-1039" srcset="http://sharepoint247.com/wp-content/uploads/2020/09/2020-09-24_12h51_22-1-1024x266.png 1024w, http://sharepoint247.com/wp-content/uploads/2020/09/2020-09-24_12h51_22-1-300x78.png 300w, http://sharepoint247.com/wp-content/uploads/2020/09/2020-09-24_12h51_22-1-768x199.png 768w, http://sharepoint247.com/wp-content/uploads/2020/09/2020-09-24_12h51_22-1.png 1314w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
  571.  
  572.  
  573.  
  574. <p>This will make developing Power Apps even more accessible to <a href="https://www.gartner.com/en/information-technology/glossary/citizen-developer" target="_blank" rel="noreferrer noopener">Citizen Development</a> and only make good governance even more important.</p>
  575.  
  576.  
  577.  
  578. <p>When you create a Power Platform environment, you choose, among other things, which region your environment will be created in. Best practice is to create the one where the user who will run the application exists, possibly close to where data is stored. As of today, the following regions are available.</p>
  579.  
  580.  
  581.  
  582. <figure class="wp-block-image size-large"><img decoding="async" loading="lazy" width="301" height="430" src="http://sharepoint247.com/wp-content/uploads/2020/09/Picture3.png" alt="" class="wp-image-1040" srcset="http://sharepoint247.com/wp-content/uploads/2020/09/Picture3.png 301w, http://sharepoint247.com/wp-content/uploads/2020/09/Picture3-210x300.png 210w" sizes="(max-width: 301px) 100vw, 301px" /></figure>
  583.  
  584.  
  585.  
  586. <p>An environment can also be used to apply different rules for which connectors should be allowed to use. Among other things, it can be used to control which systems Power Apps created in the Default environment should be allowed to connect to. This is configured via so-called Data Loss Prevention (DLP) Prevention policies.</p>
  587.  
  588.  
  589.  
  590. <h4>Unmanaged and Managed Solutions</h4>
  591.  
  592.  
  593.  
  594. <p>In a larger environment, it is recommended to build solutions on the Power Platform as so-called Solutions. Simply explained, a Solution can contain one or more Power Apps, Power Automate flows, entities to the database, etc. All of this is packaged as a solution and allows you to move everything from one environment to another, or to another Microsoft 365 tenant.</p>
  595.  
  596.  
  597.  
  598. <p>There are two types of Solutions, Managed and Unmanaged, Unmanaged solutions are typically used during development. An Unmanaged solution can be configured, customized, and modified. During development, solutions are exported as Unmanaged and stored in a source code system.</p>
  599.  
  600.  
  601.  
  602. <p>In any type of Power Platform environment other than development, you typically want to use a Managed Solution. A Managed Solution is locked, and you can not directly change it.</p>
  603.  
  604.  
  605.  
  606. <h4>Application Lifecycle Management</h4>
  607.  
  608.  
  609.  
  610. <p>To support Application Lifecycle Management processes, Microsoft has released Power Platform Build Tools for Azure Devops. It allows us to create pipelines on Devops to automate processes such as copying solutions to source code system, copying solutions between the different Power Platform environments such as from Development to Test and to Production. We can automate and make solutions into Managed Solution in environment other than development, etc.</p>
  611.  
  612.  
  613.  
  614. <figure class="wp-block-image size-large is-resized"><img decoding="async" loading="lazy" src="http://sharepoint247.com/wp-content/uploads/2020/09/Picture4.png" alt="" class="wp-image-1041" width="988" height="554" srcset="http://sharepoint247.com/wp-content/uploads/2020/09/Picture4.png 605w, http://sharepoint247.com/wp-content/uploads/2020/09/Picture4-300x168.png 300w" sizes="(max-width: 988px) 100vw, 988px" /></figure>
  615.  
  616.  
  617.  
  618. <p>On the 22 September 2020 Microsoft announced that GitHub actions for Power Platform is now available in preview. so now we have much the same functionality on GitHub<br><a href="https://powerapps.microsoft.com/en-us/blog/github-actions-for-the-power-platform-now-available-in-preview/" target="_blank" rel="noreferrer noopener" title="https://powerapps.microsoft.com/en-us/blog/github-actions-for-the-power-platform-now-available-in-preview/">https://powerapps.microsoft.com/en-us/blog/github-actions-for-the-power-platform-now-available-in-preview/</a></p>
  619.  
  620.  
  621.  
  622. <h4>Power Platform Center of Excellence starter kit</h4>
  623.  
  624.  
  625.  
  626. <p>Microsoft has released a Center of Excellence starter kit for Power Platform. This is installed as a solution to a Power Platform environment in the Microsoft 365 tenant.</p>
  627.  
  628.  
  629.  
  630. <p>The Power Platform CoE kit provides a tool to get started developing a strategy to deploy, maintain and support power platform, focusing on Power Apps and Power Automate.</p>
  631.  
  632.  
  633.  
  634. <figure class="wp-block-image size-large is-resized"><img decoding="async" loading="lazy" src="http://sharepoint247.com/wp-content/uploads/2020/09/Picture5.png" alt="" class="wp-image-1042" width="925" height="484" srcset="http://sharepoint247.com/wp-content/uploads/2020/09/Picture5.png 604w, http://sharepoint247.com/wp-content/uploads/2020/09/Picture5-300x157.png 300w" sizes="(max-width: 925px) 100vw, 925px" /></figure>
  635.  
  636.  
  637.  
  638. <p>The Power Platform CoE kit gives you an overview of your Power Platform environments, you see who and where applications are made, and where automations with Power Automate are made, and by who. You can decide what information needs to be in place for a Power App to comply with your company&#8217;s application policies, and what happens to Power Apps that do not follow these policies.</p>
  639.  
  640.  
  641.  
  642. <p>There are modules to support and contribute to an active internal Power Platform community of app makers.</p>
  643.  
  644.  
  645.  
  646. <p>The Power Platform CoE kit is built up by a set of Power Apps, Power Automate flows and Power Bi reports to automate management tasks and report on Power Platform.</p>
  647.  
  648.  
  649.  
  650. <h4>References</h4>
  651.  
  652.  
  653.  
  654. <p><a href="https://docs.microsoft.com/en-us/power-platform/guidance/coe/starter-kit">Microsoft Power Platform Center and Excellence (coE) Starter Kit</a></p>
  655.  
  656.  
  657.  
  658. <p><a href="file:///C:/Users/arild.aarnes/AppData/Local/Temp/OpenLiveWriter-2012105011/C25CD020C371/Application%20lifecycle%20management%20(ALM)%20with%20Microsoft%20Power%20Platform">Application lifecycle management (ALM) with Microsoft Power Platform</a></p>
  659.  
  660.  
  661.  
  662. <p><a href="https://powerapps.microsoft.com/en-us/blog/establishing-an-environment-strategy-for-microsoft-power-platform/">Establishing an Environment Strategy for Microsoft Power Platform</a></p>The post <a href="http://sharepoint247.com/power-apps/power-platform-governance/">Power Platform Governance</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  663. <wfw:commentRss>http://sharepoint247.com/power-apps/power-platform-governance/feed/</wfw:commentRss>
  664. <slash:comments>0</slash:comments>
  665. </item>
  666. <item>
  667. <title>The Microsoft Power Apps licensing model does not scale well</title>
  668. <link>http://sharepoint247.com/office-365/the-microsoft-power-apps-licensing-model-does-not-scale-well/</link>
  669. <comments>http://sharepoint247.com/office-365/the-microsoft-power-apps-licensing-model-does-not-scale-well/#respond</comments>
  670. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  671. <pubDate>Fri, 06 Dec 2019 14:10:00 +0000</pubDate>
  672. <category><![CDATA[Apps]]></category>
  673. <category><![CDATA[Licensing]]></category>
  674. <category><![CDATA[Office 365]]></category>
  675. <category><![CDATA[Power Apps]]></category>
  676. <category><![CDATA[PowerApps]]></category>
  677. <guid isPermaLink="false">http://sharepoint247.com/?p=1018</guid>
  678.  
  679. <description><![CDATA[<p>Microsoft started a new licensing model for Power Apps (and Power Automate) from October 2019. I believe the intention was to simplify the earlier licensing model, and to give a&#8230;</p>
  680. The post <a href="http://sharepoint247.com/office-365/the-microsoft-power-apps-licensing-model-does-not-scale-well/">The Microsoft Power Apps licensing model does not scale well</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  681. <content:encoded><![CDATA[<p>Microsoft started a new licensing model for Power Apps (and Power Automate) from October 2019.</p>
  682.  
  683.  
  684.  
  685. <p>I believe the intention was to simplify the earlier licensing model, and to give a less expensive starting point with the new pr. app. licensing option.</p>
  686.  
  687.  
  688.  
  689. <p>You already are licensed for&nbsp;limited Power Apps functionality via your Office 365 license. As long as you are doing Office 365 stuff with your Power App, like using connectors for SharePoint, Teams, Planner, OneDrive, Outlook etc. you are probably already covered with your Office 365 user license.</p>
  690.  
  691.  
  692.  
  693. <p>If you need to access data in the CDS (Common Data Service), On-Prem data, any premium connector or custom connector then you will need to license Power Apps separately.</p>
  694.  
  695.  
  696.  
  697. <p>The new model has two options, the pr.app. model where you license an app and gives the user access to the full capabilities in Power Apps. This allows your users to run 2 Power Apps and 1 Power App Portal. The cost is $10 pr. app pr. user pr. month</p>
  698.  
  699.  
  700.  
  701. <p>Option two is to go for the pr. user license. This gives the user permission to run an unlimited number of Power Apps with full capabilities, e.g premium connectors</p>
  702.  
  703.  
  704.  
  705. <p>The cost for the pr. user license is $40 pr.user pr.month</p>
  706.  
  707.  
  708.  
  709. <p>So far so good but when you begin to add all of this together the problems begin. Lets do that with an example and lets use the same scenario Microsoft uses in the session from Ignite called&nbsp; <a rel="noreferrer noopener" href="https://myignite.techcommunity.microsoft.com/sessions/83522?source=sessions" target="_blank">“Planning and managing licensing and capacity for Power Apps and Power Automate from Ignite”</a>. the session is well worth watching and the scenario there are something like this:</p>
  710.  
  711.  
  712.  
  713. <figure class="wp-block-image size-large"><img decoding="async" loading="lazy" width="1024" height="335" src="http://sharepoint247.com/wp-content/uploads/2019/12/2019-12-06_13h35_10-1-1024x335.png" alt="" class="wp-image-1020" srcset="http://sharepoint247.com/wp-content/uploads/2019/12/2019-12-06_13h35_10-1-1024x335.png 1024w, http://sharepoint247.com/wp-content/uploads/2019/12/2019-12-06_13h35_10-1-300x98.png 300w, http://sharepoint247.com/wp-content/uploads/2019/12/2019-12-06_13h35_10-1-768x251.png 768w, http://sharepoint247.com/wp-content/uploads/2019/12/2019-12-06_13h35_10-1-1536x503.png 1536w, http://sharepoint247.com/wp-content/uploads/2019/12/2019-12-06_13h35_10-1.png 1898w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
  714.  
  715.  
  716.  
  717. <p>www.Sharepoint247.com                
  718.  
  719.    
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731. </p>
  732.  
  733.  
  734.  
  735. <p>Company with 7300 users, they have 2000 users that can make do with the license they already have included in their Office 365 user license. They have 300 users running one Power App that needs premium features so they will buy pr. app licenses for those. And then they have 5000 users that are running several applications using premium features so they will get pr. user licenses for those. Sounds good? So, lets add all that up?</p>
  736.  
  737.  
  738.  
  739. <figure class="wp-block-table"><table class=""><tbody><tr><td></td><td></td></tr><tr><td>300 pr.app licenses = 300 * $10 * 12 Months</td><td>$36 000 pr. year</td></tr><tr><td>5000 pr. user licenses = 5000 * $40 * 12 Months</td><td>$2 400 000 pr. year</td></tr><tr><td>For a total of</td><td><strong>$2 436 000 pr. year</strong></td></tr></tbody></table></figure>
  740.  
  741.  
  742.  
  743. <p>That’s a bit much, don&#8217;t you think? </p>
  744.  
  745.  
  746.  
  747. <p>I mean I could easily employee a few developers to develop great solutions, save a bunch of money and pay no extra licenses. So unless you know you a going to produce many Power Apps, and perhaps replace several other licensed applications, this is way to expensive.</p>
  748.  
  749.  
  750.  
  751. <p>So this licensing model does not scale well at all. If you are a small company you could create a lot of great applications on the Power Platform and pay a reasonable license fee. But for a large company this would be way to expensive. There will be alternative ways to solve problems much cheaper.</p>
  752.  
  753.  
  754.  
  755. <p>What is needed is some sort of Enterprise license where a large company would be able to utilize the Power Platform and pay a cost that is a bit more reasonable.</p>
  756.  
  757.  
  758.  
  759. <p>For more information see:</p>
  760.  
  761.  
  762.  
  763. <p><a href="https://docs.microsoft.com/en-us/power-platform/admin/pricing-billing-skus" target="_blank" rel="noreferrer noopener">Licensing overview for Power Platform</a></p>
  764.  
  765.  
  766.  
  767. <p><a href="https://myignite.techcommunity.microsoft.com/sessions/83522?source=sessions" target="_blank" rel="noreferrer noopener">“Planning and managing licensing and capacity for Power Apps and Power Automate from Ignite”</a></p>
  768.  
  769.  
  770.  
  771. <p><a href="/Users/arild.aarnes/AppData/Local/Temp/OpenLiveWriter-2012105011/supfiles323C69A/Power%20Apps%20Power%20Automate%20and%20Power%20Virtual%20Agents%20Licensing%20Guide%20-%20Dec%202019.pdf" target="_blank" rel="noreferrer noopener">“Microsoft Power Apps, Microsoft Power Automate and Microsoft Power Virtual Agents Licensing Guide”</a></p>The post <a href="http://sharepoint247.com/office-365/the-microsoft-power-apps-licensing-model-does-not-scale-well/">The Microsoft Power Apps licensing model does not scale well</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  772. <wfw:commentRss>http://sharepoint247.com/office-365/the-microsoft-power-apps-licensing-model-does-not-scale-well/feed/</wfw:commentRss>
  773. <slash:comments>0</slash:comments>
  774. </item>
  775. <item>
  776. <title>Organize your teams in Microsoft Teams – Part 1</title>
  777. <link>http://sharepoint247.com/uncategorized/organize-your-teams-in-microsoft-teams-part-1/</link>
  778. <comments>http://sharepoint247.com/uncategorized/organize-your-teams-in-microsoft-teams-part-1/#respond</comments>
  779. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  780. <pubDate>Wed, 13 Nov 2019 09:43:34 +0000</pubDate>
  781. <category><![CDATA[Apps]]></category>
  782. <category><![CDATA[Microsoft Teams]]></category>
  783. <category><![CDATA[Office 365]]></category>
  784. <category><![CDATA[PowerApps]]></category>
  785. <category><![CDATA[Uncategorized]]></category>
  786. <guid isPermaLink="false">http://sharepoint247.com/?p=994</guid>
  787.  
  788. <description><![CDATA[<p>In Microsoft Teams all your Teams are organized into two categories, Your Teams and Hidden. And there is really now way to organize teams together in groups or to associate&#8230;</p>
  789. The post <a href="http://sharepoint247.com/uncategorized/organize-your-teams-in-microsoft-teams-part-1/">Organize your teams in Microsoft Teams – Part 1</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  790. <content:encoded><![CDATA[<p>In Microsoft Teams all your Teams are organized into two categories, Your Teams and Hidden. And there is really now way to organize teams together in groups or to associate teams together.</p>
  791.  
  792.  
  793.  
  794. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="616" height="1024" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_10h37_27-616x1024.png" alt="" class="wp-image-995" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_10h37_27-616x1024.png 616w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_10h37_27-180x300.png 180w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_10h37_27.png 764w" sizes="(max-width: 616px) 100vw, 616px" /></figure>
  795.  
  796.  
  797.  
  798. <p>Let’s say you have a department team and that department have several other teams that belong to that department. They have several project teams and other teams that are “owned” by that department. But in the Teams client there is no way to see that these Teams should be associated with the “main” department Team and there is no way to navigate or find these Teams from the department Team. We could use the name of the Team to give some sort of structure and help with the navigation. But you have no real good overview of what Teams belong to the Department Team.</p>
  799.  
  800.  
  801.  
  802. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="1024" height="597" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_42-1024x597.png" alt="" class="wp-image-996" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_42-1024x597.png 1024w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_42-300x175.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_42-768x448.png 768w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_42.png 1885w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Teams are not connected</figcaption></figure>
  803.  
  804.  
  805.  
  806. <p>Would it not be nice if we could provide an easy overview of the other Teams belonging to the Department Team? And only show the once you have access to?</p>
  807.  
  808.  
  809.  
  810. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="1024" height="821" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_52-1024x821.png" alt="" class="wp-image-997" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_52-1024x821.png 1024w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_52-300x241.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_52-768x616.png 768w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-13_09h21_52.png 1342w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Associate Teams with the Department Team</figcaption></figure>
  811.  
  812.  
  813.  
  814. <p><a rel="noreferrer noopener" aria-label="PowerApp (opens in a new tab)" href="https://powerapps.microsoft.com/en-us/" target="_blank">PowerApp</a><a href="https://powerapps.microsoft.com/en-us/">s</a> to the rescue.<br> We can create a PowerApp to use in the Department Team to show links to associated Teams the user have access to.<br> There is a Teams connector in <a href="https://powerapps.microsoft.com/en-us/" target="_blank" rel="noreferrer noopener" aria-label="PowerApps (opens in a new tab)">PowerApps</a> that should give us the  information we need.</p>
  815.  
  816.  
  817.  
  818. <p>Start PowerApps and create a new canvas app from blank.</p>
  819.  
  820.  
  821.  
  822. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="649" height="416" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h06_03.png" alt="" class="wp-image-998" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h06_03.png 649w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h06_03-300x192.png 300w" sizes="(max-width: 649px) 100vw, 649px" /></figure>
  823.  
  824.  
  825.  
  826. <p>Give your app a name and select tablet for the format.</p>
  827.  
  828.  
  829.  
  830. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="903" height="575" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h07_02.png" alt="" class="wp-image-999" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h07_02.png 903w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h07_02-300x191.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h07_02-768x489.png 768w" sizes="(max-width: 903px) 100vw, 903px" /></figure>
  831.  
  832.  
  833.  
  834. <p>Once your new PowerApp is open&nbsp; click the view menu, click Data Sources and search for teams</p>
  835.  
  836.  
  837.  
  838. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="837" height="684" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h08_28.png" alt="" class="wp-image-1000" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h08_28.png 837w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h08_28-300x245.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h08_28-768x628.png 768w" sizes="(max-width: 837px) 100vw, 837px" /></figure>
  839.  
  840.  
  841.  
  842. <p>Click the Teams connector to add it.</p>
  843.  
  844.  
  845.  
  846. <p>Once it’s added go to the Insert menu and insert a gallery, choose vertical for you layout.</p>
  847.  
  848.  
  849.  
  850. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="759" height="619" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h11_00.png" alt="" class="wp-image-1001" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h11_00.png 759w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h11_00-300x245.png 300w" sizes="(max-width: 759px) 100vw, 759px" /></figure>
  851.  
  852.  
  853.  
  854. <p>Insert the Gallery and select the Teams connector as the source. Your gallery should look something like this:</p>
  855.  
  856.  
  857.  
  858. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="1024" height="763" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h12_46-1024x763.png" alt="" class="wp-image-1002" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h12_46-1024x763.png 1024w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h12_46-300x224.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h12_46-768x572.png 768w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h12_46.png 1476w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
  859.  
  860.  
  861.  
  862. <p>Go to the Items property of the gallery and change it to this:</p>
  863.  
  864.  
  865.  
  866. <p><strong><code>MicrosoftTeams.GetAllTeams().value</code></strong></p>
  867.  
  868.  
  869.  
  870. <p>Your gallery should start to populate with all the Teams you have access to:</p>
  871.  
  872.  
  873.  
  874. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="1024" height="855" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h17_27-1024x855.png" alt="" class="wp-image-1003" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h17_27-1024x855.png 1024w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h17_27-300x250.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h17_27-768x641.png 768w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h17_27.png 1301w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
  875.  
  876.  
  877.  
  878. <p>Click the image in the gallery to show an icon before the team name.</p>
  879.  
  880.  
  881.  
  882. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="1024" height="781" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h22_21-1024x781.png" alt="" class="wp-image-1004" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h22_21-1024x781.png 1024w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h22_21-300x229.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h22_21-768x586.png 768w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-09_11h22_21.png 1337w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
  883.  
  884.  
  885.  
  886. <p>But this will show all the Teams the user have access to so we need to filter this list somehow.</p>
  887.  
  888.  
  889.  
  890. <p>The Filter function in PowerApps will do this for us but we need some sort of naming policies for our Teams for this to work.<br>
  891. We could prefix (or suffix) all Teams associated with Department 1 with Dep1 and then filter on this.</p>
  892.  
  893.  
  894.  
  895. <p>You put the Filter function on the Items property of the Gallery like this:</p>
  896.  
  897.  
  898.  
  899. <p><code>Filter(MicrosoftTeams.GetAllTeams().value,StartsWith(displayName,"Dep1"))</code></p>
  900.  
  901.  
  902.  
  903. <p>That will filter the list to only show Teams starting with Dep1</p>
  904.  
  905.  
  906.  
  907. <p>Save and Share your PowerApp and it’s ready for use in Teams.</p>
  908.  
  909.  
  910.  
  911. <p>In Teams create a Department 1 Team and ad a tab to the General channel.</p>
  912.  
  913.  
  914.  
  915. <p>Select PowerApps, search for it if its not listed</p>
  916.  
  917.  
  918.  
  919. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="704" height="516" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h37_48.png" alt="" class="wp-image-1005" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h37_48.png 704w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h37_48-300x220.png 300w" sizes="(max-width: 704px) 100vw, 704px" /></figure>
  920.  
  921.  
  922.  
  923. <p>Add the app Teams Navigator (or whatever you called you PowerApp when you saved it)</p>
  924.  
  925.  
  926.  
  927. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="599" height="593" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h38_49.png" alt="" class="wp-image-1006" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h38_49.png 599w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h38_49-300x297.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h38_49-144x144.png 144w" sizes="(max-width: 599px) 100vw, 599px" /></figure>
  928.  
  929.  
  930.  
  931. <p>That’s it for Part 1 of this article. You now have a tab listing all the Teams starting with Dep 1</p>
  932.  
  933.  
  934.  
  935. <figure class="wp-block-image"><img decoding="async" loading="lazy" width="1024" height="532" src="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h31_59-1024x532.png" alt="" class="wp-image-1007" srcset="http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h31_59-1024x532.png 1024w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h31_59-300x156.png 300w, http://sharepoint247.com/wp-content/uploads/2019/11/2019-11-10_22h31_59-768x399.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>My example actually lists Teams starting with the letter T <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></figcaption></figure>
  936.  
  937.  
  938.  
  939. <p>In Part 2 we will add navigation. We will add the URL for the Team so you can click the arrow and navigate to the Team.</p>The post <a href="http://sharepoint247.com/uncategorized/organize-your-teams-in-microsoft-teams-part-1/">Organize your teams in Microsoft Teams – Part 1</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  940. <wfw:commentRss>http://sharepoint247.com/uncategorized/organize-your-teams-in-microsoft-teams-part-1/feed/</wfw:commentRss>
  941. <slash:comments>0</slash:comments>
  942. </item>
  943. <item>
  944. <title>Print (or not) from any SharePoint list using Microsoft Flow and the Word Online connector</title>
  945. <link>http://sharepoint247.com/office-365/print-from-any-sharepoint-list-using-microsoft-flow-and-the-word-online-connector/</link>
  946. <comments>http://sharepoint247.com/office-365/print-from-any-sharepoint-list-using-microsoft-flow-and-the-word-online-connector/#respond</comments>
  947. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  948. <pubDate>Wed, 30 Jan 2019 22:03:39 +0000</pubDate>
  949. <category><![CDATA[Flow]]></category>
  950. <category><![CDATA[Office 365]]></category>
  951. <guid isPermaLink="false">http://sharepoint247.com/?p=915</guid>
  952.  
  953. <description><![CDATA[<p>For those of us that have stopped printing it can of course be used for generating a Word or PDF document without printing it &#160; Microsoft recently released the Word&#8230;</p>
  954. The post <a href="http://sharepoint247.com/office-365/print-from-any-sharepoint-list-using-microsoft-flow-and-the-word-online-connector/">Print (or not) from any SharePoint list using Microsoft Flow and the Word Online connector</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  955. <content:encoded><![CDATA[<p>For those of us that have stopped printing it can of course be used for generating a Word or PDF document without printing it <img decoding="async" class="wlEmoticon wlEmoticon-smile" style="" alt="Smile" src="http://sharepoint247.com/wp-content/uploads/2019/01/wlEmoticon-smile.png"></p>
  956. <p>&nbsp;</p>
  957. <p>Microsoft recently released the Word Online Connector to Flow. The connector have two actions. “Convert Word Document to PDF” and “Populate a Microsoft Word template”.</p>
  958. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_16h46_49.png" data-rel="lightbox-image-0" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="603" height="368" title="" style="display: inline; background-image: none;" alt="2019-01-30_16h46_49" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_16h46_49_thumb.png" border="0"></a></p>
  959. <p>The “Convert Word Document to PDF” action does exactly what the description says, it converts a document to PDF <img decoding="async" class="wlEmoticon wlEmoticon-smile" style="" alt="Smile" src="http://sharepoint247.com/wp-content/uploads/2019/01/wlEmoticon-smile.png">. I wanted to have a closer look at the other action, “Populate a Microsoft Word template”. Because if that does what the subscription says I was thinking this could be used to create nice printouts from SharePoint lists.</p>
  960. <p>I started by creating a simple word document to be used as my template. I enabled the developer tab in Word to be able to add controls to my Word Template. <a href="https://support.office.com/en-us/article/show-the-developer-tab-e1192344-5e56-4d45-931b-e5fd9bea2d45" target="_blank">Check this link for how to enable the developer tab in Word.</a></p>
  961. <p>My plan was to create a printout via Word of my Incident Management list, see picture.</p>
  962. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h05_51.png" data-rel="lightbox-image-1" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="159" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h05_51" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h05_51_thumb.png" border="0"></a></p>
  963. <p>So I created a simple Word document and put in text controls from the developer tab where I want the columns from the SharePoint list to be put.</p>
  964. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h10_36.png" data-rel="lightbox-image-2" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="595" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h10_36" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h10_36_thumb.png" border="0"></a></p>
  965. <p>I then save the file as a Word document in a document library on a SharePoint site. Any SharePoint Online document library will do just fine.</p>
  966. <p>Then head over to Flow to create a Flow. Create a new blank Flow and find the SharePoint Connector.</p>
  967. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h15_22.png" data-rel="lightbox-image-3" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="296" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h15_22" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h15_22_thumb.png" border="0"></a>Select the “For a selected item” trigger as a starting point for the Flow.This will make our Flow available from the Flow menu in our Incident Management list.</p>
  968. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h15_31.png" data-rel="lightbox-image-4" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="499" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h15_31" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h15_31_thumb.png" border="0"></a></p>
  969. <p>Next configure the trigger to point to our Incident Management list, that meant putting in the URL to my Incident Management site in the Site Name field (or selecting the site from the list) and selecting the Incident Management list from the List Name dropdown.</p>
  970. <p>Next add the SharePoint connector again and add the Get Item action. This will get the actual columns from the item that triggered the Flow.Again put in the URL to the Incident Management site and select the Incident Management list from the List Name dropdown.</p>
  971. <p>For the ID field pick the ID from the Selected Item action.</p>
  972. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h27_33.png" data-rel="lightbox-image-5" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="272" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h27_33" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h27_33_thumb.png" border="0"></a></p>
  973. <p>The add a new action. This time search for Word and the Word Online (Business) connector should show up.</p>
  974. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h30_39.png" data-rel="lightbox-image-6" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="332" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h30_39" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h30_39_thumb.png" border="0"></a></p>
  975. <p></p>
  976. <p>Click this and then add the Populate a Microsoft Word Template action.</p>
  977. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h32_47.png" data-rel="lightbox-image-7" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="706" height="378" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h32_47" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h32_47_thumb.png" border="0"></a></p>
  978. <p>Configure this to point at the Word document we created earlier.The Location field points to the SharePoint site where the Word template is stored, select the document library in the Document Library dropdown and the select the template file in the File dropdown. I created my Word template as a regular Word document DOCX and not a Word template a DOCT extension. Only DOCX files showed up in the File dropdown here.</p>
  979. <p>When you have selected your template all the text controls you added to the template should show up here.</p>
  980. <p>And no you can just map the columns from the SharePoint list item to the corresponding control in the Word Template.</p>
  981. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h41_38.png" data-rel="lightbox-image-8" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="695" height="508" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h41_38" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h41_38_thumb.png" border="0"></a></p>
  982. <p></p>
  983. <p>The last action we will add is from the SharePoint connector again and its the Create File action. This will create our new Word Document with data from the selected SharePoint item and based on the Word Template we provided.</p>
  984. <p>Point it to a document library on any site where you want the new document stored.and provide a new file name. For the File Content field, pout in the Word document created by our last action.</p>
  985. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h44_33.png" data-rel="lightbox-image-9" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="719" height="290" title="" style="display: inline; background-image: none;" alt="2019-01-30_17h44_33" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_17h44_33_thumb.png" border="0"></a></p>
  986. <p>That’s it, save your Flow and we are ready for a test.</p>
  987. <p></p>
  988. <p>This is what the complete Flow looks like</p>
  989. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/02/2019-01-30_23h03_45.png" data-rel="lightbox-image-10" data-rl_title="" data-rl_caption="" title=""><br /></a></p>
  990. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/02/2019-01-30_23h03_45-1.png" data-rel="lightbox-image-11" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="716" height="467" title="" style="display: inline; background-image: none;" alt="2019-01-30_23h03_45" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_23h03_45_thumb.png" border="0"></a></p>
  991. <p></p>
  992. <p>From the Incident Management list we can now select an item and start the Flow. I named my flow “Generate Word Document” and will find it in the Flow menu when an item is selected in the list.</p>
  993. <p></p>
  994. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_22h46_50.png" data-rel="lightbox-image-12" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="338" title="" style="display: inline; background-image: none;" alt="2019-01-30_22h46_50" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_22h46_50_thumb.png" border="0"></a></p>
  995. <p>When you run this flow a Word document should be created in the document library you specified in the Flow.</p>
  996. <p></p>
  997. <p>This is the Document I created based on a Word template and content from a SharePoint list. Ready to print.</p>
  998. <p><a href="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_22h51_52.png" data-rel="lightbox-image-13" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" width="720" height="562" title="" style="display: inline; background-image: none;" alt="2019-01-30_22h51_52" src="http://sharepoint247.com/wp-content/uploads/2019/01/2019-01-30_22h51_52_thumb.png" border="0"></a></p>
  999. <h4>Conclusion</h4>
  1000. <p>Using the new Word Online connector in Flow you can quickly create a nice looking printing solution for a SharePoint list. Using the Convert to PDF action of the connector we could just as easily create PDF’s form SharePoint list items.</p>
  1001. <p>By using the Get Items action of the SharePoint connector we could loop through all items in a SharePoint&nbsp; list and create a PDF report, or create a document for print for those still using paper <img decoding="async" class="wlEmoticon wlEmoticon-smile" style="" alt="Smile" src="http://sharepoint247.com/wp-content/uploads/2019/01/wlEmoticon-smile.png"></p>
  1002. <p>The only downside I can see is that the Word Online connector is a Premium Connector, that means you would need a Flow Plan 1 or Plan 2 to use it so there is a licensing cost involved.</p>
  1003. <p><a href="https://emea.flow.microsoft.com/en-us/pricing/" target="_blank">Flow pricing</a></p>The post <a href="http://sharepoint247.com/office-365/print-from-any-sharepoint-list-using-microsoft-flow-and-the-word-online-connector/">Print (or not) from any SharePoint list using Microsoft Flow and the Word Online connector</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  1004. <wfw:commentRss>http://sharepoint247.com/office-365/print-from-any-sharepoint-list-using-microsoft-flow-and-the-word-online-connector/feed/</wfw:commentRss>
  1005. <slash:comments>0</slash:comments>
  1006. </item>
  1007. <item>
  1008. <title>The Quick Links webpart &#8211; new and improved</title>
  1009. <link>http://sharepoint247.com/webparts/the-quick-links-webpart-new-and-improved/</link>
  1010. <comments>http://sharepoint247.com/webparts/the-quick-links-webpart-new-and-improved/#respond</comments>
  1011. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  1012. <pubDate>Tue, 11 Sep 2018 14:03:37 +0000</pubDate>
  1013. <category><![CDATA[Branding]]></category>
  1014. <category><![CDATA[Office 365]]></category>
  1015. <category><![CDATA[Webparts]]></category>
  1016. <guid isPermaLink="false">http://sharepoint247.com/?p=887</guid>
  1017.  
  1018. <description><![CDATA[<p>If you have enabled First-release on your Office 365 tenant you will probably have access to the new and improved Quick Links webpart for modern SharePoint pages. The new webpart&#8230;</p>
  1019. The post <a href="http://sharepoint247.com/webparts/the-quick-links-webpart-new-and-improved/">The Quick Links webpart – new and improved</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  1020. <content:encoded><![CDATA[<p>If you have enabled First-release on your Office 365 tenant you will probably have access to the new and improved Quick Links webpart for modern SharePoint pages.</p>
  1021. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h44_10.png" data-rel="lightbox-image-0" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h44_10_thumb.png" alt="2018-09-11_15h44_10" width="373" height="256" border="0" /></a></p>
  1022. <p>The new webpart has several new layouts you can use to show links to other stuff on your SharePoint page. The links can be to anything with a URL both internal and external links will be fine.</p>
  1023. <p>Add the webpart to a page and you can select between several new layouts.</p>
  1024. <ul>
  1025. <li>Compact</li>
  1026. <li>Filmstrip</li>
  1027. <li>Grid</li>
  1028. <li>Button</li>
  1029. <li>List</li>
  1030. <li>Tiles</li>
  1031. </ul>
  1032. <p>Several of them can be configured to show pictures or icon in addition to text.</p>
  1033. <p>&nbsp;</p>
  1034. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h47_05.png" data-rel="lightbox-image-1" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h47_05_thumb.png" alt="2018-09-11_15h47_05" width="234" height="244" border="0" /></a></p>
  1035. <p>Compact Layout</p>
  1036. <p>&nbsp;</p>
  1037. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h47_18.png" data-rel="lightbox-image-2" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h47_18_thumb.png" alt="2018-09-11_15h47_18" width="228" height="244" border="0" /></a></p>
  1038. <p>Filmstrip Layout</p>
  1039. <p>&nbsp;</p>
  1040. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h37_15.png" data-rel="lightbox-image-3" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h37_15_thumb.png" alt="2018-09-11_15h37_15" width="244" height="169" border="0" /></a></p>
  1041. <p>Grid Layout</p>
  1042. <p>&nbsp;</p>
  1043. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h52_49.png" data-rel="lightbox-image-4" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h52_49_thumb.png" alt="2018-09-11_15h52_49" width="234" height="291" border="0" /></a></p>
  1044. <p>Button layout</p>
  1045. <p>&nbsp;</p>
  1046. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h53_31.png" data-rel="lightbox-image-5" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h53_31_thumb.png" alt="2018-09-11_15h53_31" width="244" height="207" border="0" /></a></p>
  1047. <p>List Layout</p>
  1048. <p>&nbsp;</p>
  1049. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h53_55.png" data-rel="lightbox-image-6" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h53_55_thumb.png" alt="2018-09-11_15h53_55" width="244" height="210" border="0" /></a></p>
  1050. <p>Tiles Layout</p>
  1051. <p>&nbsp;</p>
  1052. <p>If you click on the little pencil on each induvial item in the list you can edit the link and what image or icon to display.</p>
  1053. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h56_17.png" data-rel="lightbox-image-7" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h56_17_thumb.png" alt="2018-09-11_15h56_17" width="245" height="520" border="0" /></a></p>
  1054. <p>Auto-Select will try to find a image or icon from whatever you are linking to, custom image lets you select your own image. The last one, icon, is my new favorite. It lets you select directly from several hundred icons.</p>
  1055. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h35_20.png" data-rel="lightbox-image-8" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h35_20_thumb.png" alt="2018-09-11_15h35_20" width="720" height="386" border="0" /></a></p>
  1056. <p>&nbsp;</p>
  1057. <p>This is an excellent improvement the Quick Links webpart and it should start rolling out to all tenants very shortly.</p>
  1058. <p>&nbsp;</p>
  1059. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h34_08.png" data-rel="lightbox-image-9" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/09/2018-09-11_15h34_08_thumb.png" alt="2018-09-11_15h34_08" width="696" height="488" border="0" /></a></p>The post <a href="http://sharepoint247.com/webparts/the-quick-links-webpart-new-and-improved/">The Quick Links webpart – new and improved</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  1060. <wfw:commentRss>http://sharepoint247.com/webparts/the-quick-links-webpart-new-and-improved/feed/</wfw:commentRss>
  1061. <slash:comments>0</slash:comments>
  1062. </item>
  1063. <item>
  1064. <title>SharePoint hub sites</title>
  1065. <link>http://sharepoint247.com/office-365/sharepoint-hub-sites/</link>
  1066. <comments>http://sharepoint247.com/office-365/sharepoint-hub-sites/#respond</comments>
  1067. <dc:creator><![CDATA[Arild Aarnes]]></dc:creator>
  1068. <pubDate>Tue, 03 Apr 2018 06:46:09 +0000</pubDate>
  1069. <category><![CDATA[Hub Sites]]></category>
  1070. <category><![CDATA[Office 365]]></category>
  1071. <category><![CDATA[SharePoint]]></category>
  1072. <category><![CDATA[Sharepoint Blogs]]></category>
  1073. <category><![CDATA[SharePoint Online]]></category>
  1074. <guid isPermaLink="false">http://sharepoint247.com/?p=843</guid>
  1075.  
  1076. <description><![CDATA[<p>Microsoft recently released SharePoint hub sites to Office 365 Targeted release customers. SharePoint hub sites will help organize Team and Communications sites as it helps you bring some structure. A&#8230;</p>
  1077. The post <a href="http://sharepoint247.com/office-365/sharepoint-hub-sites/">SharePoint hub sites</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></description>
  1078. <content:encoded><![CDATA[<p>Microsoft recently released <a href="https://techcommunity.microsoft.com/t5/SharePoint-Blog/Organize-your-intranet-with-SharePoint-hub-sites/ba-p/174081" target="_blank" rel="noopener">SharePoint hub sites</a> to Office 365 Targeted release customers.</p>
  1079. <p>SharePoint hub sites will help organize Team and Communications sites as it helps you bring some structure. A Team or Communication site can be associated with a hub site, they will then get a common navigation, and a common look and feel, among other things.</p>
  1080. <p>The functionality brought by hub sites are:</p>
  1081. <ul>
  1082. <li><strong>Cross-site navigation</strong></li>
  1083. <li><strong>Content rollup</strong></li>
  1084. <li><strong>Consistent look-and-feel</strong></li>
  1085. <li><strong>Scoped search</strong></li>
  1086. </ul>
  1087. <h3>How to create a hub site</h3>
  1088. <p>Any Team or Communications site can be made into a hub site by using Powershell.</p>
  1089. <p>Run <strong>Register-SPOHubSite <a title="https://decode247.sharepoint.com/sites/UiSDemo" href="https://&lt;your tenant&gt;.sharepoint.com/sites/comsite">https://&lt;your tenant&gt;.sharepoint.com/sites/comsite</a></strong> in your SharePoint Online Management Shell to convert an existing site into a hub site.</p>
  1090. <p>You can the create a mail-enabled security group, members you put into this group will be able to associate sites with this hub site.</p>
  1091. <p>Run the following PowerShell command to set the security group for the hub site</p>
  1092. <p>&nbsp;</p>
  1093. <p>Grant-SPOHubSiteRights -Identity<br />
  1094. -Principals GroupEmail<br />
  1095. -Rights Join</p>
  1096. <p>&nbsp;</p>
  1097. <p>(Identity is the URL of the hub site and GroupEmail is the email address of your security group.)</p>
  1098. <p>If you do not create a security group any site owner will be able to associate there site with this hub.</p>
  1099. <p>&nbsp;</p>
  1100. <h3>Hub site</h3>
  1101. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-02_22h31_26.png" data-rel="lightbox-image-0" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-02_22h31_26_thumb.png" alt="2018-04-02_22h31_26" width="720" height="396" border="0" /></a></p>
  1102. <p>This is a Communication Site converted to a hub site. There is not really much difference, the only way to tell at first glance is the cross-site navigation at the top left. If you click on the tool icon at the top menu to get to settings you will see that you now have a <em>Hub site setting</em> menu choice. Here you can set the hub icon and the hub name site Owners will use to associate their site to this hub site.</p>
  1103. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/image.png" data-rel="lightbox-image-1" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/image_thumb.png" alt="image" width="354" height="468" border="0" /></a></p>
  1104. <p>As for the cross-site menu it is easy to edit, just click edit beside the menu and add your menu items. The menu can have two sub-levels, see picture below. This menu will be available on all associated Team and Communication sites.</p>
  1105. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-02_22h40_41.png" data-rel="lightbox-image-2" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-02_22h40_41_thumb.png" alt="2018-04-02_22h40_41" width="718" height="367" border="0" /></a></p>
  1106. <p>&nbsp;</p>
  1107. <h3>Associate Team and Communication sites</h3>
  1108. <p>To associate a Team site or a Communication site to a hub open the settings menu for the site and select <em>Site Information</em>.</p>
  1109. <p>In the Site Information screen you should see <em>Hub Site Association. </em>There you can select any hub site you have been added to the security group for, or any hub site that does not have a security group added. Select your hub and click Save. That&#8217;s it, your site is now associated with a hub and will get the cross-site navigation menu and the look and feel from the hub. News from your Team site will be aggregated to the hub site.</p>
  1110. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h08_23.png" data-rel="lightbox-image-3" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h08_23_thumb.png" alt="2018-04-03_08h08_23" width="235" height="521" border="0" /></a></p>
  1111. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h19_57.png" data-rel="lightbox-image-4" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h19_57_thumb.png" alt="2018-04-03_08h19_57" width="720" height="470" border="0" /></a></p>
  1112. <p>The picture shows a Team site associated with a hub site</p>
  1113. <p>&nbsp;</p>
  1114. <h3>Hub site content rollup</h3>
  1115. <p>News from an associated Team site will rollup to the hub site as shown in the following picture</p>
  1116. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h23_20.png" data-rel="lightbox-image-5" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h23_20_thumb.png" alt="2018-04-03_08h23_20" width="720" height="398" border="0" /></a></p>
  1117. <p>&nbsp;</p>
  1118. <p>The News webpart on a hub site is configurable so you can decide which sites to rollup content from.</p>
  1119. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h24_37.png" data-rel="lightbox-image-6" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h24_37_thumb.png" alt="2018-04-03_08h24_37" width="271" height="593" border="0" /></a></p>
  1120. <p>Hub sites also get a new webpart named Sites. this is used to highlight sites associated with the hub site. You can highlight all sites associated with the hub, or only show selected sites.</p>
  1121. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h39_33.png" data-rel="lightbox-image-7" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h39_33_thumb.png" alt="2018-04-03_08h39_33" width="669" height="406" border="0" /></a></p>
  1122. <p>&nbsp;</p>
  1123. <p><a href="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h40_29.png" data-rel="lightbox-image-8" data-rl_title="" data-rl_caption=""><img decoding="async" loading="lazy" style="display: inline; background-image: none;" title="" src="http://sharepoint247.com/wp-content/uploads/2018/04/2018-04-03_08h40_29_thumb.png" alt="2018-04-03_08h40_29" width="242" height="587" border="0" /></a></p>
  1124. <p>&nbsp;</p>
  1125. <h3>More Information</h3>
  1126. <p><a href="https://support.office.com/en-us/article/create-a-hub-site-in-sharepoint-online-92bea781-15d8-4bda-805c-e441e2191ff3?ui=en-US&amp;rs=en-US&amp;ad=US" target="_blank" rel="noopener">Create a hub site in SharePoint Online</a></p>
  1127. <p>&nbsp;</p>
  1128. <p><a href="https://techcommunity.microsoft.com/t5/SharePoint-Blog/Organize-your-intranet-with-SharePoint-hub-sites/ba-p/174081" target="_blank" rel="noopener">Organize your Intranet with SharePoint hub sites</a></p>The post <a href="http://sharepoint247.com/office-365/sharepoint-hub-sites/">SharePoint hub sites</a> first appeared on <a href="http://sharepoint247.com">Arild Aarnes</a>.]]></content:encoded>
  1129. <wfw:commentRss>http://sharepoint247.com/office-365/sharepoint-hub-sites/feed/</wfw:commentRss>
  1130. <slash:comments>0</slash:comments>
  1131. </item>
  1132. </channel>
  1133. </rss>
  1134.  

If you would like to create a banner that links to this page (i.e. this validation result), do the following:

  1. Download the "valid RSS" banner.

  2. Upload the image to your own server. (This step is important. Please do not link directly to the image on this server.)

  3. Add this HTML to your page (change the image src attribute if necessary):

If you would like to create a text link instead, here is the URL you can use:

http://www.feedvalidator.org/check.cgi?url=http%3A//sharepoint247.com/feed/

Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda