Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal
Data/Hora da Publicação: 25/07/2008 00:00:00
Data/Hora Última Alteração: 23/02/2011 09:17:27
Descrição da Nota: ARREDONDAMENTO DA NOTA FISCAL VALORES DE IMPOSTOS X BASE DE CÁLCULO ICMS
Sintoma
Arredondamento da nota fiscal Valores de impostos x base de cálculo ICMS. Necessário desenvolvimento
para tratar diferença de centavos entre valores de impostos e base de icms.
Solução
Criado desenvolvimento para tratar diferença de centavos entre valores de impostos e base de icms.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 07026 Data: 25/07/2008 Hora: 11:10:19
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 07026
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00006
Agrupamento : 00057
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01227 - 00001 - 6.0 - 00023 - VISUALIZAÇÃO DO RATEIO DE DESPESAS DA DI ESTÁ INCORRETO
04488 - 00002 - 7.0 - 00002 - NOTA FISCAL REMESSA - VALORES ERRADOS DE IPI E ICMS
04557 - 00003 - 7.0 - 00003 - REDUÇÃO DE BASE DE IMPOSTO NOTA FISCAL
04922 - 00004 - 7.0 - 00003 - DI NAO CALCULA CORRETAMENTE ICMS QUANDO REDUZIDO
05354 - 00005 - 7.0 - 00003 - NECESSÁRIA EXIT AO CALCULAR ICMS
06608 - 00006 - 7.0 - 00005 - INCLUSÃO DE VERIFICAÇÃO DO NUMERO DA DECLARAÇÃO DA DI
----------------------------------------------------------------------------------------------------
ARREDONDAMENTO DA NOTA FISCAL VALORES DE IMPOSTOS X BASE DE CÁLCULO ICMS
----------------------------------------------------------------------------------------------------
Palavras Chave:
ARREDONDAMENTO - NOTA FISCAL - IMPOSTOS - BASE ICMS - MELHORIA
----------------------------------------------------------------------------------------------------
Objetos da nota:
DTEL /PWS/ZYCIL865
FUGR /PWS/ZYCIGF2
REPS /PWS/MZYCI016F01
REPS /PWS/MZYCI016X01
REPS /PWS/MZYCI023F01
REPS /PWS/MZYCI023F03
REPS /PWS/MZYCI023X01
TABD /PWS/ZYCIT062
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCIL865
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCIL865
Classe de desenvolvimento: /PWS/ZYGL
Idioma original: PT
Descrição breve incluída: (42 caracteres), idioma: PT
"GL - Arredondamento Base de Impostos na NF"
Categoria de dados: Domínio
Domínio: XFELD
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (10 caracteres), idioma: PT
"Arred.Base"
Comprimento máximo do denominador médio: 19
Denominador médio incluído (19 caracteres), idioma: PT
"Arred. Base Imp. NF"
Comprimento máximo do denominador longo: 32
Denominador longo incluído (32 caracteres), idioma: PT
"Arredond. Base de Impostos na NF"
Comprimento máximo do título: 42
Título incluído (42 caracteres), idioma: PT
"GL - Arredondamento Base de Impostos na NF"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUGR /PWS/ZYCIGF2
Foi criada a função /PWS/ZYCI_AJUSTE_IMP_NF
Grupo de funções /PWS/ZYCIGF2 CI - Batch Input
Texto breve Ajuste nas bases de impostos da nota fiscal
Tipo de execução
- Módulo de função normal.
- Início imediato
Parâmetros de Importação
Nome Campo Atributo Tipo Referência
VLUNIT TYPE /PWS/ZYCIT042-NETPR
ZYCIT003 TYPE /PWS/ZYCIT003
ZYCIT062 TYPE /PWS/ZYCIT062
TPDECL TYPE /PWS/ZYCIT001-TPDECL
CODREGTRIICMS TYPE /PWS/ZYCIT100-CODREGTRIICMS
CODREGTRI TYPE /PWS/ZYCIT100-CODREGTRI
ICMS_DIF TYPE /PWS/ZYCIT100-ICMS_DIF
TPDI TYPE /PWS/ZYCIT085-TPDI
Parâmetros de Modificação
Nome Campo Atributo Tipo Referência
ZYCEE007 TYPE /PWS/ZYCEE007
Código fonte
FUNCTION /pws/zyci_ajuste_imp_nf.
DATA v_vlverif TYPE /pws/zycit100-baseicms.
DATA v_vlverif1 TYPE /pws/zycit100-baseicms.
DATA v_vlverif2 TYPE /pws/zycit042-netpr.
DATA v_vlverif3 TYPE /pws/zycit100-vlicms.
DATA v_vlverif4 TYPE /pws/zycit100-vlicms.
DATA wa_zycit003 TYPE /pws/zycit003.
DATA v_basred TYPE /pws/zycie245-qtd_iten.
DATA v_advicms TYPE p DECIMALS 3.
DATA v_tot_nf TYPE /pws/zycee007-othbas.
DATA v_tot_line TYPE /pws/zycee007-othbas.
CONSTANTS cent(5) TYPE p DECIMALS 2 VALUE '0.04'.
IF zycit062-flag_icms = 'X'.
wa_zycit003 = zycit003.
IF icms_dif = 'X'.
wa_zycit003-basred = '100'.
v_basred = '100'.
ENDIF.
CLEAR v_advicms.
IF NOT wa_zycit003-advalicms IS INITIAL.
IF zycit062-bs_pis_cof IS INITIAL.
IF NOT wa_zycit003-basred IS INITIAL OR
NOT wa_zycit003-basred EQ '100'.
v_advicms = ( ( wa_zycit003-advalicms / 100 ) *
( wa_zycit003-basred / 100 ) ) .
ELSE.
v_advicms = ( wa_zycit003-advalicms / 100 ).
ENDIF.
ELSE.
v_advicms = ( wa_zycit003-advalicms / 100 ).
ENDIF.
v_basred = ( v_advicms * 10000 / wa_zycit003-advalicms ).
ELSE.
v_basred = wa_zycit003-basred.
ENDIF.
IF NOT zycee007-taxval IS INITIAL AND
NOT icms_dif = 'X'.
IF ( tpdi EQ 'N' AND "Verifica susp abaixo.
NOT ' 36' CA codregtriicms ) OR
( tpdi EQ 'S' AND
NOT '56' CA codregtri ) .
IF ( codregtriicms EQ '5' AND
' N' CA zycit062-susp_nf ) OR
codregtriicms NE '5' .
IF NOT zycit062-tred IS INITIAL.
v_vlverif2 =
( ( zycee007-taxval / zycee007-menge )
* 100 ) / v_basred.
v_vlverif4 = ( zycee007-taxval * 100 )
/ v_basred.
ELSE.
v_vlverif2 =
( zycee007-taxval / zycee007-menge ).
v_vlverif4 = zycee007-taxval.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF tpdecl EQ 'DSI'
AND codregtri EQ '4'.
IF NOT zycit062-tred IS INITIAL.
v_vlverif2 = ( (
zycee007-taxval / zycee007-menge )
* 100 ) / v_basred.
v_vlverif4 = ( zycee007-taxval * 100 ) / v_basred.
ELSE.
v_vlverif2 =
( zycee007-taxval / zycee007-menge ).
v_vlverif4 = zycee007-taxval.
ENDIF.
ENDIF.
v_vlverif3 = v_vlverif2 * zycee007-menge.
ENDIF.
IF zycit062-flag_icms = 'X'.
*IPI
IF NOT zycee007-base2 IS INITIAL.
zycee007-base2 = zycee007-base2 +
( v_vlverif3 - v_vlverif4 ).
ELSEIF NOT zycee007-othbas2 IS INITIAL.
zycee007-othbas2 = zycee007-othbas2 +
( v_vlverif3 - v_vlverif4 ).
ELSEIF NOT zycee007-p_excbas IS INITIAL.
zycee007-p_excbas = zycee007-p_excbas +
( v_vlverif3 - v_vlverif4 ).
ENDIF.
*ICMS
IF NOT zycee007-base IS INITIAL.
zycee007-base = zycee007-base +
( v_vlverif3 - v_vlverif4 ).
ELSEIF NOT zycee007-othbas IS INITIAL.
zycee007-othbas = zycee007-othbas +
( v_vlverif3 - v_vlverif4 ) .
ELSEIF NOT zycee007-c_excbas IS INITIAL.
zycee007-c_excbas = zycee007-c_excbas +
( v_vlverif3 - v_vlverif4 ) .
ENDIF.
ENDIF.
v_tot_nf = vlunit * zycee007-menge.
v_vlverif = zycee007-netoth + zycee007-netfre +
zycee007-netins + v_tot_nf.
v_tot_nf = zycee007-netpr * zycee007-menge. .
v_vlverif1 = zycee007-netoth + zycee007-netfre +
zycee007-netins + v_tot_nf.
*ICMS
IF NOT zycee007-base IS INITIAL.
zycee007-base = zycee007-base +
( v_vlverif1 - v_vlverif ).
ELSEIF NOT zycee007-othbas IS INITIAL.
zycee007-othbas =
zycee007-othbas +
( v_vlverif1 - v_vlverif ).
ELSEIF NOT zycee007-c_excbas IS INITIAL.
zycee007-c_excbas =
zycee007-c_excbas +
( v_vlverif1 - v_vlverif ).
ENDIF.
*IPI
IF NOT zycee007-base2 IS INITIAL.
zycee007-base2 = zycee007-base2 -
( v_vlverif - v_vlverif1 ) .
ELSEIF NOT zycee007-othbas2 IS INITIAL.
zycee007-othbas2 = zycee007-othbas2 -
( v_vlverif - v_vlverif1 ) .
ELSEIF NOT zycee007-p_excbas IS INITIAL.
zycee007-p_excbas = zycee007-p_excbas -
( v_vlverif - v_vlverif1 ) .
ENDIF.
*Remove arredondamento automatico por casas decimais.
*ICMS
v_tot_nf = v_vlverif1 + zycee007-taxval2.
v_tot_line = zycee007-base + zycee007-othbas + zycee007-c_excbas.
v_vlverif = v_tot_nf - v_tot_line.
v_vlverif2 = abs( v_vlverif ).
IF cent => v_vlverif2.
IF NOT zycee007-base IS INITIAL.
zycee007-base = zycee007-base + v_vlverif.
ELSEIF NOT zycee007-othbas IS INITIAL.
zycee007-othbas = zycee007-othbas + v_vlverif.
ELSEIF NOT zycee007-c_excbas IS INITIAL.
zycee007-c_excbas = zycee007-c_excbas + v_vlverif.
ENDIF.
ENDIF.
*IPI
v_tot_line = zycee007-base2 + zycee007-othbas2 +
zycee007-p_excbas + zycee007-taxval2.
v_vlverif = v_tot_nf - v_tot_line.
v_vlverif2 = abs( v_vlverif ).
IF cent => v_vlverif2.
IF NOT zycee007-base2 IS INITIAL.
zycee007-base2 = zycee007-base2 + v_vlverif.
ELSEIF NOT zycee007-othbas2 IS INITIAL.
zycee007-othbas2 = zycee007-othbas2 + v_vlverif.
ELSEIF NOT zycee007-p_excbas IS INITIAL.
zycee007-p_excbas = zycee007-p_excbas + v_vlverif.
ENDIF.
ENDIF.
ENDFUNCTION.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016F01
...
IF itab_zycit100-codregtripiscofi NE '3' AND
itab_zycit100-codregtripiscofi NE '5'.
* >> Início da exclusão: FORM VALORES
v_impostos = v_impostos + itab_zycit100-vlpis + itab_zycit100-vlcofins.
* << Fim da exclusão
* >> Início da inclusão: FORM VALORES
v_vldp_042 = itab_zycit100-vlpis.
v_impostos = v_impostos + v_vldp_042.
v_vldp_042 = itab_zycit100-vlcofins.
v_impostos = v_impostos + v_vldp_042.
* << Fim da inclusão
ENDIF.
ENDFORM.
...
...
* >> Início da inclusão: FORM ITENS_NFNEW
IF /pws/zycit062-arbase EQ 'X'.
CALL FUNCTION '/PWS/ZYCI_AJUSTE_IMP_NF'
EXPORTING
vlunit = itab_zycit042-netpr
zycit003 = itab_zycit003
zycit062 = /pws/zycit062
tpdecl = /pws/zycit001-tpdecl
codregtriicms = itab_zycit100-codregtriicms
codregtri = itab_zycit100-codregtri
icms_dif = itab_zycit100-icms_dif
tpdi = /pws/zycit085-tpdi
CHANGING
zycee007 = it_zycee007.
ENDIF.
* << Fim da inclusão
APPEND it_zycee007.
CLEAR it_zycee007.
MOVE itab_zycit042 TO itab_zycit042_mark.
APPEND itab_zycit042_mark.
ENDFORM.
...
...
CASE itab_zycit033-tribipi.
WHEN 1.
IF NOT itab_zycit100-baseipi IS INITIAL.
it_zycee007-base2 = itab_zycit100-baseipi /
itab_zycit044-menge * itab_zycit044-qtd_item .
ENDIF.
IF v_basred IS INITIAL.
v_basred = 100.
ENDIF.
it_zycee007-p_excbas = v_outras_ic + v_ipi.
* >> Início da inclusão: FORM ITENS_NFRNEW
IF /pws/zycit062-flag_icms = 'X'.
* << Fim da inclusão
IF itab_zycit100-icms_dif NE 'X' OR
/pws/zycit062-bs_cheia_dif = 'X'.
IF NOT v_icms IS INITIAL.
it_zycee007-p_excbas = it_zycee007-p_excbas +
( ( v_icms * 100 ) / v_basred ).
* >> Início da inclusão: FORM ITENS_NFRNEW
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
...
...
CLEAR it_zycee007-taxval2.
WHEN 3.
IF NOT itab_zycit100-baseipi IS INITIAL.
it_zycee007-othbas2 = itab_zycit100-baseipi /
itab_zycit044-menge * itab_zycit044-qtd_item .
ENDIF.
IF v_basred IS INITIAL.
v_basred = 100.
ENDIF.
it_zycee007-p_excbas = v_outras_ic + v_ipi.
* >> Início da inclusão: FORM ITENS_NFRNEW
IF /pws/zycit062-flag_icms = 'X'.
* << Fim da inclusão
IF itab_zycit100-icms_dif NE 'X' OR
/pws/zycit062-bs_cheia_dif = 'X'.
IF NOT v_icms IS INITIAL.
it_zycee007-p_excbas = it_zycee007-p_excbas +
( ( v_icms * 100 ) / v_basred ).
* >> Início da inclusão: FORM ITENS_NFRNEW
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
...
...
* >> Início da inclusão: FORM ITENS_NFRNEW
IF /pws/zycit062-arbase EQ 'X'.
CALL FUNCTION '/PWS/ZYCI_AJUSTE_IMP_NF'
EXPORTING
vlunit = itab_zycit044-netpr
zycit003 = itab_zycit003
zycit062 = /pws/zycit062
tpdecl = /pws/zycit001-tpdecl
codregtriicms = itab_zycit100-codregtriicms
codregtri = itab_zycit100-codregtri
icms_dif = itab_zycit100-icms_dif
tpdi = /pws/zycit085-tpdi
CHANGING
zycee007 = it_zycee007.
ENDIF.
* << Fim da inclusão
APPEND it_zycee007.
CLEAR it_zycee007.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016X01
...
* >> Início da exclusão:
v_basred LIKE /pws/zycie003-netpr,
* << Fim da exclusão
* >> Início da inclusão:
v_basred LIKE /pws/zycit245-qtd_iten,
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F01
...
FORM load_itax USING p_tipo.
* >> Início da inclusão: FORM LOAD_ITAX
DATA: v_casasd TYPE /pws/zycit036-vlreal,
v_casasd2 TYPE /pws/zycit036-vlreal,
v_casasd3 TYPE /pws/zycit036-vlreal.
* << Fim da inclusão
...
...
IF NOT /pws/zycit000-rat_seg_fob IS INITIAL.
CASE s_inco1_ci.
WHEN 'CIF'.
t_dif_seg = /pws/zycie003-vlseg_fat - v_tot_seg .
ENDCASE.
ENDIF.
IF v_dit EQ 'N'.
CASE s_inco1_ci.
WHEN 'FOB'.
t_ivadu = t_ivmle + t_ivseg + t_ivdesp + t_ivfre.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd = t_ivseg.
v_casasd2 = t_ivfre.
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle + v_casasd3 + v_casasd + v_casasd2.
* << Fim da inclusão
...
...
t_ivmle2 = t_vmle2 * itab_it-dttaxbem.
t_ivadu = t_ivmle2 + t_ivseg + t_ivdesp.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd = t_ivseg.
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle2 + v_casasd3 + v_casasd .
* << Fim da inclusão
WHEN 'CIF'.
CLEAR v_difgran .
IF NOT itab_it-qtd_itend IS INITIAL.
READ TABLE itab_zycit003 WITH KEY nrseq = itab_it-nrseq
ebeln = itab_it-ebeln
ebelp = itab_it-ebelp.
IF sy-subrc EQ 0.
t_vmle =
itab_it-vlreal * itab_it-qtd_itend.
itab_it-vlfob = t_vmle.
...
...
t_ivmle_d2 = t_ivmle =
t_ivmle + v_desp_fren + t_ivfre + t_ivseg .
ENDIF.
t_vmle2 = t_vmle.
t_ivmle2 = t_vmle2 * itab_it-dttaxbem.
t_ivadu = t_ivmle2 + t_ivdesp - v_desp_fren.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle2 + v_casasd3 .
* << Fim da inclusão
ENDCASE.
ELSE.
CASE s_inco1_ci.
WHEN 'FOB'.
t_ivadu = t_ivmle + t_ivseg + t_ivfre + t_ivdesp.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd = t_ivseg.
v_casasd2 = t_ivfre.
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle + v_casasd3 + v_casasd + v_casasd2.
* << Fim da inclusão
WHEN 'C&F'.
IF p_tipo EQ 'A'.
t_ivmle = t_ivmle + t_ivfre.
t_vmle_d2 = t_vmle = t_vmle + v_tot_fre.
t_ivadu = t_ivmle + wa_it-vlseg + t_ivdesp.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd = wa_it-vlseg.
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle + v_casasd3 + v_casasd.
* << Fim da inclusão
ELSEIF p_tipo EQ 'I' OR p_tipo = 'T'.
t_ivmle = t_ivmle + t_ivfre.
t_vmle_d2 = t_vmle = t_vmle + v_tot_fre.
t_ivadu = t_ivmle + t_ivseg + t_ivdesp + t_ivfre.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd = t_ivseg.
v_casasd2 = t_ivfre.
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle + v_casasd3 + v_casasd + v_casasd2.
* << Fim da inclusão
ENDIF.
WHEN 'CIF'.
IF p_tipo EQ 'A'.
t_ivmle_d2 = t_ivmle = t_ivmle + t_ivfre + t_ivseg.
t_vmle_d2 = t_vmle = t_vmle + v_tot_fre + v_tot_seg.
t_ivadu = t_ivmle + t_ivdesp.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle + v_casasd3.
* << Fim da inclusão
ELSEIF p_tipo EQ 'I' OR p_tipo = 'T'.
t_ivmle_d2 = t_ivmle = t_ivmle - t_ivfre - t_ivseg.
t_vmle_d2 = t_vmle = t_vmle - v_tot_fre - v_tot_seg.
t_ivadu = t_ivmle + t_ivdesp + t_ivfre + t_ivseg.
* >> Início da inclusão: FORM LOAD_ITAX
v_casasd = t_ivseg.
v_casasd2 = t_ivfre.
v_casasd3 = t_ivdesp.
v_ivadud = t_ivmle + v_casasd3 + v_casasd + v_casasd2.
* << Fim da inclusão
ENDIF.
ENDCASE.
ENDIF.
itab_it-vlfobr = t_ivmle2.
itab_it-vlmerc_ad = t_vmle2.
ENDFORM.
...
...
FORM load_iipi USING p_tipo.
* >> Início da inclusão: FORM LOAD_IIPI
DATA: v_casasd TYPE /pws/zycit036-vlreal.
IF /pws/zycit062-arbase EQ 'X'.
* << Fim da inclusão
IF '56' CA itab_it-codregtri .
* >> Início da inclusão: FORM LOAD_IIPI
v_casasd = itab_it-ii_calculado.
ELSE.
v_casasd = t_iirec.
ENDIF.
t_ipibas = ( v_ivadud + v_casasd ).
ELSE.
IF '56' CA itab_it-codregtri .
* << Fim da inclusão
t_ipibas = ( t_ivadu + itab_it-ii_calculado ).
ELSE.
t_ipibas = ( t_ivadu + t_iirec ).
* >> Início da inclusão: FORM LOAD_IIPI
ENDIF.
* << Fim da inclusão
ENDIF.
a_ipidevi = ( ( /pws/zycie003-advalipi / 100 ) * t_ipibas ).
IF v_dit = 'N'.
IF /pws/zycie100a-codregtriipi NE '1' AND
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F03
...
FORM load_iicms USING p_tipo.
DATA v_trunc TYPE p DECIMALS 3.
* >> Início da inclusão: FORM LOAD_IICMS
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 inclusão
CLEAR: t_ivdesp, v_advii, v_advipi, v_advicms,
v_advpis, v_advcof, v_desp.
SELECT * FROM /pws/zycit438 INTO TABLE itab_zycit438
WHERE regio = v_region
AND lei = 'MP252'.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit438 INTO TABLE itab_zycit438
WHERE regio = ' '
AND lei = 'MP252'.
ENDIF.
...
...
* >> Início da inclusão: FORM LOAD_IICMS
IF /pws/zycit062-arbase EQ 'X'.
MOVE: v_vliirec TO v_casasd,
v_vlipirec TO v_casasd2,
t_ivdesp TO v_casasd3,
v_vlcofrec TO v_casasd4,
v_vlpisrec TO v_casasd5.
t_icmsbs_d2 = t_icmsbs = ( v_ivadud + v_casasd + v_casasd2 +
v_casasd3 + v_casasd4 + v_casasd5 ) .
MOVE: a_iicalc TO v_casasd,
a_ipidevi TO v_casasd2,
a_piscalc TO v_casasd3,
a_cofcalc TO v_casasd4.
IF /pws/zycit062-susp_nf EQ 'S' .
IF '56' CA /pws/zycie100a-codregtri .
t_icmsbs_d2 = t_icmsbs =
t_icmsbs - v_casasd.
ENDIF.
IF '56' CA /pws/zycie100a-codregtriipi .
t_icmsbs_d2 = t_icmsbs =
t_icmsbs - v_casasd2.
ENDIF.
IF '56' CA /pws/zycie100a-codregtripiscofi .
t_icmsbs_d2 = t_icmsbs =
t_icmsbs - v_casasd3 - v_casasd4.
ENDIF.
ENDIF.
ELSE.
* << Fim da inclusão
t_icmsbs_d2 = t_icmsbs = ( t_ivadu + v_vliirec + v_vlipirec +
t_ivdesp + v_vlpisrec + v_vlcofrec ) .
IF /pws/zycit062-susp_nf EQ 'S' .
IF '56' CA /pws/zycie100a-codregtri .
t_icmsbs_d2 = t_icmsbs =
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.
* >> Início da inclusão: FORM LOAD_IICMS
ENDIF.
* << 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 ) ) .
...
...
FORM verifica_nrdi.
DATA: v_nrseqdi TYPE /pws/zycie085-nrseqdi.
IF NOT t001-land1 EQ 'CL' AND NOT t001-land1 EQ 'AR'.
IF NOT /pws/zycie085-nrdi IS INITIAL.
SELECT SINGLE nrseqdi FROM /pws/zycit085 INTO v_nrseqdi
WHERE nrseqdi NE /pws/zycie085-nrseqdi
* >> Início da exclusão: FORM VERIFICA_NRDI
AND nrdi EQ /pws/zycie085-nrdi. "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_NRDI
AND nrdi EQ /pws/zycie085-nrdi. "#EC CI_NOFIELD
* << Fim da inclusão
IF sy-subrc EQ 0 .
MESSAGE e015 WITH text-254 v_nrseqdi.
ENDIF.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023X01
...
* >> Início da inclusão:
DATA: v_ivadud LIKE t_icms.
* << Fim da inclusão
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCIT062
O seguinte campo foi inserido
Nome campo Chv Elem.dados Tab.verif. N CtDt Comp. Grupo
...
*<<Início Inclusão
ARBASE /PWS/ZYCIL865 CHAR 1
*<<Fim Inclusão
USERNAMEC SYUNAME CHAR 12
DTUSERC SYDATUM DATS 8
HRUSERC SYSTTIMLO TIMS 6
*******GERAR VISÃO DE ATUALIZAÇÃO DE TABELA
Tabela/visão /PWS/ZYCIT062
Grupo de autorização ZYCE pw.CE - Grp. Autor.
Grupo de funções /PWS/ZYCIGF1
Cl.desenvolvimento /PWS/ZYCI pw.CE - Documentação Importação
Ctg.atualização
Nº tela atualização Tela de síntese 62
Tela individual 0
Rotina de registro (X) Rotina de registro