Текущее время: Вт, июл 22 2025, 23:45

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: ALV grid с "Шапкой"
СообщениеДобавлено: Пт, ноя 05 2004, 04:17 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Пт, ноя 05 2004, 04:13
Сообщения: 36
Пол: Мужской
Подскажите, пожалуйста, как при выводе отчета в ALV расположить над ним "Шапку" с каким-либо текстом (например с критериями виборки)

ЗЫ: Использую CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, ноя 05 2004, 04:45 
Гость
Параметры:
I_CALLBACK_TOP_OF_PAGE
I_CALLBACK_HTML_TOP_OF_PAGE
(На них есть документация)


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: Re: ALV grid с "Шапкой"
СообщениеДобавлено: Пт, ноя 05 2004, 07:18 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
barsu4onok написал:
Подскажите, пожалуйста, как при выводе отчета в ALV расположить над ним "Шапку" с каким-либо текстом (например с критериями виборки)

ЗЫ: Использую CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'


Пиши на мейл - вышлю пример - так будет проще.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: ALV grid с "Шапкой"
СообщениеДобавлено: Пт, фев 10 2006, 00:42 
Гость
OlegDm написал(а):
barsu4onok написал:
Подскажите, пожалуйста, как при выводе отчета в ALV расположить над ним "Шапку" с каким-либо текстом (например с критериями виборки)

ЗЫ: Использую CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'


Пиши на мейл - вышлю пример - так будет проще.


проще было бы, если вы разместили его в форуме


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, фев 10 2006, 02:48 
Гость
опережу Олега :)

для этого нам необходимо использовать события:

Code:
data: it_events type  slis_t_event  with header line.

* укажем форму для вывода шапки

it_events-name = 'TOP_OF_PAGE'.   
it_events-form = 'TOP_OF_PAGE_FORM'.   
append it_events. clear it_events.

* при вызове CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' не забудем
* передать таблицу событий
                      ...
                      it_events  = it_events[]
                      ...

* ну а в самой форме TOP_OF_PAGE_FORM выводим все что нам нужно

form top_of_page_form.                     
format color col_group.               
write 'Наша шапка'. 
format color off.                     
endform.   


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 13 2006, 15:10 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 24 2005, 15:55
Сообщения: 296
Пол: Мужской
А подскажите, как это же сделать при использовании
REUSE_ALV_GRID_DISPLAY?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 14 2006, 06:46 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
см. BCALV_FULLSCREEN_DEMO


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 29 2006, 07:14 
Специалист
Специалист

Зарегистрирован:
Чт, апр 13 2006, 08:44
Сообщения: 133
Откуда: 56
Пол: Мужской
Как сделать без
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
но с
CALL METHOD ref_alv->set_table_for_first_display
CALL METHOD ref_alv->refresh_table_display.

Code:
    handle_top_of_list          " заголовок при печати
        FOR EVENT print_top_of_list OF cl_gui_alv_grid,

- при печати текст добавляет, а такое
Code:
    handle_top_of_page          " заголовок
        FOR EVENT top_of_page OF cl_gui_alv_grid,

- не проходит - на экране шапки нет
:twisted: :twisted: :twisted:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 29 2006, 13:07 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, ноя 10 2004, 17:44
Сообщения: 97
Откуда: Москва
Пол: Мужской
Посмотрите примеры, особенно вызов функции REUSE_ALV_COMMENTARY_WRITE.

А если конкретно, то вот так можно сделать простейший заголовок:


Code:
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
      i_save             = 'X'
    i_callback_program = g_repid
    is_print           = is_print
    it_fieldcat        = gt_fieldcat[]
    it_events         = gt_events[]
  TABLES
    t_outtab           = gt_outtab.



FORM event_build USING rt_events TYPE slis_t_event.
  DATA: lt_event TYPE slis_alv_event.
  CLEAR lt_event.
  lt_event-name = 'TOP_OF_PAGE'.
  lt_event-form = 'MAKE_TOP_OF_PAGE'.
  APPEND lt_event TO rt_events.
  CLEAR lt_event.
  lt_event-name = 'USER_COMMAND'.
  lt_event-form = 'USER_COMMAND'.
  APPEND lt_event TO rt_events.

ENDFORM.                    "


FORM make_top_of_page.
  DATA: lt_top_of_page TYPE slis_t_listheader.
  DATA: lt_top_string TYPE slis_listheader.
   

  CLEAR lt_top_string.
  lt_top_string-typ = 'H'.
  lt_top_string-info = text-001 .
  APPEND lt_top_string TO lt_top_of_page.

   
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      it_list_commentary = lt_top_of_page.
ENDFORM.                    "make_top_of_page


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 29 2006, 13:24 
Специалист
Специалист

Зарегистрирован:
Чт, апр 13 2006, 08:44
Сообщения: 133
Откуда: 56
Пол: Мужской
Смотрел - понравилось
BCALV_FULLSCREEN_DEMO
BCALV_*

Да вот только мне надо чтобы объектами было...

в BCALV_TREE_DEMO похоже на правду:
Code:
* create emty tree-control
  call method tree1->set_table_for_first_display
     exporting
----->         is_hierarchy_header  = l_hierarchy_header    <------
               it_list_commentary   = lt_list_commentary
               i_logo               = l_logo
               i_background_id      = 'ALV_BACKGROUND'
               i_save               = 'A'
               is_variant            = ls_variant
     changing
               it_outtab            = gt_sflight "table must be emty !!
               it_fieldcatalog      = gt_fieldcatalog.

а для grid не получается так же....
:?:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 08 2007, 06:57 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, ноя 15 2005, 11:00
Сообщения: 288
С шапкой разобрался:
Code:
LS_EVENT-name = 'TOP_OF_PAGE'.
LS_EVENT-form = 'TOP_OF_PAGE'.
APPEND LS_EVENT to GT_EVENTS.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
     EXPORTING
        i_callback_program         = SY-REPID
        i_grid_title               = 'Выгрузка данных по з/плате'
        is_layout                  = alv_layout
        it_fieldcat                = alv_fieldcat
        i_default                  = 'X'
        I_SAVE                     = 'A'
        is_variant                 = stru_disvar
        IT_EVENTS                 = GT_EVENTS[]
     TABLES
        t_outtab                   = z_body
     EXCEPTIONS
        program_error              = 1
        OTHERS                     = 2.

FORM TOP_OF_PAGE.
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
       EXPORTING
            I_LOGO             = 'ENJOYSAP_LOGO'
            IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
ENDFORM.


А как вывести подпись внизу(напр. расшифровки подписей руководителей)?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 08 2007, 11:27 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, ноя 10 2004, 17:44
Сообщения: 97
Откуда: Москва
Пол: Мужской
Насколько я помню, практически так же - только необходимо другое присвоение "подпрограмма - событие". Не помню точно, но кажется, событие END_OF_PAGE.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 08 2007, 11:36 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, ноя 15 2005, 11:00
Сообщения: 288
Уже пробовал END_OF_PAGE - не получилось. Можно пример - что дописать к коду проги, чтобы шапка осталась и внизу можно было приписать чего-нить.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 08 2007, 13:36 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
Морской написал(а):
А как вывести подпись внизу(напр. расшифровки подписей руководителей)?

Подпись можно выводить при печати - событие PRINT_END_OF_LIST (см. BCALV_TEST_GRID_EVENTS).
Но если очень хочется, то событие END_OF_LIST (см. BCALV_TEST_FULLSCREEN_HTML).


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 09 2007, 04:55 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, ноя 15 2005, 11:00
Сообщения: 288
Уточню задачу - вывожу в сразу в excel через CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' с заданным форматом в stru_disvar. Сам ALV на экране не нужен - только excel.
В BCALV_TEST_FULLSCREEN_HTML подпись внизу по событию END_OF_LIST выводится, а в excel где она потерялась? Насколько понимаю надо смотреть лист header - шапка есть, а внизу ничего.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу 1, 2  След.

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


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

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


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

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