quinta-feira, 14 de julho de 2011

Include - Z_INCL_FEED_DEFAULT

  " 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
Comentários
0 Comentários

Nenhum comentário:

Postar um comentário