Как автоматически обновлять свойства после того, как файл сгенерирован службой автоматизации слова?

Я использовал Open XML + Word Automation, чтобы сгенерировать текстовый файл из шаблона и преобразовать его в pdf. Теперь и текстовые документы, и сгенерированные PDF-файлы находятся в одной библиотеке документов. У словарных документов есть некоторые свойства, которые добавляются при их создании / загрузке в библиотеку.

Сейчас я пытаюсь автоматически добавлять свойства к PDF-файлам после их создания. PDF-файл будет иметь те же свойства, что и документ Word, из которого он был создан.

Сначала я попытался использовать приемник событий, но программа, похоже, не распознала, что в библиотеку документов добавлен новый элемент (сгенерированный PDF-файл).

Затем я попытался использовать рабочий процесс (SharePoint Designer), но он тоже не работает (не удалось запустить). Результат говорит: «Рабочий процесс AddPDFData был отменен системной учетной записью» и «Не удалось запустить AddPDFData». Рабочий процесс настроен на запуск при создании элемента. Я знаю, что сам рабочий процесс правильный, потому что он отлично работает, когда я устанавливаю его запуск при изменении элемента.

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

Спасибо!


person Aoma    schedule 01.11.2012    source источник


Ответы (1)


Очень неприятно, что приемники событий не срабатывают при создании документа, однако вы определенно можете использовать рабочий процесс и AutoStartOnCreate. Это работает, я это сделал. По крайней мере, это касается рабочих процессов, созданных Visual Studio 2010 в SharePoint 2010.

Я не могу сказать, в чем проблема вашего рабочего процесса, но я предлагаю, чтобы если вы добавили какой-либо элемент в список, рабочий процесс «не запустится» для этого элемента, а не только для элементов, сгенерированных WAS. Эта ошибка обычно означает, что рабочий процесс не может правильно проверить - неверные токены корреляции, что-то пропущено и т. Д., Вы можете поискать более подробную информацию в другом месте.

person Paul    schedule 28.03.2013