Использование источника данных XML

Обсуждение Stimulsoft Reports.NET
Ответить
andr12
Сообщения: 6
Зарегистрирован: 23 окт 2006, 07:34
Откуда: moscow

Использование источника данных XML

Сообщение andr12 »

У меня затруднение с использованием источника данных из XML.
Создаю в дизайнере шаблон отчета с использованием ист. данных XML, прямо по
демке "How to bind to Xml in Report Designer" с сайта.

При этом, полные пути c:\demodata.xml и c:\demodata.xsd прописываются внуть .mrt файла.
И совершенно правомерно, используются в дизайн-тайме.

Моя проблема в том, что я не могу убедить SR, чтобы он в рантайме использовал те файлы, какие я укажу,
То есть, SR и в рантайме использует xml-файлы, с которым был задизайнен шаблон.

Код: Выделить всё

 
            string mrt = args[0];
            string xml = args[1] + ".xml";
            string xsd = args[1] + ".xsd";

            report1.Load(mrt);

            DataSet dataSet1 = new DataSet();
            dataSet1.ReadXmlSchema(xsd);
            dataSet1.ReadXml(xml);
            report1.RegData(dataSet1);

            report1.Render(true);
            PreviewControl.SaveConfig();
            PreviewControl.Refresh();
            PreviewControl.LoadConfig();
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Использование источника данных XML

Сообщение Edward »

andr12 писал(а):У меня затруднение с использованием источника данных из XML.
Создаю в дизайнере шаблон отчета с использованием ист. данных XML, прямо по
демке "How to bind to Xml in Report Designer" с сайта.

При этом, полные пути c:\demodata.xml и c:\demodata.xsd прописываются внуть .mrt файла.
И совершенно правомерно, используются в дизайн-тайме.

Моя проблема в том, что я не могу убедить SR, чтобы он в рантайме использовал те файлы, какие я укажу,
То есть, SR и в рантайме использует xml-файлы, с которым был задизайнен шаблон.

Код: Выделить всё

 
            string mrt = args[0];
            string xml = args[1] + ".xml";
            string xsd = args[1] + ".xsd";

            report1.Load(mrt);

            DataSet dataSet1 = new DataSet();
            dataSet1.ReadXmlSchema(xsd);
            dataSet1.ReadXml(xml);
            report1.RegData(dataSet1);

            report1.Render(true);
            PreviewControl.SaveConfig();
            PreviewControl.Refresh();
            PreviewControl.LoadConfig();
Вам необходимо указать название для dataSet1 либо при его создании

Код: Выделить всё

DataSet dataSet1 = new DataSet("mydataset");
либо при регистрации его в DataStore отчета:

Код: Выделить всё

report1.RegData("mydataset",dataSet1);
Спасибо.
Edward
Сообщения: 930
Зарегистрирован: 09 июн 2006, 12:23

Использование источника данных XML

Сообщение Edward »

Если отчет уже содержит источник данных с таким же именем, то их нужно предварительно удалить при помощи

Код: Выделить всё

report.Dictionary.Databases.Clear();
после этого Вы сможете зарегистрировать данные при помощи метода RegData с таким же названием.

Спасибо.

Ответить