Je ne pense pas que cela puisse fonctionner ainsi, car en dehors du cas particulier des paramètres cascade il n'est pas possible d'introduire des dépendances entre des paramètres.
En d'autres termes lorsque un dataset s'execute pour produire la liste de sélection d'un paramètre, il ne peut pas avoir accès aux valeurs courantes des autres paramètres. Si on tente quand même de les utiliser BIRT utilise leur valeur par défaut, donc dans ton cas le datasource par défaut.
Une solution serait de permettre la sélection du datasource de manière extérieure à BIRT et de le stocker dans la session utilisateur. Puis dans le "Property binding" du datasource utiliser l'attribut de session plutôt qu'un paramètre.
On peut récupérer un attribut de session dans un rapport BIRT avec:
reportContext.getHttpServletRequest().getSession().getAttribute("myDatasource")
Plus d'infos sur la session ici
Partager