Bonjour,
Je cherche à transformer des rapports Cognos avec une selection de période, en ajoutant la possibilité de date dynamique (Mois,Semaine,Jour +1 +2...)
Ces rapports sont construit dans Report Studio, avec un appel a une procedure stocké de SQL Serveur. Une mise en page simple (Une list directement sur la page du rapport, sans mise en page ni traitement des données).
Pour l'instant j'ai intégré la récurence à ma procédure stocké en ajoutant dans le prompt du rapport une liste box de selection (Jour, Semaine, Mois), une selection d'amplitude et un decalage:
Jour, amplitude 1, décalage -1: Les données de la veille.
Semaine, amplitude 2, decalage +1: les données des deux semaines prochaines....
L'appel à la procedure stocké se fait de la manière suivante:
Quand j'intégre une selection de pèriode dans ma procédure stockée et dans mon promt, j'arrive a lancer le rapport de Report Stuido sans aucun problème:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 { Exec MaProcStock #prompt('EmployeeFilterID','Int')#, #prompt('PeriodeType','Int','0')#, #prompt('Publication','Int')#, #prompt('PeriodeDecalage','Int','0')#, #prompt('PeriodeAmplitude','Int','0')# }</sqlText>...
Par contre dans l'application tierce qui lance les instances du rapport mes rapports sortent systématiquement vide (Seulement les entêtes colonnes)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 { Exec MaProcStock #prompt('EmployeeFilterID','Int')#, #prompt('PeriodeType','Int','0')#, #sq(prompt('DateDebut','DATE'))#, #sq(prompt('DateFin','DATE'))#, #prompt('Publication','Int')#, #prompt('PeriodeDecalage','Int','0')#, #prompt('PeriodeAmplitude','Int','0')# }</sqlText>...
Voici le prompte XML, pour le lancement du dernier rapport (Avec selection de pèriode)
J'ai l'impression que le problème se passe entre l'application tierce et Cognos lors du passage des variables du prompt.
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 <?xml version="1.0" encoding="UTF-8"?> <reportcontrols name="Rapport test"> <control ctrl-type="EMPLOYEE_FILTER" label="Filtre de l'equipe : "> <parameter name="EmployeeFilterID" /> </control> <control ctrl-type="SINGLE_VALUE_SELECTOR" label="Type de période test : "> <parameter name="PeriodeType" > <list-item id="0">Période</list-item> <list-item id="1">Jour</list-item> <list-item id="2">Semaine</list-item> <list-item id="3">Mois</list-item> </parameter> </control> <control ctrl-type="DATE" label="Periode du :"> <parameter name="DateDebut"/> </control> <control ctrl-type="DATE" label="Au :"> <parameter name="DateFin"/> </control> <control ctrl-type="SINGLE_VALUE_SELECTOR" label="Decalage : "> <parameter name="PeriodeDecalage" > <list-item id="0">0</list-item> <list-item id="1">1</list-item> <list-item id="2">2</list-item> <list-item id="3">3</list-item> <list-item id="4">4</list-item> <list-item id="-1">-1</list-item> <list-item id="-2">-2</list-item> <list-item id="-3">-3</list-item> <list-item id="-4">-4</list-item> </parameter> </control> <control ctrl-type="SINGLE_VALUE_SELECTOR" label="Amplitude : "> <parameter name="PeriodeAmplitude" > <list-item id="1">1</list-item> <list-item id="2">2</list-item> <list-item id="3">3</list-item> <list-item id="4">4</list-item> </parameter> </control> </reportcontrols>
Il y a surement d'autres solutions pour gérer ces dates dynamique (Gestion des paramètre du promt dans Cognos pourun appel de la procédure stocké sur une période)
Avez vous des pistes à me donner?
Cdt.
Goulven
Partager