﻿<?xml version="1.0" encoding="UTF-8"?>
<!--RSS generated by Microsoft SharePoint Foundation RSS Generator on 5/22/2013 6:58:15 PM -->
<?xml-stylesheet type="text/xsl" href="/blogs/laura/_layouts/RssXslt.aspx?List=daba3a3b-c338-41d8-bf52-cd897d000cf3" version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Laura Rogers  @WonderLaura: Posts</title>
    <link>http://sharepoint911.com/blogs/laura/Lists/Posts/AllPosts.aspx</link>
    <description>RSS feed for the Posts list.</description>
    <lastBuildDate>Wed, 22 May 2013 23:58:14 GMT</lastBuildDate>
    <generator>Microsoft SharePoint Foundation RSS Generator</generator>
    <ttl>60</ttl>
    <language>en-US</language>
    <image>
      <title>Laura Rogers  @WonderLaura: Posts</title>
      <url>http://sharepoint911.com/blogs/laura/_layouts/images/siteIcon.png</url>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/AllPosts.aspx</link>
    </image>
    <item>
      <title>My Blog is Moving</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=186</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass7B63A3F562104A978397B5E55E4A3F46"><p class="ms-rteFontSize-4"><strong>​Hi everyone,</strong></p>
<p class="ms-rteFontSize-4"><strong>My blog now has a new URL!  </strong></p>
<p class="ms-rteFontSize-4"><strong>You can now find me at </strong><a href="http://www.wonderlaura.com/"><strong>http://www.wonderlaura.com</strong></a><strong> </strong></p></div></div>
<div><b>Published:</b> 7/31/2012 2:46 PM</div>
]]></description>
      <author>laura</author>
      <pubDate>Tue, 31 Jul 2012 18:17:04 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=186</guid>
    </item>
    <item>
      <title>SharePoint 2013 Web Part: Content Search</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=185</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass682BF9C3DD56465FB34760F87700F242"><p><img style="background-image:none;border-bottom:0px;border-left:0px;margin:2px 4px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[77]" border="0" alt="CropperCapture[77]" align="left" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture77_3_3F8BDE47.png" width="273" height="612" /></p>  <p>The new content search web part in the SharePoint 2013 preview (enterprise) is just awesome, awesome, awesome.  </p>  <p>Remember quite a while back when I wrote a <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=90" target="_blank">post</a> about how to utilize the search results web part to show the logged in user a list of sites that they have access to?  Well now in this new SharePoint, this web part is used all over the place, and you can also insert it anywhere you want.  For example, when you are on your My Site and you see a list of all of the tasks assigned to you, THAT is this web part rolling up that content from all over the farm.  Also, on the Community Portal (site collection template), you see a list of all community sites rolled up in one list.  THAT is also this web part.  There are many other examples, but let me go ahead and show you the coolness:</p>  <p> </p>  <p> </p>  <p>When I click the <strong>Change Query</strong> button, it brings up this interface with TONS of options, and as you change options your live results show in the search results preview on the right:</p>  <p> </p>  <p> </p>  <h3>Basics</h3>  <p>You can select from Documents, content types, tags, videos and more, and then pick the scope, such as a certain site or site collection, or unrestricted (whole farm).</p>  <p><a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture80_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[80]" border="0" alt="CropperCapture[80]" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture80_thumb_3F8BDE47.png" width="644" height="285" /></a></p>  <h3>Refiners</h3>  <p>There a many refiners (filters) you can choose from.  In this case, SharePoint recognizes that I created a column called “Department” in a document library, so it shows as a refiner.  There are dates, file types, creator, editor, content types, size, and more. </p>  <p><a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture81_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[81]" border="0" alt="CropperCapture[81]" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture81_thumb_3F8BDE47.png" width="644" height="325" /></a></p>  <h3>Settings</h3>  <p>On the settings tab, you can even change the <em>performance</em> of your web part on the page!  Wow, this is much better than that old content query web part which could be a real hog.</p>  <p><a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture82_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[82]" border="0" alt="CropperCapture[82]" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture82_thumb_3F8BDE47.png" width="644" height="325" /></a></p>  <h3>Test</h3>  <p>The test tab shows you the actual query text that is used behind the scenes to create that query.</p>  <p><a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture83_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[83]" border="0" alt="CropperCapture[83]" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture83_thumb_3F8BDE47.png" width="644" height="252" /></a></p>  <p>After I click OK at the bottom of this query page, there are still more settings available in the web part properties.</p>  <h3>Number of Items to show</h3>  <p>You can set up the default number of items to show in the web part.  The default is 3.</p>  <h3>Display Templates<a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture84_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[84]" border="0" alt="CropperCapture[84]" align="right" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture84_thumb_3F8BDE47.png" width="244" height="198" /></a></h3>  <p>The control drop-down box lets you choose from list, list with paging, and slideshow.</p>  <p>The Item drop-down box has selections such as “picture on left”, 2 lines, large picture.  </p>  <p> </p>  <h3>Property Mappings</h3>  <p><a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture85_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[85]" border="0" alt="CropperCapture[85]" align="right" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture85_thumb_3F8BDE47.png" width="244" height="215" /></a>Depending on what you select in the Item drop-down box, you have different choices in the Property mappings.  </p>  <p>Since I chose two lines, I get to customize what those 2 lines are if I want to.  Right now, line 2 is empty, but I can pick another property to display on that second line, like the last modified by person, or a description or something.</p>  <h3> </h3>  <h3>Settings</h3>  <p><a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture87_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[87]" border="0" alt="CropperCapture[87]" align="right" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture87_thumb_3F8BDE47.png" width="244" height="234" /></a>The Result Table drop-down lets you pick from Relevant Results, Personal Favorite Results, Refinement Results, and Special Term results. </p>  <p> </p>  <h3> </h3>  <h3>In summary:</h3>  <p>Remember that for search results to be accurate, you have to actually have your search crawls / indexing set up and on a schedule.  If your search only indexes the content once a day, then the results in this web part could be a day old.  If you set up your index say, every 20 minutes, you’re going to have much more accurate and current results displayed.</p>  <p><a href="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture78_2_3F8BDE47.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[78]" border="0" alt="CropperCapture[78]" src="/blogs/laura/Lists/Posts/Attachments/185/CropperCapture78_thumb_3F8BDE47.png" width="320" height="424" /></a></p>  <p> </p>  <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:ec8acd77-726d-4857-8c6b-72dfd5ecc55e" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/SharePoint+2013" rel="tag">SharePoint 2013</a>,<a href="http://technorati.com/tags/web+parts" rel="tag">web parts</a>,<a href="http://technorati.com/tags/search" rel="tag">search</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 7/17/2012 4:30 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture77_3_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture77_3_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture78_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture78_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture78_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture78_thumb_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture80_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture80_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture80_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture80_thumb_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture81_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture81_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture81_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture81_thumb_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture82_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture82_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture82_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture82_thumb_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture83_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture83_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture83_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture83_thumb_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture84_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture84_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture84_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture84_thumb_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture85_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture85_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture85_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture85_thumb_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture87_2_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture87_2_3F8BDE47.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture87_thumb_3F8BDE47.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/185/CropperCapture87_thumb_3F8BDE47.png</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>Web Parts</category>
      <pubDate>Tue, 17 Jul 2012 20:00:51 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=185</guid>
    </item>
    <item>
      <title>SharePoint 2013 Social: Community Sites</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=184</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass043090D4792B41BAA2E7E56C23D512BF"><p>A community site is a new site template that is available in SharePoint 2013, and it is also available as a feature that you can enable, called the Community Site Feature.  This type of site is truly like a forum.  Remember the old discussion boards in previous versions of SharePoint?  This is a dramatically improved discussion board!  The idea is that, just like any interactive forum, you have concepts like “Likes”, ratings, badges and reputation scores.  Top contributors are rewarded with higher points, which equate to badges.</p>  <p><a href="/blogs/laura/Lists/Posts/Attachments/184/CropperCapture73_2_4AC17BB6.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[73]" border="0" alt="CropperCapture[73]" src="/blogs/laura/Lists/Posts/Attachments/184/CropperCapture73_thumb_4AC17BB6.png" width="644" height="437" /></a></p>  <p>Here is some information about the features you can look forward to on your community sites:</p>  <h3>Categories</h3>  <ul>   <li>When you click on Categories on the community site, you are presented with a pretty metro interface with all of the categories as big boxes.  </li>    <li>When creating categories, you can assign each one an image to be associated with it, as I’ve done below.</li>    <li>When you hover over each category, like I’ve done with the General category, it shows the description and how many discussions and replies there are in it.      <br /><em>Where did I get those cool metro icons? <a href="http://www.syncfusion.com/downloads/metrostudio" target="_blank">This software</a>.</em>       <br /><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="categories" border="0" alt="categories" src="/blogs/laura/Lists/Posts/Attachments/184/categories_3_4AC17BB6.png" width="458" height="534" /></li> </ul>  <h3>Discussions (Conversations)</h3>  <ul>   <li>You can start a new conversation, similar to the way you did it in old SharePoint versions (with a subject and body), but you have an extra check box to indicate whether your conversation is a question or not.  Pick a category also.</li>    <li>Site admins can also mark any conversation as “featured”, which puts it at the top of the list in that category, indicating that it is featured.</li> </ul>  <h3>Replies</h3>  <ul>   <li>Reply to any conversation, by clicking the Reply button.</li>    <li>Site admins can mark a reply as “Best Reply”, which will then be listed directly under the question, indicating that it’s the best reply.  Also, when you’re looking at the list of all conversations, the ones that have a best reply will say so.</li>    <li>Notice several things in this screenshot.  Todd started a conversation.  A couple of people “Like” it, and the reply by me was marked as the best reply.  Also notice the little blue bars next to our pictures.  Those are our points / reputation.      <br /><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[71]" border="0" alt="CropperCapture[71]" src="/blogs/laura/Lists/Posts/Attachments/184/CropperCapture71_3_4AC17BB6.png" width="567" height="902" /></li> </ul>  <h3>Likes and Ratings</h3>  <ul>   <li>You can click the “Like” button next to any conversation and/or any of the replies</li>    <li>There is a setting where site admins can choose whether to use the “Like / Unlike” or a rating scale 1 to 5.</li> </ul>  <h3>Your Reputation</h3>  <ul>   <li>Your reputation score is affected by the member achievements point system, which can be set up by the site admin on each community site. This score does not carry across to multiple community sites.</li>    <li>Assign a certain number of points for creating a new post, replying to a post, get likes or 4-5 star ratings on your posts, and points for getting marked as the best reply to a post.      <br /><a href="/blogs/laura/Lists/Posts/Attachments/184/CropperCapture75_2_4AC17BB6.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[75]" border="0" alt="CropperCapture[75]" src="/blogs/laura/Lists/Posts/Attachments/184/CropperCapture75_thumb_4AC17BB6.png" width="786" height="267" /></a></li> </ul>  <h3>Community Members</h3>  <ul>   <li>The members screen shows the top contributors by default, and can be switched to the “new members” or to the      <br />A-Z view.</li>    <li>See your own reputation score on the right.      <br /><a href="/blogs/laura/Lists/Posts/Attachments/184/CropperCapture76_2_4AC17BB6.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[76]" border="0" alt="CropperCapture[76]" src="/blogs/laura/Lists/Posts/Attachments/184/CropperCapture76_thumb_4AC17BB6.png" width="644" height="471" /></a></li> </ul>  <h3>Community Portal Site</h3>  <ul>   <li>There is a site collection template that you can use called a “Community Portal Site”.</li>    <li>A community portal site is not meant for having each community site as a sub-site.</li>    <li>Instead, the community portal site, AUTOMATICALLY shows a roll-up of all community sites in the environment, in other site collections and web apps.</li> </ul>  <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5b75da2e-305e-4e9f-a079-e478bd9c53ed" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint+2013" rel="tag">SharePoint 2013</a>,<a href="http://technorati.com/tags/social" rel="tag">social</a>,<a href="http://technorati.com/tags/communities" rel="tag">communities</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=8&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=8&RootFolder=*">MS Office</a></div>
<div><b>Published:</b> 7/16/2012 11:30 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/categories_3_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/categories_3_4AC17BB6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture71_3_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture71_3_4AC17BB6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture73_2_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture73_2_4AC17BB6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture73_thumb_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture73_thumb_4AC17BB6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture75_2_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture75_2_4AC17BB6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture75_thumb_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture75_thumb_4AC17BB6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture76_2_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture76_2_4AC17BB6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture76_thumb_4AC17BB6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/184/CropperCapture76_thumb_4AC17BB6.png</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>MS Office</category>
      <pubDate>Tue, 17 Jul 2012 03:00:20 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=184</guid>
    </item>
    <item>
      <title>SPTechCon Boston 2012 in July!</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=177</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass068998B72A644AADA004ED24251B0ADC"><p>The upcoming SharePoint Technology conference is July 22-25 in Boston, and I’m very excited because I’ll be doing three brand new sessions this time!  Jennifer Mason and I will be doing the full day workshop which we’ve presented before, but all of my other sessions will be new.  </p>
<blockquote><h4><font color="#9b00d3">You can register with the code ROGERS to receive $200 off of your cost!</font></h4></blockquote>
<p><a href="http://www.sptechcon.com/" target="_blank"><img src="http://www.sptechcon.com/Boston2012/images/SPTCBoston_large.jpg" border="0" alt="" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px" /></a></p>
<p>First, here's a <a href="/blogs/laura/Lists/WonderLauraCalendar">LINK TO MY CALENDAR</a>.</p>
<p>Here’s the breakdown:</p>
<h3>Using Report Builder for List Views and Charting</h3>
<p>With SharePoint lists and libraries, views are used as different ways of looking at the data. Sometimes the out of box view settings are not sufficient for what needs to be accomplished, when it comes to how the information appears on the page. In many cases, SharePoint Designer is used in order to customize those views or create data view Web parts. When SQL Server Reporting services (SQL 2008 R2) is installed on your server, it opens up a whole new way of creating list views, which is Report Builder 3.0. <br />In this session, you will learn an entirely different approach to list views. You will learn how quick and easy it is to create pretty and professional reports based on SharePoint list data, and even cross-site data. Reports, charts, and even maps can be created and displayed in a Web part on any SharePoint page. Not only are these reports printable and exportable, but they can be put together on your site to create your own dashboards.</p>
<p>Level : Intermediate <br />Topic Areas : Architecture Essentials, Business User Essentials </p>
<h3> </h3>
<h3>Creating a Forms Portal</h3>
<p>Does your organization currently have or plan to have multiple InfoPath forms that will be filled out by end users? Create a single portal for your organization’s forms, so that hunting around for forms is not necessary. In this session, you will learn how to create a forms portal in SharePoint or SharePoint Online with Office 365. <br />Form best practices and considerations will be covered, such as the use of site columns and content types. There is also standardization that can be done across multiple forms, such as the use of universal data connections and form templates and template parts. You will also learn how to create a user interface that is easy to navigate. Form administration dashboards will be created, so that the business users who are in charge of each form will have a location where their forms are available to them. <br />Also attend the class InfoPath and SharePoint Designer 2010 Workflow Best Practices for the InfoPath deep dive. In conjunction, the two classes take you through form development and the full user interface creation.</p>
<p>Level : Intermediate <br />Topic Areas : Architecture Essentials, Business User Essentials </p>
<p> </p>
<h3>InfoPath and SharePoint Designer 2010 Workflows Together</h3>
<p><strong><em>(I’ll be presenting this session twice since it’s so popular)</em></strong></p>
<p>In your organization, forms are everywhere. InfoPath is a program that lets you quickly and easily create forms for business users to fill out and submit. The easy part is creating the form. The more complicated part is <br />finding out what needs to happen when it gets submitted, and automating that process. This is where workflows come in. InfoPath forms and SharePoint Designer workflows can be used in conjunction to create a complete business process. <br />In this session, we will discuss and compare the different ways that forms can be submitted and streamlined, so that the life cycle of the form is efficient and logical. This includes best practices around the form’s data connections, buttons, rules, views, and the workflow that sends the form through an approval process. All of this is done without code, making the most out of the InfoPath and SharePoint Designer out-of-box functionalities. Also attend the class Creating a Forms Portal. In conjunction, the two classes take you through form development and the full user interface creation. <br />on.</p>
<p>Level : Advanced <br />Topic Areas : Architecture Essentials, Business User Essentials </p>
<p> </p>
<p>FULL DAY WORKSHOP</p>
<h3>Building Business Solutions: InfoPath &amp; Workflows</h3>
<p>Jennifer Mason and Laura Rogers</p>
<p>Business Processes and forms are everywhere. In your organization, there are always forms to be filled out, and these forms usually entail some type of automation such as a workflow. Microsoft Office InfoPath is a powerful form-creation tool that lets you create highly customized and professional-looking business forms, without writing any code. When you use this product in conjunction with SharePoint and SharePoint Designer, you have all the tools you need to build a no-code automated business solution. </p>
<p>In this all-day session, Laura and Jennifer will teach you everything you need to know about creating a full-blown business process using SharePoint, InfoPath and SharePoint Designer. Some basics will be covered, along with common practices for form-submission approval processes and SharePoint Designer workflows. When you walk away from this session, you will be confident that whatever processes the business throws at you, you will be able to create a solution using the tools and best practices that you learned during this workshop.</p>
<p>Level : Intermediate <br />Topic Areas : Line of Business Essentials</p>
<hr />
<h2>Book Signings – <font color="#008040" style="background-color:#ffff00">NEW!</font></h2>
<ul><li><strong>Beginning SharePoint 2010: Building Business Solutions with SharePoint <br /></strong>When: Tuesday, July 24th, 11:30 AM <br />Where: Rackspace booth</li>
<li><strong>Using Microsoft InfoPath 2010 with Microsoft SharePoint 2010: Step by Step <br /></strong>When: Tuesday, July 24th, 3:00 PM <br />Where: Rackspace booth</li>
<li><strong>SharePoint 2010 at Work <br /></strong>When: Tuesday, July 24th, 5:15 PM <br />Where: O’Reilly booth</li>
<li><strong>Using Microsoft InfoPath 2010 with Microsoft SharePoint 2010: Step by Step <br /></strong>When: Wednesday, July 25th, 11:00 AM <br />Where: O’Reilly booth</li></ul>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:7a428925-c9ae-4b53-a208-fff22bfa8eff" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/SPTechCon" rel="tag">SPTechCon</a>,<a href="http://technorati.com/tags/Workflows" rel="tag">Workflows</a>,<a href="http://technorati.com/tags/conference" rel="tag">conference</a>,<a href="http://technorati.com/tags/SSRS" rel="tag">SSRS</a>,<a href="http://technorati.com/tags/SQL+Server+Reporting+Services" rel="tag">SQL Server Reporting Services</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 5/31/2012 1:37 PM</div>
]]></description>
      <author>laura</author>
      <category>conference</category>
      <pubDate>Thu, 31 May 2012 17:37:28 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=177</guid>
    </item>
    <item>
      <title>InfoPath– Getting the “Signature”</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=183</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassF7F62F0E4D8A4272B33E4DD93B3DD4F1"><p>You can add real digital certificates to your InfoPath forms, but there are a few problems with them:</p>
<ul><li>They are not compatible with browser-based forms</li>
<li>They don’t collect any real data that you can do anything with.</li></ul>
<p>So, for most clients I work with, they don’t need to have “real” certificates involved, and simply need to capture a person’s name and the date that they are signing a form.</p>
<p>Here’s my solution, which I use some variation of in every single form I create:</p>
<ol><li>In your InfoPath form, in the Fields on the right, right click on myFields and choose <strong>Add</strong>… <br /></li>
<li>For the Name, type <strong>SignatureGroup</strong>.  For Type, select <strong>Group</strong>.  Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture62_2_7C4D5115.png"><img width="410" height="327" title="CropperCapture[62]" alt="CropperCapture[62]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture62_thumb_7C4D5115.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Right-click on SignatureGroup, and click Add… <br /></li>
<li>For the Name, type <strong>SignatureCheck</strong>.  Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture63_2_7C4D5115.png"><img width="410" height="327" title="CropperCapture[63]" alt="CropperCapture[63]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture63_thumb_7C4D5115.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Just like in steps 3/4, create another field called SignatureName <br /></li>
<li>Right-click on SignatureGroup one more time, and click <strong>Add… <br /></strong></li>
<li>Name this one <strong>SignatureDate</strong>, and for data type, select <strong>Date</strong>.  If you need date and time, you can choose DateTime.  Click <strong>OK</strong>. <br /></li>
<li>You can right click on any field on the right, and pick what type of control it needs to be.  Insert SignatureCheck as a check box, and insert SignatureName and SignatureDate as calculated values.  Type “I agree” next to the check box.  You can add any kind of extra verbiage that you need, such as “by signing this form, I agree to this… blah blah”  Your company’s lawyers can probably provide you with that part.  <img class="wlEmoticon wlEmoticon-winkingsmile" alt="Winking smile" src="/blogs/laura/Lists/Posts/Attachments/183/wlEmoticon-winkingsmile_2_7C4D5115.png" style="border-bottom-style:none;border-left-style:none;border-top-style:none;border-right-style:none" /> <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture64_2_7C4D5115.png"><img width="382" height="132" title="CropperCapture[64]" alt="CropperCapture[64]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture64_thumb_7C4D5115.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br />(<strong><em>Note</em></strong>: inserting those fields as calculated values is pretty much the same as inserting them as text boxes and then setting them to read only.  The point is that we don’t want people to be able to edit it.) <br /></li>
<li>Click to select the check box.  Open the check box properties.  Notice that by default, the value when cleared is <strong>no</strong>, and value when checked is <strong>yes</strong>.  These are important to remember, even the proper capitalization (all lowercase).  Close the properties, and open the rules pane on the right. <br /></li>
<li>With the check box still selected, Click the <strong>New</strong> button in the rules pane.  Choose <strong>Action</strong>. <br /></li>
<li>In the Details for box, type <strong>checked</strong>.  The condition needs to be that SignatureCheck is equal to yes.  Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture65_2_7C4D5115.png"><img width="722" height="151" title="CropperCapture[65]" alt="CropperCapture[65]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture65_thumb_7C4D5115.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Next to Run these actions, click the <strong>Add</strong> button.  Choose <strong>Set a field’s value</strong>. <br /></li>
<li>For the Field, choose SignatureName, and for the value, click the Function button and use the expression userName()   Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture66_2_2A3AA3CE.png"><img width="576" height="350" title="CropperCapture[66]" alt="CropperCapture[66]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture66_thumb_2A3AA3CE.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Click the Add button again, and this time the field is <strong>SignatureDate</strong>, and the function is <strong>today() <br /></strong>(If you used DateTime at step 7, you need to use the now() function instead) <br /></li>
<li>Next, we can add another rule, so that if the box is UNchecked, it clears the values out.  Select the “checked” rule, and click the little <strong>Copy</strong> icon at the top of the rule pane.  Click the <strong>Paste</strong> icon. <br /></li>
<li>Call this next rule “Uncheck”, and change the condition so that SignatureCheck is <strong>not</strong> equal to yes. <br /></li>
<li>Click the first action, and just delete the function out of the Value box so it’s blank.  Do the same for the other action, so that we’re basically clearing out both SignatureName and SignatureDate so they’re blank. <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture67_2_2A3AA3CE.png"><img width="333" height="566" title="CropperCapture[67]" alt="CropperCapture[67]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture67_thumb_2A3AA3CE.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Now test this out by clicking the Preview icon at the top.  Obviously you can make this prettier, but that part is up to you and your creativity.  <br />One more thing, is that you can disable the submit button if they do not check the box.  Click to select your <strong>Submit</strong> button.  Click the <strong>New</strong> button in the rules pane, and choose <strong>Formatting</strong>. <br /></li>
<li>Call this rule “disabled”.  The condition is if <strong>SignatureCheck</strong> is not equal to yes.  Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture68_2_2A3AA3CE.png"><img width="724" height="150" title="CropperCapture[68]" alt="CropperCapture[68]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture68_thumb_2A3AA3CE.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Still in the rule pane, check the <strong>Disable this control</strong> box at the bottom of your new rule. <br /><a href="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture69_2_2A3AA3CE.png"><img width="444" height="134" title="CropperCapture[69]" alt="CropperCapture[69]" src="/blogs/laura/Lists/Posts/Attachments/183/CropperCapture69_thumb_2A3AA3CE.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></li></ol>
<p>All done.  Now, if you don’t “sign” the document, you can’t submit it.  One thing to watch out for is the default submit button in the toolbar in InfoPath.  If you have this enabled, then people will be able to submit your form whether they signed it or not.  You can click the Data tab at the top, click Submit Options, and <strong>UNcheck</strong> the box for <strong>allow users to submit this form</strong>.  Now there will be no submit button in the toolbar.  You can also go to form options and remove the toolbar altogether if you want.</p>
<p>You’ll notice that when it captures your signature, it only gets your NT login name.  If you want to get all fancy and show a First Name, Last Name (which isn’t unique like the username), you could use the user profile service for that.  You can take a look at a <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=178" target="_blank">recent post</a> of mine to see how to obtain that information.</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:6d58734e-2390-4890-99cf-1de2445452c9" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/signature" rel="tag">signature</a>,<a href="http://technorati.com/tags/rules" rel="tag">rules</a>,<a href="http://technorati.com/tags/submit+form" rel="tag">submit form</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 7/12/2012 6:54 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture62_2_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture62_2_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture62_thumb_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture62_thumb_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture63_2_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture63_2_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture63_thumb_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture63_thumb_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture64_2_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture64_2_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture64_thumb_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture64_thumb_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture65_2_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture65_2_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture65_thumb_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture65_thumb_7C4D5115.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture66_2_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture66_2_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture66_thumb_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture66_thumb_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture67_2_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture67_2_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture67_thumb_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture67_thumb_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture68_2_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture68_2_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture68_thumb_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture68_thumb_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture69_2_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture69_2_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture69_thumb_2A3AA3CE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/CropperCapture69_thumb_2A3AA3CE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/wlEmoticon-winkingsmile_2_7C4D5115.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/183/wlEmoticon-winkingsmile_2_7C4D5115.png</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Thu, 12 Jul 2012 22:24:52 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=183</guid>
    </item>
    <item>
      <title>SharePoint Permissions Video Series</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=182</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass5B3CDF5228C046BDA28A656276F17162"><p>Jennifer Mason and I created a series of videos for beginners, to explain permissions in SharePoint.  Now that the series is complete, here are all of the links to our posts.  </p>  <p><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[61]" border="0" alt="CropperCapture[61]" src="/blogs/laura/Lists/Posts/Attachments/182/CropperCapture61_thumb_5A25EE37.png" width="413" height="311" /></p>  <ol>   <li><a href="http://www.rackspace.com/blog/understanding-permissions-in-office-365-the-basics/" target="_blank">Understanding Permissions in Office 365: The Basics</a> – by Jennifer</li>    <ul>     <li>Video 1: An Overview Of Permissions</li>      <li>Video 2: Creating New Users And Granting Them Access</li>      <li>Video 3: Introduction To The Pages used To Manage Permissions        <br /></li>   </ul>    <li><a href="http://www.rackspace.com/blog/sharepoint-permissions-a-more-detailed-look/" target="_blank">SharePoint Permissions: A More Detailed Look</a> – by Me</li>    <ul>     <li>Video 1: Create a new permission level in SharePoint Online</li>      <li>Video 2: Selective Permission Granting</li>      <li>Video 3: Office 365 Security Groups versus SharePoint Groups        <br /></li>   </ul>    <li><a href="http://www.rackspace.com/blog/understanding-permissions-in-office-365-inheritance-and-limited-access/" target="_blank">Understanding Permissions In Office 365: Inheritance And Limited Access</a> – by Jennifer</li>    <ul>     <li>Video 1: Inheritance</li>      <li>Video 2: Limited Access        <br /></li>   </ul>    <li><a href="http://www.rackspace.com/blog/sharepoint-permissions-custom-scenarios/" target="_blank">SharePoint Permissions: Custom Scenarios</a> – by Me</li>    <ul>     <li>Video 1: SharePoint Site Level Permissions</li>      <li>Video 2: SharePoint List and Library Level Permissions</li>      <li>Video 3: SharePoint Item (and Folder) Level Permissions        <br /></li>   </ul>    <li><a href="http://www.rackspace.com/blog/understanding-permissions-in-office-365-tips-tricks/" target="_blank">Understanding Permissions In Office 365: Tips &amp; Tricks</a> – by Jennifer</li>    <ul>     <li>Video 1: Basic Troubleshooting </li>      <li>Video 2: Look Up A User’s Permission</li>   </ul> </ol>  <p> </p>  <p>We hope you enjoy all of our videos! </p>  <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:78d53910-99f5-4bb5-a929-d584156f2a80" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/permissions" rel="tag">permissions</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a></div>
<div><b>Published:</b> 7/12/2012 12:22 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/182/CropperCapture61_2_5A25EE37.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/182/CropperCapture61_2_5A25EE37.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/182/CropperCapture61_thumb_5A25EE37.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/182/CropperCapture61_thumb_5A25EE37.png</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid</category>
      <pubDate>Thu, 12 Jul 2012 16:22:14 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=182</guid>
    </item>
    <item>
      <title>Permissions Web Part: List of Site Owners</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=180</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass52A1756BE4EC4FBD80FFE16018A020AC"><p>How would you like to have a nice pretty web part on the home page of each of your sites, showing a dynamic list of the people who are in the owners group for that site?  This is a great idea, because it gives the site users a quick reference list so that they know who to contact if they have questions about that site.</p>  <p><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture54_2_62A7CA57.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[54]" border="0" alt="CropperCapture[54]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture54_thumb_62A7CA57.png" width="388" height="116" /></a></p>  <p>This solution is applicable in any version of SharePoint 2010 or 2007.</p>  <ol>   <li>First, you need to double-check your group settings.  If you want to be able to display it in a web part, the membership needs to be visible to everyone.  In Site Settings –&gt; People and Groups, go to your group, and click Settings in the toolbar and Group Settings.  On that page, <strong>Who can view the membership of this group </strong>needs to be <strong>Everyone</strong>.       <br /></li>    <li>Open your site in SharePoint Designer.      <br /></li>    <li>In SharePoint Designer 2010, click <strong>Data Sources</strong> on the left.<em> (If you have SharePoint 2007, </em><a href="http://www.screencast.com/users/EndUserSharePoint/folders/SharePoint%20-%20Data%20View%20Web%20Part/media/49e9feec-f45a-471f-a85a-7f23e97aa31c" target="_blank"><em>here</em></a><em> is my screencast on how to do web services in SPD 2007)        <br /></em></li>    <li>Click the <strong>SOAP Service Connection</strong> button at the top.       <br /></li>    <li>Go to the <strong>Login</strong> tab, and choose <strong>Use</strong> <strong>Windows Authentication</strong>.       <br /><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture48_2_62A7CA57.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[48]" border="0" alt="CropperCapture[48]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture48_thumb_62A7CA57.png" width="408" height="298" /></a></li>    <li>Go back to the <strong>Source</strong> tab.       <br /></li>    <li>Type or paste in your site’s URL in the <strong>Service description location</strong> box, with /_vti_bin/usergroup.asmx at the end of it.  So mine looks like this:       <br /><a href="http://laurarogers.sharepoint.com/_vti_bin/usergroup.asmx">http://laurarogers.sharepoint.com/_vti_bin/usergroup.asmx</a>       <br />(This can just be the root of your site collection.  All of the sub-sites will have the same list of users and groups, so this URL won’t have to be changed for each different sub-site that you use this web part on)       <br /></li>    <li>Click the <strong>Connect</strong> button.       <br /></li>    <li>For the <strong>Port</strong>, I usually pick UserGroupSoap12, but I’m not sure if it matters which one you pick.       <br /></li>    <li>In the <strong>Operation</strong> drop-down box, choose <strong>GetUserCollectionFromGroup</strong>.       <br /></li>    <li>In the Parameters section, double-click <strong>groupName</strong>.  Type the name of <em><strong>your</strong></em> SharePoint group in the Value box.  Also, be sure to check the box <strong>The value of this parameter…        <br /></strong>Click <strong>OK.        <br /></strong><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture47_2_62A7CA57.png"><strong><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[47]" border="0" alt="CropperCapture[47]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture47_thumb_62A7CA57.png" width="448" height="256" /></strong></a>       <br /></li>    <li>Your screen should look something like this.      <br /><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture49_2_62A7CA57.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[49]" border="0" alt="CropperCapture[49]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture49_thumb_62A7CA57.png" width="542" height="696" /></a>       <br /></li>    <li>On the General tab, type the Name <strong>Site Owners</strong>.  Click <strong>OK</strong>.       <br /></li>    <li>Create a blank (temporary) web part page in order to create a new data view web part.  (one way: in the browser, click Site Actions –&gt; More Options… –&gt; choose Web Part Page, and click Create. This will let you name the file and put it in any library)      <br /></li>    <li>In SharePoint Designer, open the new page you created.  (You can click the little pushpin icon next to All Files on the left, and drill down to the library you put this new page in.  Open your new page and click Edit File.)      <br /></li>    <li>Those blue rectangles on the page are web part zones.  Put your cursor in one of them.  <br /><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture51_2_62A7CA57.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[51]" border="0" alt="CropperCapture[51]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture51_thumb_62A7CA57.png" width="508" height="327" /></a>       <br /></li>    <li>Click the <strong>Insert</strong> tab at the top, click the Data View button in the ribbon, and click the name of your new <strong>Site Owners</strong> data connection in that list.  You may have to scroll down in the drop-down to see it.       <br /><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture52_2_62A7CA57.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[52]" border="0" alt="CropperCapture[52]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture52_thumb_62A7CA57.png" width="726" height="179" /></a>       <br /></li>    <li>Alright, there’s your list of site owners, but it’s a bit messy.  We don’t need all that stuff.  Click the <strong>Add/Remove Columns</strong> button in the ribbon.  Remove everything except the Name and email columns, and click <strong>OK</strong>.  <br /></li>    <li>We’re going to make the email column a hyperlink to send each person an email.  You can alternately just remove the email column and leave just the name, and make the name a hyperlink instead.  Click to select the first person’s email address.  On the Insert tab, click <strong>Hyperlink</strong>.  In the Link To column on the left, click Email address.  In the Email address box, type mailto:{@Email}       <br />You can also type in a subject if you’d like, such as “Question about Team Site”.  Click <strong>OK</strong>.       <br /><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture53_2_62A7CA57.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[53]" border="0" alt="CropperCapture[53]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture53_thumb_62A7CA57.png" width="646" height="328" /></a>       <br /></li>    <li><strong>Save</strong> the page.  With your cursor in the web part you just created, click the Web Part tab in the ribbon.  Click the <strong>To File</strong> button.  Save this .WEBPART file off to your desktop or wherever.       <br /></li>    <li>Go to your home page, and upload and insert this new web part onto your page.  There’s your list of site admins!      <br /></li>    <li>Now, you can STILL use this same web part on all the other sites in this site collection, without having to go back into SharePoint Designer.  In my example, I have a site called Project A, and the name of the owners group is <strong>Project A Owners</strong>.  Go to the Project A home page, and Upload and insert that same web part.       <br /></li>    <li>Open the web part toolpane (Edit Web Part) of the new web part you just inserted.  Click the <strong>Parameters Editor</strong> button.       <br /></li>    <li>Find the parameter that says Name=”groupName”, and you’ll see that the default value says “Team Site Owners” (from step 11).  Change the text of Team Site Owners to say “Project A Owners” instead. (Note that if you didn’t check the box in step 11, you won’t see your parameter here).      <br /><a href="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture55_2_62A7CA57.png"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" title="CropperCapture[55]" border="0" alt="CropperCapture[55]" src="/blogs/laura/Lists/Posts/Attachments/180/CropperCapture55_thumb_62A7CA57.png" width="629" height="185" /></a>       <br /></li>    <li>Click <strong>Save</strong>.  Click <strong>OK </strong>in the web part toolpane on the right side of the browser.  <br /></li>    <li>Once you stop editing the page, and refresh the browser, you’ll see your new list of people, you just won’t see it immediately.  Done!</li> </ol>  <p>Note that I couldn’t get this to work in Office 365, because I can’t seem to get any of the web services to work in data view web parts like this. </p>  <h3>Similar Web Parts</h3>  <p>There are a couple of out of box web parts that do something similar, that are important to note.  <em><font color="#0000ff">(Thanks, Craig for your question about this in the comments below)</font></em></p>  <p>The <strong>Site Users</strong> web part will show a list of people who have permission to the site, and it lets you see their presence (online status) and quickly send instant messages to them or click on their name to see their profile.  In this particular case, I didn’t use this web part for a couple of reasons.  First of all, at this particular client’s workplace, they have no instant messaging client at all.  Secondly, most of the SharePoint groups simply contain active directory groups, which means that you wouldn’t be able to directly contact individuals.  The third reason was simply formatting.  They wanted the names displayed with the email address next to them.</p>  <p>The <strong>Contact Details</strong> web part is one that is very simple but pretty.  It lets you enter a single person’s name in the web part settings, and it displays some basic info about them, such as their picture, name and job title, with presence information.  Unfortunately, this is static information, and will not automatically change as people are added and removed from SharePoint groups.</p>  <br />  <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:2afc3f7f-4424-4435-a564-463c78527d0d" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a>,<a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/web+parts" rel="tag">web parts</a>,<a href="http://technorati.com/tags/SharePoint+group" rel="tag">SharePoint group</a>,<a href="http://technorati.com/tags/site+owners" rel="tag">site owners</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 7/9/2012 11:12 AM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture47_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture47_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture47_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture47_thumb_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture48_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture48_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture48_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture48_thumb_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture49_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture49_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture49_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture49_thumb_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture51_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture51_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture51_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture51_thumb_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture52_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture52_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture52_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture52_thumb_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture53_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture53_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture53_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture53_thumb_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture54_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture54_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture54_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture54_thumb_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture55_2_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture55_2_62A7CA57.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture55_thumb_62A7CA57.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/180/CropperCapture55_thumb_62A7CA57.png</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>Web Parts</category>
      <pubDate>Mon, 09 Jul 2012 14:43:28 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=180</guid>
    </item>
    <item>
      <title>SharePoint Tuesday! Come visit me Online</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=181</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass95389EA3863044078CA3E2D13B5A4339"><p>Every Tuesday, Rackspace hosts a <strong>FREE</strong> <strong>virtual question and answer session</strong>.  Each of us on the SharePoint team have been taking turns.  On July 17th, 2012, it’s my turn!  </p>  <p><a href="http://www.rackspace.com/blog/you-bring-questions-well-bring-answers-sharepoint-tuesday-virtual-qa/" target="_blank"><img style="background-image:none;border-bottom:0px;border-left:0px;margin:2px 5px 2px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px" border="0" align="left" src="http://c179631.r31.cf0.rackcdn.com/sharepoint-tuesday-graphic.jpg" /></a>This will be from 2 to 3 Central time, and you can <a href="https://cc.readytalk.com/cc/s/showReg?udc=4f6gcyctqhqb" target="_blank">REGISTER HERE</a> to attend.</p>  <p>This is going to be a great interactive session, and I’m really looking forward to seeing you all there!  My areas of expertise are workflows, InfoPath, and data view web parts, but you probably already know that if you read my blog.  <img style="border-bottom-style:none;border-left-style:none;border-top-style:none;border-right-style:none" class="wlEmoticon wlEmoticon-winkingsmile" alt="Winking smile" src="/blogs/laura/Lists/Posts/Attachments/181/wlEmoticon-winkingsmile_2_5631CCE8.png" /></p>  <p> </p>  <p>July 17th, 2-3 central, FREE</p>  <p> </p>  <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:a6115f0d-dcc3-4ab4-b475-43fcb970a338" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/questions" rel="tag">questions</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 7/9/2012 10:33 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/181/wlEmoticon-winkingsmile_2_5631CCE8.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/181/wlEmoticon-winkingsmile_2_5631CCE8.png</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>conference</category>
      <pubDate>Tue, 10 Jul 2012 02:04:16 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=181</guid>
    </item>
    <item>
      <title>Redirect Users if They’ve Taken the Survey</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=179</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass2DEFD154414D4E45BDCFD581D6942C1B"><p>The basis for today’s blog post is regarding some work I’ve been doing with a client and the <a href="http://www.microsoft.com/en-us/download/details.aspx?id=28178" target="_blank">Microsoft Productivity Hub</a> (<a href="http://www.redtech.com/productivityhub/Pages/default.aspx" target="_blank">here’s a description of it</a>).  The Productivity Hub is great because it gives the enterprise users a one stop place to go to for self-service training on many different Microsoft products.  </p>  <p>The client wanted to provide end users a link to the Productivity Hub in their environment, but they didn’t want to overwhelm everyone, and wanted to gradually wean them into it.  They also wanted to start out by just providing the SharePoint training modules at first, and then put the other MS Office modules later, in Phase 2, once they’re used to the interface.</p>  <p>I created a 45 minute video of “Introduction to SharePoint” for end users for this client (specific to their own site and environment).  A cool think about the Productivity Hub is that it has a built in Quiz.  There are already existing quiz questions for products such as Excel and Word.  There weren’t any SharePoint questions, so I created some based off of topics I had covered in my own video.  FUN!</p>  <p>Then, here’s the cool part that this blog is about.  We wanted the end users to HAVE to watch my video and take the quiz FIRST before going through all the other SharePoint content in the Productivity Hub.  I created a web part and put it on the home page.  If you haven’t taken the quiz yet, it automatically redirects you to a web part page that only has my video embedded and a big button to “Take the Quiz”.</p>  <p><strong><font color="#9b00d3">Keep in mind: This solution can be applied to ANY SharePoint list.  The concept is that you give a condition such as a certain item exists or doesn’t exist in the list, and the user gets redirected.  Therefore, this solution can be done in ANY version of SharePoint or SharePoint Online with Office 365.</font></strong></p>  <p>This is how I did it:</p>  <p>In the productivity hub, there is a list called Quiz Results.  So basically, if the currently logged in user has no items in that list under the topic “SharePoint”, I want to redirect them.  </p>  <ol>   <li>Create a blank web part page.  </li> (If you’re not sure what it means to create a web part page, <a href="http://office.microsoft.com/en-us/sharepoint-designer-help/create-sharepoint-site-pages-HA101782505.aspx" target="_blank">click here</a>.)     <br />    <li>On that web part page, put the Media web part with your video, and under that put a hyperlink or pretty image with hyperlink to fill out the quiz.  Note that the Media Web Part is only available with the enterprise version of SharePoint.      <br /></li>    <li>Insert the quiz list web part on your homepage, and set up a filter so that the <strong>Created By</strong> field equals [Me], and in my case I also added AND Product is equal to SharePoint.       <br /></li>    <li>In the web part toolpane, in the Layout section, check the box next to <strong>Hidden</strong>.       <br /></li>    <li>Open this page in SharePoint Designer.  Put your cursor inside this new web part, and click the <strong>Design</strong> tab in the ribbon.       <br /></li>    <li>In the Preview section of the Design tab, click the drop-down and choose <strong>No Matching Items Template</strong>.       <br /></li>    <li>Click the <strong>Split</strong> button at the bottom of SharePoint Designer.  Find the text in the code portion that says “There are no items to show in this view”. Put your cursor to the right of it.       <br />Extra tips: After you select the text in the bottom design pane, click the <strong>Design</strong> tab, click <strong>Customize XSLT</strong> and choose Customize item. Then, you’ll see that in the code you can see the exact text that you have selected.  In the code, you can put your cursor after the &lt;xsl: value-of select=”$NoAnnouncementsHowTo”/&gt;      <br /></li>    <li>This is the code that you need to paste in, so that users get redirected to wherever you want them to get redirected to.      <br />&lt;meta http-equiv=&quot;refresh&quot; content=&quot;0;url=http://yoursitetoredirectto&quot;&gt;&lt;/meta&gt;    <br /></li>    <li><strong>Save</strong> the page.  (oh, and that number 0 in there is the number of seconds until you get redirected, which is none in this case because I want it to be instantaneous)       <br /></li> </ol>  <p>Basically, if there are no items in the list, we’re redirecting the user somewhere else.  In my case, if they haven’t taken the quiz yet, I’m redirecting them to the page that I created at step 2, with my instructional video and quiz.  After they’ve taken the quiz, then the next time they visit the productivity hub, they will have “unlocked” all the fancy web parts on the home page, with have the links to all the other help content.</p>  <p>Another method, is if you want people to be redirected if there IS something in that list of items, you’d put your cursor in the code inside the actual row of data where the item is, instead of in the no items template.</p>  <p> </p>  <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:36132fb2-b25f-4ad9-bcb7-f02ddbd1e62c" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Productivity+Hub" rel="tag">Productivity Hub</a>,<a href="http://technorati.com/tags/redirect" rel="tag">redirect</a>,<a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a>,<a href="http://technorati.com/tags/user+adoption" rel="tag">user adoption</a>,<a href="http://technorati.com/tags/training" rel="tag">training</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 6/28/2012 4:10 PM</div>
]]></description>
      <author>laura</author>
      <category>Web Parts</category>
      <pubDate>Thu, 28 Jun 2012 19:42:11 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=179</guid>
    </item>
    <item>
      <title>InfoPath 2010: Pre-populate the People Picker</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=178</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassDDD5A7B903C54C7A9DDC0B6D3536E904"><p>In business forms, a common requirement is to pre-populate a people picker control, such as to default to the name of the currently logged in user, which would then allow them to pick someone else if needed.  For example, a secretary could fill out a travel request for her boss, and in the “Traveler” people picker, she could pick his name instead of her own.</p>
<p><font color="#9b00d3"><strong>This solution can be done with any version of SharePoint 2010 or SharePoint Online with Office 365.</strong></font> </p>
<p>Here’s a little bit of background on how the people picker is structured:<a href="/blogs/laura/Lists/Posts/Attachments/178/image_2_3A49519C.png"><img width="484" height="52" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/178/image_thumb_3A49519C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p>
<p>It is structured as a repeating table, and the “group” can be renamed.  No other fields can be renamed</p>
<p>• <strong>DisplayName</strong> = Laura Rogers <br />This is the first name and last name of the user, which is going to be equivalent to the value of the PreferredName field in the user profile service.</p>
<p>• <strong>AccountId</strong> = contoso\laura <br />This is domain\username</p>
<p>• <strong>AccountType</strong> = User <br />This is User or Group.</p>
<p><a href="/blogs/laura/Lists/Posts/Attachments/178/image_4_3A49519C.png"><img width="374" height="160" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/178/image_thumb_1_3A49519C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p>
<p>Here are the steps to prepopulate the people picker:</p>
<ol><li>On the <strong>Data</strong> tab, click <strong>Data Connections</strong>.  Click <strong>Add.. <br /></strong></li>
<li>Choose Receive data and click Next.  Choose SOAP web service, and click <strong>Next.</strong></li>
<li>Type the URL of your site, and after the site, type /_vti_bin/userprofileservice.asmx <br />Click Next. <br /><img src="/blogs/laura/Lists/Posts/Attachments/80/image_40d214cce2a34f78af48c48555bab19c_3F6A8912.png" alt="" /></li>
<li>Choose GetUserProfileByName.  Click <strong>Next.</strong>  Click <strong>Next</strong>.  Click <strong>Next</strong>. Click <strong>Finish. <br /></strong><a href="/blogs/laura/Lists/Posts/Attachments/178/image_6_3A49519C.png"><img width="644" height="477" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/178/image_thumb_2_3A49519C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>All we’ve done so far is create a connection to the user profile service web service, so that we can get some additional information about the logged in user.  Since we only want the people picker to get pre-populated when it’s a new form, we’re going to create a form load rule that does this.  <br /><strong>If you haven’t already placed a people picker control on your InfoPath 2010 form, go ahead and do that. <br /></strong></li>
<li>On the <strong>Data</strong> tab, click <strong>Form Load. <br /></strong></li>
<li>In the form load rule pane on the right, click New and choose Action. <br /></li>
<li>We only want this to happen if there’s no name in the people picker yet, so we’ll create a condition first.  Under the word “Condition”, click the blue word None – … <br /></li>
<li>Creating the condition: In the first drop-down box (myFields), click Select a Field or Group.  Navigate down to your people picker control group and expand it.  Select the AccountId and click OK. <br /><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture38_2_3A49519C.png"><img width="222" height="96" title="CropperCapture[38]" alt="CropperCapture[38]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture38_thumb_3A49519C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>On the condition’s second drop-down, choose <strong>Is Blank</strong>.  Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture40_2_3A49519C.png"><img width="725" height="151" title="CropperCapture[40]" alt="CropperCapture[40]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture40_thumb_3A49519C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Back in the form load rule pane, click <strong>Add</strong> and choose <strong>Set a Field’s Value</strong>. <br /></li>
<li>For the <strong>Field</strong> box, select the DisplayName field inside your people picker form (that DisplayName field you see in the screenshot at step 9).  Click <strong>OK</strong>. <br /></li>
<li>Click the <strong>fx</strong> (function) button next to the <strong>Value</strong> box.  Click <strong>Insert Field or Group</strong>… In the <strong>Fields</strong> drop-down box, choose <strong>GetUserProfileByName. <br /><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture41_2_3A49519C.png"><img width="363" height="170" title="CropperCapture[41]" alt="CropperCapture[41]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture41_thumb_3A49519C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></strong></li>
<li>Drill all the way in the DataFields until you get to <strong>Value. <br /></strong><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture42_2_3A49519C.png"><img width="363" height="443" title="CropperCapture[42]" alt="CropperCapture[42]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture42_thumb_3A49519C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Click the <strong>Filter Data</strong> button.  Click the<strong> Add</strong> button. <br /></li>
<li>In the first drop-down box that says Value, choose <strong>Select a field or group</strong>.  Select the <strong>Name</strong> field.  Click <strong>OK. <br /></strong></li>
<li>Leave the middle drop-down to say <strong>Is equal to</strong>.  In the third drop-down box, choose <strong>Type text</strong>.  Type the word <strong>PreferredName <br /></strong>It will automatically put the quotes around it for you, you don’t need to type those.  (this is case sensitive, so you have to type it exactly right) Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture43_2_3A49519C.png"><img width="725" height="174" title="CropperCapture[43]" alt="CropperCapture[43]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture43_thumb_2557CF29.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>On the Filter Data screen, click <strong>OK</strong>.  On the select a field or group screen, click <strong>OK</strong>.  On the insert formula screen, click <strong>OK</strong>. <br /></li>
<li>This is what your <strong>Rule Detail</strong> screen will look like.  Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture44_2_2557CF29.png"><img width="585" height="358" title="CropperCapture[44]" alt="CropperCapture[44]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture44_thumb_2557CF29.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Back over in the form load rule pane on the right, click the <strong>Add</strong> button again, and choose <strong>Set a field’s value</strong>. <br /></li>
<li>For the <strong>Field</strong>, drill down to your form’s people picker, and select the <strong>AccountId</strong> field, as seen in step 9.  Click OK. <br /></li>
<li>Repeat steps 13-16.  <br /></li>
<li>Leave the middle drop-down to say <strong>Is equal to</strong>. In the third drop-down box, choose <strong>Type text</strong>. Type the word <strong>AccountName <br /></strong>Click<strong> OK. <br /></strong></li>
<li>This is what your <strong>Rule Detail</strong> screen will look like.  Click<strong> OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture45_2_2557CF29.png"><img width="585" height="358" title="CropperCapture[45]" alt="CropperCapture[45]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture45_thumb_2557CF29.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>In the Rule pane on the right, click the <strong>Add</strong> button yet again.  Choose <strong>set a field’s value. <br /></strong></li>
<li>For the Field, pick the <strong>AccountType</strong> field within your people picker.  You can see what this field looks like back in step 9.  Click <strong>OK</strong>. <br /></li>
<li>In the <strong>Value</strong> box, just type the word <strong>User <br /></strong></li>
<li>This is what your Rule Details screen will look like.  Click <strong>OK</strong>. <br /><a href="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture46_2_2557CF29.png"><img width="585" height="358" title="CropperCapture[46]" alt="CropperCapture[46]" src="/blogs/laura/Lists/Posts/Attachments/178/CropperCapture46_thumb_2557CF29.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a> <br /></li>
<li>Done.  Publish your form and try it out.  When you fill out a new form, your own name will be populated in the people picker.</li></ol>
<p>If you need to do this solution in SharePoint 2007, follow Lori Gowin’s 2 part blog series that starts <a href="http://www.pointgowin.com/seethepoint/Lists/Posts/Post.aspx?ID=3" target="_blank">here</a>.</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:145796a5-9ad1-472b-840a-1fd0f04b930e" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/User+Profiles" rel="tag">User Profiles</a>,<a href="http://technorati.com/tags/web+services" rel="tag">web services</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 6/27/2012 11:30 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture38_2_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture38_2_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture38_thumb_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture38_thumb_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture40_2_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture40_2_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture40_thumb_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture40_thumb_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture41_2_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture41_2_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture41_thumb_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture41_thumb_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture42_2_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture42_2_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture42_thumb_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture42_thumb_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture43_2_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture43_2_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture43_thumb_2557CF29.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture43_thumb_2557CF29.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture44_2_2557CF29.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture44_2_2557CF29.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture44_thumb_2557CF29.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture44_thumb_2557CF29.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture45_2_2557CF29.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture45_2_2557CF29.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture45_thumb_2557CF29.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture45_thumb_2557CF29.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture46_2_2557CF29.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture46_2_2557CF29.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture46_thumb_2557CF29.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/CropperCapture46_thumb_2557CF29.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_2_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_2_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_4_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_4_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_6_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_6_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_thumb_1_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_thumb_1_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_thumb_2_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_thumb_2_3A49519C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_thumb_3A49519C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/178/image_thumb_3A49519C.png</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Thu, 28 Jun 2012 03:01:59 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=178</guid>
    </item>
    <item>
      <title>Summing Calculated Columns</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=62</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassF57D3AF97147402C9D9F01302B56397B"> <p>This is basically a re-post of something that I did on endusersharepoint.com a couple of weeks ago…</p> <p>Have you ever noticed that in SharePoint views, when selecting to view “Totals”, calculated columns aren’t listed as an option for column totals? In this screencast, I demonstrate this dilemma, and shows how you CAN create a view that displays calculated column totals. This is done by creating a Data View Web Part in SharePoint Designer. Also, if you’ve noticed that calculated columns don’t ever show up in a data view web part, I show the fix for this, too.</p> <p><a href="http://www.screencast.com/users/EndUserSharePoint/folders/SharePoint%20-%20Data%20View%20Web%20Part/media/9b4f373b-530e-4abc-9daa-90549b9b5642" target="_blank">Here is the link to my screencast showing how to accomplish this.</a></p> <p><a href="http://www.screencast.com/users/EndUserSharePoint/folders/SharePoint%20-%20Data%20View%20Web%20Part/media/9b4f373b-530e-4abc-9daa-90549b9b5642" target="_blank"><img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="CropperCapture[67]" border="0" alt="CropperCapture[67]" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture67_28DDBD05.png" width="535" height="409" /></a> </p> <p>Also, my buddy Mark Rackley, the SharePoint Hillbilly, <a href="http://www.sharepointhillbilly.com/archive/2010/03/30/sharepoint---summing-calculated-columns-by-groups-dvwp.aspx" target="_blank">has just written a blog post</a>, that is a good supplement to what I show in the video.  He shows how to create sums for groups in the DVWP.</p> <p> </p> <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:56f08244-53f0-4211-a71f-49005c5d945b" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/data+view+web+part" rel="tag">data view web part</a>,<a href="http://technorati.com/tags/calculated+columns" rel="tag">calculated columns</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 3/31/2010 8:20 AM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Web Parts</category>
      <pubDate>Wed, 31 Mar 2010 12:20:43 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=62</guid>
    </item>
    <item>
      <title>Query String URLs are Magical (Part 2 of 4)</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=70</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass29E9BE69CBCC4D408F0B493B8C810E0F"><p>In my <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=77">last post</a>, I showed you what query string URLs are, and a simple example of what can be done with the MOSS Enterprise Query String URL Filter Web Part.  In this post, I’ll get more into a really cool example of what can be accomplished with query strings, and taking it to the next level.</p>
<p>In this example, we have a site with </p>
<ul><li><strong>Project List</strong> </li>
<li>Tasks </li>
<li>Issues </li>
<li>Change History </li>
<li>Status Reports</li></ul>
<p>The point is that all of these lists have something in common… the project.  The main project list can have multiple items associated with it, from each of the other lists.  We want to display all of these items on the same page in SharePoint.  So, we create a “Project ID” field, which will be used as the common thread.  We’ll start with the built in ID field in the main project list, and in each of the other lists, create a number field called “<strong>ProjID</strong>”.</p>
<p>I usually use workflows heavily in a solution like this, but this post isn’t really about that part.  For now, I just want to show you how to create the “Project Details” page that shows all of the associated info for any given project, in which all associated lists have one common field.  </p>
<ol><li>Create a blank web part page, which will be used as the project details page.  Use the method that I showed <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=75">here</a>, create a blank ASPX page called <strong>ProjectDetails.aspx</strong>, and save it somewhere like the root of the site. <br /></li>
<li>A workflow step needs to be created on the main project list, so that each time a new project is created, a special URL is created for that project, for the details page.  So first, in the main project list, create a new hyperlink field, and call it <strong>Detail Link</strong>.<br /></li>
<li>Open the site in SharePoint Designer.  Create a new workflow, and associate it with the main Project list, so that it runs when a new item is created.<br /><img width="484" height="333" title="new workflow" alt="new workflow" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture117_4FEB7C08.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>The workflow has no conditions.  For the first action, choose <strong>Build Dynamic String</strong>.  Click the blue words “dynamic string”.  Type in the URL to the new ProjectDetails.aspx page that you created at step one (this can be a relative URL, if you’d like).  At the end of the aspx, type <strong>?<font color="#008000">Project</font>=<br /></strong><img width="484" height="87" title="build string" alt="build string" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture118_4FEB7C08.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br />Then click the <strong>Add Lookup</strong> button, and choose the <strong>ID</strong> field from the current list.  At the end, it’s important to put the <strong>comma space</strong> “Project Details”, exactly like in the screenshot above.<br /><br />So, WHY are we doing all this?  What does it mean?  Well, this is the bread and butter of how your query string URL works.  In my <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=77">previous post</a>, I explained query strings.  We’re going to create a “query” called <strong><font color="#008000">Project</font></strong>, and we’re going to use the <strong>ID</strong> as the unique identifier for the project.  This is going to be the same number that is tied back to all those other lists related to this project, that will exist as the <strong>ProjID</strong>.  The word “<font color="#008000">Project</font>” above in the URL.. we’re just making it up for now (it doesn’t come from anywhere else at this point, and isn’t yet related to any fields or anything we’ve done so far).  The reason for the comma space and Project Details, is that this is how you form the hyperlink, so that <strong>Project Details</strong> will be the actual words that users click on to get to that detail page.<br /></li>
<li>Name this variable <strong>ProjDetailURL</strong> (instead of the default word “variable”)<br /></li>
<li>The next action of the workflow is <strong>Set Field in Current Item</strong>.  Click the blue word “field”, and select the <strong>Detail Link</strong> field that you created at step two.<br /></li>
<li>In the blue “value” box, click the little function button, and select <strong>Workflow Data</strong> as the source, and pick the <strong>ProjDetailURL</strong> variable that you created at step five.<br /><br /><img width="519" height="194" title="CropperCapture[119]" alt="CropperCapture[119]" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture119_4FEB7C08.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>Click <strong>Finish</strong> to complete the workflow.<br /></li>
<li>In the browser, go to the <strong>ProjectDetails.aspx</strong> page, so you can start populating it with web parts.  In Edit Mode, click to add a web part, and add all of the associated lists, which in this example would be all of those bullet points at the beginning.  <br /></li>
<li>Also add the <strong>Query String URL Filter</strong> web part to the top of the page.<br /></li>
<li>Edit the views of each of the list web parts on the page, and add the <strong>ProjID</strong> field to the current view for each.<br /></li>
<li>Go to the web part properties of the Query String URL filter web part.  For the <strong>Query String Parameter Name</strong>, type “<strong><font color="#008000">Project</font></strong>”, like this screenshot below.  This word “<font color="#008000">Project</font>” ties back to step four.  Use the same word here that you used there.  Click OK in the web part tool pane.<br /><img width="228" height="234" title="CropperCapture[120]" alt="CropperCapture[120]" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture120_4FEB7C08.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>Time to create all of the web part connections from the Query String URL, to each of the other web parts on the page.  We’ll start with the Project List.  <br />With the page in edit mode, click the Edit button at the top right corner of the Query String (URL) Filter Web Part. <br /></li>
<li>Click <strong>Connections –&gt; Send Filter Values To –&gt; Project List</strong>.  Choose the <strong>ID</strong> field, and click <strong>Finish</strong>.<br /><img width="363" height="186" title="config connection" alt="config connection" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture121_4FEB7C08.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>On the Query String filter web part again, click <strong>Connections –&gt; Send Filter Values To –&gt; Tasks.  </strong>Choose <strong>ProjID</strong> as the consumer field name, and click Finish. (This is why we did step eleven.  If the field is not showing in the view, you can’t create a connection to it.<br /></li>
<li>Repeat step fifteen, creating connections from the Query String URL filter web part to every single other web part on the page.  After all the connections have been created, the web part will look like this:<br /><img width="226" height="135" title="connections" alt="connections" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture122_4FEB7C08.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>Then <strong>Exit Edit Mode</strong>.  All done!</li></ol>
<p>Time to try it out.  Put a query string in the URL, and you’ll see that it will automatically filter all the web parts by that one project ID.  Notice the browser URL, the fact that the Query String URL filter web part is hidden, and that all of the web parts show the filter symbol in the appropriate column. Click the picture below to zoom in.<br /><a href="/blogs/laura/Lists/Posts/Attachments/78/CropperCapture123_3_4FEB7C08.png" target="_blank"><img width="644" height="337" title="Project Details Result" alt="Project Details Result" src="/blogs/laura/Lists/Posts/Attachments/70/CropperCapture123_thumb_1_4FEB7C08.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /></a> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>To finish it out, try creating a new Project in the main project list, the one we associated the workflow with in step three.  Check out the resulting URL that the workflow creates, and you’ll see that it takes you to the project details page for that project.</p>
<p>Yes, I agree that displaying the <strong>ProjID</strong> on all of those web parts is quite redundant.  You can make any or all of those web parts as Data View Web Parts, and you don’t have to display the ProjID as a column.  It will then let you create connections to the web parts using any fields in the list, not just displayed ones.</p>
<p>Obviously this is not a complete solution, but a piece of a puzzle.  The rest of the solution would entail workflows that automatically create tasks at certain phases of the project, and form pages that let you click to create a new issue or status report for that project.  Maybe this series of blog posts will be more than four parts.  ;-)</p>
<p>Here's my associated screencast:<br /><a href="http://www.screencast.com/users/EndUserSharePoint/folders/SharePoint%20-%20Data%20View%20Web%20Part/media/401b4bd1-a46c-4741-ad67-3abcabebe086"><font color="#3966bf" size="1">MOSS Enterprise – Query String URL Filter Web Parts – Ramping It Up (Screencast)</font></a></p>
<p>Here are the other parts to this series:</p>
<ul><li><div class="MsoNormal" style="margin:0in 0in 10pt"><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=77"><font color="#0000ff" face="Calibri" size="3">Query String URLs are like, SO Useful! (Part 1 of 4)</font><span><font size="3"><font color="#0000ff"><font face="Calibri"> </font></font></font></span></a></div></li>
<li><div class="MsoNormal" style="margin:0in 0in 10pt"><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=81"><font color="#0000ff" face="Calibri" size="3">The Query String URL &amp; Data View Web Parts (Part 3 of 4)</font><span><font size="3"><font color="#0000ff"><font face="Calibri"> </font></font></font></span></a></div></li>
<li><div class="MsoNormal" style="margin:0in 0in 10pt"><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=82"><font color="#0000ff" face="Calibri" size="3">SharePoint 2010 Related Lists (Part 4 of 4)</font><span><font size="3"><font color="#0000ff"><font face="Calibri"> </font></font></font></span></a></div></li></ul>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:f7b38de6-35a2-4501-9e61-3676f62b69ef" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/query+string+url" rel="tag">query string url</a>,<a href="http://technorati.com/tags/sharepoint" rel="tag">sharepoint</a>,<a href="http://technorati.com/tags/web+parts" rel="tag">web parts</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 5/22/2010 2:39 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture117_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture117_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture118_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture118_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture119_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture119_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture120_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture120_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture121_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture121_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture122_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture122_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture123_3_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture123_3_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture123_thumb_1_4FEB7C08.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture123_thumb_1_4FEB7C08.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture67_28DDBD05.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/70/CropperCapture67_28DDBD05.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Web Parts</category>
      <pubDate>Sat, 22 May 2010 18:39:35 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=70</guid>
    </item>
    <item>
      <title>Creating a Workflow Initiation Form for Approvals</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=176</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassA0232C152C3A4A86802D4499564B8B7B"><p>In SharePoint Designer workflows that are manually started, the initiation form is the page that has the “Start” button to kick off the workflow.  In this 11 minute video, I show how to create an approval workflow that can be manually triggered.  </p>
<p>I walk you through:</p>
<ul><li>Setting up the workflow so that after the approval process, the content approval status of the document automatically gets updated.</li>
<li>Customizing the initiation form in InfoPath, so that the needed approvers may be selected from a people picker, and the colors are modified.</li>
<li>Adding a “high priority” check box so that high priority item approvals are due in a more timely fashion than normal.</li></ul>
<p>This solution applies to only the enterprise version of SharePoint and SharePoint online.  This does not include SharePoint Foundation because it uses browser-based forms, which are enterprise only.</p>
<p>How can you learn more?  This solution is actually an excerpt from chapter 10 of our book.</p>
<p><a href="http://www.youtube.com/watch?v=B9uwR01T1MY" target="_blank"><img width="709" height="439" title="CropperCapture[27]" alt="CropperCapture[27]" src="/blogs/laura/Lists/Posts/Attachments/176/CropperCapture27_3_4155B2E2.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p>
<p>Click to buy the book:</p>
<p><a href="http://www.amazon.com/dp/0735662061/ref=as_li_tf_til?tag=laurogwon-20&amp;camp=14573&amp;creative=327641&amp;linkCode=as1&amp;creativeASIN=0735662061&amp;adid=0Z8588VE3VKYJ96ECBP7&amp;&amp;ref-refURL=http://www.sharepoint911.com/blogs/laura/default.aspx" target="_blank"><img width="243" height="244" title="InfoPath Boook" alt="InfoPath Boook" src="/blogs/laura/Lists/Posts/Attachments/176/InfoPath-Boook_3_4155B2E2.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p>
<p>Already own the book? Open it to Chapter 10, and follow the step by step instructions that start on page 256.</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e1759a95-e328-4942-9794-dce163e236f3" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/workflows" rel="tag">workflows</a>,<a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a>,<a href="http://technorati.com/tags/initiation+form" rel="tag">initiation form</a>,<a href="http://technorati.com/tags/approvals" rel="tag">approvals</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*">workflows</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 5/16/2012 1:47 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/176/CropperCapture27_3_4155B2E2.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/176/CropperCapture27_3_4155B2E2.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/176/InfoPath-Boook_3_4155B2E2.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/176/InfoPath-Boook_3_4155B2E2.jpg</a><br /><a href=""></a></div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; workflows; InfoPath</category>
      <pubDate>Wed, 16 May 2012 17:22:01 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=176</guid>
    </item>
    <item>
      <title>InfoPath: Create Common Multiple Choice Selections</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=175</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass5A4D09099EEF4D09848EA18511AF5C7E"><p>In InfoPath, when using certain controls such as the Drop-Down List Box, Combo Box, List Box, or Multiple Selection List box, there are several different ways that you can obtain the list of choices that are available to people filling out the form. <br /><br /><img align="left" src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre1.png" alt="" /> </p>
<ul><li><strong>Enter choices manually</strong> – This option allows you to simply click the <strong>Add…</strong> button below and type in the values for each choice, and use the <strong>Move Up</strong> and <strong>Move Down</strong> buttons to rearrange the order. </li>
<li><strong>Get choices from an external data source</strong> – This option allows you to select an existing data connection, such as one that receives a SharePoint list. This way, the selections can be dynamic. This is the best option to use when the values in the list change frequently. It allows you to simply change the source location, such as the items in a SharePoint list, instead of having to re-type the options in and re-publish the form. </li></ul>
<p> </p>
<p> </p>
<p> </p>
<p>This blog post is all about that other option, called <strong>Get choices from fields in this form. </strong></p>
<p>This middle option is pretty useful in a couple of situations: </p>
<ol><li>You have a list of fairly static choices, but you need to use them in several places in your form. A good example is a survey. Commonly, there need to be many drop-down boxes in a survey, but they have all the same choices, such as <strong>Yes, No, Maybe</strong>.<br /></li>
<li>A different situation, which I don't come across often, is when there is a repeating table or section somewhere in the form, and the values that have been filled in there, need to be the values to select from in your drop-down box. </li></ol>
<p> </p>
<p>This blog post is about option 1 above. A survey with the same set of answers being needed multiple times in the form. </p>
<p>Here's how to create some choices &quot;Yes, No, or Maybe&quot;, using that middle option in your drop-down box, and use it in many places in the same form: </p>
<ol><li>In InfoPath Designer, in the Fields pane on the right, right click the <strong>MyFields</strong> folder (root folder) and click <strong>Add…</strong> </li>
<li>Name it <strong>SurveyChoiceGroup</strong>, select <strong>Group</strong> as the type, and click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre2.png" alt="" /><br /></li>
<li>Right-click on <strong>SurveyChoiceGroup</strong>, and click <strong>Add… </strong>Name it <strong>SurveyChoice</strong>, and click <strong>OK</strong>.<strong><br /></strong></li>
<li>Name it <strong>SurveyChoice</strong>, check the box next to <strong>Repeating</strong>, and click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre3.png" alt="" /><br /></li>
<li>Your new structure in the Fields pane on the right should look like this:<br /><img src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre4.png" alt="" /><br /></li>
<li>On the Data tab, click the Default Values button.<br /><img src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre5.png" alt="" /><br /></li>
<li>Click the drop-down on the <strong>SurveyChoice</strong> field, and select <strong>Add another SurveyChoice below</strong>.<br /><img src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre6.png" alt="" /><br /></li>
<li>Do this one more time, so that there are three different Survey choices under the SurveyChoiceGroup.<br /></li>
<li>Click to select the first of the three <strong>SurveyChoice</strong> fields. In the Default value field, type Yes<br /><img src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre7.png" alt="" /><br /></li>
<li>Click to select the second SurveyChoice, type a default value of <strong>No</strong>, and then for the third, type a default value of <strong>Maybe</strong>. Click <strong>OK</strong>.<br /></li>
<li>Put a drop-down box on your form, and open its properties screen.<br /></li>
<li>Select <strong>Get choices from fields in this form</strong>, and choose <strong>SurveyChoice</strong>. Click <strong>OK</strong>, click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/051512_2314_InfoPathCre8.png" alt="" /><br /></li></ol>
<p>Now, when you publish or preview your form, you can see that when you click the drop-down, it shows the 3 choices of Yes, No, or Maybe. You can create multiple drop-downs or any type of selection boxes, and use that same list of survey choices in all of them. Then, if the list of choices need to be edited, you can just do it in one place. Of course, this can always be done by creating a data connection to a SharePoint list, but for such a simple set of choices, all of that may not be necessary. This is just another option. </p></div>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:be0cfa52-f6b8-41ec-bd01-ffcff5eca0e7" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/forms" rel="tag">forms</a></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 5/15/2012 6:53 PM</div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Tue, 15 May 2012 22:53:37 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=175</guid>
    </item>
    <item>
      <title>User Information within InfoPath Forms</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=172</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass2FA53A5615A14EAA8B196EA2F87DE361"><p>There is a quick and easy way that information about the logged in user can be obtained from within an InfoPath form. You may have read my blog and other blogs before, with the user profile service web service instructions. In this post, I'm not going to be using the user profile service. This means that what I'm about to show you can be utilized with any version of SharePoint, whether you have a user profile service (enterprise) or not. This can be done with SharePoint 2010 Foundation, SharePoint 2010 enterprise and standard, and also WSS 3.0 and MOSS. </p>
<p>The <strong>User Information List</strong> is a list that exists at the site collection level, and contains a list of every user who has actually visited the SharePoint site. If they are a new user, they will not show in this list until they've actually visited a site in that site collection. </p>
<p>With that said, here are some instructions for getting some information about users, more specifically, the currently logged in user. </p>
<ol><li>Open up your InfoPath form, click on the <strong>Data</strong> tab, and click the <strong>Data Connections</strong> button.<br /></li>
<li>Click the <strong>Add…</strong> button.<br /></li>
<li>Choose <strong>Receive Data</strong>, and click <strong>Next</strong>.<br /></li>
<li>Choose <strong>SharePoint List or Library</strong>, and click <strong>Next</strong>. <br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma1.png" alt="" /><br /></li>
<li>Paste the URL of your SharePoint site, click <strong>Next</strong>. (No need for any &quot;default.aspx&quot; at the end, or any other .aspx)<br /></li>
<li>Scroll down towards the bottom of the list of lists and libraries, and select <strong>User Information List</strong>. Click <strong>Next</strong>.<br />(note that even though the user information list physically exists at the site collection level, you will still see this list on every sub-site also)<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma2.png" alt="" /><br /></li>
<li>Put check boxes next to the following fields, especially <strong>User_name</strong>. Click <strong>Next</strong>.<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma3.png" alt="" /><br /></li>
<li>Do <strong>not</strong> check the box to store a copy of the data. Click <strong>Next</strong>.<br /></li>
<li><img align="left" src="/blogs/laura/Lists/Photos/041212_0312_UserInforma4.png" alt="" /><span style="color:red">This is very important. </span><strong>UNCHECK</strong> the box to automatically retrieve the data. Click <strong>Finish</strong>.<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma5.png" alt="" /><br /></li>
<li>On the Data Connections screen, click <strong>Close</strong>.<br /></li>
<li>Still on the <strong>Data</strong> tab in InfoPath, click the <strong>Form Load </strong>button, which will bring up the rules pane on the right side of the screen.<br /></li>
<li>Click the <strong>New</strong> button to create a new <strong>Action</strong> rule.<br /></li>
<li>Click the <strong>Add</strong> button and choose <strong>Set a Field's Value</strong>. On the <strong>Rule Details</strong> screen, click the button next to <strong>Field</strong>.<br /></li>
<li>In the Fields drop-down box, choose <strong>User Information List</strong>, expand the <strong>queryFields</strong>, and select <strong>User name</strong>. <br />(be sure that you're selecting from the query fields, not the data fields.) Click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma6.png" alt="" /><br /></li>
<li>Back on the <strong>Rule Details</strong> screen, click the function (fx) button next to the <strong>Value</strong> box.<br /></li>
<li>Click the <strong>Insert Function</strong> button, and choose the <strong>userName</strong> function. Click <strong>OK</strong> two times.<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma7.png" alt="" /><br /></li>
<li>This is what your rule looks like. Click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma8.png" alt="" /><br /></li>
<li>Back over in the rules pane on the right, click the <strong>Add</strong> button, and choose <strong>Query for Data</strong>.<br /></li>
<li>Choose the <strong>User Information List</strong> and click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma9.png" alt="" /><br /></li>
<li>Now, each time the form is opened, the current user's information will automatically be queried, and that one record will be retrieved. There are many ways that this information can be used within your form. The data exists in the data fields of the user information list. In the Fields pane on the right side of the screen, choose the User Information List from the drop-down box.<br /></li>
<li>Select the folder directly under <strong>dataFields</strong>, the one with the blue icon called <strong>d:SharePointListItem_RW</strong>. Drag it onto an empty area of your form, and when you let go, choose <strong>Repeating Section with Controls</strong>. <br />I'm really just having you put all this on the form so that you can see exactly what's being returned. <br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma10.png" alt="" /><br /></li>
<li>Go ahead and publish the form, and open a new form. You'll see all of the data about you will be displayed, something like this:<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma11.png" alt="" /><br /></li>
<li>One more little trick. Go back to InfoPath Designer. Delete the &quot;Picture&quot; field. Add a Picture control to the form (not a picture button, just a picture), and choose <strong>As a link</strong>. Click <strong>OK</strong>. </li>
<li>You will be prompted to bind to a field. Select the Picture field under the User Information List data fields. Click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma12.png" alt="" /><br /></li>
<li><div>Filling out the form again, now there's me:<br /><img src="/blogs/laura/Lists/Photos/041212_0312_UserInforma13.png" alt="" /> </div>
<p> </p>
<p>You can see how this data could potentially be used in many ways in your form. You can set some field defaults the first time the form is filled out, you could display the currently logged in user's picture… You can even use formatting rules to show, hide, or disable certain fields depending on who the current user is or what department they're in. I don't usually drop the fields on the form like I showed you, that was for demonstration purposes. I usually just refer to that data via rules, etc. Keep in mind that the user information list does not have the 60 or so fields that the user profile service contains, but it is very useful nonetheless. There are many other blog posts out there that show how to tap into the user profile service using the web service in InfoPath, it's just that if all you need is one of these basic fields, you might not need to deal with all of the complexity that it entails. </p>
<p>Here are some other posts by me and others regarding user information in InfoPath: </p></li></ol>
<ul style="margin-left:72pt"><li><a href="http://www.pointgowin.com/seethepoint/_layouts/listform.aspx?PageType=4&amp;ListId={F0C6B874-5688-43B8-BDD4-A435F2479439}&amp;ID=3"><span style="font-family:verdana;font-size:8pt">Auto-Pop Life with InfoPath (Part 1 of 2)</span></a><span style="font-family:verdana;color:#6d6f72;font-size:8pt">, and <a href="http://www.pointgowin.com/seethepoint/Lists/Posts/Post.aspx?ID=4">Auto-Pop Life with InfoPath (Part 2 of 2)</a> by Lori Gowin</span> </li>
<li><a href="http://blogs.msdn.com/b/mvpawardprogram/archive/2012/03/12/mvps-for-office-365-pre-populating-infopath-2010-forms.aspx">MVPs for Office 365: Pre-Populating InfoPath 2010 Forms</a> by Clayton Cobb (among many other posts on his own blog site) </li>
<li><a href="/blogs/laura/_layouts/listform.aspx?PageType=4&amp;ListId={DABA3A3B-C338-41D8-BF52-CD897D000CF3}&amp;ID=80"><span style="font-family:verdana;font-size:8pt">InfoPath User Roles in Browser-Based Forms- Another Way (Part 1 of 2)</span></a><span style="font-family:verdana;color:black;font-size:8pt"> and <a href="/blogs/laura/_layouts/listform.aspx?PageType=4&amp;ListId={DABA3A3B-C338-41D8-BF52-CD897D000CF3}&amp;ID=81">InfoPath User Roles in Browser-Based Forms – Another Way (Part 2 of 2)</a> by me</span></li></ul></div>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:be0cfa52-f6b8-41ec-bd01-ffcff5eca0e7" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/forms" rel="tag">forms</a>,<a href="http://technorati.com/tags/users" rel="tag">Users</a></div>
</div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 4/11/2012 11:18 PM</div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Thu, 12 Apr 2012 02:56:13 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=172</guid>
    </item>
    <item>
      <title>International SharePoint Conference – Wrap Up</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=174</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass57F1526E600044F88B242B08A5FF5734"><p>Last month was the International SharePoint Conference in London.  I was honored to be invited to be a speaker at the conference.  The format of the conference was great.  Not only were there different tracks, but within each track, there were continuous solutions being built from one session to the next.  I absolutely loved this, because an hour to cover a topic never seems like enough.  Here's what we did as one of the solutions in the information worker track:  <a href="http://twitter.com/jennifermason">Jennifer Mason</a>, <a href="http://twitter.com/dshadravan">Darvish Shadravan</a>, <a href="http://twitter.com/mattmoo2">Matt Hughes</a> and I did 4 sessions throughout the day, all around building a travel request site in SharePoint.
</p><ol><li>Jennifer and I taught the basics of how to build the travel request form using InfoPath.
</li><li>Matt and I taught how to create a workflow which includes an approval process for each travel request.
</li><li>Jennifer and Matt taught how to build a nice user interface by placing web parts on pages and creating needed list views.
</li><li>Darvish and I taught all of the ways we can report off of this travel request site data, using KPIs, Excel Services, PerformancePoint, and SSRS.
</li></ol><p>How did we do it?  How did we collaborate on the creation of this solution?  Funny story behind that…
</p><p>At first, we just figured we'd use Office 365, but then some of the business intelligence solutions in the 4th session can't be done in Office 365.  We figured we'd just copy the site and do that last part on someone's virtual machine on their computer.  Easier said than done.  After we had created the solution in Office 365, we discovered that you can't simply save a SharePoint Online site as a template and then put it in an on-premise version of SharePoint.  Good to know!  This doesn't work because SharePoint online has a feature that SharePoint on-premise doesn't have, so you get errors when trying to add a site using the site template.  Yes, there are some hacks we found online to accomplish this, but it turned out to be faster to just re-create the site from scratch and just publish another copy of the InfoPath form to it.
</p><p>Darvish and I still needed to be able to collaborate on an on-premise SharePoint site, to build our reporting solutions.  <strong>Rackspace to the rescue!</strong>  With a couple of days left to go before leaving for London, my amazing colleagues whipped up a cloud SharePoint server for us!  It was absolutely terrific, like &quot;Okay, here's your whole SharePoint server, all built and configured, ready to go!&quot;.  PerformancePoint was working correctly, SSRS was installed, and everything, so all that Darvish and I needed to do was to start building out our reports off of the travel data.  Thanks to Jeff Deverter, Javier Barrera, Todd Klindt, and the rest of the SharePoint admin team!!
</p><p>Here is an example of one of the charts that I created off of the SharePoint task list, using SQL Server Reporting Services (SSRS):
</p><p><img src="/blogs/laura/Lists/Photos/050812_0322_Internation1.png" alt="" />
	</p><p>Below is one of the scorecards that Darvish created using PerformancePoint:
</p><p><img src="/blogs/laura/Lists/Photos/050812_0322_Internation2.png" alt="" />
	</p><p>As you can tell from my enthusiasm, the last session was my favorite.  We had a blast, and it went really well!
</p><p>All in all, it was a fabulous few days in London.  Steve Smith and the crew at Combined Knowledge sure put on quite a conference!   Here's the group of speakers at the wrap-up on the last day:
</p><p><img src="/blogs/laura/Lists/Photos/050812_0322_Internation3.jpg" alt="" />
	</p><p>We arrived in London a couple of days before the conference started, so we had some time to go sightseeing.  Here is a picture of me, riding the London Eye:
</p><p><img src="/blogs/laura/Lists/Photos/050812_0322_Internation4.jpg" alt="" />
	</p></div></div>
<div><b>Published:</b> 5/7/2012 10:52 PM</div>
]]></description>
      <author>laura</author>
      <pubDate>Tue, 08 May 2012 02:52:32 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=174</guid>
    </item>
    <item>
      <title>Two FREE Webinars!</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=145</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass070F1FFFD3F4434E9C67FE6BB5964EBF"><p>Hi, I just wanted everyone to know about two webinars.  One is coming up this week, and the other has happened in the past and is available as a recording.</p>
<h3>This Week - How to Use Content Types in SharePoint</h3>
<p><img align="left" src="http://www.metavistech.com/sites/all/themes/custom/metavisnew/images/logo.png" alt="" style="display:inline;float:left" /></p>
<p><strong>Date:</strong> Wednesday, January 11, 2012 </p>
<p><strong>Time:</strong> 2:00 – 3:00 pm ET </p>
<p>  </p>
<p>  </p>
<p>In SharePoint, the concept of content types seems a bit ambiguous to most people. In this session, I will teach you what you need to know about content types to be able to implement them in your organization. In conjunction with site columns, content types can be utilized to create custom business solutions. Take your lists and libraries to the next level without having to do any custom development. In this session, demonstrations will be done to take you through common scenarios and show how to use the power of content types in SharePoint. </p>
<p>Here is the <strong><a href="http://blog.metavistech.com/2012/01/webinar-recording-how-to-use-content-types-in-sharepoint/">recording of the webinar</a></strong>.</p>
<hr />
<h3>Past Webinar - <b><a href="http://harmon.ie/Webcast/LauraRogers" target="_blank">Tips for Better Project Management Using SharePoint and harmon.ie</a></b></h3>
<p><img src="http://harmon.ie/sites/all/themes/harmonie_sarit/logo.png" alt="" /></p>
<p>Watch this webinar to learn: </p>
<ul><li>the power of content types and how they can be used to implement standard project templates. </li>
<li>how files and folders from a file share can be brought together in a document library in a way that people can find relevant content according to metadata. </li>
<li>ways to utilize metadata, views, and a few other tricks to work more efficiently, AND improve SharePoint adoption your organization.</li></ul>
<p>Here is the <a href="http://harmon.ie/blog/12-05-2011" target="_blank"><strong>VIRTUAL INTERVIEW</strong></a> that we did prior to the webcast.  It’s me answering questions that they asked me about myself.</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:9cb1a766-0ab1-4c98-866c-4f44851e45ab" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Harmon.ie" rel="tag">Harmon.ie</a>,<a href="http://technorati.com/tags/MetaVis" rel="tag">MetaVis</a>,<a href="http://technorati.com/tags/content+types" rel="tag">content types</a>,<a href="http://technorati.com/tags/Outlook" rel="tag">Outlook</a>,<a href="http://technorati.com/tags/user+adoption" rel="tag">user adoption</a>,<a href="http://technorati.com/tags/document+library" rel="tag">document library</a>,<a href="http://technorati.com/tags/business+solutions" rel="tag">business solutions</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 1/9/2012 12:14 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-29_7D55F5D8.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-29_7D55F5D8.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-30_7D55F5D8.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-30_7D55F5D8.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-32_7D55F5D8.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-32_7D55F5D8.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-33_7D55F5D8.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-33_7D55F5D8.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-34_7D55F5D8.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/145/MA14SP-34_7D55F5D8.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; conference</category>
      <pubDate>Mon, 09 Jan 2012 17:14:13 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=145</guid>
    </item>
    <item>
      <title>SharePoint Designer - Restore Previous Workflow Version</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=173</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassD1DEC1CB35D6430DA45B61B3E2A65B17"><p>Have you ever published changes in a workflow in SharePoint Designer and wish you hadn't? There is a little known way to go in and restore a previous version of your workflow. This uses the same versioning capability that lists and libraries have. By default, every time you publish changes to a workflow, they are saved as a new version. </p>
<p>This solution applies to all versions of SharePoint 2010, 2007, and SharePoint Online with Office 365. </p>
<p>Here's how to revert to a previous version: </p>
<ol><li>In the left pane of SharePoint Designer, click the little pin icon next to <strong>All Files</strong>.<br /><img src="/blogs/laura/Lists/Photos/050312_0209_SharePointD1.png" alt="" /><br /></li>
<li>Once All Files is expanded, scroll down and expand out your folder called <strong>Workflows</strong>. Note that if you have not actually created any workflows yet, you will not have this folder. Each workflow will be a &quot;subfolder&quot; under workflows. One weird little thing to point out also is that if you changed the name of any workflow after you created it, that new name will not show here, only the original name of each workflow will show in this list.<br /><img src="/blogs/laura/Lists/Photos/050312_0209_SharePointD2.png" alt="" /><br /></li>
<li>The workflow that I want to restore a previous version of is called &quot;Check Audit Month&quot;, so I'll expand out that folder. Now I can see all of the files that my workflow is comprised of.<br /><img src="/blogs/laura/Lists/Photos/050312_0209_SharePointD3.png" alt="" /><br /></li>
<li>Each of these files has a set of versions. Right click on the XOML file, and choose <strong>Version History</strong>. I want to get rid of all the changes I made today, and revert back to the 4/12 version which I know worked correctly. I scroll down and click on the most recent 4/12 version. (I've blurred out the domain name I'm working in)<br /><img src="/blogs/laura/Lists/Photos/050312_0209_SharePointD4.png" alt="" /><br /></li>
<li>Click <strong>Restore</strong>. <br /></li>
<li>Right click on the next file, the XOML.rules. Go find that exact same date/time of the file as the one in the previous step, and <strong>restore it</strong>. Note that the version number may NOT be the same.<br /></li>
<li>Right click the next file, which is xoml.wfconfig.xml. Do the same thing by finding that same date/time that matches the one you restored at step 4. Restore it.<br /></li>
<li>In this case, I don't need to change anything about my InfoPath XSN file, which is the task form as part of tasks that are assigned in the workflow. I'm skipping that one.<br /></li>
<li>Important step after you've restored the old versions… <strong>EXIT SharePoint Designer</strong>. This is because of a cached version of your workflow needing to be refreshed.<br /></li>
<li><strong>Re-open your site</strong> in SharePoint Designer. When you open your workflow in the normal way now (as opposed to the funky way we did in step 2), you will see that good old version that you just restored.<br /></li>
<li>Click <strong>Publish</strong>. Now your restored workflow is live and in use on the site. </li></ol></div>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:7e241423-e7b2-483e-a7b2-5558db897c8c" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/workflows" rel="tag">workflows</a>,<a href="http://technorati.com/tags/versioning" rel="tag">versioning</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*">workflows</a></div>
<div><b>Published:</b> 5/2/2012 10:04 PM</div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; workflows</category>
      <pubDate>Thu, 03 May 2012 01:40:17 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=173</guid>
    </item>
    <item>
      <title>InfoPath 2010 and Repeating Tables</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=121</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass9290874302F94184811DC280B731DF88"><div class="ExternalClassA2AD7D68DDE040EAA5FC5013232F948C"><h6>Another name for this post could be &quot;The most web part connections you've ever seen&quot;, or &quot;how to go insane in 41 easy steps&quot;. Just kidding. I thought I'd whip this up 'real quick' the other day, and then it turned out to be 9 pages.</h6><p>This post applies to the enterprise version of SharePoint 2010 and Office 365 only. </p>
<p>Here is my <a href="http://www.youtube.com/watch?v=5yJ-S1X6Zxw" target="_blank"><strong>video recording introduction</strong></a> to this post, explaining the final result and how it works.</p>
<h2>The Problem</h2>
<p>If you've ever worked with repeating tables in an InfoPath form, you may have noticed how extremely useful they are, but then you may have soon realized the limits that inherently exist. Repeating tables are nice when we need to have a subset of information on a form. For example, when creating an expense report, there will be some basic information about the trip, and then a repeating table can be used for the itemized list of expenses. With this type of table, we can save &quot;real estate&quot; on the form by letting the users add as many lines as are needed in the itemized list of expenses. </p>
<p>Repeating tables are great EXCEPT for reporting and workflows… when we need to gather all of this information later, or run a workflow on each of the items in the table. The form fields regarding the basic trip information can each be promoted up to become columns in the SharePoint form library. Unfortunately, when we try to promote the fields in the repeating table, since the table is in a hierarchical information structure (a table within a list item), it is not easy to promote the fields to columns in SharePoint. </p>
<p>The progression of thought is usually to create a separate SharePoint list to contain all of this repeating information. The structure of data is then more of a database, with the main information about the expense being in one &quot;table&quot;, and the detailed expense information is in another &quot;table&quot;, with a relationship being created between the two tables. This is great for reporting and having all of that detail information more accessible, but the problem is that once a data connection is created in InfoPath, receiving information from that &quot;detail&quot; SharePoint list, you can't write back to that SharePoint list to make additions or changes to the itemized sub-list of expense details. You can only view it. There is a great InfoPath blog that was written back in 2007, Submitting to a SharePoint List http://blogs.msdn.com/b/infopath/archive/2007/03/26/submitting-to-a-sharepoint-list.aspx, which has steps to walk you through the complexities involved in writing back to a SharePoint list from within a form library form. This is great, but very complicated, and many times too complex for typical business users who are creating forms. </p>
<h2>The New Possibility</h2>
<p>Now I've described the problem, and if you're an avid form creator/developer this is very familiar. In this article, you will learn a new way to accomplish the repeating table concept, which can be done in InfoPath 2010 and the new InfoPath Form Web Part. This solution can be accomplished with the enterprise version of SharePoint 2010 (with forms services), and it can also be done in Office 365. The idea is that multiple SharePoint libraries and lists can be used, joined together using lookups, and put together in a nice mash-up of web parts on a page in SharePoint. This way, SharePoint lists are used as a replacement for repeating tables. You will need InfoPath Designer 2010 and SharePoint Designer 2010. Note that this walkthrough does take a bit of advanced knowledge of web part settings, and a bit of InfoPath experience. For example, when I say &quot;create a form, publish it to a library and create a submit connection&quot;, I'm not going to necessarily go through step by step instructions, a bit of knowledge is assumed. Although some SharePoint and InfoPath knowledge is a good prerequisite, there will be NO programming or code involved. </p>
<h2>The Example and Components </h2>
<p>An expense report will be the example used in this walkthrough. The fields used will be very simple, because the main concept that is being taught is not a complex form and fields, but the concept of how to create the relationship and an interface to the form on a web part page. There are actually several different ways to accomplish this type of solution, with different combinations of form libraries and lists. This example will be the simplest version. The components are: </p>
<ul><li><strong>Expense Report</strong> - This is the main &quot;parent&quot; list of expenses, which will contain fields such as the employee and the reason for the trip. This will be created as a SharePoint form library. </li>
<li><strong>Expense Details</strong> - This is the &quot;child&quot; or sub-list. It will contain fields such as the cost of each individual expense, and the type (meals, airfare, etc.) This form will also contain a lookup column to the ID field in the expense report. This will need to be created as a form library form, because of the ability to pass parameters to this type of form. </li>
<li><strong>Expense Dashboard</strong> <strong>page</strong> - This will be a web part page, and will be used as the dashboard for each individual expense report. It will use a query string parameter to show the expense report and details for a report. </li>
<li><strong>New Expense Detail page</strong> - This will be a web part page that is used for new expense details. A query string parameter will be used to set the correct unique Expense ID. </li>
<li><strong>WebPartPages</strong> - A document library you can create, as a single place to keep the two web part pages that will be created. </li></ul>
<p>Note: There are many possibilities here, so there can be one parent list, and several different child lists, it is not just limited to one child. </p>
<h2>The Steps </h2>
<h3>Building the Forms </h3>
<ol><li>Create a new form library form in InfoPath, &quot;Expense Report&quot;, with three text fields: Employee Name, Purpose, Billing Department. <br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2011.png" alt="" /><br /></li>
<li>Publish the form to SharePoint, promoting all of the fields to columns in the library. </li>
<li>Create a new <span style="color:red"><strong>site column</strong> </span>called <strong>Expense ID</strong>, as a lookup field to the Expense Report library, specifically to the ID field.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2012.png" alt="" /><br /></li>
<li>Create a form library form, call it &quot;Expense Detail&quot;, and add the following fields: <div style="margin-left:36pt"><table border="0" style="border-collapse:collapse;color:#4c4c4c"><colgroup><col style="width:295px" /><col style="width:295px" /></colgroup><tbody valign="top"><tr><td style="border-bottom:0.5pt solid;border-left:0.5pt solid;padding-left:7px;padding-right:7px;border-top:0.5pt solid;border-right:0.5pt solid"><p><strong>Column Name</strong></p></td>
<td style="border-bottom:0.5pt solid;border-left:medium none;padding-left:7px;padding-right:7px;border-top:0.5pt solid;border-right:0.5pt solid"><p><strong>Column Type</strong></p></td></tr>
<tr><td style="border-bottom:0.5pt solid;border-left:0.5pt solid;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Expense Type</p></td>
<td style="border-bottom:0.5pt solid;border-left:medium none;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Text</p></td></tr>
<tr><td style="border-bottom:0.5pt solid;border-left:0.5pt solid;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Amount</p></td>
<td style="border-bottom:0.5pt solid;border-left:medium none;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Decimal</p></td></tr>
<tr><td style="border-bottom:0.5pt solid;border-left:0.5pt solid;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Expense Date</p></td>
<td style="border-bottom:0.5pt solid;border-left:medium none;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Date</p></td></tr>
<tr><td style="border-bottom:0.5pt solid;border-left:0.5pt solid;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Expense ID</p></td>
<td style="border-bottom:0.5pt solid;border-left:medium none;padding-left:7px;padding-right:7px;border-top:medium none;border-right:0.5pt solid"><p>Text</p></td></tr></tbody></table></div></li>
<li>When publishing this form to SharePoint, promote all fields to be columns in SharePoint. Also, <strong>add the Expense ID to be an Input parameter</strong>. Since you already created a site column called Expense ID, this promoted column will automatically utilize that existing site column because it will recognize that the column name matches it.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2013.png" alt="" /><br /></li>
<li>After publishing each form, be sure to create a <strong>Submit</strong> data connection, for submitting the form to SharePoint. Click to <strong>Quick Publish</strong> the form again. </li>
<li>Change the default view of the Expense Detail library. Show the following <strong>columns</strong>: Type, Name, Expense Type, Amount, Expense Date. In the <strong>Totals</strong> section, choose the Sum of the Amount field. For the <strong>Style</strong>, choose &quot;Shaded&quot;. This is done so that when the web part is placed on the web part page, we can quickly see this view, which will show the total expense amount for a given form.<br /><h3>Building the Dashboard Page<br /></h3></li>
<li><strong><font color="#ff0000">In the browser:</font></strong> Create a new blank web part page called <strong>ExpenseDashboard.aspx</strong>, and add the following web parts to it in this order down the page: <br />Query String (URL) Filter<br />Expense Report (library)<br />InfoPath Form Web Part<br />Expense Detail (library)<br /><br />Note that the Expense Report library web part will be hidden later.<br /></li>
<li>In the Query String web part settings, set the Query String Parameter name to ExpenseID.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2014.png" alt="" /><br /></li>
<li>For the <strong>Expense Report</strong> library, change the current view so that it is sorted by ID, descending. This is important because part of the way the solution will work when new expenses are created. The highest (most recent) ID needs to be at the top. This web part will be hidden later, so the displayed columns are irrelevant. </li>
<li>Set the InfoPath form web part <strong><font color="#ff0000">(web part settings)</font></strong> to use the Expense Report library, with the submit behavior to leave the form open. </li>
<li>Set the Expense Details web part view to show the default &quot;all documents&quot; view, which is the one you modified at step 7. </li>
<li>Open the ExpenseDashboard.aspx page<strong><font color="#ff0000"> in SharePoint Designer 2010</font></strong>. Create a new parameter in the <strong>Expense Detail</strong> web part called ExpenseID, as a query string.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2015.png" alt="" /><br /></li>
<li>Filter the Expense Details web part so that the Expense ID is equal to the new ExpenseID parameter.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2016.png" alt="" /><br /><br /></li>
<li><strong><font color="#ff0000">Save. In the browser:</font></strong> Create a web part connection to filter data:<br />Provider: Query String URL Filter = QueryString<br />Consumer: Expense Report library = <strong>ID</strong> field<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2017.png" alt="" /><br /><br /></li>
<li>Create a web part connection to send a <strong>parameter</strong> (NOT a filter):<br />Provider: Expense Report Library = ID<br />Consumer: Expense Detail = <strong>Expense ID</strong> parameter<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2018.png" alt="" /><br /></li>
<li>Create a web part connection from the InfoPath form web part, to &quot;Get Form From&quot;<br />Provider: Expense Report Library<br />Consumer: InfoPath Form Web Part<br /><h3>Building the New Expense Detail Page<br /></h3></li>
<li><strong><font color="#ff0000">In the browser:</font></strong> When we want end users to be able to click to add a new expense detail, we typically don't want them to have to choose the name of the expense report lookup item, it should already be filled in. When a link is clicked, it should take you to a form that already knows which of the parent expense reports you're working in. A new page will need to be created, called <strong>NewExpenseDetail.aspx</strong>, in order to use as the custom new detail. Create a new web part page, and add the following two web parts to it: Query String URL Filter, and InfoPath Form Web Part. </li>
<li>Set the InfoPath form web part to use the Expense Detail library, with the submit behavior to close the form. </li>
<li><font color="#ff0000">In the Query string web part, set the Query String Variable to be ExpenseID, just like in step 9.</font> </li>
<li>Create a new web part connection, by clicking the drop-down in the top right corner of the InfoPath form web part, to get form data from the Query String URL Filter.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath2019.png" alt="" /><br /></li>
<li>When configuring the connection, the provider field name is <strong>QueryString</strong>, and the consumer is the <strong>Expense ID</strong> field. This is the only parameter available, because at step 5 it was set up to be an input parameter.<br /><h3>Custom Hyperlinks<br /></h3></li>
<li>Link to create a new form: In the Expense Report library, click the Add Document button, so that the URL can be obtained. This URL will be customized so that as soon as someone creates a new expense report and submits it, they will be directed to the dashboard page for that new report. The URL will be structured like this: <strong><em>yoursite</em></strong>/_layouts/FormServer.aspx?XsnLocation=<strong><em>yoursite</em></strong>/ExpenseForm/Forms/template.xsn&amp;SaveLocation=<strong><em>yoursite</em></strong>/ExpenseForm&amp;Source=<strong><em>yoursite</em></strong>/ExpenseForm%2FForms%2FAllItems%2Easpx&amp;DefaultItemOpen=1<br />Go grab the URL of the ExpenseDashboard.aspx web part page, and the SOURCE is what needs to be changed. Replace the url after &amp;Source with the URL to the dashboard. Here's mine:<br />http://demo.contoso.com/expenses/_layouts/FormServer.aspx?XsnLocation=http://demo.contoso.com/expenses/ExpenseForm/Forms/template.xsn&amp;SaveLocation=http%3A%2F%2Fdemo%2Econtoso%2Ecom%2Fexpenses%2FExpenseForm<strong>&amp;Source=http://demo.contoso.com/expenses/webpartpages/ExpenseDashboard.aspx</strong>&amp;DefaultItemOpen=1 </li>
<li>Take this new URL that you created, and put it on the homepage of your site, or somewhere prominent, as the link to &quot;Fill Out a New Expense Report&quot;. When you click on this link, fill out a new report and submit it, you will immediately be directed to the custom &quot;dashboard&quot; page. Make it a pretty little graphic if you'd like. ;-) </li>
<li>Now that new expenses can be created, new expense details need to be created. I'm going to walk through this next part in the simplest way, although there are several different places this hyperlink could possibly be added. There needs to be a CUSTOM new hyperlink for creating a new expense report detail. This will be the URL to your New Expense Detail web part page, with the expense parameter at the end:<br />http://demo.contoso.com/expenses/Shared%20Documents/NewExpenseDetail.aspx?expenseid=__ </li>
<li>This hyperlink will be added to the page using a data view web part. Open ExpenseDashboard.aspx in SharePoint Designer. Put the cursor in an empty web part zone, click the Insert tab, click Data view, and select <strong>Empty Data View</strong>. </li>
<li>Click <strong>Click here to select a data source</strong>. Select <strong>Expense Report</strong> and click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath20110.png" alt="" /><br /></li>
<li>Drag any one field over into the data view web part. It doesn't matter which one. On the <strong>Design</strong> tab, choose <strong>Layout Table form</strong> style, and click <strong>OK</strong> to the warning. </li>
<li>Change the paging to <strong>Limit to one item</strong>. </li>
<li>For the web part properties, select a chrome type of NONE, and while you're in there, change the name of the web part to ADD NEW DETAIL. </li>
<li>Delete the one field that you added to the DVWP at step 26. It should look like an empty white box now. <br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath20111.png" alt="" /><br /></li>
<li>With the cursor in that same spot where the field was, type CLICK TO ADD A NEW EXPENSE DETAIL </li>
<li>Create a new parameter called ExpenseID, as a query string parameter.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath20112.png" alt="" /><br /></li>
<li>Make this a hyperlink to that URL at step <strong class="ms-rteForeColor-2">25</strong>. This web part is going to receive its expenseID value NOT from the query string filter web part, but from the Expense Report library web part. It is important that both the expense detail library web part and this new web part both receive their parameter from the expense reports library. This is because when someone creates a NEW expense report and is redirected to the expense dashboard, the expense reports library will automatically be sorted to show the most recent one on top, therefore when you click to create a new expense detail, that new ID parameter will have been sent from the expense reports library's most recent addition.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath20113.png" alt="" /><br /></li>
<li>Either in SPD or in the browser, create a web part connection to send a <strong>parameter</strong> (NOT a filter):<br />Provider: Expense Report Library = ID<br />Consumer: Add New Detail = <strong>Expense ID</strong> parameter<br /><h3>Try out a new Expense Report<br /></h3></li>
<li>Okay, so far, we can start from the home page, click a custom link to fill out a new form, fill out a new expense form, and then we're automatically taken to the page where we can add the expense details in the bottom web part. AND, when we add expense details, those details are automatically associated with the correct expense report. Good times!<br /><h3>Edit the Form Link<br /></h3></li>
<li>One more thing. We need users to be able to click the name of any one expense report, and this takes them straight to the web part page instead of to just the InfoPath form. Yet another custom hyperlink. Put that Expense Report library on the home page as a web part, and choose the following columns: Type, Created, Created By, Employee, Billing Department. </li>
<li>Also, in the web part settings, it's important that you select Toolbar type: no toolbar.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath20114.png" alt="" /> </li>
<li>Open this home page in SharePoint Designer, so we can modify this web part slightly. Basically, we're going to formulate a hyperlink to take you to the dashboard for a form, so I'm going to put it on the &quot;Created&quot; field, but it can really go anywhere. Click the field you want to put the hyperlink on, and on the <strong>Insert</strong> tab, click <strong>Hyperlink</strong>. </li>
<li>Paste in the URL to your dashboard, with the ID of the current item as the parameter at the end. Click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/062311_2149_InfoPath20115.png" alt="" /> </li>
<li>Don't forget to hide the Expense Report web part on the ExpenseDashboard. We don't need to see it, we just need it for filtering. </li>
<li>Done! Only 41 easy steps. :-S </li></ol>
<p>Wow, this turned out to be more like a chapter in a book than a simple blog post. Speaking of books, I'd better get back to writing. Darvish Shadravan and I are currently writing <a href="http://www.amazon.com/dp/0735662061"><em>Using Microsoft InfoPath 2010 with Microsoft SharePoint 2010 Step by Step</em></a>. </p>
<p>Okay, so this was pretty long and complex, right? Still NO CODE, though. This is a great solution for being able to have multiple &quot;repeating tables&quot; without actual repeating tables inside InfoPath. And, that web part of &quot;expense details&quot; could easily have inline editing turned on, so that the items could quickly be modified right on the page. Multiple lists could be used, etc. Now that you know all the pieces and how the web part connections would work… go crazy. </p>
<p>I challenge you to go out and create this solution on your own, using this method. It doesn't have to be a time off request, just whatever, but you get the idea. The reward will be that the first person to do this will get a free copy of my book <a href="http://www.amazon.com/dp/0470617896?tag=laurogwon-20&amp;camp=14573&amp;creative=327641&amp;linkCode=as1&amp;creativeASIN=0470617896&amp;adid=05M9AH1XMK7N11FRAMYH&amp;"><em>Beginning SharePoint 2010: Building Business Solutions with SharePoint</em></a>. You'll have to prove you did it, though. A recording would be nice. ;-)</p>
<p>Again, <a href="http://www.youtube.com/watch?v=5yJ-S1X6Zxw" target="_blank"><strong>here’s the link to the video recording</strong></a><strong> </strong>of me explaining the final result of this solution.<br /><a href="http://www.youtube.com/watch?v=5yJ-S1X6Zxw" target="_blank"><img width="480" height="287" title="ch5[230]" alt="ch5[230]" src="/blogs/laura/Lists/Posts/Attachments/121/ch5230_215D103A.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p>
<ol></ol></div>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:36c2a01e-6785-43ef-987d-e618143a7c7e" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/web+parts" rel="tag">web parts</a>,<a href="http://technorati.com/tags/InfoPath+Form+Web+Part" rel="tag">InfoPath Form Web Part</a>,<a href="http://technorati.com/tags/data+view+web+parts" rel="tag">data view web parts</a>,<a href="http://technorati.com/tags/web+part+connections" rel="tag">web part connections</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 6/23/2011 4:43 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/121/ch5230_215D103A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/121/ch5230_215D103A.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Thu, 23 Jun 2011 20:43:21 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=121</guid>
    </item>
    <item>
      <title>Bar Graphs using SharePoint 2010 Data Views</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=127</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass0F5ED8CF09454094ACA38D3B84C0AABE"><p>This post is applicable to SharePoint 2010 Server, SharePoint Foundation, and SharePoint Online in Office 365.</p>
<p>The inspiration for this post comes from an old post from 2008 on MSDN called <a href="http://blogs.msdn.com/b/sharepointdesigner/archive/2008/06/27/css-style-bar-graphs-using-data-views.aspx" target="_blank">CSS Style Bar Graphs using Data Views</a>.  I learned a lot from this old post and used it a couple of times back in SharePoint 2007.  When I decided to do the same thing in 2010, I discovered that the same syntax does not work anymore.  So I figured out a new way to do it.</p>
<p>The idea is that you can take a number field in a list that represents percentage, and create a bar graph.  It will show a bar across a cell, with the total width of the table cell being 100%, and the width of a blue bar being the percentage value from a field in your list.  This is what the end result will look like:</p>
<p><a href="/blogs/laura/Lists/Posts/Attachments/135/ch5120_1_1C542D0F.png"><img width="621" height="124" title="ch5[120]" alt="ch5[120]" src="/blogs/laura/Lists/Posts/Attachments/127/ch5120_thumb_4A417FC7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a><br /><br />Here are the steps to accomplish this, just based off of the percent complete field on a task list:</p>
<ol><li>Open your task list in SharePoint Designer 2010.</li>
<li>Create a new view, or just open the All Items view, from the list of views on the right.</li>
<li>In your view, put the cursor in the far right column.  In the Table tab of the ribbon, click the <strong>Insert Right</strong> button, to insert a blank cell to the right. </li>
<li>Put the cursor in the cell <font color="#ff0000">(the second cell down, NOT the title row),</font> and on the <strong>Insert</strong> tab in the ribbon, click the <strong>Picture</strong> button to insert a picture.  This is the one I used:<br /><img width="244" height="16" title="blueline" alt="blueline" src="/blogs/laura/Lists/Posts/Attachments/127/blueline_7c026003-d301-48f3-a9e1-0e5ca5cecae7_4A417FC7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></li>
<li>At the bottom of SharePoint designer, click the Split button, so you can look at the code behind the image.  Click to select the image, and you’ll see that the code behind it is automatically highlighted<br /><img width="587" height="261" title="ch5[124]" alt="ch5[124]" src="/blogs/laura/Lists/Posts/Attachments/127/ch5124_4A417FC7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>The width is what we want to change.  In the code, select the current width (the numbers 856), and as soon as you type a { open curly bracket, it will prompt you with the names of all the fields in the list.<br /><img width="515" height="219" title="percent" alt="percent" src="/blogs/laura/Lists/Posts/Attachments/127/percent_7eaf8a1a-2898-438c-b62b-bc23f13f379c_4A417FC7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Pick the first @PercentComplete, and then type a }% after it, so it looks like this:<br /><img width="301" height="40" title="ch5[126]" alt="ch5[126]" src="/blogs/laura/Lists/Posts/Attachments/127/ch5126_4A417FC7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></li></ol>
<p>That’s it.  Save the page, and hit F12 to quickly preview it in the browser.  Now your bars are all the width of however much percent complete each task is.</p>
<p>Here’s a tricky one, though.  In my current project, I wanted to do the same thing, but I have no number field at all in my list.  I have a set of statuses that are just text, and I want to base this bar chart off of a text word that represents each item’s status.  For example, my statuses are Manager Approval, VP Approval, CEO Approval, Completed.  I want associate a percent with each, so that:</p>
<ul><li>Manager Approval = 25%</li>
<li>VP Approval = 50%</li>
<li>CEO Approval = 75%</li>
<li>Completed = 100%</li></ul>
<p>I don’t want to have to create a new column in my list just to put the percent in it, so instead, I wrote some XSLT code.  Yep.  This is how you create some variables in the code, so that the percent width can be based off of them.  This can all just go in the same cell with the bar graph.</p>
<p>&lt;td class=&quot;ms-vb&quot;&gt;<br />&lt;xsl:variable name=&quot;stage&quot;&gt;<br />&lt;xsl:choose&gt;<br />&lt;xsl:when test=&quot;normalize-space(@Status) = 'Manager Approval'&quot;&gt;&lt;xsl:value-of select=&quot;25&quot;/&gt;&lt;/xsl:when&gt;<br />&lt;xsl:when test=&quot;normalize-space(@Status) = 'VP Approval'&quot;&gt;&lt;xsl:value-of select=&quot;50&quot;/&gt;&lt;/xsl:when&gt;<br />&lt;xsl:when test=&quot;normalize-space(@Status) = 'CEO Approval'&quot;&gt;&lt;xsl:value-of select=&quot;75&quot;/&gt;&lt;/xsl:when&gt;<br />&lt;xsl:when test=&quot;normalize-space(@Status) = 'Completed'&quot;&gt;&lt;xsl:value-of select=&quot;100&quot;/&gt;&lt;/xsl:when&gt;</p>
<p><br />&lt;xsl:otherwise&gt;<br />&lt;xsl:variable name=&quot;stage&quot; select=&quot;100&quot;/&gt;<br />&lt;/xsl:otherwise&gt;<br />&lt;/xsl:choose&gt;&lt;/xsl:variable&gt;<br />&lt;img alt=&quot;line&quot; src=&quot;../Pictures/blueline.png&quot; width=&quot;{$stage}%&quot; height=&quot;43&quot; /&gt;<br />&lt;/td&gt;</p>
<p> </p>
<p>Now, based on just some text in a text field called Status, your bar graph will show the proper widths accordingly.</p>
<p> </p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:df67d97e-4543-4ee1-86e3-f9f1ffe52513" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint+2010" rel="tag">SharePoint 2010</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/data+view+web+parts" rel="tag">data view web parts</a>,<a href="http://technorati.com/tags/bar+chart" rel="tag">bar chart</a>,<a href="http://technorati.com/tags/XSLT+list+view" rel="tag">XSLT list view</a>,<a href="http://technorati.com/tags/XSL+variable" rel="tag">XSL variable</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 7/25/2011 11:05 AM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/blueline_7c026003-d301-48f3-a9e1-0e5ca5cecae7_4A417FC7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/blueline_7c026003-d301-48f3-a9e1-0e5ca5cecae7_4A417FC7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5120_1_1C542D0F.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5120_1_1C542D0F.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5120_thumb_4A417FC7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5120_thumb_4A417FC7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5124_4A417FC7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5124_4A417FC7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5126_4A417FC7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/ch5126_4A417FC7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/percent_7eaf8a1a-2898-438c-b62b-bc23f13f379c_4A417FC7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/127/percent_7eaf8a1a-2898-438c-b62b-bc23f13f379c_4A417FC7.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; Web Parts</category>
      <pubDate>Mon, 25 Jul 2011 15:05:03 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=127</guid>
    </item>
    <item>
      <title>Cross-Site Lookups in SharePoint 2010 Enterprise</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=134</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass656B1D205DE8456B8D1C569D09C60579"><p>How to get information from one SharePoint site to another is one of the most common type of questions that I come across.  When you have SharePoint 2010 Enterprise or SharePoint Online E3 or E4, most any SharePoint list can be customized using InfoPath.  All of your lists and your existing InfoPath forms can look up information from other sites.  InfoPath forms have always been able to do this, so if you’re an InfoPath guru and know all about data connections, read no further.</p>
<p>Also, if you do not have the enterprise version, you can still accomplish this, but it’s not going to be browser-based, it will have to be created as a form library form, and all the people filling it out will need to have the client software installed on their computers.</p>
<p>One of the fundamentals of InfoPath is the ability to create data connections to look up information from other data sources.  There are several types of sources that can be selected from, such as web services, databases, and XML files, but the one I’m going to focus on here is the SharePoint list or library.</p>
<p>For today’s story, the IT department has created a comprehensive SharePoint list of all of the company’s departments, along with some additional information about each one.  They created this list at the root level site in the site collection http://forms.contoso.com.  You are in the Marketing department, and you are creating a SharePoint list.  You create a lookup column so that you can do a lookup to the list of departments, but you notice that in creating a regular lookup column in a list, the only available choices are lists and libraries on the same site as your form.  This is a perfect situation where an InfoPath data connection can be used.</p>
<p>First, you’ll need the IT department to give at least READ access to anyone who will be filling out your form, so that they will have access to the list’s items.  You’ll also need to have InfoPath 2010 Designer installed on your computer.  The good news is that if you have the enterprise version of SharePoint, all of the people filling out the form do not need any client software because they will be filling it out in the browser.</p>
<ol><li>Instead of creating a column that is a Lookup as was already attempted, create a column called “<strong>Department</strong>”, and just make it a <strong>single line of text</strong>. </li>
<li>In your SharePoint 2010 list, click the <strong>List</strong> tab, and click the big purple <strong>Customize Form</strong> button.<br /><img width="63" height="69" title="MA14SP-1" alt="MA14SP-1" src="/blogs/laura/Lists/Posts/Attachments/134/MA14SP-1_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>In the <strong>Data</strong> tab in InfoPath, click the button <strong>From SharePoint List</strong> in the section labeled Get External Data.<br /><img width="86" height="72" title="MA14SP-2" alt="MA14SP-2" src="/blogs/laura/Lists/Posts/Attachments/134/MA14SP-2_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Your site’s URL will already be filled in here.  You’ll need to put the URL of the <strong>SITE WHERE THE LIST IS</strong> that you want to look up to.  In this example, the URL to the Marketing site will be needed.  It doesn’t have to be parent child or any particular relationship, it just needs to be in the same site collection and you need to have been granted SharePoint permission to it.  Once the correct URL has been entered, click <strong>NEXT</strong>.<br /><img width="358" height="135" title="MA14SP-1" alt="MA14SP-1" src="/blogs/laura/Lists/Posts/Attachments/134/MA14SP-1_1_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Pick the name of the desired list.  In this case, it’s <strong>Departments</strong>.  Click <strong>Next</strong>.<br /><img width="376" height="251" title="MA14SP-2" alt="MA14SP-2" src="/blogs/laura/Lists/Posts/Attachments/134/MA14SP-2_1_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Pick the field(s) you need.  In this example, I only need the name of the department.  For <strong>Sort By</strong>, also pick Department, so that they will be listed in alphabetical order in your drop-down box.  Click <strong>NEXT</strong>.<br /><img width="603" height="418" title="MA14SP-4" alt="MA14SP-4" src="/blogs/laura/Lists/Posts/Attachments/134/MA14SP-4_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Skip the next screen about storing data, and click <strong>NEXT</strong>.  Click <strong>FINISH</strong>.<br /><img width="599" height="415" title="MA14SP-5" alt="MA14SP-5" src="/blogs/laura/Lists/Posts/Attachments/134/MA14SP-5_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>On your form (still in InfoPath), right click on the Departments list that you created at step one.  Choose <strong>Change Control</strong>, and then click <strong>Drop-Down List Box</strong>.<br /><img width="573" height="109" title="Untitled" alt="Untitled" src="/blogs/laura/Lists/Posts/Attachments/134/Untitled_3e55a18f-44d8-45bc-8f22-bd46cbf781e3_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Right-click on this new drop-down box, and choose <strong>Drop-Down List Box Properties</strong>.<br /></li>
<li>In the List box choices section, choose <strong>Get choices from an external data source</strong>.  For the data source, choose <strong>Departments</strong>.  This is the data connection you created.  For this particular list of departments, the default Title field in the list had been renamed to “Department”, but it’s still going to say “Title” in the value and display name boxes on this screen.  Oh, and if you’re worried about there possibly being duplicates of some departments in the list, check the box to “Show only entries with unique display names”.  Click <strong>OK</strong>.<br /><strong><em>Side note: If you don’t want there to be duplicate data in a situation like this, go to the departments list settings in the browser, click the department column, and choose &quot;Enforce unique values”.<br /></em></strong><img width="418" height="503" title="MA14SP-7" alt="MA14SP-7" src="/blogs/laura/Lists/Posts/Attachments/134/MA14SP-7_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click the tiny blue <strong>Quick Publish</strong> button at the very top of the form next to the Save button.  Close InfoPath after you get the message saying that the form was published successfully.<br /></li>
<li>Now fill out a new form in your list.  You’ll see the cool new cross-site lookup drop-down box you just created!<br /><img width="493" height="175" title="depts" alt="depts" src="/blogs/laura/Lists/Posts/Attachments/134/depts_cb606fb6-58f3-4e91-afcc-031f4747dcae_2482FED7.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li></ol>
<h4>Cross Site-Collection, Cross Web App</h4>
<p>What about cross-site collection or across web applications?  I knew you were going to ask that!  Yes, this is also possible, but is a bit more technically involved.  When you create a data connection to a list that is in another web app or site collection, you can follow all of the same steps above, but when you try to preview or fill out the form, you will get an error about the data being in another site collection.  </p>
<p>“An error occurred when querying a data source”</p>
<p>In this case, you will need to create a universal data connection, and you will need to have access to Central Administration.  This is NOT going to be possible with a SharePoint list form.  In other words, cross-site collection lookups will not work in a customized SharePoint list form.  A form library form must be created, and that form must be published as an administrator-approved template.  This is a much, much more complex process, and will need to be covered in a separate blog post.</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:075c8d89-5e37-4cc7-8d9b-1ea97bfc7224" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/Lookup" rel="tag">Lookup</a>,<a href="http://technorati.com/tags/data+connections" rel="tag">data connections</a>,<a href="http://technorati.com/tags/browser-based" rel="tag">browser-based</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 10/4/2011 1:14 PM</div>
<div><b>Categories:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/depts_cb606fb6-58f3-4e91-afcc-031f4747dcae_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/depts_cb606fb6-58f3-4e91-afcc-031f4747dcae_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-1_1_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-1_1_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-1_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-1_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-2_1_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-2_1_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-2_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-2_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-4_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-4_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-5_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-5_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-7_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/MA14SP-7_2482FED7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/Untitled_3e55a18f-44d8-45bc-8f22-bd46cbf781e3_2482FED7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/134/Untitled_3e55a18f-44d8-45bc-8f22-bd46cbf781e3_2482FED7.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Tue, 04 Oct 2011 17:14:10 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=134</guid>
    </item>
    <item>
      <title>List Form Fields–Show/Hide For Certain People: Part 1</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=168</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass5566A8499E124DF5AD09A5065398993F"><p><span style="font-family:times new roman;font-size:12pt">Three years ago, I wrote a blog post called <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=3">Displaying SharePoint Fields by Permission Level</a>.  This one has the highest amount of hits, but it is an imperfect solution.  One of the most common questions that was asked was to see if there's a way to show or hide fields in an ASPX form based on who the logged in user is, as opposed to according to permission level. </span></p>
<p><span style="font-family:times new roman;font-size:12pt">This is going to be a three part blog: </span></p>
<ul><li>Part 1: Using an ASPX form, with a SharePoint <strong>list</strong> of certain people who will be allowed to edit certain fields </li>
<li>Part 2: Using an ASPX form, with a SharePoint <strong>group</strong> of people </li>
<li>Part 3: Using an InfoPath form, with a SharePoint list or group of people </li></ul>
<p><span style="font-family:times new roman;font-size:12pt">In this example, I have a task list, and there are only certain people who should be able to edit the task's due date.  Others should be able to see it but not edit it. </span></p>
<p><span style="font-family:times new roman;font-size:12pt"><span style="color:rgb(155,0,211)"><strong>This solution in part 1 can be done with any version of SharePoint: MOSS, WSS 3.0, SharePoint 2010, and Foundation, and even SharePoint Online with Office 365.</strong></span> </span></p>
<ol><li>Create a custom list on your site, just to keep the list of people who are authorized to edit the certain fields in your form.  I'll call it &quot;Task Admins&quot;.  Create a field called &quot;Person&quot;, as a people field.  Add a few people to the list. </li>
<li>Open SharePoint Designer.  In Lists and Libraries, open your task list.  In the <strong>Forms</strong> section on the right, click the <strong>New</strong> button. </li>
<li>Call your new file EditCustom, pick <strong>Edit item form</strong>, and check the box to <strong>set as default</strong>.  Click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie1.png" alt="" /> </li>
<li>Click the name of your new EditCustom.aspx form to open it.  </li>
<li>Click your cursor inside the form on the screen somewhere, so that the contextual ribbon will show the appropriate options.  Click the <strong>Parameters</strong> button on the <strong>Options</strong> tab. </li>
<li>Click the <strong>New Parameter</strong> button.  Call it the TaskAdminParam, select <strong>Query String</strong>, and type TaskAdmin as the query string variable.  Click <strong>OK</strong>.  (side note: all those other 3 variables were already there, I didn't add them)<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie2.png" alt="" /> </li>
<li>Select the Due Date field with your cursor:<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie3.png" alt="" /> </li>
<li>On the <strong>Options</strong> tab in the ribbon, click <strong>Conditional Formatting</strong>, and choose <strong>Show Content</strong>. </li>
<li>On the <strong>Condition Criteria</strong> screen, click the <strong>Advanced</strong> button. </li>
<li>Type $TaskAdminParam!=''  then click <strong>OK</strong> and click <strong>OK</strong> again.  This means that if the task admin parameter is not blank, it will show the content you selected, which is the date editable field.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie4.png" alt="" /> </li>
<li>With the cursor still in the Due Date right column, select the <strong>Due Date</strong> field in the <strong>Data Source Details</strong> pane on the right.  Click <strong>Insert Selected Fields</strong> As… choose <strong>Formatted</strong>… and choose <strong>DateTime</strong>.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie5.png" alt="" /> </li>
<li>Now you'll see a &quot;read only&quot; date on your form.  It's time to create a rule that will show this field when the logged in person is not a task admin.  <em>Note that with conditional formatting, you do have the ability to select an entire row if you want, and just show/hide the whole thing.<br /></em>Select the new date you just added to the form.  Click the <strong>Conditional Formatting</strong> button and choose Show Content.  Repeat steps 9 and 10, except this time don't put an exclamation mark (!) in the formula. </li>
<li><strong>Save</strong> your changes. </li>
<li>Click the <strong>F12</strong> button on the keyboard to open the page in the browser.  Be sure to flip back over to SharePoint Designer and CLOSE that aspx form. </li>
<li>In the browser, click the <strong>Page</strong> tab.  Click the <strong>Edit Page</strong> button. </li>
<li>Click the big white section on the page that says <strong>Add a web part</strong>.  Add the <strong>Task Admins</strong> list that you created at step 1. </li>
<li>For the Task Admins web part, in the Toolpane, click <strong>Edit the Current View</strong>.  Scroll down to the <strong>Filters</strong> section, and set it so that <strong>Person</strong> is equal to <strong>[me]</strong>.<strong>  </strong>Click <strong>OK.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie6.png" alt="" /></strong> </li>
<li>On the <strong>Page</strong> tab, click <strong>Edit Page</strong> again.  Click the black arrow at the top right of the Task Admins web part, and choose <strong>Edit Web Part</strong>.  Click the black arrow at the top right of the Task Admins web part, and choose <strong>Connections</strong>.  Choose <strong>Send Row of Data to</strong>, and choose your Task web part. </li>
<li>Choose <strong>Get Parameters From</strong>, and click <strong>Configure</strong>.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie7.png" alt="" /> </li>
<li>The Provider field name is &quot;Person&quot;, and the consumer is the <strong>TaskAdminParam</strong>.  Click <strong>Finish</strong>.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie8.png" alt="" /> </li>
<li>Now that the web parts are connected, and you're seeing the editable Due Date field if you're in the list of admins, it's time to hide the task admins web part.  In the web part toolpane for Task Admins, expand the Layout section.  Check the box next to <strong>Hidden</strong>, and click <strong>OK</strong>. </li>
<li>On the <strong>page</strong> tab at the top, click<strong> Stop Editing</strong>. </li></ol>
<p><span style="font-family:times new roman;font-size:12pt">Go ahead and test the solution.  Navigate to your Tasks list as you normally would, and Edit one of the tasks.  You'll notice that if you're in the list of task admins, you'll see the Due Date as editable.  Then, take yourself out of the list of Task Admins, and then when you edit a task, you won't be able to change the due date. </span></p>
<p>     </p>
<p><span style="font-family:times new roman;font-size:12pt">Technorati Tags: <a href="http://technorati.com/tags/SharePoint">SharePoint</a>,<a href="http://technorati.com/tags/data+view+web+parts">data view web parts</a>,<a href="http://technorati.com/tags/web+parts">web parts</a>,<a href="http://technorati.com/tags/parameters">parameters</a>,<a href="http://technorati.com/tags/forms">forms</a>,<a href="http://technorati.com/tags/fields">fields</a>,<a href="http://technorati.com/tags/list+form">list form</a></span></p></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 3/15/2012 2:00 PM</div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; Web Parts</category>
      <pubDate>Thu, 15 Mar 2012 17:40:25 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=168</guid>
    </item>
    <item>
      <title>InfoPath User Roles in Browser-Based Forms – Another Way (Part 2 of 2)</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=81</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassC336B496D48B4A75B9CCBAB738D47596"><p>In my <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=88">previous post</a>, I showed you the concept of creating a web service data connection to receive info about the currently logged in user.  I showed how you can use information about the current user’s memberships, in order to mimic the user roles functionality.  In this post, I’ll show how you can use a similar role functionality, but without having to use any groups at all.  No distribution lists from AD, and no SharePoint groups.  You’re just going to look at properties of the current user, and perform actions in the form accordingly.  I’m going to use the same example that I used in the previous post, of a form that is filled out by end users, but that IT dept users will open to fill out more fields just for them. </p>
<p>Hopefully, your Active Directory profile information is accurate.  If it is then this solution will be perfect for you.  This method does not use SharePoint groups, but properties of the current user’s profile.  This information comes from User Profiles and Properties in Central Administration, which in many companies is imported from Active Directory.  We will create a form open rule that looks at the Department field in the current user’s profile.  </p>
<p>You’re going to use the “Department” of the current logged in user, in order to determine if the current user is in the IT department.  If they ARE, then they will get to see the “IT Dept” view of the form when they open it.</p>
<p>A data connection to the UserProfileService web service will be created again, but this time with a different operation selected.</p>
<ol><li>Create a new data connection in the InfoPath form, to receive data.  The source is a web service.  (In SharePoint 2010, pick SOAP web service.)  Click NEXT.<br /></li>
<li>Type the URL of the userprofileservice.asmx file.  This is at the root of your SharePoint site, under the _vti_bin folder.  Click <strong>Next</strong>.<br /></li>
<li>For the operation, click <strong>GetUserProfileByName</strong>, and click NEXT.<br /></li>
<li>On the Parameter screen, just leave the default and click <strong>NEXT</strong>.<br /></li>
<li>Leave “store a copy of the data…” unchecked, and click <strong>NEXT</strong>.<br /></li>
<li>Leave “Automatically retrieve data when form is opened CHECKED, and click <strong>FINISH</strong>.<br /></li>
<li>Next, a field will need to exist, in order to temporarily store the department name of whomever the currently logged in user is.  This is not to be confused with the name of the department that you may have captured when the person originally filled out the form.  This new field’s value will actually change each time a different person opens the form.<br /></li>
<li>Create a new text field in the InfoPath form. Name it <strong>CurrentUserDepartment</strong>.<br /></li>
<li>In the properties of this new field, click the little function button for the default value. <em><strong>fx</strong></em><br /><img width="334" height="158" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/81/image_35e609951ebb43a2a6b7e6f604c4dcea_3A2114A9.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /><br /></li>
<li>You’re going to set up this field so that it defaults to the current user’s department name.  On the Insert Formula screen, click<strong> Insert Field or Group</strong>…<br /></li>
<li>Pick <strong>GetUserProfileByName</strong> as the data source, click the name of the <strong>Value</strong> field, but don’t click OK yet.  Click the <strong>Filter Data</strong> button.<br /><img width="312" height="363" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/81/image_b46073ed16884330baa69d108722298f_3A2114A9.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /><br /></li>
<li>Click the <strong>Add</strong> button, so we can add one filter.<br /></li>
<li>Pick <strong>Name</strong> is equal to <strong>Department</strong>, and click <strong>OK</strong> on the four different screens.<br /><img width="615" height="145" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/81/image_39d732ce74f74c09b4859da8e6556814_3A2114A9.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /><br /></li>
<li>This is what your CurrentUserDepartment field’s default value will look like now.  Be sure to LEAVE the check box checked, for “<strong>Refresh value when formula is recalculated</strong>”.  Yes, you do want it to be recalculated each time someone new opens the form.  Click <strong>OK</strong>.<br /><img width="343" height="166" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/81/image_bca4b51da1f24e8bb3a520a22c90249e_3A2114A9.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /><br /><em><strong>Note</strong></em> that you don’t have to actually display this field on the form at all.  It can just exist in your list of data source fields.  But for testing purposes during form creation, you’ll want to see this.<br /></li>
<li>Now, when someone opens my form, I want the form to automatically switch to the IT view if the user’s department contains “IT”. <ul><li>In InfoPath 2010, click the <strong>Data</strong> tab in the ribbon, and click the <strong>Form Load</strong> button, which will bring up the Rules pane on the right. </li>
<li>In InfoPath 2007, click the Tools menu and choose Form Options.  Click the Rules button on the Open and Save section.<br /></li></ul></li>
<li>Define the rule: <br />The condition is: Click the first drop-down box (the field name).  Select the name of the <strong>CurrentUserDepartment</strong> field.  Select <strong>Contains</strong> from the second drop-down.  In the third drop-down, choose Type Text… and type <strong>IT</strong>.<br /><img width="616" height="125" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/81/image_413e2f1eb81e4aad9a737c82796434fe_3A2114A9.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <em><br />Unfortunately, this screen is case sensitive.  So, if a user’s department name is not of the same case, this rule won’t apply.</em><br />  </li>
<li>Click to add the Action.  The action will be just to switch views, switch to the <strong>IT Dept</strong> view.<br /></li>
<li>Now try it out.  Publish the form.  If the text “IT” exists in the department name of your user profile, the form will now automatically switch to the IT Dept view when it opens.</li></ol>
<p><strong>BONUS extra stuff:</strong></p>
<ul><li>The field that we created in this example is used to simply capture the current user’s department name.  If you’d like to create the fields that capture the form originator’s pertinent information like department, phone, job title, etc, you can create text boxes that default to each of those values.  But when you do this, be sure to UNcheck the “<strong>Refresh value when formula is recalculated</strong>” check box.  This is because you want the information to initially be captured when the first person fills out the form, but you don’t want it to change after that.<br /></li>
<li>Also, the CurrentUserDepartment is going to be re-populated each time a different person opens the form, but you may want to do something extra incase the current user’s department field is blank.  You can build in an action as part of the submit button, to set CurrentUserDepartment field to blank, that way you ensure that no one will incorrectly see information that does not pertain to them.</li></ul>
<p>Here are a few references that pertain to some of the topics addressed in these last 2 posts of mine:</p>
<p><a href="http://www.pointgowin.com/SeeThePoint/Lists/Posts/Post.aspx?ID=3" target="_blank">Auto-Pop Life with InfoPath (Part 1 of 2)</a> – Lori Gowin</p>
<p><a href="http://claytoncobb.wordpress.com/2009/07/19/infopath-user-roles-in-browser-enabled-forms-using-groups/" target="_blank">InfoPath – User Roles in Browser-Enabled Forms Using AD Groups</a> – Clayton Cobb</p>
<p><a href="http://www.screencast.com/users/EndUserSharePoint/folders/SharePoint - Data View Web Part/media/e6b40ca9-3680-441b-8443-7cee2b892a15">Find out About Site Users within Microsoft Access (Screencast)</a> - Me</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:057a5e75-7c74-4c9e-a616-c7a4bebfeb2f" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/UserProfileService" rel="tag">UserProfileService</a>,<a href="http://technorati.com/tags/web+service" rel="tag">web service</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 8/9/2010 8:54 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_35e609951ebb43a2a6b7e6f604c4dcea_3A2114A9.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_35e609951ebb43a2a6b7e6f604c4dcea_3A2114A9.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_39d732ce74f74c09b4859da8e6556814_3A2114A9.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_39d732ce74f74c09b4859da8e6556814_3A2114A9.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_413e2f1eb81e4aad9a737c82796434fe_3A2114A9.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_413e2f1eb81e4aad9a737c82796434fe_3A2114A9.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_b46073ed16884330baa69d108722298f_3A2114A9.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_b46073ed16884330baa69d108722298f_3A2114A9.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_bca4b51da1f24e8bb3a520a22c90249e_3A2114A9.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/81/image_bca4b51da1f24e8bb3a520a22c90249e_3A2114A9.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Tue, 10 Aug 2010 00:54:58 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=81</guid>
    </item>
    <item>
      <title>InfoPath User Roles in Browser-Based Forms- Another Way (Part 1 of 2)</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=80</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassE129159AF2B446FFBD6EBEA0E529247E"><p>This blog post applies to both InfoPath 2007 and 2010, and both SharePoint 2007 and 2010, in MOSS and SharePoint Server 2010 (not WSS or Foundation).</p>
<p>There’s a concept in InfoPath called “User Roles”.  You can set up these roles, and when a person opens the<img width="290" height="361" title="image" align="right" alt="image" src="/blogs/laura/Lists/Posts/Attachments/80/image_0154fda27b9848cc894af3aea3f0d6a4_3F6A8912.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;margin-left:0px;border-top:0px;margin-right:0px;border-right:0px" /> form, the form knows if they belong to a certain role, and you can set up certain objects to hide or show in the form based on the user’s role, or switch to a view based on a role, etc.  Each role that you set up can be defined by specific user names, Active Directory groups, or a person’s name from within the form, like this:</p>
<p>UNFORTUNATELY, there are a couple of limitations of this functionality in InfoPath.  </p>
<ul><li>User roles are NOT available when creating browser-based forms.  Therefore, if your form absolutely requires these, then all users who ever fill out this form will need to have the InfoPath software installed on their computers.  This is a huge limitation in a lot of cases.<br /></li>
<li>User roles cannot be created based on SharePoint Groups, only AD groups.</li></ul>
<p> </p>
<p>There’s a <a href="http://sharepointsolutions.blogspot.com/2009/04/how-to-emulate-user-roles-in-infopath.html" target="_blank">blog post</a> out there, that describes a a way to get around this limitation, and emulate user roles in a browser based form.  BUT this method entails manually keeping up a separate SharePoint list where you define all of the users and their roles.  </p>
<p>Today, I’m going to tell you about another way of using the currently logged in user’s information instead of roles, and this can be used in a browser-based form.  This can be used with <strong>SharePoint groups</strong>, where the built in user roles cannot.  The trick is a built in SharePoint web service called the user profile service.  <a href="http://www.pointgowin.com/SeeThePoint/Lists/Posts/ViewPost.aspx?ID=3" target="_blank">Lori Gowin blogged</a> a while back about how to use this web service in order to auto-populate text boxes in any SharePoint form, with information about the current logged in user.  My method entails using that same web service.  <strong><font color="#ff0000">Clarification:</font></strong> This doesn’t refer to ANY SharePoint group, this is only the “members” group that exists on each SharePoint site.  There is another web service that can be used, UserGroup.asmx, in order to get the info about SharePoint groups in general, on a site.</p>
<p>There are a couple of very useful operations in the UserProfileService.asmx web service, so I’ll show you a couple of options (2 parts to this blog).  In this example, you have a change request form.  Site visitors fill out the form, and after they’ve filled it out, people in the IT department will have additional fields to fill in.  We don’t want non-IT staff to see these additional fields, though.  We will create another view in the form.  This view will contain all of the original fields that were filled in by the originator, plus the additional IT fields.  When the form is opened, we want it to automatically switch to this IT view when the logged in user is an IT person.  The prerequisite is that there is a SharePoint group on your site called IT Group, and you are a member of it.  Also, you’ll need a form with 2 views, one of them called IT Dept.</p>
<ol><li>Create a new data connection in the InfoPath form, to receive data.  The source is a web service.  (In SharePoint 2010, pick SOAP web service.)  Click NEXT.<br /></li>
<li>Type the URL of the userprofileservice.asmx file.  This is at the root of your SharePoint site, under the _vti_bin folder.  Click Next.<br /><img width="520" height="365" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/80/image_40d214cce2a34f78af48c48555bab19c_3F6A8912.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>For the operation, click GetUserMemberships, and click NEXT.<br /><img width="236" height="304" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/80/image_6c41f66f9f274c2c9037628fc063af12_3F6A8912.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>On the Parameter screen, just leave the default and click NEXT.<br /></li>
<li>Leave “store a copy of the data…” unchecked, and click NEXT.<br /></li>
<li>Leave “Automatically retrieve data when form is opened CHECKED, and click FINISH.<br /></li>
<li>Now, when someone opens my form, I want the form to automatically switch to the IT view if the user is in a SharePoint group called “IT Group”.  <ul><li>In InfoPath 2010, click the <strong>Data</strong> tab in the ribbon, and click the <strong>Form Load</strong> button, which will bring up the Rules pane on the right. </li>
<li>In InfoPath 2007, click the Tools menu and choose Form Options.  Click the Rules button on the Open and Save section.<br /></li></ul></li>
<li>Define the rule as so: <br />The condition is: Click the first drop-down box (the field name).  Click “<strong>Select Field or Group</strong>”.  In the drop-down for the data source, select <strong>GetUserMemberships</strong>, which was the first data connection that you created.  Expand several levels and select the <strong>DisplayName</strong> field.  Click <strong>OK</strong>.<br /><img width="315" height="361" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/80/image_3f500f5b6f51419da7d6f542c9b87641_3F6A8912.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>For the value, click “type text” and type <strong>IT Group</strong>, as so.  Click OK.<br /><img width="583" height="120" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/80/image_e83a18af5479434fb5e46828e770aec5_3F6A8912.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>Click to add the Action.  The action will be just to switch views.<br /><img width="490" height="275" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/80/image_9d5813bf97f54acfa84641c42fa298ed_3F6A8912.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /></li>
<li>The action is just to switch views, so you’re done with the form open rules now.<br /></li>
<li>Now try it out.  Publish the form.  If you’re a member of the IT Group (SharePoint group), the form will now automatically switch to the IT Dept view when it opens.</li></ol>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>Stay tuned for part 2 of this blog post, for another way to go about accomplishing something similar with this same web service.</p>
<p>Testing:  This GetUserMemberships operation returns a list of all groups that the current user is a member of, SharePoint <strong>and</strong> Active Directory.  In order to see exactly what is returned from this operation, here’s how you can do this.  In the data source pane on the right side of InfoPath, click the Main drop-down box at the top of it and change the data source to GetUserMemberships.  This will show all the fields.  Expand several levels until you get to the one called MembershipData.  Drag this whole group of fields onto your form, as a repeating table.  Preview your form.  This will show you a list of all the groups that you are a member of.  You may need to increase the width of the Display name field, so that you can see all the values.  You’ll also notice that there is a field called Source that shows whether each one is a SharePoint group (“SharePointSite”) or a Distribution list.</p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:1efb9094-f5a3-4eab-a1cc-8435eb9df03b" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/InfoPath+2010" rel="tag">InfoPath 2010</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/forms" rel="tag">forms</a>,<a href="http://technorati.com/tags/web+service" rel="tag">web service</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 8/8/2010 1:05 PM</div>
<div><b>Categories:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_0154fda27b9848cc894af3aea3f0d6a4_3F6A8912.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_0154fda27b9848cc894af3aea3f0d6a4_3F6A8912.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_3f500f5b6f51419da7d6f542c9b87641_3F6A8912.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_3f500f5b6f51419da7d6f542c9b87641_3F6A8912.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_40d214cce2a34f78af48c48555bab19c_3F6A8912.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_40d214cce2a34f78af48c48555bab19c_3F6A8912.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_6c41f66f9f274c2c9037628fc063af12_3F6A8912.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_6c41f66f9f274c2c9037628fc063af12_3F6A8912.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_9d5813bf97f54acfa84641c42fa298ed_3F6A8912.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_9d5813bf97f54acfa84641c42fa298ed_3F6A8912.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_e83a18af5479434fb5e46828e770aec5_3F6A8912.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/80/image_e83a18af5479434fb5e46828e770aec5_3F6A8912.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Sun, 08 Aug 2010 17:05:22 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=80</guid>
    </item>
    <item>
      <title>InfoPath – Query Specific SharePoint List Data</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=129</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassB048BA42C73D4E139B1ECB8E9A068393"><p>With InfoPath and SharePoint 2010, one of the awesome new capabilities is that you can query specific SharePoint list data from data connections that receive from SharePoint lists and libraries.  This applies to all versions of SharePoint 2010 and Office 365, and is compatible with BOTH client based and browser-based forms.</p>
<p>Back in the old days in SharePoint 2007, when you created a data connection in InfoPath to receive SharePoint list data, you couldn’t specify what data to query.  Whichever list you were retrieving, by default, you would get whatever is shown in the default view of that list.  You could do filters on the information once it was queried, but there wasn’t much that could be done as far as a specific query.</p>
<p>Here’s how you do it in InfoPath 2010 with SharePoint 2010.  the example will be a list of regions and a list of states per region, with a cascading drop-down.  This method is MUCH more efficient because you can query only what you need and not the whole list.  Setup:</p>
<ul><li>There are two lists: Regions and States, both custom lists.  </li>
<li>Regions has one field called Region, just a text field.</li>
<li>States has two fields:  Region is a lookup to the region field in the list of regions, and State a text field.  The states list is much longer than the regions.</li></ul>
<p><img width="237" height="318" title="ch5[147]" alt="ch5[147]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5147_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><img width="503" height="437" title="ch5[160]" alt="ch5[160]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5160_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></p>
<p>In my InfoPath form called “New Employees”, the goal will be to have a cascading drop-down so that when a region is selected, the list of states in that region will be shown in the next drop-down box.  This can be a SharePoint list (customized with InfoPath) <strong>or</strong> a form library form.</p>
<p>In the “new employee” example InfoPath form, create a region field and a state field, both as text.  I’ll just focus on these two fields in the steps.</p>
<ol><li>1.  In InfoPath, create a data connection to receive data from the regions list.  Click this button on the <strong>Data</strong> tab:<br /><img width="88" height="76" title="ch5[161]" alt="ch5[161]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5161_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>For the SharePoint site details, use the URL of the SharePoint site where the regions and states lists are.  Click <strong>Next</strong>.</li>
<li>From the list of available lists and libraries, select the Regions list.  Click <strong>Next</strong>.<br /><img width="379" height="366" title="ch5[177]" alt="ch5[177]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5177_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>From the list of fields, put a check box next to <strong>Region</strong> and sort <strong>Ascending</strong>.  Click <strong>Next</strong>.<br /><img width="320" height="374" title="ch5[189]" alt="ch5[189]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5189_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click next on the offline data screen, and click <strong>Finish</strong>.<br /></li>
<li>Create another data connection to receive from the other list, States.<br /><img width="88" height="76" title="ch5[161]" alt="ch5[161]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5161_1_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Repeat steps 1 through 3, selecting the <strong>States</strong> list this time.  From the list of fields, put checkboxes next to Region and State, and sort by state ascending.  Click <strong>Next</strong>.<br /><img width="320" height="374" title="ch5[191]" alt="ch5[191]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5191_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click <strong>Next</strong> on the offline query screen.<br /></li>
<li>This is important, <strong>UNCHECK</strong> the box to automatically retrieve the data when the form is opened.  In general, it is a best practice to only query data from other lists when it is needed, and not every time the form is opened.  This step is one of the keys to the reason that this method is going to be more efficient.  Click <strong>Finish</strong>.<br /><img width="468" height="186" title="ch5[193]" alt="ch5[193]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5193_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Place the Region and State fields on the form as drop-down boxes.<br /><img width="508" height="51" title="ch5[194]" alt="ch5[194]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5194_3B3B539C.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>For the <strong>Regions</strong> drop-down box, set it up like this. Be sure to set the value as ID and the Display name as title.<br /><img width="366" height="238" title="ch5[195]" alt="ch5[195]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5195_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>For the States drop-down box, set it up like this.<br /><img width="366" height="238" title="ch5[196]" alt="ch5[196]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5196_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>In the <strong>Fields</strong> pane on the right, click Advanced View.  let’s take a look at the structure so you’ll understand it.  Change the Fields drop-down to States.  See, there are the query fields, and then there are the data fields.  The data fields will contain the list of states that is retrieved.<br /><img width="236" height="292" title="ch5[197]" alt="ch5[197]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5197_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Now, the trick here will be to query the states list after a region is selected.  So, a rule will be created on the Regions drop-down, which gets triggered right when a value is selected.  Double-click the <strong>Regions</strong> box, and click the <strong>Manage Rules</strong> button in the ribbon.<br /></li>
<li>In the rules pane, click the <strong>New</strong> button and choose <strong>Action</strong>.  For the first action, click the <strong>Add</strong> button and choose<strong> Set a Field’s Value</strong>.  </li>
<li>For the <strong>FIELD</strong>, Set the Query value of the Region field in the States list.  (We want to query that list where Region = the region they selected in the Region drop-down box.)<br /><img width="314" height="201" title="ch5[198]" alt="ch5[198]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5198_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>For the Value, select the <strong>Main</strong> data source, and the <strong>Region</strong> field.<br /><img width="309" height="75" title="ch5[199]" alt="ch5[199]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5199_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /><img width="309" height="125" title="ch5[200]" alt="ch5[200]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5200_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click OK.<br /><img width="481" height="286" title="ch5[201]" alt="ch5[201]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5201_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>In the Rules pane, click the Add button to add another action.  Pick the action called <strong>Query for Data</strong>.<br /></li>
<li>Pick <strong>States</strong> and click <strong>OK</strong>.<br /><img width="481" height="286" title="ch5[202]" alt="ch5[202]" src="/blogs/laura/Lists/Posts/Attachments/129/ch5202_6928A654.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Preview the form.  Pick a Region from the drop-down and then choose the States drop-down and notice that it will only show the states in that region.</li></ol>
<p>Again, this is much more efficient than querying the entirety of all data connections each time the form is opened.  The States data connection was set to NOT retrieve data each time the form is opened, and then when it does retrieve data, only a small subset is queried.  </p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:918315e7-5c31-4950-a82b-4e049c983e01" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/SharePoint+2010" rel="tag">SharePoint 2010</a>,<a href="http://technorati.com/tags/data+connections" rel="tag">data connections</a>,<a href="http://technorati.com/tags/query+for+data" rel="tag">query for data</a>,<a href="http://technorati.com/tags/query+fields" rel="tag">query fields</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 8/1/2011 11:52 PM</div>
<div><b>Categories:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5147_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5147_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5160_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5160_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5161_1_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5161_1_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5161_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5161_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5177_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5177_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5189_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5189_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5191_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5191_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5193_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5193_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5194_3B3B539C.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5194_3B3B539C.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5195_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5195_6928A654.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5196_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5196_6928A654.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5197_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5197_6928A654.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5198_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5198_6928A654.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5199_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5199_6928A654.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5200_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5200_6928A654.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5201_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5201_6928A654.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5202_6928A654.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/129/ch5202_6928A654.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>InfoPath</category>
      <pubDate>Tue, 02 Aug 2011 03:52:27 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=129</guid>
    </item>
    <item>
      <title>Filtering a Gantt View by Query String</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=130</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassF92505BE512444D5803AFD5C2C273471"><p>This post applies to all versions of SharePoint and Office 365.</p>
<p>If you ever wanted to filter a datasheet view of a list or a Gantt view via parameter or web part connection, you may have noticed that there is no option to create this type of filter via web part connection, and these types of views cannot be tweaked in SharePoint Designer.  </p>
<p>The method I’ve come up with entails creating folders for each of the type of thing that you want to filter by.  For example, if I have a case management site where I want to see a pretty Gantt chart of all of the task items only related to the progress of that one case, my folder structure of tasks needs to be one folder for each case in the case management system.  </p>
<p>With that said, this solution may not be applicable in many situations where filters need to be done on-the-fly.  </p>
<p>In my case management system, each time a new case is created, which is a single InfoPath form, I have a workflow that runs and creates several items in a task list, which are all of the tasks that need to happen for that case.  Every case gets the same set of tasks.  The workflow creates a folder in the task list, with the name of the case, then the workflow creates several tasks inside that new folder, for all that case’s tasks.</p>
<p>With that said, that’s the structure I’m dealing with.  Basically a task list with a folder for each case, and a need to have a dynamic “dashboard” for each case that shows only that case’s tasks as a Gantt chart.</p>
<p>Steps:</p>
<ol><li>Go into the task list’s <strong>List Settings</strong>, and go to <strong>Advanced Settings</strong>. Change <strong>Allow management of content types</strong> to <strong>YES</strong>.<br /><img width="274" height="80" title="ch5[206]" alt="ch5[206]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5206_3_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br />Also while on that screen, set <strong>Make new folder command available</strong> to Yes. (For mine I didn’t have to do this, since I was creating the folders via workflow).  Click <strong>OK</strong>.<br /><img width="259" height="82" title="ch5[208]" alt="ch5[208]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5208_3_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Here is my task list.  See that it’s a list of folders.  Inside each folder are the tasks for that case.<br /><img width="371" height="344" title="ch5[204]" alt="ch5[204]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5204_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Create a new view in the task list.  After you click the <strong>Create View</strong> button, choose <strong>Gantt view</strong>.  <br /><img width="622" height="70" title="ch5[205]" alt="ch5[205]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5205_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Name it whatever you’d like, such as something like “Gantt Tasks”.  Set this as the <strong>DEFAULT VIEW,</strong> and pick whatever Gantt view fields and settings you need.  It is very important that this is set as the default view.  In the Folders section, choose “<strong>In folders of content type</strong>” and choose <strong>Folder</strong>.  Click <strong>OK</strong>.<br /><img width="319" height="109" title="ch5[209]" alt="ch5[209]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5209_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>On the task’s list settings screen, scroll down and click on the name of your view called “<strong>All Tasks</strong>” (the one that WAS the default view), and scroll down in the view’s settings to the <strong>FOLDERS</strong> section.  Under Show this view, select <strong>In the top-level folder</strong>.  (Note that this setting will NOT be in here if you haven’t done step 1 - allow mgmt of content types).  Click <strong>OK</strong>.<br /><img width="344" height="202" title="ch5[207]" alt="ch5[207]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5207_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>On your List Settings screen, your views should look like this:<br /><img width="602" height="156" title="ch5[213]" alt="ch5[213]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5213_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>You’ll notice now, that when you click Tasks in the breadcrumb trail to navigate back up to view your list, it will initially show just the names of the folders, but when you click on a folder name, then it will show the Gantt view of the items in that folder.  Now all you need to be able to do is link directly to that filtered list of items for each project’s “dashboard”.<br /></li>
<li>I need the URL, so I click on one of the top level folders and copy the URL.  A variable with the case name will have to be used in here, so that people can click a link to go straight to the dashboard for any project.  Here is the URL:<br /><br />http://www.contoso.com/personal/laura/Lists/Tasks/gantt.aspx?RootFolder=%2Fpersonal%2Flaura%2FLists%2FTasks%2F<font color="#ff0000" size="2"><strong>4443</strong></font>&amp;FolderCTID=0x01200026FFDF69BB12F64096EF8BBB82B5EBA7<br /></li>
<li>See the 4443 in that URL?  THAT is the name of the case folder that I clicked on, so THAT is what needs to be variable per case.  Keep in mind that in this particular project, the original case was a form library of InfoPath forms that had been filled out for each case.  So what I want to do is add a hyperlink to my list of forms for “<strong>Details</strong>” for that case, which will take me to this filtered view of the tasks in a Gantt view.  Therefore, I’m going to my list of forms, and whatever the Case number is, that is what needs to be placed in that RED part of the URL.<br /><img width="615" height="160" title="ch5[214]" alt="ch5[214]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5214_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>I opened up my list of forms in SharePoint designer, and simply added a new empty column to the table and inserted a hyperlink in it:<br /><br />/personal/laura/Lists/Tasks/gantt.aspx?RootFolder=%2Fpersonal%2Flaura%2FLists%2FTasks%2F<strong>{$thisNode/@FileLeafRef.Name}&amp;</strong>FolderCTID=0x01200026FFDF69BB12F64096EF8BBB82B5EBA7<br /></li>
<li>The name of my InfoPath file name just happens to be equivalent to the name of my case, which is the same name I used for the name of all of the folders in the task list.<br /><img width="645" height="331" title="ch5[215]" alt="ch5[215]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5215_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Once you’re done adding that hyperlink, then save the page.  Now, when I’m looking at all my cases, I can click “details” to see the specific Gantt view of tasks related to that case.  <br /><a href="/blogs/laura/Lists/Posts/Attachments/138/ch5218_1_2AEDC949.png"><img width="639" height="166" title="ch5[218]" alt="ch5[218]" src="/blogs/laura/Lists/Posts/Attachments/130/ch5218_thumb_2AEDC949.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></li></ol>
<p>Obviously, this is just a small piece of what is a much bigger project.  Hopefully you’ve enjoyed this tidbit.  If you’d like to read more about the concept of query strings in SharePoint, I’ve written a set of 4 blog posts that start here: <a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=77">Query String URLs are like, SO Useful! (Part 1 of 4)</a><br /></p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:4876b8db-40f4-42f6-bf8e-f90fbdb7eea9" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/Office365" rel="tag">Office365</a>,<a href="http://technorati.com/tags/Gantt+chart" rel="tag">Gantt chart</a>,<a href="http://technorati.com/tags/query+string+filter" rel="tag">query string filter</a>,<a href="http://technorati.com/tags/Views" rel="tag">Views</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=9&RootFolder=*">Views</a></div>
<div><b>Published:</b> 8/4/2011 2:21 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5204_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5204_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5205_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5205_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5206_3_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5206_3_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5207_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5207_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5208_3_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5208_3_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5209_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5209_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5213_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5213_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5214_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5214_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5215_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5215_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5218_1_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5218_1_2AEDC949.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5218_thumb_2AEDC949.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/130/ch5218_thumb_2AEDC949.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; Views</category>
      <pubDate>Thu, 04 Aug 2011 18:21:02 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=130</guid>
    </item>
    <item>
      <title>InfoPath– Formulate Email Link to Browser Form</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=131</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass96C427D998C54E8CAC360C54349140F6"><p>When using InfoPath 2010 with SharePoint, it is common to create workflows to send a link to the form.  The most common thing in my experience is an approval process.  Each time the form needs to be approved, the next approver is sent an email via SharePoint Designer workflow.  There is a “URL Path” field that can be used in the email, which will directly open the form.  The problem with this method is that there is no way to control *how* the form is opened.  If the end user has the InfoPath client software on their computer, clicking this link will open the form in InfoPath…. even if it is a browser based form and you want it to always be opened in the browser.  </p>
<p>Why would you care if the form gets opened in the client or the browser?  </p>
<ul><li>One main reason is to keep a consistent user experience.  If they get a browser form every time they open the form, then they will be less likely to be confused about why the form looks a little bit different.  <br /></li>
<li>Another, more obscure reason, is the timing issue with workflows.  When I have a workflow that runs when a form is changed, sometimes if the client software is used, the software just isn’t quite finished closing when the workflow kicks off, so you get conflicts and errors.  If the form is always opened in the browser, this will never happen.</li></ul>
<p>Here’s how to formulate the URL.  First, click an existing browser-based form, to dissect the URL.  This is just an example of what the syntax will look like.</p>
<p>http://yoursharepointURL/Yoursite/_layouts/FormServer.aspx?<strong>XmlLocation</strong>=/Yoursite/CheckRequest/laura-2011-05-05.xml&amp;<strong>ClientInstalled</strong>=true&amp;<strong>Source</strong>=http%3A%2F%2Fyoursharepointurl%2FYoursite%2FCheckRequest%2FForms%2FAllItems%2Easpx&amp;<strong>DefaultItemOpen</strong>=1</p>
<h3>The Parameters</h3>
<p><strong>XmlLocation</strong> – This is the path to the the specific XML file, which is a form that has been filled out.</p>
<p><strong>ClientInstalled</strong> – It says that the client is installed on my computer, but this parameter is not important in this situation.</p>
<p><strong>Source</strong> – This is important.  This is the URL where you want the person to be redirected to after they submit or close the form.  By default it is the default view of the form library, but you can use any site in the site collection.</p>
<p>DefaultItemOpen – This tells it to open the form in the browser.</p>
<h3>The Workflow Email Hyperlink</h3>
<p>If you’re like me, you like to send a link to the form in several different emails, at different times in the workflow.  For efficiency’s sake, I like to create the link as a workflow variable, so that it can simply be reused in several places.  Here’s how:</p>
<ol><li>In your SharePoint Designer workflow, add a new action to “Set Workflow Variable” at the very beginning of the workflow.<br /><img width="240" height="100" title="ch5[161]" alt="ch5[161]" src="/blogs/laura/Lists/Posts/Attachments/131/ch5161_7726FC82.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click the blue text <strong>workflow variable</strong>, and choose <strong>Create a new variable</strong>.  Name it FormLink, and make it a string.  Click <strong>OK</strong>.<br /></li>
<li>Click the blue text <strong>value</strong>, and click the little <strong>…</strong> ellipses (string builder)<br /></li>
<li>Click the <strong>Add or Change Lookup</strong> button.  Choose <strong>Workflow Context</strong> as the data source, and choose <strong>Current Site URL</strong> as the field.  Click <strong>OK</strong>.<br /><img width="380" height="199" title="ch5[177]" alt="ch5[177]" src="/blogs/laura/Lists/Posts/Attachments/131/ch5177_7726FC82.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>After you select the Current Site URL, type the following text after it.  (see screenshot) You are basically re-creating the same structure as that original URL that you copied.<br /><img width="509" height="86" title="ch5[189]" alt="ch5[189]" src="/blogs/laura/Lists/Posts/Attachments/131/ch5189_7726FC82.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Put the cursor at the very end, and then use the <strong>Add or Change Lookup</strong> button again, this time selecting the Workflow Context and the <strong>Current ITEM URL</strong> (not current site again).<br /></li>
<li>Go ahead and recreate this entire string, as one big string with no spaces, there’s one more spot where you insert the “current site URL”.  Click <strong>OK</strong>.<br /><img width="648" height="108" title="ch5[191]" alt="ch5[191]" src="/blogs/laura/Lists/Posts/Attachments/131/ch5191_1_7726FC82.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /><br /><strong><font color="#0000ff">NOTE: In most situations, I want the end user to be redirected back to the home page after they submit or close the form, which is why I use “Current Site URL” in the &amp;Source section.  This is up to you, and can be some other site or page in your site collection.</font></strong><br /></li>
<li>This is what the set variable action will look like:<br /><img width="420" height="99" title="ch5[195]" alt="ch5[195]" src="/blogs/laura/Lists/Posts/Attachments/131/ch5195_25144F3B.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>At any point in your workflow where emails are being sent, this variable can be used.  In the body of your email, click <strong>Add or Change Lookup</strong>.  Pick Workflow Variables and Parameters as your data source, and then pick the FormLink variable.<br /><img width="557" height="512" title="ch5[193]" alt="ch5[193]" src="/blogs/laura/Lists/Posts/Attachments/131/ch5193_25144F3B.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></li></ol>
<p>This method can be used in either list-based or reusable workflows.  Stay tuned for more posts regarding hyperlinks in workflows and the task process designer.</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:8b9d9b37-5e7b-45e6-a1bf-d1986dd21cc7" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/workflows" rel="tag">workflows</a>,<a href="http://technorati.com/tags/InfoPath+2010" rel="tag">InfoPath 2010</a>,<a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 9/12/2011 11:27 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5161_7726FC82.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5161_7726FC82.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5177_7726FC82.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5177_7726FC82.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5189_7726FC82.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5189_7726FC82.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5191_1_7726FC82.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5191_1_7726FC82.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5193_25144F3B.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5193_25144F3B.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5195_25144F3B.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/131/ch5195_25144F3B.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Tue, 13 Sep 2011 03:27:02 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=131</guid>
    </item>
    <item>
      <title>Link to a Specific InfoPath View</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=133</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassDCD4C29AFC784F58A8F7CF8789AAB89A"><p>In many cases in InfoPath, especially when testing, it is helpful to be able to click to go directly to a specific view of a form.  Of course, you can always insert a button in a form whose action is to switch views, and use a formatting rule to only show that button to certain people.  This is what I’ve been doing for years, but in this blog post I’m going to show you a different trick that lets you create a hyperlink directly to a specific view of in a form.  </p>
<p>It is a query string parameter, and the syntax is:</p>
<p>DefaultView=ViewName</p>
<p>When you click to create a new browser-based form, here is an example of the URL you will see in the address bar:</p>
<p>http://portal.contoso.com/demo/_layouts/FormServer.aspx?XsnLocation=http://portal.contoso.com/demo/CheckReqest/Forms/template.xsn&amp;SaveLocation=http%3A%2F%2Fportal%2Econtoso%2Ecom%2Fdemo%2FCheckRequest&amp;ClientInstalled=true&amp;Source=http%3A%2F%2Fportal%2Econtoso%2Ecom%2Fdemo%2FCheckRequest%2FForms%2FAllItems%2Easpx&amp;DefaultItemOpen=1</p>
<p>Normally, when formulating a link to a form, I’ll take the above and trim it down a bit.  </p>
<ul><li>I usually only include a submit button in the form and not a save button, so <strong>&amp;SaveLocation</strong> isn’t needed.  </li>
<li>Also, I usually change the <strong>&amp;Source</strong> to take you back to the main page after filling out the form.  In this case, the site I want to be redirected back to is <a href="http://portal.contoso.com/demo">http://portal.contoso.com/demo</a>. </li>
<li>I’ve found that when I keep it browser-based, the <strong>&amp;ClientInstalled</strong> isn’t needed.so the URL is:</li></ul>
<p>http://portal.contoso.com/demo/_layouts/FormServer.aspx?XsnLocation=http://portal.contoso.com/demo/CheckReqest/Forms/template.xsn&amp;Source=/demo&amp;DefaultItemOpen=1</p>
<p>In a lot of cases when testing a new form, I’ll create a view called ADMIN, and just dump all the form’s fields on it.  This way, I can troubleshoot any validation errors, rules, etc.  Here is how to formulate the hyperlink to open a new form directly this ADMIN view.  Note that this DefaultView parameter only works with a new form, and not on already existing ones.</p>
<p>http://portal.contoso.com/demo/_layouts/FormServer.aspx?XsnLocation=http://portal.contoso.com/demo/CheckReqest/Forms/template.xsn&amp;Source=/demo<strong><font color="#ff0000">&amp;DefaultView=ADMIN</font></strong>&amp;DefaultItemOpen=1</p>
<p>It doesn’t appear to work when you put it at the very end of the URL, so it needs to go before the DefaultItemOpen.  So now that you know what the syntax is, I’ll tell you about another example of a case in which I’ve used it.</p>
<p>I have a view in an expense form that is the most commonly used view.  Then, I have another view that’s not the default, that’s called “New”, and it is a very trimmed down view with only a handful of fields that the initiator can fill out.  Once the initiator has filled out some basics, this form goes through a workflow and approval process, and the initiator is not privy to that whole process.  In this case, I created a big pretty button on the homepage for “New Expense Report” and used the hyperlink (that last example above), with the default view being set to the New view.  They fill it out and are immediately redirected to the homepage.  People love pretty buttons.  I just use the Content Editor web part for this:</p>
<p><img width="180" height="143" title="MA14SP-3" alt="MA14SP-3" src="/blogs/laura/Lists/Posts/Attachments/133/MA14SP-3_4387441D.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></p>
<p><strong>More Info:  I’ve written a couple of blog posts that are related to this topic:</strong></p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=91" target="_blank">May the &amp;Source Be With You</a></p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=68" target="_blank">SharePoint URL Basics</a></p>
<p><a href="http://www.amazon.com/dp/0735662061/ref=as_li_ss_til?tag=laurogwon-20&amp;camp=213381&amp;creative=390973&amp;linkCode=as4&amp;creativeASIN=0735662061&amp;adid=0AR97EEXMYB0J6AQZV7N&amp;" target="_blank"><img width="154" height="154" title="Buy my InfoPath book!" alt="Buy my InfoPath book!" src="/blogs/laura/Lists/Posts/Attachments/133/InfoPathBook_small_5e8ce278-a182-4bb8-bf3c-ddff291d3c08_4387441D.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d75b6e1e-a5c2-4b32-b3cc-6e2e465e0785" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/query+string" rel="tag">query string</a>,<a href="http://technorati.com/tags/parameter" rel="tag">parameter</a>,<a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 10/4/2011 12:47 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/133/InfoPathBook_small_5e8ce278-a182-4bb8-bf3c-ddff291d3c08_4387441D.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/133/InfoPathBook_small_5e8ce278-a182-4bb8-bf3c-ddff291d3c08_4387441D.jpg</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/133/MA14SP-3_4387441D.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/133/MA14SP-3_4387441D.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Tue, 04 Oct 2011 16:47:56 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=133</guid>
    </item>
    <item>
      <title>InfoPath: Using the ID field as the Form Filename</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=137</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass34B8319839464A5DA498868A4124A82A"><p>It is a common requirement of InfoPath projects to make a form in a form library, where the name of the XML file is the same as the ID of the item itself.  There are several methods I’ve seen out there, and I’m definitely not the first person to blog about this.  One method is in which you create a data connection back to the form library itself, pull in all the items, and calculate the MAX ID + 1, to create your new form name.  That’s an okay method, except that I’ve seen it bomb out once your library view gets to over 1,000 items.</p>
<p>Here’s a way of doing it, which is pretty simple:</p>
<ol><li>Create a field in your form library form, called something like <strong>AutoID</strong>, as a text field.<br /></li>
<li>Set the default value of AutoID to be the function Now().  Uncheck the box to refresh the value.<br /><img width="338" height="382" title="MA14SP-30" alt="MA14SP-30" src="/blogs/laura/Lists/Posts/Attachments/145/MA14SP-30_7D55F5D8.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Create your submit connection to use the <strong>AutoID</strong> as the file name<br /><img width="526" height="150" title="MA14SP-29" alt="MA14SP-29" src="/blogs/laura/Lists/Posts/Attachments/145/MA14SP-29_7D55F5D8.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>When you go through the publishing wizard in InfoPath, promote the AutoID field up as a column, and check the box to “allow users to edit data in this field…”<br /><img width="409" height="358" title="MA14SP-32" alt="MA14SP-32" src="/blogs/laura/Lists/Posts/Attachments/145/MA14SP-32_7D55F5D8.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Create a SharePoint Designer workflow that runs on create:<br /><img width="346" height="146" title="MA14SP-33" alt="MA14SP-33" src="/blogs/laura/Lists/Posts/Attachments/145/MA14SP-33_7D55F5D8.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br />The steps are:<br />Wait for field change in current item<br />Wait for change in document check out status<br />Set field in current item (use the string builder to put the ID field with a .xml next to it)<br />Set field in current item (use the field picker to just pick the ID field)<br /></li></ol>
<p>Results: when a form is first filled out and submitted, the filename will be set to a long set of numbers that represents the current date and time.  This is temporary.  As soon as the XML file is first created, the workflow will run, and will change the filename and the AutoID field to the ID of the item.  Then, next time someone opens it up and submits it again (if you want them to be able to-see the checkbox at step 3), it will submit as that same AutoID number.</p>
<p><img width="213" height="56" title="MA14SP-34" alt="MA14SP-34" src="/blogs/laura/Lists/Posts/Attachments/145/MA14SP-34_7D55F5D8.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d9fd034b-ec05-4b27-92e6-9f7d6ef8a172" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a>,<a href="http://technorati.com/tags/workflow" rel="tag">workflow</a>,<a href="http://technorati.com/tags/Auto+ID" rel="tag">Auto ID</a>,<a href="http://technorati.com/tags/Unique+ID" rel="tag">Unique ID</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 11/15/2011 2:06 PM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Tue, 15 Nov 2011 19:06:58 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=137</guid>
    </item>
    <item>
      <title>Video Demos of My InfoPath Approval Process &amp; Workflow</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=138</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass4FB0E8C717D24C97BB5279091DAF1213"><p>You may have seen my webinars or presentations about approval processes in SharePoint, or my rants about the difference between assigning tasks and sending emails.  On our weekly SharePoint Shop Talk conference call, I did a couple of demos recently, showing the way I create an approval workflow using InfoPath and a SharePoint Designer workflow.  Each of these isn’t exactly a fully polished presentation with a PowerPoint or anything, they are just quick 10 to 15 minute rough demos.</p>
<p>You can find them here on the SharePoint Shop Talk site:</p>
<p><a href="http://sharepointshoptalk.blogspot.com/2011/05/panelist-spotlight-infopath-sharepoint.html" target="_blank"><img src="http://4.bp.blogspot.com/-xj3IQvVXnCo/TkwhfomT3lI/AAAAAAAAAC4/6-gNy5nJimw/s1600/sharepointshoptalk4thlevel%2Bsmall.jpg" alt="" /></a></p>
<p>Panelist Spotlight - InfoPath &amp; SharePoint Designer 2010 Workflow</p>
<p><a title="http://sharepointshoptalk.blogspot.com/2011/05/panelist-spotlight-infopath-sharepoint.html" href="http://sharepointshoptalk.blogspot.com/2011/05/panelist-spotlight-infopath-sharepoint.html">http://sharepointshoptalk.blogspot.com/2011/05/panelist-spotlight-infopath-sharepoint.html</a></p>
<p><strong><em>Note</em></strong>: If you’re interested in reading the full documentation of this process, I did write a 70 page chapter in the new InfoPath book, detailing the whole process step-by-step.</p>
<p><a href="http://www.amazon.com/dp/0735662061/ref=as_li_ss_til?tag=laurogwon-20&amp;camp=213381&amp;creative=390973&amp;linkCode=as4&amp;creativeASIN=0735662061&amp;adid=0WDMV2ADB2KRPD82497G&amp;" target="_blank">Using Microsoft InfoPath 2010 with Microsoft SharePoint 2010 Step by Step</a></p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5ecc03eb-6b90-4970-b412-a1d26c6d2dbc" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/workflows" rel="tag">workflows</a>,<a href="http://technorati.com/tags/approval+process" rel="tag">approval process</a>,<a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 11/22/2011 7:58 PM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Wed, 23 Nov 2011 00:58:16 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=138</guid>
    </item>
    <item>
      <title>SharePoint &amp; Office 365: Simple permissions governance</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=140</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassFD19065332004BE78FA2C5524F678519"><p>In SharePoint and SharePoint Online with Office 365, permissions have always been one of the major pain points when it comes to end users, training and adoption. The user interface on the permissions screens, and the complexity revolving around inheriting or breaking permissions, are in many cases quite challenging to grasp. </p>
<p>In this article for SPTechWeb, I discussed some of my ideas and solutions for permissions: </p>
<p><a href="http://www.sptechweb.com/link/36144" target="_blank"><strong>Click to read the article</strong></a> </p>
<p>  </p>
<p align="center"><a href="http://www.sptechweb.com/link/36144" target="_blank"><img src="http://www.sptechweb.com/images/header/SPTechWeb_logo.png" border="0" alt="" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px" /></a></p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:6c0e3b30-175a-42b4-a7a0-53d4d490ee90" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SPTechCon" rel="tag">SPTechCon</a>,<a href="http://technorati.com/tags/SPTechWeb" rel="tag">SPTechWeb</a>,<a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/permissions" rel="tag">permissions</a>,<a href="http://technorati.com/tags/governance" rel="tag">governance</a>,<a href="http://technorati.com/tags/Office365" rel="tag">Office365</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=8&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=8&RootFolder=*">MS Office</a></div>
<div><b>Published:</b> 12/7/2011 11:02 AM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; MS Office</category>
      <pubDate>Wed, 07 Dec 2011 16:02:08 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=140</guid>
    </item>
    <item>
      <title>Workflow–How to Set Task Fields</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=141</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass224EF32971494572BEEE9D5E105B2E69"><p>When assigning tasks in SharePoint workflows, you may have noticed that each task that gets assigned has one field that associates it with the original list or library item where the workflow task came from.  You may have noticed the “Related Content” column in a task list.  It is just a hyperlink field that links you back to that original item.</p>
<p>This post applies to SharePoint enterprise, and SharePoint Online for Office 365 (enterprise version).  </p>
<p><a href="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-1_1_51CF80B1.png"><img width="630" height="227" title="Oreilly-1" alt="Oreilly-1" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-1_thumb_51CF80B1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p>
<p> </p>
<p>In my experience, it’s quite challenging to do any kind of filtering and reporting just based off of a hyperlink field.  And web part connections won’t even work with this field, it’s just not very useful except for just as a link to click back to that item.  </p>
<p>What if you want to have a lookup field that goes back to the original item, or other metadata information? </p>
<p>In this post, I’ll show you how to create other task fields and set up the workflow so that it populates those fields when each task gets created.</p>
<p>My document library is called <strong>Shared Documents</strong>, and the task list is <strong>Tasks</strong>.  When tasks are assigned for people to approve the documents in the library, I want a field called “LookupSharedDocument” to be populated for each task.  </p>
<ol><li>Create a site column called <strong>LookupSharedDocument</strong>, as a lookup field.  Make it lookup to that Shared Documents library.  Pick the Title column in the drop-down.  We can also pull info from any other fields in that library, so put a check box next to “modified”.  Click <strong>OK</strong>.  You can be creative  here, and check the box next to any other fields that you’d like to see listed in the task list.<br /><img width="338" height="366" title="Oreilly-2" alt="Oreilly-2" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-2_51CF80B1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Open your site in SharePoint Designer.<br /></li>
<li>Click Workflows on the left, and create a new workflow based on the Shared Documents library.  Name your workflow “<strong>test approval</strong>”.<br /></li>
<li>Add a single action to your workflow <strong>Start Approval Process</strong>.<br /></li>
<li>Click on the blue <strong>these users</strong>.<br /></li>
<li>Since it’s just a test, you can put your own name in the <strong>Participants</strong> box. In the real world, this would be the name of the person or group who will be assigned the task.<br /></li>
<li>Next to <strong>Title</strong>, click the little ellipsis <strong>[…]</strong> button.  Type:<br />Approve this: <br /></li>
<li>Click the <strong>Add or Change Lookup</strong> button, and pick the <strong>Title</strong> field from the current item.  Click <strong>OK</strong>. I put a “1” next to Duration per task, since I only want each person to have one day to complete their task. <br /><img width="521" height="487" title="Oreilly-3" alt="Oreilly-3" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-3_6ACB50F6.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click <strong>OK</strong> on all dialog boxes until you’re back at the workflow screen.<br /></li>
<li>Click the blue word Approval.  For the name, change it to <strong>Document Approval</strong>.<br /><img width="493" height="470" title="Oreilly-4" alt="Oreilly-4" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-4_6ACB50F6.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>On the right in the Task Form Fields section, click <strong>Choose Existing field</strong>.  Click <strong>OK</strong> to the notification message.<br /></li>
<li><font color="#ff0000">IMPORTANT</font>: Be sure and click the <strong>Publish</strong> button to publish your workflow before doing the next part, because once this lookup field is added to the task form, it won’t re-generate the form, and you’ll get the error at step 15.  This won’t happen with other fields besides lookup fields, though.<br /></li>
<li>Choose the <strong>LookupSharedDocument</strong> field, and click <strong>OK</strong>.<br /><img width="445" height="243" title="Oreilly-5" alt="Oreilly-5" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-5_6ACB50F6.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click <strong>Change the behavior of a single task</strong>.<br /></li>
<li>Put your cursor in the top step called <strong>Before a Task is Assigned</strong>.  Add the action called <strong>Set Task Field</strong>.  <font color="#ff0000">Note that this is NOT the same as set field in current item, and inside of this task process inside of this one step, you’ll have actions available here that aren’t available in other parts of the workflow.<br /></font><img width="358" height="114" title="Oreilly-7" alt="Oreilly-7" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-7_6ACB50F6.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click the blue word FIELD.  Choose <strong>LookupSharedDocument</strong>.<br /></li>
<li>Click the blue word VALUE.  Pick the <strong>ID</strong> field from the current item.<br /></li>
<li>Click the Publish button at the top, to publish your workflow to SharePoint.  <br /><font color="#ff0000">Note: I got an error about not being able to generate the task form or something, but I clicked OK, and I was still allowed to publish the workflow.  The error just means that it won’t create the new Lookup field in the task form itself.  But since we don’t want people editing it, we would have removed it anyway.<br /></font></li>
<li>Open your task list in the browser, and modify the default view to add the two new columns for the Lookup… information.<br /><a href="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-10_1_18B8A3AF.png"><img width="580" height="130" title="Oreilly-10" alt="Oreilly-10" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-10_thumb_46A5F667.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></li></ol>
<p>Now in the drop-down box for a document in Shared Documents, click Workflows, and click your Test Approval workflow.  Click to START the workflow.  A task will immediately be assigned to you.  Take a look over in the task list, and notice that the new columns now have the lookup information in them!</p>
<p>Now go to your Shared Documents library, and click to edit the page (of just the default view).  On the ribbon, click the <strong>Insert Related List</strong> button in the Web Part Tools (Options) tab.  Notice that it lets you select that tasks list!!</p>
<p>End result:</p>
<p><img width="615" height="229" title="Oreilly-11" alt="Oreilly-11" src="/blogs/laura/Lists/Posts/Attachments/149/Oreilly-11_46A5F667.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></p>
<p>This is a great solution, not just for lookup fields, but for any additional task fields that need to be populated with information from the original list or library.  I just recommend creating them as site columns first.  In this case, we were just looking up the ID of the current item, but there could be a case where you have a field like customer code or something, that’s just a text field in the shared documents library.  You’d need to create it as a site column first, before adding it to the document library.  Then, when you’re at step 11, you’d be choosing that exact same site column to put in your tasks list.<br /></p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:60bb8044-e393-4346-ba37-5e63a4c21c32" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/workflows" rel="tag">workflows</a>,<a href="http://technorati.com/tags/web+parts" rel="tag">web parts</a>,<a href="http://technorati.com/tags/web+part+connections" rel="tag">web part connections</a>,<a href="http://technorati.com/tags/approval+process" rel="tag">approval process</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*">workflows</a></div>
<div><b>Published:</b> 12/19/2011 2:03 PM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; workflows</category>
      <pubDate>Mon, 19 Dec 2011 19:03:02 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=141</guid>
    </item>
    <item>
      <title>InfoPath “Save Draft” Form Functionality – A Better Way</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=144</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass2CDA7B630D2A447880C376332E2528BE"><p>There are a couple of buttons in InfoPath forms by default called “Save” and “Save As”.  I never ever (ever) like to use these, and immediately disable them.  I don’t like these buttons because it gives the end users the freedom to save the form with any filename at all, which can make a big mess of a form library.</p>
<p>This solution can be done in any version of SharePoint or SharePoint Online with Office 365. </p>
<p>So when I tell people that I always disable these buttons, people’s response is “Wait, but what if we need to give users the ability to save a draft of the form before they submit it?”  My answer is to still use the submit functionality only, and put buttons on the form for “Save” and “Submit”.</p>
<p>The tricky part of this solution, is the fact that a form will inevitably have a few required fields, but they’re not supposed to be required if it’s only a draft.  In this post I’ll show you how to accomplish this.  When users fill out a form, they will have a “save draft” button and a “submit” button, and users will not get an error when a draft is saved and required fields are not filled out.</p>
<p>In this example, I’m going to use a super simple form, with just a few fields.  There are four text fields, called <strong>FirstName</strong>, <strong>LastName</strong>, <strong>FormName</strong>, and <strong>FormStatus</strong>.</p>
<ol><li>For the FormName, the default value is <strong>translate(now(), &quot;:-T&quot;, &quot;&quot;)<br /></strong>Be sure to uncheck the box “<strong>Refresh value when formula is recalculated</strong>”. This is the typical method I use for InfoPath file names.  Each filename will be unique, and it won’t be dependent on any particular fields being filled out.<br /><img width="349" height="395" title="Oreilly-15" alt="Oreilly-15" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-15_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Go ahead and publish this form to SharePoint.  I usually do this before creating the data connection for submitting.  <br />(Note for beginners: For a full tutorial, screenshots and details about publishing and submitting forms, you can read chapter 6 in my <a href="http://www.amazon.com/dp/0735662061/ref=as_li_ss_til?tag=laurogwon-20&amp;camp=213381&amp;creative=390973&amp;linkCode=as4&amp;creativeASIN=0735662061&amp;adid=0E916CQ906FCFNSQSQZC&amp;&amp;ref-refURL=http://www.sharepoint911.com/blogs/laura/default.aspx" target="_blank">book</a>)<br /></li>
<li>In the browser, go to the form library you created when you published the form to SharePoint.  In the address bar, copy the URL to the clipboard.<br /></li>
<li>In the Data tab in your form, click <strong>To SharePoint Library</strong>.<br /></li>
<li>In the Document Library box, paste the URL to your new form library, the one you copied at step 3.  Remove the <strong>/Forms/AllItems</strong>.  For the file name, use the function button to select the <strong>FormName</strong> field in your form.  Check the box to <strong>allow overwrite if file exists</strong>.<br /><img width="577" height="405" title="Oreilly-16" alt="Oreilly-16" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-16_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click <strong>Next</strong>.  Click <strong>Finish</strong>.<br /></li>
<li>This form is very simple, and has first name and last name text boxes.  Place two new buttons at the bottom of the form.<br /><img width="551" height="239" title="Oreilly-18" alt="Oreilly-18" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-18_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Select the SECOND button, and click the <strong>Properties</strong> tab in the ribbon.  In the <strong>Action</strong> drop-down, choose <strong>Submit</strong>.<br /><img width="272" height="89" title="Oreilly-19" alt="Oreilly-19" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-19_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click the <strong>Submit Actions</strong> button.  Select <strong>Perform custom action using rules</strong>.  Click <strong>OK</strong>.<br /></li>
<li>In the <strong>Rules</strong> pane on the right, click the Add button, and choose <strong>Set a Field’s Value</strong>.<br /></li>
<li>For the field, select FormStatus, and for the value, just type the word <strong>Submitted</strong>.  Click <strong>OK</strong>.<br /><img width="484" height="297" title="Oreilly-20" alt="Oreilly-20" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-20_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Move this rule up above the “Submit” rule that was already there.<br /><img width="377" height="464" title="Oreilly-21" alt="Oreilly-21" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-21_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click to select the first of the two buttons on the form, the one that still says “Button”.  If you don’t already see the Rules pane on the right, go to the Home tab, and click <strong>Manage Rules</strong>.<br /><img width="548" height="215" title="Oreilly-22" alt="Oreilly-22" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-22_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Create a new Action rule that will have 3 actions:  Set a field’s value, Submit, then Close.  Note that if you’re not sure how to set a field’s value, refer back to step 11.<br /><img width="365" height="333" title="Oreilly-23" alt="Oreilly-23" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-23_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>With the button still selected, click the Properties tab in the ribbon.  For the <strong>Label</strong>, type <strong>Save as Draft</strong>.<br /></li>
<li>Just so that you can see the value of the form status, go ahead and drag the form status field onto the form.  Right click the field, choose Change Control, and choose Calculated Value.  This is a quick way of putting a read only field on the form.<br /></li>
<li>Open the properties of the FormStatus field, and set the default value as <strong>New</strong>.<br /></li>
<li>On the <strong>Data</strong> tab, click the <strong>Form Load</strong> button.  Create a new <strong>Action</strong> rule.  Name this rule <strong>Draft</strong>.  <br /></li>
<li>Click the blue text under the word <strong>Condition</strong>.  The condition is Form Status is equal to Draft.  Click <strong>OK</strong>.<br /><img width="577" height="117" title="Oreilly-29" alt="Oreilly-29" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-29_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click the Add button, and create an action to set a field’s value.  Set the <strong>Form Status</strong> value to <strong>New</strong>.<br /></li>
<li>Now it’s time for the meat of how this solution works.  Click to <strong>select the First Name text box</strong>.  This is where we create a rule so that this field is not required if the form is in draft state.  In the <strong>Rules</strong> pane, click to create a new <strong>Validation</strong> rule.  You can call it “required”.<br /></li>
<li>Create the following as the conditions:<br /><img width="580" height="142" title="Oreilly-30" alt="Oreilly-30" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-30_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Type some text in the screen tip box:<br /><img width="247" height="441" title="Oreilly-38" alt="Oreilly-38" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-38_6E9811A1.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click the <strong>Copy</strong> icon at the top of the Rules pane (it’s the first of the 4 little icons at the top).<br /></li>
<li>In the form, click to select the Last Name text box on the form.  In the rules pane, click the <strong>Paste</strong> icon.  Notice that the rule was smart enough to alter itself to the new field’s name.<br /></li>
<li>Now it’s time to get rid of the Save and Save As buttons.  Click <strong>File</strong>, click <strong>Form Options</strong>, and uncheck the Save and the Save As options.  Click <strong>OK</strong>.<br /></li>
<li>One more thing.  You may want the “Save as Draft” button to go away after the item has been “submitted”, so a rule can be created for this.  Click to select the Save as Draft button.  In the Rules pane, click the <strong>New</strong> button, and choose <strong>Formatting</strong> (to create a formatting rule).  The condition needs to be <strong>FormStatus is not equal to Draft</strong> and <strong>FormStatus is not equal to New</strong>.  Check the box for <strong>Hide this control</strong>.  You can call this rule “hidden.<br /><img width="247" height="504" title="Oreilly-40" alt="Oreilly-40" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-40_0235BE85.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /><br /></li>
<li>Click the <strong>Quick Publish</strong> button at the top.</li></ol>
<p>Now go over to SharePoint, to your new form library.  Click to fill out a new form.  Notice that even if you do not fill out the required fields (the ones with red asterisks), you can still click to save the form as a draft.  If you try to Submit the form, though, the required fields must be filled out.  You also may want to go through the publishing wizard again, if you’d like to add the form status as a column in the SharePoint library.</p>
<p>A new form will look like this:</p>
<p><img width="610" height="328" title="Oreilly-42" alt="Oreilly-42" src="/blogs/laura/Lists/Posts/Attachments/152/Oreilly-42_0235BE85.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:dd7d6710-7aa8-407b-a46d-8059aebb7046" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/data+connections" rel="tag">data connections</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 1/1/2012 11:28 PM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Mon, 02 Jan 2012 04:28:15 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=144</guid>
    </item>
    <item>
      <title>Submit Form to a Secure Location</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=148</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass43175D5A64F442219B083585CE282826"><p>Forms and security. It is a common requirement to have a form that can be filled out, and when it is submitted, it goes to a location that the form submitter does not have access to. This is tricky because the users need to have contribute access to a list or library in order to create new items in it, but then if they can do that, they can access everything else in the library. There are many variations of this requirement, but in this post, I'll show how it can be done in a pretty simple way. </p>
<p>General overview: This concept can be done with either a list item or a library. (I'll just use the term &quot;list&quot; in this overview, just to get the general point across). Create a content type. Create two lists. Add the content type to both lists. List A &quot;New Items&quot; items can be created by anyone on the site, and List B &quot;Locked List&quot; is locked down so that only managers have permissions to access it. When new items are created in &quot;New Items&quot;, a SharePoint Designer workflow runs an impersonation step that copies that item over to the &quot;Locked List&quot;, and then deletes it from the original list. </p>
<p>This solution can be done out of the box with SharePoint 2010 (any version), and SharePoint Online with Office 365. </p>
<p>Since InfoPath is the most common thing that I use to create forms, and I get asked about this a lot, I'm going to use an InfoPath form in my example here. </p>
<ol><li>If you don't already have a document library on your site called &quot;Form Templates&quot;, go ahead and create it.<br /></li>
<li>When you publish your form to SharePoint, instead of publishing it directly to a form library, <strong>publish it as a content type</strong>. Note that if your form has been published as an administrative template, that's fine too, but just less common. Click <strong>Next</strong>.<br /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt1.png" alt="" /><br /></li>
<li>Choose Create a new Content Type, and click <strong>Next</strong>.<br /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt2.png" alt="" /><br /></li>
<li>Name your content type, with whatever the name of the form is. Mine is a Check Request. Click <strong>Next</strong>.<br /></li>
<li>On the screen where you specify a location for the form template, click <strong>Browse</strong>. Select <strong>the Form Templates</strong> library on your site, and give your form a name. I called mine CheckRequest.xsn. Click Next.<br /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt3.png" alt="" /><br /></li>
<li>Pick your fields that you want to be columns, and click <strong>Next</strong>. Click <strong>Publish</strong>. Click <strong>Close</strong>.<br /></li>
<li>Create two new form libraries. &quot;New Check Requests&quot; and &quot;Locked Check Requests&quot;.<br /></li>
<li>Go to the Library Settings screen of New Check Requests, and click <strong>Advanced Settings</strong>.<br /></li>
<li>Change <strong>Allow Management of Content Types</strong> to <strong>YES</strong>. Click <strong>OK</strong>.<br /></li>
<li>On the Form Library Settings screen, click <strong>Add from existing site content types</strong>. <br /></li>
<li>Click Check Request (or the name of your own content type from step 4) and click the <strong>Add</strong> button to move it to the right side. Click <strong>OK</strong>.<br /></li>
<li>Click the &quot;Form&quot; content type, and click <strong>Delete this content type</strong>.<br /></li>
<li>Go to the Library settings screen of <strong>Locked Check Requests</strong>. Repeat steps 8 through 12.<br /></li>
<li>In your InfoPath form, make sure that the <strong><em>Submit</em></strong> data connection is set up to submit the forms to the <strong>New Check Requests</strong> library.<br /></li>
<li>Open your site n SharePoint Designer, and create a new workflow based on the <strong>New Check Requests</strong> library.<br /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt4.png" alt="" /> </li>
<li>Name the workflow <strong>New Check Request</strong>, and click <strong>OK</strong>.<br /></li>
<li>Put your cursor underneath the Step 1 box, and click the <strong>Impersonation Step</strong> button in the ribbon, so your screen will look like this:<br /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt5.png" alt="" /><br /></li>
<li>Delete Step 1. Put your cursor inside of the Impersonation step and add the action called <strong>Copy List Item</strong>. Then add the action <strong>Delete Item</strong> below it.<br /></li>
<li>Set up the copy so that it copies from the current list over to the Locked Check Requests. Then make it delete the current item. Like this:<br /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt6.png" alt="" /><br /></li>
<li>Click Workflow Settings in the ribbon. Under start options, only put a check box next to <strong>Start workflow automatically when an item is created</strong>. <br /></li>
<li><strong>Publish</strong> the workflow. </li></ol>
<p> </p>
<p>Okay, it's done now. The key here is that the permissions will be set up as so: </p>
<ul><li>People who need to be able to fill out the form: Give them Contribute permissions on the New Check Requests Library. Do not give them permissions on the Locked Check Requests library at all. </li>
<li>People who need to be able to access the whole list of forms that have been submitted: If they need to be able to *<strong>modify the forms</strong> that have been submitted, give them Contribute access to the Locked Check Requests library. If you only want them to be able to see the submitted items and not change them, just give them read access. </li>
<li>The key here is that when the workflow copies items over from one list to another, it uses the login of the person who published the workflow. The best practice for workflows with impersonation steps is to <strong>publish the workflow as the SharePoint admin account</strong>, and not someone's personal account. You know, just in case. You wouldn't want someone to leave the company and then none of the workflows function anymore, right? </li></ul>
<p>Again, to reiterate…. This is just the most simple way to accomplish this goal. Of course, with impersonation steps in a workflow, you could change permission on each individual item in the list or library via workflow. It just gets kinda messy and hard to manage when you start delving into individual item permissions. The method in this blog post is simple because you the permissions are set at the library level. </p>
<p>Keep in mind that with some <strong>list type</strong>s in SharePoint, such as a custom list, there is a setting in <strong>advanced settings</strong> that you can use. Unfortunately, this setting just doesn't exist in libraries.<br /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt7.png" alt="" /> </p>
<p><strong>Note:</strong> <span style="color:red">If people will be modifying the submitted forms after they have been moved </span>to the Locked Check Requests Library, there is one more important consideration… the submit data connection. You'll have to create another submit data connection that submits to Locked Check Requests, because you probably don't want to have a bunch of duplicate files. There just needs to be a condition that looks to see if this is a form that has already been initially submitted. So, for example, you can create a field called &quot;FormStatus&quot;. When the submit button is clicked, add an action to set a field's value, where you set the FormStatus to submitted. That way, you can create a condition so that if a form has already been submitted initially, then it gets submitted to the Locked Check Requests. </p>
<p><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt8.png" alt="" /><img src="/blogs/laura/Lists/Photos/012612_0511_SubmitFormt9.png" alt="" /></p></div>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:be0cfa52-f6b8-41ec-bd01-ffcff5eca0e7" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Office+365" rel="tag">Office 365</a>,<a href="http://technorati.com/tags/Workflows" rel="tag">Workflows</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/security" rel="tag">security</a>,<a href="http://technorati.com/tags/forms" rel="tag">forms</a>,<a href="http://technorati.com/tags/SharePoint+Designer" rel="tag">SharePoint Designer</a></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=11&RootFolder=*">InfoPath</a></div>
<div><b>Published:</b> 1/26/2012 12:06 AM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; InfoPath</category>
      <pubDate>Thu, 26 Jan 2012 05:06:48 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=148</guid>
    </item>
    <item>
      <title>List Form Fields–Show/Hide For Certain People: Part 2</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=169</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassDE37E72D83354A8C8E01B28B040D3008"><p>In this second post of the three part blog series, I will show how you can show or hide fields according to whether or not the currently logged in person is part of a certain SharePoint group. </p>
<p>This is a three part blog: </p>
<ul><li><a href="/blogs/laura/Lists/Posts/Post.aspx?ID=168">Part 1: Using an ASPX form, with a SharePoint list of certain people who will be allowed to edit certain fields</a> </li>
<li>Part 2: Using an ASPX form, with a SharePoint <strong>group</strong> of people </li>
<li>Part 3: Using an InfoPath form, with a SharePoint list or group of people </li></ul>
<p>In this example, I have a task list, and there are only certain people who should be able to edit the task's due date.  Others should be able to see it but not edit it. This concept is very similar to the concept in the previous blog post, there are just a few things different in the steps. </p>
<p><span style="color:rgb(155,0,211)"><strong>This solution in part 2 can be done with any <em>enterprise</em> version of SharePoint: MOSS, SharePoint 2010, even SharePoint Online with Office 365 (enterprise plans).</strong></span> </p>
<ol><li>Create a custom list on your site, just to keep a single item in, with a very simple purpose that will be apparent as we go.  I'll call it &quot;Single Item&quot;.  Add one item to the list, just type anything in the Title field.<br /></li>
<li>Open SharePoint Designer.  In Lists and Libraries, open your task list.  In the <strong>Forms</strong> section on the right, click the <strong>New</strong> button.<br /></li>
<li>Call your new file EditCustom, pick <strong>Edit item form</strong>, and check the box to <strong>set as default</strong>.  Click <strong>OK</strong>.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie1.png" alt="" /> </li>
<li>Click the name of your new EditCustom.aspx form to open it. <br /></li>
<li>Click your cursor inside the form on the screen somewhere, so that the contextual ribbon will show the appropriate options.  Click the <strong>Parameters</strong> button on the <strong>Options</strong> tab.<br /></li>
<li>Click the <strong>New Parameter</strong> button.  Call it the FilterParam, select <strong>Query String</strong>, and type Filter as the query string variable.  Click <strong>OK</strong>.  (side note: all those other 3 variables were already there, I didn't add them)<br /><img src="/blogs/laura/Lists/Photos/031612_2011_ListFormFie1.png" alt="" /><br /></li>
<li>Select the Due Date field with your cursor:<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie3.png" alt="" /><br /></li>
<li>On the <strong>Options</strong> tab in the ribbon, click <strong>Conditional Formatting</strong>, and choose <strong>Show Content</strong>.<br /></li>
<li>On the <strong>Condition Criteria</strong> screen, click the <strong>Advanced</strong> button.<br /></li>
<li>Type $FilterParam!=''  then click <strong>OK</strong> and click <strong>OK</strong> again.  This means that if the task admin parameter is not blank, it will show the content you selected, which is the date editable field.<br /><img src="/blogs/laura/Lists/Photos/031612_2011_ListFormFie2.png" alt="" /><br /></li>
<li>With the cursor still in the Due Date right column, select the <strong>Due Date</strong> field in the <strong>Data Source Details</strong> pane on the right.  Click <strong>Insert Selected Fields</strong> As… choose <strong>Formatted</strong>… and choose <strong>DateTime</strong>.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie5.png" alt="" /><br /></li>
<li>Now you'll see a &quot;read only&quot; date on your form.  It's time to create a rule that will show this field when the logged in person is not a task admin.  <em>Note that with conditional formatting, you do have the ability to select an entire row if you want, and just show/hide the whole thing.<br /></em>Select the new date you just added to the form.  Click the <strong>Conditional Formatting</strong> button and choose Show Content.  Repeat steps 9 and 10, except this time don't put an exclamation mark (!) in the formula.<br /></li>
<li><strong>Save</strong> your changes.<br /></li>
<li>Click the <strong>F12</strong> button on the keyboard to open the page in the browser.  Be sure to flip back over to SharePoint Designer and CLOSE that aspx form.<br /></li>
<li>In the browser, click the <strong>Page</strong> tab.  Click the <strong>Edit Page</strong> button.<br /></li>
<li>Click the big white section on the page that says <strong>Add a web part</strong>.  Add the <strong>Single Item</strong> list that you created at step 1.<br /></li>
<li>For the <strong>Single Item</strong> web part, in the Toolpane, expand the <strong>Advanced</strong> section. In the <strong>Target Audiences</strong> box, type or select the name of the group of people that you <strong><em>DO</em></strong> want to be able to edit the task due date<strong>. Click OK.<br /></strong></li>
<li>Click the black arrow at the top right of the Task Admins web part, and choose <strong>Connections</strong>.  Choose <strong>Send Row of Data to</strong>, and choose your Task web part.<br /></li>
<li>Choose <strong>Get Parameters From</strong>, and click <strong>Configure</strong>.<br /><img src="/blogs/laura/Lists/Photos/031512_1800_ListFormFie7.png" alt="" /><br /></li>
<li>The Provider field name is &quot;Title&quot;, and the consumer is the <strong>FilterParam</strong>.  Click <strong>Finish</strong>.<br /><img src="/blogs/laura/Lists/Photos/031612_2011_ListFormFie3.png" alt="" /><br /></li>
<li>Now that the web parts are connected, and you're seeing the editable Due Date field if you're in the SharePoint group that you used in step 17, it's time to hide the Single Item web part.  In the web part toolpane for Single Item, expand the Layout section.  Check the box next to <strong>Hidden</strong>, and click <strong>OK</strong>.<br /></li>
<li>On the <strong>page</strong> tab at the top, click<strong> Stop Editing</strong>. </li></ol>
<p>Go ahead and test the solution.  Navigate to your Tasks list as you normally would, and Edit one of the tasks.  You'll notice that if you're in the list of task admins (or whatever SharePoint group you used at step 17), you'll see the Due Date as editable.  Then, take yourself out of that SharePoint group, and then when you edit a task, you won't be able to change the due date. </p>
<p>     </p>
<p>Technorati Tags: <a href="http://technorati.com/tags/SharePoint">SharePoint</a>,<a href="http://technorati.com/tags/data+view+web+parts">data view web parts</a>,<a href="http://technorati.com/tags/web+parts">web parts</a>,<a href="http://technorati.com/tags/parameters">parameters</a>,<a href="http://technorati.com/tags/forms">forms</a>,<a href="http://technorati.com/tags/fields">fields</a>,<a href="http://technorati.com/tags/list+form">list form</a> </p></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 3/16/2012 4:09 PM</div>
]]></description>
      <author>laura</author>
      <category>Office 365 Grid; Web Parts</category>
      <pubDate>Fri, 16 Mar 2012 19:48:45 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=169</guid>
    </item>
    <item>
      <title>Control Formatting of SharePoint Announcements</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=157</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass9E31BFDFE2364DAD822889563B272D76"><p class="ExternalClassA9DFBF8DFB4F4AFE8FB1CA4EC92AEE73">We like to give people the freedom to add content to SharePoint as they wish in most cases, and we like them to be able to add announcements on their site whenever they need to. Do you ever <strong><em>cringe</em></strong> when you look at a SharePoint site, because of some crazy font or ugly colors that were used in the announcements that are prominently displayed on the home page? In this post, I'll show you how to tightly control the formatting of the way announcements look on your site. </p>
 <p class="ExternalClassA9DFBF8DFB4F4AFE8FB1CA4EC92AEE73">This solution will work in either SharePoint 2007 or 2010, and will work on any version such as Foundation or Enterprise. This is also a good fit for SharePoint Online with Office 365. </p>
 <p class="ExternalClassA9DFBF8DFB4F4AFE8FB1CA4EC92AEE73">A quick little bit of background… I maintain the site for the Birmingham, Alabama SharePoint User Group, and every month I post an announcement about the next upcoming meeting. The announcement is formatted the same way each time, with the speaker's photo on the side and a certain font used for the name of their presentation, and a certain font used for the date, and a different one for the description. Each month when I was adding a new announcement, I decided it was taking too long to do all this formatting, even though it was the same every time, which is what prompted me to create a workflow. So, although my motivation was just efficiency, your motivation may be uniformity among announcements. </p>
 <p class="ExternalClassA9DFBF8DFB4F4AFE8FB1CA4EC92AEE73">In my SPUG announcements list, I have specific field names such as the speaker's name, the sponsor name, the speaker's job title, etc. For simplicity's sake, I'm going to keep the field names pretty generic for this post. </p>
 <p class="ExternalClassA9DFBF8DFB4F4AFE8FB1CA4EC92AEE73">Here are the steps: </p>
 <div class="ExternalClassA9DFBF8DFB4F4AFE8FB1CA4EC92AEE73"> <ol> <li>Create an &quot;Announcements&quot; list, if there isn't already one on your site.<br /><br /> </li>
<li>Create a list called &quot;Create Announcements&quot;, using the list template &quot;custom list&quot;.<br /><br /> </li>
<li>Create the following columns in the Create Announcements list:<br />Green Header - Single line of text<br />Brown Header - Single line of text<br />Body - Multiple lines of text - Enhanced rich text<br />Photo URL - Hyperlink<br />Expiration - Date/Time<br />Then, I renamed &quot;Title&quot; to &quot;Black Title&quot;<br /><br /> </li>
<li>In the Announcements list, a template must be created. Create a new announcement. Make up a title, and then put the cursor in the body of the announcement. Since I want to show the speaker's photo to the left of the session description, I create a table. On the Insert tab, insert a table that's got one row and two columns.<br /><br /> </li>
<li>In the left cell of the table, type &quot;Picture&quot;, as a placeholder. In the right cell, type the following:<br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm1.png" alt="" /><br /><br /> </li>
<li>Now it's time to apply the colors. Select the text, and apply your desired colors to each line, as so:<br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm2.png" alt="" /><br /><br /> </li>
<li>Click <strong>Save</strong>.<br /> </li>
<li>Open that same announcement back up, click to edit it, and put the cursor in the Body field. Open the HTML source code, like this:<br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm3.png" alt="" /><br /><br /> </li>
<li>Copy the HTML code to the clipboard. Open SharePoint Designer.<br /><br /> </li>
<li>Create a new workflow based on the Create Announcements list. Name it &quot;New Announcement&quot;.<br /><br /> </li>
<li>Add an action to <strong>set a workflow variable</strong>. (In SharePoint 2007, the action is called Store Dynamic String) Call the variable BodyTextVar, and it is a string variable.<br /><br /> </li>
<li>Click the blue word <span style="color:rgb(79, 129, 189)"><strong>Value</strong></span>. Click the little ellipsis next to it (the button with 3 dots). Paste the contents of the clipboard, which is the HTML source code. Mine looks like this<br /><span style="font-family:courier new">&lt;div class=&quot;ExternalClassF2152D91E5604C86AA56CB2DF7047264&quot;&gt;&lt;table width=&quot;100%&quot; class=&quot;ms-rteTable-default&quot; border=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;</span><span style="font-family:cambria math">​</span><span style="font-family:courier new">Picture&lt;/td&gt;&lt;td&gt;&lt;p style=&quot;color: #000; font-size: 18pt&quot;&gt;&lt;strong&gt;</span><span style="font-family:cambria math">​</span><span style="font-family:courier new">Black Title&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;color: green; font-size: 12pt&quot;&gt;Green Header&lt;/p&gt;&lt;p style=&quot;color: #8f6c2e; font-size: 10pt&quot;&gt;&lt;strong&gt;Brown Header&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Body&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;</span><br /><br /> </li>
<li>In the spot of the code where you see the word &quot;Picture&quot;, that needs to be changed to HTML code for a picture. The Photo URL field will be used. Basically, each placeholder in the code will be replaced with the name of the actual field from the list, like this:<br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm4.png" alt="" /><br /><br /> </li>
<li>Note that when you insert the <strong>Body</strong> field, be sure and change Return field as: <strong>Plain Text</strong>.<br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm5.png" alt="" /><br /><br /> </li>
<li>When you insert the <strong>Photo URL</strong> field, be sure to select Return field as: <strong>URL</strong><br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm6.png" alt="" /><br /> </li>
<li>I used the &lt;<strong>Add or Change Lookup</strong>&gt; button in the code, to insert where the fields need to go. For example, I replaced Green Header with the actual field called Green Header. Click <strong>OK</strong>.<br /><br /> </li>
<li>In the workflow, add the action <strong>Create List Item</strong>.<br /><br /> </li>
<li>Click the blue words <span style="color:rgb(79, 129, 189)"><strong>This List</strong></span>, and pick <strong>Announcements</strong>.<br /><br /> </li>
<li>Set the Title field to the current list's <strong>Black Title</strong>, and click the <strong>Add</strong> button. Add the body field, like this, and click <strong>OK</strong> twice.<br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm7.png" alt="" /><br /><br /> </li>
<li>One more field. Click the <strong>Add</strong> button. Choose &quot;Expires&quot; and match it to the current list's &quot;Expiration&quot;. The Create new list item action will then look like this. Click OK.<br /><img src="/blogs/laura/Lists/Photos/020812_0458_ControlForm8.png" alt="" /><br /> </li>
<li><strong>Publish</strong> the workflow. Note that since we didn't change the workflow initiation (Start) settings, it is only set up to be triggered manually, which is fine for testing.<br /><br /> </li>
<li>Before you create an item in the Create Announcements list, be sure to get the URL of a photo that's in a library in SharePoint, to paste into the Photo URL field. Create a new item in the Create Announcements list, and fill in all the fields. Run the workflow.<br /><br /> </li>
<li>You'll notice that your new announcement gets created. Lovely! Any tweaking that needs to be done regarding formatting and alignment needs to be done in the HTML code that's in the first action &quot;set variable&quot; in the workflow.<br /><br /> </li>
<li>Another enhancement: You may want users to be able to create items in Create Announcements but not create or edit items in the actual announcements list. This can be done. In the workflow, insert an Impersonation Step, and put those 2 steps inside of it. That way, you can take away the users permissions to contribute to the announcements list, and the workflow will still be able to create items in it, because it runs with the credentials of you, the person who published the workflow.<br /><br /> </li>
<li>The web part view: In the Announcements list, create a new view. Make it a Standard view, and call it Web Part. Only check the box next to the <strong>Body</strong> column. Set the filter so that <strong>Expires</strong> is greater than or equal to [Today]. Uncheck the box next to Tabular View.<br /><br /> </li>
<li>On the home page of your site. Go to the web part toolpane of the Announcements web part. Change the view to this new <strong>Web Part </strong>view that you just created. Click <strong>OK</strong>. What is this for? Now, your announcements will be fully displayed on the home page without being cut off, and since we inserted the title field into the body of the announcement, only the body field needs to be shown.</li></ol></div>
 <p> </p>
 <div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5693d1d9-3b0b-4a6c-96b0-ae07eb28162d" style="padding:0px;margin:0px;display:inline;float:none">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/SharePoint">SharePoint</a>,<a rel="tag" href="http://technorati.com/tags/announcements">announcements</a>,<a rel="tag" href="http://technorati.com/tags/publishing">publishing</a>,<a rel="tag" href="http://technorati.com/tags/workflows">workflows</a>,<a rel="tag" href="http://technorati.com/tags/Foundation">Foundation</a>,<a rel="tag" href="http://technorati.com/tags/web+parts">web parts</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=14&RootFolder=*">Office 365 Grid</a>; <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*">workflows</a></div>
<div><b>Published:</b> 2/7/2012 11:58 PM</div>
]]></description>
      <author>Laura Rogers</author>
      <category>Office 365 Grid; workflows</category>
      <pubDate>Wed, 08 Feb 2012 04:58:31 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=157</guid>
    </item>
    <item>
      <title>The International SharePoint Conference Next Month</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=171</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass046D267BD20144278817619ED135D379"><p>Only one more month until the big International SharePoint Conference in London!  This is going to be a great one, with a format that I’m very excited about.  The conference is organized into tracks.  These are not just tracks like “IT Pro” and “Developer”.  There are actual cohesive sessions within each track, that go together in succession.  </p> <p align="center"><a href="http://www.internationalsharepointconference.com" target="_blank"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;border-top:0px;border-right:0px;padding-top:0px" border="0" src="/blogs/laura/Lists/Photos/email_footer_3b.png" /></a></p> <p> </p> <p>The track I’m going to be in is the “Information Worker” track, and the solution we’re building is called “<strong>Solution 1 – Building the Travel Request Solution”.  </strong>This track starts on Monday morning at 9:45 with session header of IW401. Our 4 sessions are then continuous one after the other until 3:45.  My cohorts in this travel request solution are <a href="http://twitter.com/jennifermason" target="_blank">Jennifer Mason</a>, <a href="http://www.twitter.com/dshadravan" target="_blank">Darvish Shadravan</a>, and <a href="http://www.twitter.com/mattmoo2" target="_blank">Matthew Hughes</a>.  This is going to be so cool, because we won’t be constrained to tell a whole story in a single one hour session.  We will use the four sessions to build one continuous solution!</p> <p>The Travel Request Solution:</p> <h5>Jennifer and Laura: Part 1: Requirements and Design</h5> <p>In this session, we will start at the beginning of the travel solution, with the requirements gathering.  Then, we will start creating the form in InfoPath, with a lot of introduction to InfoPath and best practices in creating a form.</p> <h5>Laura and Matt: Part 2: Travel Request Workflow and Approvals</h5> <p>In part 2, Matt and I will take you through the approval workflow involved in this travel request.  We will talk through every step of the workflow, and talk about our own tips and tricks.  We will even delve into the task process designer.</p> <h5>Matt and Jennifer: Part 3: Planning and building the user interface</h5> <p>One of the most important aspects of building a solution for users is spending time in the design of the solution to ensure it is clear and easy for users to understand and work with. When building out of the box solutions there are many tools that can help in this process. In this session we will discuss list view web parts, DVWPs, InfoPath Form web parts and how they can be used to build a dynamic user experience for your solution users. </p> <h5>Laura and Darvish: Part 4: Reporting and Business Intelligence on travel requests</h5> <p>Darvish and I will delve into the reporting aspects in this session.  Once the travel requests have been submitted into this system, there needs to be reporting.  We will talk about the different ways that reporting can be accomplished, and will build out a dashboard for this system.</p> <p> </p> <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:4accb425-3d10-44de-82b6-bd148a7a6977" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/London" rel="tag">London</a>,<a href="http://technorati.com/tags/ISCLONDON" rel="tag">ISCLONDON</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 3/21/2012 10:32 PM</div>
]]></description>
      <author>laura</author>
      <category>conference</category>
      <pubDate>Thu, 22 Mar 2012 02:11:27 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=171</guid>
    </item>
    <item>
      <title>SharePoint Saturday New Orleans This Week!</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=170</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassA52B27DD194B43BB9632DEBA6A897921"><p><a href="http://sharepointsaturday.org/neworleans" target="_blank"><img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;border-top:0px;border-right:0px;padding-top:0px" border="0" src="http://sharepointsaturday.org/neworleans/SiteImages/2012_SPS_Logo_300.jpg" /></a></p> <p>Can’t wait!  SharePoint Saturday comes to my home town again!!  This Saturday, March 24th, is the third annual SharePoint Saturday in New Orleans.  I grew up down there, mostly in a small town on the west bank of New Orleans, called Luling.  Then, when I was about 13, my family moved to Baton Rouge, which is where my parents still live.  New Orleans is my favorite city, and I love sharing it with my SharePoint friends, especially those who have never been there.  There is a GREAT lineup of speakers for the event!</p> <p>My session will be:</p> <h4>Advanced InfoPath: Working with User Profiles &amp; the People Picker</h4> <p>When using the people picker control in an InfoPath form hosted in a SharePoint 2010 site, there are several advanced methods that can be implemented in order to use profile information to pre-populate fields. When your company’s user profile information is accurate, you can do some amazing things with that data. In this fast-paced session, Laura Rogers will go over several demonstrations of common scenarios in which information about people can be used in forms. This can be accomplished in not only the enterprise version of SharePoint, but in SharePoint Foundation. </p> <p>It’s going to be a lot of fun!</p> <p>My co-worker at Rackspace, <a href="http://www.techgrowingpains.com/" target="_blank">Javier Barrera</a> will also be presenting there.  His session is for SharePoint admins: SharePoint Search: A Look Behind the Curtain for System Administrators</p> <p>Rackspace will also be a sponsor at the event, so look for us hanging out in our booth!</p> <p> </p> <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e658153f-d60c-4f99-8bf4-dad5a9be4f16" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/New+Orleans" rel="tag">New Orleans</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/User+profiles" rel="tag">User profiles</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 3/19/2012 9:53 AM</div>
]]></description>
      <author>laura</author>
      <category>conference</category>
      <pubDate>Mon, 19 Mar 2012 13:32:22 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=170</guid>
    </item>
    <item>
      <title>Query String URLs are like, SO Useful! (Part 1 of 4)</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=69</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassB7562268BAB241A5A4764A0DEB756BD9"><p>In this blog post, I’ll not only explain what Query String URL Filter web parts are, but what the whole concept is behind query strings, and some ways to make use of them in SharePoint.  First of all, what <em>is</em> a query string?  Basically, it’s a part of a URL that contains a filter, to send filter information to the page that you’re viewing.  These are used all over the place on the web, not just in SharePoint.  The basic syntax consists of a question mark followed by a word, and the “equals” something.  So, if you are looking at a web page that consists of information pertaining to the marketing department, your URL could end with this query string:</p>
<p>?Department=Marketing</p>
<p><strong>In SharePoint, if you have MOSS Enterprise</strong>, there’s an out-of-box web part called the Query String URL Filter.  But, as I will show you later, you can still do query string filtering if you don’t have MOSS Enterprise.</p>
<p>So begins the love story between me and query strings…</p>
<p>The first time I used them was when I created a policy management system in SharePoint.  Picture this, a library of policies, with a Department column in the library, and each policy was associated with a department name.  To create a list of policies for each department, you could create multiple views on the library, with each view just being filtered by the Department column being equal to ___ (each department name).  Well, I didn’t want to do this, because I <strong><em>didn’t want to have to go back and modify 30 different views</em></strong> if the business owner decided that a column needed to be added or something.  So, instead, I did this:<img width="232" height="425" title="CropperCapture[110]" align="right" alt="CropperCapture[110]" src="/blogs/laura/Lists/Posts/Attachments/69/CropperCapture110_796923FE.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;margin-left:0px;border-top:0px;margin-right:0px;border-right:0px" /></p>
<ol><li>Go to the default view URL:<br />http://contoso/policies/PolicyList/Forms/<strong>AllItems.aspx <br /></strong>Click <strong>Site Actions</strong> and <strong>Edit Page</strong>.<br /></li>
<li>Insert the Query String URL Filter web part on this AllItems.aspx page, above the document library.<br /></li>
<li>Go into the filter web part’s properties, shown in this screenshot.  <br /></li>
<li>In the <strong>Query String Parameter Name</strong>, put a word that describes the field you’ll be filtering by.  The <strong>Filter Name</strong> can optionally be changed, but it doesn’t really matter.<br /></li>
<li>Click <strong>OK</strong> in the web part tool pane.<br /></li>
<li>Connect the Query String URL Filter web part to the list or library web part that you’d like to filter.  In this case, it’s a list  of company policies, in which I’m going to create a filter for policies related to each department name.  At the top right corner of the filter web part, click the Edit button and choose <strong>Connections –&gt; Send Filter Values To –&gt;</strong> and choose the name of the library, in this case it is the Policy List, as shown in this screenshot:<br /><br /><img width="591" height="248" title="connect" alt="connect" src="/blogs/laura/Lists/Posts/Attachments/69/connect_c1abc239406443f384a9df78509aa8cb_796923FE.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /><br /></li>
<li>On the Configure Connection screen, pick the Consumer field.  The consumer web part is the one you’re sending the filter to.  The Policy List here.  I’m filtering by the Policy Department, so that’s what I pick in the drop-down box.<br /><img width="446" height="188" title="CropperCapture[115]" alt="CropperCapture[115]" src="/blogs/laura/Lists/Posts/Attachments/69/CropperCapture115_796923FE.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> <br /><em>Note that whatever field you filter by needs to be displayed as a column in the web part in order for it to be listed in the drop-down box on this screen.  If you’d like to filter by a column and NOT display it in the web part, that consumer web part needs to be a data view web part.</em><br /></li>
<li>Click <strong>Finish</strong> and <strong>Exit Edit Mode</strong>.<br /></li>
<li>Manually create a <em>link </em>to each department’s list of policies.  Put these in a links list or in the Quick Launch or wherever.  Here’s an example of what the filtered list of IT policies looks like:<br /><img width="608" height="336" title="CropperCapture[116]" alt="CropperCapture[116]" src="/blogs/laura/Lists/Posts/Attachments/69/CropperCapture116_796923FE.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /></li></ol>
<p>Notice a couple of things.  See that the Policy Department field shows that little filter icon, and it shows only the IT policies.  Also notice the URL.  It is:</p>
<p>http://moss:16071/policies/PolicyList/Forms/AllItems.aspx?department=it</p>
<p><em>Note: If you insert this web part on your default view, just remember that when new views are created, they will be based on this default view (by default) and they will also include this extra web part, which you may need to remove from new views.</em></p>
<p>I’ve demonstrated a very basic way that the Query String URL filter can be used.  Once you understand the basic functionality, there are many more things you can do with it.  Part 2 of this 4 part series will cover a more advanced, elaborate solution.</p>
<ul><li><div class="MsoNormal" style="margin:0in 0in 10pt"><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=78"><font color="#0000ff" face="Calibri" size="3">Query String URLs are Magical (Part 2 of 4)</font><span><font size="3"><font color="#0000ff"><font face="Calibri"> </font></font></font></span></a></div></li>
<li><div class="MsoNormal" style="margin:0in 0in 10pt"><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=81"><font color="#0000ff" face="Calibri" size="3">The Query String URL &amp; Data View Web Parts (Part 3 of 4)</font><span><font size="3"><font color="#0000ff"><font face="Calibri"> </font></font></font></span></a></div></li>
<li><div class="MsoNormal" style="margin:0in 0in 10pt"><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=82"><font color="#0000ff" face="Calibri" size="3">SharePoint 2010 Related Lists (Part 4 of 4)</font><span><font size="3"><font color="#0000ff"><font face="Calibri"> </font></font></font></span></a></div></li></ul>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:08c5867d-d8ea-4437-8507-60d9a177ef27" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/web+parts" rel="tag">web parts</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=4&RootFolder=*">Web Parts</a></div>
<div><b>Published:</b> 5/20/2010 6:54 AM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch1910_fd3153d8c4ba48dca8450e2f0bf03bc7_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch1910_fd3153d8c4ba48dca8450e2f0bf03bc7_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch192_11008de8286c492cb26095fc54f0339f_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch192_11008de8286c492cb26095fc54f0339f_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch193_952fc1fcce7f4925b604618c37b87b32_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch193_952fc1fcce7f4925b604618c37b87b32_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch194_8fa5352e8e9642bd8cd022bf8c9f9222_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch194_8fa5352e8e9642bd8cd022bf8c9f9222_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch195_0937555647f64bbb9c26a0caeca719cb_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch195_0937555647f64bbb9c26a0caeca719cb_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch196_a46241f182824660afe266b872ef41af_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch196_a46241f182824660afe266b872ef41af_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch197_a93c987de3684b05918cfcf00e68b5f4_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch197_a93c987de3684b05918cfcf00e68b5f4_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch198_490e7054d83e4b0a9227e4829aaec1e7_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch198_490e7054d83e4b0a9227e4829aaec1e7_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch199_56decf30f0fc46b78a195b2692a46f8e_3B345B64.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/ch199_56decf30f0fc46b78a195b2692a46f8e_3B345B64.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/connect_c1abc239406443f384a9df78509aa8cb_796923FE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/connect_c1abc239406443f384a9df78509aa8cb_796923FE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/CropperCapture110_796923FE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/CropperCapture110_796923FE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/CropperCapture115_796923FE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/CropperCapture115_796923FE.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/CropperCapture116_796923FE.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/69/CropperCapture116_796923FE.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>Web Parts</category>
      <pubDate>Thu, 20 May 2010 10:54:55 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=69</guid>
    </item>
    <item>
      <title>My Top 10 Popular SharePoint Posts in 2011</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=143</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass6E89DD5B9429463DAC5931FBA4E4F163"><p> </p>
<p>To wrap up 2011, here are the most popular posts on my blog site.  These posts were not necessarily written this year, but they are the ones that received the most comments in 2011.  With a total of 865 comments this year, here are the top 10 blog posts:</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=76">Display a Sub-Site List on a Top Level Site</a> (56)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=64">Workflow: Reminder Before Due Date – MOSS vs. WSS</a> (52)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=90">Web Part: Sites that I have access to</a> (46)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=77">The Text Filter Web Part – Without Having To Filter Exact Text</a> (39)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=107">Click to Copy List Item to New</a> (33)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=40">List of SharePoint 2010 Web Parts</a> (31)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=3">Displaying SharePoint Fields by Permission Level</a> (29)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=66">SharePoint 2010 – Where’d “My Links” Go?</a> (22)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=92">SharePoint 2010: The “What’s New” Web Part</a> (22)</p>
<p><a href="/blogs/laura/Lists/Posts/ViewPost.aspx?ID=121">InfoPath 2010 and Repeating Tables</a> (22)</p>
<p> </p>
<p>Everyone have a great new year!  I’m looking forward to 2012!</p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:bb1b53bc-3b27-4afc-b6eb-02ad764c98b7" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/Workflows" rel="tag">Workflows</a>,<a href="http://technorati.com/tags/web+parts" rel="tag">web parts</a>,<a href="http://technorati.com/tags/InfoPath" rel="tag">InfoPath</a>,<a href="http://technorati.com/tags/data+view+web+parts" rel="tag">data view web parts</a>,<a href="http://technorati.com/tags/My+Links" rel="tag">My Links</a></div></div>
</div>
<div><b>Published:</b> 12/28/2011 3:47 PM</div>
]]></description>
      <author>Laura Rogers</author>
      <pubDate>Wed, 28 Dec 2011 20:47:54 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=143</guid>
    </item>
    <item>
      <title>Big Rackspace News (and a party)!</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=158</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass95729E11A5194AA89E510D9DE18014A0"><p><span style="font-family:Times New Roman;font-size:12pt">This morning I'm beyond thrilled to announce that Rackspace has purchased SharePoint911. Now all of us are Rackspace employees, AKA &quot;Rackers&quot;. Back in January, our team took a trip out to San Antonio to the RackSpace headquarters, to meet our future colleagues and see what the company is all about. 
</span></p><p><img src="/blogs/laura/Lists/Photos/021612_1508_BigRackspac1.jpg" alt="" /><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p><span style="font-family:Times New Roman;font-size:12pt">Rackspace and SharePoint911 are a great fit with each other when it comes to corporate culture and personalities, and we're eager to work with them to share our expertise and build the SharePoint services in the company. 
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">We've put together a list of <a href="/AboutSP911/Pages/About-Rackspace.aspx">frequently asked questions</a> on our website (which has a new look, by the way!): 
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">Here are some of the links to the big (official) news announcements today: 
</span></p><ul><li>Official Rackspace blog: <a href="http://www.rackspace.com/blog/welcome-sharepoint911-to-the-rackspace-family/">Welcome SharePoint911 to the Rackspace Family!</a>
		</li><li>Wall Street Journal: <a href="http://blogs.wsj.com/venturecapital/2012/02/16/rackspace-buys-up-sharepoint911-to-gird-for-cloud-fight/">Rackspace Buys Up SharePoint911 To Gird For Cloud Fight</a>
		</li><li>Marketwatch: <a href="http://www.marketwatch.com/story/rackspace-acquires-sharepoint911-to-provide-industry-leading-sharepoint-expertise-2012-02-16">Rackspace Acquires SharePoint911 to Provide Industry Leading SharePoint Expertise</a>
		</li></ul><h3>SPTechCon… 
</h3><p><span style="font-family:Times New Roman;font-size:12pt">For those of you who will be attending the <a href="http://www.sptechcon.com">SharePoint Technology Conference</a> in February, we have a treat for you. We will be hosting a <strong>party</strong> to celebrate this news! Here are the details: 
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">SPint – Hosted by Rackspace and newly acquired SharePoint911<br /><strong>When</strong>: Monday, Feb 27th 7:30-10:00p<br /><strong>Where</strong>: Johnny Foley's, 243 O'Farrell St (half block from Hilton)<br /><strong>What</strong>: Enjoy eats and drinks with Rackspace and help us welcome SharePoint911 to the Rackspace family! 
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">See you there!! 
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">Oh, and here's a fun link. It gives a glimpse of what it's like to work at the Rackspace headquarters: 
</span></p><p><a href="http://www.youtube.com/watch?v=TPYYfaOdTeg"><span style="font-family:Times New Roman;font-size:12pt">Rackspace - A day in the life</span></a><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p> 
 </p><p><span style="font-family:Times New Roman;font-size:12pt"> </span> </p></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 2/16/2012 10:08 AM</div>
]]></description>
      <author>laura</author>
      <category>conference</category>
      <pubDate>Thu, 16 Feb 2012 14:49:56 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=158</guid>
    </item>
    <item>
      <title>SharePoint 2010 – Dynamic Calculations in a List Form</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=72</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassF2E500BEEA0E4195A7E1E45506932C3C"><p>In SharePoint lists that contain calculated columns, you may have noticed that when a new form is being created or edited, the results of calculated columns do not display in the form itself, so the user does cannot see the result of the calculation until after they have saved that item.  The calculated field can then be seen as a column in the list, or can be seen when viewing the display form of the item.  </p>
<p>Now in SharePoint 2010 and InfoPath 2010, there is the ability to customize any SharePoint list with InfoPath. Because of this capability, you can dynamically display the calculated results in the form <i>AS</i> the user is filling it out!  </p>
<p>In this example, there is an “Expenses” list with a sales figure for each type of expense for a trip. There is a calculated column, called Total, which shows a sum of all expenses for the trip. </p>
<p>Here’s how: </p>
<p>1. This is the “<strong>Total</strong>” calculated column in the list:<br /><img width="327" height="186" title="clip_image002" alt="clip_image002" src="/blogs/laura/Lists/Posts/Attachments/72/clip_image002_ee605a079e3a494fab76c6389f898947_41D633D7.gif" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p>
<p>2. Create items in the list, and notice the calculated field in the display form:<br /> <img width="508" height="290" title="ch7[1]" alt="ch7[1]" src="/blogs/laura/Lists/Posts/Attachments/72/ch71_41D633D7.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p>
<p>3. In the SharePoint list, on the <strong>List</strong> tab of the ribbon, click the <strong>Customize Form</strong> button, which will instantly convert the SharePoint list form to an InfoPath form. Click the <strong>Quick Publish</strong> button in the toolbar at the top left of InfoPath. <img width="72" height="30" title="ch7[2]" alt="ch7[2]" src="/blogs/laura/Lists/Posts/Attachments/72/ch72_41D633D7.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p>
<p>4. Notice that now when viewing the form, the calculated field does not display at all:<br /> <img width="373" height="346" title="ch7[5]" alt="ch7[5]" src="/blogs/laura/Lists/Posts/Attachments/72/ch75_41D633D7.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p>
<p>5. Click the “<strong>Customize Form</strong>” button again. Add a new row to the bottom of the table in the InfoPath Form. From the “Insert a field” panel on the right, insert the “Total” field into the table. Right-click this field, and choose “Calculated Value Properties”. Change the format to decimal and currency and click <strong>OK</strong>. </p>
<p>6. The trick now is that we want the formula to be dynamically calculated as the currency fields are being filled out. Double click to select the Total field, and click the Default Value button in the ribbon in InfoPath:<br /> <img width="412" height="331" title="ch7[7]" alt="ch7[7]" src="/blogs/laura/Lists/Posts/Attachments/72/ch77_41D633D7.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p>
<p>7. On the Field or Group properties box, click the Function (Fx) button next to the Default Value box. </p>
<p>8. Use the <strong>Insert Field or Group</strong> button to insert the fields to re-create the same formula that exists in the calculated column, as so:<br /><img width="185" height="101" title="clip_image012" alt="clip_image012" src="/blogs/laura/Lists/Posts/Attachments/72/clip_image012_62f126ebff8f45f680863d86b236a384_41D633D7.gif" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p>
<p>9. Click OK, leave the box checked that says “Refresh value when formula is recalculated”, and click OK again. Quick Publish the form again. </p>
<p>10. Now, when viewing the form in the browser, you’ll see the total field displayed, AND when filling out a new item, the total will be calculated AS the form is being filled out, which will look something like this:<br /> <img width="319" height="374" title="ch7[8]" alt="ch7[8]" src="/blogs/laura/Lists/Posts/Attachments/72/ch78_41D633D7.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p>
<p>Now you’ll not only be able to work-around the bug in which calculated columns aren’t included in InfoPath forms of SharePoint 2010 lists, you’ll be able to make the calculations dynamic in the form. </p>
<p>  </p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:74f3100d-aedd-4e06-9ea0-048a6e3534b3" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/SharePoint+2010" rel="tag">SharePoint 2010</a>,<a href="http://technorati.com/tags/InfoPath+2010" rel="tag">InfoPath 2010</a>,<a href="http://technorati.com/tags/forms" rel="tag">forms</a>,<a href="http://technorati.com/tags/calculations" rel="tag">calculations</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=8&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=8&RootFolder=*">MS Office</a></div>
<div><b>Published:</b> 6/3/2010 10:53 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch71_41D633D7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch71_41D633D7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch72_41D633D7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch72_41D633D7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch75_41D633D7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch75_41D633D7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch77_41D633D7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch77_41D633D7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch78_41D633D7.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/ch78_41D633D7.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/clip_image002_ee605a079e3a494fab76c6389f898947_41D633D7.gif">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/clip_image002_ee605a079e3a494fab76c6389f898947_41D633D7.gif</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/clip_image012_62f126ebff8f45f680863d86b236a384_41D633D7.gif">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/clip_image012_62f126ebff8f45f680863d86b236a384_41D633D7.gif</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture67_18BC541A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture67_18BC541A.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture68_18BC541A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture68_18BC541A.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture73_18BC541A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture73_18BC541A.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture75_18BC541A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture75_18BC541A.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture76_18BC541A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture76_18BC541A.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture82_18BC541A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture82_18BC541A.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture83_18BC541A.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/72/CropperCapture83_18BC541A.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>MS Office</category>
      <pubDate>Fri, 04 Jun 2010 02:53:04 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=72</guid>
    </item>
    <item>
      <title>Display User Data Fields for a SharePoint List</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=149</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass16F911AFC8764FA8BC10671C9F463E7E"> <p>You have all of this data in SharePoint, and you have all of this information about the site users, such as their department names, phone numbers, and much more. Instead of asking for site users to fill out all of their pertinent information every time they fill out a list item, form or survey in SharePoint, wouldn't it be nice to just use the information that is already there? </p> <p>A while back, I wrote an article on how to report off of this data using Microsoft Access <a href="https://www.nothingbutsharepoint.com/sites/eusp/Pages/sharepoint-find-out-about-site-users-within-microsoft-access-screencast.aspx">SharePoint: Find out About Site Users within Microsoft Access (Screencast)</a>. This method is flawed because once you create the report, there isn't a way to display it back in SharePoint… it's only in Access. I also wrote this post <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=99">Pass Default Value From a Web Part Page to a New Item</a>, which works okay, but you're really copying all that user data into some fields, which is really inefficient. </p> <p>This week, I discovered a much better way than those other two, and it entails creating a SQL Server Reporting Services (SSRS) report. This solution can be used with all versions of SharePoint (not just enterprise). Before getting started, the prerequisites are that SSRS is already installed on a SharePoint web front end server, and it's all set up and integrated with SharePoint. Also, make sure that you are using SQL 2008 <strong>R2</strong>, or steps 19 and 20 won't work. You'll need the <strong>Report Builder Report</strong> and <strong>the Report Data Source</strong> content types added to a document library (I called my library &quot;Reports&quot;). For more information about SSRS, I did a presentation recently: <a href="/blogs/laura/Lists/Posts/Post.aspx?ID=147">Easy Reporting off of SharePoint Data</a>. </p> <p>In this example, I'm going to use a regular SharePoint tasks list, and the goal is to display the list of tasks, showing the &quot;Assigned To&quot; column, and also showing more information about each user that has a task assigned to them. <em>(Note that part of these instructions are easier if you are working at the root level of the site collection, as opposed to a sub-site.)</em><br />Here's the final result. Those last two columns come directly from the SharePoint user information list:<br /><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser1.png" /> </p> <ol> <li>In your Reports library, click the <strong>New</strong> button and choose <strong>Report Data Source</strong>.<br /> <li>Name it <strong>TeamSite</strong>, data source is <strong>Microsoft SharePoint List</strong>,and use your own SharePoint site URL as the connection string. Credentials has to be <strong>Windows authentication</strong>. Click OK.<br /><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser2.png" /><br /> <li>In the library, click the New button again, and choose <strong>Report Builder Report</strong>. (If you've never used it before, you will be prompted to install it)<br />Note: if you get the error &quot;To use Report Builder, you must install .Net Framework 3.5 on this computer&quot;, here is the <a href="http://chanmingman.wordpress.com/2011/06/25/to-use-report-builder-you-must-install-net-framework-3-5-on-this-computer/">resolution</a>.<br /> <li>In the wizard, choose <strong>New Report</strong>. Click <strong>Table or Matrix Wizard</strong>.<br /><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser3.png" /><br /> <li>Choose <strong>Create a Dataset</strong>, and click <strong>Next</strong>.<br /> <li>Choose to browse to find a data source, and navigate to the current library, which is where you already created the TeamSite data source, which is the one you want to select. Click <strong>Next</strong>.<br /> <li>Check the box next to your <strong>Tasks</strong> list on the left. (Note to make sure that there are some items in your list. It just helps to have test data.) Click <strong>Next</strong>.<br /> <li>Add a few fields to the Values section, by dragging them over. Click <strong>Next</strong>.<br /><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser4.png" /><br /> <li>Since I didn't select any grouping on the Arrange Fields screen, on the Choose the Layout screen, all the options are grayed out. Click <strong>Next</strong>.<br /> <li>Pick a color preference on the Choose a Style screen, and click <strong>Finish</strong>.<br /> <li>If you'd like to preview your creation so far, click the <strong>Run</strong> button at the top, then click <strong>Design</strong> to close the preview. Go ahead and click the Save button at the top left, and drill down to your Reports library. Save this as TaskReport.rdl.<br /> <li>So far, we haven't done anything extraordinary, that's just a pretty report. Now it's time to add those user information columns that I promised you. Right click on <strong>Datasets</strong> on the left, and choose <strong>Add Dataset</strong>.<br /> <li>Call this new dataset <strong>UserInfo</strong>, and choose to use a dataset embedded in the report. Choose your <strong>TeamSite</strong> data source from the drop-down.<br /><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser5.png" /><br /> <li>Click the <strong>Query Designer</strong> Button.<br /> <li>Check the box next to the <strong>User Information List</strong> on the left, and click <strong>OK</strong>.<br />(Note that only if you do NOT see the user information list, this is because it only exists at the root level of the site collection. You'll have to create a separate data source, call it &quot;TopSite&quot;. Repeat steps 1 and 2, using the URL of the root site in your site collection. In the screenshot above, you'll be selecting the other, &quot;TopSite&quot;.)<br /> <li>On the Dataset Properties screen, click <strong>OK</strong>.<br /> <li>A couple of columns can now be added. Again, the goal is to show extra information about each of the &quot;Assigned To&quot; people. Click to select the last column in the report, and choose <strong>Insert Column</strong> -&gt; <strong>Right</strong>. Do this twice.<br /><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser6.png" /><br /> <li>In the first new empty cell (not header), right click and choose <strong>Expression</strong>.<br /><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser7.png" /><br /> <li>Paste this formula, click <strong>OK</strong>, and I'll explain it all in a minute.<br />=Lookup(Fields!Assigned_To.Value,Fields!Name.Value,Fields!Department.Value, &quot;UserInfo&quot;)<br /> <li>Right click the next empty cell next to that one, pick expression again, and this one will have the job title:<br />=Lookup(Fields!Assigned_To.Value,Fields!Name.Value,Fields!Title.Value, &quot;UserInfo&quot;)<br /> <li>In the column header cells, type titles for the new columns, &quot;Assignee Department&quot;, and &quot;Assignee Title&quot;. <br /> <li><strong>Save</strong>. Close Report Builder. Now in your reports library, you can click to open this report (RDL file) and see how lovely it is. </li></ol> <p>Here's how that lookup formula really works… </p> <p><img alt="" src="/blogs/laura/Lists/Photos/020212_0430_DisplayUser8.png" /> </p> <p>The Lookup function has four sections, separated by commas: </p> <ul> <li>Fields!Assigned_To.Value - This is the field in the current (tasks) dataset that is going to exactly match up to a field in the other (UserInfo) dataset. You can click <strong>Fields (DataSet1)</strong> (in the screenshot under Category) to pick from the list of all the other fields.  <li>Fields!Name.Value - This is the field in the other dataset (UserInfo) that is going to exactly match with the Assigned_To field. In the user information list, the Name field is &quot;Firstname Lastname&quot;.  <li>Fields!Department.Value - this third part is the name of the field in the other dataset (UserInfo) that you want to display in this cell. To see a list of the names of the fields in that dataset, in the Category section of the above screenshot, you can click Datasets and then click UserInfo.  <li>&quot;UserInfo&quot; - This fourth part of the formula is the name of the second dataset that you're looking up to. This is what we named it at step 13. </li></ul> <p>Anyway, that's it, I hope you have fun with this. I absolutely love SSRS. Don't forget that there's the Report Viewer web part, which will let you display your report on any page in SharePoint. Another side note that I may blog about separately is the fact that you can cache the data in your dataset, so that it doesn't take so long to render the report. It has to be a shared dataset to be able to do that, and we didn't do any shared datasets in these instructions, just for simplicity's sake. </p> <p>Note, if you got stuck at step 15 and you still don't see the user information list, just paste this in the big white box called <strong>Query</strong>: </p> <p>&lt;RSSharePointList xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;<br />&lt;ListName&gt;UserInfo&lt;/ListName&gt;<br />&lt;/RSSharePointList&gt; </p> <p>Here's the <a href="http://msdn.microsoft.com/en-us/library/ee210531.aspx">reference for the Lookup Function</a>.</p> <p> </p></div> <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e551c866-372a-440e-a9c4-683bee3313d0" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/SharePoint" rel="tag">SharePoint</a>,<a href="http://technorati.com/tags/SSRS" rel="tag">SSRS</a>,<a href="http://technorati.com/tags/SQL+Server+Reporting+Services" rel="tag">SQL Server Reporting Services</a>,<a href="http://technorati.com/tags/SQL+2008+R2" rel="tag">SQL 2008 R2</a>,<a href="http://technorati.com/tags/Report+Builder" rel="tag">Report Builder</a>,<a href="http://technorati.com/tags/User+Information" rel="tag">User Information</a></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=13&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=13&RootFolder=*">SSRS</a></div>
<div><b>Published:</b> 2/1/2012 11:31 PM</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-1_1_51CF80B1.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-1_1_51CF80B1.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-1_thumb_51CF80B1.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-1_thumb_51CF80B1.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-10_1_18B8A3AF.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-10_1_18B8A3AF.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-10_thumb_46A5F667.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-10_thumb_46A5F667.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-11_46A5F667.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-11_46A5F667.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-2_51CF80B1.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-2_51CF80B1.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-3_6ACB50F6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-3_6ACB50F6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-4_6ACB50F6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-4_6ACB50F6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-5_6ACB50F6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-5_6ACB50F6.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-7_6ACB50F6.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/149/Oreilly-7_6ACB50F6.png</a><br /><a href=""></a></div>
]]></description>
      <author>Laura Rogers</author>
      <category>SSRS</category>
      <pubDate>Thu, 02 Feb 2012 04:31:14 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=149</guid>
    </item>
    <item>
      <title>"I Need To..." Display a List of Documents</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=12</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass60AB6659599249E98408D9FE361F09D2"><div class="ExternalClassE1E3B60BA4644ABB9902594C56D6EE09"><p>In this article, I'll describe how to use the out-of-box &quot;I Need To...&quot; web part to display a dynamic list of documents in a document library.</p>
<p><strong>About the &quot;I Need To...&quot; web part</strong></p>
<p>This web part displays items in a list on the SharePoint site.  The Title field is the field that will be displayed.  The list also must have a hyperlink field, and it must be called &quot;URL&quot;.  There must also be a field in the list that is a choice field, to be filtered by.</p>
<p><strong>Your Document Library <br /></strong>In this example, my document library is called &quot;Documents&quot;.</p>
<ol><li>Add a new column called &quot;URL&quot;, and make it a hyperlink field </li>
<li>If you don't already have a choice field you'd like to filter by, add a new column called &quot;Active&quot;.  It's a choice field, with the options being Yes or No, with the default as yes. </li>
<li>Using SharePoint Designer, create a new workflow that will run when each new item is created or changed in the document library. </li>
<li>Call this step in the workflow &quot;Set URL&quot;.  There are no conditions, and only one action: <br /><strong>Set Field in Current Item</strong>: Set <span style="text-decoration:underline">URL</span> to the current item's URL Path field.  <br /><img width="508" height="361" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/12/image_3_408C06D4.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </li>
<li>Click &lt;<strong>Finish</strong>&gt; to save the workflow. </li>
<li>Upload a couple of documents to the library, to test this. </li>
<li>Add the I Need To web part to your page.  Go to the web part's toolpane. </li>
<li>In the List Name box, click the &lt;Change...&gt; button, and select your document library. </li>
<li>In the Filter Field box, select &quot;Active&quot; from the drop-down box, and in Filter Value, select Yes. <p><img width="217" height="373" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/12/image_6_408C06D4.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </p></li>
<li>Click <strong>OK</strong>.  Sometimes it makes you check in the page before displaying your changes. </li></ol>
<p>You might see your document names in the drop-down box at this point, but you might not.  The problem is that this web part uses the Title field, and a lot of times that field isn't utilized in document libraries.  There are some options you have at this point:</p>
<ul><li>Make the Title field a required field in your library. </li>
<li>OR, put a step in your workflow that will put information in your Title field... <br />Add a second step in the workflow called &quot;Document title&quot;.  Condition is &quot;If Title is empty&quot;, and Action is to set the Title field to the Documents:Name.  <br /><img width="294" height="212" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/12/image_9_408C06D4.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /> </li>
<li>OR, put a step in your workflow that will set only the items with Title information as &quot;Active=Yes&quot;... <br />Add a second step in the workflow called &quot;Active Documents&quot;.  Condition is &quot;If Title is empty&quot; <strong>AND</strong> &quot;If Active=Yes&quot;, then the Action is to set the Active field to <span style="text-decoration:underline">No</span>. </li></ul>
<p>Note: At this point, if users change the name of the document, but not the Title, nothing will happen to the title.  But, since this workflow is set to run every time the document is changed, changes to the document names WILL be reflected in the document's URL.</p>
<p>Another thing you might want to do is hide the document library's URL field from forms.  In the library's settings, go to Advanced settings.  Change the setting “Allow management of content types” to Yes. <br />Now, there’s a new section in your library's settings called <strong>Content Types</strong> that contains one content type called “Document”.  <br />Click on the Document content type, click on the URL field, and change it to Hidden.  This will cause the field to be hidden when opening or editing the document properties.  You can do the same for the &quot;Active&quot; field if you'd like.</p></div>
<p> </p>
<p> </p>
<p> </p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:3cbc08bc-7ac9-4da1-9096-6a104657fe56" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/Content+types" rel="tag">Content types</a>,<a href="http://technorati.com/tags/document+library" rel="tag">document library</a>,<a href="http://technorati.com/tags/documents" rel="tag">documents</a>,<a href="http://technorati.com/tags/web+part" rel="tag">web part</a>,<a href="http://technorati.com/tags/workflows" rel="tag">workflows</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=7&RootFolder=*">workflows</a></div>
<div><b>Published:</b> 3/16/2009 4:39 PM</div>
<div><b>BlogTitleForUrl:</b> quote-i-need-to-quote-display-a-list-of-documents</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/12/image_3_408C06D4.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/12/image_3_408C06D4.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/12/image_6_408C06D4.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/12/image_6_408C06D4.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/12/image_9_408C06D4.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/12/image_9_408C06D4.png</a><br /><a href=""></a></div>
]]></description>
      <author>John Ross</author>
      <category>workflows</category>
      <pubDate>Fri, 16 Oct 2009 22:28:18 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=12</guid>
    </item>
    <item>
      <title>SharePoint Technical Conference (SP Tech Con)</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=13</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassECAE1B1FF8D7483F8326E86F7D955D03"><blockquote class="ExternalClass6FCAD090312C4C928011D83B1BD35C16"><p>Twitter users, you can <a title="Re-tweet" href="http://twitthis.com/twit?url=http://spinsiders.com/laurar/2009/03/19/sharepoint-technical-conference-sp-tech-con/" target="_blank">Re-Tweet This Post</a>.</p></blockquote>
<p class="ExternalClass6FCAD090312C4C928011D83B1BD35C16">SP Tech Con (<a href="http://www.sptechcon.com/">www.sptechcon.com</a>) is coming up!</p>
<p class="ExternalClass6FCAD090312C4C928011D83B1BD35C16"><a href="http://www.sptechcon.com/" target="_blank"><img width="308" height="258" title="image" alt="image" src="/blogs/laura/Lists/Posts/Attachments/13/image_3_47A22F78.png" border="0" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" /></a> </p>
<p class="ExternalClass6FCAD090312C4C928011D83B1BD35C16">Looking forward to seeing you all at this conference!  Presentations that I'll be doing:</p>
<div class="ExternalClass6FCAD090312C4C928011D83B1BD35C16"><ul><li> <strong>Making the Most Of Out-of-the-Box Web Parts <br /></strong>Out-of-the-Box Web parts are extremely flexible. This session will provide business users and project managers with a detailed look at the Filter, KPI, Excel Web Access, Outlook Web Access and Business Data Catalog Web parts. Some Web part connection tricks will be shared, and customizations using SharePoint Designer will be demonstrated. Developers starting to work with SharePoint also could benefit from knowing its out-of-the-box functionality before they delve into custom coding. <br />TECHNICAL LEVEL: BASIC </li>
<li><strong>So THAT’S How! SharePoint and Office 2007 Integration <br /></strong>Discover the best ways to tackle your daily work with the 2007 Microsoft Office system. Tips include how to use Instant Search in Outlook to keep all your SharePoint lists and libraries within easy reach, and how to use Excel Services Web parts so people can interact with a worksheet on a Web page. From offline document editing and two-way list synch, to workflows you can only find in Office, this session is packed with tricks you can use to increase your SharePoint productivity. Demo will include Access custom lists, blog publishing and dashboards. <br />TECHNICAL LEVEL: INTERMEDIATE </li>
<li><strong>HELP! Creating a Community Of Support for SharePoint</strong> <br />How do end users obtain SharePoint-related help? In this session, we will go over challenges in helping and supporting SharePoint end users, and how to address those challenges. There are many different available avenues when it comes to SharePoint help, and we will cover how to consolidate that information to a single point of reference for your end users or customers to turn to. A SharePoint Help site and community for your company will not only make the users happy and confident, it will also reduce calls to the help desk. <br />Attendees will learn: <br />• Some user perspectives when it comes to obtaining SharePoint related help, and how to bring together available sources of help <br />• Why it’s important to do research to find out what the users need and what they’re looking for in SharePoint help <br />• Why it’s important to create a single point of reference for your company’s SharePoint users to get help with SharePoint, and how to tailor this site/community to your own company <br />TECHNICAL LEVEL: BASIC </li></ul></div>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b45b7968-159a-41fa-a92e-2ceb0189f922" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px">Technorati Tags: <a href="http://technorati.com/tags/Boston" rel="tag">Boston</a>,<a href="http://technorati.com/tags/conference" rel="tag">conference</a></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 3/19/2009 4:40 PM</div>
<div><b>BlogTitleForUrl:</b> sharepoint-technical-conference-sp-tech-con</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/13/image_3_47A22F78.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/13/image_3_47A22F78.png</a><br /><a href=""></a></div>
]]></description>
      <author>John Ross</author>
      <category>conference</category>
      <pubDate>Fri, 16 Oct 2009 22:28:19 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=13</guid>
    </item>
    <item>
      <title>SP Tech Con - Get $100 off!</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=17</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassDF55A41758034546B6171EE8EF7E7408"><div class="ExternalClass775EA55C51104C089B3D27C2F446E602"><p>When you register for the SharePoint Technical Conference (SPtechcon) in Boston, get $100 off because you know me. Use the promotional code: <strong>WONDERLAURA</strong></p>
<p><a href="/blogs/laura/Lists/Posts/Attachments/20/boston_300x250_amim_2_5D611BA8.gif"><img width="240" height="200" title="boston_300x250_amim" alt="boston_300x250_amim" src="/blogs/laura/Lists/Posts/Attachments/17/boston_300x250_amim_thumb_5D611BA8.gif" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></a></p></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 4/16/2009 4:46 PM</div>
<div><b>BlogTitleForUrl:</b> sp-tech-con-get-100-off</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/17/boston_300x250_amim_2_5D611BA8.gif">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/17/boston_300x250_amim_2_5D611BA8.gif</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/17/boston_300x250_amim_thumb_5D611BA8.gif">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/17/boston_300x250_amim_thumb_5D611BA8.gif</a><br /><a href=""></a></div>
]]></description>
      <author>John Ross</author>
      <category>conference</category>
      <pubDate>Fri, 16 Oct 2009 22:28:20 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=17</guid>
    </item>
    <item>
      <title>SharePoint Saturday in Atlanta Recap</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=18</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassFB17CBF857EB477E8DAA4FEFA18EBEB4"><div class="ExternalClass705F3ABE69C449A08BB143905DDA83AA"><p>SharePoint Saturday was in Atlanta on April 18th.  My friend, Lori Gowin, and I were so excited when we first found out about this event a couple of months ago.  I had immediately submitted an abstract, to do a presentation there.</p>
<p>Since we live in Birmingham, Alabama, it's only a two and a half hour drive over to Atlanta.  Our friend, Cathy Dew, who we met at our SharePoint user group, works for CTS.  <a href="http://www.askcts.com/" target="_blank">CTS </a>sponsored the speaker dinner in Atlanta, so Cathy and I conveniently brought Lori along with us to hob-nob with the speakers.  </p>
<p>The speaker dinner was great, and you know it's always interesting meeting people in person... who you know from the internet.  So, now we get to associate  human beings with those little square icons whom we've been chatting with on twitter.</p>
<p>We were up bright and early for SharePoint Saturday the next morning.  So exciting!  We had a short keynote, and then my presentation was in the very first time slot.  Also, we had live coverage of this event on the EndUserSharePoint site, courtesy of Mark Miller.  This means that some of us committed to being &quot;live bloggers&quot;, and basically took notes while we were in our sessions, and these notes and correspondence was live online.  We even had pictures and videos!  Here's the <a href="http://www.endusersharepoint.com/?p=1519" target="_blank">archived live blog</a>.  Oh, and here are several videos that <a href="http://vimeo.com/4212420" target="_blank">Dux recorded</a>.  There was a little friendly competition going with the St. Louis MOSS Camp, which was going on at the same time and also live blogging!</p>
<p><img width="405" height="319" title="laura-presentation-4-182" alt="laura-presentation-4-182" src="/blogs/laura/Lists/Posts/Attachments/18/laura-presentation-4-182_316feef5-92c8-4867-a16e-c641ac6b3225_3143F488.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></p>
<p>It was unfortunate that <a href="http://www.meetdux.com/" target="_blank">Dux</a>'s presentation was at the same time, because I really wanted to see him speak.  Oh well, I guess I'll have to wait until I see him again at <a href="http://www.sptechcon.com/" target="_blank">SPTechCon </a>in Boston.</p>
<p>Anyway, this was the third time that have done my presentation called &quot;Making the most of Out-of-Box Web Parts&quot;.  It gets so much easier each time I do it.  The first time was with <a href="http://www.brettlonsdale.com/" target="_blank">Brett Lonsdale </a>of <a href="http://www.lightningtools.com/" target="_blank">Lighting Tools</a>, when we presented this at the <a href="http://bestpracticesconference.com/" target="_blank">SharePoint Best Practices Conference </a>in San Diego in February.  Since he's the BDC guru and has a development background, he was the perfect person to talk about the BDC web parts, and the data view web part.  The whole premise behind this presentation, is that no matter who you are (developer or not), it's best to learn what SharePoint can do out-of-box, before developing your own solutions.</p>
<p>The next session I went to was &quot;Integrating SQL Server 2005 Reporting Services with SharePoint&quot; by Chris Regan.  This session was great, because Chris went over all of the steps to take, and gotchas involved when installing SSRS.  Stanalond mode vs. Integrated mode.  He actually demo'ed the installation in detail.  Good stuff!</p>
<p>Then, I went to &quot;Business Intelligence: Build a dashboard with Excel Services and KPIs&quot; by Jeremy Minich.  Jeremy went over the Report Center template in MOSS, and how to put Excel Web Access web parts on the dashboard, and how to comfigure the web part settings.  He also showed how to create KPIs and put the KPI web parts on the page.</p>
<p>After lunch, several of us live bloggers went to &quot;Blogging with SharePoint&quot; by <a href="http://www.sharingthepoint.com/" target="_blank">Dan Lewis</a>.  This session was recorded and was streaming live, thanks to <a href="http://www.ericharlan.com/" target="_blank">Eric Harlan</a>.  It was a lot of fun, and very informative.  Dan went over different ways to blog and post blog entries, such as different software to use, and some tips and tricks.</p>
<p>And, finally, the last session I went to was &quot;Content Query Web Part in the Wild&quot; by Hasan Shahid and Amjad Ashraf.  This one was great for me, because customizing the CQWP is something I've been struggling with.  They showed how easy it can be!</p>
<p>Oh, oh, oh, I almost forgot!  Lori and I recorded a series of webcasts on the way to and from Atlanta.  To view these, click <a href="http://spinsiders.com/laurar/webcasts/" target="_blank">HERE</a>.  I've been uploading a new one every day.</p></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 4/28/2009 4:46 PM</div>
<div><b>BlogTitleForUrl:</b> sharepoint-saturday-in-atlanta-recap</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/18/laura-presentation-4-182_316feef5-92c8-4867-a16e-c641ac6b3225_3143F488.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/18/laura-presentation-4-182_316feef5-92c8-4867-a16e-c641ac6b3225_3143F488.jpg</a><br /><a href=""></a></div>
]]></description>
      <author>John Ross</author>
      <category>conference</category>
      <pubDate>Fri, 16 Oct 2009 22:28:20 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=18</guid>
    </item>
    <item>
      <title>On-The-Go Series Completed</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=19</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClass44D7361A9C64459F986A23203682BEC9"><div class="ExternalClass69E5F143D0454238BD574EEB31299667"><p>Lori Gowin and I drove to Atlanta for SharePoint Saturday on April 18th.  We simply turned the camera on, and started talking.  For the past few weeks, I've been uploading one new file each night.  Now, the whole series has been uploaded for your viewing pleasure.</p>
<p><a href="/blogs/laura/Pages/Webcasts.aspx">Click here to see the list of all ELEVEN webcasts</a>.  It will blow your mind (no, not really).</p>
<p>Before I had sliced our 2 big videos up into a bunch of little ~8 minute ones, I simply guessed that there would be about 10 of them.  There ended up being eleven.  Sorry, sue me.</p>
<p style="text-align:center"><img width="593" height="325" title="lori1" alt="lori1" src="/blogs/laura/Lists/Posts/Attachments/19/lori1_70ddc544-7cc7-41d9-87bb-09c5a50cb3e0_0AC5AF73.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></p></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 5/9/2009 8:11 AM</div>
<div><b>BlogTitleForUrl:</b> on-the-go-series-completed</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/19/lori1_70ddc544-7cc7-41d9-87bb-09c5a50cb3e0_0AC5AF73.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/19/lori1_70ddc544-7cc7-41d9-87bb-09c5a50cb3e0_0AC5AF73.jpg</a><br /><a href=""></a></div>
]]></description>
      <author>John Ross</author>
      <category>conference</category>
      <pubDate>Fri, 16 Oct 2009 22:28:20 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=19</guid>
    </item>
    <item>
      <title>List View Styles</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=21</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassFF701CDC3F2149C085A1FEF4314D907F"><div class="ExternalClass67FF32B75A714ECAA48432BB858402B6"><p>When creating a new view on a SharePoint list or library, there's this little section towards the bottom of the view settings, called <strong>Style</strong>, that looks like this:</p>
<p><img width="498" height="158" title="views1" alt="views1" src="/blogs/laura/Lists/Posts/Attachments/21/views1_7af91479-be1b-4e1a-8566-e3e029fe9857_2DDD32DC.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /> <br /></p>
<p>To see what each style looks like, you could easily modify your view, changing it to each style, one at a time.  I've discovered something in SharePoint Designer allows for a PREVIEW of these built-in styles!</p>
<p>NOTE that you're not going to be modifying a page in SharePoint Designer at this point, only looking at it.</p>
<ol><li>Open your site in SharePoint Designer, and double-click to open the default.aspx page (or any aspx page on your site that contains a list view web part). </li>
<li>Click to select the list view. </li>
<li>As you hover over this list view, look for a little icon that's a picture of a table, like so: <br />(see it on top of the word Departments, at the top left of the web part) <br /><img width="305" height="137" title="views2" alt="views2" src="/blogs/laura/Lists/Posts/Attachments/21/views2_17ccd75a-2b9b-4bc7-a5d5-a6468771c397_5BCA8594.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /> </li>
<li>Click the drop-down box on it, and choose &quot;Change Layout&quot; </li>
<li>Go to the Layout tab </li>
<li>Scroll down through this list, and you'll notice that when you hover over each example, the name of it is displayed, and when you click on each example, there is a description of that view at the bottom!  There's even a radio button on here that lets you change the view type to datasheet view. <br /><img width="418" height="485" title="views3" alt="views3" src="/blogs/laura/Lists/Posts/Attachments/21/views3_da3e06b8-a645-4092-91d9-e14e229c3d54_5BCA8594.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /> </li></ol>
<p>That's your tidbit for the day.  Just close the page you opened, and don't save any changes you made.</p></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=9&RootFolder=*">Views</a></div>
<div><b>Published:</b> 5/14/2009 8:13 AM</div>
<div><b>BlogTitleForUrl:</b> list-view-styles</div>
<div><b>Categories:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=9&RootFolder=*">Views</a></div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/21/views1_7af91479-be1b-4e1a-8566-e3e029fe9857_2DDD32DC.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/21/views1_7af91479-be1b-4e1a-8566-e3e029fe9857_2DDD32DC.jpg</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/21/views2_17ccd75a-2b9b-4bc7-a5d5-a6468771c397_5BCA8594.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/21/views2_17ccd75a-2b9b-4bc7-a5d5-a6468771c397_5BCA8594.jpg</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/21/views3_da3e06b8-a645-4092-91d9-e14e229c3d54_5BCA8594.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/21/views3_da3e06b8-a645-4092-91d9-e14e229c3d54_5BCA8594.jpg</a><br /><a href=""></a></div>
]]></description>
      <author>John Ross</author>
      <category>Views</category>
      <pubDate>Fri, 16 Oct 2009 22:28:20 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=21</guid>
    </item>
    <item>
      <title>Hitting the East Coast</title>
      <link>http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=26</link>
      <description><![CDATA[<div><b>Body:</b> <div class="ExternalClassB15C61B9582F44B79AD0465D0AC4F117"><div class="ExternalClass7D45183EB95E46C7A47C62790909BC4E"><p>Less than two weeks go to!  My whirlwind trip is getting closer and closer!</p>
<p>On Friday, June 19th, <a href="http://www.twitter.com/tsongvilay1" target="_blank">Tiffany Songvilay </a>and I are going to meet up in Charlotte, NC for <a href="http://www.sharepointsaturday.org/charlotte" target="_blank">SharePoint Saturday</a>.  She's coming from Houston, and I'm coming from Birmingham, but we're going to arrive there around the same time.  Since the speaker dinner is that night, I'm hitching a ride with Tiffany.  Then, if all goes smoothly, we'll arrive together in style at the speaker dinner.  I'm particularly looking forward to meeting <a href="http://www.twitter.com/gannotti" target="_blank">Michael Gannotti </a>for the first time.  Here is the <a href="http://www.sharepointsaturday.org/charlotte/Pages/speakers.aspx" target="_blank">full list of the amazing other speakers </a>that I'll get to hang out with.  These people are wonderfully smart, witty, and I feel so lucky to be one of them.  Serious SharePoint gurus!  From what I understand, my friend <a href="http://www.twitter.com/danlewisnet" target="_blank">Dan Lewis </a>has been the key organizer of this event.  Relax, Dan, it'll be great.  I think I'm going to do my &quot;Making the most of the Out-of-Box (MOSS) web parts&quot; presentation.  <br /><img width="314" height="116" src="http://www.sharepointsaturday.org/charlotte/SiteImages/SharePointSatCharlotte.png" alt="" /></p>
<p>But wait! <br />That's not all!<img width="124" height="234" title="rogers_speaker_badge" alt="rogers_speaker_badge" src="/blogs/laura/Lists/Posts/Attachments/26/rogers_speaker_badge_140d05fd-cf45-471f-811c-25387b73c010_6EBA2AD4.png" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /> <br />THEN, on Sunday the 21st, Tiffany and I are going to jet on up to Boston for <a href="http://www.sptechcon.com/" target="_blank">SPTechCon</a>, which is June 22nd through 24th!  <a href="http://www.twitter.com/mikewat" target="_blank">Mike Watson </a>will also be at both events (Charlotte &amp; Boston), and so will <a href="http://www.twitter.com/usher" target="_blank">Dan User </a>, who I'm also looking forward to meeting for the first time.  I've never been to this particular conference before, but I think it's going to be friggin' awesome.  Don't miss this one!  So many friends will be there, I can't even count 'em all.  You know who you are.  AND, I get to meet my business associate, <a href="http://www.twitter.com/eusp" target="_blank">Mark Miller</a>, of <a href="http://www.endusersharepoint.com/">www.endusersharepoint.com</a>, for the first time.</p>
<p>Here is a link to <a href="http://spinsiders.com/laurar/2009/03/19/sharepoint-technical-conference-sp-tech-con/" target="_blank">my blog post </a>that describes the presentations that I'll be doing.  One of them will be alongside Tiffany:</p>
<div class="mceTemp mceIEcenter" style="text-align:left"><dl><dt><img width="452" height="301" title="tiff" alt="tiff" src="/blogs/laura/Lists/Posts/Attachments/26/tiff_e1ba222a-d3fd-4f72-b307-505be24f0b9f_6EBA2AD4.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /> </dt>
<dd>Tiffany and Laura at the SharePoint Best Practices conference </dd></dl>
<p>See y'all there! </p></div>
<div class="mceTemp mceIEcenter" style="text-align:left"><img width="452" height="301" title="me" alt="me" src="/blogs/laura/Lists/Posts/Attachments/26/me_31c27b18-056b-41e9-b300-b90a9f850334_6EBA2AD4.jpg" border="0" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px" /></div></div></div></div>
<div><b>Category:</b> <a onclick="OpenPopUpPage('http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://sharepoint911.com/blogs/laura/_layouts/listform.aspx?PageType=4&ListId={3A186B3C-54BA-41AF-A4A4-AF50AE30F6BD}&ID=6&RootFolder=*">conference</a></div>
<div><b>Published:</b> 6/9/2009 8:18 AM</div>
<div><b>BlogTitleForUrl:</b> hitting-the-east-coast</div>
<div><b>Attachments:</b> <a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/26/me_31c27b18-056b-41e9-b300-b90a9f850334_6EBA2AD4.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/26/me_31c27b18-056b-41e9-b300-b90a9f850334_6EBA2AD4.jpg</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/26/rogers_speaker_badge_140d05fd-cf45-471f-811c-25387b73c010_6EBA2AD4.png">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/26/rogers_speaker_badge_140d05fd-cf45-471f-811c-25387b73c010_6EBA2AD4.png</a><br /><a href="http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/26/tiff_e1ba222a-d3fd-4f72-b307-505be24f0b9f_6EBA2AD4.jpg">http://sharepoint911.com/blogs/laura/Lists/Posts/Attachments/26/tiff_e1ba222a-d3fd-4f72-b307-505be24f0b9f_6EBA2AD4.jpg</a><br /><a href=""></a></div>
]]></description>
      <author>John Ross</author>
      <category>conference</category>
      <pubDate>Fri, 16 Oct 2009 22:28:20 GMT</pubDate>
      <guid isPermaLink="true">http://sharepoint911.com/blogs/laura/Lists/Posts/ViewPost.aspx?ID=26</guid>
    </item>
  </channel>
</rss>