Текущее время: Пт, авг 01 2025, 14:54

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Заполнение набора ячеек через OLE
СообщениеДобавлено: Вт, фев 17 2009, 21:40 
Ассистент
Ассистент

Зарегистрирован:
Вт, авг 12 2008, 11:26
Сообщения: 39
всем привет. я создал excel отчет, в нем содержится приличное количество строк. ячейки заполняются по отдельности из внутр. таблички. можно ли как-нибудь заполнять наборы ячеек, а то больно медленно идет процесс?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 01:18 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
А тему чуть ниже не можете посмотреть?

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 10:33 
Ассистент
Ассистент

Зарегистрирован:
Вт, авг 12 2008, 11:26
Сообщения: 39
а что вы хотели этим сказать? мне прочитать все 30 страниц пред. темы??? по моему там речь идёт о шаблонах, а мне они ни к чему.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 11:04 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1556
Откуда: Москва
Вам ведь ссылку в предудыщем посте дали.
Хотя правильнее сказать, что тема не ниже, а выше: viewtopic.php?f=13&t=46719

В частности, моя разработка это делает (вывод таблиц в Excel): viewtopic.php?f=13&t=46704

_________________
Hе иди по течению, не иди против течения - иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 11:51 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Зачем все 30 страниц? :D
Достаточно первой со ссылкой для скачивания :wink:
А если серьезно, то лучше сразу комплексно подойти к проблеме, с учетом, что если уже сейчас требуют форму в Excel, то в будущем потребуют отчеты с шапкой, подписями и т.п., то есть без шаблонов не обойтись.
Пути решения конкретной проблемы с быстрой выгрузкой в Excel:
1.Эскпортировать таблицу в Clipboard с помощью cl_gui_frontend_services=>clipboard_export, импортировать в Excel содержимое с помощью метода VB Paste или PasteSpecial. естественно, что для экспорта нужно разделять поля с помощью cl_abap_char_utilities=>horizontal_tab
2.Выгрузить данные в текстовый файл с помощью cl_gui_frontend_services=>GUI_DOWNLOAD, прочитать его в Excel с помощью метода OLE2 Workbooks.Open
3.Воспользоваться советом 111.

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 18:10 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
damluar написал(а):
...речь идёт о шаблонах, а мне они ни к чему.

Ну, если переделывать отчет по-минимуму, и оставить за собой специфическую обработку через OLE (раскраска и т.д.) то понадобится заменить только заполнение ячеек. Нужно заменить вызов вашей функции присвоения значения ячейке на заполнение внутр. таблицы IT_VALUES:
VAR_NAME = <адрес ячейки>
VALUE = <значение>

и потом скормить ее модулю ZWWW_FILLFORM.
При параметре OPTIMIZE = 0 ускорение в несколько раз.

Но вообще то с шаблоном проще!

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 18:30 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1556
Откуда: Москва
Если человеку религия не позволяет создать пустой шаблон (я обычно создаю "COMMON\EMPTY"), зачем и время на него тратить?
Пусть сначала перечислит все остальные пунктики, которые ему запрещает религия, чтобы люди время на него не тратили впустую.

_________________
Hе иди по течению, не иди против течения - иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 18:46 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
111 написал(а):
Если человеку религия не позволяет создать пустой шаблон (я обычно создаю "COMMON\EMPTY"), зачем и время на него тратить?
Пусть сначала перечислит все остальные пунктики, которые ему запрещает религия, чтобы люди время на него не тратили впустую.


Я специально для таких случаев и выделил функцию заполнения в отдельный модуль ZWWW_FILLFORM, ему даешь уже открытый OLE-объект и табличку с данными. Модуль заполнит документ, не нарушая религиозных предпочтений, и дальше можно совершать с ним прочие OLE-обряды. :)

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Ср, фев 18 2009, 18:54 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1556
Откуда: Москва
Parazit написал:
Я специально для таких случаев и выделил функцию заполнения в отдельный модуль ZWWW_FILLFORM, ему даешь уже открытый OLE-объект и табличку с данными. Модуль заполнит документ, не нарушая религиозных предпочтений, и дальше можно совершать с ним прочие OLE-обряды. :)

Я предпочел не запариваться. Пустой шаблон места занимает порядка 10-15 Кб, нужен он в единственном экземпляре, да и в конце концов, его тоже можно сделать не совсем пустым - например, добавить в шапку дату и время выгрузки, название программы выгрузки, имя юзера.
Хотя методы заполнения, разумеется, тоже вызываются отдельно, уже открытым документом. А как иначе?

_________________
Hе иди по течению, не иди против течения - иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Заполнение набора ячеек через OLE
СообщениеДобавлено: Пт, апр 10 2009, 14:28 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, окт 28 2008, 10:39
Сообщения: 86
Хочу сделать групировку, делаю так

CALL METHOD OF worksheet 'Cells' = cell
EXPORTING
#1 = 3
#1 = 3.
CALL METHOD OF cell 'activate'.
CALL METHOD OF worksheet 'Columns' = Columns
EXPORTING
#1 = 3
#1 = 8.
CALL METHOD OF Columns 'Select' .
CALL METHOD OF Columns 'Group' .

не получается, помогите <я не знать русский языка>


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB