Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Fatura Mercadoria
Data/Hora da Publicação: 12/03/2008 00:00:00
Data/Hora Última Alteração: 22/02/2011 16:11:17
Descrição da Nota: TRATAMENTO PARA DOCUMENTOS ESTORNADOS POR FORA DO PWCE
Sintoma
Desenvolvido tratamento para documentos da fatura que foram estornados por fora da Fatura.
Solução
Desenvolvido tratamento para documentos da fatura que foram estornados por fora da Fatura.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 06155 Data: 12/03/2008 Hora: 11:22:37
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 06155
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00004
Agrupamento : 00038
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01216 - 00001 - 6.0 - 00023 - DEV.ADIC. VERIFICA FATURAS DUPLICADAS
02864 - 00002 - 6.0 - 00026 - ESTORNO FATURA ELIMINADA POR FORA
05622 - 00003 - 7.0 - 00004 - EXIT FAT008 DO PROGRAMA /PWS/SAPMZYCI003
----------------------------------------------------------------------------------------------------
TRATAMENTO PARA DOCUMENTOS ESTORNADOS POR FORA DO PWCE
----------------------------------------------------------------------------------------------------
Palavras Chave:
TRATAMENTO - DOCUMENTOS - ESTORNO - SAP - FORA - PWCE
/PWS/SAPMZYCI003
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI003F01
REPS /PWS/MZYCI003F02
REPS /PWS/MZYCI003X01
REPT /PWS/SAPMZYCI003
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F01
...
IF /pws/zycie006-tpfatura = '02'.
LOOP AT itab_zycit003.
DELETE FROM /pws/zycit036
WHERE codigo = 'FRETEI'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
AND nrseqori = /pws/zycie006-nrseq.
ENDLOOP.
ELSEIF /pws/zycie006-tpfatura = '03'.
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM ELIMINAR_FATURA
IF v_erro ne 'X'.
* >> Fim da inclusão: FORM ELIMINAR_FATURA
DELETE FROM /pws/zycit036
WHERE codigo = 'SEGURO'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
AND nrseqori = /pws/zycie006-nrseq.
* >> Início da inclusão: FORM ELIMINAR_FATURA
ENDIF.
* >> FIM da inclusão: FORM ELIMINAR_FATURA
ENDLOOP.
ENDIF.
ENDIF.
UPDATE /pws/zycbt108 SET status = 'E'
WHERE bukrs = /pws/zycie006-bukrs
AND belnr = /pws/zycie006-nrseq
AND gjahr = /pws/zycie006-dtincl+0(4).
UPDATE /pws/zycbt119 SET status = 'E'
WHERE nrseq = /pws/zycie006-nrseq_pgfat.
IF NOT /pws/zycie006-nrseqre IS INITIAL.
DELETE FROM /pws/zycbt124 WHERE nrseq = /pws/zycie006-nrseqre.
ENDIF.
ENDIF.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F02
...
FORM reverse_document_mbst.
DATA: v_belnr_ant LIKE /pws/zycie006-belnr_p.
DATA: BEGIN OF itab_itens_nf OCCURS 0.
INCLUDE STRUCTURE /pws/zycit044.
DATA: END OF itab_itens_nf.
* >> Início da inclusão: FORM REVERSE_DOCUMENT_MBST
e_estorno = 'MBST'.
* << Fim da inclusão
CLEAR v_belnr_ant.
e_subrc = '0' .
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI003'
'FAT008'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'FAT008' BINARY SEARCH.
IF sy-subrc EQ 0.
* >> Início da inclusão: FORM REVERSE_DOCUMENT_MBST
e_estorno = 'MBST'.
* << Fim da inclusão
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
* >> Início da exclusão: FORM REVERSE_DOCUMENT_MBST
e_estorno = 'MBST'.
* << Fim da exclusão
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
IF e_subrc EQ '0'.
itab_zycie033-tcode = 'MBST'.
...
...
/pws/zycie006-mblnr_mb01, /pws/zycie006-dt_mb01.
PERFORM clear_date_batch.
v_mbst_ok = 'S'.
CLEAR v_mb01_ok.
ELSE.
LOOP AT itab_zycit032.
MESSAGE i015 WITH itab_zycit032-msg+0(50)
itab_zycit032-msg+50(50).
ENDLOOP.
PERFORM clear_date_batch.
* >> Início da inclusão: FORM REVERSE_DOCUMENT_MBST
PERFORM verifica_estorno_r3 CHANGING v_mbst_ok
v_answer.
* << Fim da inclusão
* >> Início da exclusão: FORM REVERSE_DOCUMENT_MBST
PERFORM popup_message USING text-026 text-025.
IF v_answer = 'J'.
v_mbst_ok = 'S'.
ENDIF.
* << Fim da exclusão
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
FORM reverse_document_mr8m.
DATA: v_belnr_ant LIKE /pws/zycie006-belnr_p.
CLEAR v_belnr_ant.
* >> Início da inclusão: FORM REVERSE_DOCUMENT_MR8M
e_estorno = 'MR8M'.
* << Fim da inclusão
e_subrc = '0' .
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI003'
'FAT008'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'FAT008' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
* >> Início da exclusão: FORM REVERSE_DOCUMENT_MR8M
e_estorno = 'MR8M'.
* << Fim da exclusão
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
IF e_subrc EQ '0'.
PERFORM get_parameters_mrm1_receb.
itab_zycie033-tcode = 'MR8M'.
itab_zycie033-tabela = '/PWS/ZYCIT006'.
itab_zycie033-cpochv = /pws/zycie006-nrseq.
itab_zycie033-bukrs = /pws/zycie006-bukrs.
...
...
APPEND itab_zycie033.
e_subrc = '0' .
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI003'
'FAT009'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'FAT009' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
* >> Início da exclusão: FORM REVERSE_DOCUMENT_MR8M
e_estorno = 'REC_MR8M' .
* << Fim da exclusão
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
CALL FUNCTION '/PWS/ZYCI_TRANSACAO_MR8M'
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycie033
t_campo = itab_zycit034
...
...
PERFORM clear_date_batch.
MODIFY /pws/zycit006 FROM /pws/zycie006.
v_mr8m_ok = 'S'.
CLEAR v_mr1m_ok.
ELSE.
LOOP AT itab_zycit032.
MESSAGE i015 WITH itab_zycit032-msg+0(50)
itab_zycit032-msg+50(50).
ENDLOOP.
PERFORM clear_date_batch.
* >> Início da inclusão: FORM REVERSE_DOCUMENT_MR8M
PERFORM verifica_estorno_r3 CHANGING v_mr8m_ok
v_answer.
* << Fim da inclusão
* >> Início da exclusão: FORM REVERSE_DOCUMENT_MR8M
PERFORM popup_message USING text-026 text-025.
IF v_answer = 'J'.
v_mr8m_ok = 'S'.
* << Fim da exclusão
ENDIF.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM REVERSE_DOCUMENT_MR8M
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM REVERSE_DOCUMENT_MR8M
CLEAR e_estorno.
* << Fim da inclusão
ENDFORM.
...
...
FORM reverse_documento_contab_fbra.
DATA: v_belnr_ant LIKE /pws/zycie006-belnr_p.
CLEAR v_belnr_ant.
* >> Início da inclusão: FORM REVERSE_DOCUMENTO_CONTAB_FBRA
e_estorno = 'FBRA'.
* << Fim da inclusão
e_subrc = '0' .
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI003'
'FAT008'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'FAT008' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
e_estorno = 'FBRA'.
...
...
t_zycbt032 = itab_zycbt032
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
IF sy-subrc = 0.
PERFORM atualiza_fbra_rec.
ELSE.
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
* >> Início da exclusão: FORM REVERSE_DOCUMENTO_CONTAB_FBRA
PERFORM popup_message USING text-026 text-025.
* << Fim da exclusão
* >> Início da inclusão: FORM REVERSE_DOCUMENTO_CONTAB_FBRA
PERFORM verifica_estorno_r3 CHANGING v_fbra_ok
v_answer.
* << Fim da inclusão
IF v_answer = 'J'.
PERFORM historico_recebimento USING /pws/zycie006-belnr_f_51
'F-51'.
CLEAR: /pws/zycie006-statusp_f_51,
/pws/zycie006-belnr_f_51 ,
/pws/zycie006-dt_f_51 .
v_fbra_ok = 'S'.
ENDIF.
ENDIF.
ELSEIF e_subrc EQ '4'.
PERFORM atualiza_fbra_rec.
ELSE.
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
* >> Início da exclusão: FORM REVERSE_DOCUMENTO_CONTAB_FBRA
PERFORM popup_message USING text-026 text-025.
* << Fim da exclusão
* >> Início da inclusão: FORM REVERSE_DOCUMENTO_CONTAB_FBRA
PERFORM verifica_estorno_r3 CHANGING v_fbra_ok
v_answer.
* << Fim da inclusão
IF v_answer = 'J'.
PERFORM historico_recebimento USING /pws/zycie006-belnr_f_51
'F-51'.
CLEAR: /pws/zycie006-statusp_f_51,
/pws/zycie006-belnr_f_51 ,
/pws/zycie006-dt_f_51 .
v_fbra_ok = 'S'.
ENDIF.
ENDIF.
ENDIF.
...
...
t_itens_nf = itab_itens_nf
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
IF sy-subrc = 0.
PERFORM atualiza_mbst_rec.
ELSE.
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
* >> Início da exclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA
PERFORM popup_message USING text-026 text-025.
* << Fim da exclusão
* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA
PERFORM verifica_estorno_r3 CHANGING v_mbst_ok
v_answer.
* << Fim da inclusão
IF v_answer = 'J'.
PERFORM historico_recebimento USING /pws/zycie006-mblnr_mb01
'MIGO'.
CLEAR: /pws/zycie006-statusp_mb01, /pws/zycie006-mblnr_mb01,
/pws/zycie006-dt_mb01.
v_mbst_ok = 'S'.
ENDIF.
ENDIF.
ELSEIF e_subrc EQ '4'.
PERFORM atualiza_mbst_rec.
ELSE.
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA
PERFORM verifica_estorno_r3 CHANGING v_mbst_ok
v_answer.
* << Fim da inclusão
* >> Início da exclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA
PERFORM popup_message USING text-026 text-025.
* << Fim da exclusão
IF v_answer = 'J'.
PERFORM historico_recebimento USING /pws/zycie006-mblnr_mb01
'MIGO'.
CLEAR: /pws/zycie006-statusp_mb01, /pws/zycie006-mblnr_mb01,
/pws/zycie006-dt_mb01.
v_mbst_ok = 'S'.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
...
...
IF v_parcela = 'X'.
SELECT SINGLE *
FROM bkpf
WHERE belnr EQ /pws/zycie006-belnr_p
AND gjahr EQ /pws/zycie006-dtincl+0(4)
AND bukrs EQ /pws/zycie006-bukrs.
READ TABLE itab_zycbt032 WITH KEY tcode = 'FB08'
tabela = '/PWS/ZYCIT132'
cpochv = /pws/zycie006-nrseq
tpmsg = 'S'.
* >> Início da exclusão: FORM ATUALIZA_FB08_FAT
IF sy-subrc EQ 0 OR NOT bkpf-stblg IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZA_FB08_FAT
IF sy-subrc EQ 0 AND NOT bkpf-stblg IS INITIAL.
* << Fim da inclusão
MESSAGE i030 WITH v_belnr_ant.
IF okcode NE 'DELE'.
CLEAR: /pws/zycie006-statusp , /pws/zycie006-belnr_p.
MODIFY /pws/zycit006 FROM /pws/zycie006.
v_rev = 'X'.
PERFORM clear_date_batch.
IF v_estorno IS INITIAL.
IF itab_zycit132-mark NE 'X' AND itab_zycit132-status NE 'X'.
PERFORM dele_custo USING /pws/zycit031-inco1_ci space.
PERFORM fill_date_f-43_f-02.
...
...
itab_zycit132-status = 'X'.
itab_zycit132-eliminado = 'X'.
MODIFY itab_zycit132.
ENDIF.
ELSE.
LOOP AT itab_zycbt032.
MESSAGE i015 WITH itab_zycbt032-msg+0(50)
itab_zycbt032-msg+50(50).
ENDLOOP.
PERFORM clear_date_batch.
* >> Início da inclusão: FORM ATUALIZA_FB08_FAT
PERFORM verifica_estorno_r3 CHANGING v_erro
v_answer.
IF v_erro = 'S'.
* << Fim da inclusão
v_erro = 'X'.
* >> Início da inclusão: FORM ATUALIZA_FB08_FAT
ENDIF.
IF v_answer = 'J'.
CLEAR: /pws/zycie006-belnr_p, /pws/zycie006-statusp.
MODIFY /pws/zycit006 FROM /pws/zycie006.
COMMIT WORK.
PERFORM dele_custo USING /pws/zycit031-inco1_ci space.
PERFORM fill_date_f-43_f-02.
ENDIF.
* << Fim da inclusão
ENDIF.
ELSE.
SELECT SINGLE *
FROM bkpf
WHERE belnr EQ /pws/zycie006-belnr_p
AND gjahr EQ /pws/zycie006-dtincl+0(4)
AND bukrs EQ /pws/zycie006-bukrs.
READ TABLE itab_zycbt032 WITH KEY tcode = 'FB08'
tabela = '/PWS/ZYCIT006'
cpochv = /pws/zycie006-nrseq
tpmsg = 'S'.
* >> Início da exclusão: FORM ATUALIZA_FB08_FAT
IF sy-subrc EQ 0 OR NOT bkpf-stblg IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZA_FB08_FAT
IF sy-subrc EQ 0 AND NOT bkpf-stblg IS INITIAL.
* << Fim da inclusão
MESSAGE i030 WITH v_belnr_ant.
IF okcode NE 'DELE'.
CLEAR: /pws/zycie006-statusp , /pws/zycie006-belnr_p.
MODIFY /pws/zycit006 FROM /pws/zycie006.
PERFORM clear_date_batch.
IF v_estorno IS INITIAL.
PERFORM dele_custo USING /pws/zycit031-inco1_ci space.
PERFORM fill_date_f-43_f-02.
ENDIF.
ENDIF.
ELSE.
LOOP AT itab_zycbt032.
MESSAGE i015 WITH itab_zycbt032-msg+0(50)
itab_zycbt032-msg+50(50).
ENDLOOP.
PERFORM clear_date_batch.
* >> Início da inclusão: FORM ATUALIZA_FB08_FAT
PERFORM verifica_estorno_r3 CHANGING v_erro
v_answer.
IF v_erro = 'S'.
* << Fim da inclusão
v_erro = 'X'.
* >> Início da inclusão: FORM ATUALIZA_FB08_FAT
ENDIF.
IF v_answer = 'J'.
IF okcode NE 'DELE'.
CLEAR: /pws/zycie006-belnr_p, /pws/zycie006-statusp.
MODIFY /pws/zycit006 FROM /pws/zycie006.
COMMIT WORK.
PERFORM dele_custo USING /pws/zycit031-inco1_ci space.
PERFORM fill_date_f-43_f-02.
ENDIF.
ENDIF.
* << Fim da inclusão
/pws/zycie006 = wa_zycie006_ini.
ENDIF.
ENDIF.
ENDFORM.
...
...
PERFORM historico_recebimento USING /pws/zycie006-belnr_f_51
'F-51'.
CLEAR: /pws/zycie006-statusp_f_51 , /pws/zycie006-belnr_f_51,
/pws/zycie006-dt_f_51.
v_fbra_ok = 'S'.
ELSE.
LOOP AT itab_zycbt032.
MESSAGE i015 WITH itab_zycbt032-msg+0(50)
itab_zycbt032-msg+50(50).
ENDLOOP.
* >> Início da exclusão: FORM ATUALIZA_FBRA_REC
PERFORM popup_message USING text-026 text-025.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZA_FBRA_REC
PERFORM verifica_estorno_r3 CHANGING v_fbra_ok
v_answer.
* << Fim da inclusão
IF v_answer = 'J'.
PERFORM historico_recebimento USING /pws/zycie006-belnr_f_51
'F-51'.
CLEAR: /pws/zycie006-statusp_f_51,
/pws/zycie006-belnr_f_51 ,
/pws/zycie006-dt_f_51 .
v_fbra_ok = 'S'.
ENDIF.
ENDIF.
ENDFORM.
...
...
MESSAGE i030 WITH v_belnr_ant.
CLEAR: /pws/zycie006-statusp_f_51,
/pws/zycie006-belnr_f_51 ,
/pws/zycie006-dt_f_51 .
v_fb08_ok = 'S'.
ELSE.
LOOP AT itab_zycbt032.
MESSAGE i015 WITH itab_zycbt032-msg+0(50)
itab_zycbt032-msg+50(50).
ENDLOOP.
* >> Início da inclusão: FORM ATUALIZA_FB08_REC
IF v_answer = 'J' AND v_fbra_ok = 'S'.
CLEAR: /pws/zycie006-statusp_f_51,
/pws/zycie006-belnr_f_51 ,
/pws/zycie006-dt_f_51 .
v_fb08_ok = 'S'.
MODIFY /pws/zycit006 FROM /pws/zycie006.
ENDIF.
* << Fim da inclusão
PERFORM clear_date_batch.
* >> Início da exclusão: FORM ATUALIZA_FB08_REC
MODIFY /pws/zycit006 FROM /pws/zycie006.
* << Fim da exclusão
ENDIF.
ENDFORM.
...
...
'MIGO'.
CLEAR: /pws/zycie006-statusp_mb01, /pws/zycie006-mblnr_mb01,
/pws/zycie006-dt_mb01.
v_mbst_ok = 'S'.
ELSE.
LOOP AT itab_zycit032.
MESSAGE i015 WITH itab_zycit032-msg+0(50)
itab_zycit032-msg+50(50).
ENDLOOP.
PERFORM clear_date_batch.
* >> Início da inclusão: FORM ATUALIZA_MBST_REC
PERFORM verifica_estorno_r3 CHANGING v_mbst_ok
v_answer.
* << Fim da inclusão
* >> Início da exclusão: FORM ATUALIZA_MBST_REC
PERFORM popup_message USING text-026 text-025.
* << Fim da exclusão
IF v_answer = 'J'.
PERFORM historico_recebimento USING /pws/zycie006-mblnr_mb01
'MIGO'.
CLEAR: /pws/zycie006-statusp_mb01, /pws/zycie006-mblnr_mb01,
/pws/zycie006-dt_mb01.
v_mbst_ok = 'S'.
ENDIF.
ENDIF.
ENDFORM.
...
...
CLEAR: /pws/zycie006-statusp_mr1m, /pws/zycie006-belnr_mr1m,
/pws/zycie006-dt_mr1m.
MODIFY /pws/zycit006 FROM /pws/zycie006.
v_mr8m_ok = 'S'.
CLEAR v_mr1m_ok.
ELSE.
LOOP AT itab_zycit032.
MESSAGE i015 WITH itab_zycit032-msg+0(50)
itab_zycit032-msg+50(50).
ENDLOOP.
* >> Início da inclusão: FORM ATUALIZA_MR8M_FAT
PERFORM verifica_estorno_r3 CHANGING v_mr8m_ok
v_answer.
* << Fim da inclusão
* >> Início da exclusão: FORM ATUALIZA_MR8M_FAT
PERFORM popup_message USING text-026 text-025.
* << Fim da exclusão
IF v_answer = 'J'.
PERFORM historico_recebimento USING /pws/zycie006-belnr_mr1m
'MIRO'.
CLEAR: /pws/zycie006-statusp_mr1m, /pws/zycie006-belnr_mr1m,
/pws/zycie006-dt_mr1m.
MODIFY /pws/zycit006 FROM /pws/zycie006.
v_mr8m_ok = 'S'.
ENDIF.
ENDIF.
ENDFORM.
...
...
* >> Início da inclusão:
FORM verifica_estorno_r3 CHANGING p_var
v_answer.
IF e_estorno = 'MR8M'.
SELECT SINGLE * FROM rbkp
WHERE belnr EQ /pws/zycie006-belnr_mr1m
AND gjahr EQ /pws/zycie006-dt_mr1m+0(4).
IF sy-subrc EQ 0 AND NOT rbkp-stblg IS INITIAL.
PERFORM popup_message USING text-026 text-025.
IF v_answer = 'J'.
p_var = 'S'.
ELSE.
CLEAR p_var.
ENDIF.
ELSE.
CLEAR p_var.
MESSAGE i015 WITH text-186.
ENDIF.
ELSEIF e_estorno = 'MBST' OR e_estorno = 'REC_MBST'.
SELECT SINGLE * FROM mseg
WHERE smbln EQ /pws/zycie006-mblnr_mb01
AND sjahr EQ /pws/zycie006-dt_mb01+0(4). "#EC CI_NOFIRST
IF sy-subrc EQ 0.
PERFORM popup_message USING text-026 text-025.
IF v_answer = 'J'.
p_var = 'S'.
ELSE.
CLEAR p_var.
ENDIF.
ELSE.
CLEAR p_var.
MESSAGE i015 WITH text-186.
ENDIF.
ELSE.
CLEAR: bkpf.
IF e_estorno = 'FBRA'.
SELECT SINGLE * FROM bkpf
WHERE bukrs EQ /pws/zycie006-bukrs
AND belnr EQ /pws/zycie006-belnr_f_51
AND gjahr EQ /pws/zycie006-dt_f_51+0(4).
ELSE.
SELECT SINGLE * FROM bkpf
WHERE bukrs EQ /pws/zycie006-bukrs
AND belnr EQ /pws/zycie006-belnr_p
AND gjahr EQ /pws/zycie006-dtincl+0(4).
ENDIF.
IF sy-subrc EQ 0 AND NOT bkpf-stblg IS INITIAL.
PERFORM popup_message USING text-026 text-025.
IF e_estorno = 'FBRA'.
IF v_answer = 'J'.
p_var = 'S'.
ELSE.
CLEAR p_var.
ENDIF.
ELSE.
IF v_answer = 'J'.
CLEAR p_var.
ELSE.
p_var = 'S'.
ENDIF.
ENDIF.
ELSE.
IF e_estorno = 'FBRA'.
CLEAR p_var.
ELSE.
p_var = 'S'.
ENDIF.
MESSAGE i015 WITH text-186.
ENDIF.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003X01
...
/pws/zycet076,
/pws/zycbt131,
/pws/zycit048,
rbkp,
/pws/zyglt217,
/pws/zycit391,
j_1bbranch ,
adrc ,
/pws/zycit270,
/pws/zycbt130,
* >> Início da exclusão:
t169p.
* << Fim da exclusão
* >> Início da inclusão:
t169p,
MSEG.
* << Fim da inclusão
DATA: BEGIN OF COMMON PART a.
DATA: BEGIN OF itab_zycit003 OCCURS 0.
INCLUDE STRUCTURE /pws/zycie003.
DATA: total LIKE /pws/zycit036-vldif,
livre(1) TYPE c,
invoiced LIKE /pws/zycie263-qtd_iten,
toinv LIKE /pws/zycie263-qtd_iten,
vlfre_aux LIKE /pws/zycit036-vlmov,
vlseg_aux LIKE /pws/zycit036-vlmov,
marc.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI003
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 186
Texto: (33 caracteres)
"Documento não pode ser estornado."
Comprimento máximo: 33