Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Rotina de Pagamento
Data/Hora da Publicação: 18/03/2008 00:00:00
Data/Hora Última Alteração: 11/03/2010 09:40:49
Descrição da Nota: PROCESSAR BOLETO
Sintoma
Após criar uma DESPESA de importação, no COMPLEMENTO DO BOLETO, e clicar em salvar, aparece uma
caixa de msg com a info: "Campo BSEG-ZFBDT não existente na tela.
Solução
Altera include /PWS/LZYGLGF2F01 e função /PWS/ZYGL_TRANSACAO_F_02, para que o programa verifique
corretamente o status do campo ZFBDT.
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 06200 Data: 18/03/2008 Hora: 14:36:08
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 06200
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00005
Agrupamento : 00038
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
PROCESSAR BOLETO
----------------------------------------------------------------------------------------------------
Palavras Chave:
PROCESSAR BOLETO
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYGL_TRANSACAO_F_02
REPS /PWS/LZYGLGF2F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYGL_TRANSACAO_F_02
...
WRITE: t_dados-d_valut TO v_data_val_char,
t_dados-wrbtr TO v_wrbtr CURRENCY t_dados-waers.
PERFORM bdc_screen USING 'SAPMF05A' '0300'.
IF NOT t_dados-dmbtr IS INITIAL AND
t_dados-waers NE /pws/zycbt007-waersb.
WRITE : t_dados-dmbtr TO v_dmbtr CURRENCY t_dados-waersb.
PERFORM bdc_field USING:
'BSEG-DMBTR' v_dmbtr.
ENDIF.
PERFORM bdc_field USING:
* >> Início da exclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_02
'BSEG-WRBTR' v_wrbtr,
'BSEG-ZFBDT' v_data_venc_char,
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_02
'BSEG-WRBTR' v_wrbtr.
READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZFBDT' chave = 'D'.
IF sy-subrc <> 0.
IF NOT v_data_venc_char IS INITIAL.
PERFORM bdc_field USING 'BSEG-ZFBDT' v_data_venc_char.
ENDIF.
ENDIF.
PERFORM bdc_field USING:
* << Fim da inclusão
'RF05A-NEWKO' t_dados-c_newko,
'BDC_OKCODE' '/00'.
IF NOT t_dados-brnch IS INITIAL.
PERFORM bdc_field USING 'BSEG-BUPLA' t_dados-brnch.
ENDIF.
IF t_dados-agkoa = 'D'.
v_tela = '0301'.
PERFORM bdc_field USING:
'RF05A-NEWBS' '11'.
ELSEIF t_dados-agkoa = 'K'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYGLGF2F01
...
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+6(1) = '-'.
p_itab_oculto-campo = 'BSEG-ZTERM'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
ENDIF.
* >> Início da exclusão: FORM TRATA_STRING_DEBITO
IF v_string+3(1) = '+'.
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_STRING_DEBITO
IF v_string+4(1) = '+'.
* << Fim da inclusão
IF p_t_dados-zfbdt = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-ZFBDT'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-ZFBDT'.
p_t_campo-descricao = text-045.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-zfbdt.
MODIFY p_t_dados TRANSPORTING zfbdt.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM TRATA_STRING_DEBITO
ELSEIF v_string+3(1) = '-'.
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_STRING_DEBITO
ELSEIF v_string+4(1) = '-'.
* << Fim da inclusão
p_itab_oculto-campo = 'BSEG-ZFBDT'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
ENDIF.
IF v_string+5(1) = '+'.
IF p_t_dados-d_valut = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-VALUT'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
...
...
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+49(1) = '-'.
p_itab_oculto-campo = 'COBL-FISTL'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
ENDIF.
* >> Início da exclusão: FORM TRATA_STRING_CREDITO
IF v_string+3(1) = '+'.
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_STRING_CREDITO
IF v_string+4(1) = '+'.
* << Fim da inclusão
IF p_t_dados-zfbdt = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-ZFBDT'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-ZFBDT'.
p_t_campo-descricao = text-045.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-zfbdt.
MODIFY p_t_dados TRANSPORTING zfbdt.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM TRATA_STRING_CREDITO
ELSEIF v_string+3(1) = '-'.
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_STRING_CREDITO
ELSEIF v_string+4(1) = '-'.
* << Fim da inclusão
p_itab_oculto-campo = 'BSEG-ZFBDT'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
ENDIF.
IF v_string+10(1) = '+'.
IF p_t_dados-aufnr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-AUFNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
...