Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DI
Data/Hora da Publicação: 27/11/2009 00:00:00
Data/Hora Última Alteração: 22/02/2011 14:13:08
Descrição da Nota: PROBLEMA NA VARIAÇÃO CAMBIAL NO F6D AO PREENCHER OS DADOS DA ANA
Sintoma
embarque ARM0010I09 problema na variação cambial no f6d ao preencher os dados da ANA e salvar dá
erro
Solução
Corrigir conversão da moeda.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 09467 Data: 27/11/2009 Hora: 09:45:37
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 09467
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 8.0
Pacote : 00001
Agrupamento : 00001
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
09072 - 00001 - 8.0 - 00001 - VÁRIOS AJUSTES DE TRATAMENTO E VARIAÇÃO DA ANA - DI ARGENTINA
----------------------------------------------------------------------------------------------------
PROBLEMA NA VARIAÇÃO CAMBIAL NO F6D AO PREENCHER OS DADOS DA ANA
----------------------------------------------------------------------------------------------------
Palavras Chave:
VARIAÇÃO CAMBIAL - IA - ANA
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYCI_RECLASSIFICACAO_IA
REPS /PWS/MZYCI059F01
REPS /PWS/MZYCI059F03
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_RECLASSIFICACAO_IA
...
FROM bsis
INTO TABLE itab_bsis_aux1
WHERE bukrs EQ /pws/zycie085-bukrs
AND hkont EQ itab_matuse_aux3-hkont
AND gjahr EQ v_gjahr
AND belnr EQ itab_zycit006-belnr_p.
LOOP AT itab_bsis_aux1.
MOVE: itab_bsis_aux1-hkont TO itab_bsis-hkont,
itab_bsis_aux1-buzei TO itab_bsis-buzei,
itab_bsis_aux1-belnr TO itab_bsis-belnr.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
IF ( sy-tcode EQ '/PWS/ZYCI059_A' OR
sy-tcode EQ '/PWS/ZYCI059_C' ) .
IF /pws/zycbt007-waersa EQ itab_bsis_aux1-waers.
itab_bsis-dmbtr = itab_bsis-dmbtr + itab_bsis_aux1-wrbtr.
ELSE.
itab_bsis-dmbtr = itab_bsis-dmbtr + itab_bsis_aux1-dmbtr.
ENDIF.
ELSE.
* << Fim da exclusão
itab_bsis-dmbtr = itab_bsis-dmbtr + itab_bsis_aux1-dmbtr.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
ENDIF.
* << Fim da exclusão
itab_bsis-wrbtr = itab_bsis-wrbtr + itab_bsis_aux1-wrbtr.
ENDLOOP.
IF sy-subrc = 0.
MOVE itab_zycit006-tpfatura TO itab_bsis-tpfatura.
APPEND itab_bsis.
CLEAR itab_bsis.
...
...
ENDIF.
MOVE: itab_matuse_aux-hkont TO itab_di-hkont,
t_zycit100-vlseg TO itab_di-vlseg,
t_zycit100-vlfre TO itab_di-vlfre.
IF ( sy-tcode EQ '/PWS/ZYCI059_A' OR
sy-tcode EQ '/PWS/ZYCI059_C' ) .
PERFORM taxa_converte(/pws/sapmzyci059)
USING /pws/zycbt007-waersa
/pws/zycie085-dttax
CHANGING v_taxa.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
itab_di-vlfob = ( t_zycit100-vlfob * v_taxa )
/ t_zycit100-dttaxbem.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
DATA: v_moeda TYPE tcurc-/pws/codmo.
SELECT SINGLE /pws/codmo FROM tcurc INTO v_moeda WHERE
waers = /pws/zycbt007-waersa.
IF sy-subrc EQ 0.
SELECT SINGLE txconver FROM /pws/zycit174
INTO v_taxa
WHERE
codconver = v_moeda AND
vigen_inicio <= /pws/zycie085-dttax AND
vigen_fim >= /pws/zycie085-dttax AND
land1 = t001-land1.
ENDIF.
itab_di-vlfob = t_zycit100-vlfob * v_taxa.
MULTIPLY itab_di-vlseg BY v_taxa.
MULTIPLY itab_di-vlfre BY v_taxa.
* << Fim da inclusão
ELSE.
itab_di-vlfob = t_zycit100-dttaxbem * t_zycit100-vlfob.
ENDIF.
IF NOT /pws/zycit093-ternacion IS INITIAL.
READ TABLE t_zycit003 WITH KEY
nrseq = t_zycit100-nrseq
ebeln = t_zycit100-ebeln
ebelp = t_zycit100-ebelp .
IF NOT v_tntgew IS INITIAL.
itab_di-vlfren = ( ( t_zycit003-ntgew / v_tntgew ) *
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI059F01
...
FORM taxa_converte USING p_waers
p_data
CHANGING p_taxa.
DATA: v_moeda LIKE tcurc-/pws/codmo,
v_msgd(10),
v_linhas TYPE i.
IF v_mudou EQ 'X'.
CLEAR: p_taxa, v_msgfre.
* >> Início da inclusão: FORM TAXA_CONVERTE
IF p_waers EQ /pws/zycbt007-waersb.
p_taxa = 1.
EXIT.
ENDIF.
* << Fim da inclusão
SELECT SINGLE /pws/codmo FROM tcurc INTO v_moeda WHERE
waers = p_waers.
IF sy-subrc EQ 0.
REFRESH itab_zycit174.
SELECT * FROM /pws/zycit174 INTO TABLE itab_zycit174 WHERE
codconver = v_moeda AND
vigen_inicio <= p_data AND
vigen_fim >= p_data AND
land1 = t001-land1.
DESCRIBE TABLE itab_zycit174 LINES v_linhas.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI059F03
...
/pws/zycie085-dttax
CHANGING /pws/zycie085-ukursfob,
load_fbvl.
IF v_altera EQ 'X'.
CLEAR: v_mudou, v_altera.
ENDIF.
PERFORM: taxa_converte USING /pws/zycbt007-waersa
/pws/zycie085-dttax
CHANGING v_usd,
load_fbvl2.
* >> Início da exclusão: FORM CONVERSAO_TAXAS
LOOP AT itab_it WHERE NOT waersbem IS initial AND
waersbem NE /pws/zycbt007-waersb.
* << Fim da exclusão
* >> Início da inclusão: FORM CONVERSAO_TAXAS
LOOP AT itab_it WHERE NOT waersbem IS initial.
* << Fim da inclusão
v_idx = sy-tabix.
PERFORM: taxa_converte USING itab_it-waersbem
/pws/zycie085-dttax
CHANGING itab_it-dttaxbem.
MODIFY itab_it INDEX v_idx TRANSPORTING dttaxbem.
ENDLOOP.
IF NOT /pws/zycie093-waersfre IS INITIAL.
IF /pws/zycie085-ukursfre IS INITIAL AND
v_mudou IS INITIAL.
v_mudou = v_altera = 'X'.
...