CE PLUS - Nota 011783

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: LI

Data/Hora da Publicação: 16/12/2011 17:12:13

Data/Hora Última Alteração: 16/12/2011 17:12:13

Descrição da Nota: ERRO NO VALOR DA MERCADORIA AO VINCULAR SCHEDULE AGREEMENT

Sintoma

Ao vincular Schedule Agreement a LI o valor da mercadoria no local de Embarque está diferente do

informado no programa de remessa.

 

 

Solução

Ajustado programa para utilizar a tabela KOMV caso não encontre registros na tabela A016.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

AJUSTE PREENCHIMENTO ESPECIFICAÇÃO TÉCNICA E VALOR NO LOCAL EMBARQUE

VALOR FOB NA LI ESTÁ SENDO CALCULADA INCORRETAMENTE.

Informações Complementares

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

Nota Número 11783 Data: 15/12/2011 Hora: 13:13:21

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

 

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

Nota Número              : 11783

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00010

Agrupamento              : 00097

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

Referência às notas relacionadas:

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

 

10468  - 00001 - 8.0    - 00004  - AJUSTE PREENCHIMENTO ESPECIFICAÇÃO TÉCNICA E VALOR NO LOCAL EMBAR

11350  - 00002 - 8.0    - 00008  - VALOR FOB NA LI ESTÁ SENDO CALCULADA INCORRETAMENTE.

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

ERRO NO VALOR DA MERCADORIA AO VINCULAR SCHEDULE AGREEMENT

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

Palavras Chave:

LI - VALOR - MERCADORIA - SCHEDULE - AGREEMENT -

/PWS/SAPMZYCI020

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

Objetos da nota:

REPS /PWS/MZYCI020F01

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F01

 

...

          knumh = itab_a016-knumh AND

          krech = 'C'             AND

          loevm_ko = space           .

      LOOP AT itab_konp.

        READ TABLE itab_a016 WITH KEY knumh = itab_konp-knumh.

        itab_konp-ebeln = itab_a016-evrtn.

        itab_konp-ebelp = itab_a016-evrtp.

        MODIFY itab_konp TRANSPORTING ebeln ebelp.

      ENDLOOP.

    ELSE.

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

      MESSAGE i015 WITH text-433.

* << Fim da exclusão

    ENDIF.

  ENDIF.

  SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie078-bukrs.

  SELECT * FROM /pws/zycit030

    INTO TABLE itab_zycit030

    WHERE codigo EQ 'FOB'

      AND land1  EQ t001-land1

      AND bukrs  EQ /pws/zycie078-bukrs.

  LOOP AT it_zycit079_a.

    CLEAR v_vlmerc.

...

 

...

            MOVE itab_itens_aux-ktmng  TO it_zycit079_a-menge.

          ENDIF.

        ENDIF.

        IF itab_itens_aux-loekz EQ 'L'.

          MESSAGE w061 WITH text-014

                            itab_itens_aux-ebeln itab_itens_aux-ebelp

                            text-015.

        ENDIF.

        LOOP AT itab_zycit030.

          MOVE-CORRESPONDING itab_zycit030 TO itab_zycit030_aux.

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

          IF itab_itens_aux-bstyp = 'L'.

* << Fim da exclusão

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

          IF itab_itens_aux-bstyp = 'L'

             AND NOT itab_konp[] IS INITIAL.

* << Fim da inclusão

            LOOP AT itab_konp WHERE ebeln = it_zycit079_a-ebeln AND

                                    ebelp = it_zycit079_a-ebelp AND

                                    kschl = itab_zycit030-kschl.

              PERFORM retorna_decimais USING itab_konp-konwa

                                     CHANGING itab_konp-kbetr.

              IF itab_konp-krech EQ 'B'.

                itab_zycit030_aux-valor = itab_konp-kbetr /

                                          it_zycit079_a-menge.

                APPEND itab_zycit030_aux.

              ELSE.

...

 

...

                ENDIF.

              ENDIF.

            ENDLOOP.

          ELSE.

            CLEAR v_ebelp.

            CONCATENATE '0' it_zycit079_a-ebelp INTO v_ebelp.

            LOOP AT itab_komv

            WHERE kposn EQ v_ebelp

                AND kschl EQ itab_zycit030-kschl

                AND ebeln EQ it_zycit079_a-ebeln.

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

              IF NOT it_zycit079_a-menge IS INITIAL.

* << Fim da exclusão

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

              IF itab_itens_aux-bstyp = 'L' AND

                 NOT itab_komv-kbetr IS INITIAL AND

                 NOT itab_komv-kpein IS INITIAL.

                itab_zycit030_aux-valor = itab_komv-kbetr

                                        / itab_komv-kpein.

                APPEND itab_zycit030_aux.

              ELSEIF NOT it_zycit079_a-menge IS INITIAL.

* << Fim da inclusão

                itab_zycit030_aux-valor = itab_komv-kwert /

                                          it_zycit079_a-menge.

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

                APPEND itab_zycit030_aux.

* << Fim da inclusão

              ENDIF.

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

            APPEND itab_zycit030_aux.

* << Fim da exclusão

            ENDLOOP.

...

 

...

          ENDIF.

          AT END OF codigo.

            it_zycit079_a-netpr = v_vlmerc.

            READ TABLE it_zycit079 WITH KEY

                   nrseqli = it_zycit079_a-nrseqli

                   tpli  = it_zycit079_a-tpli

                   ebeln = it_zycit079_a-ebeln

                   ebelp = it_zycit079_a-ebelp.

            IF sy-subrc = 0.

              it_zycit079-vlmerc = v_vlmerc * it_zycit079_a-menge.

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

              v_vlmerc_aux = v_vlmerc_aux +

              ( it_zycit079_a-netpr * it_zycit079_a-menge ) .

* << Fim da exclusão

              MODIFY it_zycit079 TRANSPORTING vlmerc

              WHERE nrseqli = it_zycit079_a-nrseqli

                AND tpli  = it_zycit079_a-tpli

                AND ebeln = it_zycit079_a-ebeln

                AND ebelp = it_zycit079_a-ebelp.

            ENDIF.

          ENDAT.

        ENDLOOP.

        FREE itab_zycit030_aux.

      ENDIF.

    ENDIF.

    IF /pws/zycie078-vlmerc IS INITIAL.

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

      /pws/zycie078-vlmerc = v_vlmerc_aux.

* << Fim da exclusão

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

      /pws/zycie078-vlmerc = /pws/zycie078-vlmerc +

            ( it_zycit079_a-netpr * it_zycit079_a-qtd_iten ) .

* << Fim da inclusão

    ENDIF.

  ENDLOOP.

ENDFORM.

...