SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Konvertieren einer Subsite (Website) in Websitecollection

Dieser Beitrag hat 12 Antworten

Ohne Rang
125 Beiträge
Franke079 erstellt 3 Juni 2015 13:46
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo ist es eigentlich möglich aus einer Subsite / Website eine eigene Websitecollection zu erstellen, wenn ja wie ?

Vielen Dank

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 3 Juni 2015 13:57
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Nein, das geht nicht. Man könnte die Website samt Inhalt als Vorlage speichern (wenn sie nicht zu groß ist) und dann aus dieser Vorlage wieder eine Website als Root der Websitesammlung erzeugen, aber das taugt nicht wirklich. Ich würde einfach eine neue Website anlegen und die Inhalte manuell übernehmen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
125 Beiträge
Franke079 Als Antwort am 3 Juni 2015 14:09
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Und genau da liegt das Problem. Auf dieser Website sind eine menge Listen, die miteinander verknüpft sind, einige Spalten dann leer ( diese Nachschlagefelder) egal was ich versuche ich habe es noch nicht gechafft, diese Felder wieder zu füllen, deshalb wollte ich diese andere Variante ausprobieren

Ohne Rang
634 Beiträge
Olaf Didszun Als Antwort am 3 Juni 2015 14:30
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hm, mein erster Ansatz wäre eigentlich, die Subsite zu exportieren und anschließend in eine neue Site-Collection zu importieren. So unintelligent ist der Import-Mechanismus eigentlich nicht, sodass die Lookup-Felder danach weiter funktionieren könnten, es sei denn, du hast dafür mit Site Columns gearbeitet. Wichtig ist, dass sich alle notwendigen Objekte in deiner Subsite befinden müssen, ansonsten wird das wohl nicht funktionieren.

Beste Grüße

Olaf

 

Ohne Rang
125 Beiträge
Franke079 Als Antwort am 3 Juni 2015 14:37
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das habe ich auch gemacht, leider bleiben die Felder / Spalten leer. Der Inhalt ist jedoch vorhanden, werden aber nicht angezeigt warum auch immer nicht kann ich leider nicht sagen

Ohne Rang
496 Beiträge
Derby Als Antwort am 4 Juni 2015 13:10
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das liegt daran, das die Spalten mit ihren IDs verknüpft werden. Da Du aber einen Export/Import gemacht hast, haben die Quell-Spalten auch neue ID´s bekommen, in den Lookup-Spalten stehen aber noch die alte ID´s. Du müsstest einen Wege finden per Power Shell die ID´s in den Lookup-Spalten mit den neuen ID´s zu überschreiben. Wir haben sowas selbst schon mal versucht und irgendwie gelöst, wenn ich das wiederfinde schreib Ichs hier rein.

Ohne Rang
125 Beiträge
Franke079 Als Antwort am 4 Juni 2015 14:38
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Endlich versteht mich jemanden, freu, du würdest mir den Tag retten, wenn du das Powershell Script finden würdest. Mit den ID hatte ich schon herausgefunden, das die ID /Guid neu angelegt wird und somit bleiben die Spalten leer

Ohne Rang
125 Beiträge
Franke079 Als Antwort am 4 Juni 2015 16:52
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das Anpassen der IDs habe ich bereits gemacht. Durch diese Anpassung wurde auch die Relation zwischen den Feldern wieder erkannt, dennoch habe ich das Problem, dass die Werte/Inhalte nicht übernommen werden. Ein anschließender Update-Befehl hat leider auch nichts gebracht.

Falls es weiter helfen kann, könnte ich auch das Script hier aufzeigen.

Ohne Rang
496 Beiträge
Derby Als Antwort am 5 Juni 2015 11:38
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Jo poste mal, finde meins nicht.

Ohne Rang
125 Beiträge
Franke079 Als Antwort am 9 Juni 2015 09:14
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

So sieht das Script aus

 

 

Function Fix-LookupColumn ($webURL, $listName, $columnName, $lookupListName)

 {

     #Get web, list and column objects

     $web = Get-SPWeb $webURL

     $list = $web.Lists[$listName]

     $column = $list.Fields[$columnName]

     $lookupList = $web.Lists[$lookupListName]

 

     #Change schema XML on the lookup column

     $column.SchemaXml = $column.SchemaXml.Replace($column.LookupWebId.ToString(), $web.ID.ToString())

     $column.SchemaXml = $column.SchemaXml.Replace($column.LookupList.ToString(), $lookupList.ID.ToString())

     $column.Update()

 

     #Write confirmation to console and dispose of web object

     write-host "Column" $column.Title "in list" $list.Title "updated to lookup list" $lookupList.Title "in site" $web.Url

     $web.Dispose()

 }

 

 Fix-LookupColumn -webURL "URL" -listName "ServerDetails" -columnName "Host" -lookupListName "Serverliste"

Ohne Rang
496 Beiträge
Derby Als Antwort am 9 Juni 2015 10:10
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Wenn man eine Lookup-Spalte erstellt gibt man an aus welcher Liste die Werte kommen und aus welcher Spalte in dieser Liste. In dem Script änderst du die $web.ID der Seite der abzufragenden Liste und die ID der abzufragenden Liste, da fehlt meiner Meinung nach das Ändern der ID der Spalte aus der man die Werte haben möchte, weshalb keine angezeigt werden, da in der abzufragenden Spalte die ID der alten Steht, welche es in der neuen Liste nicht gibt.

Derby

Ohne Rang
125 Beiträge
Franke079 Als Antwort am 11 Juni 2015 13:13
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

leider bleibt das Feld weiterhin leer, die Verknüpfung ist zwar da aber die Spalten bleiben leer 

Ohne Rang
129 Beiträge
Jonas Großholz Als Antwort am 3 Juni 2015 16:11
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ggf. hilft dir eine Kopie der Seite:

Powershell:

#Kopieren von Quelle- zur Ziel-URL
Copy-SPSite "Quelle-URL" -TargetUrl "ZielURL"
#Löschen der alten URL
Remove-SPSite "Quelle-URL"
EDIT: wollte das eigentlich nicht als Antwort vorschlagen...sorry