Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal
Data/Hora da Publicação: 19/04/2012 00:00:00
Data/Hora Última Alteração: 04/04/2013 11:32:45
Descrição da Nota: CORREÇÃO E ABERTURA DE EXIT PARA TRATAMENTO DE FUNDAP.
Sintoma
Valores de fundap não batiam com cálculos do cliente.
Solução
Criada chamada de exit na DI e na NF para cálculos de valores específicos.
9.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 12123 Data: 19/04/2012 Hora: 10:05:15
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 12123
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 8.0
Pacote : 00011
Agrupamento : 00112
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
04557 - 00001 - 7.0 - 00003 - REDUÇÃO DE BASE DE IMPOSTO NOTA FISCAL
05131 - 00002 - 7.0 - 00003 - SISTEMA NÃO RESPEITA REDUÇÃO NA BASE DO ICMS, AO INFORMAR A REDUÇ
07026 - 00003 - 7.0 - 00006 - ARREDONDAMENTO DA NOTA FISCAL VALORES DE IMPOSTOS X BASE DE CÁLCU
08151 - 00004 - 7.0 - 00008 - BASE DE IPI E ICMS INCORRETOS NA NF EM PROCESSOS FUNDAP
10590 - 00005 - 8.0 - 00004 - RATEIO DE DESPESA POR CIF ESTÁ ERRADO NO CALC. DA BASE DE ICMS
11617 - 00006 - 8.0 - 00009 - TRAT. PARA ARRED. VALOR DA NOTA E PREENCH. LINHA II NA NOTA DE RE
----------------------------------------------------------------------------------------------------
CORREÇÃO E ABERTURA DE EXIT PARA TRATAMENTO DE FUNDAP.
----------------------------------------------------------------------------------------------------
Palavras Chave:
VALORES DUPLICADOS - FUNDAP - TRATAMENTO ESPECIFICO
ZYGLT100 - EXIT
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI016F01
REPS /PWS/MZYCI016TOP
REPS /PWS/MZYCI016X01
REPS /PWS/MZYCI023F03
REPS /PWS/MZYCI023TOP
REPS /PWS/MZYCI023X01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016F01
...
IF /pws/zycit093 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit093
WHERE nrseqce = /pws/zycit085-nrbl.
ENDIF.
wa_zycit100 = itab_zycit100.
* >> Início da inclusão: FORM ITENS_NFNEW
IF v_fundap NE 'X'.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCI_AJUSTE_IMP_NF'
EXPORTING
vlunit = v_unitf
zycit003 = itab_zycit003
zycit062 = /pws/zycit062
tpdecl = /pws/zycit001-tpdecl
inco = /pws/zycit031-inco1_ci
zycit085 = /pws/zycit085
zycit093 = /pws/zycit093
zycit100 = wa_zycit100
TABLES
t_zycit003 = itab_zycit003[]
CHANGING
zycee007 = it_zycee007.
* >> Início da inclusão: FORM ITENS_NFNEW
ENDIF.
* << Fim da inclusão
ENDIF.
...
...
IF /pws/zycit093 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit093
WHERE nrseqce = /pws/zycit085-nrbl.
ENDIF.
wa_zycit100 = itab_zycit100.
* >> Início da inclusão: FORM ITENS_NFRNEW
IF v_fundap NE 'X'.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCI_AJUSTE_IMP_NF'
EXPORTING
vlunit = v_unitf
zycit003 = itab_zycit003
zycit062 = /pws/zycit062
tpdecl = /pws/zycit001-tpdecl
inco = /pws/zycit031-inco1_ci
zycit085 = /pws/zycit085
zycit093 = /pws/zycit093
zycit100 = wa_zycit100
TABLES
t_zycit003 = itab_zycit003[]
CHANGING
zycee007 = it_zycee007.
* >> Início da inclusão: FORM ITENS_NFRNEW
ENDIF.
* << Fim da inclusão
ENDIF.
...
...
FORM valores_fundap.
READ TABLE itab_zycit480 WITH KEY ebeln = itab_zycit042-ebeln
ebelp = itab_zycit042-ebelp.
IF sy-subrc EQ 0.
* >> Início da exclusão: FORM VALORES_FUNDAP
it_zycee007-netoth = itab_zycit480-vl_desp_acess.
* << Fim da exclusão
...
...
FORM valores_fundap_r.
CLEAR itab_zycit398 .
REFRESH itab_zycit398.
READ TABLE itab_zycit480r WITH KEY ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
IF sy-subrc EQ 0.
* >> Início da exclusão: FORM VALORES_FUNDAP_R
it_zycee007-netoth = itab_zycit480r-vl_desp_acess.
* << Fim da exclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016TOP
...
* >> Início da exclusão:
/pws/zycie085,
/pws/zycit085,
* << Fim da exclusão
...
...
* >> Início da exclusão:
DATA: BEGIN OF itab_zycit049 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit049.
DATA: codigo LIKE /pws/zycit019-codigo.
DATA: END OF itab_zycit049.
DATA: BEGIN OF itab_zycit019 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit019.
DATA: END OF itab_zycit019.
DATA: BEGIN OF itab_zycit020 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit020.
DATA: END OF itab_zycit020.
DATA BEGIN OF itab_zycit019_aux OCCURS 0.
INCLUDE STRUCTURE itab_zycit019.
DATA END OF itab_zycit019_aux.
DATA BEGIN OF itab_zycit020_aux OCCURS 0.
INCLUDE STRUCTURE itab_zycit020.
DATA END OF itab_zycit020_aux.
* << Fim da exclusão
...
...
* >> Início da exclusão:
v_vlreal LIKE /pws/zycit053-vlreal,
* << Fim da exclusão
...
...
* >> Início da exclusão:
v_urf ,
v_tot_plan LIKE /pws/zycit003-netpr,
v_tot_real LIKE /pws/zycit003-vlreal,
v_lines LIKE sy-tabix.
* << Fim da exclusão
* >> Início da inclusão:
v_urf .
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016X01
...
* >> Início da inclusão:
TABLES:
/pws/zycie085,
/pws/zycit085.
* << Fim da inclusão
DATA: BEGIN OF COMMON PART a.
...
...
* >> Início da inclusão:
DATA : v_tntgew TYPE /pws/zycie003-ntgew,
v_vlfobr TYPE /pws/zycit100-vlfob,
v_vltfrer TYPE /pws/zycit100-vlfre,
v_vltsegr TYPE /pws/zycit100-vlseg,
v_vlfrer TYPE /pws/zycit100-vlfre,
v_vlsegr TYPE /pws/zycit085-vlseg,
v_tot_plan LIKE /pws/zycit003-netpr,
v_tot_real LIKE /pws/zycit003-vlreal,
v_vlreal LIKE /pws/zycit053-vlreal,
v_lines LIKE sy-tabix.
data: wa_zycit019 type /pws/zycit019,
wa_zycit020 type /pws/zycit020,
wa_zycit039 type /pws/zycit039.
DATA: BEGIN OF itab_zycit049 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit049.
DATA: codigo LIKE /pws/zycit019-codigo.
DATA: END OF itab_zycit049.
DATA: BEGIN OF itab_zycit019 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit019.
DATA: END OF itab_zycit019.
DATA: BEGIN OF itab_zycit020 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit020.
DATA: END OF itab_zycit020.
DATA BEGIN OF itab_zycit019_aux OCCURS 0.
INCLUDE STRUCTURE itab_zycit019.
DATA END OF itab_zycit019_aux.
DATA BEGIN OF itab_zycit020_aux OCCURS 0.
INCLUDE STRUCTURE itab_zycit020.
DATA END OF itab_zycit020_aux.
* << Fim da inclusão
DATA: END OF COMMON PART a.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F03
...
FORM load_iicms USING p_tipo.
* >> Início da exclusão: FORM LOAD_IICMS
DATA:
v_vlfobr TYPE /pws/zycit100-vlfob,
v_vltfrer TYPE /pws/zycit100-vlfre,
v_vltsegr TYPE /pws/zycit100-vlseg,
v_vlfrer TYPE /pws/zycit100-vlfre,
v_vlsegr TYPE /pws/zycit085-vlseg.
DATA: v_advicms_c4 TYPE p DECIMALS 4.
DATA: v_sisc_adicao LIKE /pws/zycie049-vldp.
DATA v_trunc TYPE p DECIMALS 3.
DATA: v_casasd TYPE /pws/zycit036-vlreal,
v_casasd2 TYPE /pws/zycit036-vlreal,
v_casasd3 TYPE /pws/zycit036-vlreal,
v_casasd4 TYPE /pws/zycit036-vlreal,
v_casasd5 TYPE /pws/zycit036-vlreal.
* << Fim da exclusão
...
...
IF NOT /pws/zycie100a-reduzidaipi IS INITIAL.
v_advipi = ( /pws/zycie100a-reduzidaipi / 100 ).
ELSE.
v_advipi = ( /pws/zycie003-advalipi / 100 ).
ENDIF.
IF /pws/zycit062-bs_pis_cof IS INITIAL.
IF NOT /pws/zycie003-basred IS INITIAL AND
NOT /pws/zycie003-basred EQ '100'.
v_advicms = ( ( /pws/zycie003-advalicms / 100 ) *
( /pws/zycie003-basred / 100 ) ) .
* >> Início da inclusão: FORM LOAD_IICMS
if /pws/zycit062-icms_base_red_ar = 'X'.
* << Fim da inclusão
v_trunc = v_advicms.
v_advicms = v_trunc.
* >> Início da inclusão: FORM LOAD_IICMS
endif.
* << Fim da inclusão
ELSE.
v_advicms = ( /pws/zycie003-advalicms / 100 ).
ENDIF.
ELSE.
v_advicms = ( /pws/zycie003-advalicms / 100 ).
...
...
t_icmsbs - a_iicalc.
ENDIF.
IF '56' CA /pws/zycie100a-codregtriipi .
t_icmsbs_d2 = t_icmsbs =
t_icmsbs - a_ipidevi.
ENDIF.
IF '56' CA /pws/zycie100a-codregtripiscofi .
t_icmsbs_d2 = t_icmsbs =
t_icmsbs - a_piscalc - a_cofcalc.
ENDIF.
* >> Início da inclusão: FORM LOAD_IICMS
ENDIF.
ENDIF.
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI023'
'DI023'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY zexit = 'DI023' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) if found.
* << Fim da inclusão
ENDIF.
ENDIF.
IF /pws/zycie100a-baseicms LT 0.
CLEAR itab_zycit100-baseicms.
ENDIF.
IF NOT /pws/zycit062-bs_pis_cof IS INITIAL.
IF NOT /pws/zycie003-basred IS INITIAL AND
NOT /pws/zycie003-basred EQ '100'.
v_advicms = ( ( /pws/zycie003-advalicms / 100 ) *
( /pws/zycie003-basred / 100 ) ) .
* >> Início da inclusão: FORM LOAD_IICMS
if /pws/zycit062-icms_base_red_ar = 'X'.
* << Fim da inclusão
v_trunc = v_advicms.
v_advicms = v_trunc.
* >> Início da inclusão: FORM LOAD_IICMS
endif.
* << Fim da inclusão
ENDIF.
ENDIF.
IF NOT /pws/zycie003-advalicms IS INITIAL AND
NOT /pws/zycie100a-icms_dif EQ 'X'.
IF /pws/zycit062-icms_base_red_ar EQ 'X'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023TOP
...
* >> Início da exclusão:
v_tot_plan LIKE /pws/zycit003-netpr,
v_it_plan LIKE /pws/zycit003-netpr, "#EC NEEDED
* << Fim da exclusão
...
...
* >> Início da exclusão:
v_tntgew LIKE /pws/zycie003-ntgew,
* << Fim da exclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023X01
...
* >> Início da inclusão:
DATA:
v_vlfobr TYPE /pws/zycit100-vlfob,
v_vltfrer TYPE /pws/zycit100-vlfre,
v_vltsegr TYPE /pws/zycit100-vlseg,
v_vlfrer TYPE /pws/zycit100-vlfre,
v_vlsegr TYPE /pws/zycit085-vlseg.
DATA: v_advicms_c4 TYPE p DECIMALS 4.
DATA: v_sisc_adicao LIKE /pws/zycie049-vldp.
DATA v_trunc TYPE p DECIMALS 3.
DATA: v_casasd TYPE /pws/zycit036-vlreal,
v_casasd2 TYPE /pws/zycit036-vlreal,
v_casasd3 TYPE /pws/zycit036-vlreal,
v_casasd4 TYPE /pws/zycit036-vlreal,
v_casasd5 TYPE /pws/zycit036-vlreal,
v_tntgew LIKE /pws/zycie003-ntgew,
v_tot_plan LIKE /pws/zycit003-netpr,
v_it_plan LIKE /pws/zycit003-netpr.
* << Fim da inclusão
DATA: END OF COMMON PART.