Keine Methode mit dem Namen op Addition beim Ausführen eines PS Skriptes
Moin moin zusammen,
ich würde gerne das unten stehende Skript ausführen, allerdings funktioniert es nicht mehr seit Windows 2012 R2.
Ich bekomme folgende Meldung
Es liegt wohl an dem New-Object PSObject -Property, allerdings steige ich da nicht durch weshalb es nicht mehr richtig funktioniert.
Eigentlich sollte eine laaange Liste da erstellt werden. Hilfe ;-( Ich würde mich freuen wenn mir jemand helfen kann.
Ich setze auf dem Server folgende Version der PS ein
ich würde gerne das unten stehende Skript ausführen, allerdings funktioniert es nicht mehr seit Windows 2012 R2.
Ich bekomme folgende Meldung
Fehler beim Aufrufen der Methode, da [System.Management.Automation.PSObject] keine Methode mit dem Namen "op_Addition" enthält.
Es liegt wohl an dem New-Object PSObject -Property, allerdings steige ich da nicht durch weshalb es nicht mehr richtig funktioniert.
Eigentlich sollte eine laaange Liste da erstellt werden. Hilfe ;-( Ich würde mich freuen wenn mir jemand helfen kann.
Ich setze auf dem Server folgende Version der PS ein
Major Minor Build Revision
----- ----- ----- --------
4 0 -1 -1
[void][System.Reflection.Assembly]::Load("Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c")
# get local farm
Add-PSSnapin Microsoft.SharePoint.PowerShell
$farm = [Microsoft.SharePoint.Administration.SPFarm]::Local
# get web services from local farm
$websrvcs = $farm.Services | where -FilterScript {$_.GetType() -eq [Microsoft.SharePoint.Administration.SPWebService]}
# format for .csv file output
$outputToCSV = @()
function CheckedOutItems()
{
# get all web services available in the farm
foreach ($websrvc in $websrvcs) {
# retrieve web applications
foreach ($webApp in $websrvc.WebApplications) {
# now get site collections from the web application
foreach ($site in $webApp.Sites) {
# process each web site
Try {
foreach ($web in $site.AllWebs) {
$siteUrl = $web.Url
$siteName = $web.Title
$siteUserCnt = $web.AllUsers.Count
$PimarySiteAdmin = $site.Owner.Name
$SecondarySiteAdmin = $site.SecondaryContact.Name
$siteusage = $site.Usage.Storage/1MB
$Hits = $site.Usage.Hits
$Created = [datetime]$web.Created
$LastModified = $Web.LastItemModifiedDate
$SnapShot = (get-date)
$LastUpdate = ($SnapShot – [datetime]$LastModified)
$outputToCSV += New-Object PSObject -Property @{"Site Title" = $siteName; "Url" = $siteUrl; "Primary site collection admin"= $PimarySiteAdmin;
"Secondary site collection admin"=$SecondarySiteAdmin; "Total Users" =$siteUserCnt;"Size" = $siteusage;
"Date Last Modified" = $LastModified; "Days Last Update" = $LastUpdate; "Hits" =$Hits; "Date Created" =$Created
}
$file_date = get-date -format M-d-yyyy
$file_name = "$env:USERPROFILE\Desktop\NoCheckedInVersion"+ $file_date + ".csv"
$outputToCSV | ConvertTo-Csv -notype > $file_name
} # end $site.AllWebs loop
} # end Try statement
# General catch exceptions
Catch {
"General Exceptions caught: " >> "$env:USERPROFILE\Desktop\errorlog.txt"
$_.Exception.Message >> "$env:USERPROFILE\Desktop\errorlog.txt"
}# end general catch statement
}
}
}
}
# Make a call to the function
CheckedOutItems
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 345591
Url: https://administrator.de/contentid/345591
Ausgedruckt am: 21.11.2024 um 20:11 Uhr
5 Kommentare
Neuester Kommentar
Klammern
oder stattdessen [pscustomobject] verwenden das ist seit PS 3.0 sowieso viel schneller
$outputToCSV += (New-Object PSObject -Property @{"Site Title" = $siteName; "Url" = $siteUrl; "Primary site collection admin"= $PimarySiteAdmin;"Secondary site collection admin"=$SecondarySiteAdmin; "Total Users" =$siteUserCnt;"Size"=$siteusage;"Date Last Modified" = $LastModified; "Days Last Update" = $LastUpdate; "Hits" =$Hits; "Date Created"=$Created})
$outputToCSV += [pscustomobject] @{"Site Title" = $siteName; "Url" = $siteUrl; "Primary site collection admin"= $PimarySiteAdmin;"Secondary site collection admin"=$SecondarySiteAdmin; "Total Users" =$siteUserCnt;"Size"=$siteusage;"Date Last Modified" = $LastModified; "Days Last Update" = $LastUpdate; "Hits" =$Hits; "Date Created"=$Created}
Dann hat deine PS einen Knacks!