Módulo: DRAWBACK
Funcionalidade: Ato Concessório
Data/Hora da Publicação: 13/03/2006 00:00:00
Data/Hora Última Alteração: 17/02/2011 13:32:29
Descrição da Nota: VINCULAÇÃO FORECAST E TRESFERENCIA DE SALDO DO ATO CONCESSÓRIO
Sintoma
Não esta tranferindo corretamente os dados do forecast para o ato
concessório e na transferencia de saldo do ato concessório esta
preenchendo corretamente o saldo total realizado de importação no ato
de destino.
Solução
Ajustar o ato concessório para não realizar a explosão da lista técnica
sem necessidade e ajustar a vinculação dos atos para transferencia de
saldo para não duplicar os valores.
6.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01012 Data: 13/03/2006 Hora: 11:21:43
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01012
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00022
Agrupamento : 00105
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
00659 - 00001 - 6.0 - 00022 - AJUSTE NOS BOTOES DE NAVEGAÇÃO DO REALIZADO DO ATO CONCESSÓRIO
----------------------------------------------------------------------------------------------------
VINCULAÇÃO FORECAST E TRESFERENCIA DE SALDO DO ATO CONCESSÓRIO
----------------------------------------------------------------------------------------------------
Palavras Chave:
ATO CONCESSÓRIO - FORECAST - VINCULAÇÃO - TRANSFERENCIA
SALDO - /PWS/SAPMZYCI040
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI040F02
REPS /PWS/MZYCI040I01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI040F02
...
screen-input = 0.
screen-invisible = 1.
MODIFY SCREEN.
ELSE.
IF /pws/zycie244-tipo EQ 'C'.
* >> Início da inclusão: FORM CHECK_FIELD_0201
IF /pws/zycie244-bukrs IS INITIAL.
screen-input = 0.
ELSE.
* << Fim da inclusão
screen-input = v_status2.
* >> Início da inclusão: FORM CHECK_FIELD_0201
ENDIF.
* << Fim da inclusão
screen-invisible = 0.
...
...
itab_zycit279_ap-meins = itab_zycit246_final-um_ncm.
itab_zycit279_ap-matnr = /pws/zycie279-matnr.
ENDIF.
MODIFY itab_zycit279_ap.
ENDLOOP.
* >> Início da exclusão: FORM TRATA_BUTTON_SAVE2
IF v_tcode2 EQ '/PWS/ZYCI040_A'.
DELETE FROM /pws/zycit279 WHERE nrseqd = /pws/zycie244-nrseqd.
ENDIF.
MODIFY /pws/zycit279 FROM TABLE itab_zycit279_ap.
* << Fim da exclusão
MODIFY /pws/zycit244 FROM /pws/zycie244.
MODIFY /pws/zycit427 FROM TABLE itab_zycit427.
MODIFY /pws/zycit245 FROM TABLE itab_zycit245.
MODIFY /pws/zycit246 FROM TABLE itab_zycit246_final.
MODIFY /pws/zycit247 FROM TABLE itab_zycit247.
MODIFY /pws/zycit248 FROM TABLE itab_zycit248_final.
MODIFY /pws/zycit243 FROM TABLE itab_centros2.
IF NOT itab_zycit279_ap[] IS INITIAL.
PERFORM salva_apont.
* >> Início da inclusão: FORM TRATA_BUTTON_SAVE2
ENDIF.
IF v_tcode2 EQ '/PWS/ZYCI040_A'.
DELETE FROM /pws/zycit279 WHERE nrseqd = /pws/zycie244-nrseqd.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM TRATA_BUTTON_SAVE2
MODIFY /pws/zycit279 FROM TABLE itab_zycit279_ap.
* << Fim da inclusão
IF NOT itab_zycit279_ap_s[] IS INITIAL.
...
...
qtd_tot LIKE /pws/zycit245-qtd_tot,
END OF itab_zycit245_collect.
CLEAR v_nritem.
CHECK v_tcode2 NE '/PWS/ZYCI040_E'.
DESCRIBE TABLE itab_zycit247 LINES v_ilinhas.
* >> Início da exclusão: FORM VERIFICA_COMPONENTES_AGRUP
IF v_verificp2 EQ 'S' AND v_verifiit2 EQ v_ilinhas.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_COMPONENTES_AGRUP
IF v_verificp2 EQ 'S'.
* << Fim da inclusão
EXIT.
ENDIF.
* >> Início da exclusão: FORM VERIFICA_COMPONENTES_AGRUP
IF v_verificp2 EQ 'N' AND v_verifiit2 EQ v_ilinhas.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_COMPONENTES_AGRUP
IF v_verificp2 EQ 'N'.
* << Fim da inclusão
PERFORM confirm_expl_bom2 CHANGING v_flag.
IF v_flag EQ 'N'.
v_verificp2 = 'S'.
EXIT.
ELSE.
...
...
itab_zycit279_ap_s-qtd_perda, itab_zycit279_ap_s-qtd_transf,
itab_zycit279_ap_s-transf.
APPEND itab_zycit279_ap_s.
ENDLOOP.
ENDFORM.
* >> Início da exclusão: FORM SALVA_APONT
FORM salva_apont.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
FORM
salva_apont.
* << Fim da inclusão
DATA: itab_zycit245_ap_s LIKE /pws/zycit245 OCCURS 0 WITH HEADER LINE,
itab_zycit245_e LIKE /pws/zycit245 OCCURS 0 WITH HEADER LINE,
itab_zycit245_s LIKE /pws/zycit245 OCCURS 0 WITH HEADER LINE,
itab_zycit279_e LIKE /pws/zycit279 OCCURS 0 WITH HEADER LINE.
IF NOT itab_zycit279_ap[] IS INITIAL.
...
...
SELECT * FROM /pws/zycit279 INTO TABLE itab_zycit279_e
WHERE nrseqd EQ /pws/zycie244-nrseqd.
SELECT * FROM /pws/zycit245 INTO TABLE itab_zycit245_e
FOR ALL ENTRIES IN itab_zycit279_e
WHERE nrseqd EQ itab_zycit279_e-nrseqd_d.
* >> Início da inclusão: FORM SALVA_APONT
LOOP AT itab_zycit279_ap.
CLEAR: itab_zycit279_e.
READ TABLE itab_zycit279_e WITH KEY
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.
EXIT.
ENDIF.
* << Fim da inclusão
* >> Início da exclusão: FORM SALVA_APONT
LOOP AT itab_zycit279_ap WHERE nrseqd_d NE space.
* << Fim da exclusão
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d.
* >> Início da exclusão: FORM SALVA_APONT
IF itab_zycit245_ap_s-tipo EQ 'C'.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
IF itab_zycit245_ap_s-tipo NE 'G'.
* << Fim da inclusão
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d
codcomp = itab_zycit279_ap-matnr.
ENDIF.
READ TABLE itab_zycit246_save WITH KEY
nrseq = itab_zycit279_ap-nrseq
ebeln = itab_zycit279_ap-ebeln
ebelp = itab_zycit279_ap-ebelp.
* >> Início da exclusão: FORM SALVA_APONT
READ TABLE itab_zycit279_e WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d.
* << Fim da exclusão
IF NOT itab_zycit279_e-nrseqd_d IS INITIAL.
READ TABLE itab_zycit245_e WITH KEY
nrseqd = itab_zycit279_e-nrseqd_d.
* >> Início da exclusão: FORM SALVA_APONT
IF itab_zycit245_e-tipo EQ 'C'.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
IF itab_zycit245_e-tipo NE 'G'.
* << Fim da inclusão
READ TABLE itab_zycit245_e WITH KEY
nrseqd = itab_zycit279_e-nrseqd_d
codcomp = itab_zycit279_e-matnr.
ENDIF.
READ TABLE itab_zycit245_s WITH KEY
...
...
APPEND itab_zycit245_s.
ENDIF.
ENDIF.
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d.
* >> Início da exclusão: FORM SALVA_APONT
IF itab_zycit245_e-tipo EQ 'C'.
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_APONT
IF itab_zycit245_e-tipo NE 'G'.
* << Fim da inclusão
READ TABLE itab_zycit245_ap_s WITH KEY
nrseqd = itab_zycit279_ap-nrseqd_d
codcomp = itab_zycit279_ap-matnr.
ENDIF.
READ TABLE itab_zycit245_s WITH KEY
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI040I01
...
ENDLOOP.
itab_zycit245-qtd_tot = itab_zycit245-qtd_tot +
itab_zycit245-qtd_perda_e.
itab_zycit245-perda_e = ( itab_zycit245-qtd_perda_e * 100 )
/ itab_zycit245-qtd_tot.
* >> Início da inclusão: MODULE TRATA_FORECAST
itab_zycit245-qtd_ncm = itab_zycit245-qtd_tot.
itab_zycit245-um_ncm = itab_zycit245-meins .
PERFORM converte_um_ncm USING itab_zycit245-codcomp
CHANGING itab_zycit245-um_ncm
itab_zycit245-werks
itab_zycit245-qtd_ncm.
* << Fim da inclusão
CLEAR: itab_zycit245-qtd_perda_e.
APPEND itab_zycit245.
itab_zycit245_aux[] = itab_zycit245[].
ENDLOOP.
/pws/zycie245-nrseqd = /pws/zycie244-nrseqd.
...