CE PLUS - Nota 006200

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.

Versões Tratadas

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.

...