Текущее время: Ср, июл 23 2025, 01:05

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Суммы в ALV
СообщениеДобавлено: Ср, мар 21 2007, 09:32 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 22 2006, 11:14
Сообщения: 136
Сделал тестовый простой отчетик, в нем выводятся суммы и под суммы, также есть кнопки в тулбаре сумма и подсумма. Делаю другой отчет, когда зову АЛВ все почти так же, но при запуске несчитаются суммы и подсуммы, и кнопок (под)сумм нет на тулбаре, что куда подевалось?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Суммы в ALV
СообщениеДобавлено: Ср, мар 21 2007, 09:44 
Почетный гуру
Почетный гуру
Аватара пользователя

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


А в Fieldcataloge поле do_sum вы используете?

Вот пример:

REPORT z_demo_alv_sort.

TABLES : vbak.

TYPE-POOLS: slis. " ALV Global types

SELECT-OPTIONS :
s_vkorg FOR vbak-vkorg, " Sales organization
s_kunnr FOR vbak-kunnr, " Sold-to party
s_vbeln FOR vbak-vbeln. " Sales document

SELECTION-SCREEN :
SKIP, BEGIN OF LINE,COMMENT 5(27) v_1 FOR FIELD p_max.
PARAMETERS p_max(2) TYPE n DEFAULT '20' OBLIGATORY.
SELECTION-SCREEN END OF LINE.

DATA:
BEGIN OF gt_vbak OCCURS 0,
vkorg LIKE vbak-vkorg, " Sales organization
kunnr LIKE vbak-kunnr, " Sold-to party
vbeln LIKE vbak-vbeln, " Sales document
netwr LIKE vbak-netwr, " Net Value of the Sales Order
waerk LIKE vbak-waerk, " Document currency
END OF gt_vbak.

*---------------------------------------------------------------------*
INITIALIZATION.

v_1 = 'Maximum of records to read'.

*---------------------------------------------------------------------*
START-OF-SELECTION.

PERFORM f_read_data.

PERFORM f_display_data.

*---------------------------------------------------------------------*
* Form f_read_data
*---------------------------------------------------------------------*
FORM f_read_data.

SELECT * INTO CORRESPONDING FIELDS OF TABLE gt_vbak
FROM vbak
UP TO p_max ROWS
WHERE kunnr IN s_kunnr
AND vbeln IN s_vbeln
AND vkorg IN s_vkorg.

ENDFORM. " F_READ_DATA
*---------------------------------------------------------------------*
* Form f_display_data
*---------------------------------------------------------------------*
FORM f_display_data.

DEFINE m_fieldcat.
add 1 to ls_fieldcat-col_pos.
ls_fieldcat-fieldname = &1.
ls_fieldcat-ref_tabname = 'VBAK'.
ls_fieldcat-do_sum = &2.
ls_fieldcat-cfieldname = &3.
append ls_fieldcat to lt_fieldcat.
END-OF-DEFINITION.

DEFINE m_sort.
add 1 to ls_sort-spos.
ls_sort-fieldname = &1.
ls_sort-up = 'X'.
ls_sort-subtot = &2.
append ls_sort to lt_sort.
END-OF-DEFINITION.

DATA:
ls_fieldcat TYPE slis_fieldcat_alv,
lt_fieldcat TYPE slis_t_fieldcat_alv,
lt_sort TYPE slis_t_sortinfo_alv,
ls_sort TYPE slis_sortinfo_alv,
ls_layout TYPE slis_layout_alv.

m_fieldcat 'VKORG' '' ''.
m_fieldcat 'KUNNR' '' ''.
m_fieldcat 'VBELN' '' ''.
m_fieldcat 'NETWR' 'X' 'WAERK'.
m_fieldcat 'WAERK' '' ''.

m_sort 'VKORG' 'X'. " Sort by vkorg and subtotal
m_sort 'KUNNR' 'X'. " Sort by kunnr and subtotal
m_sort 'VBELN' ''. " Sort by vbeln

ls_layout-cell_merge = 'X'.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
is_layout = ls_layout
it_fieldcat = lt_fieldcat
it_sort = lt_sort
TABLES
t_outtab = gt_vbak.

ENDFORM. " F_DISPLAY_DATA


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 09:53 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 22 2006, 11:14
Сообщения: 136
Ага, я сотрел уже этот отчет, и использую тоже самое, но вот ни кнопок, ни сумм нет...


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

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


Исходник можно, чтоб можно детально поговрить? :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 10:06 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 22 2006, 11:14
Сообщения: 136
Code:
REPORT  ZM_REP.

TYPES:
      begin of ty_kna1,
        kunnr LIKE kna1-kunnr,
        land1 LIKE kna1-land1,
        regio LIKE kna1-regio,
        ort01 LIKE kna1-ort01,
        name1 LIKE kna1-name1,
        wrbtr LIKE vbak-netwr,"kna1-umsa1,
        waers LIKE vbak-waerk,"kna1-uwaer,
      end of ty_kna1,

      begin of ty_bseg,
        kunnr LIKE bsid-kunnr,
*        land1 LIKE kna1-land1,
*        regio LIKE kna1-regio,
*        ort01 LIKE kna1-ort01,
*        name1 LIKE kna1-name1,
        blart LIKE bsid-blart,
        belnr LIKE bsid-belnr,
        bldat LIKE bsid-bldat,
        wrbtr LIKE bsid-wrbtr,
        waers LIKE bsid-waers,
      end of ty_bseg.

data: wa_kna1 type table of ty_kna1,
      wa_bseg type table of ty_bseg,
      ca_bseg type ty_bseg,
      ca_kna1 type ty_kna1,
      sum type wrbtr.

SELECTION-SCREEN BEGIN OF BLOCK ip WITH FRAME TITLE text-t10.
select-options: land for ca_kna1-land1," obligatory,
            reg for ca_kna1-regio,
            city for ca_kna1-ort01,
            kn for ca_kna1-kunnr.
SELECTION-SCREEN END OF BLOCK ip.

SELECTION-SCREEN BEGIN OF BLOCK ip1 WITH FRAME TITLE text-t11.
select-options: date for sy-datum obligatory.
parameters: eweek  radiobutton group radi,
            emonth radiobutton group radi,
            eyear  radiobutton group radi.
SELECTION-SCREEN END OF BLOCK ip1.

*case 'X'.
*  when eweek.
*    perform p_eweek.
*  when emonth.
*    perform p_emonth.
*  when eyear.
*    perform p_eyear.
*endcase.

START-OF-SELECTION.

perform sel.
perform disp_data.

form sel.

select kunnr land1 regio ort01 name1 from kna1
  into corresponding fields of table wa_kna1
  where kunnr in kn and land1 in land and regio in reg and ort01 in city.

    SELECT kunnr blart belnr bldat shkzg wrbtr waers FROM BSID
    APPENDING CORRESPONDING FIELDS OF TABLE wa_bseg
      FOR ALL ENTRIES IN wa_kna1
    WHERE kunnr = wa_kna1-kunnr and bldat in date and shkzg = 'H'.

    SELECT kunnr blart belnr bldat shkzg wrbtr waers FROM BSAD
    APPENDING CORRESPONDING FIELDS OF TABLE wa_bseg
      FOR ALL ENTRIES IN wa_kna1
    WHERE kunnr = wa_kna1-kunnr and bldat in date and shkzg = 'H'.

loop at wa_kna1 into ca_kna1.
clear sum.
  loop at wa_bseg into ca_bseg
    where kunnr = ca_kna1-kunnr.
    sum = sum + ca_bseg-wrbtr.
  endloop.

  ca_kna1-wrbtr = sum.
  ca_kna1-waers = ca_bseg-waers.
  modify wa_kna1 from ca_kna1.
endloop.

endform.

form disp_data.
  type-pools: slis.

  DEFINE m_fieldcat.
    add 1 to ls_fieldcat-col_pos.
    ls_fieldcat-fieldname   = &1.
    ls_fieldcat-ref_tabname = 'KNA1'.
    ls_fieldcat-do_sum      = &2.
    ls_fieldcat-cfieldname  = &3.
    ls_fieldcat-seltext_m   = &4.
    ls_fieldcat-no_zero     = 'X'.
    append ls_fieldcat to lt_fieldcat.
  END-OF-DEFINITION.

  DEFINE m_sort.
    add 1 to ls_sort-spos.
    ls_sort-fieldname = &1.
    ls_sort-up        = 'X'.
    ls_sort-subtot    = &2.
    append ls_sort to lt_sort.
  END-OF-DEFINITION.

  DATA:
    ls_fieldcat TYPE slis_fieldcat_alv,
    lt_fieldcat TYPE slis_t_fieldcat_alv,
    lt_sort     TYPE slis_t_sortinfo_alv,
    ls_sort     TYPE slis_sortinfo_alv,
    ls_layout   TYPE slis_layout_alv.

  m_fieldcat 'LAND1' ''  '' 'Ñòðàíà'.
  m_fieldcat 'REGIO' ''  '' 'Ðåãèîí'.
  m_fieldcat 'ORT01' ''  '' 'Ãîðîä'.
  m_fieldcat 'NAME1' ''  '' 'Äåáèòîð'.
  m_fieldcat 'WRBTR' 'X' 'WAERS' 'Ñóììà'.
  m_fieldcat 'WAERS' ''  '' 'Âàëþòà'.

  m_sort 'LAND1' 'X'.
  m_sort 'REGIO' 'X'.
  m_sort 'ORT01' 'X'.
  m_sort 'NAME1' ''.

  ls_layout-cell_merge = 'X'.
  ls_layout-numc_sum = 'X'.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
            is_layout   = ls_layout
            it_fieldcat = lt_fieldcat
            it_sort     = lt_sort
       TABLES
            t_outtab    = wa_kna1.
endform.


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

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
А в филдкаталоге сумму к валюте не надо ли привязать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 10:21 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 22 2006, 11:14
Сообщения: 136
Code:
m_fieldcat 'WRBTR' 'X' 'WAERS' 'Ñóììà'

а это не то?


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

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Похоже, что то. Вот ещё ссылочка интересная:
http://sapboard.ru/forum/viewtopic.php?t=19628


Последний раз редактировалось sibrin Ср, мар 21 2007, 10:24, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 10:23 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
он привязал
Code:
  m_fieldcat 'WRBTR' 'X' 'WAERS' 'Noiia'.

  DEFINE m_fieldcat.
...
    ls_fieldcat-cfieldname  = &3.
...
  END-OF-DEFINITION.



а реюз филдкаталог мерж моветон?


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

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
А ls_fieldcat-ctabname не надо ли заполнить?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 10:41 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
sibrin написал:
А ls_fieldcat-ctabname не надо ли заполнить?


точно, но это не решает проблемы пошел_погулять, надо еще заполнять как минимум ls_fieldcat-TABNAME,DATATYPE, INTTYPE, INTLEN, REF_FIELDNAME?, REF_TABNAME?, DDIC_OUTPUTLEN?.

а во избежании всяких забываний лучше структурку сделать, действительно, но если лень и не стоит того:

Code:
DATA:
      BEGIN OF wa_kna1 OCCURS 0,
        kunnr LIKE kna1-kunnr,
        land1 LIKE kna1-land1,
        regio LIKE kna1-regio,
        ort01 LIKE kna1-ort01,
        name1 LIKE kna1-name1,
        wrbtr LIKE vbak-netwr,"kna1-umsa1,
        waers LIKE vbak-waerk,"kna1-uwaer,
      END OF wa_kna1.

TYPES: ty_kna1 LIKE wa_kna1.

...

  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
   EXPORTING
     i_program_name               = sy-repid
   I_INTERNAL_TABNAME           = 'WA_KNA1'
     i_inclname                   = sy-repid
    CHANGING
      ct_fieldcat                  = lt_fieldcat[]

... изменяйте что вам надо

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      is_layout   = ls_layout
      it_fieldcat = lt_fieldcat
      it_sort     = lt_sort
    TABLES
      t_outtab    = wa_kna1.



Последний раз редактировалось Galka Ср, мар 21 2007, 10:52, всего редактировалось 1 раз.

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

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Кстати, пошел_погулять, не мог бы ты сравнить, чем отличается филд-каталог после 'REUSE_ALV_FIELDCATALOG_MERGE' от того, что ты делаешь руками.

Если удастся определить, в чём именно собака зарыта, пожалуйста, напиши.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 10:53 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
я так и сравнила :wink:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 11:04 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Но в другой-то программе, где, как я понял, не валюта, а безразмерное число, всё работает. Вот и хотелось бы понять ту дельту, которая необходима для валюты.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 21 2007, 11:11 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
в какой другой программе? поподробнее.

А если суммировать надо, то как минимум типы прописать DATATYPE, что это именно числовой тип. Поискать надо на форуме - сто раз уже обсуждалось.


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

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


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

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


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

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