Définition du script d'une vérification personnalisée

Cette section s'applique également à la définition du script pour une méthode personnalisée, une collection calculée, un gestionnaire d'événement ou une transformation.

Vous pouvez saisir le type d'une vérification personnalisée dans l'onglet Script de vérification des propriétés de vérification personnalisée. Par défaut, l'onglet Script de vérification affiche les éléments de script suivants :


  • %Check% est le nom de la fonction, il est passé sur le paramètre obj. Il est affiché sous forme de variable, cette variable étant une concaténation de nom du fichier de ressource, du nom de la métaclasse courante, du nom du stéréotype ou critère ainsi que du nom de la vérification elle-même défini dans l'onglet Général. Si l'un de ces noms comporte un espace, ce dernier est remplacé par un trait de soulignement

  • Commentaire expliquant le comportement attendu du script

  • La ligne de valeur de résultat qui indique si la vérification a réussi (true) ou non (false)

Dans Sybase AS IQ, vous devez créer des vérifications supplémentaires sur les index afin de vérifier leurs colonnes. La vérification personnalisée que vous allez créer vérifie si les index de type HG, HNG, CMP ou LF sont liés aux colonnes ayant comme type de données VARCHAR et si la longueur est supérieure à 255.

  1. Pointez sur une métaclasse, un stéréotype ou un critère sous la catégorie Profile, cliquez le bouton droit de la souris, puis sélectionnez Nouveau > Vérification personnalisée .
  2. Cliquez sur l'onglet Script de vérification dans la feuille de propriétés de la vérification personnalisée pour afficher l'éditeur de script.

    Par défaut, la fonction est déclarée au début du script. Vous ne devez pas modifier cette ligne.

  3. Saisissez un commentaire après la déclaration de la fonction afin de documenter la vérification personnalisée, et déclarez les différentes variables utilisées dans le script.
    Dim c 'temporary  index column
    Dim col 'temporary column
    Dim position
    Dim DT_col
  4. Saisissez le corps de la fonction.
    %Check%= True
    
    if obj.type = "LF" or obj.type = "HG" or obj.type = "CMP" or obj.type ="HNG" then
       for each c in obj.indexcolumns
          set col = c.column
          
         position = InStr(col.datatype,"(") 
         if position <> 0 then
            DT_col = left(col.datatype, position -1) 
         else 
            DT_col = col.datatype
         end if
    if ucase(DT_col) = "VARCHAR" and col.length > 255 then
                 output "Table " & col.parent.name & " Column " & col.name & " : Data type is not compatible with Index " & obj.name & " type " & obj.type
                 %Check% = False
          end if


  5. Cliquez sur Appliquer pour enregistrer les modifications.


Created October 8, 2009. Send feedback on this help topic to Sybase Technical Publications: pubs@sybase.com