Somente para informações sobre ALV.
Usando mesmo event_handler para vários ALVs no mesmo programa
Nos eventos tem o parâmetro oculto sender para todos os eventos, utilizá-lo para definir qual objeto ALV está sendo utilizado para um evento compartilhado.
Ex.:
handle_alv_hotspot_click FOR EVENT hotspot_click OF cl_gui_alv_grid
IMPORTING
e_row_id
e_column_id
es_row_no
sender,
O SENDER define o objeto ALV sendo executadoo naquele momento.
Para conseguir saber qual está sendo executado existem várias maneiras, eu fazia lendo qual container estava sendo utilizado, mas achei uma maneira mais fácil de um exemplo no SDN.
Primeiro define um nome para o objeto ALV utilizando o metodo SET_NAME.
Ex: go_alv_adi_nf->set_name('ADI_NF').
Quanto é executado dentro do evento, utilizar o método para pegar o nome do ALV definido.
Ex.:
FORM handle_alv_hotspot_click USING iv_row_id TYPE lvc_s_row
is_column_id TYPE lvc_s_col
is_row_no TYPE lvc_s_roid
io_sender TYPE REF TO cl_gui_alv_grid.
DATA lv_name TYPE string.
CALL METHOD io_sender->get_name
RECEIVING
name = lv_name.
IF lv_name = 'ADI_NF'.
ELSE.
ENDIF.
========================================================================
quarta-feira, 19 de junho de 2019
segunda-feira, 3 de junho de 2019
ES_J_1BNF_ADD_DATA - NF WRITER
Opa.. essa ADD_DATA não tava passando quando é uma NF writer. Tem uma nota que explica como funciona, mas pelo blog abaixo fica mais fácil de entender.
Outro detalhe.. nessa caso ele tem um método especifico para J1B1N
ADD_DATA_J1B1N
https://blogs.sap.com/2016/09/08/badi-nova-chamada-automaticamente-na-nf-writer-j1b1nj1b2n/
Outro detalhe.. nessa caso ele tem um método especifico para J1B1N
ADD_DATA_J1B1N
https://blogs.sap.com/2016/09/08/badi-nova-chamada-automaticamente-na-nf-writer-j1b1nj1b2n/
Assinar:
Postagens (Atom)