Beschreibung
Layer2 BDLC Synchronisierung funktioniert nur manuell. Automatische Synchronisierung (als Job um eine bestimmte Zeit) funktioniert nicht.
Analyse
Es scheint als würde der Timer-Dienst für Layer2 nicht existieren.
Prüfen, ob der SP-Dienst für Layer2 aufgelistet wird. In der Zentraladministration wurde der Dienst nicht aufgelistet.
CA > Monitoring > Review job definitions > Job Definitions > Layer2 Business Data List Connector – Background Update Job
Per PowerShell (in unserem Fall wurde gar nichts ausgegeben).
⚠ Achtung: Diese PowerShell-Ausgabe ist nicht konsistent, weil: Der Timer-Service wird in der PowerShell-Konsole Serverabhängig angezeigt. D.h. Auf dem Server01 evtl. nicht da, aber auf dem Server02 doch da. In der CA wird aber immer dann angezeigt, wenn auf einem der Server vorhanden. Besser die Abfrage über alle Server (siehe weiter unten).
# Timer Job mit bestimmten Namen auflisten
Add-PSSnapin Microsoft.SharePoint.PowerShell
#Puffer (sonst werden z.B. Spalten rechts abgeschnitten etc.)
$buffer = $host.ui.RawUI.BufferSize; $buffer.width = 3000; $buffer.height = 3000; $host.UI.RawUI.Set_BufferSize($buffer)
Get-SPTimerJob | where {$_.name -like "*Layer*" -or $_.name -like "*bdlc*" -or $_.displayname -like "*layer*"} | fl #ft -AutoSize Title, TypeName, Status, Schedule, LastrunTime, ID #, Name, TypeName, DisplayName
Besser ist es , auf allen Servern zu prüfen. Ist der Timer-Dienst mindestens auf einem Server aufgelistet, dann funktioniert er wieder.
# Timer-Dienst mit bestimmten Namen auf allen SP-Servern anzeigen
Add-PSSnapin Microsoft.SharePoint.PowerShell
Get-SPServer | ?{$_.Role -ne 'Invalid'} | Sort |
%{
#Write-Host "`n$($_.Address)" -ForegroundColor Cyan;
Invoke-Command -ComputerName $_.Address -ScriptBlock {
Add-PSSnapin Microsoft.SharePoint.PowerShell;
#Write-Host "$(gc env:computername)"
Get-SPTimerJob |
where {$_.name -like "*bdlc*" -or $_.displayname -like "*layer*"} |
select @{label="Computer";Expression={$(gc env:computername)}}, Name, Schedule, LastRunTime, Status, IsDisabled |
ft -AutoSize *
}
}
Ausgabe
Computer Name Schedule LastRunTime Status IsDisabled
-------- ---- -------- ----------- ------ ----------
Server01 BDLC Update Job every 15 minutes between 0 and 0 Online False
Computer Name Schedule LastRunTime Status IsDisabled
-------- ---- -------- ----------- ------ ----------
Server02 BDLC Update Job every 15 minutes between 0 and 0 Online False
Lösung Nr. 1 – Farm Feature de-aktivieren 👍
Farm Feature per CA de/aktivieren
- CA > System Settings > Manage farm features
- Das Feature mit orangenen Rechtecken mit dem Namen Layer2 Business Data List Connector for SharePoint – Timer Job
- Weißen Button "Deactivate" betätigen
- Link "Deactivate this feature" anklicken und somit bestätigen.
- Weißen Button "Activate" betätigen
- Weißen Button "Deactivate" betätigen
Farm Feature per PS de/aktivieren
# Layer2 Features anzeigen
# Get-SPFeature | ?{$_.DisplayName -like "*layer*"}
<# Für uns entscheidendes Feature
Name: FeatureDefinition/15/ee5cd108-1591-4409-b9e1-cf018e5a2ed8
ID: ee5cd108-1591-4409-b9e1-cf018e5a2ed8
DisplayName: Layer2.Products.BDLCTimerJob
Scope: Farm
#>
# Layer2 Farm-Feature aktivieren/deaktivieren
Get-SPFeature Layer2.Products.BDLCTimerJob | Disable-SPFeature -Confirm:$false
Get-SPFeature Layer2.Products.BDLCTimerJob | Enable-SPFeature
# Timer-Dienste erneute anzeigen lassen (es muss nun mind. 1 vorhanden sein)
Lösung Nr. 1 a – Farm Solution de-aktivieren
Bringt wohl selten ein Erfolg mit. Nur, wenn gar nichts mehr hilft.
⚠ Achtung, es werden wohl die App-Pools zurück gesetzt, so dass zwischendurch auch mal der Fehler "HTTP Error 503. The service is unavailable." auftauchen könnte.
In einem Fall war das die Lösung, in dem anderen Fall war Nr. 2 die Lösung.
- CA > System Settings > Manage farm solutions > (Fenster "Solution Management") >
- Name "layer2.businessdatalistconnector.wsp" anklicken > Retract Solution > Now > OK
- Etwas warten und die Seite aktualisieren, bis dort nicht mehr "Retracting" sondern "Not Deployed" im Status steht.
- Name "layer2.businessdatalistconnector.wsp" anklicken > Deploy Solution > Now > OK
Lösung Nr. 2
Layer2 Installer > Repair oder Upgrade durchführen.