powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как сохранить DBGridEh в NativeExcel ?
6 сообщений из 6, страница 1 из 1
Как сохранить DBGridEh в NativeExcel ?
    #39432281
Алекс_1981
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я использую группировку в таблице библиотеки EhLIB. Необходимо сохранять данные в Excel.
Решил воспользоваться компонентами NativeExcel.

Но они не видят и не хотят работать с DbGridEh , а работают только с обычным DbGrid.
Присваиваю свойство: Dbgrid2Excel1.DBGrid:=DBGridEh1;
Ругается: [DCC Error] Unit26.pas(92): E2010 Incompatible types: 'TDBGrid' and 'TDBGridEh'

Как выходили из ситуации? Как заставить выгружать группированные данные из DbGridEh?
...
Рейтинг: 0 / 0
Как сохранить DBGridEh в NativeExcel ?
    #39432304
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алекс_1981,


Группировку таким образом (используя NativeExcel, как ты указал) ты не выведешь, как минимум потому, что в TDBGrid не умеет группировать данные.
...


TDBGridEh сам по себе умеет в иксель данные экспортировать. Не желаешь использовать сей механизм?



Код: pascal
1.
2.
3.
4.
uses ... DBGridEhImpExp;

...
  SaveDBGridEhToExportFile(TDBGridEhExportAsXLS, DBGridEh1, 'd:\doc\exp.xls', True)
...
Рейтинг: 0 / 0
Как сохранить DBGridEh в NativeExcel ?
    #39432326
Алекс_1981
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччДАлекс_1981,


Группировку таким образом (используя NativeExcel, как ты указал) ты не выведешь, как минимум потому, что в TDBGrid не умеет группировать данные.
...


TDBGridEh сам по себе умеет в иксель данные экспортировать. Не желаешь использовать сей механизм?



Код: pascal
1.
2.
3.
4.
uses ... DBGridEhImpExp;

...
  SaveDBGridEhToExportFile(TDBGridEhExportAsXLS, DBGridEh1, 'd:\doc\exp.xls', True)



1. Согласен, TDBGrid не умеет группировать - поэтому этим занимается компонент NativeExcel при экспорте в Excel
2. SaveDBGridEhToExportFile не сохраняет группировку в DBGridEh
...
Рейтинг: 0 / 0
Как сохранить DBGridEh в NativeExcel ?
    #39432402
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алекс_1981,

ну-ну, удачи. Будет он тебе сам собой группировать, как же.
...
Рейтинг: 0 / 0
Как сохранить DBGridEh в NativeExcel ?
    #39432494
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алекс_1981,

DBGridEh не является наследником от DBGrid. Поэтому привести DBGridEh к DBGrid не получится.
...
Рейтинг: 0 / 0
Как сохранить DBGridEh в NativeExcel ?
    #39463735
Ferret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если NativeExcel с исходниками, то экспорт из DBGridEh можно допилить. Надо скопировать DBGrid2Excel.pas, например, в DBGridEh2Excel.pas. В нем:
- меняем все "DBGrid2Excel" на "DBGridEh2Excel";
- в uses вместо DBGrids подключаем DBGridEh, GridsEh, EhLibVCL;
- меняем все "TDBGrid" на "TDBGridEh";
- находим объявление FDBGrid: TDBGrid; и меняем на FDBGridEh: TDBGridEh;
- меняем все "FDBGrid" на "FDBGridEh";
- создаем ресурсный фал DbgridEh2Excel.dcr со своей иконкой (можно не делать, но тогда не будет значка компонента);
- в .DPK файл NativeExcel добавить ресурс {$R 'DbgridEh2Excel.dcr'} и объявление "dbgrideh2excel in 'dbgrideh2excel.pas'";
- в файл проекта NativeExcel .DPROJ добавить добавить ресурс <DCCReference Include="DbgridEh2Excel.dcr"/> и объявление <DCCReference Include="dbgrideh2excel.pas"/>;

Далее пересобрать проект NativeExcel и подключить компонент. Вместе с DBGrid2Excel в палитре должен появиться и наш DBGridEh2Excel.
Если использовать в проекте только DBGridEh2Excel, то будет работать в таком виде, если нужно использовать одновременно DBGridEh2Excel и DBGrid2Excel, то вероятно во избежание Ambiguity между одинаковыми типами Dbgrid2excel и Dbgrideh2excel в DBGridEh2Excel.pas потребуется дополнительно переименовать одинаковые имена типов. Или просто использовать с указанием конкретного модуля через Dbgrideh2excel::, например:
DBGridEh2Excel1.DetailBorderStyle := Dbgrideh2excel::BorderStyleSingleThin;
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как сохранить DBGridEh в NativeExcel ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]