Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal Complementar
Data/Hora da Publicação: 14/05/2014 08:59:48
Data/Hora Última Alteração: 14/05/2014 08:59:48
Descrição da Nota: DESENVOLVIMENTO PARA TRATAMENTO NA NOTA FISCAL COMPLEMENTAR
Sintoma
Desenvolvimento para tratamento na Nota Fiscal Complementar
Solução
Atualizado programa para sempre respeitar as parametrizações das colunas de base da /pws/zycit398 e
/pws/zycit033 independente da NF Global.
9.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 13165 Data: 12/08/2013 Hora: 17:33:14
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 13165
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 9.0
Pacote : 00005
Agrupamento : 00161
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
02261 - 00001 - 6.0 - 00025 - A NF GLOBAL E COMPLEMENTAR NÃO ESTÁ TRATANDO ICMS DIFERIDO E SUSP
07667 - 00002 - 7.0 - 00007 - AJUSTES PARA REALIZAR O LANÇAMENTO DE PIS E COFINS NA NF COMPL.
09224 - 00003 - 8.0 - 00001 - ESTA APRESENTANDO VALOR NEGATIVO NA NOTA FISCAL COMPLEMENTAR
11027 - 00004 - 8.0 - 00007 - AJUSTE DESPESAS BASE PIS E COFINS NOTA FISCAL COMPLEMENTAR
12959 - 00005 - 9.0 - 00004 - VOLTANDO A VERSÃO DO PROGRAMA DA NOTA FISCAL COMPLEMENTAR
----------------------------------------------------------------------------------------------------
DESENVOLVIMENTO PARA TRATAMENTO NA NOTA FISCAL COMPLEMENTAR
----------------------------------------------------------------------------------------------------
Palavras Chave:
NF COMPLEMENTAR - TRATAMENTO - COLUNAS - IMPOSTOS
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI029F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI029F01
...
it_zycee007-rate_pis = itab_zycit100-advalpis.
ENDIF.
CASE itab_zycit398-tribpiscof.
WHEN 1.
it_zycee007-base_pis = itab_zycit265_c-basepis_cof.
WHEN 2.
it_zycee007-pis_excbas = itab_zycit265_c-basepis_cof.
CLEAR: it_zycee007-taxval_pis, it_zycee007-rate_pis.
WHEN 3.
it_zycee007-othbas_pis = itab_zycit265_c-basepis_cof.
* >> Início da inclusão: FORM ITENS_NFC
CLEAR it_zycee007-rate_pis .
* << Fim da inclusão
ENDCASE.
READ TABLE itab_zycit398 WITH KEY tributos = 'COFINS'.
IF sy-subrc EQ 0.
it_zycee007-leicofins = itab_zycit398-leicofins.
it_zycee007-taxtyp_cof = itab_zycit398-taxtyp.
ELSE.
CLEAR it_zycee007-taxtyp_cof.
ENDIF.
IF NOT itab_zycit100-vlcofins IS INITIAL.
it_zycee007-taxval_cof = itab_zycit265_c2-vldp_cofins.
...
...
it_zycee007-rate_cof = itab_zycit100-advalcofins.
ENDIF.
CASE itab_zycit398-tribpiscof.
WHEN 1.
it_zycee007-base_cof = itab_zycit265_c-basepis_cof.
WHEN 2.
it_zycee007-cof_excbas = itab_zycit265_c-basepis_cof.
CLEAR: it_zycee007-taxval_cof, it_zycee007-rate_cof.
WHEN 3.
it_zycee007-othbas_cof = itab_zycit265_c-basepis_cof.
* >> Início da inclusão: FORM ITENS_NFC
CLEAR it_zycee007-rate_cof .
* << Fim da inclusão
ENDCASE.
CLEAR itab_exbase.
READ TABLE itab_exbase WITH KEY
ebeln = itab_zycit265_c-ebeln
ebelp = itab_zycit265_c-ebelp.
ADD itab_exbase-base TO: it_zycee007-cof_excbas,
it_zycee007-pis_excbas.
IF itab_zycit100-icms_dif = 'X'.
itab_zycit003-basred = '100'.
ENDIF.
...
...
( itab_zycit003-advalicms / 100 ).
ENDIF.
IF ( /pws/zycit062-susp_nf EQ 'S' AND
itab_zycit100-codregtriicms EQ '5' ) OR
/pws/zycit062-flag_icms NE 'X' OR
( /pws/zycit062-bs_cheia_dif NE 'X' AND
itab_zycit100-icms_dif EQ 'X' ) OR
itab_zycit100-codregtriicms EQ '3' .
it_zycee007-c_excbas = itab_zycit265_c2-vldp_dif -
it_zycee007-othbas.
* >> Início da inclusão: FORM ITENS_NFC
IF it_zycee007-othbas LT 0.
CLEAR it_zycee007-rate.
ENDIF.
it_zycee007-othbas = it_zycee007-othbas + it_zycee007-c_excbas.
CLEAR it_zycee007-c_excbas.
* << Fim da inclusão
IF /pws/zycit062-flag_icms NE 'X'.
it_zycee007-c_excbas = ( itab_zycit265_c2-vldp_dif +
itab_zycit265_c2-vldp_pis +
itab_zycit265_c2-vldp_cofins ) -
it_zycee007-othbas.
* >> Início da inclusão: FORM ITENS_NFC
IF it_zycee007-othbas LT 0.
clear it_zycee007-rate.
ENDIF.
it_zycee007-othbas = it_zycee007-othbas + it_zycee007-c_excbas.
CLEAR it_zycee007-c_excbas.
* << Fim da inclusão
ENDIF.
ELSE.
it_zycee007-c_excbas = ( itab_zycit265_c2-vldp_dif -
itab_zycit265_c2-vldp_dif_icms ) +
( ( itab_zycit265_c2-vldp_dif_icms +
itab_zycit265_c2-vldp_pis + itab_zycit265_c2-vldp_cofins ) /
( ( 100 - itab_zycit003-advalicms ) / 100 ) )
- it_zycee007-othbas.
* >> Início da inclusão: FORM ITENS_NFC
IF it_zycee007-othbas LT 0.
clear it_zycee007-rate.
ENDIF.
it_zycee007-othbas = it_zycee007-othbas + it_zycee007-c_excbas.
CLEAR it_zycee007-c_excbas.
* << Fim da inclusão
ENDIF.
ENDCASE.
IF itab_zycit100-codregtriicms = '3' OR
itab_zycit100-codregtriicms = '5'.
CLEAR it_zycee007-taxval.
ENDIF.
CASE itab_zycit033-tribipi.
WHEN 1.
it_zycee007-base2 = itab_zycit265_c2-vldp_dif.
IF /pws/zycit062-flag_icms = 'X' AND
...