Objets VARA SQL
Les objets de VARA SQL extraient les valeurs des bases de données externes via des instructions SQL.
Cette rubrique contient les sujets suivants :
Pour extraire les valeurs d'une base de données, il vous faut :
-
Un agent de service BDD pour les variables, configuré et démarrant individuellement.
Cet agent ne peut pas être utilisé pour exécuter des jobs et des événements de base de données. Voir Installer l'agent pour les variables de base de données.
- Un objet Connexion de type base de données contenant les paramètres de connexion à la base de données.
- Un objet Login contenant l'utilisateur de la base de données et son mot de passe.
Définir des objets VARA SQL
La définition d'un objet VARA SQL se compose des pages suivantes :
- Page Général
-
Variables
Vous permet de définir les paramètres spécifiques aux objets. Certaines sections de cette page sont communes à tous les objets VARA et sont décrites dans des rubriques dédiées :
- Paramètres des variables, voir ci-après
- Paramètres
- Formats et types de données
- Accès au script
- Objets VARA du client 0 dans d'autres clients
- Aperçu, voir ci-après
- Page Gestion des versions
- Page Documentation
Présentation
Les longueurs des valeurs sont toujours illimitées. Si une limite de texte maximale a été sélectionnée dans la Page Attributs, celle-ci ne s'applique qu'à la première colonne de valeurs. Les éléments dépassant cette limite seront exclus.
Considérations importantes
Lorsque vous utilisez des objets VARA SQL, tenez compte des éléments suivants :
-
Le nombre maximal de lignes retournées est spécifié par le paramètre SQLVAR_MAX_ROWS (UC_SYSTEM_SETTINGS - Paramètres système).
-
Pour modifier le temps maximal accordé pour résoudre les variables SQL, utilisez VAR_TIMEOUT (UC_HOSTCHAR_*).
-
Les caractères non imprimables sont automatiquement supprimés (caractères ASCII 0x00 à 0x20 et 0x7F).
-
Automation Engine ne supprime pas les caractères espace à la fin des valeurs des variables SQL.
-
Les objets VARA de base de données (de type SEC_SQLI, SEC_SQL, SQLI et SQL) ne prennent pas en charge les champs binaires. Les données binaires résultant d'une requête SQL provoquent une erreur dans l'aperçu ou lorsque les valeurs sont récupérées lors de l'exécution.
-
Pour des raisons techniques, le système ne vérifie pas les instructions SQL traitées dans les objets VARA de base de données (de type SEC_SQLI, SEC_SQL, SQLI et SQL), Vous pouvez modifier ou supprimer des enregistrements de données à l'aide d'objets VARA. Pour des raisons de sécurité, pensez à limiter l'accès utilisateur en conséquence. Si possible, déployez un utilisateur de base de données ayant des droits d'accès en lecture seule aux objets VARA pouvant accéder à une base de données externe (SQL, SQL SECURE). Pour les variables SQL internes (SQLI, SQLI SECURE), vous pouvez limiter l'accès aux objets au moyen d'un privilège (créer et modifier des variables SQL internes).
-
Selon le type de données, les objets VARA de base de données (de type SEC_SQLI, SEC_SQL, SQLI et SQL) renvoient la valeur '''' (chaîne de caractères, date, heure, horodatage) ou 0 (nombre) pour les valeurs NULL.
-
Les variables PromptSet sont supportées dans les champs sélectionnés pour les variables de type BACKEND, EXEC, FILELIST, SEC_SQLI, SEC_SQL, SQLI, SQL et XML. La fonction Rechargement dynamique (prompts Liste déroulante) requiert l'utilisation de variables PromptSet.
Section Paramètres des variables
-
Type
Lecture seule, toujours SQL.
-
Connexion
L'objet Connexion de type Base de données qui contient les paramètres de connexion pour la base de données sélectionnée.
-
Login
L'objet Login qui enregistre le nom et le mot de passe de l'utilisateur de la base de données.
Si vous ne spécifiez pas d'objet Login, ni ne cochez l'option Login par défaut, les données de connexion permettant d'accéder à la base de données sont extraites de l'objet Connexion.
Une erreur survient à la résolution de l'objet VARA et cet objet ne contient aucune information de connexion.
-
Login par défaut
Vous pouvez aussi sélectionner un objet Login pour les objets VARA SQL dans l'objet Utilisateur (login par défaut), voir Utilisateurs (USER).
Activez l'option Appliquer login utilisateur pour appliquer l'objet Login affecté à l'utilisateur actuel. Il en résulte que l'objet Login spécifié dans l'objet VARA est ignoré.
Si l'objet VARA doit être résolu et qu'aucun login n'est défini dans l'objet utilisateur, une erreur se produit.
Les variables PromptSet ne peuvent pas être utilisées ici.
-
Instruction SQL
Instructions SQL utilisées pour sélectionner certains éléments de la base de données qui servent de valeurs de variables.
Les variables qui sont indiquées directement dans SQL ne sont pas remplacées. Pour inclure des variables, utilisez les paramètres de liaison.
Taille maximale : 4096 caractères
You can include PromptSet variables here when using the Rechargement dynamique (prompts Liste déroulante) feature for Combobox prompts. When you use PromptSet variables in a dynamic VARA object, the Preview feature returns an error. This is because the PromptSet variables do not exist in the dynamic VARA object. However, the PromptSet variables will be resolved when objects including the PromptSet are executed.
Pour exécuter une commande, sélectionnez-la, puis cliquez sur Aperçu. Les instructions sont exécutées et leurs résultats s'affichent. La fonction d'aperçu permet de vérifier les erreurs potentielles dans les instructions de base de données (si, par exemple, le type de données de l'objet VARA et de la base de données ne correspondent pas).
L'agent de base de données envoie les données d'aperçu sous forme de message à Automation Engine. Si le message dépasse la longueur maximale acceptée par le processus du serveur, une erreur se produit.
Longueur maximale : Définie dans le paramètre MaxMsgSize= du fichier Automation Engine UCSRV.INI.
Valeur par défaut : 3145 728 octets. Vous pouvez limiter le résultat, soit à l'aide d'un nombre de lignes maximal, soit à l'aide d'instructions SQL.
Voir aussi :