<?xml version="1.0" encoding="UTF-8"?><!--RSS generated by Windows SharePoint Services V3 RSS Generator on 3/10/2010 3:45:54 PM--><?xml-stylesheet type="text/xsl" href="/_layouts/RssXslt.aspx?List=12e179bf-35b2-46c4-be22-cb2f5c582589" version="1.0"?><rss version="2.0"><channel><title>AndyGett on SharePoint and Other Business Software</title><link>http://blog.bullseyeconsulting.com</link><description>RSS feed for the Posts list.</description><lastBuildDate>Wed, 10 Mar 2010 20:45:54 GMT</lastBuildDate><generator>SharePoint CKS:EBE</generator><ttl>60</ttl><image><title>AndyGett on SharePoint and Other Business Software</title><url>http://blog.bullseyeconsulting.com/_layouts/images/homepage.gif</url><link>http://blog.bullseyeconsulting.com</link></image><item><title>Enabling CKS EBE Comments Alerts</title><link>http://blog.bullseyeconsulting.com/archive/2009/04/28/enabling-cks-ebe-comments-alerts.aspx</link><guid>/archive/2009/04/28/enabling-cks-ebe-comments-alerts.aspx</guid><description><![CDATA[<div class="ExternalClass0407E56FE0D54C158F6177A74440B3B6"><p>One of my production blogs (this one, actually) was not sending alerts about comments.  I have set up several blogs using <a href="http://cks.codeplex.com/">CKS EBE</a>, and fortunately I was able to use another blog to debug it.  The Contact Email value in Blog Settings is not enough, and in fact has nothing to do with it.  You just set up a normal SharePoint alert for the Comments list.  
</p><ul><li>Navigate to the Comments list &gt; Actions – Alert me
</li><li>Change Type - New items are added
</li><li>Send Alerts for These Changes - Someone else changes an item
</li></ul><p>If you have not done so, SharePoint prompt you to set the email address for your login account.  Easy enough, but I'll probably forget this the next time it happens if I don't note it now.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Tue, 28 Apr 2009 06:57:40 GMT</pubDate></item><item><title>Twitter on SharePoint</title><link>http://blog.bullseyeconsulting.com/archive/2009/01/04/twitter-on-sharepoint.aspx</link><guid>/archive/2009/01/04/twitter-on-sharepoint.aspx</guid><description><![CDATA[<div class="ExternalClass88F65FD0AB354B53BF76B710ED9CF011"><p>Showing a list of Twitter.com tweets from a Twitterer on SharePoint is as easy as pasting some HTML and Javascript into a Content Web Part, available in WSS.  I created a family Twitter account because sometimes blog entries are just too much to say, the baby now weighs 10 pounds.  I had initially considered making a simple SharePoint list and presenting items that way, but then settled leveraging Twitter and all its extra functionality.  The one drawback is if Twitter is down or goes away completely.
</p><p>I first tried consuming the Twitter RSS feed using a Dataview web part and SharePoint Designer, but fortunately (sic), I had some trouble figuring out how to display the tweet times in my local time zone, EST or GMT -0500.  The RSS delivers the tweet times in GMT +0000, e.g., Tue, 18 Nov 2008 23:13:20 +0000.  I found some XSLT to deal with it (<a href="http://ftrain.com/xslt_001.html">http://ftrain.com/xslt_001.html</a> is overkill), but it was messier than I cared to deal with.
</p><p>Then I found <a href="http://twitter.com/badges/which_badge">http://twitter.com/badges/which_badge</a> where you can choose Flash, or HTML + Javascript, which is what I chose (<a href="http://twitter.com/badges/html">http://twitter.com/badges/html</a>).  As the Twitter badge page suggests, I broke the code apart, putting the 
</p><p><pre><code>&lt;ul id=&quot;twitter_update_list&quot;&gt;&lt;/ul&gt;</code></pre>
	</p><p>into one content web part, and putting the two Javascript   lines 
</p><p><pre><code>&lt;script type=&quot;text/javascript&quot; src=&quot;http://twitter.com/javascripts/blogger.js&quot;&gt;&lt;/script&gt;
</code></pre></p><p><pre><code>&lt;script type=&quot;text/javascript&quot; src=&quot;http://twitter.com/statuses/user_timeline/FamilySite.json?callback=twitterCallback2&amp;amp;count=5&quot;&gt;&lt;/script&gt;
</code></pre></p><p>
 </p><p>into the very bottom, right-most zone so that it would load last, and not prevent the rest of the page from loading if Twitter is slow or absent.  I kind of liked the &quot;follow me on Twitter&quot; link that they show in the preview on the badge page.  For whatever reason, this link is missing from the HTML code, but this line 
</p><p><pre><code>&lt;a href=&quot;http://twitter.com/FamilySite&quot; id=&quot;twitter-link&quot;&gt;follow us on Twitter&lt;/a&gt;</code></pre>
	</p><p>fixes the problem.
</p><p>On the home page, at my wife's request, our tweets are now front and center at the top of the page.  It shows a maximum of seven tweets.  However, the code snippet has count as a parameter.  I used a different account which already had lots of tweets, and was able to get 45 at once.  So from the home page's content, I linked to a new web part page that shows up to 150 of our tweets.  I figure beyond that, the page is going to be too long.  This is one big advantage over RSS which appears to support a maximum of just 20.
</p><p>A peek under the hood of the Javascript reveals Javascript  + JSON fetching and presenting the data.  It appears that one could easily customize the strangely named blogger.js.  You could present some different looks like actual date &amp; time (beware the time zone offset mentioned in the 2<sup>nd</sup> paragraph) and add in some of the non-presented AJAX content such as the Twitter image and number of followers.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Sun, 04 Jan 2009 05:31:06 GMT</pubDate></item><item><title>Web.config Changes for Debugging ASPX Page’s Codebehind in SharePoint</title><link>http://blog.bullseyeconsulting.com/archive/2009/01/04/web-config-changes-for-debugging-aspx-pages-codebehind-in-sharepoint.aspx</link><guid>/archive/2009/01/04/web-config-changes-for-debugging-aspx-pages-codebehind-in-sharepoint.aspx</guid><description><![CDATA[<div class="ExternalClass4B2EDCAEF5F2489C81383A3151358D16">
<p>Instead of getting the &quot;user-friendly&quot;, but frustrating-to-a-developer message &quot;An error has occurred&quot;, use these two steps to receive the actual error when developing in SharePoint. Works for both MOSS and WSS. </p>
<ol>
<li>Show the call stack<br>Change<br><span style="font-size:10pt;font-family:Courier New"><span style="color:blue">&lt;</span><span style="color:#a31515">SafeMode</span><span style="color:blue"> </span><span style="color:red">MaxControls</span><span style="color:blue">=</span>&quot;<span style="color:blue">200</span>&quot;<span style="color:blue"> </span><span style="color:red">CallStack</span><span style="color:blue">=</span>&quot;<span style="color:blue;background-color:yellow">false</span>&quot;<span style="color:blue"> </span><span style="color:red">DirectFileDependencies</span><span style="color:blue">=</span>&quot;<span style="color:blue">10</span>&quot;<span style="color:blue"> </span><span style="color:red">TotalFileDependencies</span><span style="color:blue">=</span>&quot;<span style="color:blue">50</span>&quot;<span style="color:blue"> </span><span style="color:red">AllowPageLevelTrace</span><span style="color:blue">=</span>&quot;<span style="color:blue">false</span>&quot;<span style="color:blue">&gt;</span></span><br>to<br><span style="font-size:10pt;font-family:Courier New"><span style="color:blue">&lt;</span><span style="color:#a31515">SafeMode</span><span style="color:blue"> </span><span style="color:red">MaxControls</span><span style="color:blue">=</span>&quot;<span style="color:blue">200</span>&quot;<span style="color:blue"> </span><span style="color:red">CallStack</span><span style="color:blue">=</span>&quot;<span style="color:blue;background-color:yellow">true</span>&quot;<span style="color:blue"> </span><span style="color:red">DirectFileDependencies</span><span style="color:blue">=</span>&quot;<span style="color:blue">10</span>&quot;<span style="color:blue"> </span><span style="color:red">TotalFileDependencies</span><span style="color:blue">=</span>&quot;<span style="color:blue">50</span>&quot;<span style="color:blue"> </span><span style="color:red">AllowPageLevelTrace</span><span style="color:blue">=</span>&quot;<span style="color:blue">false</span>&quot;<span style="color:blue">&gt;<br></span></span></li>
<li>
<div>Set custom errors to False<br>Change </div>
<p><span style="font-size:10pt;font-family:Courier New"><span style="color:blue">&lt;</span><span style="color:#a31515">customErrors</span><span style="color:blue"> </span><span style="color:red">mode</span><span style="color:blue">=</span>&quot;<span style="color:blue">On</span>&quot;<span style="color:blue"> /&gt;</span></span><br>to <br><span style="font-size:10pt;font-family:Courier New"><span style="color:blue">&lt;</span><span style="color:#a31515">customErrors</span><span style="color:blue"> </span><span style="color:red">mode</span><span style="color:blue">=</span>&quot;<span style="color:blue">Off</span>&quot;<span style="color:blue"> /&gt;</span></span></p></li></ol></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Sun, 04 Jan 2009 05:27:00 GMT</pubDate></item><item><title>Hiding a List Item from Anonymous Users</title><link>http://blog.bullseyeconsulting.com/archive/2008/10/26/hiding-a-list-item-from-anonymous-users.aspx</link><guid>/archive/2008/10/26/hiding-a-list-item-from-anonymous-users.aspx</guid><description><![CDATA[<div class="ExternalClassEA33E9BDE933458FBFBEB81FE9A7CB11"><p>Karen asked that I remove one of the links from the gift registry on the internet WSS family site.  Instead of removing it, I decided to hide it from anonymous users.  Note that during this process, we are warned that &quot;You are about to create unique permissions for this item.  Changes made to the parent folder or list permissions will no longer  effect this list item&quot;.  This is an important concept to understand before proceeding.
</p><ol><li>Navigate to the list.
</li><li>In the context menu available when you hover over the link, click &quot;Manage Permissions&quot; &gt; Actions &gt; Edit Permissions
</li><li>Click Ok in response to the warning 
</li><li>Click the check box next to Visitors
</li><li>Actions &gt; Remove User Permissions &gt; Ok
</li></ol><p>Now anonymous users can't see this one link, and if Karen ever asks to undo this action so that we can see the link again, I can navigate to the link item, click Actions &gt; Inherit Permissions.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Sun, 26 Oct 2008 12:02:17 GMT</pubDate></item><item><title>Date Formulas in SharePoint Calculated Fields</title><link>http://blog.bullseyeconsulting.com/archive/2008/10/16/date-formulas-in-sharepoint-calculated-fields.aspx</link><guid>/archive/2008/10/16/date-formulas-in-sharepoint-calculated-fields.aspx</guid><description><![CDATA[<div class="ExternalClass0485497F675F49D880FE5864FB22FF48"><p>Microsoft provides a nice compilation of <a href="http://office.microsoft.com/en-us/sharepointtechnology/HA011609471033.aspx">Examples of common formulas</a>, but it does not work as advertised with WSS.  I have not tried it in MOSS.  Let's say there is a date column named ExpirationDate and an integer named NotificationMonths which represents the number of months before the expiration date that we want the notification in our calculated field NotificationDate.  
</p><p>Simple arithmetic using a date and an integer adds the number of days.  If ExpirationDate is 10/31/2009, and NotificationMonths is 6, the formula <pre><code>=ExpirationDate- NotificationMonths</code></pre> yields 10/26/2009, but what we really want is 5/1/2009 (4/31 does not exist).  The link from the first sentence of this post implies that <pre><code>=DATE(YEAR(ExpirationDate),MONTH(ExpirationDate)-NotificationMonths,DAY(ExpirationDate)) </code></pre>ought to do exactly this, but instead it gives the error <em>&quot;The formula refers to a column that does not exist.  Check the formula for spelling mistakes or change the non-existing column to an existing column.&quot;</em>
	</p><p>The solution is to use braces around the field names: <pre><code>=DATE(YEAR([ExpirationDate]), MONTH([ExpirationDate])-[NotificationMonths], DAY([ExpirationDate]))</code></pre></p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Thu, 16 Oct 2008 17:53:03 GMT</pubDate></item><item><title>Link to Slide Show from Pictures DVWP Rollup</title><link>http://blog.bullseyeconsulting.com/archive/2008/09/30/link-to-slide-show-from-pictures-dvwp-rollup.aspx</link><guid>/archive/2008/09/30/link-to-slide-show-from-pictures-dvwp-rollup.aspx</guid><description><![CDATA[<div class="ExternalClass4F2C047D956F44FEB1E1D7031F5903FB">
<p class="MsoNormal" style="margin:0in 0in 10pt"><font face="Calibri" size="3">In addition to the blog rollup’s (see previous post), I am rolling up my top-level picture folders in a picture library called Pictures.<span style="">  </span>We thought the best user experience would be viewing the slide shows of a particular library.<span style="">  </span>I was adding a label of “</font><i><span style="font-size:8pt;color:black;font-family:'Verdana','sans-serif'">In the Photo Album menu, click Actions &gt; View Slide Show</span></i><font face="Calibri" size="3">”, but the menu is hard to find, and jeez, Andy, can’t you just make the link go straight to the slide show instead of linking to the thumbnails?<span style="">  </span>Well, the answer is “yes”. </font></p>
<p class="MsoNormal" style="margin:0in 0in 10pt"><font face="Calibri" size="3">There is a slideshow.aspx page in the Forms subfolder of picture libraries.<span style="">  </span>It takes a query-string parameter named RootFolder to know where to start.<span style="">  </span>Since all my “albums” are one level deep (no nesting of folders), the items returned by the data source are all we need.<span style="">  </span>@FileRef field contains the “URL Path” of the item.<span style="">  </span>So the link of our &lt;a&gt; tag generated by the DataForm WebPart’s XSL needs to look something line /Pictures/Forms/slideshow.aspx&amp;RootFolder={@FileRef}.<span style="">  </span><span style="">  </span>After some playing around, this does the trick:</font></p>
<p class="Code" style="margin:0in 0in 0pt"><font size="2"><font face="Consolas"><span style="">  </span>&lt;a target=&quot;_blank&quot; title=&quot;View slide show in new window&quot;&gt;</font></font></p>
<p class="Code" style="margin:0in 0in 0pt"><font size="2"><font face="Consolas"><span style="">    </span>&lt;xsl:attribute name=&quot;href&quot;&gt;</font></font></p>
<p class="Code" style="margin:0in 0in 0pt"><font size="2"><font face="Consolas"><span style="">      </span>&lt;xsl:value-of select=&quot;concat('/Pictures/Forms/slidshow.aspx?ViewStyle=slideshow&amp;amp;RootFolder=',@FileRef)&quot; /&gt;</font></font></p>
<p class="Code" style="margin:0in 0in 0pt"><font size="2"><font face="Consolas"><span style="">    </span>&lt;/xsl:attribute&gt;</font></font></p>
<p class="Code" style="margin:0in 0in 0pt"><font size="2"><font face="Consolas"><span style="">    </span>&lt;xsl:value-of select=&quot;@Title&quot; /&gt;</font></font></p>
<p class="Code" style="margin:0in 0in 0pt"><font size="2"><font face="Consolas"><span style="">  </span>&lt;/a&gt;</font></font></p>
<p class="MsoNormal" style="margin:0in 0in 10pt"><br><font face="Calibri" size="3">I still like the idea of having the thumbnail, so I added </font></p><pre><font face="Consolas" size="2">&lt;a href=&quot;{@FileRef}&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;/_layouts/images/DETAIL.GIF&quot; title=&quot;View Thumbnails&quot;/&gt;&lt;/a&gt;&amp;#160;</font></pre>
<p class="MsoNormal" style="margin:0in 0in 10pt"><br><font face="Calibri" size="3">before the slideshow link within the same column.<span style="">  </span>Note that &amp;nbps; must be explicitly defined in XSL.<span style="">  </span>Using &amp;#160; instead is easier.<span style="">  </span>Detail.gif is OOTB SharePoint graphic that seemed to capture the idea of a grid of thumbnails.</font></p>
<p class="MsoNormal" style="margin:0in 0in 10pt"><font face="Calibri" size="3">To round it all out, I show the created date sans time stamp of the album, right justified in the second column:</font></p><pre><font face="Consolas" size="2">&lt;xsl:value-of select=&quot;ddwrt:FormatDate(string(@Created), 1033, 1)&quot;/&gt;</font></pre></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Tue, 30 Sep 2008 18:28:00 GMT</pubDate></item><item><title>SharePoint Object Names – No Spaces</title><link>http://blog.bullseyeconsulting.com/archive/2008/08/09/sharepoint-object-names-no-spaces.aspx</link><guid>/archive/2008/08/09/sharepoint-object-names-no-spaces.aspx</guid><description><![CDATA[<div class="ExternalClassDDF65551B39B45AE8B894FC2838C1CEC">
<p>I have always avoided using spaces in object names, even in my file names and directory names. This stems from a programmer's background and a general dislike of seeing things like <a href="http://somedomain.com/home page.htm">http://somedomain.com/home%20page.htm</a>. It also makes DOS commands and batch files easier. </p>
<p>It's similar with SharePoint. It allows Content Types and site column names to contain spaces, but when you want to use them in CAML, XML or XLS via a Data Form Web Part, a column named &quot;Expiration Date&quot; turns into &quot;Expiration_x0020_Date&quot;. However, you can initially name such a field using the &quot;camel back&quot; format, i.e., ExpirationDate, and then rename the field to &quot;Expiration Date&quot;. The internal field name remains ExpirationDate, but end users see it with the space. The few extra seconds it takes to rename such fields is worth it.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Sat, 09 Aug 2008 23:15:00 GMT</pubDate></item><item><title>Stsadm Restore Successful with Multiple SharePoint Sites on Same Port</title><link>http://blog.bullseyeconsulting.com/archive/2008/07/21/stsadm-restore-successful-with-multiple-sharepoint-sites-on-same-port.aspx</link><guid>/archive/2008/07/21/stsadm-restore-successful-with-multiple-sharepoint-sites-on-same-port.aspx</guid><description><![CDATA[<div class="ExternalClass20ADB90919E149FEA014ED6DAC88EA7B"><p>I read someplace that some people do not recommend putting SharePoint multiples web applications onto the same port, e.g., the traditional http: port 80.  
</p><p>Here's some history.  My original plan was to host my WSS internet web applications on a custom port and extend to port 80 for general consumption, and that was my initial set up.  But my hosting provider keeps most ports locked down which meant I could see it just fine from a browser on the server, but not from the internet cloud.  They will open ports up upon request, or I could simply extend my web app to port 80 and access it that way.  However, links within SharePoint-generated emails from work flows, alerts, etc. point to the initial site's port and URL which, so the latter solution was out.  In general using port 80 will be cleaner, but I was concerned about the restore issue.
</p><p>After a bit of a search, I found no definitive answer.  There apparently is a definite problem when you are using Central Admin to restore a backup when there are other web app's on the same port (some people deleted all sites on port 80 to get their restore – ouch), but I did not confirm this as I use stsadm nearly exclusively for restore.
</p><p>Happily, the title of this post says it all.  I created two blank sites on my development machine on port 80 with host headers, backed them both up, made changes to those sites.  When I restored, the changes were overwritten.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Mon, 21 Jul 2008 09:12:29 GMT</pubDate></item><item><title>SharePoint Backup Batch File</title><link>http://blog.bullseyeconsulting.com/archive/2008/07/18/sharepoint-backup-batch-file.aspx</link><guid>/archive/2008/07/18/sharepoint-backup-batch-file.aspx</guid><description><![CDATA[<div class="ExternalClassE317B0A53F684D099AB2AC660AED535C"><p>I have tweaked a quick backup method over several development projects.  This is the current iteration, and works well for my needs in both WSS and MOSS:
</p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set spSite=http://wss01
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set spPort=7022
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set FileNamePrefix=GFam
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set targetPath=C:\Projects\GFam\Backup</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set targetPath2=\\tsclient\C\Dox\Dev\GFam\Backup
</span></p><p>
 </p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set MONTH=%DATE:~4,2%
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set DAY=%DATE:~7,2%
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set YEAR=%DATE:~12,2%
</span></p><p>
 </p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set FileName=%targetPath%%FileNamePrefix%%spPort%_%YEAR%%MONTH%%DAY%.bak
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@set spURL=%spSite%:%spPort%
</span></p><p>
 </p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">c:
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">cd &quot;C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN&quot;
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">Stsadm -o backup -url %spURL% -filename %FileName% -overwrite
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">@if &quot;%targetPath2%&quot;==&quot;&quot; goto finish
</span></p><p>
 </p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">copy %FileName% %targetPath2%
</span></p><p>
 </p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">:finish
</span></p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">pause
</span></p><p>
 </p><p>This creates a file named something like GFam7022_080718.bak, based on the parameters at the top and the current date.  The params are
</p><ol><li>spSite – This is the domain of the SharePoint site
</li><li>spPort – This is the port.  If the URL does not need a port number, use 80 here.
</li><li>FileNamePrefix [optional] – A prefix can be a handy way quickly identifying the source site when browsing backup files.
</li><li>targetPath – This is where the file is backed up to.  It needs a closing backslash &quot;\&quot;
</li><li>targetPath2 [optional] – I am nearly always RDP'ed into a server for development, and sometimes I find it useful to copy the backup file to my local machine.  This could also be a file share or whatever.
</li></ol><p>To restore, use command line stsadm from in the 12-hive, e.g.,
</p><p><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">Stsadm -o restore -url http://gfam.com:7022 -filename C:\backups\GFam7022_080718.bak –overwrite
</span></p><p>Possible improvements 
</p><ol style="margin-left:38pt"><li>Instead of copying to targetPath2, set up a command-line FTP.  I currently FTP the backup to the production server by hand, but pretty soon we'll go completely live on the server after.  I wonder if it is possible to use <a>\\tsclient\c\</a>... to point back to the local machine for an input file to keep the login off the server, e.g.,<br><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">ftp -s://tsclient/c/dox/ftpLogin.in ftp.gfam.com<br></span>
		</li><li>Currently, I just create a new batch file for each new project.  I suppose I could parameterize it, and call a single instance of this batch file from another batch file, something like<br><span style="color:#7f7f7f;font-family:Consolas;font-size:10pt">call spBackup <a href="http://wss01">http://wss01</a> 7022 GFam ...<br></span>
		</li><li>Omit the &quot;http://&quot; from spSite, and default FileNamePrefix to its value.
</li></ol></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Fri, 18 Jul 2008 12:04:32 GMT</pubDate></item><item><title>WSS Pre-install Checklist</title><link>http://blog.bullseyeconsulting.com/archive/2008/07/17/wss-pre-install-checklist.aspx</link><guid>/archive/2008/07/17/wss-pre-install-checklist.aspx</guid><description><![CDATA[<div class="ExternalClassE4F8BAD2E4C24600B85006AB630BA866">
<p>Well, I got the family site up and running today on the internet, but it was not without incident. This was my first WSS install against SQL Server Express on the same machine. I had gone against SQL Server on the same machine as IIS before, but it had been a while. I answered Basic Standalone instead of advanced when running the config program, and had a couple of false starts before I finally got it going. </p>
<p>Here is my check list of Required Software and Settings before installation </p>
<ol>
<li>Windows 2003 Server (as of this writing, only x86 should be used because there is no Adobe IFilter for x64 which means that PDF's cannot be indexed. If PDF indexing and 64-bit is an absolute must, a pricey 3<sup>rd</sup>-party solution is available at <a href="http://www.foxitsoftware.com/pdf/ifilter/">Foxit</a>, and Adobe is also working on a presumably free solution.) </li>
<li>IIS 6.0 </li>
<li>
<div>WWW Services </div>
<ol>
<li>Remote Admin (optional) </li>
<li>WebDav Publishing </li>
<li>WWW </li></ol></li>
<li>Common Files </li>
<li>IIS Manager </li>
<li>SMTP </li>
<li>ASP.Net 2.0 Framework </li>
<li>Windows Workflow Foundation (installed via .Net Framework 3.0) </li>
<li>Allow ASP.Net in list of IIS Web Server Extensions </li>
<li>
<div>Determine Database Information: </div>
<ol>
<li>Name of db server and database name (just make sure the database name is not already being used) </li>
<li>
<div>Username and password for the database account that will be used to administer the server farm. </div>
<ol style="margin-left:45pt">
<li>This user must be a Windows user, not just a SQL Server login account </li>
<li>This should be a service account whose password does not change </li></ol></li></ol></li>
<li>
<div>Determine System Account information. Typically this is an Active Directory user with Administrator privileges on the SP server machine. </div>
<ol>
<li>This should be a service account whose password does not change </li></ol></li></ol>
<p><br>Before wiring in to SharePoint, I dabbled quite a bit with SharePoint-like <a href="http://www.dotnetnuke.com/">DotNetNuke</a>, so much so that when I got my new hosted server, I bought a license for and installed <a href="http://www.dotnetpanel.com/">DotNetPanel</a>, a web hosting front end which allows one to host many web and FTP sites, databases, mail, etc. with a web-based GUI front end. There is a way to set up a new customer and specify a domain for it without actually setting up the site. This creates the DNS entries, FTP logins and lets me use its GUI if I want to create email accounts. Once I was able to ping the server via the domain, proving the DNS entries were there, I created a new web application and a blank site in a new site collection. Then I restored a backup which I made from a nifty batch file that I wrote. </p>
<p>One little snag is that I set up the web app on a custom port on my new domain before remembering that the host provider closes most ports. I have extended it to an internet site on port 80 where everyone can see it, and where I may one day enable FBA. So now I can either ask the host provider to open the port up, or just extend the site once more to the &quot;extranet&quot; zone, and make a subdomain like <a href="http://admin.gfam.com">http://admin.gfam.com</a>. I guess I could just use port 80 for now, and if / when we go FBA, deal with it then.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AndyGett</dc:creator><pubDate>Thu, 17 Jul 2008 23:35:00 GMT</pubDate></item></channel></rss>