Numero por Extenso no Ireport [Resolvido]

Galera sei que ja existem topicos sobre este assunto mais em nenhum consegui resolver meu problema.

Seguinte tenho um relatorio no ireport ja pronto e uma classe no eclipse que gera o relatorio por la, ate ai tudo bem. O problema e que em um determidado campo preciso mostrar um determinado valor e dentro dos parenteses logo em seguida o mesmo numero por extenso. Ou seja: valor 123(Cento e Vinte e Tres), tenho uma classe no eclipse que transforma um numero em um numpero por extenso o metodo que passa o numero se chama interpret, gostaria de saber como faço para passar o numero do ireport para a classe que transformar em extenso e devolver para o ireport o valor em extenso para que saia no relatorio.

Obrigado

cara, acho q vc vai ter que gerar um arquivo .jar contendo essa sua classe de conversao e apos isso incluir o .jar no classpath do ireport. apartir dai vc pode usar esse metodo apartir do ireport importando essa classe. acho q o caminho é mais ou menos esse.

como eu faria isso? estou bem perdido e precisando de ajuda pra terminar esse relatorio. se puder me ajudar ficarei grato

Seguinte, basta colocar o .java mesmo no classpath e chamar assim:

cara se vc nao souber criar o .jar(executavel java) da uma pesquisada no google, la vc encontra diversos tutoriais explicando e pra facilitar vc pode fazer um pesquisa mais detalhada como “criar .jar eclipse”. Ja em relacao a incluir isso no seu relatorio no ireport tem esse tutrial ai - http://www.furutani.com.br/tutoriais/crosstab/tutorial_crosstab.pdf pra vc so interessa o final do tutorial(das 2 ultimas linhas da pagina 10 pra baixo). ve se com isso vc consegue algo.

vlw

Por favor, não triplique seus tópicos. Se a dúvida não te atender, volte no tópico original e poste lá a complementação da dúvida, ou dê mais explicações das suas tentativas frustradas para solução do problema.

Só não adianta ficar reabrindo o tópico, como se vc não tivesse feito nada no período. Isso só vai gerar trancamentos de tópicos, e respostas não relacionadas ou duplicadas. Tenha em mente que quanto mais tópicos você cria para uma mesma dúvida, mais tempo leva para resolver seu problema, pois a conversa não evolui.

Desculpe pela ignorancia quanto aos topicos, quanto a duvida se alguem puder me ajudar postando um modelo de como faze-lo não estou conseguindo com os exemplos passados.

Obrigado

Seguinte mano, coloca essa classe que eu estou enviando anexo no teu “class patch”, depois cria um “text field” e coloca exatamente esse código aqui:

Onde $V{valor} é o número que você quer passar para extenso

Cara tentei e nao consegui ta ai meu projeto ja com os relatorios juntos

https://docs.google.com/viewer?a=v&pid=explorer&chrome=true&srcid=0B8Sk2re8DptrMTgzMDY2ZmEtODY2Mi00YmYzLThhZjItZWRkNzRmM2MzMmIz&hl=en_US

Posta o erro aí…

Filling report... Locale: português (Brasil) Time zone: Default Error filling print... Error evaluating expression : Source text : "" + new Extenso(new BigDecimal($F{id})) net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression : Source text : "" + new Extenso(new BigDecimal($F{id})) at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:203) at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:589) at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:557) at net.sf.jasperreports.engine.fill.JRFillElement.evaluateExpression(JRFillElement.java:867) at net.sf.jasperreports.engine.fill.JRFillTextField.evaluateText(JRFillTextField.java:421) at net.sf.jasperreports.engine.fill.JRFillTextField.evaluate(JRFillTextField.java:406) at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:257) at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:468) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2037) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:761) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:271) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:129) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:903) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:813) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:58) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:247) at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:878) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) Caused by: groovy.lang.GroovyRuntimeException: Could not find matching constructor for: Extenso(java.math.BigDecimal) at groovy.lang.MetaClassImpl.invokeConstructor(MetaClassImpl.java:1481) at groovy.lang.MetaClassImpl.invokeConstructor(MetaClassImpl.java:1397) at org.codehaus.groovy.runtime.callsite.MetaClassConstructorSite.callConstructor(MetaClassConstructorSite.java:46) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:52) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:190) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:198) at teste_1317673896086_347716.evaluate(calculator_teste_1317673896086_347716:163) at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:190) ... 19 more Print not filled. Try to use an EmptyDataSource...

Usa o “Extenso.class” que eu te enviei a alguns post’s atrás, se precisar eu te mando o “.java” dele também.
O relatório já está sendo lido, o problema é que a chamada dele é diferente. Usa o meu que é bem mais simples.

por favor me mande o .java não estou conseguindo incluir o .class

e muito obrigado pela ajuda que esta me dando, não somente vc, como todos do forum.

Segue anexo, se der algum problema me envia o erro.

Você quer mostrar o número extenso entre parentes correto? sendo assim a chamada pode ser assim:

Cara muito obrigado, obrigado mesmo foi so usar o .java que ja funcionou valeu mesmo um abraço