" Include - Z_INCL_FEED_DEFAULT.
*&---------------------------------------------------------------------*
*& Form Z_SELECAO
*&---------------------------------------------------------------------*
form Z_SELECAO .
PERFORM z_select_mara.
" Confere se retornou dados no select
IF sy-subrc = 0.
PERFORM z_select_makt.
PERFORM z_select_mard.
ELSE.
MESSAGE 'Não foi encontrados registro(s) com os dados informados ' TYPE 'I'.
ENDIF.
PERFORM z_feed_table.
endform. " Z_SELECAO
*&---------------------------------------------------------------------*
*& Form Z_SELECT_MARA
*&---------------------------------------------------------------------*
FORM z_select_mara .
SELECT matnr
ersda
ernam
FROM mara
INTO TABLE it_mara
UP TO 100 ROWS
WHERE matnr IN so_matnr
.
ENDFORM. " Z_SELECT_MARA
*&---------------------------------------------------------------------*
*& Form Z_SELECT_MAKT
*&---------------------------------------------------------------------*
FORM z_select_makt .
SELECT matnr
spras
maktx
FROM makt
INTO TABLE it_makt
FOR ALL ENTRIES IN it_mara
WHERE matnr = it_mara-matnr
AND spras = p_spras
.
ENDFORM. " Z_SELECT_MAKT
*&---------------------------------------------------------------------*
*& Form Z_SELECT_MARD
*&---------------------------------------------------------------------*
FORM z_select_mard .
SELECT matnr
werks
lgort
pstat
FROM mard
INTO TABLE it_mard
FOR ALL ENTRIES IN it_mara
WHERE matnr = it_mara-matnr
AND werks = p_werks
AND lgort = p_lgort
.
ENDFORM. " Z_SELECT_MARD
*&---------------------------------------------------------------------*
*& Form Z_feed_table
*&---------------------------------------------------------------------*
FORM z_feed_table .
LOOP AT it_mara INTO st_mara.
READ TABLE it_makt INTO st_makt WITH KEY matnr = st_mara-matnr.
READ TABLE it_mard INTO st_mard WITH KEY matnr = st_mara-matnr
werks = p_werks
lgort = p_lgort .
st_outtab-check = space.
st_outtab-matnr = st_mara-matnr.
st_outtab-ersda = st_mara-ersda.
st_outtab-maktx = st_makt-maktx.
st_outtab-werks = st_mard-werks.
st_outtab-lgort = st_mard-lgort.
st_outtab-pstat = st_mard-pstat.
APPEND st_outtab TO it_outtab.
CLEAR : st_outtab.
ENDLOOP.
ENDFORM. " Z_feed_table
Mostrando postagens com marcador Include's Ativos. Mostrar todas as postagens
Mostrando postagens com marcador Include's Ativos. Mostrar todas as postagens
quinta-feira, 14 de julho de 2011
Include - Z_INCL_DECLARA_DEFAULT
*&---------------------------------------------------------------------*
" Aee gente, hoje eu acordei com mou preguiça de fika fazendo as mesmas
" declarações e selects portanto estarei mostrando como faz um include,
" éééé... vcs vão ver como eh facil.
" O objetivo das includes e elas virarem objetos para uso de varios
" programas ao mesmo tempo, portanto depois de criados (caso esteja sendo
" usados pro programas que vc não tem o controle ) tentem não mexer neles
" o maximo possivel.
" Pra faze eh muito facil, soh escrever 'INCLUDE' e escrever o nome da
" da mesma, ai é soh clicar duas vezes e pronto.
" A include criada abaixo será uma declaração de tipos, estruturas e
" tabelas internas padrão pra que eu não precisemos declarar isso toda hora.
" Include -- Z_INCL_DECLARA_DEFAULT "
" Tabelas transparentes ....
TABLES : mara
.
" Tipos .....
TYPES :
" Tabela de clientes ..
BEGIN OF ty_mara,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
END OF ty_mara,
BEGIN OF ty_makt,
matnr TYPE makt-matnr,
spras TYPE makt-spras,
maktx TYPE makt-maktx,
END OF ty_makt,
BEGIN OF ty_mard,
matnr TYPE mard-matnr,
werks TYPE mard-werks,
lgort TYPE mard-lgort,
pstat TYPE mard-pstat,
END OF ty_mard,
BEGIN OF ty_outtab,
check TYPE c,
matnr TYPE mara-matnr,
ersda TYPE mara-matnr,
maktx TYPE makt-maktx,
werks TYPE mard-werks,
lgort TYPE mard-lgort,
pstat TYPE mard-pstat,
END OF ty_outtab
.
" Estruturas ....
DATA : st_mara TYPE ty_mara,
st_makt TYPE ty_makt,
st_mard TYPE ty_mard,
st_outtab TYPE ty_outtab,
st_outtab2 TYPE ty_outtab
.
" Tabelas internas ....
DATA : it_mara TYPE TABLE OF ty_mara,
it_makt TYPE TABLE OF ty_makt,
it_mard TYPE TABLE OF ty_mard,
it_outtab TYPE TABLE OF ty_outtab,
it_outtab2 TYPE TABLE OF ty_outtab
.
" Tela de seleção .....
SELECTION-SCREEN BEGIN OF BLOCK b1.
SELECT-OPTIONS : so_matnr FOR mara-matnr.
PARAMETERS : p_spras TYPE makt-spras,
p_werks TYPE mard-werks,
p_lgort TYPE mard-lgort
.
SELECTION-SCREEN END OF BLOCK b1.
" Aee gente, hoje eu acordei com mou preguiça de fika fazendo as mesmas
" declarações e selects portanto estarei mostrando como faz um include,
" éééé... vcs vão ver como eh facil.
" O objetivo das includes e elas virarem objetos para uso de varios
" programas ao mesmo tempo, portanto depois de criados (caso esteja sendo
" usados pro programas que vc não tem o controle ) tentem não mexer neles
" o maximo possivel.
" Pra faze eh muito facil, soh escrever 'INCLUDE' e escrever o nome da
" da mesma, ai é soh clicar duas vezes e pronto.
" A include criada abaixo será uma declaração de tipos, estruturas e
" tabelas internas padrão pra que eu não precisemos declarar isso toda hora.
" Include -- Z_INCL_DECLARA_DEFAULT "
" Tabelas transparentes ....
TABLES : mara
.
" Tipos .....
TYPES :
" Tabela de clientes ..
BEGIN OF ty_mara,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
END OF ty_mara,
BEGIN OF ty_makt,
matnr TYPE makt-matnr,
spras TYPE makt-spras,
maktx TYPE makt-maktx,
END OF ty_makt,
BEGIN OF ty_mard,
matnr TYPE mard-matnr,
werks TYPE mard-werks,
lgort TYPE mard-lgort,
pstat TYPE mard-pstat,
END OF ty_mard,
BEGIN OF ty_outtab,
check TYPE c,
matnr TYPE mara-matnr,
ersda TYPE mara-matnr,
maktx TYPE makt-maktx,
werks TYPE mard-werks,
lgort TYPE mard-lgort,
pstat TYPE mard-pstat,
END OF ty_outtab
.
" Estruturas ....
DATA : st_mara TYPE ty_mara,
st_makt TYPE ty_makt,
st_mard TYPE ty_mard,
st_outtab TYPE ty_outtab,
st_outtab2 TYPE ty_outtab
.
" Tabelas internas ....
DATA : it_mara TYPE TABLE OF ty_mara,
it_makt TYPE TABLE OF ty_makt,
it_mard TYPE TABLE OF ty_mard,
it_outtab TYPE TABLE OF ty_outtab,
it_outtab2 TYPE TABLE OF ty_outtab
.
" Tela de seleção .....
SELECTION-SCREEN BEGIN OF BLOCK b1.
SELECT-OPTIONS : so_matnr FOR mara-matnr.
PARAMETERS : p_spras TYPE makt-spras,
p_werks TYPE mard-werks,
p_lgort TYPE mard-lgort
.
SELECTION-SCREEN END OF BLOCK b1.
Assinar:
Postagens (Atom)