Текущее время: Сб, авг 02 2025, 05:56

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Yandex [Bot]


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

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