Par exemple :
SELECT
MYTABLE.'STATE',
MYTABLE.'ZIPCODE',
SUM (MYTABLE.'SALES')
FROM
'MYTABLE' MYTABLE
GROUP BY
MYTABLE.'STATE',
MYTABLE.'ZIPCODE'
24.2.5 Définition d'une commande SQL
Si la base de données que vous utilisez prend en charge un langage de requête tel que SQL, vous pouvez écrire votre propre commande qui sera représentée dans Crystal Reports sous la forme d'un objet table. Cela permet aux utilisateurs de bases de données de garder le contrôle total sur le traitement de données qui fait l'objet d'un empilage sur le serveur de base de données. Un utilisateur expérimenté en matière de bases de données et de langage SQL peut écrire une commande optimisée qui peut réduire considérablement la taille de l'ensemble de données renvoyé par le serveur.
Vous pouvez écrire votre propre commande à l'aide du nœud
Ajouter une commande
de l'
Expert Base de données
pour créer une table virtuelle qui représentera les résultats du traitement de la commande. Une fois la commande créée, vous pouvez la stocker dans le référentiel SAP BusinessObjects Enterprise afin de la partager avec un grand nombre d'utilisateurs.
Lorsque vous utilisez une table virtuelle créée en tant que commande ou lorsque vous utilisez une commande du
Référentiel SAP BusinessObjects Enterprise, Crystal Reports ne modifie pas la syntaxe du code SQL soumis au serveur (en d'autres termes, il n'ajoute pas automatiquement de guillemets ou de caractères d'échappement). Ce comportement s'applique également aux paramètres utilisés dans les commandes. Vous devez par conséquent ajouter les guillemets et les caractères d'échappement nécessaires à votre pilote de base de données.
Remarque
Certains des pilotes de base de données natifs de Crystal Reports ne prennent pas en charge la fonction
Ajouter une commande :
● DB2 Server
● Sybase Server
● Informix Online Server
Remarque
La fonction Ajouter une commande est vulnérable aux attaques par injection SQL.
De nombreuses pages Web utilisent l'injection SQL pour insérer des paramètres utilisateur dans les requêtes
SQL exécutées sur la base de données relationnelle. Par exemple, une page Web de connexion utilise un nom d'utilisateur et un mot de passe et exécute une injection SQL dans la base de données pour authentifier les informations. Un pirate peut insérer une valeur dans le champ du nom d'utilisateur ou du mot de passe pour modifier la requête SQL s'exécutant sur la base de données à des fins malhonnêtes.
Liens associés
Guide de l'utilisateur de SAP Crystal Reports 2011
Bases de données
©
2013 SAP AG ou société affiliée SAP. Tous droits réservés.
521
Expert Base de données
24.2.5.1 Pour créer un objet commande
1. Dans l'Expert Base de données, développez le dossier
Créer une nouvelle connexion
et parcourez les sousdossiers pour trouver votre source de données.
2. Connectez-vous à votre source de données si nécessaire.
3. Dans votre source de données, cliquez deux fois sur le nœud
Ajouter une commande
.
4. Dans la
Boîte de dialogue Ajouter une commande au rapport
, saisissez une commande/requête appropriée pour la source de données que vous avez ouverte.
Par exemple :
SELECT
Customer.`Customer ID`,
Customer.`Customer Name`,
Customer.`Last Year's Sales`,
Customer.`Region`,
Customer.`Country`,
Orders.`Order Amount`,
Orders.`Customer ID`,
Orders.`Order Date`
FROM
Customer Customer INNER JOIN Orders Orders ON
Customer.`Customer ID` = Orders.`Customer ID`
WHERE
(Customer.`Country` = 'USA' OR
Customer.`Country` = 'Canada') AND
Customer.`Last Year's Sales` < 10000.
ORDER BY
Customer.`Country` ASC,
Customer.`Region` ASC
Remarque
L'utilisation des guillemets ou des guillemets simples (et de toute autre syntaxe SQL) est déterminée par le pilote de base de données utilisé par votre rapport. Cependant, vous devez ajouter manuellement les guillemets et d'autres éléments de syntaxe lorsque vous créez la commande.
5. En option, vous pouvez créer un paramètre pour votre commande en cliquant sur
Créer
et en saisissant des informations dans la
Boîte de dialogue Paramètre de commande
.
Pour en savoir plus sur la création des paramètres, voir
6. Cliquez sur
OK
.
Vous revenez alors au Report Designer. Dans l'Explorateur de champs, sous les champs de la base de données, la table Commandes qui s'affiche répertorie les champs de base de données que vous avez spécifiés.
Remarque
Pour créer la table virtuelle à partir de votre table Commandes, la commande doit être exécutée une fois. Si la commande possède des paramètres, vous serez invité à saisir des valeurs pour chacun d'eux.
522
©
2013 SAP AG ou société affiliée SAP. Tous droits réservés.
Guide de l'utilisateur de SAP Crystal Reports 2011
Bases de données
Remarque
Par défaut, votre commande est nommée Command. Vous pouvez modifier son alias en le sélectionnant et en appuyant sur F2.
24.2.5.2 Pour modifier un objet commande
1. Dans la zone Tables sélectionnées de l'Expert Base de données, sélectionnez la commande que vous souhaitez modifier.
2. Cliquez avec le bouton droit de la souris sur la commande et sélectionnez
Modifier la commande
dans le menu contextuel.
Remarque
Si la commande est stockée dans le Référentiel BusinessObjects Enterprise, vous devez le déconnecter
avant la modification. Pour en savoir plus, voir
Modification des objets dans le référentiel
[page 103].
3. Effectuez les modifications souhaitées dans la boîte de dialogue Modifier la commande, puis cliquez sur
OK
lorsque vous avez terminé.
24.2.5.3 Pour créer un paramètre pour un objet commande
Vous pouvez créer un champ de paramètre dans les boîtes de dialogue Ajouter une commande au rapport ou
Modifier la commande.
1. Dans la zone Liste des paramètres de la boîte de dialogue de commande appropriée, cliquez sur
Créer
.
2. Dans la boîte de dialogue Paramètre de commande, saisissez les informations suivantes dans les champs fournis :
○
Nom du paramètre
Saisissez le nom que vous souhaitez affecter à votre paramètre.
○
Texte d'invite
Saisissez le texte que vous voulez voir apparaître dans l'invite du programme.
○
Type de valeur
Sélectionnez le type de données du champ de paramètre.
○
Valeur par défaut
Saisissez la valeur que vous voulez que le programme utilise si vous n'en fournissez aucune. Cette étape est facultative.
3. Cliquez sur
OK
.
Votre paramètre est ajouté à la Liste des paramètres. Vous pouvez le modifier ou le supprimer en revenant dans la boîte de dialogue Modifier la commande.
Guide de l'utilisateur de SAP Crystal Reports 2011
Bases de données
©
2013 SAP AG ou société affiliée SAP. Tous droits réservés.
523

Link pubblico aggiornato
Il link pubblico alla tua chat è stato aggiornato.