J'utilise le rédacteur de rapport BIRT et j'ai plusieurs tables avec la même structure de données. Dans ma conception de rapport, je veux sélectionner la table que ma requête utilise comme paramètre de rapport (dans le cadre d'une requête mysql dans l'ensemble de données) - mais je ne peux pas le comprendre. Lorsque je crée l'ensemble de données, il est bon que je puisse utiliser des paramètres sous la forme SELECT * FROM WHERE?, Et les définir pour signaler les paramètres, mais j'obtiens une erreur si je mets le? à la table, tels que:Définir la requête FROM à l'aide du paramètre de rapport dans BIRT
SELECT * FROM? O WH 1
Existe-t-il un autre moyen de le faire? Comme c'est java, je suppose que la syntaxe suit celle d'un PreparedStatement. Dans BIRT 2.5 il y a une option de liaison de propriété sous le dialogue de jeu de données ... et j'ai essayé de définir ma requête comme: "SELECT * FROM" + params ["DataTable"]. Value + "WHERE 1", mais c'était aussi entraîne une erreur.
Essayer de paramétrer la table est généralement un grand drapeau rouge, en disant, "Mauvaise idée!" Peut-être qu'une brève explication des raisons pour lesquelles vous devez faire cela aidera les autres à fournir une bonne réponse. –
Merci Marcelo - J'ai une application à charger dans les données Excel (non normalisées), puis je crée une vue standard avec des noms de champs cohérents pour un rapport standard. J'ai plusieurs de ces feuilles Excel, et je les ai chargées dans différentes tables (la structure varie un peu ... une structure plus normalisée viendra plus tard, mais la vue du rapport restera toujours la même). Comme chacun a une vue de rapport identique, si je pouvais changer le nom de vue dans ma requête de rapport, je pourrais réutiliser le même rapport sans avoir à faire de modifications. Est-ce la mauvaise façon de s'y prendre? –