CE PLUS - Nota 004501

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Carga de Embarque

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

Data/Hora Última Alteração: 04/03/2010 10:59:44

Descrição da Nota: CORREÇÃO DO MODO EM QUE A CARGA NO EMBARQUE É CARREGADO(CRIAR/EXIB/ALT)

Sintoma

 

Problemas ao fechar e abrir campos de acordo com a transação utilizada.

 

Solução

 

Desenvolvimento para checar corretamente os campos para (Criar/Exibir/Alterar).

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 04501 Data: 23/08/2007 Hora: 09:54:02

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

 

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

Nota Número              : 04501

Categoria                : Erro de Programa

Prioridade               : Baixa

Versão PW.CE             : 7.0

Pacote                   : 00002

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

CORREÇÃO DO MODO EM QUE A CARGA NO EMBARQUE É CARREGADO(CRIAR/EXIB/ALT)

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

Palavras Chave:

CARGA EMBARQUE MODO EXIBIR CRIAR MODIFICAR

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCE008                        0100

MESS /PWS/ZYCEM289

REPS /PWS/MZYCE008F01

REPS /PWS/MZYCE008I01

REPS /PWS/MZYCE008O01

REPS /PWS/MZYCE008TOP

REPT /PWS/SAPMZYCE008

TABU /PWS/ZYGLT321

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCE008                        0100

 

...

PROCESS BEFORE OUTPUT.

* >> Início da exclusão: DYNP /PWS/SAPMZYCE008

  module: status_0100,

          set_screen.

* << Fim da exclusão

* >> Início da inclusão: DYNP /PWS/SAPMZYCE008

  MODULE: set_screen,

          status_0100.

* << Fim da inclusão

  CALL SUBSCREEN ss_cabcg    INCLUDING syst-cprog '0101'.

  CALL SUBSCREEN ss_itenscg  INCLUDING syst-cprog '0102'.

PROCESS AFTER INPUT.

  FIELD /pws/zycee053-bukrs MODULE authority_empresa.

  CALL SUBSCREEN ss_cabcg.

  CALL SUBSCREEN ss_itenscg.

  MODULE user_command_0100.

  MODULE user_command_exit AT EXIT-COMMAND.

...

 

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

Modificações efetuadas em MESS /PWS/ZYCEM289

 

Criar Mensagem:

Mensagem: 289

Txt.breve mensagem: Usuário &1 já está alterando a Carga &2.

 

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

Modificações efetuadas em REPS /PWS/MZYCE008F01

 

...

             FOR ALL ENTRIES IN itab_zycet054

             WHERE nrseq = itab_zycet054-nrseq.

    ENDIF.

    PERFORM lock_record.

    IF NOT wa_t053 IS INITIAL.

      CLEAR wa_t053.

      MOVE /pws/zycee053 TO wa_t053.

    ELSE.

      MOVE /pws/zycee053 TO wa_t053.

    ENDIF.

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

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

* << Fim da exclusão

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

    IF v_modo EQ 'C'.

* << Fim da inclusão

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                          DUMMY

                                          ID 'ACTVT' FIELD '01'.

      IF sy-subrc NE 0.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycee053-bukrs

                                            ID 'ACTVT' FIELD '01'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

        ENDIF.

      ELSE.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycee053-bukrs

                                            ID 'ACTVT' FIELD '01'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

        ENDIF.

      ENDIF.

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

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

* << Fim da exclusão

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

    ELSEIF v_modo EQ 'A'.

* << Fim da inclusão

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                          DUMMY

                                          ID 'ACTVT' FIELD '02'.

      IF sy-subrc NE 0.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycee053-bukrs

                                            ID 'ACTVT' FIELD '02'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

        ENDIF.

      ELSE.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycee053-bukrs

                                            ID 'ACTVT' FIELD '02'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

        ENDIF.

      ENDIF.

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

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

* << Fim da exclusão

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

    ELSEIF v_modo EQ 'E'.

* << Fim da inclusão

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                          DUMMY

                                          ID 'ACTVT' FIELD '03'.

      IF sy-subrc NE 0.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycee053-bukrs

                                            ID 'ACTVT' FIELD '03'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

        ENDIF.

...

 

...

    /pws/zycee054-dteta    = itab_zycet054-dteta.

    /pws/zycee054-portdest = itab_zycet054-portdest.

    READ TABLE itab_zycet047 WITH KEY nrseq =

 itab_zycet054-nrseq.

    IF sy-subrc = 0.

      /pws/zycee047-dtbl = itab_zycet047-dtbl.

    ENDIF.

  ENDIF.

ENDFORM.

FORM limpa_tabelas.

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

  IF sy-tcode = '/PWS/ZYCE008_C'.

* << Fim da exclusão

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

  IF v_modo = 'C'.

* << Fim da inclusão

    REFRESH: itab_zycet054_del, itab_zycet053,

 itab_zycet054,

             itab_zycet047.

    CLEAR: itab_zycet054_del, itab_zycet053,

 itab_zycet054,

           /pws/zycee054, /pws/zycee053, /pws/zycee053a, lfa1-name1,

 /pws/zycit054-bezei,

           /pws/zycee047, itab_zycet047.

  ELSE.

    REFRESH itab_zycet054_del. CLEAR itab_zycet054_del.

...

 

...

        ENDIF.

      ENDIF.

    ENDLOOP.

    CALL CUSTOMER-FUNCTION '003'.

    MESSAGE s094 WITH /pws/zycee053-nrseqcg.

  ENDIF.

ENDFORM.

FORM verifica_alteracao.

  IF /pws/zycee053 NE wa_t053  OR

     itab_zycet054[] NE itab_zycet054_ant[].

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

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

* << Fim da exclusão

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

    IF v_modo EQ 'C' .

* << Fim da inclusão

      IF v_save2 IS INITIAL.

        CALL FUNCTION 'POPUP_TO_CONFIRM'

             EXPORTING

                  text_question         = text-009

                  text_button_1         = text-002

                  icon_button_1         = 'ICON_OKAY'

                  text_button_2         = text-003

                  icon_button_2         = 'ICON_CANCEL'

                  default_button        = '1'

                  display_cancel_button = 'X'

...

 

...

    IF sy-subrc = 0.

      v_transportation = 'X'.

    ENDIF.

    CALL SCREEN '0100'.

  ENDIF.

  CLEAR: v_nrseqcg,

         v_flag_emb,

         v_nrseq_carga.

ENDFORM.

FORM lock_record.

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

  DATA: v_uname LIKE sy-uname.

* << Fim da inclusão

  CHECK sy-tcode = '/PWS/ZYCE008_C' OR

        sy-tcode = '/PWS/ZYCE008_A' OR

        sy-tcode = '/PWS/ZYCE008_E'.

  CALL FUNCTION '/PWS/ZYCE_ENQUEUE_ZYCET001'

       EXPORTING

            nrseq          = /pws/zycee053-nrseqcg

       EXCEPTIONS

            foreign_lock   = 1

            system_failure = 2.

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

  IF sy-subrc <> 0.

* << Fim da exclusão

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

  IF sy-subrc <> 0 AND v_modo <> 'E'.

    IF sy-msgid EQ 'MC' AND

         sy-msgno EQ 601.

      v_uname = sy-msgv1.

    ENDIF.

    IF v_uname IS INITIAL.

* << Fim da inclusão

    MESSAGE w016 WITH text-008.

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

    ELSE.

      MESSAGE w289 WITH v_uname /pws/zycee053-nrseqcg.

    ENDIF.

* << Fim da inclusão

    v_exibe = 0.

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

    v_modo = 'E'.

* << Fim da inclusão

  ELSE.

    CASE sy-dynnr.

      WHEN '0100'.

        IF v_exibe EQ 1.

          v_exibe = '0'.

        ELSE.

          v_exibe = '1'.

        ENDIF.

    ENDCASE.

  ENDIF.

...

 

...

ENDFORM.

FORM controle_tela102.

  IMPORT v_tela2 FROM MEMORY ID '040'.

  IMPORT v_tela3 FROM MEMORY ID '041'.

  IF /pws/zycee053-nome_tr IS INITIAL AND v_tela2 = '1'.

    LOOP AT tc_itens-cols INTO wa_cols.

      wa_cols-screen-input = '0'.

      MODIFY tc_itens-cols FROM wa_cols.

    ENDLOOP.

  ENDIF.

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

  IF v_tela3 = '1' AND sy-tcode = '/PWS/ZYCE008_A'

* << Fim da exclusão

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

  IF v_tela3 = '1' AND v_modo = 'A'

* << Fim da inclusão

  AND NOT /pws/zycee053-nome_tr IS INITIAL.

    LOOP AT tc_itens-cols INTO wa_cols.

      IF wa_cols-screen-name = '/PWS/ZYCEE054-NRSEQ'.

        wa_cols-screen-input = '1'.

        MODIFY tc_itens-cols FROM wa_cols.

      ENDIF.

    ENDLOOP.

  ENDIF.

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

  IF sy-tcode = '/PWS/ZYCE008_A' AND /pws/zycee053-nome_tr IS INITIAL.

* << Fim da exclusão

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

  IF v_modo = 'A' AND /pws/zycee053-nome_tr IS INITIAL.

* << Fim da inclusão

    LOOP AT tc_itens-cols INTO wa_cols.

      wa_cols-screen-input = '0'.

      MODIFY tc_itens-cols FROM wa_cols.

    ENDLOOP.

  ENDIF.

  CLEAR: v_tela2,

         v_tela3.

ENDFORM.

FORM trata_enter.

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

  IF sy-tcode = '/PWS/ZYCE008_C'.

* << Fim da exclusão

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

  IF v_modo = 'C'.

* << Fim da inclusão

  ELSE.

    v_save = '1'.

  ENDIF.

  IF v_exibe = '1'.

    IF NOT itab_zycet047[] IS INITIAL.

      IF NOT itab_zycet054[] IS INITIAL.

        SELECT * INTO TABLE itab_zycet047

        FROM /pws/zycet047 FOR ALL ENTRIES IN itab_zycet054

        WHERE nrseq = itab_zycet054-nrseq.

      ENDIF.

...

 

...

          ENDCASE.

      ENDCASE.

    ENDLOOP.

    LOOP AT SCREEN.

      IF screen-name = 'V_TRANSPORTATION'.

        screen-input = '1'.

        MODIFY SCREEN.

      ENDIF.

    ENDLOOP.

  ENDIF.

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

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

* << Fim da exclusão

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

  IF v_modo EQ 'E'.

* << Fim da inclusão

    LOOP AT SCREEN.

      screen-input = '0'.

      MODIFY SCREEN.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM verif_exit.

  CLEAR:   v_subrc,

           it_zycee005,

           it_zycet005.

...

 

...

          ENDIF.

        ENDIF.

      ENDLOOP.

    ENDIF.

  ENDIF.

ENDFORM.

FORM atualiza_qtd.

  DATA wa_zycet002 LIKE itab_zycet002.

  DATA f_kimg LIKE itab_zycet002-fkimg.

  DATA v_index LIKE sy-tabix.

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

  CHECK sy-tcode NE '/PWS/ZYCE008_E'.

* << Fim da exclusão

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

  CHECK v_modo NE 'E'.

* << Fim da inclusão

  CLEAR itab_zycet054_chg.

  itab_zycet054_chg[] = itab_zycet054[].

  SORT itab_zycet054_chg BY nrseq.

  SELECT nrseq

         dteta

         portemb

         dtemb

         portdest

         name1

   FROM /pws/zycet001

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCE008I01

 

MODULE user_command_0110 INPUT.

  okcode = sy-ucomm.

  CASE okcode.

    WHEN 'BACK' OR 'EXIT' OR 'LEAV'.

      REFRESH itab_nrseqcg.

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

      LEAVE TO SCREEN 0.

* << Fim da exclusão

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

      LEAVE PROGRAM.

* << Fim da inclusão

    WHEN 'ENTE'.

      PERFORM monta_itab.

      SELECT * FROM /pws/zycet053 INTO TABLE itab_zycet053

            WHERE nrseqcg IN itab_nrseqcg.

      IF sy-subrc EQ 0.

        v_tela = 'A'.

        LEAVE TO SCREEN '0120'.

      ELSE.

        MESSAGE i083 WITH /pws/zycee053-nrseqcg.

        CLEAR itab_nrseqcg.

...

 

...

  SET PARAMETER ID '/PWS/ZYCEP004' FIELD /pws/zycee102-nrrota_tr.

  SET PARAMETER ID '/PWS/ZYCEP011' FIELD /pws/zycee053-nrseqcg.

  PERFORM busca_exit USING 'OKCODE'.

  CASE okcode.

    WHEN 'POPUP'.

      PERFORM popup.

    WHEN 'BACK'.

      CLEAR: sy-ucomm,

            v_transportation.

      PERFORM trata_enter.

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

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

* << Fim da exclusão

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

      IF  v_modo EQ 'E' AND NOT v_flag_emb IS INITIAL.

* << Fim da inclusão

        LEAVE PROGRAM.

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

      ELSE.

        LEAVE TO SCREEN '0110'.

* << Fim da inclusão

      ENDIF.

      PERFORM verifica_alteracao.

      IF v_grava EQ '1'.

        PERFORM grava_alteracoes.

      ELSEIF v_grava = '2'.

        PERFORM limpa_tabelas.

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

        IF sy-tcode = '/PWS/ZYCE008_C'.

* << Fim da exclusão

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

        IF v_modo = 'C'.

* << Fim da inclusão

          LEAVE PROGRAM.

        ELSE.

          IF v_imp = '1'.

            LEAVE  PROGRAM.

          ELSEIF v_flag_emb = 'S'.

            LEAVE  PROGRAM.

          ENDIF.

          LEAVE TO SCREEN 0.

        ENDIF.

      ENDIF.

    WHEN 'EMBA'.

      PERFORM chama_rota.

    WHEN 'EXIT'.

      LEAVE PROGRAM.

    WHEN 'CANC'.

      PERFORM limpa_tabelas.

      LEAVE PROGRAM.

    WHEN 'ENTE'.

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

      IF sy-tcode = '/PWS/ZYCE008_C'.

* << Fim da exclusão

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

      IF v_modo = 'C'.

* << Fim da inclusão

      ELSE.

        v_save = '1'.

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

        v_exibe = '1'.

* << Fim da exclusão

      ENDIF.

      IF v_exibe = '1'.

        PERFORM atualiza_qtd.

        IF ts_carga-activetab = 'FC_ITE'.

          IF NOT itab_zycet054[] IS INITIAL.

...

 

...

      IF NOT v_transportation IS INITIAL.

        PERFORM verif_exit.

      ENDIF.

      PERFORM salva_dados.

      v_save2 = '1'.

      MOVE /pws/zycee053 TO wa_t053.

      MOVE itab_zycet054[] TO itab_zycet054_ant[].

      v_exibe = '0'.

      CLEAR okcode.

    WHEN 'MDFY'.

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

      v_modo = 'A'.

* << Fim da inclusão

      AUTHORITY-CHECK OBJECT 'S_TCODE' ID 'TCD' FIELD

'/PWS/ZYCE008_A'.

      IF sy-subrc NE 0.

        MESSAGE e261(sf) WITH '/PWS/ZYCE008_A'.

      ENDIF.

      PERFORM lock_record.

    WHEN 'DCAR'.

      PERFORM verifica_dele_itens.

      PERFORM confirma_exclusao.

      IF v_grava = '1'.

...

 

...

      PERFORM desm_linhas.

    WHEN 'FC_DEL'.

      PERFORM del_item.

  ENDCASE.

ENDMODULE.

MODULE user_command_0120 INPUT.

  okcode = sy-ucomm.

  CASE okcode.

    WHEN 'CARG'.

      v_save = '1'.

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

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

* << Fim da exclusão

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

      IF v_modo EQ 'A'.

* << Fim da inclusão

        v_exibe = '1'.

      ENDIF.

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

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

* << Fim da exclusão

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

      IF v_modo EQ 'E'.

* << Fim da inclusão

        v_exibe = '0'.

      ENDIF.

      PERFORM chama_carga.

    WHEN 'BACK'.

      CLEAR: itab_nrseqcg, itab_zycet053.

      REFRESH: itab_zycet053,itab_nrseqcg.

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

      IF v_tela = 'A'.

        IF sy-tcode = '/PWS/ZYCE008_A'.

          LEAVE TO TRANSACTION '/PWS/ZYCE008_A'.

        ELSE.

          LEAVE TO TRANSACTION '/PWS/ZYCE008_E'.

        ENDIF.

      ENDIF.

      LEAVE PROGRAM.

* << Fim da exclusão

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

      LEAVE TO SCREEN '0110'.

* << Fim da inclusão

    WHEN 'P-'.

      tc_lcarga-top_line = tc_lcarga-top_line - 11.

    WHEN 'P--'.

      tc_lcarga-top_line = tc_lcarga-top_line

                               - tc_lcarga-lines.

    WHEN 'P+'.

      tc_lcarga-top_line = tc_lcarga-top_line + 11.

    WHEN 'P++'.

      tc_lcarga-top_line = tc_lcarga-top_line

                               + tc_lcarga-lines.

...

 

...

        ENDIF.

      ELSE.

        MESSAGE w092.

      ENDIF.

    ELSE.

      MESSAGE w092.

    ENDIF.

  ENDIF.

ENDFORM.

MODULE authority_empresa INPUT.

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

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

* << Fim da exclusão

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

  IF v_modo EQ 'C'.

* << Fim da inclusão

    AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                        DUMMY

                                        ID 'ACTVT' FIELD '01'.

    IF sy-subrc NE 0.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                          /pws/zycee053-bukrs

                                          ID 'ACTVT' FIELD '01'.

      IF sy-subrc NE 0.

        MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

      ENDIF.

    ELSE.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                          /pws/zycee053-bukrs

                                          ID 'ACTVT' FIELD '01'.

      IF sy-subrc NE 0.

        MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

      ENDIF.

    ENDIF.

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

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

* << Fim da exclusão

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

  ELSEIF v_modo EQ 'A'.

* << Fim da inclusão

    AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                        DUMMY

                                        ID 'ACTVT' FIELD '02'.

    IF sy-subrc NE 0.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                          /pws/zycee053-bukrs

                                          ID 'ACTVT' FIELD '02'.

      IF sy-subrc NE 0.

        MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

      ENDIF.

    ELSE.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                          /pws/zycee053-bukrs

                                          ID 'ACTVT' FIELD '02'.

      IF sy-subrc NE 0.

        MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

      ENDIF.

    ENDIF.

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

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

* << Fim da exclusão

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

  ELSEIF v_modo EQ 'E'.

* << Fim da inclusão

    AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                        DUMMY

                                        ID 'ACTVT' FIELD '03'.

    IF sy-subrc NE 0.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                          /pws/zycee053-bukrs

                                          ID 'ACTVT' FIELD '03'.

      IF sy-subrc NE 0.

        MESSAGE e083(f5) WITH /pws/zycee053-bukrs.

      ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCE008O01

 

MODULE set_screen OUTPUT.

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

  IF v_modo IS INITIAL.

    CASE sy-tcode.

      WHEN '/PWS/ZYCE008_C'.

        v_modo = 'C'.

      WHEN '/PWS/ZYCE008_A'.

        v_modo = 'A'.

      WHEN '/PWS/ZYCE008_E'.

        v_modo = 'E'.

    ENDCASE.

  ENDIF.

* << Fim da inclusão

  CASE sy-dynnr.

    WHEN '0100'.

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

      IF sy-tcode = '/PWS/ZYCE008_C'.

* << Fim da exclusão

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

      IF v_modo = 'C'.

* << Fim da inclusão

        PERFORM novo_nrseqcg.

        PERFORM chama_empresa.

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

      ELSE.

* << Fim da exclusão

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

      ENDIF.

* << Fim da inclusão

        LOOP AT SCREEN.

          IF screen-group1 NE 'TAB'.

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

            IF screen-group1 = 'GP2'.

              screen-input = v_exibe.

* << Fim da exclusão

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

          IF v_modo <> 'E' AND screen-name <> '/PWS/ZYCEE053-NRSEQCG'.

            screen-input = '1'.

* << Fim da inclusão

            ELSE.

              screen-input = '0'.

            ENDIF.

            MODIFY SCREEN.

          ENDIF.

        ENDLOOP.

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

      ENDIF.

* << Fim da exclusão

    WHEN '0101'.

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

      IF sy-tcode <> '/PWS/ZYCE008_C'.

* << Fim da exclusão

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

      IF v_modo = 'E'.

* << Fim da inclusão

        LOOP AT SCREEN.

          IF screen-group1 NE 'TAB'.

            IF screen-name = '/PWS/ZYCEE053-NOME_TR'.

              screen-input = v_exibe.

            ELSE.

              screen-input = '0'.

            ENDIF.

            MODIFY SCREEN.

          ENDIF.

        ENDLOOP.

      ELSE.

        LOOP AT SCREEN.

          IF screen-group1 NE 'TAB'.

            IF screen-name = '/PWS/ZYCEE053-NOME_TR'.

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

              screen-input = v_exibe.

* << Fim da exclusão

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

              screen-input = '1'.

* << Fim da inclusão

            ELSE.

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

              screen-input = '0'.

* << Fim da exclusão

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

              screen-input = '1'.

* << Fim da inclusão

            ENDIF.

            MODIFY SCREEN.

          ENDIF.

...

 

...

      ENDIF.

      IF NOT /pws/zycee053-codabics IS INITIAL

      AND /pws/zycet042-navio IS INITIAL.

        SELECT SINGLE navio INTO /pws/zycet042-navio FROM /pws/zycet042

               WHERE codabics = /pws/zycee053-codabics.

        IF sy-subrc NE 0.

          CLEAR /pws/zycet042-navio.

        ENDIF.

      ELSEIF /pws/zycee053-codabics IS INITIAL.

        CLEAR /pws/zycet042-navio.

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

      ENDIF.

      IF NOT itab_zycet054[] IS INITIAL.

        LOOP AT SCREEN.

          screen-input = '0'.

          MODIFY SCREEN.

        ENDLOOP.

      ENDIF.

      IF v_tela2 = '1'.

        LOOP AT SCREEN.

          IF screen-name = '/PWS/ZYCEE053-NOME_TR'.

            screen-input = '1'.

          ELSE.

            screen-input = '0'.

          ENDIF.

          MODIFY SCREEN.

        ENDLOOP.

* << Fim da exclusão

      ENDIF.

      PERFORM conf_tela.

    WHEN '0102'.

      tc_itens-lines = tc_itens-top_line + 15.

      LOOP AT tc_itens-cols INTO wa_cols.

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

        IF wa_cols-screen-name = '/PWS/ZYCEE054-NRSEQ'

        OR wa_cols-screen-name = '/PWS/ZYCEE054-NRCONTR'.

* << Fim da exclusão

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

        IF ( wa_cols-screen-name = '/PWS/ZYCEE054-NRSEQ'

        OR wa_cols-screen-name = '/PWS/ZYCEE054-NRCONTR' )

        AND v_modo <> 'E'.

* << Fim da inclusão

          wa_cols-screen-input = 1.

        ELSE.

          wa_cols-screen-input = '0'.

        ENDIF.

        MODIFY tc_itens-cols FROM wa_cols.

      ENDLOOP.

      PERFORM controle_tela102.

  ENDCASE.

  perform busca_exit using 'CGE002'.

ENDMODULE.

...

 

...

    SET PF-STATUS '0110'.

    SET TITLEBAR '0110'.

  ENDIF.

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

    SET PF-STATUS '0110' EXCLUDING 'DEMB'.

    SET TITLEBAR '0111'.

    PERFORM import_carga.

  ENDIF.

ENDMODULE.

MODULE status_0100 OUTPUT.

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

  CASE sy-tcode.

* << Fim da exclusão

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

  CASE v_modo.

* << Fim da inclusão

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

    WHEN '/PWS/ZYCE008_C'.

* << Fim da exclusão

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

    WHEN 'C'.

* << Fim da inclusão

      REFRESH tab.

      CLEAR tab.

      v_exibe = '1'.

      MOVE 'MDFY' TO tab-fcode.

      APPEND tab.

      MOVE 'DCAR' TO tab-fcode.

      APPEND tab.

      SET PF-STATUS '0100' EXCLUDING tab.

      IF okcode = 'SAVE'.

        REFRESH tab.

...

 

...

        MOVE 'DESM' TO tab-fcode.

        APPEND tab.

        MOVE 'DELET' TO tab-fcode.

        APPEND tab.

        MOVE 'DCAR' TO tab-fcode.

        APPEND tab.

        SET PF-STATUS '0100' EXCLUDING tab.

        v_exibe = '0'.

      ENDIF.

      SET TITLEBAR  '0100'.

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

    WHEN '/PWS/ZYCE008_A'.

* << Fim da exclusão

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

    WHEN 'A'.

* << Fim da inclusão

      REFRESH tab.

      CLEAR tab.

      MOVE 'MARCA' TO tab-fcode.

      APPEND tab.

      MOVE 'DESM' TO tab-fcode.

      APPEND tab.

      MOVE 'DELET' TO tab-fcode.

      APPEND tab.

      MOVE 'DCAR' TO tab-fcode.

      APPEND tab.

      IF v_exibe = '1'.

        SET PF-STATUS '0100A'.

        SET TITLEBAR  '0110'.

      ELSE.

        SET PF-STATUS '0100' EXCLUDING tab.

        SET TITLEBAR  '0111'.

      ENDIF.

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

    WHEN '/PWS/ZYCE008_E'.

* << Fim da exclusão

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

    WHEN 'E'.

* << Fim da inclusão

      REFRESH tab.

      CLEAR tab.

      MOVE 'SAVE' TO tab-fcode.

      APPEND tab.

      MOVE 'MARCA' TO tab-fcode.

      APPEND tab.

      MOVE 'DESM' TO tab-fcode.

      APPEND tab.

      MOVE 'DELET' TO tab-fcode.

      APPEND tab.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCE008TOP

 

...

        vbeln    LIKE   vbfa-vbeln,

      END OF itab_vbfa.

DATA: BEGIN OF itab_likp OCCURS 20,

        vbeln    LIKE   likp-vbeln,

        vstel    LIKE   likp-vstel,

      END OF itab_likp.

DATA: itab_saida       LIKE /pws/zycet002 OCCURS  5 WITH HEADER LINE,

      itab_estorno     LIKE /pws/zycet002 OCCURS  5 WITH HEADER LINE,

      itab_devolucao   LIKE /pws/zycet002 OCCURS  5 WITH HEADER LINE,

      itab_complemento LIKE /pws/zycet002 OCCURS  5 WITH HEADER LINE,

* >> Início da exclusão:

      itab_zyglt100 LIKE /pws/zyglt100 OCCURS 0 WITH HEADER LINE.

* << Fim da exclusão

* >> Início da inclusão:

      itab_zyglt100 LIKE /pws/zyglt100 OCCURS 0 WITH HEADER LINE,

      v_modo(1) TYPE c.

* << Fim da inclusão