Страница 2 из 2
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 08 авг 2014, 11:04
HighAley
Здравствуйте.
Можно в ваш текст добавить больше конкретики?
На подобные общие фразы трудно дать какой-то конкретный ответ.
Неудобство только в том, что в шаблоне датасет нужно создавать вручную, потому как это делается отдельным приложением и создать из кода нет возможности.
Особенно интересует эта фраза. Можно привести пример кода, проект, чтобы увидеть как это всё реально работает. Вы вызываете метод report.Dictionary.Synchronize(); после регистрации данных?
Спасибо.
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 11 авг 2014, 14:32
fantomus
С кодом все хорошо, работает прекрасно.
Показывать даже нечего.
Суть в том, что что клиентское приложение, которму нужен отчет, не содержит кода по его формированию.
Серверное приложение генерирует отчет и отдает клиентскому (через веб-сервис).
Третье приложение - "дизайнер". Дизайнит отчеты и сохраняет в БД.
Так вот, что бы получить отчет с использованием Датасета нужно выполнить следующие действия:
- определить Датасет на клиенте
- описать (повторить) структуру Датасета в "Дизайнере" вручную (!)
- собственно, запросить через сервис новый отчет
Я имел в виду, что в интерфейсе дизайнера отчетов было бы неплохо иметь возможность загрузить Датасет из xml-файла, который очень легко сформировать на клиенте одной строчкой кода.
Как то так...
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 11 авг 2014, 14:37
fantomus
В дизайнере это форма "Новый источник данных".
Если при выборе адаптера данных "Данные из DataSet, DataTables" в открывшемся далее окне добавить кнопку "Загрузить из файла...", получилось бы как раз то...
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 11 авг 2014, 17:31
fantomus
Или добавить новый адаптер по аналогии с адаптером "Данные из CSV files", типа "Данные из DataSet (XML-файл)".
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 12 авг 2014, 13:01
HighAley
Здравствуйте.
А что вам мешает создать новое соединение к XML данным? Там достаточно указать XSD схему и в действиях словаря выбрать пункт Синхронизировать, чтобы загрузить структуру в дизайнер.
Спасибо.
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 12 авг 2014, 15:15
fantomus
Действительно, не обратил внимания на такую возможность.
Попробовал, но пока не выходит.
Делаю так:
1. Создаю xml+xsd файлы для Датасета с именем "data"
2. В дизайнере создаю новое соединение к XML данным из этих файлов
3. Пытаюсь формировать отчет:
stiReport1.RegData("data", myDataSet);
stiReport1.Dictionary.Synchronize();
stiReport1.Show();
В результате в отчете данные из xml файла. Если xml файл не использовать (только схему), то отчет пустой.
То есть, данные из Датасета в отчет в таком случае не попадают.
Как правильно?
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 13 авг 2014, 13:28
HighAley
Здравствуйте.
Для того, что бы прояснить, что происходит с отчётом, достаточно вызвать метод Design().
Скорее всего там будет два источника данных. И зарегистрированный вами будет называться data2.
Попробуйте перед регистрацией датасета вставить следующую строку:
Thank you.
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 13 авг 2014, 18:36
fantomus
Спасибо!
Заработало.
Design() я конечно делал и источник не дублируется
Что мне тоже поначалу показалось странным.
Я думал, что разные типы источников несовместимы.
Оказывается, еще как совместимы
Re: Как преобразовать параметр в бизнес-объект
Добавлено: 14 авг 2014, 17:53
HighAley
Здравствуйте.
Мы всегда рады вам помочь.
Обращайтесь, если понадобиться ещё помощь.
Спасибо.