Текущее время: Вт, июн 24 2025, 01:04

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Вызов события INITIALIZATION в отчете
СообщениеДобавлено: Пт, июн 24 2005, 10:31 
Гость
Люди, может кто знает, как вызвать блок инициализации в отчете из внешней программы?

После долгих часов отладки SAP-овских модулей, я нашел, как вызвать событие AT SELECTION-SCREEN.
У них это делается следующим образом:
PERFORM %_SEL_SCREEN IN PROGRAM NAME_OF_PROGRAM.

Также я откопал, что все точки входа в отчет, получаются с помощью следующей фичи:

DATA: trig type RTRIG occurs 10 with header line.

load report 'NAME_OF_PROGRAM' part 'TRIG' into trig.

где в поле exto таблицы trig хранятся названия этих точек входа и не только.

Поиск просто перебором около 100 записей меня не радует, поэтому прошу помощи у вас!


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 10:55 
Гость
Удалось еще выяснить, что работают вызовы только те, поле INIO которых в таблице trig не равно нулю. Отсюда имеем уже 55 точек входа! Но при этом точка под названием INITIALIZATION имеет там нулевое значение в этом поле, значит надо каким-то образом заполнить эту запись правильными значениями и передать обратно. Как сделать все вышеуказанное я не догадываюсь, т.к. нечто противоположное load report'у САП не предусмотрел.

Есть какие-нить идеи?


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 11:12 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Не сочтите за оскорбление, но зачем???

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 11:32 
Гость
Есть стандартный ФМ WWW_DISPATCH_REQUEST.
Так вот отчет, из выходного списка которого делается HTML страничка в этом ФМ, этот отчет выполняется там именно с %_SEL_SCREEN, т.е. блок инициализации вообще не отрабатывает. Отсюда множество вытекающих проблем, например, не инициализируются переменные отчета.
Поэтому, необходимо вызывать блок инициализации отчета перед вызовом этого модуля! и тогда все ок! есть один способ, но он не более чем изврат, а именно: можно вызвать SUBMIT NAME_OF_PROGRAM USING SELECTION-SET 'VARIANT' AND RETURN, где VARIANT - это не существующий вариант. В таком случае выполнится блок инициализации и отчет выйдет по ошибке, возвращая управление нашей программе.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 11:32 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, сен 01 2004, 07:44
Сообщения: 174
действительно, не совсем понятно зачем это нужно :?
если вы хотите, чтобы отработала некая функциональность в initialization - оформите ее как form и вызывайте в своем отчете
perform ... in programm ... in found


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 11:33 
Гость
Сразу скажу что отчеты могут быть какие угодно и менять их нельзя!
:-)


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 11:53 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Т.е. надо список в HTML выгрузить?

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 11:57 
Гость
Да, необходимо получить список из отчета в виде HTML в таблице с типом W3HTML.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Пт, июн 24 2005, 12:12 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, сен 01 2004, 07:44
Сообщения: 174
посмотрите группу функций SURL, например ФМ WWW_HTML_FROM_LISTOBJECT


DATA: LIST LIKE ABAPLIST OCCURS 0 WITH HEADER LINE,
INTHTML LIKE W3HTML OCCURS 0 WITH HEADER LINE.

* submit report
SUBMIT ...
EXPORTING LIST TO MEMORY AND RETURN.

* get form from memory
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
LISTOBJECT = LIST
EXCEPTIONS
NOT_FOUND = 1
OTHERS = 2.

* konvert list to HTML
CALL FUNCTION 'WWW_HTML_FROM_LISTOBJECT'
TABLES
HTML = INTHTML
LISTOBJECT = LIST
EXCEPTIONS
OTHERS = 1.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 12:21 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Есть еще WWW_LIST_TO_HTML_WEB (появилась в ERP'04)

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 12:23 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, сен 01 2004, 07:44
Сообщения: 174
Сергей Королев написал:
Есть еще WWW_LIST_TO_HTML_WEB (появилась в ERP'04)


ну тут кому с какой версией повезло :)
предыдущий пример работает (заход в initialization)


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 12:26 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
vvk написал(а):
ну тут кому с какой версией повезло :)


Это да. Видимо, им наконец надоело все время писать тот же фрагмент, вот они и выпустили WWW_LIST_TO_HTML_WEB - он как раз вызывает отчет SUBMIT'ом, а потом конвертит список в HTML.

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 24 2005, 12:36 
Гость
К сожалению, у нас нет такого модуля.

А вот по поводу вызова 'WWW_HTML_FROM_LISTOBJECT' надо попробовать.

Спасибо всем!


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

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


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

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


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

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