Шаблон сайта SharePoint 2010 с библиотекой форм - шаблон формы содержит URL сайта

Я работаю над шаблоном сайта, который будет использоваться для создания сотен сайтов для разных организаций. Сайт должен содержать библиотеку форм с шаблоном формы InfoPath.

У меня вопрос - возможно ли создать шаблон и позволить опытным пользователям создавать сайты без участия администратора или разработчика? Если нет - какая самая простая альтернатива?

Проблема в том, что шаблон формы содержит URL сайта, и я не знаю, можно ли этого избежать. Как следствие, когда сайт создается и отправляется форма - он попадает в библиотеку исходного сайта.

Я создал несколько сайтов для пилотного проекта, и до сих пор занимался распаковкой файла XSN, редактированием URL-адреса вручную, повторной упаковкой в ​​XSN и публикацией в новой библиотеке. Это работает, но включает в себя ручной шаг в процессе создания сайта, который я хотел бы избежать. Вот строки, которые я редактирую:

<xsf:submit caption="Submit" disableMenuItem="no" onAfterSubmit="close" showStatusDialog="no">
    <xsf:davAdapter name="SharePoint Library Submit" submitAllowed="yes" overwriteAllowed="no">
        <xsf:folderURL value="http://my_farm_url/subsite1/form_lib"

Также здесь:

<xsf2:solutionPropertiesExtension branch="wss">
    <xsf2:wss path="http://my_farm_url/subsite1/form_lib"

Я изменяю subsite1 на subsite2.

Я попытался установить относительный URL, сначала к элементу отправки, а затем к обоим, но безрезультатно. Форма была обработана (в браузере), отправка сработала (без ошибок), но отправленная форма не была в библиотеке. Если вдаваться в подробности, формы в конечном итоге были отправлены в библиотеку форм на корневом сайте - http://my_farm_url/form_lib! Это имеет смысл, когда вы думаете об этом, вот где относительный URL form_lib с сайта, с точки зрения корневого сайта.

На данный момент единственное решение, которое я представляю, - это создать инструмент, который поможет пользователям создавать сайты на основе шаблона, фиксируя XSN за кулисами. Я не знаю, как опубликовать шаблон формы программно, но это должно быть возможно. Помимо этого неизвестного, он также не очень автоматизирован, и я буду очень рад, если будет возможно правильное решение, которое будет работать только с инструментами SharePoint/InfoPath.

1 ответ

Вам нужно запланировать EventReceiver, нет способа сделать это для настройки.

В EventReceiver вам нужно прочитать файл "Manifest.xsf", обновить узел XML, определить где URL и сохранить файл "Manifest.xsf".

Для чтения узла XML необходимо использовать System.Xml.dll

Другие вопросы по тегам