Professional Documents
Culture Documents
Alv
Alv
*-----------------------------------------------------------------------
* transparent tables (tabelas transparentes)
*-----------------------------------------------------------------------
tables: ekpo, " linha de cabe�alho pedido
mara, " dados gerais de material
makt, " textos breves de material
lfb1, " mestre de fornecedores (empresa)
lfa1, " mestre de fornecedores (parte geral)
adr6,
wyt3, " endere�os de e-mail (administra��o de endere�os
central)
mseg. " segmento de documento - material
*-----------------------------------------------------------------------
* tabela estrutura alv
*-----------------------------------------------------------------------
data: t_fieldcat type slis_t_fieldcat_alv with header line,
t_header type slis_t_listheader,
t_sort type slis_sortinfo_alv occurs 0 with header line,
e_layout type slis_layout_alv,
v_variant like disvariant,
v_print type slis_print_alv.
data: t_cabec type slis_t_listheader.
data: e_cabec type slis_listheader.
*-----------------------------------------------------------------------
* variables (variaveis)
*-----------------------------------------------------------------------
data: v_data(50) type c.
*-----------------------------------------------------------------------
* selection-screen (tela de sele��o)
*-----------------------------------------------------------------------
selection-screen begin of block b1 with frame title text-001.
*-----------------------------------------------------------------------
* top-of-page (cabe�alho)
*-----------------------------------------------------------------------
top-of-page.
perform cabecalho.
*-----------------------------------------------------------------------
*main processing - begin (programa principal - in�cio)
*-----------------------------------------------------------------------
start-of-selection.
perform seleciona_dados.
perform trata_dados.
perform monta_alv.
perform zebra_alv.
perform imprimir.
*&---------------------------------------------------------------------*
*& form cabecalho
*&---------------------------------------------------------------------*
form cabecalho .
e_cabec-typ = 'h'.
e_cabec-info = 'relat�Rio de qualidade'.
append e_cabec to t_cabec.
clear e_cabec.
select eord~ebeln
eord~matnr
eord~lifnr
lfa1~name1
lfa1~telf1
lfa1~telfx
lfa1~adrnr
lfa1~stras
lfa1~ort01
into table t_lfa1
from eord
inner join lfa1
on eord~lifnr eq lfa1~lifnr
where eord~ebeln in p_numero
and eord~matnr in p_mat.
select lifnr
into table t_wyt3
from wyt3
for all entries in t_lfa1
where lifnr eq t_lfa1-lifnr.
select smtp_addr
into table t_adr6
from adr6
for all entries in t_lfa1
where addrnumber eq t_lfa1-adrnr.
loop at t_lfa1.
loop at t_material where matnr = t_lfa1-matnr.
append t_relat.
clear t_relat.
endloop.
endloop.
t_fieldcat-fieldname = p_fieldname.
t_fieldcat-tabname = p_tabname.
t_fieldcat-datatype = p_inttype.
t_fieldcat-outputlen = p_outputlen.
t_fieldcat-reptext_ddic = p_reptext.
t_fieldcat-just = p_just.
append t_fieldcat.
clear t_fieldcat.
endform. " inserir_no_alv
*&---------------------------------------------------------------------*
*& form monta_alv
*&---------------------------------------------------------------------*
form monta_alv .
clear t_fieldcat.
t_fieldcat-fieldname = 'menge'.
t_fieldcat-tabname = 't_relat'.
t_fieldcat-ref_tabname = 'mseg'.
t_fieldcat-ref_fieldname = 'menge'.
append t_fieldcat.
clear t_fieldcat.
e_layout-zebra = 'x'.
e_layout-no_keyfix = ' '.
perform heade.
if sy-subrc <> 0.
message i000(zcbr) with 'n�O foram impressos os dados'.
endif.
endform. " imprimir