Problem
Excel Web Access – Die Arbeitsmappe konnte nicht geöffnet werden.
Die Arbeitsmappe konnte nicht geöffnet werden.
Die Arbeitsmappe kann nicht geöffnet werden.
Bzw. auf englisch:
The workbook cannot be opened
Event-ID: 3760 – SharePoint Foundation – Cannot open database ‚Content_DB‘ requested by the login. The login failed. Login failed for user ‚Domain\ExcelServiceUser‘
Diese Fehlermeldung wird im Event Viewer (Ereignislog) und im ULS-Log angezeigt:
SQL Database ‚Content_DB‘ on SQL Server instance ‚SQL_Instance‘ not found. Additional error information from SQL Server is included below.
Cannot open database ‚Content_DB‘ requested by the login. The login failed.
Login failed for user ‚Domain\ExcelServiceUser‘.
Event-ID: 3760 – SharePoint Foundation – Die von der Anmeldung angeforderte Content_DB-Datenbank kann nicht geöffnet werden. Fehler bei der Anmeldung.
Fehler bei der Anmeldung für den Benutzer ‚Domain\ExcelServiceUser‘
Diese Fehlermeldung wird im Event Viewer (Ereignislog) und im ULS-Log angezeigt:
Die SQL-Datenbank ‚Content_DB‘ für die SQL Server-Instanz ‚SQL_Instance‘ wurde nicht gefunden. Weitere Fehlerinformationen aus SQL Server finden Sie unten.
Die von der Anmeldung angeforderte Content_DB-Datenbank kann nicht geöffnet werden. Fehler bei der Anmeldung.
Fehler bei der Anmeldung für den Benutzer ‚Domain\ExcelServiceUser‘.
Details
Beschreibung
Die Excel-Dateien können im Browser nicht angezeigt werden.
Excel Web Access zeigt die Fehlermeldung:
Die Arbeitsmappe konnte nicht geöffnet werden.
Die Arbeitsmappe kann nicht geöffnet werden.
Oder auf englisch:
The workbook cannot be opened
Dieselbe Excel-Datei kann aber sehr wohl im Browser editiert werden (mit Hilfe der Office Web Apps)
In der Ereignisanzeige (Event Viewer) und in den ULS-Logs findet man einen Log-Eintrag mit der Event-ID: 3760, Quelle „SharePoint Foundation“ und Aufgabenkategorie „Datenbank“.
Ist-Zustand
SharePoint Umgebung
- SharePoint 2013 SP1 (On-Premises, 3 Tier Cluster)
- MS SQL-Server 2008 R2 Failover-Cluster
- Backup: AvePoint DocAve 6 SP6
- Nintex Workflow 2013 & Nintex Forms 2013
- OWA / WAC
- Workflow-Manager
- BI
- Monitoring
ULS Log
In den ULS Logs findet man folgenden Eintrag mit der Event-ID: 3760:
Product: SharePoint Foundation
Process | w3wp.exe |
---|---|
Product | SharePoint Foundation |
Category | Database |
EventID | 3760 |
Level | Critical |
Message | DE
SQL Database ‚Content_DB‚ on SQL Server instance ‚SQL_Instance‚ not found. Additional error information from SQL Server is included below. Die von der Anmeldung angeforderte Content_DB-Datenbank kann nicht geöffnet werden. Fehler bei der Anmeldung. Fehler bei der Anmeldung für den Benutzer ‚Domain\ExcelServiceUser‚. EN SQL Database ‚Content_DB‘ on SQL Server instance ‚SQL_Instance‘ not found. Additional error information from SQL Server is included below. Cannot open database ‚Content_DB‘ requested by the login. The login failed. |
Name | WebMethod: OpenWorkbook |
Component | |
Result | |
Error |
Ereignisprotokoll
In der Windows Ereignisanzeige (Event Viewer) ist folgender Event Log Eintrag mit der Event-ID: 3760 vorhanden:
Event-ID: 3760
Protokoll(name) | Anwendung |
---|---|
Quelle | SharePoint Foundation |
Aufgabenkategorie | Datenbank |
Ebene | Kritisch |
Ereignis-ID | 3760 |
Details | DE
Die SQL-Datenbank ‚Content_DB‚ für die SQL Server-Instanz ‚SQL_Instance‚ wurde nicht gefunden. Weitere Fehlerinformationen aus SQL Server finden Sie unten. Die von der Anmeldung angeforderte Content_DB-Datenbank kann nicht geöffnet werden. Fehler bei der Anmeldung. EN SQL Database ‚Content_DB‘ on SQL Server instance ‚SQL_Instance‘ not found. Additional error information from SQL Server is included below. Cannot open database ‚Content_DB‘ requested by the login. The login failed. |
Fix
Möglichkeit 1 – Den Benutzer auf die Datenbank berechtigen (SSMS)
SSMS offnen. Verbindung mit der im Log-Eintrag erwähnten SQL-Instanz (hier „SQL_Instance„) herstellen.
Den Benutzer aus dem Logeintrag (hier „Domain\ExcelServiceUser„) in SSMS unter Sicherheit > Anmeldungen finden (bei Bedarf neu erstellen) und Eigenschaften öffnen.
Im Fenster „Anmeldungseigenschaften“ auf der linken Seite „Benutzerzuordnung“ auswählen.
Auf der rechten, oberen Seite ein Häkchen für die Datenbank aus dem Log setzen (hier „Content_DB„).
Unten rechts die Mitgliedschaft in Datenbankrolle „SPDataAccess“ aktivieren und mit OK bestätigen.
(Wahrscheinlich würde auch die Datenbankrolle „db_owner“ funktionieren.)
Möglichkeit 2 – Benutzer per PowerShell berechtigen
Hinweis: Diese Schritte haben wir nicht ausgeführt, da wir die Berechtigung per SSMS vergeben haben.
SharePoint 2013 Management Shell mit administrativen Rechten starten.
Folgende Zeilen ausführen (vorher anpassen).
# Alle Web-Anwendungen anzeigen.
Hier die URL merken, die zu der in den Logs stehenden DB gehört (hier: Content_DB)
Get-SPWebApplication
# In dieser Zeile <Web Application URL> durch die URL aus dem vorigen Schritt ersetzen.
$w = Get-SPWebApplication –Identity <Web Application URL>
# Alle Anwendungspools mit dazugehörigen Account-Namen auflisten.
In unserem Fall müssen wir uns den Account-Namen merken, unter dem die „Excel Services“ laufen (hier: Domain\ExcelServiceUser)
Get-SPServiceApplicationPool
# In dieser Zeile<ProcessAccountName> durch den Account-Namen aus dem vorigen Schritt ersetzen.
$w.GrantAccessToProcessIdentity("<ProcessAccountName>")
Die Schritte führen dazu, dass der Account, unter dem die Excel-Services laufen, in der Datenbankrolle „db_owner“, auf der Inhaltsdatenbank der gewählten Webanwendung, Mitglied wird.
Links
- www.techtask.com: Excel Services: The workbook cannot be opened
- stepbistep.net: The workbook cannot be opened – Excel Services error on SharePoint 2010
Der Beitrag ID: 3760 – The login failed. Login failed for user ‚Domain\ExcelServiceUser‘ – SharePoint 2013 erschien zuerst auf Die SharePoint-Wiese.