Bonjour,

Dans le cadre de mon travail, je dois réaliser une application qui permet d'exécuter des états Crystal Reports stockés sur un serveur. Cette application doit exécuter le rapport, en proposant à l'utilisateur d'entrer les valeurs des paramètres.

J'ai trouvé ce code qui réalise cette tâche sur la documentation du SDK :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 Private Sub OpenReport_managedRAS()
        Dim mySampleReportName As String = "Fichier de test"
 
        Dim mySessionMgr As New SessionMgr()
        Dim myEnterpriseSession As EnterpriseSession
        Dim myReportAppFactory As ReportAppFactory
        Dim myInfoStore As InfoStore
        Dim myInfoObjects As InfoObjects
        Dim myInfoObject As InfoObject
        Dim myEnterpriseService As EnterpriseService
        Dim myObject As Object
 
        myEnterpriseSession = mySessionMgr.Logon("Administrator", "", "EMN_DELL_XP", "secEnterprise")
        myEnterpriseService = myEnterpriseSession.GetService("InfoStore")
        myInfoStore = New InfoStore(myEnterpriseService)
        myInfoObjects = myInfoStore.Query("Select SI_ID From CI_INFOOBJECTS Where SI_NAME='" + mySampleReportName + "' And SI_INSTANCE=0")
        myInfoObject = myInfoObjects(1)
 
        myObject = myEnterpriseSession.GetService("", "RASReportFactory").Interface
        myReportAppFactory = CType(myObject, ReportAppFactory)
        myReportClientDocument = myReportAppFactory.OpenDocument(myInfoObject.ID, 0)
        myReportClientDocument.DataDefController.ParameterFieldController.SetCurrentValue("", "PremiereAnnee", 2007)
 
        myCrystalReportViewer.ReportSource = myReportClientDocument.ReportSource
    End Sub
Le problème est que l'exécution n'est pas inscrite dans InfoView (l'interface web qui permet d'exécuter des états en ligne). Ma question est donc la suivante : est-il possible de tracer des exécutions réalisés hors infoview ?

Cordialement,

Arnaud