CE PLUS - Nota 006867

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Custo Efetivo

Data/Hora da Publicação: 27/06/2008 00:00:00

Data/Hora Última Alteração: 22/02/2011 14:32:48

Descrição da Nota: AO CRIAR FATURA COM PEDIDOS DE MOEDAS DIFERENTES FICA ERRADO.

Sintoma

Ao vincular dois ou mais pedidos de moedas diferentes de uma única vez, utilizando a seleção

múltipla e após criar a Fatura para um único Pedido ele assume o valor de outra moeda para a Origem

PED (Pedido) na tabela /PWS/ZYCIT036.

 

 

Solução

Converter valores para a mesma moeda.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

CRIADO TEXTOS AUSENTES NA FUNÇÃO DE TEXTOS DETALHE DO ITEM

ERRO NO CUSTO EFETIVO E FATURA DO TIPO P

Informações Complementares

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

Nota Número 06867 Data: 27/06/2008 Hora: 15:26:32

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

 

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

Nota Número              : 06867

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00006

Agrupamento              : 00054

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

Referência às notas relacionadas:

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

 

01986  - 00001 - 6.0    - 00024  - ERRO NO CUSTO EFETIVO E FATURA DO TIPO P

06660  - 00002 - 7.0    - 00005  - CRIADO TEXTOS AUSENTES NA FUNÇÃO DE TEXTOS DETALHE DO ITEM

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

AO CRIAR FATURA COM PEDIDOS DE MOEDAS DIFERENTES FICA ERRADO.

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

Palavras Chave:

ERRO - CONVERSÃO - FATURA - PEDIDOS - MOEDAS DIFERENTES

 

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

Objetos da nota:

REPS /PWS/ZYCIR035

 

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

Modificações efetuadas em REPS /PWS/ZYCIR035

 

...

          CONCATENATE '0' it_desp-ebelp INTO v_ebelp.

          LOOP AT itab_custo_condition

          WHERE kposn EQ v_ebelp

              AND kschl EQ itab_zycit030-kschl.

            READ TABLE itab_ekpo WITH KEY ebeln = it_desp-ebeln

                                          ebelp = it_desp-ebelp.

            IF sy-subrc EQ 0.

              itab_zycit030_aux-porcent = itab_custo_condition-kbetr  .

              IF not itab_ekpo-menge is initial and

              not it_desp-qtd_iten is initial.

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

              perform retorna_decimais using it_desp-waers

                       changing itab_custo_condition-kwert.

* << Fim da inclusão

              itab_zycit030_aux-valor = itab_custo_condition-kwert /

                           itab_ekpo-menge * it_desp-qtd_iten.

              endif.

              APPEND itab_zycit030_aux.

            ENDIF.

          ENDLOOP.

        ENDIF.

        IF sy-subrc NE 0.

          IF itab_zycit030-codigo EQ 'II'     OR

             itab_zycit030-codigo EQ 'IPI'    OR

...

 

...

          ENDLOOP.

        ELSE.

          CLEAR v_ebelp.

          CONCATENATE '0' it_desp-ebelp INTO v_ebelp.

          LOOP AT itab_custo_condition

          WHERE kposn EQ v_ebelp

              AND kschl EQ itab_zycit030-kschl.

            itab_zycit030_aux-porcent = itab_custo_condition-kbetr  .

              IF not it_desp-menge is initial and

              not it_desp-qtd_iten is initial.

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

            perform retorna_decimais using it_desp-waers

                     changing itab_custo_condition-kwert.

* << Fim da inclusão

            itab_zycit030_aux-valor = itab_custo_condition-kwert /

                         it_desp-menge * it_desp-qtd_iten.

 endif.

           APPEND itab_zycit030_aux.

          ENDLOOP.

        ENDIF.

        IF sy-subrc NE 0.

          IF itab_zycit030-codigo EQ 'II'     OR

             itab_zycit030-codigo EQ 'IPI'    OR

             itab_zycit030-codigo EQ 'ICMS'   OR

...

 

...

         nrseq = itab_zycit030_aux-nrseq

         ebeln = itab_zycit030_aux-ebeln

         ebelp = itab_zycit030_aux-ebelp.

    itab_zycit036_plan-nrseq   = itab_zycit030_aux-nrseq.

    itab_zycit036_plan-embarca = itab_zycit001-embarca.

    itab_zycit036_plan-bukrs   = itab_zycit001-bukrs.

    itab_zycit036_plan-werks   = itab_zycit003-werks.

    itab_zycit036_plan-waers   = itab_zycit001-waers.

    IF itab_zycit003-waers NE itab_zycit001-waers AND

       NOT itab_zycit030_aux-valor IS INITIAL.

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

      if itab_zycit030_aux-codigo eq 'FOB' OR

         itab_zycit030_aux-codigo eq 'C&F' OR

         itab_zycit030_aux-codigo eq 'CIF'.

* << Fim da inclusão

      v_valor = itab_zycit003-netpr.

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

      else.

             v_valor = itab_zycit030_aux-valor.

      endif.

* << Fim da inclusão

      PERFORM converter_moeda(/pws/sapmzyci010) USING

                              v_valor

                              itab_zycit003-waers

                              /pws/zycbt007-waersb

                CHANGING v_valor.

      IF /pws/zycbt007-waersb NE itab_zycit001-waers.

        PERFORM converter_moeda(/pws/sapmzyci010)

                  USING    v_valor

                           /pws/zycbt007-waersb

                           itab_zycit001-waers

                  CHANGING v_valor.

      ENDIF.

      IF v_valor NE 0.

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

       if itab_zycit030_aux-codigo eq 'FOB' OR

          itab_zycit030_aux-codigo eq 'C&F' OR

          itab_zycit030_aux-codigo eq 'CIF'.

* << Fim da inclusão

        itab_zycit030_aux-valor = v_valor * itab_zycit003-qtd_iten.

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

       else.

             itab_zycit030_aux-valor = v_valor.

       endif.

* << Fim da inclusão

      ENDIF.

    ENDIF.

    itab_zycit036_plan-ebeln   = itab_zycit030_aux-ebeln.

    itab_zycit036_plan-ebelp   = itab_zycit030_aux-ebelp.

...