Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Valores Mantidos no Exterior
Data/Hora da Publicação: 11/08/2008 00:00:00
Data/Hora Última Alteração: 11/03/2010 10:05:25
Descrição da Nota: BOTÕES "VINCULAR TOTAL" E "SELECIONAR FATURAS" - VME
Sintoma
Desenvolvimento Adicional
Solução
Desenvolvimento Adicional
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 07117 Data: 11/08/2008 Hora: 14:03:30
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 07117
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00006
Agrupamento : 00060
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
BOTÕES "VINCULAR TOTAL" E "SELECIONAR FATURAS" - VME
----------------------------------------------------------------------------------------------------
Palavras Chave:
INCLUIR BOTÕES "VINCULAR TOTAL" E "SELECIONAR FATURAS" NAS TELA DE
VALORES MANTIDOS NO EXTERIOR
----------------------------------------------------------------------------------------------------
Objetos da nota:
CUAD /PWS/SAPMZYCB034
DYNP /PWS/SAPMZYCB034 0100
DYNP /PWS/SAPMZYCB034 0110
DYNP /PWS/SAPMZYCB034 0150
DYNP /PWS/SAPMZYCB034 0201
DYNP /PWS/SAPMZYCB034 0300
DYNP /PWS/SAPMZYCB034 0301
MERG F6DK963885 20080808 173428 PWSCB
RELE F6DK963888 20080808 173436 PWSCB
REPS /PWS/MZYCB034F01
REPS /PWS/MZYCB034I01
REPS /PWS/MZYCB034O01
REPS /PWS/MZYCB034TOP
REPS /PWS/MZYCB034X01
REPT /PWS/SAPMZYCB034
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCB034 0100
solicitar arquivo para upload da tela a equipe de produto - pw.CE - câmbio - 11 5504 0170
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCB034 0150
solicitar arquivo para upload da tela a equipe de produto - pw.CE - câmbio - 11 5504 0170
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCB034 0201
solicitar arquivo para upload da tela a equipe de produto - pw.CE - câmbio - 11 5504 0170
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCB034 0300
solicitar arquivo para upload da tela a equipe de produto - pw.CE - câmbio - 11 5504 0170
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCB034 0301
solicitar arquivo para upload da tela a equipe de produto - pw.CE - câmbio - 11 5504 0170
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCB034 0110
solicitar arquivo para upload da tela a equipe de produto - pw.CE - câmbio - 11 5504 0170
MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0110
...
PROCESS AFTER INPUT.
MODULE:
drilldown.
LOOP WITH CONTROL tc_op.
FIELD /pws/zycbe226-nrinvoic MODULE verifica_processo.
MODULE: verifica_vlr_exterior,
verifica_dt_limite,
verifica_periodo_contabil,
atualiza_tc_op.
ENDLOOP.
* >> Início da inclusão:
module preenche_table_control.
* << Fim da inclusão
MODULE: user_command,
user_command_exit AT EXIT-COMMAND.
PROCESS ON VALUE-REQUEST.
FIELD /pws/zycbe226-nrinvoic MODULE get_invoice.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB034F01
...
SET PF-STATUS '0001' EXCLUDING 'SPOS'.
SET TITLEBAR '0100' WITH '- '(020) 'Criar'(015).
WHEN '0100'.
CASE sy-tcode.
WHEN c_transacao_c.
preenche_itab_status_exc 'AEND'.
preenche_itab_status_exc 'ESTORNO'.
preenche_itab_status_exc 'NOOP'.
preenche_itab_status_exc 'MOVE_DATA'.
preenche_itab_status_exc 'SEL_DEVOL'.
* >> Início da inclusão: FORM STATUS_GUI
IF opt_origem_embarque IS INITIAL.
preenche_itab_status_exc 'SELE'.
ENDIF.
* << Fim da inclusão
WHEN c_transacao_a.
verifica_devolucao.
preenche_itab_status_exc 'AEND'.
* >> Início da inclusão: FORM STATUS_GUI
IF sy-ucomm EQ 'MOVE_DATA' or
sy-ucomm EQ 'P-' or
sy-ucomm EQ 'P+' .
ELSE.
* << Fim da inclusão
preenche_itab_status_exc 'RECEB_TOT'.
* >> Início da inclusão: FORM STATUS_GUI
ENDIF.
preenche_itab_status_exc 'SELE'.
* << Fim da inclusão
WHEN c_transacao_e.
verifica_devolucao.
preenche_itab_status_exc 'RECEB_TOT'.
preenche_itab_status_exc 'MOVE_DATA'.
preenche_itab_status_exc 'ESTORNO'.
preenche_itab_status_exc 'NOOP'.
preenche_itab_status_exc 'MARK'.
preenche_itab_status_exc 'UNMARK'.
preenche_itab_status_exc 'DEL_LINE'.
preenche_itab_status_exc 'SAVE'.
* >> Início da inclusão: FORM STATUS_GUI
preenche_itab_status_exc 'SELE'.
* << Fim da inclusão
ENDCASE.
SET PF-STATUS '0100' EXCLUDING itab_status_exc.
define_titulo.
WHEN '0200'.
CASE sy-tcode.
WHEN c_transacao_e.
preenche_itab_status_exc 'NOVO'.
preenche_itab_status_exc 'SALVAR'.
preenche_itab_status_exc 'ELIMINAR'.
preenche_itab_status_exc 'ESTORNAR'.
...
...
SET PARAMETER ID 'BUK' FIELD v_bukrs.
SET PARAMETER ID 'GJR' FIELD v_gjahr.
CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
ENDIF.
ELSE.
MESSAGE e261(sf) WITH 'FB03'.
ENDIF.
ENDCASE.
ENDFORM.
FORM user_command_0100.
* >> Início da inclusão: FORM USER_COMMAND_0100
DATA: wa_zycbt226 TYPE t_s_zycbe226.
* << Fim da inclusão
CASE ok_code.
WHEN 'SAVE'.
* >> Início da inclusão: FORM USER_COMMAND_0100
LOOP AT itab_zycbt226 INTO wa_zycbt226.
if sy-tcode ne c_transacao_a.
IF wa_zycbt226-vlr_exterior IS INITIAL.
MESSAGE e015 WITH 'Informe'(m49) 'o Valor Ret.no Exterior'(m50).
ENDIF.
endif.
ENDLOOP.
* << Fim da inclusão
PERFORM salva_previsto.
PERFORM salva_rendimentos.
PERFORM processamento.
WHEN 'PB_HELP'.
v_tela_help = '0051'.
EXIT.
WHEN 'HELP_CLOSE'.
v_tela_help = '0052'.
EXIT.
WHEN 'AEND'.
...
...
ts_principal-activetab = wa_controle-ts_atual.
ELSE.
ts_principal-activetab = ok_code.
ENDIF.
WHEN 'TAB100_00'.
IF itab_disp_00[] IS INITIAL.
ts_principal-activetab = wa_controle-ts_atual.
ELSE.
ts_principal-activetab = ok_code.
ENDIF.
* >> Início da inclusão: FORM USER_COMMAND_0100
WHEN 'SELE'.
SET SCREEN '0201'.
LEAVE TO SCREEN '0201'.
* << Fim da inclusão
WHEN OTHERS.
IF ok_code(6) EQ 'TAB100'.
ts_principal-activetab = ok_code.
ELSEIF ok_code(6) EQ 'TAB130'.
ts_70-activetab = ok_code.
ENDIF.
ENDCASE.
ENDFORM.
FORM seleciona_parametros.
IF wa_controle-parametros_carregados IS INITIAL.
...
...
<fs_cols>-invisible = '0'.
ENDIF.
ELSEIF ( opt_origem_embarque = 'X' AND
opt_origem_pagantec = 'X' ) OR
( opt_origem_embarque IS INITIAL AND
opt_origem_pagantec IS INITIAL ).
<fs_cols>-invisible = '0'.
ENDIF.
IF <fs_cols>-screen-name EQ '/PWS/ZYCBE226-TIPO_OP'.
<fs_cols>-invisible = '1'.
* >> Início da inclusão: FORM TRATA_TELA_0100
ENDIF.
IF <fs_cols>-screen-name EQ '/PWS/ZYCBE226-VLR_EXTERIOR '.
IF v_select IS INITIAL.
IF sy-tcode = c_transacao_a.
<fs_cols>-screen-input = 0.
ELSE.
<fs_cols>-screen-required = '0'.
ENDIF .
ELSE.
<fs_cols>-screen-required = '0'.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM TRATA_TELA_0100
ENDIF.
* << Fim da inclusão
ENDLOOP.
ENDFORM.
FORM trata_tela_0120.
DATA: v_linhas TYPE sy-tabix.
FIELD-SYMBOLS: <fs_cols> TYPE cxtab_column.
DESCRIBE TABLE itab_disp_30 LINES v_linhas.
...
...
p_top_line = p_linhas.
ENDCASE.
ENDFORM.
FORM preenche_tc_op.
FIELD-SYMBOLS: <fs_zycbt226> TYPE t_s_zycbe226,
<fs_zycbt209> TYPE t_s_zycbt209.
DATA: wa_zycbt017 TYPE t_s_zycbt017,
wa_kna1 TYPE t_s_kna1,
wa_lfa1 TYPE t_s_lfa1,
v_banco TYPE lfa1-lifnr.
* >> Início da inclusão: FORM PREENCHE_TC_OP
DATA: v_line(02) TYPE n.
* << Fim da inclusão
FIELD-SYMBOLS: <fs_zycbt030> TYPE t_s_zycbt030.
READ TABLE itab_zycbt226 INDEX tc_op-current_line
ASSIGNING <fs_zycbt226>.
IF sy-subrc = 0.
IF wa_controle-autorizacao_emp IS INITIAL.
PERFORM message_store USING
'/PWS/ZYCBM'
'W'
'Registro não será exibido por falta de autorização.'(m02)
space
...
...
nrparcf = /pws/zycbe226-nrparcf AND
gsberf = /pws/zycbe226-gsberf.
/pws/zycbe226-sld_transferir = /pws/zycbe226-sld_transferir +
<fs_zycbt209>-saldo.
ENDLOOP.
IF sy-tcode = c_transacao_c AND
<fs_zycbt226>-status = 'C'.
PERFORM bloqueia_celula.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM PREENCHE_TC_OP
v_check = ' ' .
* << Fim da inclusão
ENDFORM.
FORM atualiza_tc_op.
DATA: wa_lfa1 TYPE t_s_lfa1,
* >> Início da inclusão: FORM ATUALIZA_TC_OP
wa_kna1 TYPE t_s_kna1,
* << Fim da inclusão
wa_zycbt226 TYPE t_s_zycbe226,
wa_zycbt017 TYPE t_s_zycbt017,
v_banco TYPE lfa1-lifnr.
READ TABLE itab_zycbt226 INTO wa_zycbt226 INDEX tc_op-current_line.
...
...
TRANSLATE v_banco USING ' 0'.
READ TABLE itab_lfa1 WITH KEY lifnr = v_banco
INTO wa_lfa1.
IF sy-subrc = 0.
/pws/zycbe226-descr_bcoreceb = wa_lfa1-name1.
ELSE.
CLEAR /pws/zycbe226-descr_bcoreceb.
ENDIF.
/pws/zycbe226-belnr_op2 = wa_zycbt226-belnr_op2.
IF wa_zycbt226-drilldown EQ 'X'.
* >> Início da inclusão: FORM ATUALIZA_TC_OP
if not wa_zycbt226-vlr_exterior is initial.
* << Fim da inclusão
MOVE wa_zycbt226-vlr_exterior TO /pws/zycbe226-vlr_exterior.
* >> Início da inclusão: FORM ATUALIZA_TC_OP
CLEAR wa_zycbt226-drilldown.
elseif not /pws/zycbe226-vlr_exterior is initial.
MOVE /pws/zycbe226-vlr_exterior TO /pws/zycbe226-vlr_exterior.
* << Fim da inclusão
CLEAR wa_zycbt226-drilldown.
ENDIF.
* >> Início da inclusão: FORM ATUALIZA_TC_OP
ENDIF.
* << Fim da inclusão
IF sy-tcode EQ c_transacao_c.
/pws/zycbe226-sld_exterior = /pws/zycbe226-vlr_exterior.
ENDIF.
IF sy-tcode EQ c_transacao_c AND
opt_origem_pagantec EQ 'X'.
/pws/zycbe226-vlavinc = /pws/zycbe226-vlr_exterior.
/pws/zycbe226-sld_transferir = /pws/zycbe226-sld_exterior.
/pws/zycbe226-sld_associar = /pws/zycbe226-vlr_exterior.
IF /pws/zycbe226-tipo_op NE 'P'.
/pws/zycbe226-tipo_op = 'P'.
...
...
MOVE-CORRESPONDING /pws/zycbe226 TO wa_zycbt226.
IF NOT wa_zycbt226-belnr_op2 IS INITIAL.
MOVE wa_zycbt226-belnr_op2 TO /pws/zycbe226-belnr_op.
ENDIF.
wa_zycbt226-mark = v_mark.
MODIFY itab_zycbt226 FROM wa_zycbt226 INDEX tc_op-current_line.
IF sy-subrc NE 0.
APPEND wa_zycbt226 TO itab_zycbt226.
ENDIF.
wa_controle-tc_linhas = sy-loopc.
* >> Início da inclusão: FORM ATUALIZA_TC_OP
v_check = ' ' .
* << Fim da inclusão
ENDFORM.
FORM marcar_estorno
USING value(p_valor)
* >> Início da exclusão: FORM MARCAR_ESTORNO
CHANGING p_itab TYPE INDEX TABLE.
* << Fim da exclusão
* >> Início da inclusão: FORM MARCAR_ESTORNO
CHANGING p_itab TYPE INDEX TABLE .
* << Fim da inclusão
FIELD-SYMBOLS:
...
...
itab_zycit054,
itab_zyglt316,
itab_zyglt376,
itab_zyglt368,
itab_bkpf,
itab_disp_ant,
itab_disp_30,
itab_disp_70,
itab_rendimentos,
itab_contrato,
* >> Início da inclusão: FORM LIMPA_ITABS
itab_disp_00,
* << Fim da inclusão
itab_zycbt007,
itab_zycbt089,
itab_zyglt009,
itab_kna1,
itab_lfa1,
itab_zyglt321,
itab_zycbt009,
itab_zycbt011,
itab_zyglt100.
ENDFORM.
...
...
EXPORTING
i_bloqueia = ' '
TABLES
itab_zycbt224 = itab_zycbe224
EXCEPTIONS
zycbe224_null = 1
erro_bloqueio = 2
OTHERS = 3.
IF sy-subrc <> 0.
EXIT.
* >> Início da inclusão: FORM ESTORNO
ENDIF.
IF p_processo = 'O'.
v_adm = 'X' .
SELECT SINGLE xopvw
FROM skb1
INTO skb1-xopvw
WHERE bukrs = wa_zycbe033-bukrs
AND saknr = wa_zycbe033-d_newko.
IF skb1-xopvw = 'X'.
PERFORM message_store
USING '/PWS/ZYCBM'
'I'
v_titulo
'-'
<fs_op>-nrseq
space
'061'.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM ESTORNO
ELSE.
* << Fim da inclusão
PERFORM message_store
USING '/PWS/ZYCBM'
'I'
v_titulo
'-'
<fs_op>-nrseq
space
'061'.
* >> Início da inclusão: FORM ESTORNO
ENDIF.
IF p_processo = 'O'.
IF skb1-xopvw = 'X'.
CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_30_S'
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt032 = itab_zycbt032
t_zycbt036 = itab_zycbt036
EXCEPTIONS
campo_em_branco = 1
periodo_fechado = 2
OTHERS = 3.
ENDIF.
ELSE.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_30_S'
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt032 = itab_zycbt032
t_zycbt036 = itab_zycbt036
EXCEPTIONS
campo_em_branco = 1
periodo_fechado = 2
OTHERS = 3.
* >> Início da inclusão: FORM ESTORNO
ENDIF.
* << Fim da inclusão
IF sy-subrc = 0.
READ TABLE itab_zycbt032 WITH KEY
tcode = 'F-30'
tabela = '/PWS/ZYCBT226'
cpochv = wa_zycbe033-cpochv
tpmsg = 'S'
INTO wa_zycbt032.
* >> Início da exclusão: FORM ESTORNO
IF sy-subrc EQ 0.
* << Fim da exclusão
* >> Início da inclusão: FORM ESTORNO
IF sy-subrc EQ 0 OR
v_adm EQ 'X'.
* << Fim da inclusão
wa_cont-belnr = wa_zycbt032-belnr.
wa_cont-dtlancto = wa_zycbe033-budat.
wa_cont-fb08 = 'X'.
wa_cont-fbra = 'X'.
CASE p_processo(1).
WHEN 'C'.
wa_cont-belnr_ant = <fs_op>-belnr_desm_cli.
wa_cont-tabela = 'ITAB_ZYCBT226'.
wa_cont-campo = 'BELNR_DESM_CLI'.
CLEAR <fs_op>-belnr_desm_cli.
...
...
p_destino TYPE /pws/zycbe238-destino.
DATA:
wa_disp LIKE LINE OF p_itab_disp.
/pws/zycbe238-destino = p_destino.
READ TABLE p_itab_disp INTO wa_disp INDEX p_tc-current_line.
MOVE-CORRESPONDING:
/pws/zycbe238 TO wa_disp.
MOVE:
v_mark TO wa_disp-mark,
/pws/zycbe226-waers TO wa_disp-waers,
* >> Início da exclusão: FORM ATUALIZA_TC_DISPONIBILIDADE
/pws/zycbe238-vldisp TO wa_disp-saldo.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZA_TC_DISPONIBILIDADE
/pws/zycbe238-vldisp TO wa_disp-saldo,
sy-datum TO wa_disp-dtdisp .
* << Fim da inclusão
MODIFY p_itab_disp FROM wa_disp INDEX p_tc-current_line.
ENDFORM.
FORM loop_at_screen_disp
USING p_itab_disp TYPE t_t_disponibilidade
p_tc TYPE cxtab_control
p_destino TYPE /pws/zycbe238-destino. "#EC *
DATA:
v_fecha_linha TYPE c.
READ TABLE itab_zycbt007 INTO wa_zycbt007
WITH KEY bukrs = /pws/zycbe226-bukrs.
...
...
IF wa_zycbt007-cont_disp EQ space.
IF screen-name EQ '/PWS/ZYCBE238-DTLANC'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDIF.
IF ( screen-name EQ '/PWS/ZYCBE238-VLDISP' OR
screen-name EQ '/PWS/ZYCBE238-DTLANC' OR
screen-name EQ '/PWS/ZYCBE238-DTDISP' ) AND
screen-input NE 0.
* >> Início da exclusão: FORM LOOP_AT_SCREEN_DISP
screen-required = 1.
* << Fim da exclusão
* >> Início da inclusão: FORM LOOP_AT_SCREEN_DISP
screen-required = 0.
* << Fim da inclusão
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM.
FORM loop_at_screen_contr
USING p_itab_contrato TYPE t_t_contrato
p_tc TYPE cxtab_control.
DATA:
...
...
USING 'X'
CHANGING itab_zycbt226.
WHEN 'NOOP'.
PERFORM marcar_estorno
USING ' '
CHANGING itab_zycbt226.
WHEN 'MOVE_DATA'.
PERFORM adicionar_disponibilidade.
WHEN 'SEL_DEVOL'.
PERFORM seleciona_devolucao.
* >> Início da inclusão: FORM USER_COMMAND_0110
WHEN 'TOTAL'.
PERFORM vincular_total.
WHEN OTHERS.
CLEAR v_check.
* << Fim da inclusão
ENDCASE.
ENDFORM.
FORM mover_dados
USING p_itab_origem TYPE t_t_zycbt226
p_destino TYPE /pws/zycbt238-destino
CHANGING p_itab_destino TYPE t_t_disponibilidade.
DATA:
v_codaux1 TYPE /pws/zygle316-codaux1,
v_codaux2 TYPE /pws/zygle316-codaux2,
v_codaux3 TYPE /pws/zygle316-codaux3,
...
...
PERFORM paginacao_tc USING v_linhas
CHANGING tc_00-top_line.
WHEN 'ESTORNO'.
PERFORM marcar_estorno
USING 'X'
CHANGING itab_disp_00.
WHEN 'NOOP'.
PERFORM marcar_estorno
USING ' '
CHANGING itab_disp_00.
* >> Início da inclusão: FORM USER_COMMAND_0150
WHEN 'RECEB_TOT'.
PERFORM vincular_total.
* << Fim da inclusão
ENDCASE.
ENDFORM.
FORM seleciona_devolucao.
DATA:
it_zycbt226_temp TYPE t_t_zycbt226,
wa_zycbt226 TYPE t_s_zycbe226.
FIELD-SYMBOLS:
<fs_devolucao> TYPE t_devolucao.
LOOP AT itab_zycbt226 INTO wa_zycbt226
WHERE mark = 'X'
...
...
USING p_devolucao-dtlancto
v_cpochv
CHANGING wa_zycbe033
p_devolucao-belnr.
IF itab_zycbt034[] IS INITIAL.
CLEAR:
p_devolucao-belnr,
p_devolucao-dtlancto.
ENDIF.
ENDFORM.
* >> Início da inclusão:
FORM vincular_total.
DATA: wa_zycbt226 TYPE t_s_zycbe226,
wa_disp LIKE LINE OF itab_disp_30.
CLEAR v_index.
LOOP AT itab_zycbt226 INTO wa_zycbt226.
v_index = v_index + 1.
IF sy-dynnr NE '0150' .
IF wa_zycbt226-vlr_exterior EQ 0.
MOVE wa_zycbt226-sld_transferir TO wa_zycbt226-vlr_exterior.
MODIFY itab_zycbt226 FROM wa_zycbt226 INDEX v_index.
ENDIF.
ENDIF.
IF sy-tcode = c_transacao_a.
IF sy-dynnr = '0150' .
loop at itab_disp_00 INTO wa_disp
where nrseq = wa_zycbt226-nrseq
and OPERACAO = 'N'.
if not wa_zycbt226-sld_exterior is initial.
MOVE wa_zycbt226-sld_exterior TO wa_disp-vldisp.
MODIFY itab_disp_00 FROM wa_disp INDEX sy-tabix.
endif .
endloop.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM.
FORM limpa_selecao.
/pws/zycbe017-nrinvoic = ''.
/pws/zycbe017-nrparcf = ''.
/pws/zycbe017-gsberf = ''.
/pws/zycbe017-dtbl = ''.
/pws/zycbe017-fkdat = ''.
/pws/zycbe017-kunag = ''.
/pws/zycbe017-dtvencto = ''.
/pws/zycbe017-inco1 = ''.
/pws/zycbe017-nrsd = ''.
/pws/zycbe017-nrre = ''.
/pws/zycbe017a-nrinvoic = ''.
/pws/zycbe017a-nrparcf = ''.
/pws/zycbe017a-gsberf = ''.
/pws/zycbe017a-dtbl = ''.
/pws/zycbe017a-fkdat = ''.
/pws/zycbe017a-kunag = ''.
/pws/zycbe017a-dtvencto = ''.
/pws/zycbe017a-inco1 = ''.
/pws/zycbe017a-nrsd = ''.
v_nrre_ate = ''.
ENDFORM.
form set_screen_0301.
SET PF-STATUS '0300'.
SET TITLEBAR '300'.
LOOP AT SCREEN.
screen-input = '0'.
screen-invisible = '1'.
MODIFY SCREEN.
IF screen-name+15(9) NE 'OPTI_PUSH'.
IF v_nrinvoic = 'X' AND screen-group1 = 'FAT'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_gsberf = 'X' AND screen-group1 = 'DIV'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_dtbl = 'X' AND screen-group1 = 'DBL'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_fkdat = 'X' AND screen-group1 = 'DFT'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_kunag = 'X' AND screen-group1 = 'CLI'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_dtvencto = 'X' AND screen-group1 = 'DV'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_inco1 = 'X' AND screen-group1 = 'INC'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_re = 'X' AND screen-group1 = 'NRE'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_sd = 'X' AND screen-group1 = 'NRS'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
endform.
form selecionar_zycbt017.
DATA: v_nlin TYPE i VALUE IS INITIAL.
IF sy-ucomm EQ 'CRET'.
FREE: itab_zycbt017_aux, itab_nrinvoic, itab_gsberf , itab_fkdat,
itab_kunag , itab_dtvencto, itab_dtbl , itab_inco1,
itab_nrre , itab_nrsd, itab_zycbt226_aux .
SELECT *
INTO TABLE itab_zycbt017_aux
FROM /pws/zycbt017
WHERE nrinvoic IN nrin
AND gsberf IN gsbe
AND fkdat IN fkda
AND kunag IN kuna
AND dtvencto IN dtve
AND dtbl IN dtbl
AND inco1 IN inco
AND nrre IN nrre
AND nrsd IN nrsd
AND status EQ space.
DESCRIBE TABLE itab_zycbt017_aux LINES v_nlin.
LOOP AT itab_zycbt017_aux.
itab_zycbt017_aux-v_fsaldo = 'X'.
MODIFY itab_zycbt017_aux INDEX sy-tabix.
itab_zycbt226_aux-bukrs = itab_zycbt017_aux-bukrs .
itab_zycbt226_aux-nrinvoic = itab_zycbt017_aux-nrinvoic .
itab_zycbt226_aux-gsberf = itab_zycbt017_aux-gsberf .
itab_zycbt226_aux-kunag = itab_zycbt017_aux-kunag .
itab_zycbt226_aux-nrparcf = itab_zycbt017_aux-nrparcf .
itab_zycbt226_aux-vlavinc = itab_zycbt017_aux-vlavinc.
itab_zycbt226_aux-dtlancto = sy-datum.
itab_zycbt226_aux-dtcredext = sy-datum.
itab_zycbt226_aux-waers = itab_zycbt017_aux-waers.
SELECT * FROM /pws/zycbt030
UP TO 1 ROWS
WHERE nrinvoic = itab_zycbt017_aux-nrinvoic AND
nrparcf = itab_zycbt017_aux-nrparcf AND
gsberf = itab_zycbt017_aux-gsberf.
ENDSELECT.
IF sy-subrc = 0.
IF /pws/zycbt030-vlsltrans > 0 .
itab_zycbt226_aux-sld_transferir = /pws/zycbt030-vlsltrans.
APPEND itab_zycbt226_aux.
ELSE.
continue.
ENDIF.
ENDIF.
ENDLOOP.
if itab_zycbt226_aux[] is initial.
MESSAGE w015 WITH text-m47.
endif.
IF v_nlin IS INITIAL.
MESSAGE w015 WITH text-M48.
ELSE.
v_select = 'X'.
v_check = 'X'.
SET SCREEN '0100'.
LEAVE TO SCREEN '0100'.
ENDIF.
ENDIF.
endform.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB034I01
...
PERFORM user_command_0200.
ENDCASE.
ENDMODULE.
MODULE user_command_exit INPUT.
CASE sy-dynnr.
WHEN '0100'.
CASE sy-tcode.
WHEN c_transacao_a OR
c_transacao_e.
LEAVE TO SCREEN 0001.
* >> Início da inclusão: MODULE USER_COMMAND_EXIT
WHEN c_transacao_c.
if ok_code = 'BACK'.
IF NOT itab_zycbt226[] IS INITIAL.
LEAVE TO SCREEN 0.
else.
LEAVE TO SCREEN 0.
ENDIF.
ELSE.
LEAVE PROGRAM.
ENDIF.
* << Fim da inclusão
WHEN OTHERS.
LEAVE TO SCREEN 0.
ENDCASE.
WHEN '0002'.
* >> Início da inclusão: MODULE USER_COMMAND_EXIT
LEAVE PROGRAM.
WHEN '0200'.
* << Fim da inclusão
LEAVE TO SCREEN 0.
* >> Início da exclusão: MODULE USER_COMMAND_EXIT
WHEN '0200'.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_EXIT
WHEN '0201'.
CLEAR: v_nrinvoic,
v_re,
v_nrre_ate,
v_sd,
v_gsberf,
v_fkdat,
v_kunag,
v_dtvencto,
v_dtbl,
v_inco1.
IF ok_code = '%EX'.
SET SCREEN 0.
LEAVE TO SCREEN 0.
ENDIF.
IF ok_code = 'BACK'.
SET SCREEN 100.
ENDIF.
WHEN '0300'.
IF ok_code = '%EX'.
* << Fim da inclusão
LEAVE TO SCREEN 0.
* >> Início da inclusão: MODULE USER_COMMAND_EXIT
ELSE.
LEAVE TO SCREEN '0201'.
ENDIF.
* << Fim da inclusão
ENDCASE.
ENDMODULE.
MODULE verifica_processo INPUT.
PERFORM: verifica_autorizacao USING 'TCODE'.
...
...
READ TABLE itab_disp_ant
WITH KEY nrseq = wa_disp-nrseq
destino = wa_disp-destino
dtdisp = wa_disp-dtdisp
TRANSPORTING NO FIELDS.
IF sy-subrc NE 0.
v_sldext = v_sldext + wa_disp-vldisp.
ENDIF.
ENDLOOP.
v_sldext = v_sldext + /pws/zycbe238-vldisp.
* >> Início da exclusão: MODULE VERIFICA_CAMPOS
IF /pws/zycbe238-vldisp GT /pws/zycbe226-sld_exterior OR
v_sldext GT /pws/zycbe226-sld_exterior.
MESSAGE e061
WITH 'Valor maior que o saldo. Favor corrigir.'(033).
ENDIF.
* << Fim da exclusão
ENDCASE.
ENDMODULE.
MODULE verifica_data_disp INPUT.
DATA:
v_destino TYPE /pws/zycbe238-destino.
CASE sy-dynnr.
WHEN '0120'.
v_destino = c_30.
WHEN '0131'.
v_destino = c_70.
...
...
USING tc_70
CHANGING itab_disp_70.
WHEN '0150'.
PERFORM define_operacao_disp
USING tc_00
CHANGING itab_disp_00.
ENDCASE.
ENDMODULE.
module drilldown input.
DATA: v_campo(30) TYPE c,
* >> Início da exclusão: MODULE DRILLDOWN
v_value(10) TYPE c,"#EC NEEDED
v_index TYPE sy-tabix.
* << Fim da exclusão
* >> Início da inclusão: MODULE DRILLDOWN
v_value(10) TYPE c. "#EC NEEDED
* << Fim da inclusão
FIELD-SYMBOLS:
<fs_receb> LIKE LINE OF itab_zycbt226.
CASE ok_code.
WHEN '/CS'.
CHECK sy-tcode = c_transacao_c.
LOOP AT SCREEN.
IF SCREEN-name EQ '/PWS/ZYCBE226-VLR_EXTERIOR' OR
SCREEN-name EQ '/PWS/ZYCBE226-BCO_ME'.
SCREEN-required = 0.
MODIFY SCREEN.
...
...
MESSAGE e061 WITH 'Data Inválida, Favor redigitar.'(034).
ENDIF.
READ TABLE itab_devolucao INTO wa_devolucao
WITH KEY nrseqop = /pws/zycbe242-nrseqop
dtdevolucao = /pws/zycbe242-dtdevolucao.
IF sy-subrc EQ 0.
CHECK wa_devolucao-operacao NE c_novo.
MESSAGE e061 WITH 'Data Inválida, Favor redigitar.'(034).
ENDIF.
endmodule.
* >> Início da inclusão:
MODULE status_0201 OUTPUT.
SET PF-STATUS '0201'.
SET TITLEBAR '201'.
ENDMODULE.
MODULE limpa_campos OUTPUT.
IF ok_code <> 'MARK' AND ok_code <> 'DESM'.
v_nrinvoic = ' '.
v_gsberf = ' '.
v_fkdat = ' '.
v_kunag = ' '.
v_dtvencto = ' '.
v_dtbl = ' '.
v_inco1 = ' '.
v_re = ' '.
v_sd = ' '.
ENDIF.
ENDMODULE.
MODULE user_command_0201 INPUT.
CASE ok_code.
WHEN 'EXEC'.
IF v_inco1 = ' ' AND v_nrinvoic = ' ' AND v_gsberf = ' ' AND
v_kunag = ' ' AND v_dtvencto = ' ' AND v_fkdat = ' ' AND
v_dtbl = ' ' AND v_re = ' ' AND v_sd = ' '.
MESSAGE w015 WITH text-m46.
ELSE.
PERFORM limpa_selecao.
CALL SELECTION-SCREEN 0301.
ENDIF.
WHEN 'MARK'.
v_nrinvoic = 'X'.
v_gsberf = 'X'.
v_fkdat = 'X'.
v_kunag = 'X'.
v_dtvencto = 'X'.
v_dtbl = 'X'.
v_inco1 = 'X'.
v_re = 'X'.
v_sd = 'X'.
WHEN 'DESM'.
v_nrinvoic = ' '.
v_gsberf = ' '.
v_fkdat = ' '.
v_kunag = ' '.
v_dtvencto = ' '.
v_dtbl = ' '.
v_inco1 = ' '.
v_re = ' '.
v_sd = ' '.
ENDCASE.
IF OK_CODE = 'BACK'.
LEAVE TO SCREEN 0.
ENDIF.
ENDMODULE.
MODULE status_0300 OUTPUT.
SET PF-STATUS '0300'.
SET TITLEBAR '300'.
ENDMODULE.
MODULE set_screen_300 OUTPUT.
LOOP AT SCREEN.
screen-input = '0'.
screen-invisible = '1'.
MODIFY SCREEN.
IF v_nrinvoic = 'X' AND screen-group2 = 'FAT'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_gsberf = 'X' AND screen-group2 = 'DIV'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_dtbl = 'X' AND screen-group2 = 'DBL'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_fkdat = 'X' AND screen-group2 = 'DFT'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_kunag = 'X' AND screen-group2 = 'CLI'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_dtvencto = 'X' AND screen-group2 = 'DV'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_inco1 = 'X' AND screen-group2 = 'INC'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_re = 'X' AND screen-group2 = 'NRE'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF v_sd = 'X' AND screen-group2 = 'NSD'.
screen-invisible = '0'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDMODULE.
MODULE selecionar_zycbt017 INPUT.
DATA: v_nlin TYPE i VALUE IS INITIAL.
CLEAR: itab_zycbt226_aux.
REFRESH :itab_zycbt226_aux.
IF ok_code EQ 'EXEC'.
FREE: itab_nrinvoic,
itab_gsberf,
itab_fkdat,
itab_kunag,
itab_dtvencto,
itab_dtbl,
itab_inco1,
itab_nrre,
itab_nrsd.
IF NOT /pws/zycbe017-nrinvoic IS INITIAL AND
/pws/zycbe017a-nrinvoic IS INITIAL.
itab_nrinvoic-sign = 'I'.
itab_nrinvoic-option = 'EQ'.
itab_nrinvoic-low = /pws/zycbe017-nrinvoic.
itab_nrinvoic-high = /pws/zycbe017a-nrinvoic.
APPEND itab_nrinvoic.
ELSEIF /pws/zycbe017-nrinvoic IS INITIAL AND
NOT /pws/zycbe017a-nrinvoic IS INITIAL.
itab_nrinvoic-sign = 'I'.
itab_nrinvoic-option = 'BT'.
itab_nrinvoic-low = /pws/zycbe017-nrinvoic.
itab_nrinvoic-high = /pws/zycbe017a-nrinvoic.
APPEND itab_nrinvoic.
ELSEIF NOT /pws/zycbe017-nrinvoic IS INITIAL AND
NOT /pws/zycbe017a-nrinvoic IS INITIAL.
itab_nrinvoic-sign = 'I'.
itab_nrinvoic-option = 'BT'.
itab_nrinvoic-low = /pws/zycbe017-nrinvoic.
itab_nrinvoic-high = /pws/zycbe017a-nrinvoic.
APPEND itab_nrinvoic.
ENDIF.
IF NOT /pws/zycbe017-gsberf IS INITIAL AND
/pws/zycbe017a-gsberf IS INITIAL.
itab_gsberf-sign = 'I'.
itab_gsberf-option = 'EQ'.
itab_gsberf-low = /pws/zycbe017-gsberf.
itab_gsberf-high = /pws/zycbe017a-gsberf.
APPEND itab_gsberf.
ELSEIF /pws/zycbe017-gsberf IS INITIAL AND
NOT /pws/zycbe017a-gsberf IS INITIAL.
itab_gsberf-sign = 'I'.
itab_gsberf-option = 'BT'.
itab_gsberf-low = /pws/zycbe017-gsberf.
itab_gsberf-high = /pws/zycbe017a-gsberf.
APPEND itab_gsberf.
ELSEIF NOT /pws/zycbe017-gsberf IS INITIAL AND
NOT /pws/zycbe017a-gsberf IS INITIAL.
itab_gsberf-sign = 'I'.
itab_gsberf-option = 'BT'.
itab_gsberf-low = /pws/zycbe017-gsberf.
itab_gsberf-high = /pws/zycbe017a-gsberf.
APPEND itab_gsberf.
ENDIF.
IF NOT /pws/zycbe017-kunag IS INITIAL AND
/pws/zycbe017a-kunag IS INITIAL.
itab_kunag-sign = 'I'.
itab_kunag-option = 'EQ'.
itab_kunag-low = /pws/zycbe017-kunag.
itab_kunag-high = /pws/zycbe017a-kunag.
APPEND itab_kunag.
ELSEIF /pws/zycbe017-kunag IS INITIAL AND
NOT /pws/zycbe017a-kunag IS INITIAL.
itab_kunag-sign = 'I'.
itab_kunag-option = 'BT'.
itab_kunag-low = /pws/zycbe017-kunag.
itab_kunag-high = /pws/zycbe017a-kunag.
APPEND itab_kunag.
ELSEIF NOT /pws/zycbe017-kunag IS INITIAL AND
NOT /pws/zycbe017a-kunag IS INITIAL.
itab_kunag-sign = 'I'.
itab_kunag-option = 'BT'.
itab_kunag-low = /pws/zycbe017-kunag.
itab_kunag-high = /pws/zycbe017a-kunag.
APPEND itab_kunag.
ENDIF.
IF NOT /pws/zycbe017-inco1 IS INITIAL AND
/pws/zycbe017a-inco1 IS INITIAL.
itab_inco1-sign = 'I'.
itab_inco1-option = 'EQ'.
itab_inco1-low = /pws/zycbe017-inco1.
itab_inco1-high = /pws/zycbe017a-inco1.
APPEND itab_inco1.
ELSEIF /pws/zycbe017-inco1 IS INITIAL AND
NOT /pws/zycbe017a-inco1 IS INITIAL.
itab_inco1-sign = 'I'.
itab_inco1-option = 'BT'.
itab_inco1-low = /pws/zycbe017-inco1.
itab_inco1-high = /pws/zycbe017a-inco1.
APPEND itab_inco1.
ELSEIF NOT /pws/zycbe017-inco1 IS INITIAL AND
NOT /pws/zycbe017a-inco1 IS INITIAL.
itab_inco1-sign = 'I'.
itab_inco1-option = 'BT'.
itab_inco1-low = /pws/zycbe017-inco1.
itab_inco1-high = /pws/zycbe017a-inco1.
APPEND itab_inco1.
ENDIF.
IF ( ( /pws/zycbe017-fkdat NE '' ) AND
( /pws/zycbe017-fkdat NE '00000000' ) ) AND
( ( /pws/zycbe017a-fkdat EQ '' ) OR
( /pws/zycbe017a-fkdat EQ '00000000' ) ).
itab_fkdat-sign = 'I'.
itab_fkdat-option = 'EQ'.
itab_fkdat-low = /pws/zycbe017-fkdat.
itab_fkdat-high = /pws/zycbe017a-fkdat.
APPEND itab_fkdat.
ELSEIF ( ( /pws/zycbe017-fkdat EQ '' ) OR
( /pws/zycbe017-fkdat EQ '00000000' ) ) AND
( ( /pws/zycbe017a-fkdat NE '' ) AND
( /pws/zycbe017a-fkdat NE '00000000' ) ).
itab_fkdat-sign = 'I'.
itab_fkdat-option = 'BT'.
itab_fkdat-low = /pws/zycbe017-fkdat.
itab_fkdat-high = /pws/zycbe017a-fkdat.
APPEND itab_fkdat.
ELSEIF ( ( /pws/zycbe017-fkdat NE '' ) AND
( /pws/zycbe017-fkdat NE '00000000' ) ) AND
( ( /pws/zycbe017a-fkdat NE '' ) AND
( /pws/zycbe017a-fkdat NE '00000000' ) ).
itab_fkdat-sign = 'I'.
itab_fkdat-option = 'BT'.
itab_fkdat-low = /pws/zycbe017-fkdat.
itab_fkdat-high = /pws/zycbe017a-fkdat.
APPEND itab_fkdat.
ENDIF.
IF ( ( /pws/zycbe017-dtvencto NE '' ) AND
( /pws/zycbe017-dtvencto NE '00000000' ) ) AND
( ( /pws/zycbe017a-dtvencto EQ '' ) OR
( /pws/zycbe017a-dtvencto EQ '00000000' ) ).
itab_dtvencto-sign = 'I'.
itab_dtvencto-option = 'EQ'.
itab_dtvencto-low = /pws/zycbe017-dtvencto.
itab_dtvencto-high = /pws/zycbe017a-dtvencto.
APPEND itab_dtvencto.
ELSEIF ( ( /pws/zycbe017-dtvencto EQ '' ) OR
( /pws/zycbe017-dtvencto EQ '00000000' ) ) AND
( ( /pws/zycbe017a-dtvencto NE '' ) AND
( /pws/zycbe017a-dtvencto NE '00000000' ) ).
itab_dtvencto-sign = 'I'.
itab_dtvencto-option = 'BT'.
itab_dtvencto-low = /pws/zycbe017-dtvencto.
itab_dtvencto-high = /pws/zycbe017a-dtvencto.
APPEND itab_dtvencto.
ELSEIF ( ( /pws/zycbe017-dtvencto NE '' ) AND
( /pws/zycbe017-dtvencto NE '00000000' ) ) AND
( ( /pws/zycbe017a-dtvencto NE '' ) AND
( /pws/zycbe017a-dtvencto NE '00000000' ) ).
itab_dtvencto-sign = 'I'.
itab_dtvencto-option = 'BT'.
itab_dtvencto-low = /pws/zycbe017-dtvencto.
itab_dtvencto-high = /pws/zycbe017a-dtvencto.
APPEND itab_dtvencto.
ENDIF.
IF ( ( /pws/zycbe017-dtbl NE '' ) AND
( /pws/zycbe017-dtbl NE '00000000' ) ) AND
( ( /pws/zycbe017a-dtbl EQ '' ) OR
( /pws/zycbe017a-dtbl EQ '00000000' ) ).
itab_dtbl-sign = 'I'.
itab_dtbl-option = 'EQ'.
itab_dtbl-low = /pws/zycbe017-dtbl.
itab_dtbl-high = /pws/zycbe017a-dtbl.
APPEND itab_dtbl.
ELSEIF ( ( /pws/zycbe017-dtbl EQ '' ) OR
( /pws/zycbe017-dtbl EQ '00000000' ) ) AND
( ( /pws/zycbe017a-dtbl NE '' ) AND
( /pws/zycbe017a-dtbl NE '00000000' ) ).
itab_dtbl-sign = 'I'.
itab_dtbl-option = 'BT'.
itab_dtbl-low = /pws/zycbe017-dtbl.
itab_dtbl-high = /pws/zycbe017a-dtbl.
APPEND itab_dtbl.
ELSEIF ( ( /pws/zycbe017-dtbl NE '' ) AND
( /pws/zycbe017-dtbl NE '00000000' ) ) AND
( ( /pws/zycbe017a-dtbl NE '' ) AND
( /pws/zycbe017a-dtbl NE '00000000' ) ).
itab_dtbl-sign = 'I'.
itab_dtbl-option = 'BT'.
itab_dtbl-low = /pws/zycbe017-dtbl.
itab_dtbl-high = /pws/zycbe017a-dtbl.
APPEND itab_dtbl.
ENDIF.
IF NOT /pws/zycbe017-nrre IS INITIAL AND
v_nrre_ate IS INITIAL.
itab_nrre-sign = 'I'.
itab_nrre-option = 'EQ'.
itab_nrre-low = /pws/zycbe017-nrre.
itab_nrre-high = v_nrre_ate.
APPEND itab_nrre.
ELSEIF /pws/zycbe017-nrre IS INITIAL AND
NOT v_nrre_ate IS INITIAL.
itab_nrre-sign = 'I'.
itab_nrre-option = 'BT'.
itab_nrre-low = /pws/zycbe017-nrre.
itab_nrre-high = v_nrre_ate.
APPEND itab_nrre.
ELSEIF NOT /pws/zycbe017-nrre IS INITIAL AND
NOT v_nrre_ate IS INITIAL.
itab_nrre-sign = 'I'.
itab_nrre-option = 'BT'.
itab_nrre-low = /pws/zycbe017-nrre.
itab_nrre-high = v_nrre_ate.
APPEND itab_nrre.
ENDIF.
IF NOT /pws/zycbe017-nrsd IS INITIAL AND
/pws/zycbe017a-nrsd IS INITIAL.
itab_nrsd-sign = 'I'.
itab_nrsd-option = 'EQ'.
itab_nrsd-low = /pws/zycbe017-nrsd.
itab_nrsd-high = /pws/zycbe017a-nrsd.
APPEND itab_nrsd.
ELSEIF /pws/zycbe017-nrsd IS INITIAL AND
NOT /pws/zycbe017a-nrsd IS INITIAL.
itab_nrsd-sign = 'I'.
itab_nrsd-option = 'BT'.
itab_nrsd-low = /pws/zycbe017-nrsd.
itab_nrsd-high = /pws/zycbe017a-nrsd.
APPEND itab_nrsd.
ELSEIF NOT /pws/zycbe017-nrsd IS INITIAL AND
NOT /pws/zycbe017a-nrsd IS INITIAL.
itab_nrsd-sign = 'I'.
itab_nrsd-option = 'BT'.
itab_nrsd-low = /pws/zycbe017-nrsd.
itab_nrsd-high = /pws/zycbe017a-nrsd.
APPEND itab_nrsd.
ENDIF.
SELECT *
INTO TABLE itab_zycbt017_aux
FROM /pws/zycbt017
WHERE nrinvoic IN itab_nrinvoic
AND gsberf IN itab_gsberf
AND fkdat IN itab_fkdat
AND kunag IN itab_kunag
AND dtvencto IN itab_dtvencto
AND dtbl IN itab_dtbl
AND inco1 IN itab_inco1
AND nrre IN itab_nrre
AND nrsd IN itab_nrsd
AND status EQ space.
DESCRIBE TABLE itab_zycbt017_aux LINES v_nlin.
LOOP AT itab_zycbt017_aux.
itab_zycbt017_aux-v_fsaldo = 'X'.
MODIFY itab_zycbt017_aux INDEX sy-tabix.
itab_zycbt226_aux-bukrs = itab_zycbt017_aux-bukrs .
itab_zycbt226_aux-nrinvoic = itab_zycbt017_aux-nrinvoic .
itab_zycbt226_aux-gsberf = itab_zycbt017_aux-gsberf .
itab_zycbt226_aux-kunag = itab_zycbt017_aux-kunag .
itab_zycbt226_aux-nrparcf = itab_zycbt017_aux-nrparcf .
itab_zycbt226_aux-vlavinc = itab_zycbt017_aux-vlavinc.
itab_zycbt226_aux-dtlancto = sy-datum.
itab_zycbt226_aux-dtcredext = sy-datum.
itab_zycbt226_aux-waers = itab_zycbt017_aux-waers.
SELECT * FROM /pws/zycbt030
UP TO 1 ROWS
WHERE nrinvoic = itab_zycbt017_aux-nrinvoic AND
nrparcf = itab_zycbt017_aux-nrparcf AND
gsberf = itab_zycbt017_aux-gsberf.
ENDSELECT.
IF sy-subrc = 0.
IF /pws/zycbt030-vlsltrans > 0 .
itab_zycbt226_aux-sld_transferir = /pws/zycbt030-vlsltrans.
APPEND itab_zycbt226_aux.
ELSE.
continue.
ENDIF.
ENDIF.
ENDLOOP.
IF v_nlin IS INITIAL.
MESSAGE w015 WITH text-m48.
ELSE.
v_select = 'X'.
v_check = 'X'.
SET SCREEN '0100'.
LEAVE TO SCREEN '0100'.
ENDIF.
ENDIF.
ENDMODULE.
module preenche_table_control input.
DATA: wa_zycbt017 TYPE t_s_zycbt017,
wa_kna1 TYPE t_s_kna1.
LOOP AT itab_zycbt226 INTO wa_zycbt226.
READ TABLE itab_zycbt017 WITH key
nrinvoic = wa_zycbt226-nrinvoic
nrparcf = wa_zycbt226-nrparcf
gsberf = wa_zycbt226-gsberf
INTO wa_zycbt017.
if sy-subrc = 0.
wa_zycbt226-nremb = wa_zycbt017-nremb.
endif.
READ TABLE itab_kna1 WITH KEY kunnr = wa_zycbt226-kunag
INTO wa_kna1.
IF sy-subrc = 0.
wa_zycbt226-descr_kunag = wa_kna1-name1.
ENDIF.
MODIFY itab_zycbt226 FROM wa_zycbt226 .
endloop.
endmodule.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB034O01
...
ENDMODULE.
MODULE preenche_tc_op OUTPUT.
PERFORM: verifica_autorizacao USING 'BUKRS',
preenche_tc_op.
IF sy-tcode = c_transacao_a.
PERFORM: bloqueia_op USING 'X'
tc_op-current_line.
ENDIF.
ENDMODULE.
MODULE seleciona_dados OUTPUT.
* >> Início da inclusão: MODULE SELECIONA_DADOS
if v_check = 'X' and
v_select = 'X'.
itab_zycbt226[] = itab_zycbt226_aux[] .
endif.
* << Fim da inclusão
PERFORM: seleciona_op,
seleciona_parametros,
seleciona_dados,
armazena_dados_antigos.
ENDMODULE.
MODULE html_help OUTPUT.
IF my_container IS INITIAL.
CREATE OBJECT my_container
EXPORTING
container_name = 'CC_HTML_HELP'
...
...
CALL METHOD html_control->set_registered_events
EXPORTING
events = myevent_tab.
CREATE OBJECT evt_receiver.
SET HANDLER evt_receiver->on_sapevent
FOR html_control.
PERFORM load_home_page.
ENDIF.
ENDMODULE.
MODULE exibe_msgs OUTPUT.
* >> Início da exclusão: MODULE EXIBE_MSGS
DATA: p_oper(2) TYPE c,
wa_zycbt017 TYPE t_s_zycbt017.
* << Fim da exclusão
* >> Início da inclusão: MODULE EXIBE_MSGS
DATA: p_oper(2) TYPE c.
* << Fim da inclusão
FIELD-SYMBOLS: <fs_zycbt226> TYPE t_s_zycbe226.
IF sy-tcode EQ c_transacao_c.
p_oper = '01'.
ELSEIF sy-tcode EQ c_transacao_a.
p_oper = '02'.
ELSEIF sy-tcode EQ c_transacao_e.
p_oper = '03'.
ENDIF.
loop at itab_zycbt226 assigning <fs_zycbt226>.
READ TABLE itab_zycbt017 WITH KEY
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB034TOP
...
/pws/zygli101,
<icon>.
TYPE-POOLS: icon.
TABLES:
/pws/zycbe226,
/pws/zycbe238,
/pws/zycbe239,
/pws/zycbe240,
/pws/zycbe242,
/pws/zycbe017,
* >> Início da inclusão:
/pws/zycbe017a,
/pws/zycbt030,
skb1,
* << Fim da inclusão
/pws/zycbt089.
CONTROLS:
ts_70 TYPE TABSTRIP,
ts_principal TYPE TABSTRIP,
tc_op TYPE TABLEVIEW USING SCREEN '0110',
tc_30 TYPE TABLEVIEW USING SCREEN '0120',
tc_70 TYPE TABLEVIEW USING SCREEN '0131',
tc_contrato TYPE TABLEVIEW USING SCREEN '0132',
tc_00 TYPE TABLEVIEW USING SCREEN '0150',
tc_rendimentos TYPE TABLEVIEW USING SCREEN '0140',
...
...
v_total_30 TYPE wrbtr,
v_total_70 TYPE wrbtr,
v_msg_previsto(74) TYPE c,"#EC NEEDED
opt_origem_embarque(1) TYPE c,
opt_origem_pagantec(1) TYPE c,
opt_destino_30(1) TYPE c,
opt_destino_70(1) TYPE c,
v_mark(1) TYPE c,
v_icone TYPE icons-text,
v_tela_help TYPE sy-dynnr VALUE '0052'."#EC NEEDED
* >> Início da inclusão:
data: v_adm(1) type c.
* << Fim da inclusão
DATA:
v_codaux TYPE /pws/zygle316-codaux1,
v_codaux1 TYPE /pws/zygle316-codaux1,
v_codaux2 TYPE /pws/zygle316-codaux2.
* >> Início da inclusão:
data: v_nrinvoic VALUE space,
v_gsberf VALUE space,
v_fkdat VALUE space,
v_kunag VALUE space,
v_dtvencto VALUE space,
v_dtbl VALUE space,
v_inco1 VALUE space,
v_re VALUE space,
v_sd VALUE space,
v_nrre_ate LIKE /pws/zycbe017-nrre,
v_select type c,
v_check type c,
v_oper LIKE icons-text,
v_index like sy-tabix.
DATA: BEGIN OF itab_nrinvoic OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-nrinvoic,
high LIKE /pws/zycbe017a-nrinvoic,
END OF itab_nrinvoic.
DATA: BEGIN OF itab_gsberf OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-gsberf,
high LIKE /pws/zycbe017a-gsberf,
END OF itab_gsberf.
DATA: BEGIN OF itab_fkdat OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-fkdat,
high LIKE /pws/zycbe017a-fkdat,
END OF itab_fkdat.
DATA: BEGIN OF itab_kunag OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-kunag,
high LIKE /pws/zycbe017a-kunag,
END OF itab_kunag.
DATA: BEGIN OF itab_dtvencto OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-dtvencto,
high LIKE /pws/zycbe017a-dtvencto,
END OF itab_dtvencto.
DATA: BEGIN OF itab_dtbl OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-dtbl,
high LIKE /pws/zycbe017a-dtbl,
END OF itab_dtbl.
DATA: BEGIN OF itab_inco1 OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-inco1,
high LIKE /pws/zycbe017a-inco1,
END OF itab_inco1.
DATA: BEGIN OF itab_nrre OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-nrre,
high TYPE /pws/zycbe017-nrre,
END OF itab_nrre.
DATA: BEGIN OF itab_nrsd OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
low LIKE /pws/zycbe017-nrsd,
high LIKE /pws/zycbe017a-nrsd,
END OF itab_nrsd.
DATA: BEGIN OF itab_zycbt017_aux OCCURS 0.
INCLUDE STRUCTURE /pws/zycbt017.
DATA: v_fsaldo TYPE c,
END OF itab_zycbt017_aux.
DATA: BEGIN OF itab_zycbt226_aux OCCURS 0.
INCLUDE STRUCTURE /pws/zycbe226.
DATA : mark(1) TYPE c,
operacao(1) TYPE c,
bloqueado(1) TYPE c,
acesso_emp(1) TYPE c,
drilldown(1) TYPE c.
DATA: END OF itab_zycbt226_aux .
* << Fim da inclusão
INCLUDE /PWS/MZYCB034X01.
SELECTION-SCREEN BEGIN OF SCREEN 0001.
SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-011.
SELECT-OPTIONS: s_bukrs FOR /pws/zycbe226-bukrs,
s_nrseq FOR /pws/zycbe226-nrseq,
s_invoic FOR /pws/zycbe226-nrinvoic
MATCHCODE OBJECT /pws/zycba275,
s_gsber FOR /pws/zycbe226-gsberf,
s_nrparc FOR /pws/zycbe226-nrparcf,
s_kunag FOR /pws/zycbe017-kunag,
...
...
SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE text-021.
PARAMETERS: p_orig1 AS CHECKBOX,
p_orig2 AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK b.
SELECTION-SCREEN BEGIN OF BLOCK c WITH FRAME TITLE text-027.
PARAMETERS: p_moedag RADIOBUTTON GROUP w,
p_moedam RADIOBUTTON GROUP w,
p_moedab RADIOBUTTON GROUP w.
SELECTION-SCREEN END OF BLOCK c.
SELECTION-SCREEN END OF SCREEN 0001.
* >> Início da inclusão:
SELECTION-SCREEN BEGIN OF SCREEN 0301.
select-options: nrin FOR /pws/zycbe017-nrinvoic
MATCHCODE OBJECT /PWS/ZYCBA249 MODIF ID fat ,
gsbe FOR /pws/zycbe017-gsberf MODIF ID div,
dtbl FOR /pws/zycbe017-dtbl MODIF ID dbl,
fkda FOR /pws/zycbe017-fkdat MODIF ID dft,
kuna FOR /pws/zycbe017-kunag MODIF ID cli
MATCHCODE OBJECT debia,
dtve FOR /pws/zycbe017-dtvencto MODIF ID dv,
inco FOR /pws/zycbe017-inco1 MODIF ID inc,
nrre FOR /pws/zycbe017-nrre MODIF ID nre,
nrsd FOR /pws/zycbe017-nrsd MODIF ID nrs.
SELECTION-SCREEN END OF SCREEN 0301.
* << Fim da inclusão
AT SELECTION-SCREEN OUTPUT.
* >> Início da inclusão:
IF sy-dynnr = '0301'.
PERFORM set_screen_0301.
ELSE.
* << Fim da inclusão
PERFORM: status_gui_0001,
importa_selecao.
* >> Início da inclusão:
endif.
* << Fim da inclusão
AT SELECTION-SCREEN.
* >> Início da inclusão:
IF sy-dynnr = '0301'.
PERFORM selecionar_zycbt017.
ENDIF.
* << Fim da inclusão
CHECK sy-dynnr EQ '0001'.
DATA:
v_ucomm type sy-ucomm.
GET PARAMETER ID 'UCOMM' FIELD v_ucomm."#EC *
SET PARAMETER ID 'UCOMM' FIELD space."#EC *
IF NOT v_ucomm IS INITIAL.
sy-ucomm = v_ucomm.
ENDIF.
CASE sy-ucomm.
WHEN 'CRET'.
* >> Início da inclusão:
IF itab_zycbt226[] IS INITIAL.
* << Fim da inclusão
CLEAR wa_controle.
PERFORM: limpa_itabs,
seleciona_op.
* >> Início da inclusão:
endif.
* << Fim da inclusão
IF NOT itab_zycbt226[] IS INITIAL.
CALL SCREEN '0100'.
ELSE.
MESSAGE i222.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB034X01
* >> Início da exclusão:
DATA: BEGIN OF COMMON PART c.
* << Fim da exclusão
* >> Início da inclusão:
DATA: BEGIN OF COMMON PART c."#EC PART_OK
* << Fim da inclusão
DATA: itab_zycbt032 type t_t_zycbt032,
itab_zycbe033 type t_t_zycbe033,
itab_zycbt034 type t_t_zycbt034,
itab_zycbt036 type t_t_zycbt036,
itab_partidas type t_t_zycbe033.
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCB034
Incluído símbolo de texto:
Idioma: PT
Símbolo: M46
Texto: (25 caracteres)
"Nenhum campo foi marcado."
Comprimento máximo: 25
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: M47
Texto: (39 caracteres)
"Dados não encontrados para essa seleção"
Comprimento máximo: 47
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: M48
Texto: (31 caracteres)
"Nenhuma fatura foi selecionada."
Comprimento máximo: 31
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: M49
Texto: (7 caracteres)
"Informe"
Comprimento máximo: 7
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: M50
Texto: (23 caracteres)
"o Valor Ret.no Exterior"
Comprimento máximo: 23
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): DTBL
Texto: (24 caracteres)
"Data do Embarque"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): DTVE
Texto: (26 caracteres)
"Data de Vencimento"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): FKDA
Texto: (27 caracteres)
"Data de Faturamento"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): GSBE
Texto: (25 caracteres)
"Divisão da Fatura"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): INCO
Texto: (17 caracteres)
"Incoterms"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): KUNA
Texto: (15 caracteres)
"Cliente"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): NRIN
Texto: (17 caracteres)
"Nº Fatura"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): NRRE
Texto: (10 caracteres)
"RE"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): NRSD
Texto: (10 caracteres)
"SD"
Referência ao Dictionary: NÃO