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 comme objet table. Cela permet aux utilisateurs expérimentés de garder le contrôle total sur le traitement de données empilé sur le serveur de base de données. Un utilisateur expérimenté peut écrire une commande optimisée qui peut réduire considérablement la taille du jeu 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.
Lorsque vous utilisez une table virtuelle qui a été créée en tant que commande, 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.
Pour créer votre propre objet commande
Par exemple :
SELECT Clients.`ID client`, Clients.`ID client`, Clients.`Ventes de l'année dernière`, Clients.`Région`, Clients.`Pays`, Commandes.`Montant commande`, Commandes.`ID client`, Commandes.`Date de commande` FROM Clients Clients INNER JOIN Commandes Commandes ON Clients.`ID client` = Commandes.`ID client` WHERE (Clients.`Pays` = 'USA' OR Clients.`Pays` = 'Canada') AND Clients.`Ventes de l'année dernière` < 10000. ORDER BY Clients.`Pays` ASC, Clients.`Région` ASC
Vous revenez alors au Crystal Reports ActiveX 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 Par défaut, votre commande est nommée Command. Vous pouvez modifier son alias en appuyant sur F2.
Pour modifier un objet commande
Vous pouvez créer un champ de paramètre dans les boîtes de dialogue Ajouter une commande à l'état ou Modifier la commande.
Pour créer un paramètre pour un objet commande
Saisissez le nom que vous souhaitez affecter à votre paramètre.
Saisissez le texte que vous voulez voir apparaître dans l'invite du programme.
Saisissez le type de données du champ de paramètre.
Saisissez la valeur que vous voulez que le programme utilise si vous n'en fournissez aucune.
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.
Pour ajouter un paramètre à un objet commande
Le paramètre est ajouté à l'endroit où se trouve le curseur. Votre paramètre doit ressembler à ceci :
WHERE Clients.`Pays` = '{?CountryParam}'
Si vous voulez modifier le champ de paramètre que vous avez créé, accédez à l'Explorateur de champs et sélectionnez-le dans le nœud Champs de paramètre.