diogoribeiro 27 de jun. de 2011
Jasperreports e IReports ajuda você?
JoaoBluSCBR 27 de jun. de 2011
Eu acho que tenho algo,
Você tem um xml de NFe para postar aqui, qualquer um que seja válido, daí eu faço o teste e se funcionar coloco o código aqui.
Fico no aguardo.
pedruhenrik 27 de jun. de 2011
eu fiz um sistema de conversão nfe para danfe e estou comercializando hehehe.
utilize ireport e xpath.
att,
Rafael_Nascimento 28 de jun. de 2011
Então, galera, eu poderia sim usar o iReport e tal, mas, como falei, nesse caso teria que começar do zero. A minhá dúvida é saber se já existe alguma ferramenta que já ofereça esse processo mais ou menos pronto, e que eu possa implementar na minha aplicação
JoaoBluSCBR, segue um exemplo de arquivo xml válido
<? xml version = "1.0" encoding = "utf-8" ?>< nfeProc versao = "2.00" xmlns = "http://www.portalfiscal.inf.br/nfe" >< NFe xmlns = "http://www.portalfiscal.inf.br/nfe" >< infNFe Id = "NFe35110693209765030539550250000363601903008693" versao = "2.00" >< ide >< cUF > 35 </ cUF >< cNF > 90300869 </ cNF >< natOp > VENDA DE MERC ADQ DE TERC </ natOp >< indPag > 2 </ indPag >< mod > 55 </ mod >< serie > 25 </ serie >< nNF > 36360 </ nNF >< dEmi > 2011 -06 -16 </ dEmi >< dSaiEnt > 2011 -06 -16 </ dSaiEnt >< hSaiEnt > 00 : 00 : 00 </ hSaiEnt >< tpNF > 1 </ tpNF >< cMunFG > 3505708 </ cMunFG >< tpImp > 1 </ tpImp >< tpEmis > 1 </ tpEmis >< cDV > 3 </ cDV >< tpAmb > 1 </ tpAmb >< finNFe > 1 </ finNFe >< procEmi > 0 </ procEmi >< verProc > GNFe214 PointSystems </ verProc ></ ide >< emit >< CNPJ > 93209765030539 </ CNPJ >< xNome > WMS SUPERMERCADOS DO BRASIL LTDA </ xNome >< enderEmit >< xLgr > ESTRADA DE ACESSO JANDIRA </ xLgr >< nro > 1400 </ nro >< xCpl > RODOV CASTELO BRANCO </ xCpl >< xBairro > FAZ . ITAQUITI </ xBairro >< cMun > 3505708 </ cMun >< xMun > BARUERI </ xMun >< UF > SP </ UF >< CEP > 06442130 </ CEP >< cPais > 1058 </ cPais >< xPais > Brasil </ xPais ></ enderEmit >< IE > 206259596115 </ IE >< CRT > 3 </ CRT ></ emit >< dest >< CPF > [ telefone removido ] </ CPF >< xNome > EDWARD SHAPPIRO </ xNome >< enderDest >< xLgr > RUA BENEDITO APARECIDO BIANCHI </ xLgr >< nro > 258 </ nro >< xBairro > JARDIM FELICIDADE </ xBairro >< cMun > 3549805 </ cMun >< xMun > SAO JOSE DO RIO PRETO </ xMun >< UF > SP </ UF >< CEP > 15052361 </ CEP >< cPais > 1058 </ cPais >< xPais > BRASIL </ xPais >< fone > [ telefone removido ] </ fone ></ enderDest >< IE />< email > [ email removido ] </ email ></ dest >< det nItem = "1" >< prod >< cProd > 110255 </ cProd >< cEAN > 7897033017982 </ cEAN >< xProd > RELOGIO DE PULSO DIGITAL MASC . ESPORTIVO 1798391 M </ xProd >< NCM > 91021190 </ NCM >< CFOP > 5102 </ CFOP >< uCom > PC </ uCom >< qCom > 1.0000 </ qCom >< vUnCom > 129. [ telefone removido ] </ vUnCom >< vProd > 129.00 </ vProd >< cEANTrib > 7897033017982 </ cEANTrib >< uTrib > PC </ uTrib >< qTrib > 1.0000 </ qTrib >< vUnTrib > 129. [ telefone removido ] </ vUnTrib >< vDesc > 10.00 </ vDesc >< indTot > 1 </ indTot ></ prod >< imposto >< ICMS >< ICMS00 >< orig > 2 </ orig >< CST > 00 </ CST >< modBC > 3 </ modBC >< vBC > 119.00 </ vBC >< pICMS > 18.00 </ pICMS >< vICMS > 21.42 </ vICMS ></ ICMS00 ></ ICMS >< PIS >< PISAliq >< CST > 01 </ CST >< vBC > 119.00 </ vBC >< pPIS > 1.65 </ pPIS >< vPIS > 1.96 </ vPIS ></ PISAliq ></ PIS >< COFINS >< COFINSAliq >< CST > 01 </ CST >< vBC > 119.00 </ vBC >< pCOFINS > 7.60 </ pCOFINS >< vCOFINS > 9.04 </ vCOFINS ></ COFINSAliq ></ COFINS ></ imposto ></ det >< total >< ICMSTot >< vBC > 119.00 </ vBC >< vICMS > 21.42 </ vICMS >< vBCST > 0.00 </ vBCST >< vST > 0.00 </ vST >< vProd > 129.00 </ vProd >< vFrete > 0.00 </ vFrete >< vSeg > 0.00 </ vSeg >< vDesc > 10.00 </ vDesc >< vII > 0.00 </ vII >< vIPI > 0.00 </ vIPI >< vPIS > 1.96 </ vPIS >< vCOFINS > 9.04 </ vCOFINS >< vOutro > 0.00 </ vOutro >< vNF > 119.00 </ vNF ></ ICMSTot ></ total >< transp >< modFrete > 0 </ modFrete >< transporta >< CNPJ > 58818022000143 </ CNPJ >< xNome > TRANSFOLHA TRANSPORTE E DISTRIBUICAO LTD </ xNome >< IE > 206099687112 </ IE >< xEnder > ALAMEDA XINGU </ xEnder >< xMun > BARUERI </ xMun >< UF > SP </ UF ></ transporta >< vol >< qVol > 1 </ qVol >< esp > DIG </ esp >< pesoL > 0.050 </ pesoL >< pesoB > 0.050 </ pesoB ></ vol ></ transp >< infAdic >< infCpl > CONFORME ART . 52 RICMS / SP DECRETO 45490 / 00 PEDIDO 3162556 </ infCpl ></ infAdic ></ infNFe >< Signature xmlns = "http://www.w3.org/2000/09/xmldsig#" >< SignedInfo >< CanonicalizationMethod Algorithm = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />< SignatureMethod Algorithm = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" />< Reference URI = "#NFe35110693209765030539550250000363601903008693" >< Transforms >< Transform Algorithm = "http://www.w3.org/2000/09/xmldsig#enveloped-signature" />< Transform Algorithm = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /></ Transforms >< DigestMethod Algorithm = "http://www.w3.org/2000/09/xmldsig#sha1" />< DigestValue > NGfIwZQwnrBrQeYhnnoDwZfrscg =</ DigestValue ></ Reference ></ SignedInfo >< SignatureValue > lQJ97kzTHodaa9ptZz9FNSos7b39Mi7FnmCYZDnP5QiFHsb63sVpBKbTEVeYfz3Kvf4SNn1YF3Wv / MatdMm9SQcmdP6VJmXD5XIL80TfClzB46DyKksw9CN10h / utz / CUaRWkweFRU8t3xYme1jUK1c5pKz8iSH9UiEsokUjb + 4 =</ SignatureValue >< KeyInfo >< X509Data >< X509Certificate > MIIGLzCCBRegAwIBAgIIGgB6zv5tUvwwDQYJKoZIhvcNAQEFBQAwTDELMAkGA1UEBhMCQlIxEzARBgNVBAoTCklDUC1CcmFzaWwxKDAmBgNVBAMTH1NFUkFTQSBDZXJ0aWZpY2Fkb3JhIERpZ2l0YWwgdjEwHhcNMDkwNzI4MTQwMDAwWhcNMTIwNzI3MTQwMDAwWjCB6zELMAkGA1UEBhMCQlIxEzARBgNVBAoTCklDUC1CcmFzaWwxFDASBgNVBAsTCyhFTSBCUkFOQ08pMRgwFgYDVQQLEw8wMDAwMDEwMDA2MzEwODIxFDASBgNVBAsTCyhFTSBCUkFOQ08pMRQwEgYDVQQLEwsoRU0gQlJBTkNPKTEUMBIGA1UECxMLKEVNIEJSQU5DTykxFDASBgNVBAsTCyhFTSBCUkFOQ08pMRQwEgYDVQQLEwsoRU0gQlJBTkNPKTEpMCcGA1UEAxMgV01TIFNVUEVSTUVSQ0FET1MgRE8gQlJBU0lMIExUREEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANKbuPTlbhri6qI + reZ4cMxwLgplXx2QgkAfVjqgLOXvkte6ErjIzig7fnIqa0Csc7R2bavp7xPFY / dVeETSogfLNURQ8GCiQIhATcrt2 + 52 G9ByaH2v1CSmTfXAoblXO58k9EZcjGUIWKMO2D6J45iBqhbF4R7LGX0JuwZQTDjrAgMBAAGjggL3MIIC8zAOBgNVHQ8BAf8EBAMCBeAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMEMB8GA1UdIwQYMBaAFLdgqFv5sqauAO1069VKyZZoZvVcMIG6BgNVHREEgbIwga + BG01BUkNFTE8uSVZBTERPQFdBTC1NQVJULkNPTaA4BgVgTAEDBKAvEy0wNzExMTk2OTQ5NzA1ODIyNDY4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDCgIgYFYEwBAwKgGRMXTUFSQ0VMTyBJVkFMRE8gREEgU0lMVkGgGQYFYEwBAwOgEBMOOTMyMDk3NjUwMDAxMTegFwYFYEwBAwegDhMMMDAwMDAwMDAwMDAwMFcGA1UdIARQME4wTAYGYEwBAgMDMEIwQAYIKwYBBQUHAgEWNGh0dHA6Ly93d3cuY2VydGlmaWNhZG9kaWdpdGFsLmNvbS5ici9yZXBvc2l0b3Jpby9kcGMwgfAGA1UdHwSB6DCB5TBJoEegRYZDaHR0cDovL3d3dy5jZXJ0aWZpY2Fkb2RpZ2l0YWwuY29tLmJyL3JlcG9zaXRvcmlvL2xjci9zZXJhc2FjZHYxLmNybDBDoEGgP4Y9aHR0cDovL2xjci5jZXJ0aWZpY2Fkb3MuY29tLmJyL3JlcG9zaXRvcmlvL2xjci9zZXJhc2FjZHYxLmNybDBToFGgT4ZNaHR0cDovL3JlcG9zaXRvcmlvLmljcGJyYXNpbC5nb3YuYnIvbGNyL1NlcmFzYS9yZXBvc2l0b3Jpby9sY3Ivc2VyYXNhY2R2MS5jcmwwgZcGCCsGAQUFBwEBBIGKMIGHMDwGCCsGAQUFBzABhjBodHRwOi8vb2NzcC5jZXJ0aWZpY2Fkb2RpZ2l0YWwuY29tLmJyL3NlcmFzYWNkdjEwRwYIKwYBBQUHMAKGO2h0dHA6Ly93d3cuY2VydGlmaWNhZG9kaWdpdGFsLmNvbS5ici9jYWRlaWFzL3NlcmFzYWNkdjEucDdiMA0GCSqGSIb3DQEBBQUAA4IBAQAY9ag7jUKcXnu / Rw4xQWOW6Djn4w3QgH56N + tEZzqtIQq85JnRLVkRYzQXPhnHlbQjjn28W25cqPHOoWvPNsOrnjUV + T / c1OM11YJeacrTxrk8OMgWGoZgulIHj + VF8hC3O8tDZfrXzLdkYAVlaET6YPN0ibf / MmnWuZW8VltJujmHuCsMJ5QReff64wnvJtzYUwG1Sum1TqlKImlxoWnPUSn3Y90D8LCV0BRLDmBTg7uz73ReR / WxN3cklvKd + gOuKxfF3uS4RqfIeq8a2IqIKUA8xJrFt4FuTrwfGhiPZoa2TdnKxziAnyCTUmAUAXQCZUje0HHyP0zioZ4Bfnw0 </ X509Certificate ></ X509Data ></ KeyInfo ></ Signature ></ NFe >< protNFe versao = "2.00" xmlns = "http://www.portalfiscal.inf.br/nfe" >< infProt >< tpAmb > 1 </ tpAmb >< verAplic > SP_NFE_PL_006e </ verAplic >< chNFe > 35110693209765030539550250000363601903008693 </ chNFe >< dhRecbto > 2011 -06 -16 T00 : 34 : 20 </ dhRecbto >< nProt > 135110303746256 </ nProt >< digVal > NGfIwZQwnrBrQeYhnnoDwZfrscg =</ digVal >< cStat > 100 </ cStat >< xMotivo > Autorizado o uso da NF - e </ xMotivo ></ infProt ></ protNFe ></ nfeProc >
abraços
diogoribeiro 28 de jun. de 2011
É cara acho q não existe nenhuma ferramenta q faça isso não ;p
o melhor jeito q eu conheço é construir o relatório usando o IReport.
Lindberg 14 de out. de 2011
voce ja conseguiu ?
estou fazendo isso com iReport 4.1.1, xpath …
mas não estou entendendo direito o xpath …
no [color=red]detalhe[/color]; quando deixo assim, e coloco os campos -[color=blue] funciona[/color]
& lt ; queryString language = "xPath" & gt ;
& lt ; ! [ CDATA[/nfeProc/NFe/infNFe/det/prod ] ] & gt ;
& lt ; / queryString & gt ;
// campos
& lt ; field name = "NCM" class = "java.lang.String" & gt ;
& lt ; fieldDescription & gt ; & lt ; ! [ CDATA[NCM ] ] & gt ; & lt ; / fieldDescription & gt ;
& lt ; / field & gt ;
& lt ; field name = "CFOP2" class = "java.lang.String" & gt ;
& lt ; fieldDescription & gt ; & lt ; ! [ CDATA[CFOP ] ] & gt ; & lt ; / fieldDescription & gt ;
& lt ; / field & gt ;
& lt ; field name = "uCom2" class = "java.lang.String" & gt ;
& lt ; fieldDescription & gt ; & lt ; ! [ CDATA[uCom ] ] & gt ; & lt ; / fieldDescription & gt ;
& lt ; / field & gt ;
mas preciso dos campos impostos tambem
ai não recupera os dados.
como devo codificar o XML do Ireport
MAS NÃO ESTOU CONSEGUINDO.
no [color=red]detalhe[/color]; quando deixo assim, e coloco os campos -[color=blue] NÃO funciona[/color]
<queryString language="xPath">
<![CDATA[/nfeProc/NFe/infNFe/det]]>
</queryString>
// campos
<field name="NCM" class="java.lang.String">
<fieldDescription><![CDATA[prod/NCM]]></fieldDescription>
</field>
<field name="CFOP2" class="java.lang.String">
<fieldDescription><![CDATA[prod/CFOP]]></fieldDescription>
</field>
<field name="uCom2" class="java.lang.String">
<fieldDescription><![CDATA[prod/uCom]]></fieldDescription>
</field>
//impostos ISENTO no item
<field name="orig" class="java.lang.String">
<fieldDescription><![CDATA[imposto/ICMS/ICMS40/orig]]></fieldDescription>
</field>
<field name="CST" class="java.lang.String">
<fieldDescription><![CDATA[imposto/ICMS/ICMS40/CST]]></fieldDescription>
</field>
OU
//impostos TRIBUTADO no item
<field name="orig" class="java.lang.String">
<fieldDescription><![CDATA[imposto/ICMS/ICMS00/orig]]></fieldDescription>
</field>
<field name="CST" class="java.lang.String">
<fieldDescription><![CDATA[imposto/ICMS/ICMS00/CST]]></fieldDescription>
</field>
vc ja chegou nesta etapa ?
eu ja consegui criar o PDF do XML.
Lindberg 14 de out. de 2011
FUNCIONOOOOOOOOOOOOOOU !!!
conforme configuracao acima, depois que ajustei todos os campos …
agora proxima faze, não mostrar dados de campos null
nas propriedades do campo > Print When Expression
$F{CST2} == null ? new Boolean(false) : new Boolean(true)
Lindberg 14 de out. de 2011
olha o codigo para criar o PDF apartir do XML …
estou postando porque pode ajudar muita gente no guj !
import java.util.HashMap ;
import net.sf.jasperreports.engine.JRException ;
import net.sf.jasperreports.engine.JRResultSetDataSource ;
import net.sf.jasperreports.engine.data.JRXmlDataSource ;
import net.sf.jasperreports.engine.JasperCompileManager ;
import net.sf.jasperreports.engine.JasperFillManager ;
//import net.sf.jasperreports.engine.JasperManager;
import net.sf.jasperreports.engine.JasperPrint ;
import net.sf.jasperreports.view.JasperViewer ;
import net.sf.jasperreports.engine.JasperPrintManager ;
import net.sf.jasperreports.engine.xml.JRXmlLoader ;
import net.sf.jasperreports.engine.JasperExportManager ;
import net.sf.jasperreports.engine.JasperReport ;
import net.sf.jasperreports.engine.design.JasperDesign ;
//http://www.guj.com.br/java/203921-dias-entre-datas-ireport/2
public class opencarrego {
public static void main ( String [] args ) throws Exception {
try {
String relatorio = System . getProperty ( "user.dir" )
+ "/meu_NFE.jasper" ;
JRXmlDataSource xml =
new JRXmlDataSource ( "nf.xml" ,
"/nfeProc/NFe/infNFe/det/prod" );
JasperPrint jp = JasperFillManager . fillReport ( relatorio , new HashMap (), xml );
//---- visualizar na tela
// JasperViewer.viewReport(jp, false);
//---- cria html
// JasperExportManager.exportReportToHtmlFile(jp, "a.html");
//---- cria pdf
JasperExportManager . exportReportToPdfFile ( jp , "a.pdf" );
} catch ( Exception e ) {
System . out . println ( "Ocorreu um erro: " + e . toString () );
e . printStackTrace ();
}
}
}