Infopath - изменение серверов sql - PullRequest
0 голосов
/ 25 февраля 2010

У меня есть форма InfoPath с шаблоном master-detail, с двумя таблицами в основном источнике данных. Я пытаюсь перенести это на новый SQL Server - ту же базу данных, только что перенесенную с машины SQL2005 на машину SQL2008.

Если я меняю имя сервера, он также хочет, чтобы я изменил базу данных и таблицы. Если я выбираю ту же базу данных и основную таблицу, привязки сохраняются для основной таблицы. Но, похоже, нет способа выбрать несколько таблиц при изменении источника данных, поэтому вы теряете привязки деталей.

Я что-то упустил - я довольно новичок в InfoPath.

1 Ответ

0 голосов
/ 22 марта 2010

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

Если вы используете решение с управляемым кодом, файлы находятся в папке «Шаблон формы InfoPath». Если вы используете обычный файл .xsn, добавьте .zip в конец имени файла и извлеките все файлы в папку (или вы можете использовать cabarc вместо zip).

Редактировать файл manifest.xsf. Должен быть тег dataobject для информации о вашем соединении с сервером (поиск по имени сервера - самый простой способ найти его в беспорядке). Просто измените имя сервера и сохраните файл.

Если вы используете управляемый код, то вы закончили, при следующем открытии проекта будет использоваться новое соединение. В противном случае вам нужно упаковать файл .xsn, используя либо cabarc, либо, я думаю, вы можете просто распаковать его.

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

Надеюсь, что это поможет - это очень тяжело сделать это с помощью самой программы, но не так уж плохо сделать это вручную (и легко писать).

...