Открытие отчетов не в Terrasoft

Здравствуйте!

Может кто-нибудь сталкивался с проблемой запуска отчетов, созданных в Terrasoft, но которые должны запускаться из совершенно другого приложения, написанного, например в среде Visual Studio?
Разработано много отчетов в Administrator Terrasoft, но их также надо запускать из другого приложения, передавая определенные параметры? Как-то неохота заново переписывать эти отчеты. Знает ли кто-нибудь решение?
Через объектную модель с Terrasoft удается соединиться, данные тоже получаю, но отчеты никак пе получается. Выдается только пустая форма.

IConnector con = new ConnectorClass();
con.LoadConfigurations();
con.OpenConfigurationByName("1111", "USER", "PASSWORD");
IService ds = con.Services.GetNewItemByUSI("ds_ActClient");

... // обрабатываю данные

IService Report = con.Services.GetNewItemByUSI("fr_ActClientReport");
IService ReportPreviewer = con.Services.GetNewItemByUSI("wnd_BaseFastReportPreview");

IWindow rp = (IWindow)ReportPreviewer;
IFastReport r = (IFastReport)Report;
rp.Attributes["Report"] = r;
rp.Attributes["RecordID"] = ID;

rp.Show();

Нравится

2 комментария

Здравствуйте!

Вы все делаете правильно, только не хватает выполнить процедуры подготовки окна предосмотра отчета. Перед тем как выполнить rp.Show() сделайте еще Build и Prepare. В вашем случае это будет выглядеть так:

     IDskControl dc = (IDskControl)rp;
     dc.Build();
     rp.Prepare();
     rp.Show();

Cпасибо!
Все получилось!

Показать все комментарии