Événements BDD

Si vous êtes développeur et concepteur d'objet, vous pouvez définir des événements BDD (de base de données) pour surveiller et comparer les valeurs dans la base de données. Si les conditions que vous définissez à la page Script d'événement sont remplies, l'événement BDD déclenche les actions que vous avez codées dans sa page Script d'événement. Ces actions sont généralement des exécutions d'autres objets. Le statut des événements BDD reste En sommeil tant que les conditions horaires et de fréquence ne sont pas remplies, et passe à Vérifier lorsqu'elles le sont.

Pour récupérer les données relatives à l'objet Événement, vous pouvez utiliser les fonctions Langage de script Automation Engine suivantes :

Pour définir des objets Événement BDD

  1. La page Événement de base de données vous permet de définir ici les deux valeurs à comparer et l'opérateur servant à les comparer.

    Ces valeurs peuvent provenir de trois sources différentes :

    • Requête SQL

      Vous pouvez utiliser des variables d'objet dans une requête SQL. L'événement de base de données ne s'interrompt pas si la requête SQL est incorrecte.

      1. Dans SQL, cliquez sur l'icône de fichier pour ouvrir l'éditeur de cellule, qui vous permettra de saisir la requête SQL.

        Cliquez sur OK.

      2. Dans Agent procédez selon l'une des méthodes suivantes :

        • Sélectionnez une entrée dans la liste.
        • Cliquez sur l'icône de dossier pour ouvrir la boîte de dialogue Sélectionner l'agent et rechercher celui dont vous avez besoin.
        • Saisissez le nom de l'agent ou une variable récupérant son nom et sélectionnez le type d'agent approprié.

          Utilisez cette option si l'agent n'est pas affecté au client actuel, mais au Client 0 et qu'il n'est donc pas répertorié ici.

        Pour les deux premières options, le type d'agent est automatiquement sélectionné et ne peut pas être édité.

        Selon l'agent sélectionné pour la surveillance, le reste des champs de cette section diffère.

        Longueur maximale : 4096 caractères.

        Il n'est pas possible de sélectionner des groupes d'agents dans des événements de base de données.

      3. Dans Login, sélectionnez l'objet qui contient les informations d'identification nécessaires à l'événement pour se connecter à la base de données.
      4. Dans Serveur:Port, saisissez le nom de l'ordinateur permettant d'accéder à la base de données (PC01:2281, par exemple).

        Les ports par défaut sont indiqués ci-dessous :

        • Serveur MS SQL : 1433
        • Oracle : 1521
        • DB2 : 50000
        • MySQL : 3306

        Ne remplissez pas ce champ si la requête doit se faire dans une base de données Oracle dans RAC.

      5. Dans Base de données, saisissez le nom de la base de données.
      6. Dans Nom de fichier MS Access, saisissez le chemin et le nom de fichier de la base de données MS Access.
    • Valeur statique

      Longueur maximale : 40 caractères.

    • Variable

      1. Dans Objet variable, sélectionnez le nom de l'objet variable contenant la chaîne à comparer.
      2. Dans Clé variable, sélectionnez l'entrée de l'objet variable à utiliser pour la comparaison.

      L'événement de base de données n'est pas activé si la clé n'existe pas dans l'objet variable spécifié.

      Si la clé ne contient aucune valeur, le résultat dépend de la configuration définie dans la Page Attributs de l'objet variable. Le système inscrit un message d'erreur ou utilise les valeurs initiales. L'événement de base de données ne s'interrompt pas.

      Voir GET_CONSOLE, GET_EVENT_INFO pour plus d'informations sur la syntaxe des scripts d'événements.

  2. Sélectionnez l'opérateur à utiliser dans la comparaison.

    Vous pouvez combiner les valeurs selon vos besoins. Les valeurs sont interprétées et comparées sous forme de valeurs de chaîne de caractères ; si les deux valeurs peuvent être interprétées comme entiers positifs (>=0), elles seront comparées comme valeurs d'entier.

    Par exemple :

    5 >  1 : Les valeurs sont interprétées comme entiers positifs -> int 5 > int 1 -> vrai

    1 > -1 : Les valeurs sont interprétées comme chaînes -> chaînes "1" > chaînes "-1" -> faux

    Les chiffres après la virgule sont supprimés. Afin de les préparer à la comparaison, lisez d'abord les valeurs dans la page Script d'événement, en utilisant la fonction de script GET_CONSOLE, GET_EVENT_INFO, puis multipliez les par 10n afin de déplacer leur virgule.

    Par exemple :

    4 * 100 (correspond à 102) = 12344

    123,5555 * 10000 (correspond à 104) = 12355555

    Les horodatages des requêtes SQL et des objets variable sont convertis au format "AAAA-MM-JJ HH:MM:SS".

  3. Définir les Paramètres horaires

    • Fréquence

      Fréquence d'activation de l'objet Événement.

    • Contrôle horaire

      Moment d'activation de l'objet Événement.

    • Premier contrôle

      Lorsque l'intervalle doit commencer.

      • Immédiatement

        L'objet événement s'active la première fois à son activation, indépendamment de l'intervalle de temps spécifié.

      • Après le premier intervalle

        L'objet événement s'active la première fois après expiration du premier intervalle de temps.

    • Si l'heure de début est plus tard

      • Activer immédiatement

        Si l'objet événement devait démarrer après l'heure spécifiée, il s'activerait immédiatement.

      • Attendre la prochaine date valide

        Si l'objet événement devait démarrer après l'heure spécifiée, il s'activerait avec la prochaine date valide, en tenant compte des conditions calendaires et horaires spécifiées en-dessous.

  4. Définissez les conditions de calendrier.

    Ces conditions sont systématiquement vérifiées. Un événement ne se déclenche que dans l'un des cas suivants :

    • Au moins l'une des conditions est remplie.
    • Aucune condition n'a été définie ici.

    Le fuseau horaire affecté à l'événement est également pris en compte. Cela signifie qu'il n'est pas pertinent d'activer un événement et de spécifier une date logique.

    Voir Tableaux dans les pages.

  5. Accédez à la Page Script d'événement.

    Le traitement d'un événement de base de données ne peut pas contenir de lignes JCL.

Étapes suivantes

Voir aussi :