CE PLUS - Nota 010486

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: LI

Data/Hora da Publicação: 11/08/2010 00:00:00

Data/Hora Última Alteração: 23/02/2011 10:09:54

Descrição da Nota: PROGRAMA SOMA ERRADO COM PEDIDOS COM UNIDADES DE MEDIDAS DIFERENTES

Sintoma

Programa soma errado com pedidos com unidades de medidas diferentes

 

 

Solução

Converter para o mesmo tipo de Unidade de medida antes de somar.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

CONVERSÃO DE UNIDADES DE MEDIDA ESTATÍSTICA UMB

AO ACESSAR A LI COM O SEQUENCIAL SEM OS ZEROS NÃO ENCONTRA A LI NO EXCEL

IMPLEMENTAÇÃO DO CAMPO MATERIAL MATNR NA LICENÇA DE IMPORTAÇÃO

NECESSÁRIO EXIT DE LI NO BOTÃO DE VINCULAÇÃO DE ATO CONCESSÓRIO

Informações Complementares

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

Nota Número 10486 Data: 11/08/2010 Hora: 11:39:46

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

 

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

Nota Número              : 10486

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00004

Agrupamento              : 00034

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

Referência às notas relacionadas:

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

 

08553  - 00001 - 7.0    - 00010  - IMPLEMENTAÇÃO DO CAMPO MATERIAL MATNR NA LICENÇA DE IMPORTAÇÃO

09048  - 00002 - 8.0    - 00001  - NECESSÁRIO EXIT DE LI NO BOTÃO DE VINCULAÇÃO DE ATO CONCESSÓRIO

09371  - 00003 - 8.0    - 00001  - AO ACESSAR A LI COM O SEQUENCIAL SEM OS ZEROS NÃO ENCONTRA A LI N

09813  - 00004 - 8.0    - 00002  - CONVERSÃO DE UNIDADES DE MEDIDA ESTATÍSTICA UMB

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

PROGRAMA SOMA ERRADO COM PEDIDOS COM UNIDADES DE MEDIDAS DIFERENTES

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

Palavras Chave:

UNIDADE DE MEDIDA - LI - DRAWBACK - CONVERSÃO.

 

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

Objetos da nota:

REPS /PWS/MZYCI020F01

REPS /PWS/MZYCI020F02

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

Modificações efetuadas em REPS /PWS/MZYCI020F01

 

...

 

      IF v_qtdtot > 0 .

        IF /pws/zycie078-zum EQ '10'.

          IF NOT v_peso IS INITIAL.

            it_zycit079-qtd_iten =

            ( it_zycit079-ntgew * /pws/zycie078-qtdest ) / v_peso.

          ENDIF.

        ELSE.

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

          it_zycit079-qtd_iten =

          ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

* << Fim da exclusão

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

          CALL FUNCTION '/PWS/COVERT_UN_MATERIAL'

               EXPORTING

                    matnr                = it_zycit079-matnr

                    meins                = it_zycit079-meins

                    qtde                 = it_zycit079-qtd_iten

                    conv                 = ' '

                    land                 = t001-land1

               IMPORTING

                    qtds                 = it_zycit079-qtd_iten

                    un_s                 = it_zycit079-meins

               EXCEPTIONS

                    conversion_not_found = 1

                    ncm_not_found        = 2

                    overflow             = 3

                    un_ncm_not_found     = 4

                    material_not_found   = 5

                    OTHERS               = 6.

* << Fim da inclusão

        ENDIF.

      ELSE.

        it_zycit079-qtd_iten =

        ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

      ENDIF.

 

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F02

 

...

 

FORM comm_detli.

  v_flag2 = '1'.

  LOOP AT it_zycit079 WHERE mark = 'X'.

    v_ip = sy-tabix.

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

    IF v_qtdtot > 0 .

      IF /pws/zycie078-zum EQ '10' AND

         NOT v_peso IS INITIAL.

        it_zycit079-qtd_drawback =

        ( it_zycit079-ntgew * /pws/zycie078-qtdest ) / v_peso.

      ELSE.

        it_zycit079-qtd_drawback =

        ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

      ENDIF.

    ELSE.

      it_zycit079-qtd_drawback =

      ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

    ENDIF.

    MODIFY it_zycit079 TRANSPORTING qtd_drawback.

* << Fim da exclusão

    MOVE-CORRESPONDING it_zycit079 TO /pws/zycie079a.

    PERFORM  load_desc_fabr.

 

 

...

 

...

 

          IF v_qtdtot > 0.

            IF /pws/zycie078-zum EQ '10' AND NOT v_peso IS INITIAL.

              it_zycit079-qtd_drawback =

              ( it_zycit079-ntgew * /pws/zycie078-qtdest ) / v_peso.

            ELSE.

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

              it_zycit079-qtd_drawback =

             ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

* << Fim da exclusão

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

              CALL FUNCTION '/PWS/COVERT_UN_MATERIAL'

                   EXPORTING

                        matnr                = it_zycit079-matnr

                        meins                = it_zycit079-meins

                        qtde                 = it_zycit079-qtd_drawback

                        conv                 = ' '

                        land                 = t001-land1

                   IMPORTING

                        qtds                 = it_zycit079-qtd_drawback

                        un_s                 = it_zycit079-meins

                   EXCEPTIONS

                        conversion_not_found = 1

                        ncm_not_found        = 2

                        overflow             = 3

                        un_ncm_not_found     = 4

                        material_not_found   = 5

                        OTHERS               = 6.

* << Fim da inclusão

            ENDIF.

          ELSE.

            it_zycit079-qtd_drawback =

            ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

          ENDIF.

          it_zycit079-vl_prod_drawback =

                  it_zycit079-qtd_iten * it_zycit079-netpr.

          MODIFY it_zycit079.

        ENDLOOP.

      ENDIF.

...

 

...

 

    IF v_qtdtot > 0 .

      IF /pws/zycie078-zum EQ '10' AND NOT v_peso IS INITIAL.

        itab_zycit079-qtd_iten =

        ( itab_zycit079-ntgew * /pws/zycie078-qtdest ) / v_peso.

      ELSE.

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

        itab_zycit079-qtd_iten =

        ( itab_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

* << Fim da exclusão

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

        CALL FUNCTION '/PWS/COVERT_UN_MATERIAL'

             EXPORTING

                  matnr                = itab_zycit079-matnr

                  meins                = itab_zycit079-meins

                  qtde                 = itab_zycit079-qtd_iten

                  conv                 = ' '

                  land                 = t001-land1

             IMPORTING

                  qtds                 = itab_zycit079-qtd_iten

                  un_s                 = itab_zycit079-meins

             EXCEPTIONS

                  conversion_not_found = 1

                  ncm_not_found        = 2

                  overflow             = 3

                  un_ncm_not_found     = 4

                  material_not_found   = 5

                  OTHERS               = 6.

        IF sy-subrc <> 0.

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ELSE.

      itab_zycit079-qtd_iten =

      ( itab_zycit079-qtd_iten * /pws/zycie078-qtdest ).

    ENDIF.

 

...

 

...

 

                IF v_qtdtot > 0.

                  IF /pws/zycie078-zum EQ '10' AND

                     NOT v_peso IS INITIAL.

                    it_zycit079-qtd_drawback =

             ( it_zycit079-ntgew * /pws/zycie078-qtdest ) / v_peso.

                  ELSE.

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

                    it_zycit079-qtd_drawback = ( it_zycit079-qtd_iten *

                                      /pws/zycie078-qtdest ) / v_qtdtot.

* << Fim da exclusão

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

            it_zycit079-qtd_drawback = it_zycit079-qtd_iten .

                    CALL FUNCTION '/PWS/COVERT_UN_MATERIAL'

                         EXPORTING

                              matnr                = it_zycit079-matnr

                              meins                = it_zycit079-meins

                        qtde                 = it_zycit079-qtd_drawback

                              conv                 = ' '

                              land                 = t001-land1

                         IMPORTING

                        qtds                 = it_zycit079-qtd_drawback

                              un_s                 = it_zycit079-meins

                         EXCEPTIONS

                              conversion_not_found = 1

                              ncm_not_found        = 2

                              overflow             = 3

                              un_ncm_not_found     = 4

                              material_not_found   = 5

                              OTHERS               = 6.

* << Fim da inclusão

                  ENDIF.

                ELSE.

                  it_zycit079-qtd_drawback =

                      ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

                ENDIF.

                it_zycit079-vl_prod_drawback =

                        it_zycit079-qtd_iten * it_zycit079-netpr.

...

 

...

 

              IF v_qtdtot > 0.

                IF /pws/zycie078-zum EQ '10' AND

                   NOT v_peso IS INITIAL.

                  it_zycit079-qtd_drawback =

             ( it_zycit079-ntgew * /pws/zycie078-qtdest ) / v_peso.

                ELSE.

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

                  it_zycit079-qtd_drawback =

             ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

* << Fim da exclusão

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

            it_zycit079-qtd_drawback = it_zycit079-qtd_iten .

                  CALL FUNCTION '/PWS/COVERT_UN_MATERIAL'

                       EXPORTING

                            matnr                = it_zycit079-matnr

                            meins                = it_zycit079-meins

                        qtde                 = it_zycit079-qtd_drawback

                            conv                 = ' '

                            land                 = t001-land1

                       IMPORTING

                        qtds                 = it_zycit079-qtd_drawback

                            un_s                 = it_zycit079-meins

                       EXCEPTIONS

                            conversion_not_found = 1

                            ncm_not_found        = 2

                            overflow             = 3

                            un_ncm_not_found     = 4

                            material_not_found   = 5

                            OTHERS               = 6.

* << Fim da inclusão

                ENDIF.

              ELSE.

                it_zycit079-qtd_drawback =

                ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

              ENDIF.

              it_zycit079-vl_prod_drawback =

                      it_zycit079-qtd_iten * it_zycit079-netpr.

              MODIFY it_zycit079 TRANSPORTING  item_drawback nritem_db

                                qtd_drawback vl_prod_drawback

                                WHERE ebeln = it_ekpo-ebeln

...

 

...

 

          IF v_qtdtot > 0.

            IF /pws/zycie078-zum EQ '10' AND

               NOT v_peso IS INITIAL.

              it_zycit079-qtd_drawback =

             ( it_zycit079-ntgew * /pws/zycie078-qtdest ) / v_peso.

            ELSE.

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

              it_zycit079-qtd_drawback =

             ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

* << Fim da exclusão

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

            it_zycit079-qtd_drawback = it_zycit079-qtd_iten .

              CALL FUNCTION '/PWS/COVERT_UN_MATERIAL'

                   EXPORTING

                        matnr                = it_zycit079-matnr

                        meins                = it_zycit079-meins

                        qtde                 = it_zycit079-qtd_drawback

                        conv                 = ' '

                        land                 = t001-land1

                   IMPORTING

                        qtds                 = it_zycit079-qtd_drawback

                        un_s                 = it_zycit079-meins

                   EXCEPTIONS

                        conversion_not_found = 1

                        ncm_not_found        = 2

                        overflow             = 3

                        un_ncm_not_found     = 4

                        material_not_found   = 5

                        OTHERS               = 6.

              IF sy-subrc EQ 0.

              ENDIF.

* << Fim da inclusão

            ENDIF.

          ELSE.

            it_zycit079-qtd_drawback =

            ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

          ENDIF.

          it_zycit079-vl_prod_drawback =

                  it_zycit079-qtd_iten * it_zycit079-netpr.

          MODIFY it_zycit079.

        ENDLOOP.

      ENDIF.

...