CE PLUS - Nota 003863

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Prestação de Contas

Data/Hora da Publicação: 06/06/2007 00:00:00

Data/Hora Última Alteração: 09/03/2010 09:45:15

Descrição da Nota: NECESSÁRIA UMA EXIT PARA RETENÇÃO DE IMPOSTOS NA PRESTAÇÃO DE CONTAS.

Sintoma

 

Abertura de Exit para retenção de impostos na prestação de contas.

 

Solução

 

criada a exit PRT011 antes da chamada da função de imposto.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 03863 Data: 06/06/2007 Hora: 15:49:31

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

 

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

Nota Número              : 03863

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00002

Agrupamento              : 00002

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

NECESSÁRIA UMA EXIT PARA RETENÇÃO DE IMPOSTOS NA PRESTAÇÃO DE CONTAS.

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

Palavras Chave:

EXIT  - RETENÇÃO DE IMPOSTOS - PRESTAÇÃO DE CONTAS -

 

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

Objetos da nota:

REPS /PWS/MZYCI007F02

REPS /PWS/MZYCI007TOP

REPS /PWS/MZYCI007X01

 

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

Modificações efetuadas em REPS /PWS/MZYCI007F02

 

...

      AND witht EQ v_catis.

    IF sy-subrc EQ 0.

      MOVE 'X' TO lfbw-wt_subjct.

    ENDIF.

  ENDIF.

  IF lfbw-wt_subjct EQ 'X' AND v_xqfor EQ ' '.

    v_impostos ='S'.

  ENDIF.

ENDFORM.

FORM existe_imposto.

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

  DATA: itab_despesa LIKE /pws/zygle370 OCCURS 0 WITH HEADER LINE.

* << Fim da exclusão

  REFRESH itab_despesa.

  CLEAR itab_despesa.

  LOOP AT it_zycit027_aux WHERE NOT vldp IS initial.

    MOVE: it_zycit027_aux-tpdesp TO itab_despesa-cod_desp,

          it_zycit027_aux-vldp   TO itab_despesa-vl_desp.

    APPEND itab_despesa.

  ENDLOOP.

  IF adrc-region IS INITIAL.

    CLEAR: j_1bbranch, adrc.

    SELECT SINGLE * FROM j_1bbranch

           WHERE bukrs  = /pws/zycie026-bukrs

             AND branch = /pws/zycie026-j_1bbranch.

    SELECT SINGLE * FROM adrc WHERE addrnumber = j_1bbranch-adrnr.

  ENDIF.

  CLEAR itab_imposto. REFRESH itab_imposto.

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

  e_subrc = 0 .

  PERFORM verifica_exit USING 'D'

                       '/PWS/SAPMZYCI007'

                       'PRT011'.

  CLEAR itab_zyglt100 .

  READ TABLE itab_zyglt100 WITH KEY zexit = 'PRT011'.

  IF NOT itab_zyglt100-zexit_ativa IS INITIAL.

    PERFORM (itab_zyglt100-formulario) IN PROGRAM

        (itab_zyglt100-programa)  IF FOUND.

  ELSE.

* << Fim da inclusão

  CALL FUNCTION '/PWS/ZYGL_IMPOSTO'

       EXPORTING

            p_regio            = adrc-region

            p_land1            = t001-land1

            p_bukrs            = /pws/zycie026-bukrs

            p_lifnr            = /pws/zycie026-despach

            p_werks            = /pws/zycie026-werks

            p_cod_mod          = 'D'

            p_okcode           = sy-ucomm

       TABLES

            itab_despesa       = itab_despesa

            itab_imposto       = itab_imposto

            itab_with_item_aux = itab_with_item

            itab_bkpf_aux      = itab_bkpf

       EXCEPTIONS

            centro_em_branco   = 1

            OTHERS             = 2.

  IF sy-subrc <> 0.

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

ENDFORM.

FORM discforn.

  SELECT SINGLE name1

         INTO v_desc_forn

         FROM lfa1

         WHERE lifnr  = /pws/zycie001-despach.

  IF sy-tcode EQ '/PWS/ZYCI007_L' OR sy-tcode EQ '/PWS/ZYCI007_A'.

    SELECT SINGLE name1

       INTO v_desc_forn

       FROM lfa1

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI007TOP

 

...

      v_banco        LIKE /pws/zyglt316-codaux1,

      v_kostl        LIKE /pws/zyglt316-ktosl,

      v_werks        LIKE /pws/zycit003-werks,

      v_aux1         LIKE /pws/zyglt316-codaux1,

      v_aux2         LIKE /pws/zycit019-codigo,

      v_forn(15)     TYPE c,

      v_irar TYPE c,

      v_check(1),

      v_xqfor        LIKE t059z-xqfor,

      itab_t059fb    LIKE t059fb    OCCURS 0 WITH HEADER LINE,

* >> Início da exclusão:

      itab_with_item LIKE with_item OCCURS 0 WITH HEADER LINE,

      itab_bkpf      LIKE bkpf      OCCURS 0 WITH HEADER LINE,

* << Fim da exclusão

      v_qsshh        LIKE with_item-wt_qsshh,

      v_qbshh        LIKE with_item-wt_qbshh,

      v_mes(2)       TYPE c       ,

      v_data         LIKE sy-datlo,

      i TYPE i,

      v_vldif2       LIKE /pws/zycie026-vldf,

      v_vlpres       LIKE /pws/zycie026-totdep,

        v_total_dep LIKE /pws/zycie026-totdep  .

 

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

Modificações efetuadas em REPS /PWS/MZYCI007X01

 

...

DATA: BEGIN OF it_bsak OCCURS 0,

        bukrs  LIKE  bsak-bukrs,

        lifnr  LIKE  bsak-lifnr,

        augbl  LIKE  bsak-augbl,

        zuonr  LIKE  bsak-zuonr,

        belnr  LIKE  bsak-belnr,

      END OF it_bsak.

DATA: BEGIN  OF  it_bsik OCCURS 0.

        INCLUDE STRUCTURE bsik.

DATA: END OF  it_bsik.

* >> Início da inclusão:

DATA: itab_despesa LIKE /pws/zygle370 OCCURS 0 WITH HEADER LINE,

      itab_with_item LIKE with_item OCCURS 0 WITH HEADER LINE,

      itab_bkpf      LIKE bkpf      OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

DATA:

     ok_code     LIKE  sy-ucomm,

     v_sgtxt LIKE bseg-sgtxt,

     v_xblnr LIKE bkpf-xblnr,

     v_zuonr LIKE bseg-zuonr,

     v_impostos             ,

     v_ctarazao,

     v_modo_bi    VALUE 'N',

     e_subrc      VALUE '0',

     v_prt(4)              ,

...