Módulo: DRAWBACK
Funcionalidade: Vinculação de Importação
Data/Hora da Publicação: 23/11/2006 00:00:00
Data/Hora Última Alteração: 17/02/2011 14:34:09
Descrição da Nota: AJUSTE NO TRATAMENTO DE INSUMOS ALTERNATIVOS.
Sintoma
Foi realizado uma alteração no parametro de insumos alternativos, o que gerou a necessidade de
realizar ajustes na vinculação dos pedidos de compra.
Solução
Foi realizado uma alteração no parametro de insumos alternativo, o que gerou a necessidade de
realizar ajustes na vinculação dos pedidos de compra.
6.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02501 Data: 23/11/2006 Hora: 16:26:31
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02501
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00025
Agrupamento : 00140
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01286 - 00001 - 6.0 - 00023 - AJUSTE PARA TRATAMENTO DO PARAMETRO DE CONTROLE DE ATO COMUM POR
----------------------------------------------------------------------------------------------------
AJUSTE NO TRATAMENTO DE INSUMOS ALTERNATIVOS.
----------------------------------------------------------------------------------------------------
Palavras Chave:
VINCULAÇÃO - PEDIDO - COMPRA - ATO - CONCESSÓRIO
/PWS/SAPMZYCI068
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI068F01
REPS /PWS/MZYCI068TOP
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI068F01
...
itab_ekko,
itab_eket,
itab_lfa1,
itab_zycit100,
itab_zycit079,
* >> Início da inclusão: FORM SELEC_APR
itab_zycit433,
* << Fim da inclusão
itab_zycit078.
SELECT SINGLE * FROM /pws/zycit321.
* >> Início da inclusão: FORM SELEC_APR
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433
WHERE dtde <= sy-datum
AND dtate >= sy-datum.
* << Fim da inclusão
PERFORM selec_atos.
IF NOT itab_atos[] IS INITIAL.
SELECT * FROM ekpo INTO TABLE itab_ekpo
WHERE ebeln IN s_ebeln
AND werks IN s_werks
...
...
ENDIF.
ELSE.
ENDIF.
ENDFORM.
FORM monta_376_apr.
* >> Início da exclusão: FORM MONTA_376_APR
IF NOT itab_ekpo[] IS INITIAL.
CLEAR: itab_zycit433. REFRESH itab_zycit433.
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433
FOR ALL ENTRIES IN itab_atos
WHERE matnr EQ itab_atos-matnr.
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM MONTA_376_APR
DATA: v_grupo TYPE /pws/zycit433-grupo,
v_flag TYPE c .
* << Fim da inclusão
LOOP AT itab_ekpo.
READ TABLE itab_zycit376 WITH KEY
ebeln = itab_ekpo-ebeln
ebelp = itab_ekpo-ebelp.
IF sy-subrc EQ 0.
...
...
ELSE.
READ TABLE itab_atos WITH KEY j_1bnbm = itab_ekpo-j_1bnbm.
ENDIF.
IF sy-subrc NE 0.
READ TABLE itab_zycit433 WITH KEY
* >> Início da exclusão: FORM MONTA_376_APR
matnr_alt = itab_ekpo-matnr.
IF sy-subrc NE 0.
* << Fim da exclusão
* >> Início da inclusão: FORM MONTA_376_APR
matnr = itab_ekpo-matnr.
CLEAR: v_flag.
IF sy-subrc EQ 0.
v_grupo = itab_zycit433-grupo .
LOOP AT itab_zycit433 WHERE grupo = v_grupo.
READ TABLE itab_atos WITH KEY matnr = itab_zycit433-matnr.
IF sy-subrc EQ 0.
v_flag = 'X'.
EXIT.
ENDIF.
ENDLOOP.
ENDIF.
IF v_flag NE 'X'.
* << Fim da inclusão
CONTINUE.
ENDIF.
ENDIF.
ENDIF.
READ TABLE itab_zycit100 WITH KEY
...
...
itab_atos-nrseqd = itab_zycit245-nrseqd .
itab_atos-nritem = itab_zycit245-nritem .
itab_atos-nratoc = itab_zycit244-nratoc .
itab_atos-matnr = itab_zycit245-codcomp .
itab_atos-j_1bnbm = itab_zycit245-j_1bnbm .
* >> Início da inclusão: FORM MONTA_ATOS_APR
itab_atos-grupo = itab_zycit245-grupo .
* << Fim da inclusão
itab_atos-tipo = itab_zycit244-tipo .
itab_atos-modalidade = itab_zycit244-modalidade.
itab_atos-data = itab_zycit244-dtatoc .
itab_atos-vlfob = itab_zycit245-netpr_t - itab_zycit245-vlvinc.
itab_atos-qtd_tot =
...
...
ENDFORM.
FORM move_atos.
DATA: BEGIN OF itab_mat_t OCCURS 0.
DATA: matnr LIKE mara-matnr.
DATA: END OF itab_mat_t.
* >> Início da inclusão: FORM MOVE_ATOS
DATA: v_grupo TYPE /pws/zycit433-grupo.
* << Fim da inclusão
itab_atos_t[] = itab_atos[].
IF /pws/zycit321-apr_imp IS INITIAL.
IF /pws/zycit321-c_comum IS INITIAL.
* >> Início da inclusão: FORM MOVE_ATOS
REFRESH itab_zycit433a.
* << Fim da inclusão
* >> Início da exclusão: FORM MOVE_ATOS
CLEAR: itab_zycit433. REFRESH itab_zycit433.
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433
WHERE matnr_alt EQ itab_zycit376_t-matnr.
* << Fim da exclusão
* >> Início da inclusão: FORM MOVE_ATOS
itab_zycit433a[] = itab_zycit433[].
CLEAR: v_grupo, itab_zycit433.
READ TABLE itab_zycit433 WITH KEY matnr = itab_zycit376_t-matnr.
v_grupo = itab_zycit433-grupo.
* << Fim da inclusão
* >> Início da exclusão: FORM MOVE_ATOS
itab_zycit433-matnr_alt = itab_zycit376_t-matnr.
itab_zycit433-matnr = itab_zycit376_t-matnr.
APPEND itab_zycit433.
* << Fim da exclusão
* >> Início da inclusão: FORM MOVE_ATOS
DELETE itab_zycit433a WHERE grupo NE v_grupo.
IF /pws/zycit321-it_ge IS INITIAL.
* << Fim da inclusão
LOOP AT itab_atos_t.
* >> Início da exclusão: FORM MOVE_ATOS
READ TABLE itab_zycit433 WITH KEY
* << Fim da exclusão
* >> Início da inclusão: FORM MOVE_ATOS
READ TABLE itab_zycit433a WITH KEY
* << Fim da inclusão
matnr = itab_atos_t-matnr.
* >> Início da exclusão: FORM MOVE_ATOS
IF sy-subrc NE 0.
* << Fim da exclusão
* >> Início da inclusão: FORM MOVE_ATOS
IF sy-subrc NE 0 AND
itab_atos_t-matnr NE itab_zycit376_t-matnr.
* << Fim da inclusão
DELETE itab_atos_t WHERE matnr EQ itab_atos_t-matnr.
* >> Início da inclusão: FORM MOVE_ATOS
ENDIF.
ENDLOOP.
ELSE.
DELETE itab_atos_t WHERE modalidade EQ 'I'
AND grupo NE v_grupo.
LOOP AT itab_atos_t WHERE modalidade EQ 'S'.
READ TABLE itab_zycit433a WITH KEY
matnr = itab_atos_t-matnr.
IF sy-subrc NE 0 AND
itab_atos_t-matnr NE itab_zycit376_t-matnr.
DELETE itab_atos_t WHERE matnr EQ itab_atos_t-matnr
AND modalidade EQ 'S'.
* << Fim da inclusão
ENDIF.
ENDLOOP.
* >> Início da inclusão: FORM MOVE_ATOS
ENDIF.
* << Fim da inclusão
ELSE.
DELETE itab_atos_t WHERE j_1bnbm NE itab_zycit376_t-j_1bnbm.
ENDIF.
ENDIF.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI068TOP
...
DATA: BEGIN OF itab_atos OCCURS 0 .
DATA: nrseqd LIKE /pws/zycit244-nrseqd,
nritem LIKE /pws/zycit245-nritem,
nratoc LIKE /pws/zycit244-nratoc ,
matnr LIKE /pws/zycit245-codcomp ,
* >> Início da inclusão:
grupo LIKE /pws/zycit245-grupo ,
* << Fim da inclusão
j_1bnbm LIKE /pws/zycit245-j_1bnbm ,
data LIKE /pws/zycit244-dtatoc,
modalidade LIKE /pws/zycit244-modalidade,
tipo LIKE /pws/zycit244-tipo,
qtd_tot LIKE /pws/zycit245-qtd_tot,
...
...
itab_zycit245 LIKE /pws/zycit245 OCCURS 0 WITH HEADER LINE,
itab_zycit100 LIKE /pws/zycit100 OCCURS 0 WITH HEADER LINE,
itab_zycit079 LIKE /pws/zycit079 OCCURS 0 WITH HEADER LINE,
itab_zycit078 LIKE /pws/zycit078 OCCURS 0 WITH HEADER LINE,
itab_zycit433 LIKE /pws/zycit433 OCCURS 0 WITH HEADER LINE,
* >> Início da inclusão:
itab_zycit433a LIKE /pws/zycit433 OCCURS 0 WITH HEADER LINE,
* << Fim da inclusão
itab_atos_t LIKE itab_atos OCCURS 0 WITH HEADER LINE.
DATA: v_marc ,
ok_code LIKE sy-ucomm ,
v_qtd_tot LIKE /pws/zycit245-qtd_tot ,
v_icon LIKE icon-id ,
...