Pesquisar na Comunidade
Showing results for tags 'nfc-e conjugada'.
Encontrado 2 registros
-
Pessoal, recentemente precisei fazer a NFC conjugada e encontrei alguns problemas que devemos corrigir todos os problemas estão nos arquivos PCNNFEW.pas. as alterações que fiz marquei com //newton procedure TNFeW.GerarTotalISSQNtot; begin if (nfe.Total.ISSQNtot.vServ > 0) or (nfe.Total.ISSQNtot.vBC > 0) or (nfe.Total.ISSQNtot.vISS > 0) or (nfe.Total.ISSQNtot.vPIS > 0) or (nfe.Total.ISSQNtot.vCOFINS > 0) then begin Gerador.wGrupo('ISSQNtot', 'W17'); Gerador.wCampo(tcDe2, 'W18', 'vServ ', 01, 15, 0, nfe.Total.ISSQNtot.vServ, DSC_VSERV); Gerador.wCampo(tcDe2, 'W19', 'vBC ', 01, 15, 0, nfe.Total.ISSQNtot.vBC, DSC_VBC); Gerador.wCampo(tcDe2, 'W20', 'vISS ', 01, 15, 0, nfe.Total.ISSQNtot.vISS, DSC_VISS); Gerador.wCampo(tcDe2, 'W21', 'vPIS ', 01, 15, 0, nfe.Total.ISSQNtot.vPIS, DSC_VPIS); Gerador.wCampo(tcDe2, 'W22', 'vCOFINS ', 01, 15, 0, nfe.Total.ISSQNtot.vCOFINS, DSC_VCOFINS); if nfe.infNFe.Versao >= 3.10 then begin //newton o manual esta errado, na realidade a DCompet deve ser no formato YYYY-MM-DD e não YYYYMMDD Gerador.wCampo(tcStr, 'W22a', 'dCompet ', 10, 10, 1, FormatDateTime('YYYY-MM-DD', nfe.Total.ISSQNtot.dCompet), DSC_DCOMPET); Gerador.wCampo(tcDe2, 'W22b', 'vDeducao ', 01, 15, 0, nfe.Total.ISSQNtot.vDeducao, DSC_VDEDUCAO); // Gerador.wCampo(tcDe2, 'W22c', 'vINSS ', 01, 15, 0, nfe.Total.ISSQNtot.vINSS, DSC_VINSS); // Gerador.wCampo(tcDe2, 'W22d', 'vIR ', 01, 15, 0, nfe.Total.ISSQNtot.vIR, DSC_VIR); // Gerador.wCampo(tcDe2, 'W22e', 'vCSLL ', 01, 15, 0, nfe.Total.ISSQNtot.vCSLL, DSC_VCSLL); Gerador.wCampo(tcDe2, 'W22c', 'vOutro ', 01, 15, 0, nfe.Total.ISSQNtot.vOutro, DSC_VOUTRODED); Gerador.wCampo(tcDe2, 'W22d', 'vDescIncond ', 01, 15, 0, nfe.Total.ISSQNtot.vDescIncond, DSC_VDESCINCOND); Gerador.wCampo(tcDe2, 'W22e', 'vDescCond ', 01, 15, 0, nfe.Total.ISSQNtot.vDescCond, DSC_VDESCCOND); // Gerador.wCampo(tcStr, 'W22i', 'indISSRet ', 01, 01, 1, indISSRetToStr( nfe.Total.ISSQNtot.indISSRet ) , DSC_INDISSRET); // Gerador.wCampo(tcStr, 'W22j', 'indISS ', 01, 01, 1, indISSToStr( nfe.Total.ISSQNtot.indISS ) , DSC_INDISS); // Gerador.wCampo(tcStr, 'W22k', 'cServico ', 01, 20, 0, nfe.Total.ISSQNtot.cServico , DSC_CSERVICO); // Gerador.wCampo(tcInt, 'W22l', 'cMun ', 01, 07, 0, nfe.Total.ISSQNtot.cMun, DSC_CMUN); // Gerador.wCampo(tcInt, 'W22m', 'cPais ', 01, 04, 0, nfe.Total.ISSQNtot.cPais, DSC_CPAIS); // Gerador.wCampo(tcStr, 'W22n', 'nProcesso ', 01, 30, 0, nfe.Total.ISSQNtot.nProcesso , DSC_NPROCESSO); // Italo Gerador.wCampo(tcDe2, 'W22f', 'vISSRet ', 01, 15, 0, nfe.Total.ISSQNtot.vISSRet, DSC_VISSRET); Gerador.wCampo(tcStr, 'W22g', 'cRegTrib ', 01, 01, 1, RegTribISSQNToStr( nfe.Total.ISSQNtot.cRegTrib ) , DSC_CREGTRIB); // Gerador.wCampo(tcStr, 'W22p', 'indIncentivo', 01, 01, 1, indIncentivoToStr( nfe.Total.ISSQNtot.indIncentivo ) , DSC_INDINCENTIVO); end; Gerador.wGrupo('/ISSQNtot'); end; end; Como na versão 3.1 não existe mais a obrigatoriedade da cSitTrib no ISSQN, devemos corrigir a rotina abaixo: procedure TNFeW.GerarDetImposto(const i: integer); // Rotina melhorada por // Newton Oliveira - > [email protected] begin Gerador.wGrupo('imposto', 'M01'); Gerador.wCampo(tcDe2, 'M02', 'vTotTrib ', 01, 15, 0, nfe.Det[i].Imposto.vTotTrib, DSC_VTOTTRIB); //newton o campo cSitTrib não é mais obrigatório na versõo 3.1 if nfe.Det[i].Imposto.ISSQN.cSitTrib <> ISSQNcSitTribVazio then begin (**)GerarDetImpostoISSQN(i); if NFe.infNFe.Versao >= 3 then (**)GerarDetImpostoIPI(i); end else begin //newton se tiver ISSQN não pode ter a tag ICMS. isto acontece no caso de NFC //conjugada if (nfe.Det[i].Imposto.ISSQN.vBC > 0) or (nfe.Det[i].Imposto.ISSQN.vAliq > 0) or (nfe.Det[i].Imposto.ISSQN.vISSQN > 0) or (nfe.Det[i].Imposto.ISSQN.cMunFG > 0) or (nfe.Det[i].Imposto.ISSQN.cListServ <> '') then begin (**)GerarDetImpostoISSQN(i); (**)GerarDetImpostoIPI(i); end else begin (**)GerarDetImpostoICMS(i); (**)GerarDetImpostoIPI(i); (**)GerarDetImpostoII(i); end; end; (**)GerarDetImpostoPIS(i); (**)GerarDetImpostoPISST(i); (**)GerarDetImpostoCOFINS(i); (**)GerarDetImpostoCOFINSST(i); Gerador.wGrupo('/imposto'); end;
-
Olá, pessoal. Estamos tentando emitir uma NFC-e conjugada (produtos e serviços), mas deparamos com uma mensagem de erro não catalogado. Seguem anexados o XML e o print-screen com o erro. []s Equipe Plenus Software 51140401425044000126650010000001181000001184-NFe.xml