CE PLUS - Nota 003750

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Agrupamento de Embarque

Data/Hora da Publicação: 24/05/2007 00:00:00

Data/Hora Última Alteração: 21/02/2011 17:21:24

Descrição da Nota: VERIFICAÇÃO DE EXERCÍCIO FISCAL NO AGRUPAMENTO DO EMBARQUE

Sintoma

Antes de executar o estorno da compensação dos documentos, é necessário identificar o exercício

fiscal do lançamento e verificar se o mesmo encontra-se aberto.

 

 

Solução

Substituição das chamadas da função standard 'FI_PERIOD_CHECK' e 'DETERMINE_PERIOD' pela chamada da

função /PWS/ZYCE_CHECA_PERIODO_FISCAL' que agrupa as verificações das duas funções citadas.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ESTORNO DE AGRUPAMENTO DE EMBARQUE

ESTORNO DO CÂMBIO QUANDO DATA DO EMBARQUE É MAIOR DO QUE DATA DO DIA

FUNÇÃO PARA DETERMINAÇÃO DE PERÍODO CONTÁBIL E EXERCÍCIO FISCAL

Informações Complementares

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

Nota Número 03750 Data: 24/05/2007 Hora: 14:37:22

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

 

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

Nota Número              : 03750

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00001

Agrupamento              : 00167

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

Referência às notas relacionadas:

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

 

00781  - 00001 - 6.0    - 00022  - ESTORNO DE AGRUPAMENTO DE EMBARQUE

01302  - 00002 - 6.0    - 00023  - ESTORNO DO CÂMBIO QUANDO DATA DO EMBARQUE É MAIOR DO QUE DATA DO

03560  - 00003 - 7.0    - 00001  - FUNÇÃO PARA DETERMINAÇÃO DE PERÍODO CONTÁBIL E EXERCÍCIO FISCAL

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

VERIFICAÇÃO DE EXERCÍCIO FISCAL NO AGRUPAMENTO DO EMBARQUE

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

Palavras Chave:

AGRUPAMENTO, EMBARQUE, FUNÇÃO, PERÍODO, FISCAL, EXERCÍCIO

VERIFICAÇÃO, CONTÁBIL

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

Objetos da nota:

REPS /PWS/ZYCER306

 

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

Modificações efetuadas em REPS /PWS/ZYCER306

 

...

  itab_zycbt033-tabela = '/PWS/ZYCBT030'.

  itab_zycbt033-cpochv = wa_zycet001-nrseq.

  itab_zycbt033-belnr  = itab_zycbt030-belnr.

  itab_zycbt033-bukrs  = wa_zycet001-bukrs.

  itab_zycbt033-budat  = itab_zycbt030-budat.

  READ TABLE itab_zycbt030_aux

    WITH KEY belnr = itab_zycbt030-belnr.

  APPEND itab_zycbt033.

ENDFORM.

FORM fill_date_fb08.

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

  DATA: wa_per_fiscal TYPE ty_per_fiscal.

* << Fim da exclusão

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

  DATA: wa_per_fiscal TYPE ty_per_fiscal,

        v_retorno(2)  TYPE c,

        v_gjahr       TYPE t001b-frye1.

* << Fim da inclusão

  CLEAR: itab_zycbt033, itab_zycbt032.

  REFRESH: itab_zycbt033, itab_zycbt032.

  CLEAR: itab_zycee005.

  REFRESH: itab_zycee005.

  itab_zycbt033-mandt  = sy-mandt.

  itab_zycbt033-tcode  = 'FB08'.

  itab_zycbt033-cpochv = wa_zycet001-nrseq.

  itab_zycbt033-belnr  = itab_zycbt030-belnr.

  itab_zycbt033-bukrs  = wa_zycet001-bukrs.

  itab_zycbt033-budat  = wa_zycet001-dtemb.

...

 

...

  itab_zycee005-tabela = '/PWS/ZYCBT030'.

  itab_zycee005-cpochv = wa_zycet001-nrseq.

  itab_zycee005-belnr  = itab_zycbt030-belnr.

  itab_zycee005-bukrs  = wa_zycet001-bukrs.

  READ TABLE itab_zycbt030_aux

    WITH KEY belnr = itab_zycbt030-belnr.

  IF sy-subrc IS INITIAL.

    itab_zycee005-budat = itab_zycbt030_aux-dtbelnr.

  ENDIF.

  itab_zycee005-bldat = itab_zycee005-budat.

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

  itab_zycee005-gjahs = itab_zycee005-budat(4).

* << Fim da exclusão

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

  CALL FUNCTION '/PWS/ZYCE_CHECA_PERIODO_FISCAL'

       EXPORTING

            v_bukrs                = itab_zycee005-bukrs

            v_date                 = itab_zycbt030_aux-budat

            v_koart                = '+'

       IMPORTING

            v_year                 = v_gjahr

            v_stgrd                = v_retorno

       EXCEPTIONS

            variante_de_exercicio  = 1

            data_nao_encontrada    = 2

            empresa_nao_encontrada = 3

            period_in_not_valid    = 4

            period_not_assigned    = 5

            version_undefined      = 6

            OTHERS                 = 7.

* << Fim da inclusão

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

  PERFORM checa_periodo_fiscal CHANGING wa_per_fiscal.

* << Fim da exclusão

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

   itab_zycee005-gjahs = v_gjahr.

* << Fim da inclusão

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

  CALL FUNCTION 'FI_PERIOD_CHECK'

       EXPORTING

            i_bukrs          = itab_zycee005-bukrs

            i_gjahr          = wa_per_fiscal-ano

            i_koart          = '+'

            i_monat          = wa_per_fiscal-mes

       EXCEPTIONS

            error_period     = 1

            error_period_acc = 2

            OTHERS           = 3.

  IF sy-subrc = 0.

* << Fim da exclusão

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

    IF v_retorno = '01'.

* << Fim da inclusão

    itab_zycee005-stgrd = '01'.

  ELSE.

    itab_zycee005-stgrd = '02'.

    itab_zycee005-budat = sy-datlo.

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

    ENDIF.

* << Fim da inclusão

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

  ENDIF.

* << Fim da exclusão

  APPEND itab_zycee005.

ENDFORM.

FORM executa_fbra.

  IMPORT v_mode FROM MEMORY ID '035'.

  FREE MEMORY ID '035'.

  CALL FUNCTION '/PWS/ZYCB_TRANSACAO_FBRA'

       EXPORTING

            v_modo          = v_mode

       TABLES

            t_dados         = itab_zycbt033

...

 

...

      SELECT SINGLE dtbl

          FROM /pws/zycet047

          INTO p_dtdocto

          WHERE nrseq = p_wa_zycet001-nrseq.

    WHEN 'V'.

      p_dtdocto = p_wa_zycet001-dtaverb.

    WHEN 'S'.

      p_dtdocto = p_wa_zycet001-dtcruze.

  ENDCASE.

ENDFORM.

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

FORM checa_periodo_fiscal CHANGING p_fiscal TYPE ty_per_fiscal.

  DATA: v_periv TYPE t001-periv.

  SELECT SINGLE periv

   FROM t001

   INTO v_periv

   WHERE bukrs EQ wa_zycet001-bukrs.

  CHECK sy-subrc EQ 0.

  CALL FUNCTION 'DETERMINE_PERIOD'

       EXPORTING

            date                = itab_zycbt030_aux-budat

            version             = v_periv

       IMPORTING

            period              = p_fiscal-mes

            year                = p_fiscal-ano

       EXCEPTIONS

            period_in_not_valid = 1

            period_not_assigned = 2

            version_undefined   = 3

            OTHERS              = 4.

ENDFORM.

* << Fim da exclusão

FORM selecionar_param_conversao

     CHANGING p_moeda_destino TYPE t001-waers

              p_categoria     TYPE /pws/zycbt011-ctmoed.

  SELECT SINGLE waers

   FROM t001

   INTO p_moeda_destino

   WHERE bukrs EQ wa_zycet001-bukrs.

  SELECT SINGLE ctmoed

   FROM /pws/zycbt011

   INTO p_categoria

...