Ошибка веб-части Microsoft Excel Online в SharePoint 2016 "Не удалось найти нужный файл"

Эта статья была написана Риком Андерингом, инженером по эскалации поддержки.

Сценарий

Вы пытаетесь отобразить книги Excel в веб-части Microsoft Excel Online в SharePoint 2016 и столкнулись со следующей ошибкой в веб-части при попытке загрузить: "Не удалось найти нужный файл".

Снимок экрана: сообщение об ошибке веб-части SharePoint 2016 Excel Online.

Вы заметите, что рабочие таблицы отображаются в браузере (просмотр, редактирование и предварительный просмотр) работают нормально, если нет других проблем.

Единая служба ведения журналов (ULS) не предоставит ничего полезного, но вы можете увидеть ошибки, похожие на следующие, когда SharePoint пытается подключить книгу:

Снимок экрана журнала ULS: не удалось получить целевой объект WOPI.

Служба единого ведения журналов Office Online Server (ULS) не будет содержать сообщений, связанных с этой проблемой, поскольку запрос даже не достигает сервера.

Причина

Причина этой конкретной проблемы может быть вызвана отсутствием или пользовательскими привязками для Office Online Server. В частности, может отсутствовать связь с "синдикатом". Эта привязка связана со всеми расширениями Excel и позволяет отображать их в веб-частях. В сценарии привязки акций вы увидите это при запуске командлета Get-SPWOPIBinding:

Замечание

Ваши "WopiZone" и "ServerName" могут отличаться.

Application : Excel
Extension : ODS
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : XLSB
ProgId 
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : XLSM
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : XLSX
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : ODS
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

Application : Excel
Extension : XLSB
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

Application : Excel
Extension : XLSM
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

Application : Excel
Extension : XLSX
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

Решение

Если привязка Syndicate отсутствует, добавьте действие syndicate в привязки WOPI, выполнив следующий командлет из одного из серверов SharePoint в качестве администратора фермы в консоли SharePoint PowerShell с поддержкой администратора фермы:

new-spwopibinding -server oos2016ocsi -action syndicate

Замечание

Эта проблема влияет только на продукты, упомянутые ранее, и может быть не единственным способом столкнуться с этой конкретной ошибкой. На момент написания этой статьи мы видели только это в этом конкретном сценарии.