Ändern der Liste der Spalte Art von Suche in Sharepoint
Ich bin mit dem ilovesharepoint Lookup-Feld mit Picker , ist auf codeplex auf einem Moss 2007 standard-Umgebung. Ich lief das setup-Projekt, und klicken Sie dann in der Powershell-erteilt den entsprechenden Befehl zum ändern eines Nachschlagefelds den Nachschlage-mit Picker (ConvertLookupToLookupFieldWithPicker.ps1), die unten gezeigt wird.
# http://www.iLoveSharePoint.com
# by Christian Glessner
param([string]$webUrl=$(throw 'Parameter -webUrl is missing!'),
[string]$listName=$(throw 'Parameter -listName is missing!'),
[string]$fieldTitle=$(throw 'Parameter -fieldTitle is missing!'))
$ErrorActionPreference = "Stop";
$env:12HivesDir = "$env:CommonProgramFiles\Microsoft Shared\web server extensions\12\";
$null = [System.Reflection.Assembly]::LoadFrom("$env:12HivesDir\ISAPI\Microsoft.SharePoint.dll");
$site = New-Object -TypeName "Microsoft.SharePoint.SPSite" -ArgumentList $webUrl;
$web = $site.OpenWeb();
$list = $web.Lists[$listName];
$field = $list.Fields[$fieldTitle];
$schema = [xml]$field.SchemaXml;
$schema.Field.Type = "LookupFieldWithPicker"
if($schema.SelectSingleNode("//@SearchFields") -eq $null)
{
$searchFields = $schema.CreateAttribute("SearchFields");
$searchFields.PSBase.Value = [Microsoft.SharePoint.SPBuiltInFieldId]::ID.ToString();
$schema.Field.PSBase.Attributes.Append($searchFields);
}
$field.SchemaXml = $schema.PSBase.OuterXml;
Write-Output "Done."
Ich sehe immer wieder diese Fehler kommen
1d22ea11-1e32-424e-89ab-9fedbadb6ce1
Ausnahme festlegen "SchemaXml": "Nicht unterstützter Feldtyp ändern.
Das Feld kann nicht geändert werden, um den neuen Typ. Bitte überprüfen Sie den neuen Typ, und versuchen Sie es erneut."
Bei C:\Documents und Einstellungen\xgrmmart\Desktop\icgpm\deploy\ConvertLookupToLookupFieldWithPicker.ps1:29 char:8
+ $- Feld.S <<<< chemaXml = $schema.PSBase.OuterXml;
Keine Ahnung, warum es nicht funktioniert....perfekt lief in der Testumgebung. Ich bin kein Experte auf PowerShell und jede Hilfe wird sehr geschätzt. Danke.
InformationsquelleAutor AboutDev | 2009-06-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ok ich das Problem gelöst. Das problem tritt auf, wenn führen Sie das PowerShell-Skript vor dem ausführen der batch-Datei (ich war nicht bewusst, dass jemand hatte es vor). Also, Sie müssen verwenden Sie die converse powershell-Skript-Datei ConvertLookupFieldWithPickerToLookup.ps1 und wenden es gegen die Säulen. Sobald Sie fertig sind, übernehmen Sie die erste Datei oben, und es sollte alles funktionieren.
Der code ist wie folgt:
InformationsquelleAutor AboutDev