|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 4 ![]() |
Bonjour,
je viens d'installer CR 11 avec service pack 2 proposé (version achetée!). Pour utiliser CR UFL java je lis le document cr_xi_java_ufl.pdf (comme tout le monde je crois!) et fais exactement ce qu'il dit (mais oui!), mais lorsque je crée un report en utilisant "formula WorkShop" puis "formula fields new" alors "Additionnal Function" est vide!. Dans CRConfig.xml <JavaDir>C:\j2sdk1.4.2_03\bin</JavaDir> et JAVA_HOME=C:\j2sdk1.4.2_03 dans CLASSPATH j'ai setté les jars nécessaires ainsi que les deux classes MyLibrary.class MyFunction1.class et dans "regedit" aussi,(JREPath=C:\Program Files\Java\j2re1.4.2_03\bin\client\jvm.dll) biensur dans "File Option Formula Editor" j'ai mis: Java UFLs only. Quels sont les problèmes? faut il installer .NET ou pas ? ou alors c'est un bug de Crystal Report 11 avec UFL java? Merci |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 4 ![]() |
Bonjour,
Voici les étapes nécessaires: Verifier l'existance de : sp1, sp2, Monthly hot fix (CR XI) sinon télécharger: crXIwin_sp1.zip, crXIwin_sp2.zip et les installer. 1 ) Controle Panel -> System -> Advanced -> Environment Variables JAVA_HOME=C:\j2sdk1.4.2_03 (ou C:\j2sdk1.4.2_03\) 2) vérifier: regedit JREPath=C:\Program Files\Java\j2re1.4.2_03\bin\client\jvm.dll ou JREPath=C:\j2sdk1.4.2_03\jre\bin\client\jvm.dll 3) La classe: MyFunction1.java: //-- je rajoute le package ------- package com.ufl; import com.crystaldecisions.reports.formulas.*; import com.crystaldecisions.reports.common.value.*; public class MyFunction1 implements FormulaFunction { //..... } La classe MyLibrary.java: //-- je rajoute le package ------- package com.ufl; import com.crystaldecisions.reports.formulas.*; import com.crystaldecisions.reports.common.value.*; public class MyLibrary implements FormulaFunction { //..... } 4) Compiler ces deux classes puis IL FAUT LES METTRE DAND UN FICHIER JAR, par ex: jar cvf ./libUfl.jar ./com/ufl/*.class puis, vérifier le contenue du fichier libUfl.jar: MyLibrary.class ..... com\ufl\ MyFunction1.class ... com\ufl\ PS: avec JRC j'utilise le meme libUfl.jar. 5) j'ai copié le contenue du repertoire (les jars) C:\Program Files\Common Files\Business Objects\3.0\java\lib dans mon répertoire C:\crystalReport_V11. (pour éviter les espaces des noms de répertoires) 6) Rajouter dans CLASSPATH: (avec libUfl.jar) Controle Panel -> System -> Advanced -> Environment Variables CLASSPATH: C:\crystalReport_V11\lib\CrystalFormulas.jar; C:\crystalReport_V11\lib\CrystalReportingCommon.jar; C:\crystalReport_V11\lib\u211java.jar; C:\crystalReport_V11\external\icu4j.jar; C:\crystalReport_V11\external\log4j.jar; C:\crystalReport_V11\lib\libUfl.jar Note : (sur la meme ligne) 7) dans CRConfig.xml (MyLibrary avec le nom du package) <ExternalFunctionLibraryClassNames> <classname>com.ufl.MyLibrary</classname> </ExternalFunctionLibraryClassNames> <JavaDir>C:\j2sdk1.4.2_03\bin</JavaDir> <Classpath>C:\crystalReport_V11\lib\crlovmanifest.jar; C:\crystalReport_V11\lib\crlovexternal.jar; C:\crystalReport_V11\lib\CRDBJavaServerCommon.jar; C:\crystalReport_V11\lib\CRDBJavaServer.jar; C:\crystalReport_V11\lib\CRDBJDBCServer.jar; C:\crystalReport_V11\lib\CRDBXMLServer.jar; C:\crystalReport_V11\lib\CRDBJavabeansServer.jar; C:\crystalReport_V11\lib\external\CRDBXMLExternal.jar; C:\crystalReport_V11\lib\external\log4j.jar; C:\crystalReport_V11\lib\cecore.jar; C:\crystalReport_V11\lib\celib.jar;C:\crystalReport_V11\lib\ebus405.jar; C:\crystalReport_V11\lib\CorbaIDL.jar; C:\crystalReport_V11\lib\external\freessl201.jar; C:\crystalReport_V11\lib\external\asn1.jar; C:\crystalReport_V11\lib\external\certj.jar; C:\crystalReport_V11\lib\external\jsafe.jar; C:\crystalReport_V11\lib\external\sslj.jar;{CLASSPATH}</Classpath> (Rem: le nom du répertoire ne contenant pas d'espace). (sous Linux, faire attention les noms (case sensitive) des fichiers jars) //----------------------------------------------------------------------- et ça marche. Point important, c'est de mettres les classes users dans un fichier jar. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com