Форум » [x]Harbour » Нужен конвертер DBF в XLS » Ответить

Нужен конвертер DBF в XLS

Oskar_Aa: Добрый день, нужен конвертер формата DBF (консольный xHarbour) в формат XLS, с перекодировкой из 866 в 1251 Спасибо...

Ответов - 105, стр: 1 2 3 4 5 6 All

Dima: Excel и так чудно понимает DBF формат

Oskar_Aa: Dima, Excel понимает, но проблема в том, что есть файл XLS в нем куча (30) листов, и 53 DBF файла-источника. При открытии XLS файла - запрос "обновить" и Если файлы источники в формате DBF то нужно Каждый файл DBF руками открывать - Грустно Если файлы источники в формате XLS - Excel Чудненько Все Сам Делает (Обновляет данные). Спасибо...

Pasha: Файл dbf можно просто открыть экселем, и затем сохранить его как xls Если это надо сделать программно - то с помощью TOleAuto


Oskar_Aa: Можно ли получить пример... xHarbour версия xHarbour Compiler build 1.0.0 (SimpLex) консольный вариант программы

Oskar_Aa: Можно ли получить пример... xHarbour версия xHarbour Compiler build 1.0.0 (SimpLex) консольный вариант программы

Pasha: Примерно так: oExcel := TOleAuto():New( "Excel.Application" ) cFile := '....dbf' oExcel:Workbooks:Open( cFile ) oExcel:Visible := .T. oSheet := oExcel:ActiveSheet oSheet:SaveAs('file.xls', 39)

Oskar_Aa: Ok, попробую...

Oskar_Aa: Dima, спасибо. Работает, как сделать обработку (конвертацию без активизации Excel). Обработка в фоновом режиме....

Pasha: У класса TSBrowse есть метод Excel2. Он как раз побайтно формирует файл xls. Этот класс есть, кажется, в поставке minigui

Oskar_Aa: Pasha, извени, что обращался к Dime... В строке oExcel:Visible := .Т. заменил на .F. результат Excel не активируется - то ЧТО Нужно, но файл XLS получается в режиме Read Only, в отдельных случаях тоже пойдет. с классом TSBROWSE метод Excel2 не разбирался... Пока нет времени. Спасибо.

Oskar_Aa: Где-то был момент по закрытию Excel... Pasha подскажи как де активировать (закрыть) Excel в процессах. oExcel := TOleAuto():New( "Excel.Application" ) cFile := Text_Dbf2 oExcel:Workbooks:Open( cFile ) oExcel:Visible := .F. oSheet := oExcel:ActiveSheet oSheet:SaveAs(Text_Xls2, 39)

Oskar_Aa: Поставил oExcel:Quit() - нормально.... Спасибо

Andrey: Есть DBF-база 80 тыс. записей. Нужно сделать из базы (взять часть полей) XLS-файл типа такого: Увеличить Сделал через Ole Excel - долго, минут 10-15 делается. Как бы побыстрей это сделать ? И еще до конца не просчитывает зараза, выдает в trace.log ошибку: TOleAuto Error 80010001 - и что это означает ?

SADSTAR4: Может сначала сделать что-то типа CSV-файла с выбранными данными а потом засосать его в Эксел

petr707: Excel имеет ограничение по числу строк, для версий ниже Excel 2007 - 64 или 32 тысячи строк. Возможно,проблема в этом.

gustow: Загуглил на "Excel error 80010001" - в частности, выдало ссылку и сюда: Перевод ошибок автоматизации (http://support.microsoft.com/kb/186063/ru). Может быть, поможет? А, скорее всего, это из-за ограничения Excel'а, про которое написал выше petr707 (сам я тоже как-то поубивался над длинной выборкой в Excel 2003 - вылетало, зараза, и все... оказалось - именно это). Андрей, а может выводить напрямую в BIF-файл? как здесь давненько обсуждалось

Andrey: gustow пишет: а может выводить напрямую в BIF-файл? А еще есть вариант сделать отчет в FastReport, а потом его экспортировать в BIF файл ! А что буржуи делают, может кто знает ?

Pasha: В классе TSBrowse из fivewin/minigui есть метод Excel2, который формирует файл xls, записывая двоичные данные. Его можно использовать, заменив источник информации: вместо колонок обьекта использовать поля файла. Это очень быстрый способ формирования xls

Oskar_AAA: Добрый день. Теперь поставлена задача: данные из файла(ов) DBF (количество записей разное) закинуть в файл XLS, имеющий кучу листов (10 - 15), с шапками и формтами ячеек....? Смотрел сообщения Gustow и Andrey, что-то не получается у меня. Октрываю два файла XLS источник и приемник, далее: 1. перейти на НУЖНЫЙ лист файла приеника 2. Скопировать данные из файла DBF/XLS (пример Gustow - "нумерация страниц excel") 3. Сформатировать лист файла приеника c Excel - грустно.. Вопросы: Как активировать Нужный лист в Нужной книге? Переход между книгами? Как форматироваь ячейки (формат, рамки, шрифт, фон итд)? Вариант, которым пользовался раньше (пакетная выгрузка в файлы DBF->конветация DBF to XLS->Загрузка Отчета(XLS) в котром просто ссылки на файл(ы) источник(и) ...) А Теперь переменное количество строк + форматирование (объединение ячеек по условию), + выделение цветом итд, + рамки.... Использую: Office 2010 & xHarbour Compiler build 1.2.1 (SimpLex) (Rev. 6476)

Andrey: Oskar_AAA пишет: c Excel - грустно.. Согласен полностью. Его можно использовать как простой показ небольших отчетов. Но если ты гуру в Ехеле, то конечно можно делать все... Переходи на FastReport и проблемы пропадут....



полная версия страницы