CE PLUS - Nota 010709

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Mercadoria

Data/Hora da Publicação: 04/11/2010 00:00:00

Data/Hora Última Alteração: 22/02/2011 16:22:48

Descrição da Nota: ELIMINA FATURA MESMO COM ERRO NA CONTABILIZAÇÃO

Sintoma

Ao tentar eliminar a fatura com pagamento antecipado ocorreu um erro no lançamento da F-43 e mesmo

sem efetuar a contabilização a fatura foi eliminada.

 

 

Solução

Adicionado tratamento para não eliminar a fatura caso ocorra erro na contabilização.

Ajustado programa para preencher o centro de lucro no lançamento da F-43 no estrono de fatura com

pagamento antecipado.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

PREENCHE DIVISÃO NO ESTORNO DA FATURA COM PAGAMENTO ANTECIPADO

NECESSÁRIO CRIAR CHAMADAS DE EXITS EM VÁRIOS PONTOS DA FATURA

AJUSTE PARA ESTORNO DE FATURA COM VINCULAÇÃO NO CAMBIO

NECESSÁRIO COMPARTILHAR DECLARAÇÃO DE TABELAS E VARIÁVEIS.

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 10709 Data: 04/11/2010 Hora: 10:41:26

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 10709

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 8.0

Pacote                   : 00005

Agrupamento              : 00046

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

04474  - 00001 - 7.0    - 00002  - NECESSÁRIO CRIAR CHAMADAS DE EXITS EM VÁRIOS PONTOS DA FATURA

06709  - 00002 - 7.0    - 00006  - PREENCHE DIVISÃO NO ESTORNO DA FATURA COM PAGAMENTO ANTECIPADO

07383  - 00003 - 7.0    - 00007  - AJUSTE PARA ESTORNO DE FATURA COM VINCULAÇÃO NO CAMBIO

09519  - 00004 - 8.0    - 00002  - NECESSÁRIO COMPARTILHAR DECLARAÇÃO DE TABELAS E VARIÁVEIS.

----------------------------------------------------------------------------------------------------

ELIMINA FATURA MESMO COM ERRO NA CONTABILIZAÇÃO

----------------------------------------------------------------------------------------------------

Palavras Chave:

ELIMINAR - FATURA - PAGAMENTO - ANTECIPADO - ERRO - CONTABILIZAÇÃO -

CENTRO - LUCRO - /PWS/SAPMZYCI003 - PRCTR

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/MZYCI003F02

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI003F02

 

...

FORM estorno_pag_antecipado.

  DATA itab_bseg TYPE bseg OCCURS 0 WITH HEADER LINE.

* >> Início da inclusão: FORM ESTORNO_PAG_ANTECIPADO

  CLEAR v_stop.

* << Fim da inclusão

  CHECK NOT itab_zycit003[] IS INITIAL

    AND v_existe_di NE 'S'.

  SELECT * FROM /pws/zycbt117

       INTO TABLE itab_zycbt117

       FOR ALL ENTRIES IN itab_zycit003

       WHERE ebeln = itab_zycit003-ebeln

         AND status NE 'E'.                             "#EC CI_NOFIELD

  IF sy-subrc EQ 0.

    IF itab_zycit132[] IS INITIAL.

      SELECT SINGLE *

...

 

...

FORM fill_date_f_51_pag_antecipado TABLES p_itab_bseg STRUCTURE bseg.

* >> Início da inclusão: FORM FILL_DATE_F_51_PAG_ANTECIPADO

  IF v_stop = 'X'.

    EXIT.

  ENDIF.

* << Fim da inclusão

  CLEAR v_conta.

  READ TABLE p_itab_bseg INDEX 1.

  SELECT SINGLE blart

  FROM bkpf

  INTO itab_zycbe033-blart

  WHERE belnr EQ p_itab_bseg-belnr

    AND gjahr EQ p_itab_bseg-gjahr

    AND bukrs EQ p_itab_bseg-bukrs.

  itab_zycbe033-waers = /pws/zycie006-waers.

  itab_zycbe033-bukrs = /pws/zycie006-bukrs.

...

 

...

                                     cpochv  = /pws/zycie006-nrseq

                                     tpmsg   = 'S'.

    IF sy-subrc EQ 0 AND NOT itab_zycbt032-belnr IS INITIAL.

      MESSAGE i010 WITH itab_zycbt032-belnr.

      PERFORM clear_date_batch.

    ELSEIF sy-subrc NE 0.

      LOOP AT itab_zycbt032.

        MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                          itab_zycbt032-msg+50(50).

      ENDLOOP.

* >> Início da inclusão: FORM FILL_DATE_F_51_PAG_ANTECIPADO

      v_stop = 'X'.

* << Fim da inclusão

      itab_zycbe033-stgrd  = /pws/zycbt007-percorr.

      itab_zycbe033-cpochv = /pws/zycie006-nrseq.

      itab_zycbe033-bukrs  = /pws/zycie006-bukrs.

      itab_zycbe033-tabela = '/PWS/ZYCIT006'.

      itab_zycbe033-budat  = sy-datum.

      itab_zycbe033-belnr  = v_belnr.

      itab_zycbe033-tcode  = 'FB08'.

      itab_zycbe033-gjahs  = sy-datum+0(4).

      APPEND itab_zycbe033.

      CALL FUNCTION '/PWS/ZYCI_TRANSACAO_FB08_A'

...

 

...

FORM fill_date_f-43_pag_antecipado TABLES p_itab_bseg STRUCTURE bseg.

  LOOP AT p_itab_bseg.

    MOVE-CORRESPONDING p_itab_bseg TO itab_contas.

* >> Início da inclusão: FORM FILL_DATE_F-43_PAG_ANTECIPADO

    itab_contas-c_prctr = itab_contas-d_prctr = p_itab_bseg-prctr.

* << Fim da inclusão

    itab_contas-c_gsber =

    itab_contas-d_gsber = p_itab_bseg-gsber.

    IF p_itab_bseg-koart EQ 'K'.

      MOVE: '21' TO itab_contas-bschl,

      p_itab_bseg-lifnr  TO itab_contas-d_newko.

    ELSE.

      MOVE: '50' TO itab_contas-bschl,

            p_itab_bseg-hkont  TO itab_contas-d_newko.

    ENDIF.

    APPEND itab_contas.

...

 

...

                                     tpmsg  = 'S'.

    IF sy-subrc EQ 0 AND NOT itab_zycbt032-belnr IS INITIAL.

      MESSAGE i010 WITH itab_zycbt032-belnr.

      v_belnr = itab_zycbt032-belnr.

      PERFORM clear_date_batch.

    ELSEIF sy-subrc NE 0.

      LOOP AT itab_zycbt032.

        MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                          itab_zycbt032-msg+50(50).

      ENDLOOP.

* >> Início da inclusão: FORM FILL_DATE_F-43_PAG_ANTECIPADO

      v_stop = 'X'.

* << Fim da inclusão

      PERFORM clear_date_batch.

      EXIT.

    ENDIF.

  ELSEIF e_subrc EQ '8'.

    EXIT.

  ELSE.

    LOOP AT itab_zycbt032.

      MESSAGE i015 WITH itab_zycbt032-msg+0(50)

                        itab_zycbt032-msg+50(50).

    ENDLOOP.

...