CE PLUS - Nota 010915

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DA

Data/Hora da Publicação: 24/01/2011 00:00:00

Data/Hora Última Alteração: 22/03/2011 11:13:16

Descrição da Nota: NÃO CONVERTE O VALOR DA DESPESAS PARA SOMAR AO VALOR FOB

Sintoma

problema com despesa parametrizada como acréscimo

 

 

Solução

Ajustada rotina de conversão de moeda para as despesas.

 

Versões Tratadas

8.0

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 10915 Data: 24/01/2011 Hora: 16:00:38

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 10915

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00006

Agrupamento              : 00056

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

01323  - 00001 - 6.0    - 00023  - DECLARAÇÃO DE ADMISSÃO PARA ENTREPOSTO ADUANEIRO

----------------------------------------------------------------------------------------------------

NÃO CONVERTE O VALOR DA DESPESAS PARA SOMAR AO VALOR FOB

----------------------------------------------------------------------------------------------------

Palavras Chave:

 

 

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/MZYCI070F01

REPS /PWS/MZYCI070F03

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI070F01

 

...

        AND ebelp EQ itab_zycit443-ebelp.

    v_calci = 'S'.

    LOOP AT itab_zycit443.

      CLEAR: vv_ntgew.

      SELECT SINGLE ntgew

      INTO vv_ntgew

      FROM /pws/zycit443

      WHERE nrseqda EQ itab_zycit443-nrseqda

        AND nrseq EQ itab_zycit443-nrseq

        AND ebeln EQ itab_zycit443-ebeln

* >> Início da exclusão: FORM LOADING_ALL

        AND ebelp EQ itab_zycit443-ebelp.              "#EC CI_NOFIRST

* << Fim da exclusão

* >> Início da inclusão: FORM LOADING_ALL

        AND ebelp EQ itab_zycit443-ebelp.               "#EC CI_NOFIRST

* << Fim da inclusão

      IF vv_ntgew IS INITIAL.

        READ TABLE itab_ekpo

        WITH KEY ebeln = itab_zycit443-ebeln

                 ebelp = itab_zycit443-ebelp.

        vv_ntgew = itab_ekpo-ntgew.

      ENDIF.

      itab_zycit443-ntgew = vv_ntgew.

      MODIFY itab_zycit443 INDEX sy-tabix TRANSPORTING ntgew.

      IF NOT v_tcode EQ '/PWS/ZYCI070_E' .

        IF /pws/zycie442-codreg NE '04'.

...

 

...

    CHANGING /pws/zycie442-vlfre.

  IF v_dit = 'S' AND

    ( /pws/zycie442-meiotransp NE 'PS' OR

      /pws/zycie093-meiotransp NE 'PS' ).

    t_vlii   = /pws/zycie442-vlii.

    t_vlipi  = /pws/zycie442-vlipi.

    t_vlicms = /pws/zycie442-vlicms.

  ENDIF.

  LOOP AT itab_zycit049 WHERE tipo = 'A'.

    IF NOT itab_zycit049-waers IS INITIAL.

* >> Início da exclusão: FORM CALC_ITAB

      IF itab_zycit049-waers NE wa_zycbt007-waersb.

* << Fim da exclusão

* >> Início da inclusão: FORM CALC_ITAB

      IF itab_zycit049-waers NE /pws/zycie442-waersfob.

* << Fim da inclusão

        PERFORM: calc_ret_moeda:

          USING    itab_zycit049-waers

* >> Início da exclusão: FORM CALC_ITAB

                   wa_zycbt007-waersb

* << Fim da exclusão

* >> Início da inclusão: FORM CALC_ITAB

                   /pws/zycie442-waersfob

* << Fim da inclusão

          CHANGING itab_zycit049-vldp.

        v_tval2 = v_tval2 + itab_zycit049-vldp.

      ELSE.

        v_tval2 = v_tval2 + itab_zycit049-vldp.

      ENDIF.

    ENDIF.

  ENDLOOP.

  PERFORM load_fbvl.

  LOOP AT itab_zycit049 WHERE tipo = 'A'.

    IF itab_zycit049-waers = wa_zycbt007-waersb.

* >> Início da inclusão: FORM CALC_ITAB

      s_fbvr = s_fbvr + itab_zycit049-vldp.

    ELSE.

      PERFORM calc_ret_moeda

        USING    itab_zycit049-waers

                 wa_zycbt007-waersb

        CHANGING itab_zycit049-vldp.

* << Fim da inclusão

      s_fbvr = s_fbvr + itab_zycit049-vldp.

    ENDIF.

  ENDLOOP.

  /pws/zycie442-vlfobr = s_fbvr.

ENDFORM.

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI070F03

 

...

FORM calc_ret_moeda USING    p_waersfrom

                              p_waersto

                     CHANGING p_value.

  DATA: v_taxa LIKE  /pws/zycie442-ukursfob,

        v_msgd(10).

* >> Início da inclusão: FORM CALC_RET_MOEDA

  IF p_waersfrom NE wa_zycbt007-waersb.

* << Fim da inclusão

  PERFORM taxa_converte

    USING    p_waersfrom

             /pws/zycie442-dttax

    CHANGING v_taxa.

* >> Início da inclusão: FORM CALC_RET_MOEDA

  ELSE.

    v_taxa = 1.

  ENDIF.

* << Fim da inclusão

  IF NOT v_taxa IS INITIAL.

* >> Início da exclusão: FORM CALC_RET_MOEDA

    p_value = p_value / v_taxa.

* << Fim da exclusão

* >> Início da inclusão: FORM CALC_RET_MOEDA

    p_value = p_value * v_taxa.

* << Fim da inclusão

    IF p_waersto NE wa_zycbt007-waersb.

      PERFORM taxa_converte

        USING    p_waersto

                 /pws/zycie442-dttax

        CHANGING v_taxa.

    ELSE.

      v_taxa = 1.

    ENDIF.

    IF NOT v_taxa IS INITIAL AND NOT p_value IS INITIAL.

* >> Início da exclusão: FORM CALC_RET_MOEDA

      p_value = p_value * v_taxa.

* << Fim da exclusão

* >> Início da inclusão: FORM CALC_RET_MOEDA

      p_value = p_value / v_taxa.

* << Fim da inclusão

    ENDIF.

  ENDIF.

ENDFORM.

...