Главная SharePoint, Новое InfoPath 2010 сохранение данных в список SharePoint Server 2010
  • InfoPath 2010 сохранение данных в список SharePoint Server 2010

    Infopath logo

    У меня появилась небольшая задача, необходимо, что бы человек заходя на портал видел форму в несколько полей, мог эти поля  заполнить и нажать кнопку сохранить. После вся введённая информация должна  сохраниться в список SharePoint этого же сайта. Для меня ровно как и для многих администраторов InfoPath 2010 штука таинственная, а поэтому я решил накидать инструкцию по сохранение  данных формы InfoPath 2010 в список SharePoint Server 2010.

    Создания шаблона формы

    1. Я взял абсолютно чистую коллекцию сайтов на основе шаблона “Пустой Сайт” и запустил InfoPath 2010 из профессионального офиса. При запуске InfoPath Designer 2010 спрашивает на основе какого шаблона создавать форму.

    Capture0

    2.  Шаблон формы  “SharePoint List”  как раз и предназначен для сохранения данных в список, поэтому его я и выбрал. Следующим шагом InfoPath  спрашивает адрес сайта.  Но при указании сразу сообщает “The feeature reqires SharPoint Server 2010 or greater  with InfoPath Forms Services enabled”. Это связанно не с версией SharPoint, а с тем что на сайте SharePoint не включены нужные возможности.

    Capture1

    3. Для решения вышеописанной проблемы необходимо зайти в свойства коллекции сайтов и в возможностях включить фичу “Компоненты семейства веб-сайтов SharePoint Server Enterprise”, необходимую для работы InfoPath Forms Services. Сразу после включения возможности InfoPath даст продолжить создание формы

    Capture2

    4. Следующий важный шаг это создание нового списка. Поскольку у меня сайт новый и пустой, то списков там “негусто”. Я прошу InfoPath создать мне список для хранения информации которую я буду вводить на новой форме. Списку даю имя “Applications”, что переводится как заявки. Далее вы соглашаетесь с созданием нового “Data Connection” по которому введённая информация попадет в список Applications.

    Capture3

    5. На выходе вы получите созданную форму с примитивным видом.

    Capture5

     

    Настройка шаблона формы

    Мне нужно добиться следующего эффекта: Человек заходит на сайт, видит три вещи (поле “название компании”, поле “Текст проблемы” и кнопка “отправить” ) Ниже я приведу список того, что я сделал для выполнения задачи.

    1. На сайте SharePoint переименовываю список “Applications” в “Заявки”. Изначальный выбор англ. имени связан с формирование адреса (URL) списка при его создании. (http://portalname/Lists/Applications/)

    2. В списке “Заявки” добавляю новый столбец с многострочным текстом и называю его “Текст вопроса”, а так же переименовываю столбец “Название” в “Имя организации”.

    Capture6

    3. Переключаюсь на InfoPath  и начинаю работать с формой.  А именно  поле “Название” переименовываю в “Имя организации”.

    Capture7

    4. Создаю новое поле “Текст вопроса”. Делаю его обязательным. Ничего сложного там же в боковой панели “Fields”.

    Capture7-11

    5. Вставляю в форму элемент управления кнопка (Button). Вставить кнопку можно из ленты на закладке “Home” в блоке Controls.

    Capture7-1

    6.  Далее кручу-верчу, меняю местами элементы на форме, размер и тип шрифтов и на выходе получаю примитивную форму. Как перетаскивать элементы управления и причесывать внешне форму разберется любой кто работал c Microsoft Office.

    Capture9

    7. Теперь нужно, чтобы при нажатии на кнопку “Отправить” данные, которые человек введет ушли в список “Заявки”. Для этого на форме выбираем одним левым кликом кнопку и в ленте на закладке “Home” добавляем правило при нажатии кнопки. Подход простой, нажал кнопку отправить данные из текстовых полей ушли в список.

    Capture 10

    8. Когда все готово форму нужно сохранить локально  и опубликовать на SharePoint, по закрепив ее шаблон за списком. Сделать это легко двумя иконками в левом верхнем углу InfoPath Designer 2010.

    Capture 11

    Capture12

    9. Проверить успешность операций несложно. Для этого в InfoPath Designer 2010 нажмите F5, в открывшемся InfoPath Filler 2010 заполните форму и нажмите кнопку отправить. Если вы все сделали правильно, то в списке SharePoint появится новый элемент.

    Capture 13

     

    Публикация формы на странице сайта

    SharePoint Server 2010 позволяет выкладывать  формы на страницы вашего сайта и позволить заполнять их пользователями без использования InfoPath Filler 2010. Т.е делать все в браузере.

    Последовательно встраивания формы в страницу проста:

    1. Осуществляете переход на интересуемую страницу. Редактируете ее. Вставляете веб-часть “Формы Infopath”.

    Capture 14

    2.  После того, как веб-часть будет добавлена на страницу, зайдите в свойства веб-части. Установите использование вашего списка. А далее сохраните изменения на странице.

    Capture 15

    3.  Проверка проста. Откройте вашу страницу, заполните поля, нажмите кнопку отправить.

    Capture 16

     

    Если после нажатия кнопки отправить в вашем списке появился новый элемент, значит вы все сделали правильно. InfoPath  очень интересный инструмент и если вы хотите его освоить, то в качестве книги с примерами могу в заключении посоветовать книгу “InfoPath with SharePoint 2010 How-To”.

     

    MCT/MVP Илья Рудь

    • Рубрика: SharePoint,Новое
    • Автор: Илья Рудь
    • Дата: Понедельник 05 Мар 2012

Комментарии

  1. Стоит отметить, что если уж мы сделали список (Create a new SharePoint list), не надо модифицировать его средствами самого SharePoint.

    Если же список модифицировать средствами SharePoint, то при следующей публикации из InfoPath — InfoPath определит, что список кем-то изменен и запросит разрешение на перезапись.

  2. Следует заметить, что в Sharepoin 2010 (Standard or Enterprise), при включенной Feature, форма InfoPath при создании списка создается автоматически со всеми имеющимися в списке (представлении) полями. Для её правки достаточно нажать на риббоне кнопку с пиктограммой InfoPath. Если же на момент создания списка возможность была отключена, то после нажатия на пиктограмму создастся новая форма.

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

  4. Может кто-нибудь знает где посмотреть сложные формы Infopath?

  5. Mick, сложным сами не обучены. Я в инете описаний не видел. Вам только за буржуйской литературой.

  6. Илья, прежде всего спасибо за статьи, очень помогли в свое время взять хороший старт с шарепойнтом. Вот статья, как сделать простой интернет магазин на базе шарика и инфопас без единой строчки кода. Здесь как раз несколько типовых примеров использования более сложных форм, но изящно реализующих то, что другими средствами придется долго программировать.

    www.synergyonline.com/Blo...e%2D869b529f079d

    Еще один пример — где-то потерял ссылку, позже найду, это как заставить инфу добавлять формы в список от анонимных юзеров. Этот простой, казалось бы вопрос, стал для меня реальной головной болью, пока не наткнуля в инете на буржуйскую статейку, которая в пять минут позволила решить проблему.

  7. Илья, спасибо за наглядный пример,

    Тема очень интересная и с таких примеров удобно начинать ее освоение.

    У меня сейчас возникла необходимость построить простой workflow отправки комментариев пользователей на различных страницах. Я понял, что было бы просто это сделать на стандартном вебпарте размещения комментария (Note Board), если научиться стартовать процесс с события пользовательского активити, но вот какой workflow начать , на какой тип событий и как его настроить, пока не нашел. Не мог бы посоветовать где об этом почитать и можно ли вообще сделать воркфлоу на пользовательском активити? Спасибо авансом за совет!

  8. этот сервис можно включить только на Sharepoint 2010 Server Enterprise или возможно и на Sharepoint 2010 Server поставить ?

  9. Сейчас посмотрел таблицу сравнения: InfoPath Forms Services входит в SharePoint Server 2010 Enterprise

  10. перед тем как задать вопрос я её тоже смотрел, но думал может есть возможность поставить и на стандартный сервер 2010.

  11. Спасибо за статью,

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

  12. Жаль статейку про возможность добавления без прав на библиотеку так и не оставили (

  13. Илья, добрый день, как можно организовать отправку данных по нажатию на кнопку одновременно в список и вложенной формой на почту? Сейчас получается реализовать либо то, либо другое. Одновременно не получается даже через правила отправки (в них отсутствует возможность отправки данных в список).

  14. BRAND NEW CHRISTIAN LOUBOUTIN PEEP TOE PUMPS SIZE 40.5

  15. А как взять форму из аксеса и опубликовать ее на шарепоинте? Моя почта delphicpp@yandex.ru

  16. Здравствуйте,у меня есть форма infopath формата,надо перекинуть ее в sharepoint все 2010 года.у вас все понятно описано,проблема в том,что у меня изначально нет кнопок описанных в пункте 8. и как создать веб-часть формы infopath?заранее спасибо за ответ

    krasnovaao@tehnoprojekt.ru

  17. здравствуйте почему после публикации из инфопаса на сервере не добавляется элемент? выдает пустое окно нет полей название , и т.д.

  18. Добрый день.

    Подскажите пожалуйста, как одним кликом сделать несколько записей в библиотеке?

    Пример полей формы:

    ***

    Сопровождающий_________________

    Гость 1___________________

    Гость 2___________________

    Гость 3___________________

    Кнопка Submit

    ***

    Задача сделать так, чтоб каждый гость был новой записью, а у каждого гостя был один сопровождающий.

    Заранее спасибо!

  19. В свое время это был интересный продукт. Но он discontinued. Поэтому, полагаю, нет смысла задавать вопросы.

  20. Необходимо отметить, что при каждом открытии связанной таблицы или исходного списка в них отображаются обновленные данные. Однако изменения в структуре списке не отображаются автоматически в связанной таблице. Чтобы обновить связанную таблицу и применить к ней изменения структуры списка, необходимо щелкнуть таблицу правой кнопкой мыши в области переходов, выбрать пункт

Опубликовать

Я не робот.