Variables SEC_SQLI

Les objets de variables SEC_SQL ou Secure SQL extraient les valeurs de la base de donnéesUne base de données est un ensemble organisé de données qui comprend plusieurs structures de données pertinentes. Automation EngineCe composant commande un système Automation Engine. Il se compose de plusieurs processus serveur. en toute sécurité.

SQL interne Secure

Ce type de variable remplit la même fonction que "SQL - interne", à la seule différence que les variables peuvent toujours être insérées dans les instructions SQL - indépendamment du paramètre VAR_SECURITY_LEVEL dans la variable UC_SYSTEM_SETTINGS Pour inclure des variables dans SQL, vous devez utiliser les paramètres de liaison. Ainsi vous ne pouvez pas rédiger d'instructions SQL, ce qui protège la base de données du risque d'une injection SQL.

Comme pour "SQLI interne", les valeurs des variables sont extraites directement de la base de données AE. Un agent"Programme permettant l'exécution de Traitements sur des systèmes cible comme un ordinateur ou des solutions d'entreprise. Egalement un type d'objet distinct dans l'Automation Engine. [Anciennement appelé ""Exécuteur de tâches"".]" de base de données n'est donc pas requis.

Les variables SQLI SECURE sont liées au paramètre SQLVAR_INTERNAL dans la variable UC_SYSTEM_SETTINGS et au privilège "Créer et modifier les variables SQL-interne".

Pour des raisons de sécurité, par défaut, vous ne pouvez créer ni modifier de variables SEC_SQLI or SQLI. Ce paramètre peut être modifié via SQLVAR_INTERNAL de la variable système UC_SYSTEM_SETTINGS

Pour des raisons techniques, le système ne peut pas vérifier si seules des commandes SELECT sont utilisées dans le SQL de la variable.

Pour déterminer le nombre maximal de lignes retournées, utilisez le paramètre SQLVAR_MAX_ROWS de la variable UC_SYSTEM_SETTINGS.

Lorsque vous utilisez des variables de base de données (types SEC_SQLI, SEC_SQL, SQLI, et SQL), les champs binaires ne sont pas pris en charge. Les données binaires résultant d'une requête SQL provoqueront une erreur dans l'aperçu ou lorsque les valeurs sont récupérées lors de l'exécutionDurée d'exécution d'une Tâche. C'est la période entre le début et la fin de la Tâche. La période d'activation n'en fait pas partie (voir aussi Activation et Démarrage)..

Notez que dans les variables de base de données (de type SEC_SQLI, SEC_SQL, SQLI, et SQL), pour des raisons techniques, le système ne vérifiera pas les instructions SQL traitées. Ceci signifie aussi que vous pouvez modifier ou supprimer des enregistrements de données à l'aide d'objets variable. Pour des raisons de sécurité, Automic recommande de limiter en conséquence l'accès utilisateurDans Automation Engine, un utilisateur se réfère à une instance d'un objet utilisateur, mais c'est en général une personne qui travaille avec les produits Automic. Chaque utilisateur a son identifiant et un ensemble de droits d'accès aux différentes parties du système Automation Engine et à la suite de produits. Ces droits d'accès se présentent sous la forme d'autorisations et de privilèges dans Automation Engine, de rôles utilisateurs dans Decision, de droits EventBase et de droits des objets pour l'application Web ARA. Vous pouvez les gérer en central avec les fonctions de gestion des utilisateurs d'AWI. Reportez-vous aussi à la gestion des droits des utilisateurs.. Si possible, déployez un utilisateur de base de données ayant des droits en lecture seule pour les variables qui ont accès à 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 variables de base de données (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 prises en charge dans les champs de sélection destinés aux types de variables BACKEND, EXEC, FILELIST, SEC_SQLI, SEC_SQL, SQLI, SQL, et XML. L'utilisation de variables PromptSet est nécessaire pour la création de Recharger dynamiquement les dialogues PromptSet.

Champ

Description

Type Ce champ en lecture seule affiche le type de variable SQL - interne. Vous déterminez le type de variable au moment de la création de l'objetLes activités et déroulements que contrôle l'Automation Engine sont représentés à l'aide d'objets (voir aussi Tâche).. Il ne peut pas être modifié une fois la variable définie.

Instruction Oracle

Instruction SQL Server

Instruction DB2

Instructions SQL utilisées pour sélectionner certains éléments de la base de données qui servent de valeurs de variables.

Exemple : select * from OH

Pour ouvrir un éditeur de cellule afin de saisir votre instruction SQL, cliquez sur l'icône , à droite du champ.

Les variables qui sont indiquées directement dans SQL ne sont pas remplacées. Pour inclure des variables, utilisez les paramètres de liaison.

Vous pouvez inclure des variables PromptSet ici, en utilisant la fonction Rechargement dynamique pour les invites de zones de listes modifiables. Lorsque des variables PromptSet sont utilisées dans des objets variable dynamiques et que vous cliquez sur Aperçu, vous obtiendrez une erreur. La raison en est que les variables PromptSet n'existent pas dans l'objet variable dynamique. Cependant, les variables PromptSet seront résolues lorsque les objets incluant des PromptSet sont exécutés.

Taille maximale : 4096 caractères

Définition de paramètres de liaison

La table de la section Paramètre de liaison contient une liste des paramètres de liaison. Les paramètres de liaison permettent d'ajouter des valeurs de variables dans les commandes SQL. Vous pouvez utiliser des variables de scriptEgalement un type d'objet distinct dans l'Automation Engine., des variables d'objet"Caractères de remplacement des valeurs définies dans l'onglet ""Variables & Prompts"" d'un objet.", des variables prédéfinies et des caractères de remplacement pour les objets VARA que vous saisissez dans cette table. Chaque ligne représente un paramètre de liaison.

La variable VAR_SECURITY_LEVEL (UC_SYSTEM_SETTINGS) n'impose aucune limitation.

Dans les instructions SQL, vous devez utiliser le caractère ? à chaque emplacement où la valeur remplacée d'un paramètre de liaison doit être insérée. Un paramètre de liaison doit exister pour chaque ?. Assurez-vous de maintenir l'ordre correct du tableau. Notez que vous ne pouvez pas utiliser des paramètres de liaison plusieurs fois.

Si une variable indiquée n'existe pas, aucune valeur ne pourra être remplacée. Dans ce cas, le nom de la variable est utilisé, ce qui peut provoquer une erreur lors de la résolution de la variable.

Vous pouvez inclure des variables PromptSet ici, en utilisant la fonction Rechargement dynamique pour les invites de zones de listes modifiables. Lorsque des variables PromptSet sont utilisées dans des objets variable dynamiques et que vous cliquez sur Aperçu, vous obtiendrez une erreur. La raison en est que les variables PromptSet n'existent pas dans l'objet variable dynamique. Cependant, les variables PromptSet seront résolues lorsque les objets incluant des PromptSet sont exécutés.

Vous pouvez utiliser des noms de variables comme paramètres de liaison, avec la valeur de votre choix.

Les types de données et les formats de saisie suivants sont pris en charge pour les paramètres de liaison :

Les autres types de champ de la base de données et les autres formats ne sont pas pris en charge. Les types de données ne sont pas convertis (pas de conversion d'horodatage à date). Si une valeur non valide est insérée, une erreur survient lors de l'exécution de la commande SQL.

Travailler dans la table Paramètres de liaison

Pour : Procédez comme suit :
Ajouter une ligne à un tableau

Cliquez sur dans la section appropriée. Cliquez sur les cellules du tableau pour éditer leurs valeurs.

Éditer une cellule dans une ligne du tableau

Cliquez sur la cellule du tableau et modifiez sa valeur.

Supprimer une ou plusieurs lignes du tableau

Cochez la case de la ou des lignes, puis cliquez sur .

Supprimer toutes les lignes du tableau

Cochez la case de l'en-tête de colonne, puis cliquez sur .

Couper une ou plusieurs lignes et les coller dans le presse-papiers AWIProduit Automic : interface Web, simple et claire, qui permet l'+char(39)+'accès aux différentes fonctionnalités d'+char(39)+'Automation Engine.

Cochez la case de la ou des lignes, puis cliquez sur .

Copier une ou plusieurs lignes et les coller dans le presse-papiers AWI

Cochez la case de la ou des lignes, puis cliquez sur .

Coller la ou les lignes du pesse-papiers AWI en bas du tableau.

Cliquez sur .

Spécification des paramètres Données et format

Colonne

Description

Type de données

Le type de données détermine le format de la valeur des variables.

  • Texte : Chaîne de caractères alphanumériques. Les espaces vides à la fin sont supprimés, ceux du début sont conservés. Si la case Limiter la longueur n'est pas cochée, aucune limite ne sera appliquée à la longueur de la chaîne de caractères.

    Vous pouvez formater la chaîne de caractères ainsi :

    • Sélectionnez Limiter la longueur pour afficher le dialogue de saisie Longueur de texte max. vous permettant de limiter la longueur du texte.
      Valeurs possibles : 1 à 1024
    • Sélectionnez Majuscules pour convertir le texte de la variable en majuscules.
  • Nombre : Entier signé, c.-à-d. nombre entre 0 et 2147483647.

    Vous pouvez formater la chaîne de caractères ainsi :

    • Sélectionnez la liste déroulante Format de sortie pour choisir le mode d'affichage du nombre.
    • Sélectionnez Définir la valeur min. pour afficher le dialogue de saisie Valeur min..
      Valeurs autorisées : max. 16 chiffres avant et 16 chiffres après la virgule
    • Sélectionnez Définir la valeur max. pour afficher le dialogue de saisie Valeur max..
  • Heure : Le format de l'heure par défaut est hh:mm:ss. Vous pouvez :
    • Sélectionner un autre format dans la liste déroulante.
    • Définir une valeur minimum et maximum.
  • Date : Le format de date par défaut est aaaa-mm-jj. Vous pouvez :
    • Sélectionner un autre format dans la liste déroulante.
    • Définir une valeur minimum et maximum. Notez que vous ne pouvez pas définir de date avant le 01.01.1980 comme valeur minimum.
  • Horodatage : Le format d'horodatage par défaut est aaaa-mm-jj hh:mm:ss. Vous pouvez :
    • Sélectionner un autre format dans la liste déroulante.
    • Définir une valeur minimum et maximum. Notez que vous ne pouvez pas définir de date avant le 01.01.1980 comme valeur minimum.

Le format exact du type de données sélectionné (à l'exception de ''chaîne") peut être défini dans le champ Format de sortie.

Le type de données des valeurs disponibles dans la première colonne est vérifié. Le type de données de la variable doit correspondre à celui de la première colonne renvoyé par les commandes SQL, pour les sources ''SQL'' ou "SQL interne". Les données peuvent aussi être traitées à l'aide d'instructions SQL spécifiques. Une erreur se produit si des variables statiques doivent être enregistrées ou si le type de données ne correspond pas lors de l'accès à des variables dynamiques.

Notez les points suivants si vous modifiez le type de données d'un objet variable statiqueObjet variable avec le paramètre "Source" - "statique" : Les valeurs des Variables sont saisies par l'Utilisateur ou par un script et restent enregistrées dans l'objet. qui contient déjà des valeurs :

  • Vous pouvez modifier les types "Nombre", "Horodatage", "Heure" et "Date" en "Texte". Les valeurs sont converties sans aucune modification.
  • Un format de sortie doit être sélectionné si "Texte" a été modifié en "Nombre", "Horodatage", "Heure" ou "Date". Lors de l'enregistrement de l'objet variable, le système vérifie que les valeurs correspondent au format spécifié.
  • Vous ne pouvez pas modifier les types de données "Date", "Heure", "Nombre" et "Horodatage". Ils doivent être tout d'abord convertis en type de données "Texte" avant de pouvoir les modifier.

Le type de données des variables "Multi", "SQL" et "SQL interne" peut être modifié à n'importe quel moment.

Le type de données de la variable de scriptCaractères de remplacement d'une valeur dans un Script. en question ("float", "signed", "unsigned" ou "string") n'a pas d'importance pour les valeurs qui sont extraites à partir d'objets variable de type "Nombre" en utilisant l'élément de script GET_VAR. La valeur peut toujours être enregistrée. Les signes et les décimales sont supprimés lorsque le type de données de la variable de script ne les prend pas en charge. Si un autre type de données a été spécifié dans l'objet variable, les valeurs sont toujours transmises au script sous forme de "chaîne".

Format de sortie

Ce paramètre définit le format dans lequel les valeurs sont enregistrées dans l'objet variable (source : variables statiques) ou extraites dans la source de données (variables dynamiques).

Le contenu de ce menu de sélection dépend du type de données. Plusieurs formats différents sont disponibles pour chaque type de données (à l'exception du type ''chaîne").

Le format de sortie ne fait référence qu'à la première colonne. Pour les variables statiques, il s'agit de la colonne Valeur 1, pour les variables multi et base de données, il s'agit de la première colonne de base. Notez que les variables Multi utilisent la première colonne de base comme colonne de référence. Cela signifie que le format de sortie de la variable source peut avoir une incidence sur les valeurs extraites.

Le format de sortie des variables statiques pour un type de données déterminé est modifiable à tout moment. Les valeurs sont converties dans le nouveau format. Si les valeurs ne correspondent pas à l'ancien format, il n'est pas possible d'effectuer une conversion dans le nouveau format.

Le format dans lequel les valeurs sont saisies dans les variables statiques n'a pas d'importance tant qu'il s'agit d'un format pris en charge par AE pour le type de données en question. Les valeurs sont ensuite converties dans le format de sortie approprié.

Le type de données "texte" n'affiche pas ce champ.

Type de données Formats disponibles Format par défaut

Horodatage

  • AAAAMMJJHH24MISS
  • AAAA-MM-JJ HH:MM:SS

AAAA-MM-JJ HH:MM:SS

Date

  • JJ-MOI-AAAA
  • JJ-MOI-RR
  • MM-JJ-AAAA
  • AAAAMMJJ
  • MMJJRR
  • JJMMRR
  • MM-JJ-RR
  • MM/JJ/RR
  • AAMMJJ
  • AA.MM.JJ
  • AA-MM-JJ
  • AAAAMMJJ
  • AAAA.MM.JJ
  • AAAA-MM-JJ
  • JJMMAA
  • JJ.MM.AA
  • JJ-MM-AA
  • JJMMAAAA
  • JJ.MM.AAAA
  • JJ-MM-AAAA
  • MMJJAA
  • MMJJAAAA
  • MM/JJ/AA
  • MM/JJ/AAAA

AAMMJJ

Heure
  • HHMMSS
  • HH:MM:SS
  • HHMM
  • HH:MM
  • MMSS
  • MM:SS

HHMMSS

Nombre
  • 0.00
  • +0.00
  • -0.00
  • 0
  • +0
  • -0
  • 16 chiffres
16 chiffres

Certains formats de date contiennent "RR" comme caractères de remplacement pour l'année raccourcie. "AA" et "RR" acceptent différentes conventions de décompte des siècles sur la base des deux caractères de la date raccourcie.
"AA" : si le nombre se situe entre 00 et 80, le siècle actuel s'applique. Pour la plage allant de 81 à 99, c'est le siècle précédent. 
"RR" : si le nombre se situe entre 00 et 49, le siècle actuel s'applique. Pour la plage allant de 50 à 99, c'est le siècle précédent.

Exemple :
Format de date "JJMMAA'" et la date complète qui en résulte :
"010305" correspond au 01 mars 2005
"010365" correspond au 01 mars 2065
"010380" correspond au 01 mars 2080
"010385" correspond au 01 mars 1985

Exemple :
Format de date ''JJMMRR'" et la date complète qui en résulte :
"010305" correspond au 01 mars 2005
"010365" correspond au 01 mars 1965
"010380" correspond au 01 mars 1980
"010385" correspond au 01 mars 1985

Pour le type de données ''Heure'' ou ''Horodatage'', la valeur pour l'heure doit représenter un nombre à quatre ou six chiffres. Les décimales sont supprimées. Un nombre à quatre chiffres est converti en heures et minutes.

Exemple :
Type de données : Heure
Format de sortie : HH:MM:SS
Valeur de l'utilisateur ou de la source de données : 1234, 1234.5, 123400, 12:34, 12:34:00
Valeur de variable qui en résulte : 12:34:00

Type de données : Horodatage
Format de sortie : AAAA-MM-JJ HH:MM:SS
Valeur de l'utilisateur ou de la source de données : 20110325 2201, 20110325 2201.5, 20110325 220100
Valeur de variable qui en résulte : 2011-03-25 22:01:00

Définir la valeur min.

Valeur min.

Applique une valeur minimale.

Le type de données "texte" n'affiche pas ces champs.

Définir la valeur max.

Valeur max.

Applique une valeur maximale.

Le type de données "texte" n'affiche pas ces champs.

Limiter la longueur

Longueur de texte max.

Applique un nombre maximal de caractères.

Valeurs autorisées : 1 à 1024

Si cette option est désactivée, la valeur est illimitée.

La colonne clé des objets VARA a une limite maximale de 200 caractères. Cette limite existe toujours et il est impossible de l'augmenter ou de la désactiver.

La colonne de résultats des variables dynamiques est illimitée. La longueur dépend des colonnes de valeurs.

Cette limite se réfère à la première colonne de valeurs pour les variables statiques et dynamiques. La clé ou la colonne de résultat n'est pas vérifiée.

Les valeurs qui dépassent la longueur maximale sont exclues.

Seul le type de données "texte" affiche ces champs.

Majuscules

Les minuscules dans les valeurs de variable sont automatiquement transformées en majuscules. Cela ne concerne que la première colonne de valeurs.

Seul le type de données "texte" affiche ce champ.

Format du résultat

Définition du contenu de la colonne résultat.

La première colonne affichée dans l'aperçu est la colonne de résultat. Les autres colonnes contiennent les valeurs des colonnes de la base de données qui sont retournées par la requête SQL. La colonne de résultat peut se composer d'une combinaison des colonnes de valeurs et d'autres caractères au choix. Ceci est défini par le format du résultat.

Les numéros de colonne qui ont été indiqués entre accolades { } dans le champ Format du résultat sont remplacés par la valeur de la colonne concernée.

Exemple :
Colonne de valeurs 1 : JOB1
Colonne de valeurs 2 : WIN01
Format du résultat : {1}_{2}
Colonne de résultat : JOB01_WIN01

La colonne de résultat correspond à la première colonne de valeur si aucun format du résultat n'est indiqué.

Les limitations des variables (valeur min., valeur max. et limiter le texte) n'influencent pas la colonne de résultat, mais uniquement la première colonne renvoyée. Si des valeurs de cette colonne dépassent la plage autorisée, les lignes en question sont exclues et ne sont pas disponibles via l'objet variable.

Plage de validité

Détermine la plage de validité de la variable. Ce paramètre peut être utilisé pour simplifier le script destiné à lire ou écrire les valeurs de variables. La clé doit normalement être indiquée comme paramètre dans l'élément de script :PUT_VAR ou GET_VAR, ce qui rend difficile l'enregistrement de certaines valeurs de façon unique. Si aucune clé n'est définie dans le script, le système choisit automatiquement celle correspondant au paramètre de l'objet variable (tel que le nom de l'agent dans un job).

Spécification du paramètre Accès au script

Vous pouvez spécifier un comportement à adopter lorsque le code est introuvable, via les cases d'option Si code introuvable.

Pour :

Choisir :

Affiche un message d'erreur si un objet tente d'accéder par script à un élément absent lors de l'exécution. Renvoie une erreur
N'utilise pas le résultat du format de sortie si " " Retourne les valeurs initiales

Aperçu de commandes

Pour exécuter une commande, sélectionnez-la, puis cliquez sur Aperçu. Cela exécute les instructions SQL et affiche les résultats. Ainsi, les instructions SQL sont vérifiées et d'autres erreurs peuvent être identifiées (par exemple, le type de données de l'objet variable ne correspond pas à celui de la base de données) .

Dans l'exemple ci-dessus, l'instruction SQL suivante est saisie dans le champ Instruction SQL Server. Les valeurs des variables de liaison remplacent les caractères "?".

select ah_name as ObjectName,ah_timestamp1 as ActivationTime,ah_timestamp2 as StartTime,ah_timestamp4 as EndTime from ah

where ah_client = ?

and ah_otype = ?

and ah_deleteflag = ?

and ah_hostdst = ?

order by ah_name asc