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).
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