BCB 6.0: Экспорт в Excel

vlad451vlad451 Украина, Запорожье
отредактировано 16:07 Раздел: FastReport 3.0
Скачал демо версию Fast Report 3 с вашего сайта. Установил на C++Builder 6.0 (путем сборки всех bpk-файлов). Создал отчет - попытался выполнить экспорт в Excel, получаю ошибку - Access violation... В другие форматы конвертирует нормально.
То ли у меня руки кривые, то ли в FR3 ошибка. Суть в том, что функционал FR3 устраивает наше предприятие, и если бы можно было конвертировать отчеты в Excel (обязательное условие!), то предприятие готово было бы купить Enterprise версию.

Версия C++Builder: 6.0 Enterprise Suite (Build 10.166) SP4
Версия Excel: 2000 (9.0.2812)
Операционная система: Windows 2004 Server SP4 (English)

Ответьте пожалуйста, как обойти эту проблему.

Комментарии

  • LexLex
    отредактировано 16:07
    Отправляй тестовый отчет (*.fr3) в саппорт
  • vlad451vlad451 Украина, Запорожье
    отредактировано 16:07
    Это все происходит в design-time. Т.е. я создал отчет, открыл его на предварительный просмотр, а при попытке экспорта возникает такая ошибка
  • LexLex
    отредактировано 16:07
    Да действительно в дизайне при попытки экспорта в Excel(OLE) вылиться AV при этом файл создаеться но данные в него не помещаються.
    ошибка здесь

    А зачем вам из дизайна экспортировать отчет?
  • vlad451vlad451 Украина, Запорожье
    отредактировано August 2006
    Ну вобщем-то ладно, в design-time можно обойтисьи без эксопрта, согласен. Однако же - баг...
    Сейчас у меня уже другая проблема: скомпилированный проект при попытке запуска выдает "The instruction at 0x004ea274 referenced memory at 0x00000008. The memory could not be read". Исходники:

    Unit1.h
    #ifndef Unit1H
    #define Unit1H
    //---------------------------------------------------------------------------
    #include <Classes.hpp>
    #include <Controls.hpp>
    #include <StdCtrls.hpp>
    #include <Forms.hpp>
    #include "frxClass.hpp"
    
    //---------------------------------------------------------------------------
    class TForm1 : public TForm
    {
    __published:	// IDE-managed Components
       TfrxReport *frxReport1;
       TButton *Button1;
       void __fastcall Button1Click(TObject *Sender);
    private:	// User declarations
    public:  // User declarations
       __fastcall TForm1(TComponent* Owner);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TForm1 *Form1;
    //---------------------------------------------------------------------------
    #endif
    

    Unit.cpp
    #include <vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma link "frxClass"
    [B]#pragma link "frxADOComponents"[/B]
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
       : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
      frxReport1->ShowReport();   
    }
    


    Обратите внимание на строку #pragma link "frxADOComponents" - это я добавил самостоятельно, т.к. если эту строку не включить, то ругань при запуске "Не могу найти класс TfrxADODatabase" (хотя проект нормально собирается).

    Что в данном случае можно сделать? Подскажите

    При работе с Delphi таких проблем нет - все работает (за исключением экспорта в Ексель в design-time)

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

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