Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Embarque
Data/Hora da Publicação: 12/08/2008 00:00:00
Data/Hora Última Alteração: 09/03/2010 14:12:55
Descrição da Nota: IMPLEMENTAÇÃO DO MODULO CONTROLE DE DATAS NO EMBARQUE
Sintoma
Controle de Datas no Embarque
Solução
Novo desenvolvimento no programa de Controle de Datas no Embarque.
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 07128 Data: 12/08/2008 Hora: 15:29:36
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 07128
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00006
Agrupamento : 00060
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
IMPLEMENTAÇÃO DO MODULO CONTROLE DE DATAS NO EMBARQUE
----------------------------------------------------------------------------------------------------
Palavras Chave:
CONTROLE - DATAS - EMBARQUE
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI030 0001
DYNP /PWS/SAPMZYCI030 0100
REPS /PWS/MZYCI001I01
REPS /PWS/MZYCI030F01
REPS /PWS/MZYCI030I01
REPS /PWS/MZYCI030O01
REPS /PWS/MZYCI030TOP
TABD /PWS/ZYCIE284
TABD /PWS/ZYCIT284
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI030 0001
MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0001
PROCESS BEFORE OUTPUT.
* >> Início da exclusão:
module status.
* << Fim da exclusão
* >> Início da inclusão:
MODULE: STATUS_0001.
* << Fim da inclusão
PROCESS AFTER INPUT.
MODULE: USER_COMMAND_0001,
user_command_exit at exit-command.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI030 0100
MODIFICAR CARACTERÍSTICAS DA TELA 0100
Altura atual (linhas) 25
INCLUIR FRAME ""
Altura 18
Comprimento Visível 37
Linha 7
Coluna 3
Formato CHAR
INCLUIR FRAME ""
Altura 18
Comprimento Visível 38
Linha 7
Coluna 42
Formato CHAR
INCLUIR FRAME ""
Altura 18
Comprimento Visível 38
Linha 7
Coluna 82
Formato CHAR
MODIFICAR FRAME "%#AUTOTEXT001"
Altura 21
INCLUIR TEXTO "%#AUTOTEXT002"
Comprimento Visível 11
Linha 3
Coluna 4
Formato CHAR
Texto Dt. Início:
Código função
INCLUIR TEXTO "%#AUTOTEXT003"
Comprimento Visível 14
Linha 6
Coluna 43
Formato CHAR
Texto Datas Efetivas
Código função
INCLUIR TEXTO "%#AUTOTEXT004"
Comprimento Visível 8
Linha 6
Coluna 83
Formato CHAR
Texto Períodos
Código função
INCLUIR TEXTO "%#AUTOTEXT005"
Comprimento Visível 15
Linha 6
Coluna 4
Formato CHAR
Texto Datas Previstas
Código função
INCLUIR CAMPO TEXTO "/PWS/ZYCIE001-DTLIBCARREG"
Comprimento Visível 10
Linha 18
Coluna 49
Formato DATE
Linhas mínimas 8
Texto __________
Código função
INCLUIR TEXTO "/PWS/ZYCIE001-DTLIBCARREG"
Comprimento Visível 35
Linha 17
Coluna 43
Formato CHAR
Texto Data de liberação para carregamento
Código função
INCLUIR CAMPO TEXTO "/PWS/ZYCIE001-DTPREVEMB"
Comprimento Visível 10
Linha 12
Coluna 10
Formato DATE
Linhas mínimas 8
Texto __________
Código função
INCLUIR TEXTO "/PWS/ZYCIE001-DTPREVEMB"
Comprimento Visível 16
Linha 11
Coluna 4
Formato CHAR
Texto Data de embarque
Código função
INCLUIR CAMPO TEXTO "/PWS/ZYCIE001-DTPREVLIBCARREG"
Comprimento Visível 10
Linha 18
Coluna 10
Formato DATE
Linhas mínimas 8
Texto __________
Código função
INCLUIR TEXTO "/PWS/ZYCIE001-DTPREVLIBCARREG"
Comprimento Visível 35
Linha 17
Coluna 4
Formato CHAR
Texto Data de liberação para carregamento
Código função
INCLUIR CAMPO TEXTO "/PWS/ZYCIE001-DTPREVRETMERC"
Comprimento Visível 10
Linha 9
Coluna 10
Formato DATE
Linhas mínimas 8
Texto __________
Código função
INCLUIR TEXTO "/PWS/ZYCIE001-DTPREVRETMERC"
Comprimento Visível 24
Linha 8
Coluna 4
Formato CHAR
Texto Data de disponibilização
Código função
INCLUIR CAMPO TEXTO "/PWS/ZYCIE001-DT_PREV_ENTR"
Comprimento Visível 10
Linha 21
Coluna 10
Formato DATE
Linhas mínimas 8
Texto __________
Código função
INCLUIR TEXTO "/PWS/ZYCIE001-DT_PREV_ENTR"
Comprimento Visível 15
Linha 20
Coluna 4
Formato CHAR
Texto Data de entrega
Código função
INCLUIR CAMPO TEXTO "/PWS/ZYCIE001-DT_RETMERC"
Comprimento Visível 10
Linha 9
Coluna 49
Formato DATE
Linhas mínimas 8
Texto __________
Código função
INCLUIR TEXTO "/PWS/ZYCIE001-DT_RETMERC"
Comprimento Visível 24
Linha 8
Coluna 43
Formato CHAR
Texto Data de disponibilização
Código função
INCLUIR CAMPO TEXTO "/PWS/ZYCIE093-DTCHEG"
Comprimento Visível 10
Linha 15
Coluna 49
Formato DATE
Linhas mínimas 8
Texto __________
Código função
INCLUIR TEXTO "/PWS/ZYCIE093-DTCHEG"
Comprimento Visível 15
Linha 14
Coluna 43
Formato CHAR
Texto Data de chegada
Código função
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-BUKRS"
Coluna 89
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-DTCHEG"
Linha 21
Coluna 49
MODIFICAR TEXTO "/PWS/ZYCIE284-DTCHEG"
Comprimento Visível 15
Linha 20
Coluna 43
Texto Data de entrega
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-DTEMISS"
Linha 12
Coluna 49
MODIFICAR TEXTO "/PWS/ZYCIE284-DTEMISS"
Comprimento Visível 16
Linha 11
Coluna 43
Texto Data de embarque
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-DTINICIO"
Linha 3
EXCLUIR TEXTO "/PWS/ZYCIE284-DTINICIO"
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-DTLIB"
Linha 13
Coluna 89
MODIFICAR TEXTO "/PWS/ZYCIE284-DTLIB"
Comprimento Visível 9
Linha 12
Coluna 83
Texto Liberação
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-DTPRCHEG"
Linha 15
Coluna 10
MODIFICAR TEXTO "/PWS/ZYCIE284-DTPRCHEG"
Comprimento Visível 15
Texto Data de chegada
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-EMBARCA"
Coluna 25
MODIFICAR TEXTO "/PWS/ZYCIE284-EMBARCA"
Coluna 4
INCLUIR CAIXA DE VERIFICAÇÃO "/PWS/ZYCIE284-FLAG_LEAD_TIME"
Comprimento Visível 1
Linha 23
Coluna 4
Formato CHAR
Linhas mínimas 1
Texto _
INCLUIR CHTXT "/PWS/ZYCIE284-FLAG_LEAD_TIME"
Comprimento Visível 21
Linha 23
Coluna 6
Formato CHAR
Texto Excluído do Lead Time
Código função
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-J_1BBRANCH"
Coluna 94
MODIFICAR TEXTO "/PWS/ZYCIE284-J_1BBRANCH"
Coluna 68
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-NRSEQ"
Coluna 41
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-NR_LIBERACAO"
Linha 10
Coluna 107
MODIFICAR TEXTO "/PWS/ZYCIE284-NR_LIBERACAO"
Comprimento Visível 20
Linha 10
Coluna 83
Texto Período de liberação
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE284-NR_TRANSPORTE"
Linha 8
Coluna 107
MODIFICAR TEXTO "/PWS/ZYCIE284-NR_TRANSPORTE"
Comprimento Visível 21
Linha 8
Coluna 83
Texto Período de transporte
MODIFICAR CAMPO TEXTO "V_DIA_BL"
Linha 12
Coluna 60
MODIFICAR CAMPO TEXTO "V_DIA_CHEG"
Linha 15
Coluna 21
INCLUIR CAMPO TEXTO "V_DIA_DTCHEG_E"
Comprimento Visível 18
Linha 15
Coluna 60
Formato CHAR
Texto __________________
MODIFICAR CAMPO TEXTO "V_DIA_EMB"
Linha 3
MODIFICAR CAMPO TEXTO "V_DIA_LIB"
Linha 13
Coluna 100
INCLUIR CAMPO TEXTO "V_DIA_LIBCARREG"
Comprimento Visível 18
Linha 18
Coluna 60
Formato CHAR
Texto __________________
INCLUIR CAMPO TEXTO "V_DIA_PREVEMB"
Comprimento Visível 18
Linha 12
Coluna 21
Formato CHAR
Texto __________________
INCLUIR CAMPO TEXTO "V_DIA_PREVLIBCARREG"
Comprimento Visível 18
Linha 18
Coluna 21
Formato CHAR
Texto __________________
INCLUIR CAMPO TEXTO "V_DIA_PREV_ENTR"
Comprimento Visível 18
Linha 21
Coluna 21
Formato CHAR
Texto __________________
INCLUIR CAMPO TEXTO "V_DIA_PREV_RETMERC"
Comprimento Visível 18
Linha 9
Coluna 21
Formato CHAR
Texto __________________
MODIFICAR CAMPO TEXTO "V_DIA_REAL"
Linha 21
Coluna 60
INCLUIR CAMPO TEXTO "V_DIA_RETMERC"
Comprimento Visível 18
Linha 9
Coluna 60
Formato CHAR
Texto __________________
MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0100
PROCESS BEFORE OUTPUT.
* >> Início da exclusão:
MODULE:
status,
dia_semana .
* << Fim da exclusão
* >> Início da inclusão:
MODULE: STATUS_0100,
SET_SCREEN,
DIA_SEMANA.
* << Fim da inclusão
PROCESS AFTER INPUT.
MODULE: USER_COMMAND_0100,
user_command_exit at exit-command.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001I01
...
start_row = 6
IMPORTING
answer = v_resposta
EXCEPTIONS
text_not_found = 1
OTHERS = 2.
IF sy-subrc EQ 0 AND v_resposta EQ '1'.
v_cont = v_cont + 1.
PERFORM gravar_custos.
ENDIF.
* >> Início da inclusão: MODULE USER_COMMAND_0050
WHEN 'DATAS'.
EXPORT v_tcode TO MEMORY ID 'V_TCODE'.
SET PARAMETER ID '/PWS/ZYCIP001' FIELD /pws/zycie001-nrseq.
PERFORM valida_trans USING '/PWS/ZYCI030' 'skip'.
SELECT SINGLE *
FROM /pws/zycit001
INTO /pws/zycie001
WHERE nrseq = /pws/zycie001-nrseq.
* << Fim da inclusão
ENDCASE.
ENDIF.
CLEAR okcode.
ENDMODULE.
MODULE user_command_0002 INPUT.
CASE okcode.
WHEN 'ENTER'.
PERFORM trata_enter_0002.
WHEN 'CANCEL' .
LEAVE TO SCREEN 0.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI030F01
form dia_semana using p_data
changing p_dia_semana.
call function '/PWS/ZYCB_DIA_DA_SEMANA'
exporting
* >> Início da exclusão: FORM DIA_SEMANA
datum = p_data
* << Fim da exclusão
* >> Início da inclusão: FORM DIA_SEMANA
datum = p_data
* << Fim da inclusão
IMPORTING
* >> Início da exclusão: FORM DIA_SEMANA
DIA_DA_SEMANA = p_dia_semana.
* << Fim da exclusão
* >> Início da inclusão: FORM DIA_SEMANA
dia_da_semana = p_dia_semana.
* << Fim da inclusão
endform.
form modo_batch_input.
clear: /pws/zycbt039, itab_modo.
...
...
i_func = p_func
i_zexit = p_exit
TABLES
itab_zyglt100 = itab_zyglt100
EXCEPTIONS
i_codmod_nao_encontrado = 1
i_func_nao_encontrado = 2
i_zexit_nao_encontrado = 3
OTHERS = 4.
endform.
* >> Início da inclusão:
FORM seleciona_embarque.
WRITE /pws/zycie284-nrseq TO /pws/zycie284-nrseq RIGHT-JUSTIFIED.
OVERLAY /pws/zycie284-nrseq WITH '0000000000'.
SELECT SINGLE * FROM /pws/zycit001
WHERE nrseq EQ /pws/zycie284-nrseq.
IF sy-subrc NE 0.
MESSAGE w015 WITH text-001.
EXIT.
ELSE.
MOVE: /pws/zycit001 TO /pws/zycie001.
DATA: BEGIN OF itab_zycbt007 OCCURS 0.
INCLUDE STRUCTURE /pws/zycbt007.
DATA: END OF itab_zycbt007.
SELECT * FROM /pws/zycbt007
INTO TABLE itab_zycbt007
WHERE bukrs EQ /pws/zycit001-bukrs.
LOOP AT itab_zycbt007.
AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD
itab_zycbt007-bukrs
ID 'ACTVT' FIELD '01'.
IF sy-subrc NE 0.
MESSAGE e083(f5) WITH itab_zycbt007-bukrs.
ENDIF.
ENDLOOP.
ENDIF.
MOVE: /pws/zycit001-embarca TO /pws/zycie284-embarca ,
/pws/zycit001-nrseq TO /pws/zycie284-nrseq ,
/pws/zycit001-bukrs TO /pws/zycie284-bukrs ,
/pws/zycit001-j_1bbranch TO /pws/zycie284-j_1bbranch,
/pws/zycit001-dtinicio TO /pws/zycie284-dtinicio .
SELECT SINGLE nr_transporte nr_liberacao flag_lead_time
FROM /pws/zycit284
INTO (/pws/zycie284-nr_transporte,
/pws/zycie284-nr_liberacao,
/pws/zycie284-flag_lead_time)
WHERE paorigem EQ /pws/zycit001-paorigem
AND paispao EQ /pws/zycit001-paispao
AND padest EQ /pws/zycit001-padest
AND paispa EQ /pws/zycit001-paispa.
IF sy-subrc NE 0.
CLEAR: /pws/zycie284-nr_transporte,
/pws/zycie284-nr_liberacao .
ENDIF.
SELECT * FROM /pws/zycit003
INTO TABLE it_zycit003
WHERE nrseq EQ /pws/zycie284-nrseq.
SELECT SINGLE * FROM /pws/zycit094
WHERE nrseq EQ /pws/zycie284-nrseq. "#EC CI_NOFIRST
SELECT SINGLE * FROM /pws/zycit093
WHERE nrseqce EQ /pws/zycit094-nrseqce.
MOVE: /pws/zycit093-dtemiss TO /pws/zycie284-dtemiss ,
/pws/zycit093-dtprcheg TO /pws/zycie284-dtprcheg.
MOVE: /pws/zycit093 TO /pws/zycie093.
SELECT SINGLE * FROM /pws/zycit042
WHERE nrseq EQ /pws/zycie284-nrseq. "#EC CI_NOFIRST
SELECT SINGLE * FROM /pws/zycit041
WHERE nrseq EQ /pws/zycit042-nrseqnf. "#EC CI_NOFIRST
MOVE: /pws/zycit041-dt_mr1m TO /pws/zycie284-dtcheg .
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI030'
' '.
CALL SCREEN '0100'.
ENDFORM.
FORM grava_tabelas.
UPDATE /pws/zycit001 SET
dtprevretmerc = /pws/zycie001-dtprevretmerc
dtprevemb = /pws/zycie001-dtprevemb
dtprevlibcarreg = /pws/zycie001-dtprevlibcarreg
dt_prev_entr = /pws/zycie001-dt_prev_entr
dt_retmerc = /pws/zycie001-dt_retmerc
dtlibcarreg = /pws/zycie001-dtlibcarreg
WHERE nrseq EQ /pws/zycie001-nrseq.
UPDATE /pws/zycit284 SET flag_lead_time =
/pws/zycie284-flag_lead_time
WHERE paorigem EQ /pws/zycit001-paorigem
AND paispao EQ /pws/zycit001-paispao
AND padest EQ /pws/zycit001-padest
AND paispa EQ /pws/zycit001-paispa.
ENDFORM.
form fill_data_ME22B.
it_zycie033-mandt = sy-mandt.
it_zycie033-tabela = '/PWS/ZYCIT284'.
it_zycie033-cpochv = /pws/zycie284-nrseq.
it_zycie033-tcode = 'ME22'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY zexit = 'CDT001' BINARY SEARCH.
IF sy-subrc EQ 0.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
IF e_subrc EQ '8'.
EXIT .
ENDIF.
IF e_subrc EQ '0'.
CLEAR it_zycit032.
FREE it_zycit032.
CALL FUNCTION '/PWS/ZYCI_TRANSACAO_ME22B'
EXPORTING
v_nrseq = /pws/zycie284-nrseq
v_dtlib = /pws/zycie284-dtlib
v_modo = v_modo_bi
TABLES
t_zycit032 = it_zycit032
t_dados = it_zycie033
EXCEPTIONS
OTHERS = 0.
IF sy-subrc EQ 0 OR e_subrc = '4'.
READ TABLE it_zycit032 WITH KEY tcode = 'ME22'
tabela = '/PWS/ZYCIT284'
cpochv = /pws/zycie284-nrseq
tpmsg = 'S'.
IF sy-subrc EQ 0.
UPDATE /pws/zycit093 SET dtemiss = /pws/zycie284-dtemiss
dtprcheg = /pws/zycie284-dtprcheg
dtcheg = /pws/zycie093-dtcheg
WHERE nrseqce EQ /pws/zycit093-nrseqce.
MESSAGE s015 WITH text-002.
ELSE.
LOOP AT it_zycit032.
MESSAGE i015 WITH it_zycit032-msg+0(50)
it_zycit032-msg+50(50).
ENDLOOP.
ENDIF.
ENDIF.
ELSE.
LOOP AT it_zycit032.
MESSAGE i015 WITH it_zycit032-msg+0(50)
it_zycit032-msg+50(50).
ENDLOOP.
ENDIF.
endform.
form calc_data.
/pws/zycie284-dtprcheg = /pws/zycie284-dtemiss +
/pws/zycie284-nr_transporte.
IF NOT /pws/zycie284-dtcheg IS INITIAL.
/pws/zycie284-dtlib = /pws/zycie284-dtcheg +
/pws/zycie284-nr_liberacao.
ELSEIF NOT /pws/zycie284-DTPRCHEG IS INITIAL.
/pws/zycie284-dtlib = /pws/zycie284-DTPRCHEG +
/pws/zycie284-nr_liberacao.
ENDIF.
endform.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI030I01
MODULE user_command_0001 INPUT.
* >> Início da exclusão: MODULE USER_COMMAND_0001
WRITE /pws/zycie284-nrseq TO /pws/zycie284-nrseq RIGHT-JUSTIFIED.
OVERLAY /pws/zycie284-nrseq WITH '0000000000'.
* << Fim da exclusão
CASE okcode.
WHEN 'ENTE'.
* >> Início da exclusão: MODULE USER_COMMAND_0001
SELECT SINGLE * FROM /pws/zycit001
WHERE nrseq EQ /pws/zycie284-nrseq.
IF sy-subrc NE 0.
MESSAGE w015 WITH text-001.
EXIT.
ELSE.
DATA: BEGIN OF itab_zycbt007 OCCURS 0.
INCLUDE STRUCTURE /pws/zycbt007.
DATA: END OF itab_zycbt007.
SELECT * FROM /pws/zycbt007
INTO TABLE itab_zycbt007
WHERE bukrs EQ /pws/zycit001-bukrs.
LOOP AT itab_zycbt007.
AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD
itab_zycbt007-bukrs
ID 'ACTVT' FIELD '01'.
IF sy-subrc NE 0.
MESSAGE e083(f5) WITH itab_zycbt007-bukrs.
ENDIF.
ENDLOOP.
ENDIF.
MOVE: /pws/zycit001-embarca TO /pws/zycie284-embarca ,
/pws/zycit001-nrseq TO /pws/zycie284-nrseq ,
/pws/zycit001-bukrs TO /pws/zycie284-bukrs ,
/pws/zycit001-j_1bbranch TO /pws/zycie284-j_1bbranch,
/pws/zycit001-dtinicio TO /pws/zycie284-dtinicio .
SELECT SINGLE nr_transporte nr_liberacao
FROM /pws/zycit284
INTO (/pws/zycie284-nr_transporte,
/pws/zycie284-nr_liberacao)
WHERE paorigem EQ /pws/zycit001-paorigem
AND paispao EQ /pws/zycit001-paispao
AND padest EQ /pws/zycit001-padest
AND paispa EQ /pws/zycit001-paispa.
IF sy-subrc NE 0.
CLEAR: /pws/zycie284-nr_transporte,
/pws/zycie284-nr_liberacao .
ENDIF.
SELECT * FROM /pws/zycit003
INTO TABLE it_zycit003
WHERE nrseq EQ /pws/zycie284-nrseq.
SELECT SINGLE * FROM /pws/zycit094
WHERE nrseq EQ /pws/zycie284-nrseq."#EC CI_NOFIRST
SELECT SINGLE * FROM /pws/zycit093
WHERE nrseqce EQ /pws/zycit094-nrseqce.
MOVE: /pws/zycit093-dtemiss TO /pws/zycie284-dtemiss ,
/pws/zycit093-dtprcheg TO /pws/zycie284-dtprcheg,
/pws/zycit093-dtcheg TO /pws/zycie284-dtcheg .
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI030'
' '.
CALL SCREEN '0100'.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_0001
PERFORM seleciona_embarque.
* << Fim da inclusão
WHEN 'BACK' OR 'LEAVE'.
LEAVE PROGRAM.
ENDCASE.
CLEAR okcode.
ENDMODULE.
MODULE user_command_0100 INPUT.
e_subrc = '0'.
CASE okcode.
WHEN 'CALC_DATA'.
* >> Início da exclusão: MODULE USER_COMMAND_0100
/pws/zycie284-dtprcheg = /pws/zycie284-dtemiss +
/pws/zycie284-nr_transporte.
IF /pws/zycie284-dtcheg IS INITIAL.
/pws/zycie284-dtcheg = /pws/zycie284-dtprcheg.
ENDIF.
/pws/zycie284-dtlib = /pws/zycie284-dtcheg +
/pws/zycie284-nr_liberacao.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_0100
PERFORM calc_data.
* << Fim da inclusão
WHEN 'ATUALIZA'.
IF /pws/zycie284-dtlib IS INITIAL.
MESSAGE s015 WITH text-003.
EXIT.
* >> Início da exclusão: MODULE USER_COMMAND_0100
ENDIF.
it_zycie033-mandt = sy-mandt.
it_zycie033-tabela = '/PWS/ZYCIT284'.
it_zycie033-cpochv = /pws/zycie284-nrseq.
it_zycie033-tcode = 'ME22'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY zexit = 'CDT001' BINARY SEARCH.
IF sy-subrc EQ 0.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
IF e_subrc EQ '8'.
EXIT .
ENDIF.
IF e_subrc EQ '0'.
CLEAR it_zycit032.
FREE it_zycit032.
CALL FUNCTION '/PWS/ZYCI_TRANSACAO_ME22B'
EXPORTING
v_nrseq = /pws/zycie284-nrseq
v_dtlib = /pws/zycie284-dtlib
v_modo = v_modo_bi
TABLES
t_zycit032 = it_zycit032
t_dados = it_zycie033
EXCEPTIONS
OTHERS = 0.
IF sy-subrc EQ 0 OR e_subrc = '4'.
READ TABLE it_zycit032 WITH KEY tcode = 'ME22'
tabela = '/PWS/ZYCIT284'
cpochv = /pws/zycie284-nrseq
tpmsg = 'S'.
IF sy-subrc EQ 0.
UPDATE /pws/zycit093 SET dtemiss = /pws/zycie284-dtemiss
dtprcheg = /pws/zycie284-dtprcheg
dtcheg = /pws/zycie284-dtcheg
WHERE nrseqce EQ /pws/zycit093-nrseqce.
MESSAGE s015 WITH text-002.
ELSE.
LOOP AT it_zycit032.
MESSAGE i015 WITH it_zycit032-msg+0(50)
it_zycit032-msg+50(50).
ENDLOOP.
ENDIF.
ENDIF.
ELSE.
LOOP AT it_zycit032.
MESSAGE i015 WITH it_zycit032-msg+0(50)
it_zycit032-msg+50(50).
ENDLOOP.
* << Fim da exclusão
ENDIF.
* >> Início da inclusão: MODULE USER_COMMAND_0100
PERFORM grava_tabelas.
PERFORM fill_data_ME22B.
* << Fim da inclusão
WHEN 'MODO'.
PERFORM modo_batch_input.
WHEN 'BACK'.
LEAVE TO SCREEN '0001'.
ENDCASE.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI030O01
* >> Início da inclusão: MODULE DIA_SEMANA
MODULE status_0100 OUTPUT.
DATA: v_tcode LIKE sy-tcode.
AUTHORITY-CHECK OBJECT 'S_TCODE'
ID 'TCD'
FIELD sy-tcode.
IF sy-subrc NE 0.
MESSAGE e015 WITH text-007 text-008.
ENDIF.
IF sy-dynnr EQ '0100'.
SET PF-STATUS '0100'.
SET TITLEBAR '0100'.
ELSEIF sy-dynnr EQ '0001'.
SET PF-STATUS '0001'.
SET TITLEBAR '0001'.
ENDIF.
IMPORT v_tcode FROM MEMORY ID 'V_TCODE'.
REFRESH: it_code.
if v_tcode EQ '/PWS/ZYCI001_E'.
it_code-fcode = 'CALC_DATA'. APPEND it_code.
it_code-fcode = 'ATUALIZA'. APPEND it_code.
endif.
ENDMODULE.
* << Fim da inclusão
module dia_semana output.
perform dia_semana using /PWS/ZYCIE284-DTINICIO
changing v_dia_emb.
perform dia_semana using /PWS/ZYCIE284-DTEMISS
changing v_dia_bl.
perform dia_semana using /PWS/ZYCIE284-DTPRCHEG
changing v_dia_cheg.
perform dia_semana using /PWS/ZYCIE284-DTCHEG
changing v_dia_real.
perform dia_semana using /PWS/ZYCIE284-DTLIB
changing v_dia_lib.
* >> Início da inclusão: MODULE DIA_SEMANA
PERFORM dia_semana USING /pws/zycie001-dtprevretmerc
CHANGING v_dia_prev_retmerc.
PERFORM dia_semana USING /pws/zycie001-dtprevlibcarreg
CHANGING v_dia_prevlibcarreg.
PERFORM dia_semana USING /pws/zycie001-dtprevemb
CHANGING v_dia_prevemb.
PERFORM dia_semana USING /pws/zycie001-dt_prev_entr
CHANGING v_dia_prev_entr.
PERFORM dia_semana USING /pws/zycie001-dt_retmerc
CHANGING v_dia_retmerc.
PERFORM dia_semana USING /pws/zycie001-dtlibcarreg
CHANGING v_dia_libcarreg.
PERFORM dia_semana USING /pws/zycie093-dtcheg
CHANGING v_dia_dtcheg_e.
* << Fim da inclusão
endmodule.
module STATUS_0001 output.
* >> Início da exclusão: MODULE STATUS_0001
SET PF-STATUS '0001'.
SET TITLEBAR '0001'.
endmodule.
module STATUS_0100 output.
SET PF-STATUS '0100'.
SET TITLEBAR '0100'.
endmodule.
module status output.
* << Fim da exclusão
AUTHORITY-CHECK OBJECT 'S_TCODE'
ID 'TCD'
FIELD SY-TCODE.
IF SY-SUBRC ne 0.
MESSAGE e015 WITH text-007 text-008.
ENDIF.
if sy-dynnr eq '0100'.
SET PF-STATUS '0100'.
SET TITLEBAR '0100'.
elseif sy-dynnr eq '0001'.
SET PF-STATUS '0001'.
SET TITLEBAR '0001'.
* >> Início da inclusão: MODULE STATUS
ENDIF.
ENDMODULE.
module SET_SCREEN output.
if v_tcode EQ '/PWS/ZYCI001_E'.
LOOP AT SCREEN.
screen-input = '0'.
MODIFY SCREEN.
ENDLOOP.
SET PF-STATUS '0100' EXCLUDING it_code.
* << Fim da inclusão
endif.
* >> Início da exclusão: MODULE STATUS
endmodule.
* << Fim da exclusão
* >> Início da inclusão:
endmodule.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI030TOP
* >> Início da exclusão:
PROGRAM /PWS/SAPMZYCI030 message-id /pws/zycim.
INCLUDE: /pws/mzyci030x01.
* << Fim da exclusão
* >> Início da inclusão:
PROGRAM /pws/sapmzyci031 MESSAGE-ID /pws/zycim.
TABLES: /pws/zycit001,
/pws/zycit003,
/pws/zycbt039,
/pws/zycit093,
/pws/zycit094,
/pws/zycit284,
/pws/zycie284,
/pws/zycie001,
/pws/zycie093,
/pws/zycit041,
/pws/zycit042,
/pws/zycit043,
/pws/zycit044.
DATA: BEGIN OF it_zycit003 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit003.
DATA: END OF it_zycit003.
DATA: BEGIN OF it_zycit032 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit032.
DATA: END OF it_zycit032.
DATA: BEGIN OF it_zycie033 OCCURS 0.
INCLUDE STRUCTURE /pws/zycbe033.
DATA: END OF it_zycie033.
DATA: BEGIN OF itab_modo OCCURS 0.
INCLUDE STRUCTURE spopli.
DATA: END OF itab_modo.
DATA: BEGIN OF it_zycit042 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit042.
DATA: END OF it_zycit042.
DATA: BEGIN OF it_code OCCURS 10,
fcode LIKE rsmpe-func,
END OF it_code.
DATA: okcode LIKE sy-ucomm ,
v_dia_emb(18) TYPE c,
v_dia_bl(18) TYPE c,
v_dia_cheg(18) TYPE c,
v_dia_real(18) TYPE c,
v_dia_lib(18) TYPE c,
v_dia_prev_retmerc(18) TYPE c,
v_dia_prevemb(18) TYPE c,
v_dia_prev_entr(18) TYPE c,
v_dia_prev_dt_retmerc(18) TYPE c,
v_dia_prev_dtlibcarreg(18) TYPE c,
v_dia_prevlibcarreg(18) TYPE c,
v_dia_retmerc(18) TYPE c,
v_dia_libcarreg(18) TYPE c,
v_dia_dtcheg_e(18) TYPE c,
v_modo_bi ,
e_subrc VALUE '0' ,
rimc7 LIKE indx-srtfd VALUE 'NRSEQ'.
DATA: wa_zycit001 LIKE /pws/zycit001.
* << Fim da inclusão
DATA: BEGIN OF itab_zyglt100 OCCURS 10.
INCLUDE STRUCTURE /pws/zyglt100.
DATA: END OF itab_zyglt100.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCIT284 e /PWS/ZYCIE284
*Inclusão do Campo FLAG_LEAD_TIME
* /PWS/ZYCIT284
Campo Ch Inic. Tipo de Campo Categoria de DA Compr. Casas Dec. Descrição Breve
FLAG_LEAD_TIME CHAR1 CHAR 1 0 Código de uma
posição
* /PWS/ZYCIE284
Componente TipoComponente CtDd Compr. Casas Dec. Descrição Breve
FLAG_LEAD_TIME CHAR1 CHAR 1 0 Código de uma posição