CE PLUS - Nota 004422

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Embarque

Data/Hora da Publicação: 15/08/2007 00:00:00

Data/Hora Última Alteração: 22/02/2011 15:13:39

Descrição da Nota: AJUSTES PARA TRATAR AMRICA LATINA

Sintoma

Ajustes para ocultar o botão da nota fiscal, ao clicar no botão do recebimento chamar o programa

/pws/sapmzyci080 e ao clicar no botão de encerramento alterar o status do embarque para encerrado e

preencher a data de encerramento.

 

 

Solução

Ajustes para ocultar o botão da nota fiscal, ao clicar no botão do recebimento chamar o programa

/pws/sapmzyci080 e ao clicar no botão de encerramento alterar o status do embarque para encerrado e

preencher a data de encerramento.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

PERFORMANCE DA TRANSAÇÃO /PWS/ZYCI001_A ESTÁ CONSUMINDO MUITA MEMÓRIA.

DI DE NACIONALIZAÇÃO TRAZ PESO LIQ E BRUTO DIFERENTES DA DA DE REGIME 04

DESENVOLVIMENTO PARA GERAR A MIRO NA FATURA(AMERICA LATINA)

NÃO ESTÁ PROPONDO EMPRESA AO CRIAR EMBARQUE.

Informações Complementares

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

Nota Número 04422 Data: 15/08/2007 Hora: 08:57:00

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

 

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

Nota Número              : 04422

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00002

Agrupamento              : 00008

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

Referência às notas relacionadas:

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

 

01940  - 00001 - 6.0    - 00024  - PERFORMANCE DA TRANSAÇÃO /PWS/ZYCI001_A ESTÁ CONSUMINDO MUITA MEM

02375  - 00002 - 6.0    - 00025  - NÃO ESTÁ PROPONDO EMPRESA AO CRIAR EMBARQUE.

04286  - 00004 - 7.0    - 00002  - DESENVOLVIMENTO PARA GERAR A MIRO NA FATURA(AMERICA LATINA)

04314  - 00003 - 7.0    - 00002  - DI DE NACIONALIZAÇÃO TRAZ PESO LIQ E BRUTO DIFERENTES DA DA DE RE

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

AJUSTES PARA TRATAR AMRICA LATINA

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

Palavras Chave:

EMBARQUE - TRATAMENTO - AMERICA - LATINA - NOTA - FISCAL - ENCERRAMENTO

/PWS/SAPMZYCI001 - REMESSA - RECEBIMENTO

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

Objetos da nota:

REPS /PWS/MZYCI001F01

REPS /PWS/MZYCI001F02

REPS /PWS/MZYCI001F03

REPS /PWS/MZYCI001I01

REPS /PWS/MZYCI001O01

REPS /PWS/MZYCI001X01

REPT /PWS/SAPMZYCI001

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F01

 

...

 

  IF NOT itab_zycit443[] IS INITIAL.

    SELECT * FROM /pws/zycit003 INTO TABLE itab_zycit003_saldo

    FOR ALL ENTRIES IN itab_zycit443

     WHERE ebeln EQ itab_zycit443-ebeln

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

     AND   ebelp EQ itab_zycit443-ebelp.

* << Fim da exclusão

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

     AND   ebelp EQ itab_zycit443-ebelp

     and    nrseqda eq itab_zycit443-nrseqda.

* << Fim da inclusão

  ENDIF.

  LOOP AT itab_zycit003.

    v_tabix = sy-tabix.

    IF NOT itab_zycit003_saldo[] IS INITIAL.

      SELECT nrseq  regime FROM /pws/zycit001

       INTO TABLE itab_zycit001_saldo

      FOR ALL ENTRIES IN itab_zycit003_saldo

      WHERE nrseq  EQ itab_zycit003_saldo-nrseq

       AND  tpdecl EQ 'DI'.

      LOOP AT itab_zycit001_saldo WHERE regime EQ '04'.

...

 

...

        IF /pws/zycit093-waersfre EQ /pws/zycbt007-waersb.

          /pws/zycit093-prepaid = /pws/zycit093-prepaid +

            ( itab_zycit443_aux2-vlfre / itab_zycit443_aux2-qtd_iten

               * itab_zycit003-qtd_iten ) .

        ELSEIF NOT /pws/zycit442-ukursfre IS INITIAL.

          /pws/zycit093-prepaid = /pws/zycit093-prepaid +

           ( ( itab_zycit443_aux2-vlfre / itab_zycit443_aux2-qtd_iten

               * itab_zycit003-qtd_iten ) / /pws/zycit442-ukursfre ) .

        ENDIF.

      ENDIF.

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

      IF /pws/zycit093-brgew IS INITIAL .

* << Fim da exclusão

        /pws/zycit093-brgew = /pws/zycit093-brgew + itab_zycit003-ntgew.

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

      ENDIF.

* << Fim da exclusão

    ENDLOOP.

    MOVE /pws/zycie093-nrseqce TO /pws/zycit093-nrseqce.

    MODIFY /pws/zycit093.

    SELECT SINGLE * FROM /pws/zycit094

      WHERE nrseq = /pws/zycie001-nrseq.

    SELECT SINGLE * FROM /pws/zycit093

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F02

 

...

 

FORM call_bt.

  READ TABLE itab_zycit100 INDEX 1.

  v_nrseqdi = itab_zycit100-nrseqdi.

  IF /pws/zycit085 IS INITIAL.

    SELECT SINGLE * FROM /pws/zycit085

        WHERE nrseqdi = v_nrseqdi.

  ENDIF.

  IF sy-subrc = 0.

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

  IF v_land1 EQ 'AR' OR v_land1 EQ 'CL'.

    READ TABLE itab_zycit477 WITH KEY land = v_land1.

    IF sy-subrc EQ 0 .

      SELECT SINGLE nrseq FROM /pws/zycit042

        INTO /pws/zycit100-nrseq                        "#EC CI_NOFIRST

        WHERE nrseq = /pws/zycie001-nrseq.

      IF sy-subrc NE 0.

        MESSAGE s015 WITH text-454 text-453.

      ELSE.

        SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit085-nrseqdi.

        SET PARAMETER ID '/PWS/ZYGLP089' FIELD /pws/zycit085-identify.

        IF v_status_s = 1 AND /pws/zycie001-status_e NE 'E'.

          PERFORM valida_trans USING '/PWS/ZYCI080_A' 'skip'.

        ELSE.

          PERFORM valida_trans USING '/PWS/ZYCI080_E' 'skip'.

        ENDIF.

      ENDIF.

      EXIT.

    ENDIF.

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

  ELSE .

* << Fim da inclusão

    IF sy-tcode EQ '/PWS/ZYCI001_C'.

      SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit085-nrseqdi.

      SET PARAMETER ID '/PWS/ZYGLP089' FIELD /pws/zycit085-identify.

      PERFORM valida_trans USING '/PWS/ZYCI017_C' 'skip'.

    ELSEIF sy-tcode EQ '/PWS/ZYCI001_A'.

      SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit085-nrseqdi.

      SET PARAMETER ID '/PWS/ZYGLP089' FIELD /pws/zycit085-identify.

      PERFORM valida_trans USING '/PWS/ZYCI017_A' 'skip'.

    ELSEIF sy-tcode EQ '/PWS/ZYCI001_E'.

      SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit085-nrseqdi.

      SET PARAMETER ID '/PWS/ZYGLP089' FIELD /pws/zycit085-identify.

      PERFORM valida_trans USING '/PWS/ZYCI017_E' 'skip'.

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

    ENDIF.

  ELSE.

    READ TABLE itab_zycit477 WITH KEY land = v_land1.

    IF sy-subrc EQ 0 .

      MESSAGE s015 WITH text-454 text-453.

    ELSE.

      MESSAGE e015 WITH text-049.

* << Fim da exclusão

    ENDIF.

  ENDIF.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F03

 

...

 

    BEGIN OF itab_rc_aux OCCURS 100,

      cod_matriz      TYPE /pws/zycie442-bukrs,

      cod_filial      TYPE /pws/zycie442-j_1bbranch,

      num_da_di       TYPE /pws/zycie442-nrdi,

      num_adicao      TYPE /pws/zycie443-adicao,

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

      num_item_adicao TYPE /pws/zycie455-itseqda,

* << Fim da exclusão

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

      num_item_adicao TYPE /pws/zycie443-item_adi_sisc,

* << Fim da inclusão

      quantidade      TYPE /pws/zycie443-qtd_da,

    END OF itab_rc_aux.

...

 

...

  IF NOT itab_rc_aux[] IS INITIAL.

    SELECT /pws/zycit442~nrseqda  /pws/zycit442~nrdi

           /pws/zycit442~bukrs

           /pws/zycit442~codreg

           /pws/zycit442~dtdesemb

           /pws/zycit443~lifnr    AS agente

           /pws/zycit443~ebeln    /pws/zycit443~ebelp

           /pws/zycit443~matnr

           /pws/zycit443~qtd_da   AS qtd_lote

           /pws/zycit443~qtd_iten AS qtd_nac

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

           /pws/zycit455~adicao   /pws/zycit455~itseqda

* << Fim da exclusão

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

           /pws/zycit443~adicao /pws/zycit443~item_adi_sisc

* << Fim da inclusão

      INTO CORRESPONDING FIELDS OF TABLE itab_da

      FROM ( /pws/zycit442 INNER JOIN /pws/zycit443

             ON /pws/zycit442~nrseqda = /pws/zycit443~nrseqda

             INNER JOIN /pws/zycit455

             ON /pws/zycit442~nrseqda = /pws/zycit455~nrseqda )

      FOR ALL entries IN itab_rc_aux

      WHERE /pws/zycit442~bukrs      EQ itab_rc_aux-cod_matriz

        AND /pws/zycit442~j_1bbranch EQ itab_rc_aux-cod_filial

        AND /pws/zycit442~nrdi       EQ itab_rc_aux-num_da_di

        AND /pws/zycit443~adicao     EQ itab_rc_aux-num_adicao

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

        AND /pws/zycit455~itseqda    EQ itab_rc_aux-num_item_adicao.

* << Fim da exclusão

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

      AND /pws/zycit443~item_adi_sisc    EQ itab_rc_aux-num_item_adicao.

* << Fim da inclusão

    IF sy-subrc EQ 0.

      SORT itab_da BY nrseqda adicao itseqda

       ebeln ebelp.

      DELETE ADJACENT DUPLICATES FROM itab_da

        COMPARING nrseqda adicao itseqda

        ebeln ebelp.

      MOVE itab_da[] TO itab_da_aux[].

      LOOP AT itab_da.

        v_reg = sy-tabix.

        READ TABLE itab_rc_aux

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001I01

 

...

 

MODULE user_command_0050 INPUT.

* >> Início da inclusão: MODULE USER_COMMAND_0050

  DATA: itab_zycit044 TYPE /pws/zycit044 OCCURS 0 WITH HEADER LINE,

        itab_zycit042 TYPE /pws/zycit042 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

...

 

...

 

      WHEN 'ENCERRA'.

* >> Início da inclusão: MODULE USER_COMMAND_0050

        READ TABLE itab_zycit477 WITH KEY land = v_land1.

        IF sy-subrc EQ 0.

          IF /pws/zycie001-status_e NE 'E'.

            SELECT * FROM /pws/zycit044 INTO TABLE itab_zycit044

                WHERE nrseq EQ /pws/zycie001-nrseq.

            IF sy-subrc EQ 0.

              SELECT * FROM /pws/zycit042 INTO TABLE itab_zycit042

                  WHERE nrseq EQ /pws/zycie001-nrseq.

              LOOP AT itab_zycit042.

                CLEAR: /pws/zycit003.

               LOOP AT itab_zycit044 WHERE ebeln EQ itab_zycit042-ebeln

                                       AND ebelp EQ itab_zycit042-ebelp.

                  ADD itab_zycit044-qtd_item TO /pws/zycie003-qtd_iten.

                ENDLOOP.

                IF /pws/zycie003-qtd_iten < itab_zycit042-qtd_iten.

                  MESSAGE i015 WITH text-455.

                  REFRESH itab_zycit044.

                  EXIT.

                ENDIF.

              ENDLOOP.

            ENDIF.

            clear: itab_zycit006.

            read table itab_zycit006 index 1.

            IF NOT itab_zycit044[] IS INITIAL OR

               ( /pws/zycie001-modalidade  EQ  '02' and

                 not itab_zycit006-MBLNR_MB01 is initial ).

              CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'

                   EXPORTING

                        defaultoption = 'Y'

                        diagnosetext1 = text-456

                        textline1     = text-457

                        titel         = text-456

                   IMPORTING

                        answer        = v_resposta

                   EXCEPTIONS

                        OTHERS        = 1.

              IF v_resposta EQ 'J'.

                /pws/zycie001-status = 'EN'.

                /pws/zycie001-status_e = 'E'.

                /pws/zycie001-dtencer = sy-datlo.

                PERFORM grava_tabelas.

              ENDIF.

            ENDIF.

          ENDIF.

          CLEAR okcode.

          EXIT.

        ENDIF.

* << Fim da inclusão

        EXPORT v_tcode TO MEMORY ID 'V_TCODE'.

        IF v_status_s = 1.

          SET PARAMETER ID '/PWS/ZYCIP001' FIELD /pws/zycie001-nrseq.

          AUTHORITY-CHECK OBJECT 'S_TCODE'

                          ID     'TCD'

                          FIELD  '/PWS/ZYCI037_L'.

          IF sy-subrc EQ 0.

            PERFORM unlock_encerra.

            PERFORM valida_trans USING '/PWS/ZYCI037_L' 'skip'.

            PERFORM lock_record.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001O01

 

...

  IF /pws/zycie001-tpdecl EQ 'DSI' .

    it_code-fcode = 'DA'. APPEND it_code.

  ENDIF.

  IF /pws/zycie001-regime EQ '16' .

    it_code-fcode = 'RECEB'. APPEND it_code.

    it_code-fcode = 'BL'. APPEND it_code.

    it_code-fcode = 'FAT'. APPEND it_code.

  ENDIF.

  SELECT SINGLE land1 INTO v_land1 FROM t001

  WHERE bukrs = /pws/zycie001-bukrs.

* >> Início da inclusão: MODULE STATUS_0050

  IF itab_zycit477[] IS INITIAL.

    SELECT * FROM /pws/zycit477 INTO TABLE itab_zycit477.

  ENDIF.

  READ TABLE itab_zycit477 WITH KEY land = v_land1.

  IF sy-subrc EQ 0 .

    it_code-fcode = 'NF'.

    APPEND it_code.

  ENDIF.

* << Fim da inclusão

  IF /pws/zycie001-regime IS INITIAL.

    it_code-fcode = 'DA'.

    APPEND it_code.

    it_code-fcode = 'CUSTO_DA'.

    APPEND it_code.

  ENDIF.

  IF v_land1 NE 'BR' AND

     NOT v_land1 IS INITIAL.

    it_code-fcode = 'NOTA'. APPEND it_code.

    it_code-fcode = 'DEBIT'. APPEND it_code.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001X01

 

...

       agente   LIKE /pws/zycie460-lifnr    ,

       ebeln    LIKE /pws/zycie443-ebeln    ,

       ebelp    LIKE /pws/zycie443-ebelp    ,

       matnr    LIKE /pws/zycie443-matnr    ,

       nrseqlote   LIKE /pws/zycie463-nrseqlote,

       lote_forn   LIKE /pws/zycie463-lote_forn,

       numfatura   LIKE /pws/zycie463-numfatura,

       qtd_lote LIKE /pws/zycie463-qtd_lote ,

       qtd_nac  LIKE /pws/zycie463-qtd_lote ,

       qtd_usada LIKE /pws/zycie463-qtd_lote ,

* >> Início da exclusão:

       adicao    TYPE /pws/zycie455-adicao   ,

       itseqda   TYPE /pws/zycie455-itseqda  ,

* << Fim da exclusão

* >> Início da inclusão:

       adicao    TYPE /pws/zycie443-adicao   ,

       itseqda   TYPE /pws/zycit443-item_adi_sisc  ,

* << Fim da inclusão

       rc        TYPE flag,

       werks     LIKE /pws/zycie003-werks,

       mark.

DATA: END OF itab_da.

...

 

* >> Início da inclusão:

DATA: itab_zycit477 TYPE /pws/zycit477 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

...

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI001

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 450

 

Texto: (2 caracteres)

"Sí"

 

Comprimento máximo: 3

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 451

 

Texto: (2 caracteres)

"No"

 

Comprimento máximo: 3

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 452

 

Texto: (18 caracteres)

"Llenar importador!"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 453

 

Texto: (29 caracteres)

"não é possível criar remessa."

 

Comprimento máximo: 29

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 453

 

Texto: (29 caracteres)

"no es posible crear la remesa"

 

Comprimento máximo: 29

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 454

 

Texto: (23 caracteres)

"Ana não foi registrada,"

 

Comprimento máximo: 23

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 454

 

Texto: (22 caracteres)

"ANA no fue registrada,"

 

Comprimento máximo: 23

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 455

 

Texto: (49 caracteres)

"Embarque possui item(s) com saldo a ser recebido!"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 456

 

Texto: (12 caracteres)

"Encerramento"

 

Comprimento máximo: 12

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 457

 

Texto: (37 caracteres)

"Deseja realmente encerrar o embarque?"

 

Comprimento máximo: 37