Справка надстройки InfoPath - сохранение копии активного шаблона формы, отображение настраиваемой кнопки в режиме конструктора, вызов метода в решении формы - PullRequest
0 голосов
/ 01 июня 2009

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

Сначала немного информации о нашей среде. У нас есть пользовательский процесс, который подключается к MOSS, загружает соответствующие сборки источника данных для заданной формы и вызывает их для загрузки данных из базы данных в форму (например, информации об адресе получателя в шаблоне письма). Этот процесс запускается при загрузке формы и передаче параметров (через URL) для извлечения данных. Я могу приблизить это поведение путем передачи параметров в локально сохраненный шаблон формы через командную строку.

Вооружившись этими знаниями, я решил создать надстройку InfoPath, которая будет выполнять следующие действия:

  1. Отображение пользовательской кнопки панели инструментов в режиме «Дизайн», которую может щелкнуть редактор шаблонов, чтобы заполнить форму примерами данных (требуется передать параметры).
  2. Когда кнопка нажата, сохраните копию активного шаблона во временную папку и используйте команду Shell () для передачи параметров в форму. Затем копия формы будет запущена в отдельном окне InfoPath.

Я обращался к различным интерактивным учебным пособиям и Pro InfoPath 2007 от Apress для получения рекомендаций по этому вопросу, и, как и в предыдущих публикациях, обнаружил, что доступная информация очень ограничена. Я частично там, но столкнулся с несколькими проблемами:

  1. Мне удалось заставить кнопку настраиваемой панели инструментов отображаться, но только в режиме предварительного просмотра. Мне нужно, чтобы кнопка отображалась в режиме «Дизайн».
  2. Метод Application.ActiveWindow.XDocument.SaveAs (), по-видимому, сохраняет только форму, а не весь шаблон. Возможно, это потому, что я нахожусь в режиме предварительного просмотра, а не в режиме дизайна? Возможно, решение первой проблемы решит и это.
  3. Чтобы избежать двух проблем, описанных выше, я рассмотрел, как я мог бы вызывать обработчик FormEvents_Loading в своем решении на основе шаблона формы. Это позволило бы мне передать параметры теста без необходимости сохранять копию и запускать ее из командной строки. Я не мог понять, как это сделать.

Есть идеи или предложения? Заранее спасибо за помощь!

1 Ответ

0 голосов
/ 08 июня 2009

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

...