CE PLUS - Nota 009804

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Embarque

Data/Hora da Publicação: 09/02/2010 00:00:00

Data/Hora Última Alteração: 20/06/2011 11:59:46

Descrição da Nota: ABERTURA DOS CAMPOS DE NVE PARA EDIÇÃO NO DETALHE DO ITEM DO EMBARQUE

Sintoma

Ajustes no programa de embarque para permitir a edição das informações de NVE no detalhe do item.

 

 

Solução

Ajustes no programa de embarque para permitir a edição das informações de NVE no detalhe do item.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

AO INSERIR DADOS NÃO CARREGA CORRETAMENTE PARÂMETRO DA ZYCIT195 E 196

Informações Complementares

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

Nota Número 09804 Data: 09/02/2010 Hora: 11:50:00

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

 

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

Nota Número              : 09804

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00002

Agrupamento              : 00008

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

Referência às notas relacionadas:

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

 

09562  - 00001 - 8.0    - 00002  - AO INSERIR DADOS NÃO CARREGA CORRETAMENTE PARÂMETRO DA ZYCIT195 E

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

ABERTURA DOS CAMPOS DE NVE PARA EDIÇÃO NO DETALHE DO ITEM DO EMBARQUE

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

Palavras Chave:

NVE - EDIÇÃO - DETALHE - ITEM - EMBARQUE

/PWS/SAPMZYCI001 - /PWS/SAPMZYCI023

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

Objetos da nota:

DYNP /PWS/SAPMZYCI001                        0405

REPS /PWS/MZYCI001F03

REPS /PWS/MZYCI001O01

REPS /PWS/MZYCI023O01

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI001                        0405

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0405

PROCESS BEFORE OUTPUT.

  MODULE : altera_tela4.

  LOOP AT itab_zycit503_aux WITH CONTROL tc_nve

  CURSOR tc_nve-current_line.

    MODULE carrega_estrutura.

  ENDLOOP.

PROCESS AFTER INPUT.

  LOOP AT itab_zycit503_aux.

* >> Início da exclusão:

    MODULE carrega_itab.

* << Fim da exclusão

* >> Início da inclusão:

    CHAIN.

      FIELD: /pws/zycit503-atributo_nve,

             /pws/zycit503-especif_nve,

             /pws/zycit503-nivel_nve,

             /pws/zycit503-desc_nve

          MODULE carrega_itab ON CHAIN-REQUEST.

    ENDCHAIN.

* << Fim da inclusão

  ENDLOOP.

  MODULE user_command.

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F03

 

...

FORM verifica_di.

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

  IF  itab_zycit100[] IS INITIAL.

    SELECT * FROM /pws/zycit100                         "#EC CI_NOFIRST

* << Fim da exclusão

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

  SELECT * FROM /pws/zycit100                           "#EC CI_NOFIRST

* << Fim da inclusão

    INTO TABLE itab_zycit100

     WHERE nrseq EQ /pws/zycie001-nrseq.

    IF sy-subrc EQ 0.

      v_di = 'S'.

    ELSE.

      IF ( /pws/zycie001-regime EQ '04' AND

         /pws/zycie001-tpdecl EQ 'DI' ) .

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

        SELECT * FROM /pws/zycit443                     "#EC CI_NOFIRST

* << Fim da exclusão

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

      SELECT * FROM /pws/zycit443                       "#EC CI_NOFIRST

* << Fim da inclusão

        INTO TABLE itab_zycit443

      WHERE nrseq EQ /pws/zycie001-nrseq.

        IF sy-subrc EQ 0.

          v_di = 'S'.

        ELSE.

          CLEAR v_di.

        ENDIF.

      ELSE.

        CLEAR v_di.

      ENDIF.

    ENDIF.

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

  ENDIF.

* << Fim da exclusão

ENDFORM.

...

 

...

FORM carrega_itab_zycit503.

  itab_zycit503_aux  = /pws/zycit503.

  itab_zycit503_aux-mandt   = sy-mandt.

  itab_zycit503_aux-nrseq   = itab_zycit003-nrseq.

  itab_zycit503_aux-ebeln   = itab_zycit003-ebeln.

  itab_zycit503_aux-ebelp   = itab_zycit003-ebelp.

  itab_zycit503_aux-matnr   = itab_zycit003-matnr.

  itab_zycit503_aux-j_1bnbm = itab_zycit003-j_1bnbm.

  MODIFY itab_zycit503_aux INDEX tc_nve-current_line.

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

  IF sy-subrc NE 0.

    APPEND itab_zycit503_aux.

  ENDIF.

* << Fim da inclusão

ENDFORM.

...

 

...

FORM user_command_0450.

  DELETE itab_zycit503   WHERE ebeln = itab_zycit003-ebeln

                         AND   ebelp = itab_zycit003-ebelp.

  LOOP AT itab_zycit503_aux.

    MOVE itab_zycit503_aux TO itab_zycit503.

    APPEND itab_zycit503.

  ENDLOOP.

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

  DELETE itab_zycit503 WHERE nivel_nve    EQ space

                         AND atributo_nve EQ space

                         AND especif_nve  EQ space

                         AND desc_nve     EQ space.

* << Fim da inclusão

ENDFORM.

 

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

Modificações efetuadas em REPS /PWS/MZYCI001O01

 

...

MODULE altera_tela4 OUTPUT.

  IF v_tcode = '/PWS/ZYCI001_E'.

    LOOP AT SCREEN.

      screen-input = 0.

      MODIFY SCREEN.

    ENDLOOP.

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

    IF sy-dynnr EQ '0405'.

      LOOP AT tc_nve-cols INTO wa_cols.

        wa_cols-screen-input = 0.

        MODIFY tc_nve-cols FROM wa_cols.

      ENDLOOP.

    ENDIF.

  ELSE.

    IF sy-dynnr EQ '0405'.

      LOOP AT tc_nve-cols INTO wa_cols.

        IF  v_di NE space.

          wa_cols-screen-input = 0.

* << Fim da inclusão

  ELSE.

* >> Início da exclusão: MODULE ALTERA_TELA4

    IF sy-dynnr EQ '0405' AND v_di NE space.

      LOOP AT SCREEN.

        screen-input = 0.

        MODIFY SCREEN.

* << Fim da exclusão

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

          wa_cols-screen-input = 1.

        ENDIF.

        MODIFY tc_nve-cols FROM wa_cols.

* << Fim da inclusão

      ENDLOOP.

    ENDIF.

  ENDIF.

ENDMODULE.

...

 

...

  IF sy-dynnr EQ '0003'.

    PERFORM carrega_estrutura_0003.

  ELSEIF sy-dynnr EQ '0111' .

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

      PERFORM carrega_estrutura.

      DESCRIBE TABLE itab_zycit003 LINES v_line.

      tc_da-lines = v_line.

    ENDIF.

  elseif sy-dynnr eq '0405' .

    DESCRIBE TABLE itab_zycit503_aux LINES v_line.

* >> Início da exclusão: MODULE CARREGA_ESTRUTURA

    tc_nve-lines = v_line.

* << Fim da exclusão

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

    tc_nve-lines = v_line + 10.

* << Fim da inclusão

    MOVE itab_zycit503_aux TO /pws/zycit503.

  ENDIF.

ENDMODULE.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023O01

 

...

MODULE set_screen_padrao OUTPUT.

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

  DATA: v_controle TYPE c.

* << Fim da inclusão

...

 

...

       sy-dynnr = '0433' OR

       sy-dynnr = '0132'.

      IF sy-tcode EQ '/PWS/ZYCI023_E'

        OR v_nf041 EQ 'S'.

        screen-input = '0'.

        MODIFY SCREEN.

      ENDIF.

    ENDIF.

  ENDLOOP.

  IF sy-dynnr EQ '0323'.

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

    v_controle = 1.

    LOOP AT itab_itb.

* << Fim da inclusão

    READ TABLE itab_zycit503 WITH KEY ebeln = itab_itb-ebeln

                                      ebelp = itab_itb-ebelp.

* >> Início da exclusão: MODULE SET_SCREEN_PADRAO

    IF sy-subrc EQ 0 .

      IF NOT itab_zycit503-atributo_nve IS INITIAL.

        LOOP AT tc_anom-cols INTO v_cols.

          v_cols-screen-input = 0.

          MODIFY tc_anom-cols FROM v_cols.

* << Fim da exclusão

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

      IF sy-subrc EQ 0.

        v_controle = 0.

        EXIT.

      ENDIF.

* << Fim da inclusão

        ENDLOOP.

* >> Início da exclusão: MODULE SET_SCREEN_PADRAO

      ELSE.

* << Fim da exclusão

        IF NOT v_acto EQ 'E' AND NOT v_nf041 EQ 'S'.

          LOOP AT tc_anom-cols INTO v_cols.

* >> Início da exclusão: MODULE SET_SCREEN_PADRAO

            v_cols-screen-input = 1.

* << Fim da exclusão

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

        v_cols-screen-input = v_controle.

* << Fim da inclusão

            MODIFY tc_anom-cols FROM v_cols.

          ENDLOOP.

* >> Início da exclusão: MODULE SET_SCREEN_PADRAO

        ENDIF.

      ENDIF.

* << Fim da exclusão

    ENDIF.

  ENDIF.

  IF sy-dynnr = '0141'.

    IF itab_zycit001-meioemba EQ 'PS'.

...