CE PLUS - Nota 002200

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Mercadoria

Data/Hora da Publicação: 04/10/2006 00:00:00

Data/Hora Última Alteração: 20/06/2011 13:04:01

Descrição da Nota: TRATAMENTO PARA MOTIVO DE ESTORNO DA FB08 NA FATURA

Sintoma

Ao estornar a FB08 não está tratando o motivo de acordo com o parâmetro da /PWS/ZYCBT007.

Periodo contábil fechado tem que levar o motivo de estorno 02 e a data do dia. Periodo Aberto tem

que levar o motivo de estorno 01 e a data do lançamento.

 

 

Solução

Fazer tratamento para motivo de estorno da FB08 na Fatura

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

SISTEMA ACUSA ERRO DE MOTIVO AO ESTORNAR FB08 EM VÁRIAS FUNCIONALIDADES.

ESTORNO DE UMA FATURA, SE O MÊS DE LANÇAMENTO ORIGINAL ESTIVER FECHADO

Informações Complementares

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

Nota Número 02200 Data: 04/10/2006 Hora: 09:19:40

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

 

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

Nota Número              : 02200

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00134

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

Referência às notas relacionadas:

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

 

02033  - 00001 - 6.0    - 00024  - ESTORNO DE UMA FATURA, SE O MÊS DE LANÇAMENTO ORIGINAL ESTIVER FE

02158  - 00002 - 6.0    - 00025  - SISTEMA ACUSA ERRO DE MOTIVO AO ESTORNAR FB08 EM VÁRIAS FUNCIONAL

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

TRATAMENTO PARA MOTIVO DE ESTORNO DA FB08 NA FATURA

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

Palavras Chave:

MOTIVO DE ESTORNO - FB08 - FATURA - PARÂMETROS - /PWS/ZYCBT007

PERÍODO CONTÁBIL ABERTO / FECHADO

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

Objetos da nota:

FUNC /PWS/ZYCI_TRANSACAO_FB08_A

FUNC /PWS/ZYGL_MOTIVO_ESTORNO

REPS /PWS/MZYCI003F01

REPS /PWS/MZYCI003F02

REPS /PWS/MZYCI003TOP

REPS /PWS/MZYCI003X01

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_TRANSACAO_FB08_A

 

...

      PERFORM bdc_field  USING:

        'BSIS-BUDAT' v_data_est.

    ENDIF.

    PERFORM bdc_field  USING:

           'RF05A-BELNS' t_dados-belnr,

* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSACAO_FB08_A

           'RF05A-GJAHS' v_date,

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_FB08_A

           'RF05A-GJAHS' t_dados-gjahr,

* << Fim da inclusão

           'BKPF-BUKRS'  t_dados-bukrs,

           'UF05A-STGRD' t_dados-stgrd,

           'BDC_OKCODE'  '=BU'.

    IF t_dados-budat <> '00000000'.

      WRITE: t_dados-budat TO v_data_lanc_char.

...

 

 

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

Modificações efetuadas em FUNC /PWS/ZYGL_MOTIVO_ESTORNO

 

MODIFICAR MÓDULO DE FUNÇÃO: /PWS/ZYGL_MOTIVO_ESTORNO

 

CARACTERÍSTICAS

 

CLASSIFICAÇÃO:

GRUPO DE FUNÇÕES: /PWS/ZYGLGF

TEXTO BREVE: GL -Verifica período antes de atribuir motivo de estorno

 

TIPO DE EXECUÇÃO:

(X) - MÓDULO DE FUNÇÃO NORMAL

     (X) - INÍCIO IMEDIATO

 

IMPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

 

V_DATA TYPE BUDAT                                         X      Data de lançamento no documento

V_BUKRS TYPE BUKRS                                  X      Empresa

V_KOART TYPE T001B-MKOAR                           X      Tp de conta ou entrada genérica

 

EXPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA   TRANSF.  TEXTO BREVE

V_SUBRC TYPE SY-SUBRC             X     Valor retorno, valor de retorno após instruções ABAP

V_GJAHR TYPE /PWS/ZYCBE033-GJAHR  X     Exercício

 

Texto fonte:

 

FUNCTION /PWS/ZYGL_MOTIVO_ESTORNO.

* >> Início da exclusão: FUNCTION /PWS/ZYGL_MOTIVO_ESTORNO

data : v_gjahr    type  t001b-frye1,

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYGL_MOTIVO_ESTORNO

data :

* << Fim da inclusão

       v_monat    type  T001B-FRPE1,

       v_ano      type  bkpf-gjahr .

       v_gjahr = v_data+0(4).

       v_monat = v_data+4(2).

CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'

...

 

...

    v_date                       = v_data

 IMPORTING

    V_YEAR                       = v_ano  .

IF sy-subrc eq 0.

       v_gjahr = v_ano.

* >> Início da exclusão: FUNCTION /PWS/ZYGL_MOTIVO_ESTORNO

else.

       v_gjahr = v_data+0(4).

* << Fim da exclusão

ENDIF.

CALL FUNCTION 'FI_PERIOD_CHECK'

  EXPORTING

   I_BUKRS                = v_bukrs

   i_gjahr                = v_gjahr

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F01

 

...

  SELECT MAX( nrseq ) INTO (v_nrseq) FROM /pws/zycbt119.

  v_count = v_nrseq+0(8) + 1.

  CONCATENATE v_count sy-datum+2(2) INTO /pws/zycbt119-nrseq.

ENDFORM.

FORM reverse_document_fb08.

* >> Início da exclusão: FORM REVERSE_DOCUMENT_FB08

  DATA: v_monat LIKE bsis-monat,

        v_belnr_ant LIKE /pws/zycie006-belnr_p,

        v_subrc TYPE sy-subrc.

* << Fim da exclusão

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

  DATA:

        v_monat LIKE bsis-monat,

        v_belnr_ant LIKE /pws/zycie006-belnr_p.

* << Fim da inclusão

  CLEAR v_erro.

  IF v_parcela = 'X'.

    itab_zycbe033-tabela = '/PWS/ZYCIT132'.

    itab_zycbe033-cpochv = itab_zycit132-nrseq.

    itab_zycbe033-belnr  = itab_zycit132-belnr_p.

...

 

...

           EXPORTING

                v_data  = /pws/zycie006-dtlanc

                v_bukrs = /pws/zycie006-bukrs

                v_koart = 'K'

           IMPORTING

* >> Início da exclusão: FORM REVERSE_DOCUMENT_FB08

                v_subrc = v_subrc.

* << Fim da exclusão

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

                v_subrc = v_subrc

                v_gjahr = itab_zycbe033-gjahr.

* << Fim da inclusão

      IF v_subrc  = 0.

        itab_zycbe033-budat  = itab_zycit132-dt_belnrp.

        itab_zycbe033-stgrd  = /pws/zycbt007-percorr.

      ELSE.

        itab_zycbe033-budat  = sy-datum.

...

 

...

           EXPORTING

                v_data  = /pws/zycie006-dtlanc

                v_bukrs = /pws/zycie006-bukrs

                v_koart = 'K'

           IMPORTING

* >> Início da exclusão: FORM REVERSE_DOCUMENT_FB08

                v_subrc = v_subrc.

* << Fim da exclusão

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

                v_subrc = v_subrc

                v_gjahr = itab_zycbe033-gjahr.

* << Fim da inclusão

      IF v_subrc  = 0.

        itab_zycbe033-budat  = /pws/zycie006-dtlanc.

        itab_zycbe033-stgrd  = /pws/zycbt007-percorr.

      ELSE.

        itab_zycbe033-budat  = sy-datum.

...

 

...

           EXPORTING

                v_data  = itab_zycit132-dt_belnrp

                v_bukrs = /pws/zycie006-bukrs

                v_koart = 'K'

           IMPORTING

* >> Início da exclusão: FORM REVERSE_DOCUMENT_FB08

                v_subrc = v_subrc.

* << Fim da exclusão

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

                v_subrc = v_subrc

                v_gjahr = itab_zycbe033-gjahr.

* << Fim da inclusão

      IF v_subrc  = 0.

        itab_zycbe033-budat  = itab_zycit132-dt_belnrp.

        itab_zycbe033-stgrd  = /pws/zycbt007-percorr.

      else.

        itab_zycbe033-budat  = sy-datum.

...

 

...

           EXPORTING

                v_data  = /pws/zycie006-dtlanc

                v_bukrs = /pws/zycie006-bukrs

                v_koart = 'K'

           IMPORTING

* >> Início da exclusão: FORM REVERSE_DOCUMENT_FB08

                v_subrc = v_subrc.

* << Fim da exclusão

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

                v_subrc = v_subrc

                v_gjahr = itab_zycbe033-gjahr.

* << Fim da inclusão

      IF v_subrc  = 0.

        itab_zycbe033-budat  = /pws/zycie006-dtlanc.

        itab_zycbe033-stgrd  = /pws/zycbt007-percorr.

      ELSE.

        itab_zycbe033-budat  = sy-datum.

...

 

...

  itab_zycbe033-tcode  = 'FB08'.

  itab_zycbe033-bukrs  = /pws/zycie006-bukrs.

  itab_zycbe033-gjahs  = itab_zycbe033-budat+0(4).

  v_monat = itab_zycbe033-budat+4(2).

  APPEND itab_zycbe033.

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

  CALL FUNCTION '/PWS/ZYCI_TRANSACAO_FB08_A'

* << Fim da inclusão

* >> Início da exclusão: FORM REVERSE_DOCUMENT_FB08

  CALL FUNCTION '/PWS/ZYCI_TRANSACAO_FB08'

* << Fim da exclusão

       EXPORTING

            v_modo          = v_modo_bi

       TABLES

            t_dados         = itab_zycbe033

            t_campo         = itab_zycbt034

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F02

 

...

  itab_zycbe033-tabela = '/PWS/ZYCIT006'.

  itab_zycbe033-cpochv = v_cpochv_fb08.

  itab_zycbe033-belnr  = v_belnr_fb08.

  itab_zycbe033-bukrs  = /pws/zycie006-bukrs.

  itab_zycbe033-bldat  = v_bldat_fb08.

* >> Início da exclusão: FORM REVERSE_COCUMENTO_CONTAB_FB08

  itab_zycbe033-budat  = v_bldat_fb08.

  itab_zycbe033-gjahs  = v_bldat_fb08+0(4).

* << Fim da exclusão

  v_belnr_ant          = v_docant_fb08.

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

  CALL FUNCTION '/PWS/ZYGL_MOTIVO_ESTORNO'

       EXPORTING

            v_data  = /pws/zycie006-dtlanc

            v_bukrs = /pws/zycie006-bukrs

            v_koart = 'K'

       IMPORTING

            v_subrc = v_subrc

            v_gjahr = itab_zycbe033-gjahr .

  IF v_subrc  = 0.

    itab_zycbe033-budat  = itab_zycit132-dt_belnrp.

    itab_zycbe033-stgrd  = /pws/zycbt007-percorr.

  ELSE.

    itab_zycbe033-budat  = sy-datum.

    itab_zycbe033-stgrd  = /pws/zycbt007-perencer .

  ENDIF.

* << Fim da inclusão

* >> Início da exclusão: FORM REVERSE_COCUMENTO_CONTAB_FB08

  itab_zycbe033-stgrd  = /pws/zycbt007-percorr.

* << Fim da exclusão

  APPEND itab_zycbe033.

* >> Início da exclusão: FORM REVERSE_COCUMENTO_CONTAB_FB08

  CALL FUNCTION '/PWS/ZYCI_TRANSACAO_FB08'

* << Fim da exclusão

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

  CALL FUNCTION '/PWS/ZYCI_TRANSACAO_FB08_A'

* << Fim da inclusão

       EXPORTING

            v_modo          = v_modo_bi

       TABLES

            t_dados         = itab_zycbe033

            t_campo         = itab_zycbt034

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003TOP

 

...

  v_existe VALUE 'N',

  v_contabilizou,

  v_flag_sequencial,

  v_total_desp(18),

  v_refer,

* >> Início da exclusão:

  v_subrc,

* << Fim da exclusão

  v_flag_sele,

  e_status,

  v_sele_zycit003,

  v_tot_deducoes LIKE /pws/zycie006-vltotal,

  v_banco(3),

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003X01

 

...

  v_zuonr    like bseg-zuonr,

  v_xblnr   like itab_zycbe033-xblnr,

  v_sgtxt   like  bseg-sgtxt        ,

  v_bktxt       LIKE  /pws/zycbt007-bktxt,

  v_resposta                  .

* >> Início da inclusão:

DATA: v_monat TYPE bsis-monat,

      v_subrc TYPE sy-subrc,

      v_gjahr TYPE /pws/zycbe033-gjahr .

* << Fim da inclusão

data: end of common part.