передача данных из XML

отредактировано 12:11 Раздел: FastReport 3.0
Вот такой вопрос. Если не использовать подключение к базе данных в репорте, а передавать уже выбранные данные в формате XML. То можно ли эти данные как-то отобразить в отчете?

Может конечно придется первоначально из этого XML перевести в обычный статический вид все данные, полученные из базы?

И какими ссредствами это делать? IfrxUserDataSet? Туда все закидывать?

Комментарии

  • almanalman космополит
    отредактировано 12:11
    Buka написал:
    Вот такой вопрос. Если не использовать подключение к базе данных в репорте, а передавать уже выбранные данные в формате XML. То можно ли эти данные как-то отобразить в отчете?

    Может конечно придется первоначально из этого XML перевести в обычный статический вид все данные, полученные из базы?

    У меня создаётся впечатление, что когда Вы задаёте вопрос, то уже знаете на него ответ ;)
    Пока что IfrxUserDataSet - единственное решение.

    Buka написал:
    И какими ссредствами это делать? IfrxUserDataSet? Туда все закидывать?
    Насколько я помню, Вы используете Visual C++?
    В настоящее время такие работы ведутся для .NET версии. Возможно что когда эта работа будет закончена, Вы сможете использовать .NET assembles в Ваших C++ проектах.
  • отредактировано 12:11
    Да, я работаю в VisualC++.NET.

    Просто я обнаружила пример, где используется свой набор записей и все это динамически передается в IfrxUserdataSet (пример так и называется UserDataSet).
    Но там так замудрено. Пыталась поэксперементировать с этим кодом. Не могу пока во многом разобраться.
    Вот и хотела надеяться, что есть еще какие-нибудь способы передачи данных.
  • almanalman космополит
    отредактировано September 2005
    Buka написал:
    Просто я обнаружила пример, где используется свой набор записей и все это динамически передается в IfrxUserdataSet (пример так и называется UserDataSet).
    Но там так замудрено. Пыталась поэксперементировать с этим кодом. Не могу пока во многом разобраться.
    Вот и хотела надеяться, что есть еще какие-нибудь способы передачи данных.
    Да, там действительно замудрено. ;)
    Сегодня разбавил этот пример комментариями. Надеюсь, теперь он читается гораздо легче.

    Смысл примера в том, что для пользовательского датасета создаются два объекта - один для управления, другой для обработки событий.
    Объект для обработки событий реализован через ATL обёртку для IDispatch.

    Т.е. проще всего взять из примера класс CfrxUserDataSetEvents и переписать в нём пять методов: OnFirst, OnNext, OnPrior, OnCheckEOF и OnGetValue.

    Кстати, побочным эффектом правки CfrxUserDataSetEvents является возможность не переводить данные в статическую форму, а выбирать их
    из того же XML непосредственно в методе OnGetValue().

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.