﻿<?xml version="1.0" encoding="UTF-8"?>
<!--Von RSS-Generator für Microsoft SharePoint Foundation am 20.06.2013 11:51:58 generiertes RSS -->
<?xml-stylesheet type="text/xsl" href="/_layouts/RssXslt.aspx?List=1d9a40b5-d004-4ace-8b09-2ba5b094501c" version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Isrichtig.de: Beiträge</title>
    <link>http://blog.isrichtig.de/Lists/Beitraege/AllPosts.aspx</link>
    <description>RSS-Feed für die Liste 'Beiträge'.</description>
    <copyright>info@isrichtig.de Copyright by Volker Helms</copyright>
    <managingEditor>info@isrichtig.de Volker Helms</managingEditor>
    <webMaster>info@isrichtig.de Volker Helms</webMaster>
    <lastBuildDate>Thu, 20 Jun 2013 09:51:58 GMT</lastBuildDate>
    <generator>RSS-Generator für Microsoft SharePoint Foundation</generator>
    <ttl>60</ttl>
    <language>de-DE</language>
    <image>
      <title>Isrichtig.de: Beiträge</title>
      <url>http://blog.isrichtig.de/_layouts/images/homepage.gif</url>
      <link>http://blog.isrichtig.de/Lists/Beitraege/AllPosts.aspx</link>
    </image>
    <item>
      <title>Find out all Databases used by SharePoint 2010</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=124</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassC506F97C4DCA4691924EE8CFF9B0B557"><p>​To find out all Databases used by SP2010 you only need a single PowerShell command:</p>
<p>Get-SPDatabase | Sort-Object Name | Format-Table Name<br /></p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 15.02.2013 08:29</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2010</category>
      <pubDate>Fri, 15 Feb 2013 07:30:40 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=124</guid>
    </item>
    <item>
      <title>Alternatives Formular für SharePoint Liste nutzen</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=123</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass43BDF37008C84E51B5389A3BEA8ED1A5"><p><br />Warum sollte man für eine SharePointliste unterschiedliche Eingabeformulare nutzen? Dies kann sinnvoll sein, wenn unterschiedliche Benutzergruppen unterschiedliche Eingabefelder zur Verfügung haben sollen. Dies wäre zum Beispiel bei einem Hotline Ticketsystem eine sinnvolle Idee. Auch kann man sich vorstellen, dass z.B. eine Maske für das erstellen und eine andere für die Bearbeitung notwendig werden kann. Dies ist mit dieser Variante möglich. Dazu wird zuerst eine List mit den entspechenden Feldern erstellt. Anschließend wird die Edit und die New Form in ein InfoPath Formular umgewandelt und nach den Vorstellungen angepasst (z.B. eine Ansicht für einem Mitarbeiter der einen Call eröffnen möchte). Dann wird eine weitere Ansicht in InfoPath erstellt. Diese wird nicht mit dern „Call eröffnen“ Ansicht verknüpft sondern bleibt einfach im Hintergrund. Die Ansicht wird später im InfoPath Form WebPart verwendet.<br />Damit auf die Ansicht (z.B. für den Hotlinemitarbeiter) nutzbar wird sind dann folgende Schitte zu tun:<br />Zuerst wird in einer WebPart Pages Bibliothek eine neue WebPart Seite erstellt.<br /><a href="/Lists/Beitraege/Attachments/123/image_2_4AC15005.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_4AC15005.png" width="692" height="70" /></a></p> <p>Anschließend wird diese Seite bearbeitet und folgende WebParts hinzugefügt:</p> <p><a href="/Lists/Beitraege/Attachments/123/image_4_4AC15005.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_1_4AC15005.png" width="694" height="281" /></a></p> <ul> <li>Query String Filter  <li>ListForm der zu verknüpfenden Liste  <li>Content Editor  <li>InfoPath Form</li></ul> <p>Die Reihenfolge ist hier wichtig.<br />Als nächstes werden ein paar Verbindungen zwischen den WebParts erstellt. Zuerst wird das Query String Filter WebPart mit dem ListForm WebPart verknüpft. Damit kann aus der URL z.B. der Querystring ?ItemID=1 ausgelesen und als Filterwert an das ListForm WebPart übergeben werden. Das ListForm WebPart z.B. die View wurde so konfiguriert, dass nur max 1 Element angezeigt wird. Dies ist wichtig um den zu ladenen Seiteninhalt möglichst klein zu halten. Das ListForm WebPart wird später nur zur Weitergabe der Itemdaten an das InfoPath Form WebPart benutzt. Daher können wir das ListForm WebPart auf Hidden stellen.<br /><strong>Hier die entsprechenden Bilder um die Verbindungen herzustellen:<br /></strong>Der erste Filter wird von dem Query String Filter zum ListForm WebPart aufgebaut.<br /><a href="/Lists/Beitraege/Attachments/123/image_6_4AC15005.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_2_4AC15005.png" width="691" height="130" /></a></p> <p>Die Verbindung Sendet den Wert to dem ListForm WebPart. In diesem Fall die ID des ListItems aus der Url. Das Query String WebPart wurde so konfiguriert.</p> <p><a href="/Lists/Beitraege/Attachments/123/image_8_4AC15005.png"><img 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" title="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_3_4AC15005.png" width="188" height="244" /></a></p> <p>Wichtig ist hier als Query String Parameter Name nicht ID sondern z.B. ItemID zu nutzen. ID scheint intern für etwas unbehagen zu sorgen beim Aufruf der Seite kommt ein Fehler „Item mit der ID xx not found“.</p> <p>Der fertig konfigurierte Filter nutzt dann diese Konfiguration.</p> <p><a href="/Lists/Beitraege/Attachments/123/image_10_4AC15005.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_4_4AC15005.png" width="357" height="179" /></a></p> <p>Als nächstes muss eine Verbindung zwischen dem InfoPath Form WebPart und dem ListForm WebPart hergestellt werden. Dazu muss das ListForm WebPart das komplette Item übergeben. Also nicht ein Wert und auch keine Reihe. Damit der Filter aufgebaut werden kann muss in diesem Fall von dem InfoPath Form WebPart aus gestartet werden. Das ListForm WebPart bietet die notwendige Konfiguration nicht an.  <p><a href="/Lists/Beitraege/Attachments/123/image_12_4AC15005.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_5_78AEA2BD.png" width="700" height="103" /></a>  <p>Weitere Konfiguration ist für die Verbindung nicht notwendig. In dem InfoPath Form WebPart können aber noch weitere Einstellungen vorgenommen werden.  <p><a href="/Lists/Beitraege/Attachments/123/image_14_78AEA2BD.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_6_78AEA2BD.png" width="190" height="348" /></a>  <p>Hier wird also die Liste ausgewählt mit der das Formular arbeiten soll. Es kann noch ein Content Type und verschieden andere Dinge konfiguriert werden.</p> <ul> <li>Display a read-only form:  <ul> <li>Das ist einfach – das Item wird als ViewForm angezeigt.</li></ul> <li>Show InfoPath Ribbon or toolbar:  <ul> <li>Wichtig wenn das Formular nicht read-only ist um das Formular zu beenden oder zu speichern.</li></ul> <li>Send data to connected Web Parts whenn page loads:  <ul> <li>Ist notwendig wenn das Formular Daten an ein anderes WebPart schicken soll. Z. B. wenn Infos aus dem Formular an eine andere Liste übergeben wird. In diesem Fall (ist ja umgekehrt) wäre der Haken nicht notwendig.</li></ul> <li>Views:  <ul> <li>Hier wird die View oder die Seite aus dem Formular ausgewählt. Dies ist meiner Meinung nach der wichtigste Punkt. In dem InfoPath Formular für eine Liste kann damit eine Default View für „normale“ User erstellt werden in der vielleicht nur ein paar Daten sichtbar sind. Durch dieses Formular können dann andere Anwender (Administratoren z.B.) zusätzliche Infos sehen oder eingeben. Siehe auch „Einleitungstext“.</li></ul> <li>Submit Behavior:  <ul> <li>Hier wird ausgewählt was passiert wenn das Formular abgeschickt wird. Das Formular geöffnet lassen oder schließen ist eine Möglichkeit. Wird das Formular geschlossen steht nach dem Klick auf „Senden“ der Text „The Form has been closed“ dort. Dies ist eher etwas unschön. Daher gibt es dazu gleich noch eine Erweiterung.<br />Erweiterung für „The Form has been closed“</li></ul></li></ul> <p>Damit diese Meldung nicht etwas unnütz auf der Seite stehen bleibt wird das CEWP benötigt. Dort wird folgender JavaScript Code eingetragen (Vielen Dank an <a href="http://shareapointkiran.blogspot.de/2011/12/infopath-form-redirect-to-any-page-once.html" target="_blank">Kiran Kumar Reddy</a>)</p> <p><font size="2" face="Courier New">&lt;script src=&quot;/_layouts/jquery-1.7.2.min.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;<br />$(document).ready(function(){<br />if($('#DialogFinalMessage').children().length&gt;0)<br />{<br />window.location.href = &quot;/redirurl&quot;;<br />}<br />});<br />&lt;/script&gt;</font></p> <p>Damit dies funktioniert ist allerdings jQuery notwendig. In diesem Fall wurde jQuery einfach mit ins Layoutverzeichnis kopiert. Falls jQuery bereits in der Masterpage verlinkt ist wäre dies hier natürlich nicht mehr notwendig.<br />Mit diesem Javascript wird, nachdem das Formular geschlossen wurde, auf die Startseite umgeleitet. Eventl. könnte man auch beim Aufruf der Formularseite einen weiteren Querystring mitgeben auf den die Umleitung dann erfolgen soll. Dies habe ich aber bisher noch nicht ausprobiert.<br />Soweit funktioniert das ganze nun schon ganz gut. Wir müssen aber noch in der Ursprungsliste eine gute Möglichkeit einbauen auf dieses Formular zuzugreifen. Dazu wechseln wir in den SharePoint Designer und öffnen unsere Website und die entsprechende List.<br /><a href="/Lists/Beitraege/Attachments/123/image_16_78AEA2BD.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_7_78AEA2BD.png" width="662" height="309" /></a></p> <p>Also zuerst in Lists and Libraries welchseln, die Liste auswählen und den Punkt „Custom Actions“ unten rechts genauer anschauen. Dort habe ich bereits eine Action „TopFields“ hinzugefügt. Um eine neu anzulegen wird „New“ angeklickt.  <p><a href="/Lists/Beitraege/Attachments/123/image_18_78AEA2BD.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_8_78AEA2BD.png" width="367" height="302" /></a>  <p><a href="/Lists/Beitraege/Attachments/123/image_20_78AEA2BD.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_9_78AEA2BD.png" width="366" height="128" /></a></p> <p>Der Name ist der Name der später im SharePoint angezeigt wird. Mit Navigate to Url kann eine Url mit den entsprechenden Variablen angesprochen werden. Button Image ist ein Bild was im SharePoint mit angezeigt wird. Über RightsMask kann der Link für Benutzer mit weniger Rechten ausgeblendet werden und über die Sequence number wird die Reihenfolge der Elemente verändert. Nachdem man auf OK geklickt hat sieht man noch das das Elment als „List Item Menu“ angelegt wurde. Das heißt, das es im ECB auftaucht. Über „Custom Action“ im Ribbon können noch andere Orte festgelegt werden.  <p>Das Ergebnis sieht dann so aus:  <p><a href="/Lists/Beitraege/Attachments/123/image_22_78AEA2BD.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/123/image_thumb_10_78AEA2BD.png" width="542" height="143" /></a>  <p>Beim Klick auf TopFields wird auf die neue Formularseite weitergeleitet.</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 07.08.2012 11:06</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_10_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_10_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_12_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_12_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_14_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_14_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_16_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_16_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_18_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_18_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_2_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_2_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_20_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_20_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_22_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_22_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_4_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_4_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_6_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_6_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_8_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_8_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_1_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_1_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_10_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_10_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_2_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_2_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_3_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_3_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_4_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_4_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_4AC15005.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_4AC15005.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_5_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_5_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_6_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_6_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_7_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_7_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_8_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_8_78AEA2BD.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_9_78AEA2BD.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/123/image_thumb_9_78AEA2BD.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2010</category>
      <pubDate>Tue, 07 Aug 2012 09:06:22 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=123</guid>
    </item>
    <item>
      <title>How to update Fieldvalues from other Field in your own BaseFieldControl</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=122</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassF8033992715F44D6A3E1467FA017D397">
<p>Hi,</p>
<p>today I have the problem with my custom LookupField. The LookupField uses its own field and another lookupfield from the list. The other field ist not visible in the normal edit form. So i must set the value from the other lookupfield in my basefieldcontrol code. How to do this:</p><font color="#0000ff" size="2"><font color="#0000ff" size="2">
<p>public</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">override</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">void</font></font><font size="2"> UpdateFieldValueInItem()</p>
<p>{</p>
<p></font><font color="#0000ff" size="2"><font color="#0000ff" size="2">if</font></font><font size="2"> (Some logic if the value is a good value</font><font size="2">)<br />{<br /></font><font color="#008000" size="2"><font color="#008000" size="2">//save the parent value<br /></font></font><font color="#0000ff" size="2"><font color="#0000ff" size="2">var</font></font><font size="2"> lookupValue = </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">new</font></font><font size="2"> </font><font color="#2b91af" size="2"><font color="#2b91af" size="2">SPFieldLookupValue</font></font><font size="2">(</font><font color="#0000ff" size="2"><font color="#0000ff" size="2">int</font></font><font size="2">.Parse(_ParentDropdown.SelectedItem.Value), _ParentDropdown.SelectedItem.Text);<br /></font><font color="#2b91af" size="2"><font color="#2b91af" size="2">SPField</font></font><font size="2"> parentField = ListItem.Fields.GetFieldByInternalName(CurrentItemParentFieldName);<br /></font><font color="#2b91af" size="2"><font color="#2b91af" size="2">BaseFieldControl</font></font><font size="2"> parentRenderControl = parentField.FieldRenderingControl;<br />parentRenderControl.Value = lookupValue;<br />parentRenderControl.UpdateFieldValueInItem();</p>
<p>Value = </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">string</font></font><font size="2">.Format(</font><font color="#a31515" size="2"><font color="#a31515" size="2">&quot;{0};#{1}&quot;</font></font><font size="2">, _ChildDropdown.SelectedItem.Value, _ChildDropdown.SelectedItem.Text);<br />}<br /></font><font color="#0000ff" size="2"><font color="#0000ff" size="2">base</font></font><font size="2">.UpdateFieldValueInItem();<br />}</p></font>
<p>The differences between Value and ItemFieldValue can be found <a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webcontrols.basefieldcontrol.itemfieldvalue.aspx">here</a>.</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 18.04.2012 08:42</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007; SharePoint 2010</category>
      <pubDate>Wed, 18 Apr 2012 06:35:30 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=122</guid>
    </item>
    <item>
      <title>CopyUpsProps Tool to export or import UPS Properties</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=121</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassB069D1836ED74C828813837D0726FFA8">
<p>Hi together,</p>
<p>often you have different farms in your company. Maybe one test farm, an integration farm and a productive farm. So, before you go productive you configure your user profile properties in the user profile service. You add some props and modify the order of the properties. These needs much time because you can only move one prop one step up or down. If you want to move 10 steps up you must click the up button 10 times and every click need a couple of seconds. Not so funny to configure. So I have written a little tool to export your configuration and import it to another farm. OK, you must configure die Properties one time to create a master configuration. But then export it and if needed import it to another farm.</p>
<p>How to use the Tool:</p><pre class="csharpcode">CopyUPSProps.exe http://siteurlofonewebapp &quot;AD <span class="kwrd">Connection</span> Name&quot; -import|-export&quot;</pre>
<p>The AD Connection Name is the Connection Name from the User Profile Service.<pre></pre>
<p><a href="/Lists/Beitraege/Attachments/121/image_2_1C8CB917.png"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/121/image_thumb_1C8CB917.png" width="513" height="167" /></a></p>
<p>If the tool can’ t find the AD connection name it will ask you if you want to continue.</p>
<p><a href="/Lists/Beitraege/Attachments/121/image_14_00C55E2E.png"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/121/image_thumb_6_00C55E2E.png" width="453" height="122" /></a></p>
<p>Sometimes the tool can’t find the connection, because your user have not the correct ups permissions. Please Check the Administrators and the Permissions of the User Profile Services.</p>
<p><a href="/Lists/Beitraege/Attachments/121/image_6_1C8CB917.png"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/121/image_thumb_2_1C8CB917.png" width="451" height="280" /></a></p>
<p>What does the tool? If you use the –export option the tool will create a xml file with the ups properties.</p>
<p>Here you can see an Example:</p>
<p><a href="/Lists/Beitraege/Attachments/121/image_8_1C8CB917.png"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/121/image_thumb_3_1C8CB917.png" width="449" height="258" /></a></p>
<p>You can take a look at the file and see what happens. Most of the properties are written out to the file. With the –import option you can then import this xml file to another SharePoint Farm.The tool does not delete properties that are on the import farm and not on the export farm. The tool updates all properties if they are different. But some property values can’t be updated after the creation. In this situation the tool gives you no info. It simply does not change the value. Properties that are not available on the Import Farm will be created. If the tool can’t find the AD Connection and you have answered with “Yes” to continue, the tool does not configure the AD Connection value.</p>
<p>This tool is in beta status. So please test it before using it on a productive system. Please report any errors or if you have an improvement.</p>
<p>If you see an error like this check the permissions of the user. The user must have permissions on the site, user profile service and the user profile connections (see screenshot above).</p>
<p><a href="/Lists/Beitraege/Attachments/121/image_12_00C55E2E.png"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/121/image_thumb_5_00C55E2E.png" width="442" height="221" /></a></p>
<p><a title="CopyUPSProps.zip" href="/Downloads/CopyUPSProps.zip" target="_blank">Download</a></p>
<p>Hope this tool helps to save some time.</p>
<p>Volker</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 10.04.2012 21:22</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_10_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_10_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_12_00C55E2E.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_12_00C55E2E.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_14_00C55E2E.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_14_00C55E2E.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_2_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_2_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_4_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_4_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_6_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_6_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_8_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_8_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_1_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_1_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_2_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_2_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_3_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_3_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_4_1C8CB917.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_4_1C8CB917.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_5_00C55E2E.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_5_00C55E2E.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_6_00C55E2E.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/121/image_thumb_6_00C55E2E.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2010</category>
      <pubDate>Tue, 10 Apr 2012 18:10:57 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=121</guid>
    </item>
    <item>
      <title>How to configure Task List with "Send e-mail..." attribute</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=119</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass6B341B80305D42FAB27889140847BD70">You have a list definition with inherits from a task list or you use a list instance with the customschema attribute in your solution and you want to activate the &quot;Send e-mail when ownership is assigned&quot; property for a list. So what todo in the schema.xml file to get this property activated?

This is really simple. You only have to add the EmailAssignTo=&quot;TRUE&quot; attribute to the &lt;List .../&gt; tag.

Hope this helps,
Volker</div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 22.03.2012 12:18</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007; SharePoint 2010</category>
      <pubDate>Thu, 22 Mar 2012 11:24:07 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=119</guid>
    </item>
    <item>
      <title>SharePoint Export Users and Groups with Excel</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=117</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassF7B430DA47EE427CBCD73A3EF33563FA"> <p>Hello,</p> <p>yesterday i have to export a user list from a SharePoint site collection. So how can i do this task without programming?</p> <p>Here we go. First open the Site Collection in Internet Explorer and browse to Site Settings/ People and Groups. Switch to one group (it is not important which group) an copy the url to clipboard. Next open Excel 2010 and go to the Data Tab. Click “From Web”</p> <p><a href="/Lists/Beitraege/Attachments/117/clip_image002_2_45B038FB.jpg"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="clip_image002" border="0" alt="clip_image002" src="/Lists/Beitraege/Attachments/117/clip_image002_thumb_45B038FB.jpg" width="349" height="257" /></a></p> <p>Next, a new window opens and you can paste your url. You will get something like this:</p> <p><a href="/Lists/Beitraege/Attachments/117/image_2_01431FE9.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/117/image_thumb_01431FE9.png" width="352" height="265" /></a></p> <p>You can select every table in this window. We want to select the users and groups table:</p> <p><a href="/Lists/Beitraege/Attachments/117/clip_image00211_45B038FB.jpg"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="clip_image002[11]" border="0" alt="clip_image002[11]" src="/Lists/Beitraege/Attachments/117/clip_image00211_thumb_45B038FB.jpg" width="351" height="189" /></a></p> <p>Next, click Import:</p> <p><a href="/Lists/Beitraege/Attachments/117/clip_image00213_45B038FB.jpg"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="clip_image002[13]" border="0" alt="clip_image002[13]" src="/Lists/Beitraege/Attachments/117/clip_image00213_thumb_45B038FB.jpg" width="244" height="142" /></a></p> <p><a href="/Lists/Beitraege/Attachments/117/clip_image00215_45B038FB.jpg"><img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px" title="clip_image002[15]" border="0" alt="clip_image002[15]" src="/Lists/Beitraege/Attachments/117/clip_image00215_thumb_45B038FB.jpg" width="453" height="202" /></a></p> <p>Now we have a list with all users and groups from this site collection.</p> <p>Volker</p></div></div>
<div><b>Veröffentlicht:</b> 03.02.2012 08:25</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image002_2_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image002_2_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image002_thumb_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image002_thumb_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00211_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00211_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00211_thumb_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00211_thumb_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00213_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00213_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00213_thumb_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00213_thumb_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00215_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00215_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00215_thumb_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image00215_thumb_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image0029_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image0029_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image0029_thumb_45B038FB.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/clip_image0029_thumb_45B038FB.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/image_2_01431FE9.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/image_2_01431FE9.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/image_thumb_01431FE9.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/117/image_thumb_01431FE9.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Fri, 03 Feb 2012 07:25:19 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=117</guid>
    </item>
    <item>
      <title>Uploading files using Client Object Model in SharePoint 2010</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=118</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C"><p>I want to upload a file through the COM to a document library in SharePoint 2010. So I used something like this:</p> <div class="csharpcode"><pre class="alt"><span class="lnum">   1:  </span>ClientContext context = <span class="kwrd">new</span> ClientContext(<span class="str">&quot;http://blog.isrichtig.de&quot;</span>);</pre><pre><span class="lnum">   2:  </span>Web web = context.Web;</pre><pre class="alt"><span class="lnum">   3:  </span>List list = web.Lists.GetByTitle(<span class="str">&quot;Shared Documents&quot;</span>);</pre><pre><span class="lnum">   4:  </span>FileCreationInformation uploadFile = <span class="kwrd">new</span> FileCreationInformation();</pre><pre class="alt"><span class="lnum">   5:  </span> </pre><pre><span class="lnum">   6:  </span><span class="kwrd">string</span> fileCompletePath = <span class="str">@&quot;C:\Temp\MyDoc.docx&quot;</span>;</pre><pre class="alt"><span class="lnum">   7:  </span><span class="kwrd">string</span> fileName = Path.GetFileName(fileCompletePath);</pre><pre><span class="lnum">   8:  </span> </pre><pre class="alt"><span class="lnum">   9:  </span>var uploadFile = <span class="kwrd">new</span> FileCreationInformation</pre><pre><span class="lnum">  10:  </span>{</pre><pre class="alt"><span class="lnum">  11:  </span>  Content = File.ReadAllBytes(fileCompletePath),</pre><pre><span class="lnum">  12:  </span>  Url = <span class="kwrd">string</span>.Join(<span class="str">&quot;/&quot;</span>, <span class="kwrd">new</span>[] { docList.ListUrl, fileName })</pre><pre class="alt"><span class="lnum">  13:  </span>};</pre><pre><span class="lnum">  14:  </span> </pre><pre class="alt"><span class="lnum">  15:  </span>var uploadFile = list.RootFolder.Files.Add(uploadFile);</pre><pre><span class="lnum">  16:  </span> </pre><pre class="alt"><span class="lnum">  17:  </span>context.Load(uploadFile);</pre><pre><span class="lnum">  18:  </span>context.ExecuteQuery();</pre></div>
<style>
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode, .ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode pre
{margin:0em;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .rem
{color:#008000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .kwrd
{color:#0000ff;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .str
{color:#006080;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .op
{color:#0000c0;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .preproc
{color:#cc6633;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .asp
{background-color:#ffff00;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .html
{color:#800000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .attr
{color:#ff0000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .lnum
{color:#606060;}
</style>


<p>But after some testing I get an error if the file size is above 3MB. The error message is “(400) Bad Request”. So what happens here? The file is encoded in BASE64 and the ClientContext has some limitations in the messagesize. I found a good explanation <a href="http://blogs.msdn.com/b/sridhara/archive/2010/03/12/uploading-files-using-client-object-model-in-sharepoint-2010.aspx" target="_blank">here</a>.</p>
<p>So what can we do to upload the file without an errormessage? We have 2 possibilities:</p>
<p>1.) We modify the messagesize:</p>
<div class="csharpcode"><pre class="alt"><span class="lnum">   1:  </span>SPWebService ws = SPWebService.ContentService;</pre><pre><span class="lnum">   2:  </span>SPClientRequestServiceSettings clientSettings = ws.ClientRequestServiceSettings;</pre><pre class="alt"><span class="lnum">   3:  </span>clientSettings.MaxReceivedMessageSize = 10485760;</pre><pre><span class="lnum">   4:  </span>ws.Update();</pre></div>
<style>
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode, .ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode pre
{margin:0em;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .rem
{color:#008000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .kwrd
{color:#0000ff;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .str
{color:#006080;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .op
{color:#0000c0;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .preproc
{color:#cc6633;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .asp
{background-color:#ffff00;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .html
{color:#800000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .attr
{color:#ff0000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .lnum
{color:#606060;}
</style>


<p>2. We use a different type of file uploading:</p>
<div class="csharpcode"><pre class="alt"><span class="lnum">   1:  </span><span class="kwrd">string</span> fileCompletePath = <span class="str">@&quot;C:\Temp\MyDoc.docx&quot;</span>;</pre><pre><span class="lnum">   2:  </span><span class="kwrd">string</span> fileName = Path.GetFileName(fileCompletePath);</pre><pre class="alt"><span class="lnum">   3:  </span><span class="kwrd">string</span> listUrl = <span class="str">@&quot;/Shared Documents&quot;</span>;</pre><pre><span class="lnum">   4:  </span>ClientContext context = <span class="kwrd">new</span> ClientContext(<span class="str">&quot;http://blog.isrichtig.de&quot;</span>);</pre><pre class="alt"><span class="lnum">   5:  </span><span class="kwrd">using</span> (FileStream fs = <span class="kwrd">new</span> FileStream(fileCompletePath, FileMode.Open))</pre><pre><span class="lnum">   6:  </span>{</pre><pre class="alt"><span class="lnum">   7:  </span>    Microsoft.SharePoint.Client.File.SaveBinaryDirect(context, <span class="kwrd">string</span>.Join(<span class="str">&quot;/&quot;</span>, <span class="kwrd">new</span>[] { listUrl, fileName }), fs, <span class="kwrd">true</span>);</pre><pre><span class="lnum">   8:  </span>}</pre></div>
<style>
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode, .ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode pre
{margin:0em;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .rem
{color:#008000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .kwrd
{color:#0000ff;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .str
{color:#006080;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .op
{color:#0000c0;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .preproc
{color:#cc6633;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .asp
{background-color:#ffff00;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .html
{color:#800000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .attr
{color:#ff0000;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClassDBCF9E5ECCE3464888A7E4D1D3AD540C .csharpcode .lnum
{color:#606060;}
</style>


<p> </p>
<p>Once again many thanks to <a href="http://blogs.msdn.com/b/sridhara/archive/2010/03/12/uploading-files-using-client-object-model-in-sharepoint-2010.aspx" target="_blank">sridhara2</a> for helping me understanding the problem.</p>
<p>Volker</p></div></div>
<div><b>Veröffentlicht:</b> 03.02.2012 08:56</div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Fri, 03 Feb 2012 07:56:47 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=118</guid>
    </item>
    <item>
      <title>Easy WSP deployment</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=116</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass0181A6E7007541529EE4363C8C3F1D3E">
<div>I have created a regfile and 2 batchfiles for easy wsp solution deployment on a SharePoint server. The regfile will add 2 context menu entries in the windows explorer. The batchfiles must be placed in the SharePoint BIN folder in the 14 hive.</div>
<div> </div>
<div><a href="/Downloads/WspDeployment.zip">Download</a></div>
<div> </div>
<div>Happy deploying,</div>
<div>Volker</div>
<div> </div>
<div>Screenshot:</div><img border="0" alt="2012-01-06 09h37_20.png" src="/Lists/Fotos/2012-01-06%2009h37_20.png" /></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 06.01.2012 09:48</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007; SharePoint 2010</category>
      <pubDate>Fri, 06 Jan 2012 08:47:02 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=116</guid>
    </item>
    <item>
      <title>Error – Failed to get value of the "ColumnName" column from the "Managed Metadata" field type control. See details in log. Exception message: Invalid field name. {GUID}</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=115</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass5B874A4DCB294370863A9F7A364D3189">
<div>Yesterday I get this error message if I want to save an Publishing Page with an ContentType containing a Managed Metadatacolumn. After some googling I found some nice info's from <a href="http://www.sharepointconfig.com/2011/03/the-complete-guide-to-provisioning-sharepoint-2010-managed-metadata-fields/">Ari Bakker</a>.</div>
<div>The problem occurs because the Managed Metadata Column creates an additional field named MMdColumnName_0 from type Note. In the Metadata Column the Notecolumn is mapped through the TextField Property. If the TextField Property is empty or has the wrong guid the error occours. So if the error occurs please compare the guid with the ID from the Notecolumn via SPM2010 (The column is hidden) and corret the guid. If the Note column is not availible please add the Column to the list or the content type and correct the guid in the metadata column.</div>
<div> </div>
<div>Volker</div></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 22.11.2011 10:38</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2010</category>
      <pubDate>Tue, 22 Nov 2011 09:46:17 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=115</guid>
    </item>
    <item>
      <title>Get ID from Term to Filter Managed Metadata Field</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=114</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass211E3A99F8C64AC78AC466307C7513BE"><p>Hi,<br />today, I have to find out the ID from a term to filter a Managed Metadata field with url parameters (listviewwebpart). The term itself gives me an id. So how to find out the assigned id. First, important to know is, the spweb has a hidden list named “taxonomyhiddenlist”. The list contains items which are associated with the terms.</p> <p>So I googled a little bit and find this nice page from <a href="http://pholpar.wordpress.com/2010/02/03/some-words-about-taxonomyfieldvalue-and-its-wssid-property/" target="_blank">Peter Holpar</a> who has written the necessary code. I have optimized the code a litte bit.</p><pre class="csharpcode">        <span class="kwrd">public</span> <span class="kwrd">static</span> <span class="kwrd">int</span> GetWssIdByTermId(SPWeb rootWeb, Guid termId)
        {
           <span class="kwrd">int</span> result = -1;
           <span class="kwrd">if</span> (rootWeb.Properties.ContainsKey(<span class="str">&quot;TaxonomyHiddenList&quot;</span>))
           {
              var taxonomyHiddenListId = <span class="kwrd">new</span> Guid(rootWeb.Properties[<span class="str">&quot;TaxonomyHiddenList&quot;</span>]);
              SPList taxonomyHiddenList = rootWeb.Lists[taxonomyHiddenListId];
              var query = <span class="kwrd">new</span> SPQuery {Query = String.Format(<span class="str">@&quot;&lt;Where&gt;&lt;Eq&gt;&lt;FieldRef Name='IdForTerm' /&gt;&lt;Value Type='Text'&gt;{0}&lt;/Value&gt;&lt;/Eq&gt;&lt;/Where&gt;&quot;</span>, termId)};
              SPListItemCollection items = taxonomyHiddenList.GetItems(query);
              <span class="kwrd">if</span> (items.Count == 1)
              {
                 result = <span class="kwrd">int</span>.Parse(items[0][<span class="str">&quot;ID&quot;</span>].ToString());
              }
           }
           <span class="kwrd">return</span> result;
        }<style>
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode, .ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode pre
{margin:0em;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .rem
{color:#008000;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .str
{color:#006080;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .op
{color:#0000c0;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .preproc
{color:#cc6633;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .html
{color:#800000;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .attr
{color:#ff0000;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass211E3A99F8C64AC78AC466307C7513BE .csharpcode .lnum
{color:#606060;}
</style></pre>
<p>Volker</p></div></div>
<div><b>Veröffentlicht:</b> 28.10.2011 15:11</div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Fri, 28 Oct 2011 13:11:49 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=114</guid>
    </item>
    <item>
      <title>SetUrlParameter</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=113</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass59FF082FAED445DD904E76F1D15D2505">
<p>This Codesnippet sets or adds an Url Parameter to a string.</p><pre class="csharpcode">        <span class="kwrd">public</span> <span class="kwrd">static</span> <span class="kwrd">string</span> SetUrlParameter(<span class="kwrd">string</span> url, <span class="kwrd">string</span> key, <span class="kwrd">string</span> <span class="kwrd">value</span>)
        {
            <span class="rem">// find url parameter and replace or add if not availible</span>
            var startIndex = url.IndexOf(<span class="str">&quot;?&quot;</span>) + 1;
            <span class="kwrd">if</span> (startIndex == 0)
            {
                <span class="kwrd">return</span> <span class="kwrd">string</span>.Format(<span class="str">&quot;{0}?{1}={2}&quot;</span>, url, key, <span class="kwrd">value</span>);
            }
            var oldQueryString = url.Substring(startIndex);
            var queryParameters = HttpUtility.ParseQueryString(oldQueryString);
            queryParameters[key] = <span class="kwrd">value</span>;
            <span class="kwrd">return</span> url.Substring(0, startIndex) + queryParameters;
        }</pre>
<style>
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode, .ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode pre
{margin:0em;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .rem
{color:#008000;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .str
{color:#006080;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .op
{color:#0000c0;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .preproc
{color:#cc6633;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .html
{color:#800000;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .attr
{color:#ff0000;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass59FF082FAED445DD904E76F1D15D2505 .csharpcode .lnum
{color:#606060;}
</style>
</div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=13&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=13&RootFolder=*">Asp.net</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=14&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=14&RootFolder=*">Codesnippet</a></div>
<div><b>Veröffentlicht:</b> 28.10.2011 11:06</div>
]]></description>
      <author>Volker Helms</author>
      <category>Asp.net; Codesnippet</category>
      <pubDate>Fri, 28 Oct 2011 09:06:19 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=113</guid>
    </item>
    <item>
      <title>RDP Zugriff Windows 2008R2: gleicher User – 2 Sessions</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=112</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass550B19ABFCFA4E13B997F6D232711752"><p>Unter Windows 2008R2 hat sich das Verhalten bei der Benutzung von RDP Sessions etwas geändert. Unter 2003 konnte man sich mit einem Anwender durchaus mehrfach anmelden (z.B. einmal an die Konsole und ein weiteres mal als Session). Unter 2008R2 wird für jeden User immer nur eine Session erstellt. Nutzt man einen Admin Account um den Server zu administrieren kommt es nun häufig vor, dass man dem netten Kollegen nebenan die Session klaut. Dies kann auf 2 unterschiedlichen Wegen wieder geändert werden, sodass sich der Server wie unter 2003 verhält.</p> <p>1.</p> <p>In dieser Variante kann einfach eine Gruppenrichtlinie erstellt werden, die das alte Verhalten wiederherstellt. Falls man keine globalen Gruppenrichtlinien konfigurieren, oder das Verhalten nur auf einem einzelnen Server nutzten möchte kann die Einstellung auch in der Lokalen Richtlinie eingestellt werden. Hier dazu ein Bild:</p> <p><a href="/Lists/Beitraege/Attachments/112/clip_image001_2_5D199C01.jpg"><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="clip_image001" border="0" alt="clip_image001" src="/Lists/Beitraege/Attachments/112/clip_image001_thumb_5D199C01.jpg" width="707" height="467" /></a></p> <p>Der Eintrag heißt “Restrict Remote Desktop Services users to a single Remote Desktop Services Session”.</p> <p>2.</p> <p>Bei der zweiten Variante wird die Einstellung direkt über die Remote Desktop Connection Konfiguration durchgeführt. Dazu einfach unter Start in das Suchfeld &quot;Remote Desktop Session Host Configuration&quot; eingeben und im Fenster den Punkt &quot;Restrict each user to a single session&quot; Doppelklicken und entsprechend ändern. Hier ein Bild dazu:</p> <p><a href="/Lists/Beitraege/Attachments/112/clip_image0016_5D199C01.jpg"><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="clip_image001[6]" border="0" alt="clip_image001[6]" src="/Lists/Beitraege/Attachments/112/clip_image0016_thumb_5D199C01.jpg" width="511" height="266" /></a></p> <p>Gruß,<br />Volker</p></div></div>
<div><b>Veröffentlicht:</b> 17.10.2011 12:04</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image001_2_5D199C01.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image001_2_5D199C01.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image001_thumb_5D199C01.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image001_thumb_5D199C01.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image0016_5D199C01.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image0016_5D199C01.jpg</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image0016_thumb_5D199C01.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/112/clip_image0016_thumb_5D199C01.jpg</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Mon, 17 Oct 2011 10:04:24 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=112</guid>
    </item>
    <item>
      <title>SharePoint Databaseattach - Site Collection fehlt</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=111</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">Hallo,</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">heute hatte ich das Problem, dass ich ein SQL Datenbankbackup zurückgespielt hatte und diese ContentDB an eine WebApplication gehängt hatte. Dort sind dann 3 von 4 Site Collection aufgetaucht. Eine hat gefehlt. Blöderweise war das genau die wichtige Site Collection. Also einmal in das SharePointLog geschaut und folgende Einträge gefunden:</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7"> </div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">SqlError: 'Violation of PRIMARY KEY constraint 'PK_SiteMap'. Cannot insert duplicate key in object 'dbo.SiteMap'. The duplicate key value is (43997c8a-697c-4069-a3b2-fb195be6ed6a, 0x).' Source: '.Net SqlClient Data Provider' Number: 2627 State: 1 Class: 14 Procedure: 'proc_putSiteMap' LineNumber: 17 Server: 'server01'</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">und</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">The site named /sites/test and with id 43997c8a-697c-4069-a3b2-fb195be6ed6a was found in the content database WSS_Content_01 in the database server server01. However, the following error was reported while adding a mapping to this site to the configuration database. Operation is not valid due to the current state of the object.</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7"> </div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">Wie ich feststellen konnte sind diese beiden Fehler mit der gleichen Guid verknüpft - also haben die etwas mit einander zu tun. Bloß was? Nach einer kleinen Grübelrunde bin ich darauf gekommen.</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">Das System ist ein DEV System und um die Entwicklungsumgebung als Testsystem (für Anwender) zur Verfügung zu stellen sollte die Site Collection erneut zum SharePoint hinzugefügt werden.</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">Nutze ich stsadm -o backup/ restore funktioniert das ja wenn die beiden Seiten in unterschiedlichen Datenbanken liegen. In der gleichen Datenbank klappt es nicht, da sonst eine ID doppelt wäre. In meinem Fall wurde aber nicht stsadm genutzt sondern das SQL Backup.</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">Dadurch haben wir eine 1:1 Kopie. Wie es aussieht kommt es dann zu den oben genannten Fehlern und die Site Collection wird in der CA nicht angezeigt. Stsadm verändert beim Restore also einige Werte, sodass das zurückspielen funktioniert.</div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7"> </div>
<div class="ExternalClassE89B203E68A743A98D4C6C4D113B77B7">Gruß, Volker</div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 12.10.2011 13:33</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007; SharePoint 2010</category>
      <pubDate>Wed, 12 Oct 2011 11:40:26 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=111</guid>
    </item>
    <item>
      <title>Visual Studio Einstellungen &amp; Extensions sichern/ synchronisieren</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=110</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassB712CEC911DA4ABE871E389DA1FDFBE4"><p>Wer das Visual Studio, so wie ich, auf mehreren Rechnern nutzt, hat wahrscheinlich auch das Problem, dass entweder die Einstellungen unterschiedlich sind oder man die passende Extension wieder nicht installiert hat. Ich habe dazu einmal ein wenig im Internet herumgesucht und folgende Lösung gefunden:</p> <p><a href="http://www.sadev.co.za/content/pepper-visual-studio-settings-synchronisation-backup-extension" target="_blank">Pepper</a> ist eine Extension von Robert MacLean. Die Extension ist noch nicht so alt und kann eventl. noch ein paar Probleme verursachen – bei mir hat aber alles gut funktioniert. Nachdem die Extension installiert und VS 2010 neu gestartet wurde kann im Tools Menü der Punkt “Peppers: VS Settings Backup and Sync” aufgerufen werden. Im Popup Fenstern können dann die Einstellungen hoch- oder runtergeladen werden. Die Einstellungen selbst werden in Windows Azure von Robert gespeichert. Falls man beim hochladen noch keinen Account hat kann man diesen einfach durch Eingabe einer Mailadresse und eines Kennworts erstellen. Beim Download müssen dann die gleichen Werte genutzt werden.</p> <p><a href="/Lists/Beitraege/Attachments/110/2011-07-29-08h15_11_2_3AA29B92.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="2011-07-29 08h15_11" border="0" alt="2011-07-29 08h15_11" src="/Lists/Beitraege/Attachments/110/2011-07-29-08h15_11_thumb_3AA29B92.png" width="323" height="183" /></a></p> <p><a href="http://dotnetsurfers.com/blog/2011/03/14/extensionsync-a-visual-studio-extension-to-synchronize-other-extensions/" target="_blank">ExtensionSync</a> ist dann das zweite Tool mit dem die Extensions zwischen Visual Studio Installationen synchronisiert werden können. Das Tool speichert die momentan installierten Extensions in einer XML Datei ab. Der Pfad in der die XML Datei abgelegt wird kann über Tools/ Optionen/ ExtensionSync konfiguriert werden. Das Tool arbeitet dann so, dass beim Beenden von VS die Extensions in der XML Datei abgelegt werden und beim Starten die Extensions überprüft und fehlende geladen werden. Ich habe nun diese XML Datei auf meinen Dropbox Folder gelegt und synchronisiere die Extensions so zwischen verschiedenen Installation.</p> <p>Gruß,<br />Volker</p></div></div>
<div><b>Veröffentlicht:</b> 29.07.2011 08:19</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/110/2011-07-29-08h15_11_2_3AA29B92.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/110/2011-07-29-08h15_11_2_3AA29B92.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/110/2011-07-29-08h15_11_thumb_3AA29B92.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/110/2011-07-29-08h15_11_thumb_3AA29B92.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Fri, 29 Jul 2011 06:19:24 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=110</guid>
    </item>
    <item>
      <title>SharePoint: Last Modified or Editor Field</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=109</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass47FD628195FF479EB8A3C9C2F78302B8"><p>SharePoint has 2 different Last Modified fields. If you write some code and use one of these 2 fields you must ensure that you use the correct one. Here is a screenshot with both field values:</p> <p><a href="/Lists/Beitraege/Attachments/109/image_2_6C7D147B.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="image" border="0" alt="image" src="/Lists/Beitraege/Attachments/109/image_thumb_6C7D147B.png" width="591" height="488" /></a></p> <p>As you can see we have the SHAREPOINT\system account in the Modified_x0020_By field and a testaccount (named Muster, Max) in the Editor field. IMHO the Modified_x0020_By field is changed after you modify the item or document (I mean you must change the item properties). The Editor field is also changed if you only open the item in Editmode and click “OK” without modifying the item.</p></div></div>
<div><b>Veröffentlicht:</b> 01.06.2011 12:54</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/109/image_2_6C7D147B.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/109/image_2_6C7D147B.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/109/image_thumb_6C7D147B.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/109/image_thumb_6C7D147B.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Wed, 01 Jun 2011 10:55:00 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=109</guid>
    </item>
    <item>
      <title>SharePoint Modified Field cannot be used in Calculated Field</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=108</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass31AA0609807647B6AEE4C961BDF4C0D7"><p>Today I have to find out why the “Modified” field cannot be used in a calculate field. I found out that the field is configured as hidden. Why the &quot;Modified&quot; field is hidden - I don't know. I want to make it visible again. So I use the SPM to set the hidden value to false. But I get an exception because the value cannot changed. To change the value I have to set the &quot;CanToggleHidden&quot; value to true. I take a look at this and... can't change it because SPM greyed out this value. So I have to search for another hint. I found out that some Powershellscript helps: <pre class="csharpcode">$site = Get-SPSite http:<span class="rem">//test-local.com</span>
$web = $site.OpenWeb(<span class="str">&quot;/NameOfWeb&quot;</span>)
$list = $web.Lists[<span class="str">&quot;Pages&quot;</span>]
$field = $list.Fields[<span class="str">&quot;Modified&quot;</span>]
$type = $field.GetType();
$mi = $type.GetMethod(<span class="str">&quot;SetFieldBoolValue&quot;</span>, [reflection.bindingflags]<span class="str">&quot;nonpublic,instance&quot;</span>);
$a = <span class="str">&quot;CanToggleHidden&quot;</span>, $<span class="kwrd">true</span>
$mi.Invoke($field, $a);
$field.Update();
$field.Hidden = $<span class="kwrd">false</span>
$field.Update();
</pre>
<style>
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode, .ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode pre
{margin:0em;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .rem
{color:#008000;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .str
{color:#006080;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .op
{color:#0000c0;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .preproc
{color:#cc6633;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .html
{color:#800000;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .attr
{color:#ff0000;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass31AA0609807647B6AEE4C961BDF4C0D7 .csharpcode .lnum
{color:#606060;}
</style></div></div>
<div><b>Veröffentlicht:</b> 31.05.2011 12:27</div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Tue, 31 May 2011 10:27:27 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=108</guid>
    </item>
    <item>
      <title>How to modify or add URL Parameters</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=107</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass1DE09304915A4EEB804569B7AA50EBF4"><p>Hi,</p> <p>to add or modify URL parameters to an url use the following code:</p><pre class="csharpcode"><span class="kwrd">private</span> <span class="kwrd">static</span> <span class="kwrd">string</span> SetUrlParameter(<span class="kwrd">string</span> url, <span class="kwrd">string</span> key, <span class="kwrd">string</span> <span class="kwrd">value</span>)
{
    var startIndex = url.IndexOf(<span class="str">&quot;?&quot;</span>) + 1;
    <span class="kwrd">if</span> (startIndex == 0)
    {
        <span class="kwrd">return</span> <span class="kwrd">string</span>.Format(<span class="str">&quot;{0}?{1}={2}&quot;</span>, url, key, <span class="kwrd">value</span>);
    }
    var oldQueryString = url.Substring(startIndex);
    var queryParameters = HttpUtility.ParseQueryString(oldQueryString);
    queryParameters[key] = <span class="kwrd">value</span>;
    <span class="kwrd">return</span> url.Substring(0, startIndex) + queryParameters;
}</pre>
<style>
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode, .ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode pre
{margin:0em;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .rem
{color:#008000;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .str
{color:#006080;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .op
{color:#0000c0;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .preproc
{color:#cc6633;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .html
{color:#800000;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .attr
{color:#ff0000;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass1DE09304915A4EEB804569B7AA50EBF4 .csharpcode .lnum
{color:#606060;}
</style></div></div>
<div><b>Veröffentlicht:</b> 25.05.2011 12:15</div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Wed, 25 May 2011 10:15:33 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=107</guid>
    </item>
    <item>
      <title>SharePoint: Is a User in a Group?</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=106</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass43784A44AA5D4C5AA969036BD2CB926A"><p>Hi togehter,</p> <p>today I have a little problem to ensure if a SharePoint user is in a SharePoint group. I used the following code:</p><pre class="csharpcode">SPWeb webSite = SPContext.Current.Web;
SPUser user = webSite.CurrentUser;
SPGroupCollection groups = user.Groups;
<span class="kwrd">foreach</span> (SPGroup spGroup <span class="kwrd">in</span> groups)
{
    <span class="rem">// Do something</span>
}
<style>
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode, .ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode pre
{margin:0em;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .rem
{color:#008000;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .str
{color:#006080;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .op
{color:#0000c0;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .preproc
{color:#cc6633;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .html
{color:#800000;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .attr
{color:#ff0000;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .lnum
{color:#606060;}
</style><br /></pre>
<p>In one group I used the active directory group “Domain-Users” and if I stepp through the code I found out that “user.Groups” does not contain the SharePoint group with “Domain-Users” as member. So what todo? After a short investigation I used the following code:</p><pre class="csharpcode">SPGroupCollection userGroups = webSite.Groups;
SPList list = SPContext.Current.List;
<span class="kwrd">foreach</span> (SPGroup group <span class="kwrd">in</span> userGroups)
{
    <span class="kwrd">if</span> (group.ContainsCurrentUser)
    {
        <span class="rem">// Do something</span>
    }
}</pre><pre class="csharpcode"></pre>
<style>
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode, .ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode pre
{margin:0em;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .rem
{color:#008000;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .str
{color:#006080;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .op
{color:#0000c0;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .preproc
{color:#cc6633;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .html
{color:#800000;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .attr
{color:#ff0000;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass43784A44AA5D4C5AA969036BD2CB926A .csharpcode .lnum
{color:#606060;}
</style>

<p>Happy coding,</p>
<p>Volker</p></div></div>
<div><b>Veröffentlicht:</b> 12.05.2011 20:54</div>
]]></description>
      <author>Volker Helms</author>
      <pubDate>Thu, 12 May 2011 18:54:25 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=106</guid>
    </item>
    <item>
      <title>Action 4.0.14.0 of Microsoft.SharePoint.Upgrade.SPIisWebSiteWssSequence failed.</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=105</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass0AA60F54B0A2407890A0B34827E717FB">Today i have a new errormessage in the upgrade process of a SharePoint 2010 server after a hotfix installation. The problem occurs because of some corrupt data in one iis web application. Someone has modified the apppool from the iis manager site.<br />Note: please do not modify a apppool from the iis manager. To correct the problem we must recreate the iis configuration:</div>
<ol>
<li>
<div class="ExternalClass0AA60F54B0A2407890A0B34827E717FB">Go to the Central Administration</div></li>
<li>
<div class="ExternalClass0AA60F54B0A2407890A0B34827E717FB">In the CA go to &quot;Services on Server&quot;</div></li>
<li>
<div class="ExternalClass0AA60F54B0A2407890A0B34827E717FB">Stop &quot;Microsoft SharePoint Foundation Web Application&quot;<br />This removes the SharePoint iis configuration</div></li>
<li>
<div class="ExternalClass0AA60F54B0A2407890A0B34827E717FB">Start &quot;Microsoft SharePoint Foundation Web Application&quot;<br />This recreates the SharePoint iis websites.</div></li></ol>
<p class="ExternalClass0AA60F54B0A2407890A0B34827E717FB">If you have a problem in the &quot;Products Configuration Wizard&quot; please also check the Upgrade... Logfile in the Logfolder. The Wizard only shows a link to the PSCDiagnostics Logfile.</p>
<p class="ExternalClass0AA60F54B0A2407890A0B34827E717FB">Here is the errortext from the Upgradeerrorlogfile: [OWSTIMER] [SPIisWebSiteWssSequence] [INFO] [5/2/2011 9:57:27 AM]: Microsoft.SharePoint.Administration.SPIisWebSite [OWSTIMER] [SPIisWebSiteWssSequence] [ERROR] [5/2/2011 9:57:27 AM]: Action 4.0.14.0 of Microsoft.SharePoint.Upgrade.SPIisWebSiteWssSequence failed. [OWSTIMER] [SPIisWebSiteWssSequence] [INFO] [5/2/2011 9:57:27 AM]: Microsoft.SharePoint.Administration.SPIisWebSite [OWSTIMER] [SPIisWebSiteWssSequence] [ERROR] [5/2/2011 9:57:27 AM]: Exception: The system cannot find the path specified. [OWSTIMER] [SPIisWebSiteWssSequence] [INFO] [5/2/2011 9:57:27 AM]: Microsoft.SharePoint.Administration.SPIisWebSite [OWSTIMER] [SPIisWebSiteWssSequence] [ERROR] [5/2/2011 9:57:27 AM]: at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail) at System.DirectoryServices.DirectoryEntry.Bind() at System.DirectoryServices.DirectoryEntry.get_AdsObject() at System.DirectoryServices.PropertyValueCollection.PopulateList() at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName) at System.DirectoryServices.PropertyCollection.get_Item(String propertyName) at Microsoft.SharePoint.Administration.SPIisApplicationPool.set_ManagedPipelineMode(PipelineMode value) at Microsoft.SharePoint.Administration.SPProvisioningAssistant.EnableIisIntegratedMode(String applicationPoolId) at Microsoft.SharePoint.Upgrade.EnableIIS7IntegratedMode.Upgrade() at Microsoft.SharePoint.Upgrade.SPActionSequence.Upgrade()</p></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 02.05.2011 10:54</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2010</category>
      <pubDate>Mon, 02 May 2011 08:52:45 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=105</guid>
    </item>
    <item>
      <title>SharePoint 2007 nach 2010 Migration</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=104</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClassA34D22994D0D40CE8F299B326D99641A">Hier einmal ein paar Punkte die mir während einer Migration aufgefallen sind. Es geht hier um eigene Solutions die für die Migration entsprechend umgeschrieben werden mussten:</div>
<div class="ExternalClassA34D22994D0D40CE8F299B326D99641A">
<ul>
<li>Application Pages: Um das Umschalten von alter auf neuer Masterpage (Visual Upgrade) zu ermöglichen muss in der Application Page das Property DynamicMasterPageFile statt MasterPageFile genutzt werden. Durch dieses Property entscheidet SharePoint beim Rendern welche Masterpage genutzt wird.</li>
<li>Application Pages: In 2007 gab es noch nicht viel Ajax. Daher habe ich häufiger Ajax nachträglich auf Seiten gebaut. Nach dem Update ist nun in der Application Page ein Scriptmanager vorhanden und zusätzlich bringt SP2010 einen direkt über die Masterpage mit. Da 2 Scriptmanager nicht funktionieren muss in der Application Page der Scriptmanager nur für SP2007 aktiv sein (siehe &lt;SharePoint:UIVersionedContent ID=&quot;UIVersionedContent1&quot; UIVersion=&quot;3&quot; runat=&quot;server&quot;&gt;)</li>
<li>HttpHandler: Ab IIS7 wird ein HttpHandler nicht mehr in der Web.Config unter &quot;configuration/system.web/httpModules&quot; sondern unter &quot;configuration/system.webServer/modules&quot; eingetragen. Das heißt die WebModifications müssen entsprechend angepasst werden.</li>
<li>Themes: Da die Themes in SP2010 komplett anders sind (Thmx File) muss Code, der z.B. automatisch ein Theme verwendet angepasst werden. Der Code für das alte Theme funktioniert zwar weiter, es kann aber kein neues Theme (Thmx) genutzt werden. Für ein Visual Upgrade ist also eine Codeanpassung notwendig.</li>
<li>Themes können nicht von SP2007 nach SP2010 migriert werden. Das heißt man kann ein eigenes neues Themefile erstellen und dieses zuweisen. Reichen die Anpassungen durch ein Thmx nicht aus muss ein Feature mit einer eigenen Masterpage erstellt werden. Die Masterpage kann gegebenenfalls über eine Site Definition deployed werden.</li>
<li>Site Definitions können relativ Problemlos weiterbenutzt werden. Nur die Masterpage sollte neu aufgebaut werden (V4 Format). Leitet die Site Definition von einer Teamsite ab muss beachtet werden, dass unter SP2010 das Wikifeature für Webseiten aktiv ist. Das heißt, das die Default.aspx gegebenenfalls nicht mehr erreichbar ist.</li>
<li>Eventhandler die auf die Site Templates (STP Files) zugreifen funktionieren nicht mehr da die Site Templates in SP2010 in der Solution Gallery liegen. Der Zugriff auf die Solution Gallery erfolgt über &quot;SPList list = web.GetCatalog(SPListTemplateType.SolutionCatalog);&quot;</li>
<li>Die Weiterbenutzung der WSPbuilder Solutions funktioniert ohne Probleme. Das Verzeichnis 12 muss nicht nach 14 umbenannt werden.</li></ul></div>
<p>Ich werde diesen Beitrag von Zeit zu Zeit aktualisieren um neue Erkenntnisse hier zu Veröffentlichen.</p></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 21.02.2011 16:03</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007; SharePoint 2010</category>
      <pubDate>Mon, 21 Feb 2011 14:59:18 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=104</guid>
    </item>
    <item>
      <title>Wss Wiki2Html Export Tool</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=42</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass8C8A7CA5EE204EB3949FBDABFCE30946">
<p><strong><u>UPDATE</u></strong></p>
<p>Ich habe mein Tool aktualisiert. Nun können die Wikibibliotheken per Webservice (also vom Client) abgespeichert werden. Die WikiLinks werden gewandelt, sodass diese auf die Exportdateien verweisen. Relative Links zur SharePointseite werden ebenfalls umgewandelt.</p>
<p>Probierts einfach mal aus!<br />Gruß,<br />Volker</p>
<p>Hallo,</p>
<p>ich habe mal ein kleines Tool geschrieben um den Inhalt eines Wikis nach Html zu exportieren. Das Tool verbindet sich mit einer Site und liest die Wiki Items aus. Aus dem Inhalt des Items wird dann eine Html Seite gebaut. Formatierungen werden weitestgehend übernommen. Die internen Wikilinks werden ebenfalls umgesetzt. Relative Links werden zu vollständigen Links umgewandelt und verlinkte Bilder im Verzeichnis ./Images abgelegt.</p>
<p>Nachdem alle Wikiseiten erstellt sind wird noch eine default.html mit einer Linkübersicht erstellt. Die Html Seiten kann man sich dann einfach auf dem Laptop mitnehmen :-)</p>
<p>Da ich noch nicht so erfahren im Programmieren bin, mag man mir den ein oder anderen Fehler verzeihen. Hinweise und Tipps sind aber jederzeit willkommen.</p>
<p>Gruß,<br />Volker</p>
<p>And now for my english speaking visitors:<br /><strong><u>UPDATE</u></strong></p>
<p>I had updated my Wikitool. Now, the export uses the sharepoint webservice (you can start the tool on the client site). I convert the wikilinks to use the exportet files. Means you can jump betweet the exportet pages. Relative links converts the tool to full url links.</p>
<p>So, please test the tool and give me a feedback.<br />Regards,<br />Volker</p>
<p>Hi,</p>
<p>i have written a little tool to export the content of a sharepoint wiki into html pages. My tool connects to a site, reads out the wiki items and writes the content to html pages. The formating will be xxx. Wikilinks like [[Link]] will be converted to normal Links. Relative links to other sharepoint pages will converted to absolute links. Linked images will be downloaded and saved to a folder named ./images. After all pages are created i will create a default.html with links to all other pages.</p>
<p>Regards,<br />Volker</p>
<p><a href="/Downloads/Wiki2HtmlPrg.zip">Download Program</a></p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=6&RootFolder=*">Coding</a></div>
<div><b>Veröffentlicht:</b> 26.06.2008 14:28</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007; Coding</category>
      <pubDate>Thu, 26 Jun 2008 12:28:44 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=42</guid>
    </item>
    <item>
      <title>Update Wiki2Html</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=103</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class="ExternalClass0417820FF77949C78D2F03E5466AA110"><div>Hi,</div>
<div> </div>
<div>i have updated my Wiki2Html Tool. Now you can start the tool on a client pc. I use the lists.asmx webservice to get the wikiitems. I also convert the wikilinks to local files - so you can jump between the wikipages. Relative urls will be converted to full urls.</div>
<div> </div>
<div><a href="/Lists/Beitraege/ViewPost.aspx?ID=42">Here is the Wiki2Html post</a>.</div>
<div>Regards,</div>
<div>Volker</div></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=6&RootFolder=*">Coding</a>; <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a></div>
<div><b>Veröffentlicht:</b> 04.01.2011 14:33</div>
]]></description>
      <author>Volker Helms</author>
      <category>Coding; SharePoint 2007</category>
      <pubDate>Tue, 04 Jan 2011 13:37:35 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=103</guid>
    </item>
    <item>
      <title>Webpartseite mit Quickstart/ Quicklaunch</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=23</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class=ExternalClassAA0F601F9A5B46D3A96FB665D093B5E3><div class=ExternalClassAE18084953DE4CF3B938B7AB2491DFC7> <h2>Update!!!</h2> <p>Heute ist mir aufgefallen, dass es auch einfacher geht. Also einfach den SharePoint Designer starten und dann die “Default.aspx” also die normale Startseite (sofern  noch nicht verändert) kopieren. Das kann auch einfach per “copy/ passte” passieren. Die Kopie dann einfach in die Bibliothek mit den anderen Webpartseiten kopieren. Zusätzlich hat man dann auch noch die Breadcrums.</p> <hr>  <p>Häufig werden Webpartseiten genutzt um innerhalb einer Site weitere Seiten zu erstellen ohne direkt eine neue Site zu erstellen. In einer Webpartseite fehlt leider die Quickstartleiste auf der linken Seite.</p> <p><a><img border=0 alt="" src="/Lists/Fotos/071207_1925_Webpartseit1.png"></a> </p> <p>Viele möchten diese aber auch auf den Webpartseiten nutzen. Daher habe ich mir das mal genauer angeschaut. In einer Webpartseite werden andere ContentIDs als in einer normalen Seite genutzt. Die einfachste Variante die Quickstartleiste zum Vorschein zu bringen geht so:<br>Die Webpartseite wird im Sharepoindesigner geöffnet. Dann wird im Quelltext folgende Zeile gesucht: </p> <p><span style="font-family:consolas;font-size:10pt"><strong>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderLeftNavBar&quot; runat=&quot;server&quot;&gt;&lt;/asp:Content&gt; </strong></span></p> <p>wird diese Zeile gelöscht taucht die Quickstartleiste wieder auf. Leider wird die Quickstartleiste nicht genauso angezeigt wie auf der Homepage. </p> <p><a><img border=0 alt="" src="/Lists/Fotos/071207_1925_Webpartseit2.png"></a> </p> <p>Wie auf dem Bild zu sehen ist zusätzlich eine Überschrift (blog) mit einem Symbol zu sehen. Diese beiden Elemente lassen die Quickstartleiste weiter nach unten rutschen. Wechselt ein Benutzer nun von der Hauptseite auf eine Webpartseite rutscht die die Leiste nach unten. Außerdem wird die Breite der Quickstartleiste beeinflusst. Die passt ebenfalls nicht mehr zur Homepage (zu schmal).<br>Um das Originalaussehen wieder herzustellen muss die Webpartseite ebenfalls mit dem Sharepoint Designer bearbeitet werden. Im Quelltext muss die Zeile </p> <p><span style="font-family:consolas;font-size:10pt"><strong>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderMain&quot; runat=&quot;server&quot;&gt; </strong></span></p> <p>gesucht werden. Alles was vor dieser Zeile (also vor dem Contentpart der Seite) an Quelltext ist wird entfernt. Nachdem der Text entfernt wurde wird stattdessen folgender Quelltext eingefügt. </p> <p><span style="font-family:consolas;font-size:10pt"><strong>&lt;%-- _lcid=&quot;1031&quot; _version=&quot;12.0.4518&quot; _dal=&quot;1&quot; --%&gt;<br>&lt;%-- _LocalBinding --%&gt;<br>&lt;%@ Page language=&quot;C#&quot; MasterPageFile=&quot;~masterurl/default.master&quot; Inherits=&quot;Microsoft.SharePoint.WebPartPages.WebPartPage,Microsoft.SharePoint, Version=12.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c&quot; meta:webpartpageexpansion=&quot;full&quot; meta:progid=&quot;SharePoint.WebPartPage.Document&quot; %&gt;<br>&lt;%@ Register Tagprefix=&quot;SharePoint&quot; Namespace=&quot;Microsoft.SharePoint.WebControls&quot; Assembly=&quot;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&quot; %&gt; &lt;%@ Register Tagprefix=&quot;Utilities&quot; Namespace=&quot;Microsoft.SharePoint.Utilities&quot; Assembly=&quot;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&quot; %&gt;<br>&lt;%@ Import Namespace=&quot;Microsoft.SharePoint&quot; %&gt; &lt;%@ Register Tagprefix=&quot;WebPartPages&quot; Namespace=&quot;Microsoft.SharePoint.WebPartPages&quot; Assembly=&quot;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&quot; %&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderPageTitle&quot; runat=&quot;server&quot;&gt;<br>&lt;SharePoint:EncodedLiteral runat=&quot;server&quot; text=&quot;&lt;%$Resources:wss,multipages_homelink_text%&gt;&quot; EncodeMethod=&quot;HtmlEncode&quot;/&gt;<br>&lt;SharePoint:ProjectProperty Property=&quot;Title&quot; runat=&quot;server&quot;/&gt;<br>&lt;/asp:Content&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderPageImage&quot; runat=&quot;server&quot;&gt;&lt;IMG SRC=&quot;/_layouts/images/blank.gif&quot; width=1 height=1 alt=&quot;&quot;&gt;&lt;/asp:Content&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderPageTitleInTitleArea&quot; runat=&quot;server&quot;&gt; &lt;label class=&quot;ms-hidden&quot;&gt; &lt;SharePoint:ProjectProperty Property=&quot;Title&quot; runat=&quot;server&quot;/&gt;&lt;/label&gt;<br>&lt;/asp:Content&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderTitleBreadcrumb&quot; runat=&quot;server&quot;/&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderTitleAreaClass&quot; runat=&quot;server&quot;&gt;<br>&lt;style type=&quot;text/css&quot;&gt;<br>TD.ms-titleareaframe, .ms-pagetitleareaframe {<br>height: 10px;<br>}<br>Div.ms-titleareaframe {<br>height: 100%;<br>}<br>.ms-pagetitleareaframe table {<br>background: none;<br>height: 10px;<br>}<br>&lt;/style&gt;<br>&lt;/asp:Content&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderAdditionalPageHead&quot; runat=&quot;server&quot;&gt;<br>&lt;META Name=&quot;CollaborationServer&quot; Content=&quot;SharePoint Team Web Site&quot;&gt;<br>&lt;script type=&quot;text/javascript&quot;&gt;<br>var navBarHelpOverrideKey = &quot;wssmain&quot;;<br>&lt;/script&gt;<br>&lt;/asp:Content&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderSearchArea&quot; runat=&quot;server&quot;&gt;<br>&lt;SharePoint:DelegateControl runat=&quot;server&quot;<br>ControlId=&quot;SmallSearchInputBox&quot;/&gt;<br>&lt;/asp:Content&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderLeftActions&quot; runat=&quot;server&quot;&gt;<br>&lt;/asp:Content&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderPageDescription&quot; runat=&quot;server&quot;/&gt;<br>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderBodyAreaClass&quot; runat=&quot;server&quot;&gt;<br>&lt;style type=&quot;text/css&quot;&gt;<br>.ms-bodyareaframe {<br>padding: 0px;<br>}<br>&lt;/style&gt;<br>&lt;/asp:Content&gt; </strong></span></p> <p><a><img border=0 alt="" src="/Lists/Fotos/071207_1925_Webpartseit3.png"></a> </p> <p>Anschießend sieht die Webseite im Bild aus. Der 2. Titel und das Icon ist weg. Die Breite der Leiste passt nun auch. Die Seite sieht also genauso aus wie auf der Homepage. <br>Nun wollen einige vielleicht die Quickstartleiste sehen aber auf das Icon und den Seitentitle nicht verzichten. Dazu muss dann wieder im Quelltext etwas geändert werden. <br>Wir suchen jetzt den Tag: </p> <p><span style="font-family:consolas;font-size:10pt"><strong>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderPageTitleInTitleArea&quot; runat=&quot;server&quot;&gt; </strong></span></p> <p>und ersetzen diesen Tag (also bis zum Ende &lt;/asp:Content&gt;) mit diesem Abschnitt: </p> <p><span style="font-family:consolas;font-size:10pt"><strong>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderPageTitleInTitleArea&quot; runat=&quot;server&quot;&gt;<br>&lt;WebPartPages:WebPartZone runat=&quot;server&quot; Title=&quot;loc:TitleBar&quot; ID=&quot;TitleBar&quot; <br>AllowLayoutChange=&quot;false&quot; AllowPersonalization=&quot;false&quot;&gt;&lt;ZoneTemplate&gt;<br>&lt;WebPartPages:TitleBarWebPart runat=&quot;server&quot; PartImageLarge=&quot;&quot; MissingAssembly=<br>&quot;Dieses Webpart kann nicht importiert werden.&quot; AllowConnect=&quot;True&quot; <br>IsIncludedFilter=&quot;&quot; PartOrder=&quot;1&quot; FrameState=&quot;Normal&quot; ChromeType=&quot;None&quot; <br>Image=&quot;/_layouts/images/wpicon.gif&quot; ZoneID=&quot;TitleBar&quot; HeaderTitle=&quot;wiki&quot;<br>DetailLink=&quot;&quot; Description=&quot;&quot; AllowMinimize=&quot;False&quot; PartImageSmall=&quot;&quot; <br>FrameType=&quot;None&quot; ExportControlledProperties=&quot;True&quot; AllowRemove=&quot;False&quot; <br>IsIncluded=&quot;True&quot; AllowClose=&quot;False&quot; AllowHide=&quot;True&quot; HelpLink=&quot;&quot; <br>ConnectionID=&quot;00000000-0000-0000-0000-000000000000&quot; ExportMode=&quot;All&quot;<br>HelpMode=&quot;Modeless&quot; ID=&quot;g_8ec89f6b_afb1_4165_94ad_1d15e94a07aa&quot; <br>SuppressWebPartChrome=&quot;False&quot; Title=&quot;Titelzeile der Webpartseite&quot; <br>AllowZoneChange=&quot;True&quot; Dir=&quot;Default&quot; IsVisible=&quot;True&quot; AllowEdit=<br>&quot;True&quot; __MarkupType=&quot;vsattributemarkup&quot; __WebPartId=<br>&quot;{8EC89F6B-AFB1-4165-94AD-1D15E94A07AA}&quot; WebPart=&quot;true&quot; Height=&quot;&quot;<br>Width=&quot;&quot;&gt;&lt;/WebPartPages:TitleBarWebPart&gt;<br>&lt;/ZoneTemplate&gt;&lt;/WebPartPages:WebPartZone&gt;<br>&lt;/asp:Content&gt; </strong></span></p> <p>anschließend hat die Seite zwar wieder den Titel und das Icon, aber noch nicht den gewünschten Abstand. Dazu wird dieses mal der Tag </p> <p><span style="font-family:consolas;font-size:10pt"><strong>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderTitleAreaClass&quot; runat=&quot;server&quot;&gt; </strong></span></p> <p>gesucht und der komplette Tag durch folgenden Text ersetzt. </p> <p><span style="font-family:consolas;font-size:10pt"><strong>&lt;asp:Content ContentPlaceHolderId=&quot;PlaceHolderTitleAreaClass&quot; runat=&quot;server&quot;&gt;<br>&lt;style type=&quot;text/css&quot;&gt;<br>Div.ms-titleareaframe {<br>height: 100%;<br>}<br>.ms-pagetitleareaframe table {<br>background: none;<br>}<br>&lt;/style&gt;<br>&lt;/asp:Content&gt; </strong></span></p> <p>Anschließend sieht die Seite wie folgt aus: </p> <p><a><img border=0 alt="" src="/Lists/Fotos/071207_1925_Webpartseit4.png"></a> </p> <p>Damit haben wir alle Varianten zu Verfügung. </p></div></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a></div>
<div><b>Veröffentlicht:</b> 12.07.2007 21:25</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007</category>
      <pubDate>Thu, 12 Jul 2007 19:25:22 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=23</guid>
    </item>
    <item>
      <title>ASP.NET Page Life Cycle Overview</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=101</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class=ExternalClass6E3464F292174A4EA9E02899B305E56E><p>Nur zur Erinnerung ein Link zu der MSDN Webseite des ASP.NET Page Life Cycle. Auf der Seite sind relativ viele Informationen über den Life Cycle. Hilfreich falls man mal wieder nicht weiß an welcher Stelle ein Grid.DataBind() durchgeführt werden muss.</p> <p> <div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px" id="scid:0E22F29F-1D77-4799-8869-F298745B9709:49e85bb6-abc5-41e8-878f-3122d522917b"><a title="ASP.NET Page Life Cycle" href="http://msdn.microsoft.com/en-us/library/ms178472.aspx" target="_blank"><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="201011101447270912[1]" border=0 alt="201011101447270912[1]" src="/Lists/Beitraege/Attachments/101/2010111014472709121_3_379C5C00.jpg" width=253 height=190></a></div>  <p> </p> <p>Gruß,<br>Volker</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=6&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=6&RootFolder=*">Coding</a></div>
<div><b>Veröffentlicht:</b> 11.11.2010 16:36</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/101/2010111014472709121_3_379C5C00.jpg">http://blog.isrichtig.de/Lists/Beitraege/Attachments/101/2010111014472709121_3_379C5C00.jpg</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <category>Coding</category>
      <pubDate>Wed, 10 Nov 2010 13:50:52 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=101</guid>
    </item>
    <item>
      <title>L2TP Verbindung unter Windows schlägt mit “Error: 789” fehl</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=102</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class=ExternalClass6C91284C8C8C41C493357BB18B8DD99B><p>Häufig ist der Fehler 789 darin begründet das der VPN Client oder der VPN Server hinter einem NAT Device (also z.B. der Internetrouter) stehen. Der Router übersetzt dann die internen IP Adressen in die öffentliche IP Adresse die der Router vom Internetprovider bekommen hat. L2TP kommt ursprünglich nicht mit NAT Verbindungen klar. Die Funktion wurde später hinzugefügt und wird Nat Traversal (NAT-T) genannt. Damit der Windowsclient dies unterstützt muss folgender Registrykey gesetzt werden. Befindet sich auch der VPN Server hinter einem NAT Device muss der Key auch auf diesem gesetzt werden.</p> <p>Windows Vista/ Windows 7:</p> <p><strong>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent<br></strong>Dort erstellen wir dann einen<strong> DWord </strong>Eintrag mit dem Namen <strong>“AssumeUDPEncapsulationContextOnSendRule”</strong>. Als Wert können wir dort 0 für Kein NAT-T, 1 für NAT-T am Ziel VPN Server und 2 für eine beidseitige NAT-T Verbindung.</p> <p>Unter Windows XP:</p> <p><strong>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPSec<br></strong>Dort erstellen wir dann einen<strong><strong> DWord </strong></strong>Eintrag mit dem Namen <strong>“AssumeUDPEncapsulationContextOnSendRule”</strong>. Als Wert können wir dort 0 für Kein NAT-T, 1 für NAT-T am Ziel VPN Server und 2 für eine beidseitige NAT-T Verbindung.</p> <p>Weitere Infos zu diesem Problem gibt es natürlich bei Microsoft</p> <p><a title="How to configure an L2TP/IPsec server behind a NAT-T device in Windows Vista and in Windows Server 2008" href="http://support.microsoft.com/kb/926179/en-us" target="_blank"><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=image border=0 alt=image src="/Lists/Beitraege/Attachments/102/image_3_2F9E9A2D.png" width=244 height=184></a></p> <p>Gruß,<br>Volker</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=1&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=1&RootFolder=*">Windows</a></div>
<div><b>Veröffentlicht:</b> 11.11.2010 16:35</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/102/image_3_2F9E9A2D.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/102/image_3_2F9E9A2D.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <category>Windows</category>
      <pubDate>Thu, 11 Nov 2010 15:35:02 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=102</guid>
    </item>
    <item>
      <title>SharePoin DateTimeControl lost the Date after PostBack</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=100</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class=ExternalClass441961B7DD5443D195887561913F5A0F><p>I have a little note for all of you who had problems with the SharePoint DateTimeControl. In my last project I wanted to use the control the start a datesearch with a ObjectDataSource and a SPGridView. But if the DataBind() occurs in the OnPreRender event the SelectedDate was lost. If you have the same problem please check your code if you have something like this:</p> <p>  <div class=csharpcode><pre class=alt>DateTimeControl dtControl = <span class=kwrd>new</span> DateTimeControl();</pre><pre>dtControl.ID = <span class=str>&quot;dtControlID&quot;</span>;</pre></div>
<style>
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode, .ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode pre
{font-size:small;color:black;font-family:consolas, &quot;Courier New&quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode pre
{margin:0em;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .rem
{color:#008000;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .str
{color:#006080;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .op
{color:#0000c0;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .preproc
{color:#cc6633;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .html
{color:#800000;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .attr
{color:#ff0000;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass441961B7DD5443D195887561913F5A0F .csharpcode .lnum
{color:#606060;}
</style>


<p>If you have this lines of code please remove the line where you assign an ID. Setting an ID will break the control value after a postback.</p>
<p>Regards,<br>Volker</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=2&RootFolder=*">SharePoint 2007</a></div>
<div><b>Veröffentlicht:</b> 10.11.2010 14:20</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2007</category>
      <pubDate>Wed, 10 Nov 2010 13:20:03 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=100</guid>
    </item>
    <item>
      <title>Slow DNS response - Windows Server 2008R2</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=99</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class=ExternalClassF6865D86537740E0BFC243F633A921A9><p>Today I had a little problem with my dns server. I had configured the server to use its own dns service. Then I noticed that a dns response was very slow. I checked it with nslookup and I got a very slow response. Ok, I checked my dns and found out that I have configured the system to first get an answer from a forwarding dns and, if it failed, from the root dns servers. I disabled the “Use root hints, if no forwarders are available” function. After that, no external name resolution is possible anymore. Ok, I enabled the function again and the slow response was back again. So it must be the forwarder – but the forwarder itselfs running well (I checked it).</p> <p><a href="/Lists/Beitraege/Attachments/99/2010-11-10-12h29_44_2_6F3A3B80.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="2010-11-10 12h29_44" border=0 alt="2010-11-10 12h29_44" src="/Lists/Beitraege/Attachments/99/2010-11-10-12h29_44_thumb_6F3A3B80.png" width=338 height=280></a></p> <p>But why were my name resolutions slow? After some googling I found a new dns function in Windows 2008R2. The Server has a function named “EDNS” and this is enabled by default. So i had no DNS response problem but a DNS forwarder problem. To disable “EDNS” execute “dnscmd /config /EnableEDNSProbes 0” in the command promt.</p> <p>Here are some additional informations:</p> <p><a title="http://en.wikipedia.org/wiki/Extension_mechanisms_for_DNS" href="http://en.wikipedia.org/wiki/Extension_mechanisms_for_DNS">http://en.wikipedia.org/wiki/Extension_mechanisms_for_DNS</a></p> <p><a title="http://morgansimonsen.spaces.live.com/blog/cns!3E6BAE5D8A410B3E!586.entry" href="http://morgansimonsen.spaces.live.com/blog/cns!3E6BAE5D8A410B3E!586.entry">http://morgansimonsen.spaces.live.com/blog/cns!3E6BAE5D8A410B3E!586.entry</a></p> <p>Regards,<br>Volker</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=11&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=11&RootFolder=*">Windows 2008R2</a></div>
<div><b>Veröffentlicht:</b> 10.11.2010 12:44</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/99/2010-11-10-12h29_44_2_6F3A3B80.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/99/2010-11-10-12h29_44_2_6F3A3B80.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/99/2010-11-10-12h29_44_thumb_6F3A3B80.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/99/2010-11-10-12h29_44_thumb_6F3A3B80.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <category>Windows 2008R2</category>
      <pubDate>Wed, 10 Nov 2010 11:44:45 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=99</guid>
    </item>
    <item>
      <title>Differences between “FAST Query Search Service Application” and “FAST Content Search Service Application”</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=98</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class=ExternalClassAADFF3EE174E4F2392A853D167A07E7F>
<p>If you configure a SharePoint 2010 Farm with Fast Search Server you must configure two different Service Application in the central administration. But what are the service applications for? Here some infos about them from a Microsoft Technet article:</p>
<p><strong>FAST Query Search Service Application (SSA)</strong> 
<p>This SSA provides the query-side integration between the FAST Search Server 2010 for SharePoint farm and the parent SharePoint farm. The Query SSA provides the following functionality: 
<ul>
<li>Serves as a gateway between a local or remote front-end Web server and the FAST Search Server 2010 for SharePoint farm</li>
<li>Contains query and crawl components for the people search functionality</li></ul>
<p><u>Notes:</u><br>People Search queries are evaluated within the Query SSA. All other queries are evaluated within the FAST Search for SharePoint farm.<br>You must only deploy one Query SSA associated with your FAST Search Server 2010 for SharePoint farm. You can scale out the Query SSA across multiple servers for performance and failover.</p>
<p><strong>FAST Content Search Service Application (SSA)</strong> 
<p>This is a search service application (SSA) in a SharePoint Server farm that enables retrieving (crawling) content for indexing from content repositories. This SSA represents the default indexing connector for your FAST Search Server 2010 for SharePoint deployment. 
<p>The Content SSA can retrieve content from almost any content source, such as SharePoint farms, Web servers, file shares and Exchange public folders. 
<p><strong>Differences from SharePoint Server Search</strong> 
<p>There are two alternatives for enterprise search in SharePoint Server 2010. 
<p>SharePoint Server 2010 search is an integrated search solution within the SharePoint Server 2010 farm, and is deployed as a single Search Service Application within the farm. In this case the query and crawl components are running within the same SSA.<br>Note:<br>If you use the single-server SharePoint Server 2010 installation option, SharePoint Server 2010 search will automatically be deployed on your farm. If you later deploy FAST Search Server 2010 for SharePoint, this SSA will continue to appear on the SharePoint Server 2010 Search Administration page, but is not used. 
<p>FAST Search Server 2010 for SharePoint replace the standard SharePoint Server 2010 search, and will appear on the SharePoint Server 2010 Search Administration page as two SSAs. In this case key parts of the search functionality take place in the FAST Search Server 2010 for SharePoint farm, but certain parts are performed in the Query SSA and content SSA. 
<p><strong>Some additional note:</strong> 
<p>The FAST Search Server 2010 for SharePoint farm must have access to a SQL Server host that is used to store configuration information. Note that FAST Search Server 2010 for SharePoint will not store any data related to the indexed content in the database. It is therefore recommended that you use a SQL Server database server already available in the parent SharePoint farm for this purpose. 
<p>Please take a look at <a href="http://technet.microsoft.com/en-us/library/ff599528.aspx" target="_blank">Microsoft Fast Search Server</a> or at <a href="http://blogs.msdn.com/b/arnts/archive/2010/01/27/the-two-types-of-search-service-applications-in-a-sharepoint-2010-deployment-with-fast-search-server.aspx">The two types of Search Service Applications (in a SharePoint 2010 deployment with FAST Search Server)</a> to get more Informations. 
<p>Volker</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 27.09.2010 12:26</div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2010</category>
      <pubDate>Mon, 27 Sep 2010 10:26:14 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=98</guid>
    </item>
    <item>
      <title>How to use Office WebApps always in SharePoint 2010</title>
      <link>http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=97</link>
      <description><![CDATA[<div><b>Textkörper:</b> <div class=ExternalClass28C55CDFD88549008BFF63DCF0EBE23E><p>In SharePoint 2010 you can configure to use office webapps or an installed office application. If you activate the feature “Open Documents in Client Applications by Default” you always use the client applications – if not the office webapps will render the document. But if you want to create a new document SharePoint intends you to use the client applications. If you have no client applications installed you can use the webapps. So it could be a problem because you cannot configure the behavier.</p> <p>SharePoint 2010 uses an active x control to decide if the user sees the webapps or a download dialog to use client applications. So if an admin wants to deactivate the client integration he needs to disable a special active x control:</p> <p><a href="/Lists/Beitraege/Attachments/97/image_2_5C23A966.png"><img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title=image border=0 alt=image src="/Lists/Beitraege/Attachments/97/image_thumb_5C23A966.png" width=546 height=336></a> </p> <p>You have to disable the “SharePoint OpenDocuments Class”. After that SharePoint 2010 uses always the Office WebApps.</p> <p>Regards,<br>Volker</p></div></div>
<div><b>Kategorie:</b> <a onclick="OpenPopUpPage('http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*', RefreshPage); return false;" href="http://blog.isrichtig.de/_layouts/listform.aspx?PageType=4&ListId={9E94686F-AAC0-4F55-B931-08EFDCF8AE0D}&ID=9&RootFolder=*">SharePoint 2010</a></div>
<div><b>Veröffentlicht:</b> 23.09.2010 21:33</div>
<div><b>Anlagen:</b> <a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/97/image_2_5C23A966.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/97/image_2_5C23A966.png</a><br /><a href="http://blog.isrichtig.de/Lists/Beitraege/Attachments/97/image_thumb_5C23A966.png">http://blog.isrichtig.de/Lists/Beitraege/Attachments/97/image_thumb_5C23A966.png</a><br /><a href=""></a></div>
]]></description>
      <author>Volker Helms</author>
      <category>SharePoint 2010</category>
      <pubDate>Thu, 23 Sep 2010 19:33:23 GMT</pubDate>
      <guid isPermaLink="true">http://blog.isrichtig.de/Lists/Beitraege/ViewPost.aspx?ID=97</guid>
    </item>
  </channel>
</rss>