Показаны сообщения с ярлыком Office Web Apps. Показать все сообщения
Показаны сообщения с ярлыком Office Web Apps. Показать все сообщения

понедельник, 27 апреля 2015 г.

SharePoint. Ссылка на загрузку документа.

Порой возникает необходимость дать ссылку на загрузку документа в библиотеке SharePoint.
Чтобы ссылка была именно на загрузку копии документа. В случае если это файл, который можно открыть в Office Web Apps, то у меня возникла ситуация когда документ из браузера Internet Explorer выдается на открытие:



После открытия этого документ в клиенте, т.е. в Microsoft Office Word 2013 - мы имеем возможность редактировать именно версию которая находится на сервере:




Нам же необходимо получить именно загруженную копию. Для этого надо передать путь скачиваемого файла как параметр странице download.aspx

http//host/_layouts/download.aspx?SourceUrl=http://host/library/myDoc.docx:

В случае, если в имени скачиваемого документа имеется кириллица, то необходимо предварительно выполнить кодирование URL. Ниже показан пример как это сделать, если Вы формируете ссылку на клиенте с использованием JavaScript:
var downloadPageUrl = "http://host/_layouts/download.aspx?SourceUrl=";
var souceFileUrl = "http://host/library/мойДокумент.docx";
var encSouceFileUrl = encodeURIComponent(souceFileUrl);
var downloadUrl = downloadPageUrl + encSouceFileUrl;
В общем проблема решается. Сама страница download.aspx наследуется от класса Download из сборки Microsoft.SharePoint.ApplicationPages.dll, в которой событие "OnLoad" читает параметр "SourceUrl" из URL и выдает полученный файл в виде потока байт с MIME-типом application/octet-stream:

пятница, 23 мая 2014 г.

Узнать версию Office Web Apps 2013 Farm

Решил проверить версию Office Web Apps.
Попробовал через запрос, используя PowerShell, но ответ не вернул нужный заголовок:
$answer = Invoke-WebRequest 'http://pk-sp-webapp/m/met/participant.svc/jsonAnonymous/BroadcastPing'
Потом узнал, что версию можно посмотреть в файле по адресу:
C:\ProgramData\Microsoft\OfficeWebApps\Data\local\OfficeVersion.inc
Но на моем сервере такой папки нет. Использовал поиск и нашёл OfficeVersion.inc по адресу:C:\Program Files\Microsoft Office Web Apps\AgentManager\OfficeVersion.inc
Вот его содержимое:
Что интересно, такой версии OWA я не нашел в таблице Тода.

Ошибка Office Web App 2013 после установки обновлений

Столкнулся с проблемой, возникает ошибка при открытии документы через OWA:
Выяснил какое обновление к этому приводит:

Делал несколько установок, восстанавливался из снэпшотов Hyper-V. Сейчас они называются Checkpoints:
На данный момент проблему можно решить пересозданием фермы, а можно сразу установить еще обновления:
При этом ошибка так же пропала только после переустановки фермы Office Web App. Для этого сначала надо выполнить команду PowerShell:
Remove-OfficeWebAppsMachine
Потом создать новую ферму, параметры могут быть другими:
New-OfficeWebAppsFarm -InternalURL "http://owa.domain.com" -EditingEnabled -AllowHttp
Установка последних обновлений так же решила проблему, когда появлялась ошибка:


Желательно обновить привязки на стороне фермы SharePoint, но не обязательно.
Все проблемы исчезли: