Rubrique précédente: Création du fichier XML des paramètres du rapportRubrique suivante: Définition de beans Java pour la zone de liste Paramètre


Définition de requêtes SQL pour la zone de liste Paramètre

Vous pouvez définir des requêtes SQL dans une zone de liste ou une liste déroulante du fichier XML des paramètres de rapport. Lorsque vous associez un paramètre au rapport et créez une tâche de rapport, le paramètre est affiché dans la zone de liste ou la zone déroulante. Pour utiliser SQL dans le paramètre de liste déroulante ou de zone de liste, indiquez une instruction SQL valide dans l'attribut SQL.

Exemple :

<param id="lstlastname2" displaytext="Name" name="lstlastname2" type="sqlstr" multiselect="true" sql="select lastname, lastname from tblusers where firstname like 'S%/> 

Dans l'exemple ci-dessus, tous les noms d'utilisateurs dont le prénom commence par un S figureront dans le rapport.

Toutefois, cette condition de prénom commençant par un S est statique. Elle n'est donc pas suffisamment flexible pour qu'un utilisateur charge la valeur en fonction de la valeur de paramètre saisie dans l'une des précédentes fenêtres, utilisée dans le même groupe de paramètres de rapport. Pour utiliser une valeur précédemment saisie dans une autre fenêtre, vous pouvez ajouter ##<parameter id>## à l'instruction SQL.

Par exemple, vous disposez d'un paramètre contenant id=User, de type chaîne :

<param id="User" displaytext="First Name" name="firstname" type="string"/>

Si vous voulez utiliser la valeur entrée de ce paramètre dans SQL, l'instruction SQL devra alors se présenter comme suit :

<param id="lstlastname2" displaytext="Name" name="lstlastname2" type="sqlstr" multiselect="true" sql="select lastname, lastname from tblusers where firstname like '##User##’/> 

CA Identity Manager remplace ##User## par la valeur saisie pour le paramètre avec id=User.

Remarque : La valeur du paramètre qui doit être remplacée ne peut pas figurer dans la même fenêtre que le paramètre SQL. Par exemple, si lstlastname2 se trouve dans la fenêtre 3, le paramètre User doit être dans l'une des fenêtres précédentes.