2010-02-24 5 views
0

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

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

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

ответ

0

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

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

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

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

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

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

Смежные вопросы