Módulo: DRAWBACK
Funcionalidade: Ato Concessório
Data/Hora da Publicação: 01/06/2006 00:00:00
Data/Hora Última Alteração: 17/02/2011 13:48:38
Descrição da Nota: TRANSFERENCIA DE SALDO DE INSUMOS ALTERNATIVOS E ATO COMUM POR NCM
Sintoma
A transferencia de saldo do ato concessório não atende a insumos alternativos e ato concessório
comum por NCM
Solução
Ajustar transferencia para atender os cenarios de insumo alternativo e ato concessório comum por
NCM.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01484 Data: 01/06/2006 Hora: 09:17:11
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01484
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00023
Agrupamento : 00116
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
00513 - 00001 - 6.0 - 00022 - AJUSTE NO CALCULO DE SALDO DO ATO DE DESTINO NA TRANSFERENCIA DE
01012 - 00002 - 6.0 - 00022 - VINCULAÇÃO FORECAST E TRESFERENCIA DE SALDO DO ATO CONCESSÓRIO
01284 - 00003 - 6.0 - 00023 - AJUSTES PARA CONTROLE DE ATO CONCESSÓRIO COMUM POR NCM.
----------------------------------------------------------------------------------------------------
TRANSFERENCIA DE SALDO DE INSUMOS ALTERNATIVOS E ATO COMUM POR NCM
----------------------------------------------------------------------------------------------------
Palavras Chave:
TRANSFERENCIA - SALDO - NCM - ALTERNATIVO - ATO - CONCESSÓRIO
/PWS/SAPMZYCI040
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI040F02
REPS /PWS/MZYCI040I01
REPS /PWS/MZYCI040TOP2
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI040F02
...
nrseq = itab_zycit279_ap-nrseq
ebeln = itab_zycit279_ap-ebeln
ebelp = itab_zycit279_ap-ebelp.
IF itab_zycit279_ap-nrseqd_d IS INITIAL AND
itab_zycit279_e-nrseqd_d IS INITIAL.
* >> Início da exclusão: FORM SALVA_APONT
EXIT.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
Continue.
* << Fim da inclusão
ENDIF.
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d.
IF itab_zycit245_ap_s-tipo NE 'G'.
* >> Início da inclusão: FORM SALVA_APONT
IF /pws/zycit321-c_comum IS INITIAL.
REFRESH itab_zycit433.
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433
WHERE matnr_alt EQ itab_zycit279_ap-matnr.
itab_zycit433-matnr = itab_zycit279_ap-matnr.
itab_zycit433-matnr_alt = itab_zycit279_ap-matnr.
APPEND itab_zycit433.
LOOP AT itab_zycit433.
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d
codcomp = itab_zycit433-matnr.
IF sy-subrc EQ 0.
EXIT.
ENDIF.
ENDLOOP.
ELSE.
* << Fim da inclusão
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d
* >> Início da exclusão: FORM SALVA_APONT
codcomp = itab_zycit279_ap-matnr.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
j_1bnbm = itab_zycit279_ap-j_1bnbm.
ENDIF.
* << Fim da inclusão
ENDIF.
READ TABLE itab_zycit246_save WITH KEY
nrseq = itab_zycit279_ap-nrseq
ebeln = itab_zycit279_ap-ebeln
ebelp = itab_zycit279_ap-ebelp.
IF NOT itab_zycit279_e-nrseqd_d IS INITIAL.
READ TABLE itab_zycit245_e WITH KEY
nrseqd = itab_zycit279_e-nrseqd_d.
IF itab_zycit245_e-tipo NE 'G'.
* >> Início da inclusão: FORM SALVA_APONT
IF /pws/zycit321-c_comum IS INITIAL.
REFRESH itab_zycit433.
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433
WHERE matnr_alt EQ itab_zycit279_e-matnr.
itab_zycit433-matnr = itab_zycit279_e-matnr.
itab_zycit433-matnr_alt = itab_zycit279_e-matnr.
APPEND itab_zycit433.
LOOP AT itab_zycit433.
READ TABLE itab_zycit245_e WITH KEY
nrseqd = itab_zycit279_e-nrseqd_d
codcomp = itab_zycit433-matnr.
IF sy-subrc EQ 0.
EXIT.
ENDIF.
ENDLOOP.
ELSE.
* << Fim da inclusão
READ TABLE itab_zycit245_e WITH KEY
* >> Início da exclusão: FORM SALVA_APONT
nrseqd = itab_zycit279_e-nrseqd_d
codcomp = itab_zycit279_e-matnr.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
nrseqd = itab_zycit279_e-nrseqd_d
j_1bnbm = itab_zycit279_e-j_1bnbm.
ENDIF.
* << Fim da inclusão
ENDIF.
READ TABLE itab_zycit245_s WITH KEY
nrseqd = itab_zycit245_e-nrseqd
nritem = itab_zycit245_e-nritem.
IF sy-subrc NE 0.
...
...
ENDIF.
ENDIF.
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d.
IF itab_zycit245_e-tipo NE 'G'.
* >> Início da inclusão: FORM SALVA_APONT
IF /pws/zycit321-c_comum IS INITIAL.
REFRESH itab_zycit433.
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433
WHERE matnr_alt EQ itab_zycit279_ap-matnr.
itab_zycit433-matnr = itab_zycit279_ap-matnr.
itab_zycit433-matnr_alt = itab_zycit279_ap-matnr.
APPEND itab_zycit433.
LOOP AT itab_zycit433.
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d
codcomp = itab_zycit433-matnr.
IF sy-subrc EQ 0.
EXIT.
ENDIF.
ENDLOOP.
ELSE.
* << Fim da inclusão
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d
* >> Início da exclusão: FORM SALVA_APONT
codcomp = itab_zycit279_ap-matnr.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
j_1bnbm = itab_zycit279_ap-j_1bnbm.
ENDIF.
* << Fim da inclusão
ENDIF.
READ TABLE itab_zycit245_s WITH KEY
nrseqd = itab_zycit245_ap_s-nrseqd
nritem = itab_zycit245_ap_s-nritem.
IF sy-subrc NE 0.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI040I01
...
MODIFY itab_zycit279_ap_aux TRANSPORTING mark qtd_transf
transf nrseqd_d
WHERE mark EQ 'X'.
ENDMODULE.
MODULE modifica_ato_dest INPUT.
* >> Início da exclusão: MODULE MODIFICA_ATO_DEST
DATA: wa_zycit244_tf LIKE /pws/zycit244,
wa_zycit245_tf LIKE /pws/zycit245,
v_qtd_tf LIKE /pws/zycit279-qtd_transf,
v_saldo_vl LIKE /pws/zycit245-netpr_t.
* << Fim da exclusão
* >> Início da inclusão: MODULE MODIFICA_ATO_DEST
DATA: wa_zycit244_tf TYPE /pws/zycit244,
itab_zycit245_tf TYPE /pws/zycit245 OCCURS 0 WITH HEADER LINE,
wa_zycit245_tf TYPE /pws/zycit245,
v_qtd_tf TYPE /pws/zycit279-qtd_transf,
v_saldo_vl TYPE /pws/zycit245-netpr_t.
* << Fim da inclusão
READ TABLE itab_zycit279_ap_aux INDEX tc_transf-current_line.
IF NOT /pws/zycie279-nrseqd_d IS INITIAL.
SELECT SINGLE * FROM /pws/zycit244 INTO wa_zycit244_tf
WHERE nrseqd EQ /pws/zycie279-nrseqd_d
AND status EQ 'D'
...
...
EXIT.
ELSE.
MESSAGE s015 WITH text-288.
ENDIF.
ELSE.
* >> Início da exclusão: MODULE MODIFICA_ATO_DEST
SELECT SINGLE * FROM /pws/zycit245 INTO wa_zycit245_tf
WHERE codcomp EQ itab_zycit279_ap_aux-matnr
AND nrseqd EQ /pws/zycie279-nrseqd_d.
* << Fim da exclusão
* >> Início da inclusão: MODULE MODIFICA_ATO_DEST
REFRESH itab_zycit245_tf.
SELECT * FROM /pws/zycit245 INTO TABLE itab_zycit245_tf
WHERE nrseqd EQ /pws/zycie279-nrseqd_d.
CLEAR: itab_zycit245_tf, wa_zycit245_tf.
IF /pws/zycit321-c_comum IS INITIAL.
REFRESH itab_zycit433.
SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433
WHERE matnr_alt EQ itab_zycit279_ap_aux-matnr.
itab_zycit433-matnr = itab_zycit279_ap_aux-matnr.
itab_zycit433-matnr_alt = itab_zycit279_ap_aux-matnr.
APPEND itab_zycit433.
LOOP AT itab_zycit433.
READ TABLE itab_zycit245_tf WITH KEY
codcomp = itab_zycit433-matnr.
IF sy-subrc EQ 0.
wa_zycit245_tf = itab_zycit245_tf.
EXIT.
ENDIF.
ENDLOOP.
ELSE.
READ TABLE itab_zycit245_tf WITH KEY
j_1bnbm = itab_zycit279_ap_aux-j_1bnbm.
* << Fim da inclusão
IF sy-subrc EQ 0.
* >> Início da inclusão: MODULE MODIFICA_ATO_DEST
wa_zycit245_tf = itab_zycit245_tf.
ENDIF.
ENDIF.
IF NOT wa_zycit245_tf IS INITIAL.
* << Fim da inclusão
v_qtd_tf = wa_zycit245_tf-qtd_ncm - wa_zycit245_tf-vinculado.
IF v_qtd_tf < itab_zycit279_ap_aux-qtd_transf.
MESSAGE i015 WITH text-268 /pws/zycie279-nrseqd_d text-269.
EXIT.
ELSE.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI040TOP2
...
DATA: nrseq LIKE /pws/zycit003-nrseq,
ebeln LIKE /pws/zycit003-ebeln,
ebelp LIKE /pws/zycit003-ebelp,
fator LIKE /pws/zycit245-qtd_iten.
DATA: END OF itab_di_p.
* >> Início da inclusão:
DATA: BEGIN OF itab_zycit433 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit433.
DATA: END OF itab_zycit433.
* << Fim da inclusão
DATA: toolbar_container2 TYPE REF TO cl_gui_custom_container,
tool_container2 TYPE scrfname VALUE 'BTN2' ,
myevent_tab2 TYPE cntl_simple_events ,
myevent2 TYPE cntl_simple_event ,
btn2 TYPE REF TO cl_gui_toolbar ,
...