AXForum  
Go Back   AXForum > Microsoft Dynamics NAV > NAV: Прочие вопросы
All
Forgotten Your Password?
Register Forum Rules FAQ Members List Today's Posts Search

 
 
Thread Tools Search this Thread Display Modes
Old 26.05.2006, 20:18   #1  
Storkich is offline
Storkich
Участник
 
149 / 10 (1) +
Join Date: 08.03.2007
Если надо выгрузить в эксель 50000 строчек через оле, то это долго.
Гараздо быстрее если в HTML
А потом екселем открыть.
Есть формочка которая древобразно по спецификациям выводит состав изделия, оч. удобно
Попробуйте, жду отзывов.
Old 05.06.2006, 11:31   #2  
BlueSky is offline
BlueSky
Участник
 
1 / 10 (1) +
Join Date: 20.07.2005
Quote:
Originally Posted by Storkich View Post
Если надо выгрузить в эксель 50000 строчек через оле, то это долго.
Гараздо быстрее если в HTML
А потом екселем открыть.
Есть формочка которая древобразно по спецификациям выводит состав изделия, оч. удобно
Попробуйте, жду отзывов.
Чего-то фигОвый ексельник она генерит.
Old 06.06.2006, 05:55   #3  
gennady is offline
gennady
Участник
 
92 / 11 (1) +
Join Date: 27.09.2004
Location: Иркутск
Ну, почему же... Попробовал выводит табл. с 35 тыс. строк. Этим методом вывелось за 15 сек, а стандартным (с пом. табл. 370 Excel Buffer) вывелось за 640 сек. Скорость выше почти на 98%. Впечатляет. Можно строки выводить этим методом, а красоту наводить уже как обычно, через оле. :О)
Old 15.06.2006, 09:39   #4  
gennady is offline
gennady
Участник
 
92 / 11 (1) +
Join Date: 27.09.2004
Location: Иркутск
Вот, воспользовавшись идеей Storkichа, сделал функции экспорта в Excel. Операция проходит быстрее более чем в 10 раз. Попробуйте...
[attachment=469:attachment]
Attached Files
File Type: fob Fast_Excel_Export.fob (74.6 KB, 451 views)
Old 30.06.2006, 15:48   #5  
LOGIC_BBS is offline
LOGIC_BBS
Участник
 
61 / 10 (1) +
Join Date: 14.12.2005
Quote:
Originally Posted by Gennady Antropov View Post
Вот, воспользовавшись идеей Storkichа, сделал функции экспорта в Excel.
Замечательная весчь получилось, спасибо вам
Единственный вопрос, у меня почему то вылетает ошибка
Вызов функции _Open неудачен MS Office Excel вернул следующее сообщение: Метод _Open из класса Workbooks завершен не верно
Эта ошибка вылетает если в триггере

Sheet2 - OnAfterGetRecord()
InsData(Number, 1, 'Хай №' + FORMAT(Number), TRUE, 20, 4);
InsData(Number, 3, FORMAT(Number), FALSE, 10, 0);

TRUE, 20, 4 не равны стандартным значениям т.е. FALSE, 10, 0

И при разборе xml в логах пишется вот это;

Ошибка XML в "Настройка книги"
Причина: Слишком много тегов
Файл: C:\DOCUME~1\kas_leo\LOCALS~1\Temp\report.xml
Группа: Workbook
Тег: Styles


Ошибка XML в "Таблица"
Причина: Ошибочное значение
Файл: C:\DOCUME~1\kas_leo\LOCALS~1\Temp\report.xml
Группа: Row
Тег: Cell
Атрибут: StyleID
Значение: s3_1

Ошибка XML в "Таблица"
Причина: Ошибочное значение
Файл: C:\DOCUME~1\kas_leo\LOCALS~1\Temp\report.xml
Группа: Row
Тег: Cell
Атрибут: StyleID
Значение: s3_1

Ошибка XML в "Таблица"
Причина: Ошибочное значение
Файл: C:\DOCUME~1\kas_leo\LOCALS~1\Temp\report.xml
Группа: Row
Тег: Cell
Атрибут: StyleID
Значение: s3_1
В чем проблема даже не могу представить, может поможете разобраться?
С уважением LOGic
Old 04.07.2006, 06:41   #6  
gennady is offline
gennady
Участник
 
92 / 11 (1) +
Join Date: 27.09.2004
Location: Иркутск
Спасибо за обнаруженный баг
Выкладываю скорректированный вариант.
Attached Files
File Type: fob Fast_Excel_Export.fob (75.6 KB, 2017 views)
Old 04.07.2006, 14:00   #7  
LOGIC_BBS is offline
LOGIC_BBS
Участник
 
61 / 10 (1) +
Join Date: 14.12.2005
Quote:
Originally Posted by Gennady Antropov View Post
Спасибо за обнаруженный баг
Выкладываю скорректированный вариант.
Спасибо Вам, работает
Простите еще раз, но помогите разобраться в формулами или ткните носом где об этом можно прочитать.

InsFormula(2, 3, '=SUM(R3C3:R' + FORMAT(Number) + 'C3)', TRUE, 12, 4);
Как я понимаю вот здесь будет в ячейке формула ‘=Sum(R3C3:R3000C3)’, я не понимаю как же в Execl это трансформируется в =СУММ(C3:C3000) :-)

Ну и наверное совсем нахальный вопрос. Не могли бы вы выложить пример формирования отчета в xls ну хотя бы простейшего бланка ну не знаю там, например приходный ордер. Учусь я только, спасибо за понимание.
С уважением LOGic
Old 05.07.2006, 05:23   #8  
gennady is offline
gennady
Участник
 
92 / 11 (1) +
Join Date: 27.09.2004
Location: Иркутск
А вы в Excel запустите запись макроса и введите пару формул, скажем, =SUM($C$3:$C$5) и =SUM(C3:C5), остановите запись, нажмите Alt F11 и посмотрите как эти формулы записаны на VB.

Что касается примера, то я именно так и строю отчеты, как в выложенном репорте-примере: сначала заполняю врем. табл. Excel Buffer данными в триггерах OnAfterGetRecord соотв. элементов данных, затем уже в Report.OnPostReport (т.е. в самом конце работы отчета) ч/з ф-ю EndBook выгружаю данные из Excel Buffer в Excel и получаю соотв. перемен. Automation, после навожу окончательный глянец: рисую рамки, произвожу выравнивания, объединения и т.п. (это также есть в примере). Причем, мне пока не было необходимости выводить в Excel документы (типа ПКО), а только, скажем, остатки товаров и т.п. (которые и требуют долгого формирования). Такого рода операции по выводу документов лучше использовать ч/з шаблоны, как это делается в стандартном функционале Navision (см. напр. Form 12440). Мой же рабочий пример, боюсь, вас только больше запутает, т.к. я их реализовывал еще до окончания работы над данным пакетом функций.
Old 05.07.2006, 13:20   #9  
unalexia is offline
unalexia
Участник
 
79 / 10 (1) +
Join Date: 28.12.2005
Quote:
Originally Posted by Storkich View Post
Если надо выгрузить в эксель 50000 строчек через оле, то это долго.
Гараздо быстрее если в HTML
А потом екселем открыть.
Есть формочка которая древобразно по спецификациям выводит состав изделия, оч. удобно
Попробуйте, жду отзывов.
ТЫ КРУТ!!! спасибо тебе. раньше использовал Automation => ОЧЕНЬ МЕДЛЕННО!!! Через Excel Buffer => проблемы с форматированием!!!
Твой способ THE BEST!.
Синтаксис используемого языка?
Old 05.07.2006, 15:38   #10  
LOGIC_BBS is offline
LOGIC_BBS
Участник
 
61 / 10 (1) +
Join Date: 14.12.2005
Еще бы хотелось узнать что за Codeunit 72113? А то эго в fob_ах нет.
Old 06.07.2006, 11:35   #11  
RobiBaggio is offline
RobiBaggio
Участник
RobiBaggio's Avatar
 
285 / 10 (1) +
Join Date: 16.02.2004
Коллеги, я может сильно туплю, но расскажите как пользоваться этой замечательной, судя по описанию, тулзой?
Old 06.07.2006, 16:41   #12  
unalexia is offline
unalexia
Участник
 
79 / 10 (1) +
Join Date: 28.12.2005
Quote:
Originally Posted by Storkich View Post
Если надо выгрузить в эксель 50000 строчек через оле, то это долго.
Гараздо быстрее если в HTML
А потом екселем открыть.
Есть формочка которая древобразно по спецификациям выводит состав изделия, оч. удобно
Попробуйте, жду отзывов.
кстати. очень удобно подключить

TextFile.CREATETEMPFILE;
FileName := TextFile.NAME + '.xls';
TextFile.CLOSE;

InitXLS(FileName);

тогда не будет пробле с повторным открытием файла. Всегда создается уникальный файл в TMP-папке пользователя. пользуйтесь очень удобно.
Old 06.07.2006, 18:17   #13  
Storkich is offline
Storkich
Участник
 
149 / 10 (1) +
Join Date: 08.03.2007
Вай народу понравилось?
Я использую два способа для формирования отчетов
1) Легко программить, быстро работает, минимум формитирования.
2) Легко программить, медлено работает, но красиво. Главное легко программить.
Ща соберу все фобы в один и попробую Доку написать.
Пока всё бесплатно.
Old 06.07.2006, 18:29   #14  
Storkich is offline
Storkich
Участник
 
149 / 10 (1) +
Join Date: 08.03.2007
Quote:
Originally Posted by LOGIC View Post
Еще бы хотелось узнать что за Codeunit 72113? А то эго в fob_ах нет.
Это для предачи файлов по сети если работашь через терминал, а нужно отправить на рабочий стол.
Old 06.07.2006, 18:48   #15  
Storkich is offline
Storkich
Участник
 
149 / 10 (1) +
Join Date: 08.03.2007
Кому надо тот поправит под себя, всё на что ругается - то закометаривайте.
Советую обратить внимание на CU 72109
Пример работать не будет из за отсутсвия файлов, но логика такая
Берется красивый екселевский файл
и пробуете что нибудь в него впечатать.
Attached Files
File Type: rar Storkich.rar (39.0 KB, 440 views)
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Рейтинг@Mail.ru
All times are GMT +3. The time now is 10:21.
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Contacts E-mail, Advertising.