Tivoli Service Desk 6.0 Developer's Toolkit - Outils et utilitaires

Chapitre 3 : Analyseur TSD Script

Retour à la table des matières


Introduction

Généralités

L'analyseur TSD Script convertit les fichiers texte ASCII qui contiennent le code source de Developer's Toolkit en format binaire utilisé pour la génération de fichiers de l'application. Il convertit les fichiers .kb en fichiers .kbc.

L'analyseur TSD Script est disponible en deux versions : invite de commande (kp.exe) et fenêtre (kpw.exe).

Remarque : Ces versions sont les mêmes sous UNIX, sauf l'extension .exe.

Recherche de fichiers source

Recherche des fichiers source dans les répertoires

Lorsque l'analyseur TSD Script recherche un fichier source dont le répertoire n'est pas explicitement indiqué, il vérifie les répertoires dans l'ordre suivant :

  1. tous les répertoires indiqués à l'invite de commande pour d'autres fichiers .kb à l'aide de
    l'argument -U (ou -F) ou dans une spécification de nom de fichier,
  2. le répertoire en cours,
  3. le répertoire contenant la bibliothèque kmli510 (pour Windows et OS/2 uniquement),
  4. tous les répertoires indiqués dans SAIPATH,
  5. tous les répertoires indiqués dans dpath (OS/2 uniquement),
  6. tous les répertoires indiqués dans le chemin.

Utilisation de l'analyseur TSD Script

Ouverture de l'analyseur TSD Script

Vous pouvez ouvrir l'analyseur TSD Script en procédant de l'une des deux manières suivantes :

  1. Dans le menu Démarrer, sélectionnez Programmes, Developer's Toolkit et Analyseur TSD Script.
  2. A partir de l'invite de commande, entrez la ligne ci-après et appuyez sur Entrée :

    kpw [option] [.kb file ...]

Utilisation de la boîte de dialogue Analyseur TSD Script

La boîte de dialogue Analyseur TSD Script permet d'indiquer le fichier .kb à interpréter et de définir les options d'analyse.

Remarque : L'utilisation des commutateurs à l'invite de commande revient au même que la saisie de commandes dans les zones de texte.

  1. Ouvrez l'analyseur TSD Script.
  2. Sélectionnez l'onglet Analyseur et entrez ou sélectionnez les options appropriées.
  1. Cliquez sur l'onglet Avancé (facultatif).
  2. Entrez les informations dans les zones :
  1. Une fois toutes les informations entrées et les sélections effectuées, sélectionnez Exécuter.

Différence entre l'analyse d'un seul fichier et de tous les fichiers

Avant d'analyser un fichier, vérifiez que les modifications apportées à ce dernier n'ont aucune incidence sur d'autres fichiers .kb.

Il est recommandé d'utiliser l'option Générer pour interpréter la totalité du projet, lorsque vous avez apporté des modifications à plusieurs fichiers .kb. Ainsi, tous les fichiers .kb modifiés seront interprétés.

Remarque : Il est conseillé de sélectionner l'option Générer si vous ne savez pas si une modification apportée à un fichier .kb a une incidence sur d'autres fichiers .kb.

Arguments de la ligne de commande

Introduction

La versoin de ligne de commande de l'analyseur de TSD Script reconnaît les arguments suivants :
-a, -b, -c, -d, -e, -f, -u, -l, -m, -o, -p, -q, -s, -x, -ide, -help

Remarque : Vous pouvez automatiquement définir l'analyseur TSD Script pour qu'il utilise les commandes d'analyse en éditant la section TDT KML Parser dans le fichier softart.ini.

Un paramètre peut suivre le caractère de l'argument (sans espace) ou le précéder avec un signe égal (=) ou le signe deux-points (:). Les exemples suivants entraînent le même résultat :

-uf:\sai\ea
-u=f:\sai\ea
-u:f:\sai\ea

Les arguments valides de l'analyseur TSD Script sont indiqués dans le tableau suivant :

Argument Valeur Commentaire
-a<identifiant> Assertion Installe l'identifiant dans la base de données interne de l'analyseur TSD Script afin que le texte source compris entre les symboles #IF et #ENDIF soit converti. Vous trouverez davantage d'informations sur les symboles d'assertion dans la documentation spécifique de votre application.
-b Génération Initie l'analyseur TSD Script afin qu'il analyse tous les fichiers .kb indiqués à l'invite de commande, ainsi que les fichiers .kb référencés dans une section USES. Si vous indiquez l'option -b lors de l'analyse d'un fichier .kb contenant un point d'entrée de l'application, l'analyseur TSD Script génère de nouveau l'application.
-c <unité> <chemin> nd Accède à l'unité et au répertoire indiqués.
-d <identifiant> Rejet Supprime l'identifiant de la base de données interne de l'analyseur TSD Script afin que le texte source compris entre les symboles #IF et #ENDIF soit ignoré.
-e <fichier> Erreur Envoie des messages d'erreur générés par l'analyseur TSD Script au fichier indiqué. Si aucun message d'erreur n'est généré, le fichier indiqué est supprimé automatiquement.
-f <chemin> <module> .KB Notation abrégée Equivaut à écrire la ligne :

kp-u=<chemin> <module>

-l

-l <fichier>

-l+

Liste Génère une liste du texte source. Si vous indiquez l'option -l , la liste est envoyée à la sortie standard. Si vous indiquez un nom de fichier (-l<fichier>), la liste est envoyée à ce fichier. Si vous indiquez l'option -l+, la liste est envoyée à un fichier dont le nom est composé du nom du fichier .kb doté d'une extension .lst. (Le nom du fichier .kb peut être modifié en fonction des conventions de dénomination du système d'exploitation.) Les messages d'erreur générés par l'analyseur TSD Script sont écrits dans le fichier de liste sauf si un autre fichier d'erreur est indiqué à l'aide de l'option -E.
-m Lancer l'analyse Initie l'analyseur TSD Script afin qu'il analyse le fichier .kb référencé dans une application. S'il existe un fichier .kbc plus récent que le code source en cours, l'analyseur TSD Script ne réanalyse pas le fichier.
-o <répertoire>

-o=<répertoire>

-o:<répertoire>

nd Indique le répertoire de sortie dans lequel sont écrits tous les fichiers .kbc générés. Par défaut, l'analyseur génère les fichiers .kbc dans le répertoire où se trouve le fichier .kb.
-p=oem

-p=ansi

-poem

-pansi (Windows uniquement)

nd Indique la page de codes OEM ou ANSI à utiliser lors de l'écriture de chaînes dans le fichier de sortie .kbc. Si la page de codes n'est pas indiquée à l'invite de commande, l'analyseur utilise la valeur lue dans le fichier softart.ini. Dans le cas contraire, la page de codes ANSI est utilisée (EPSDIC sous UNIX.)
-q Silencieux Supprime l'affichage des bannières de copyright et des messages d'évolution. Si cet argument n'est pas indiqué, ces messages sont envoyés vers la sortie standard.
-s <chaîne> nd Attribue la valeur <string> à la chaîne de connexion DBMS.
-u <chemin> Utilisation Ajoute des répertoires au chemin de la liste des répertoires recherchés lorsque l'analyseur TSD Script localise le texte source d'un fichier .kb. Le chemin peut être composé de plusieurs noms complets de répertoires séparés par des points-virgules. (Sous UNIX, les noms des répertoires sont séparés par le signe deux-points.)
-x <base de données> Référence croisée Crée trois tables dans la base de données indiquée qui contient des informations sur la définition et l'utilisation de constantes globales, de types, de variables, de routines, de tables SQL, de fichiers texte, de fichiers d'icône et de fichiers bitmap.
-ide Environnement IDE Modifie le format des messages d'erreur générés par l'analyseur TSD Script afin que l'environnement IDE de Tivoli Service Desk (TSD) Developer's Toolkit puisse trouver le texte source approprié dans lequel se trouvent les erreurs.
-help/? Aide Affiche une synthèse d'utilisation dans la sortie standard.

Déclarations IMPORT

Conditions requises pour l'analyse du code avec les déclarations IMPORT

Si le code source de Developer's Toolkit à interpréter contient des déclarations IMPORT, vous devez être connecté au gestionnaire de bases de données approprié et la ou les bases de données nécessaires doivent être liées. Dans le cas contraire, des messages d'erreur sont générés.

Fichiers temporaires

L'utilisation de la déclaration IMPORT pour importer des données d'une base de données entraîne la création d'un fichier temporaire. Ce fichier, kmlimprt.out, est automatiquement supprimé lorsque l'importation aboutit.

Si l'analyseur TSD Script est interrompu, ces fichiers peuvent ne pas être complètement supprimés. Vous pouvez les supprimer manuellement quand l'analyseur TSD Script n'est pas en cours d'exécution.

Analyse à l'aide de l'option -S

Cette option vous permet d'indiquer la base de données au moment de l'analyse et évite de figer dans le code le nom source de la base de données.

L'option -S permet également d'indiquer l'ID utilisateur et le mot de passe pendant l'analyse lors de l'exécution de l'analyseur TSD Script à partir de l'invite de commande. Toutes les valeur indiquées dans le fichier sai_sql.cfg sont ignorées.

Pour utiliser l'option -S, il est conseillé d'indiquer toutes les valeurs sauf l'ID utilisateur et le mot de passe dans le fichier sai_sql.cfg. Ensuite, transmettez ces valeurs pendant l'analyse. Par exemple :

-S"UID=IdUtil; PWD=MotdePasse"

IdUtil est l'ID utilisateur et MotdePasse est l'unique mot de passe de l'utilisateur.

Utilisation en boucle dans les fichiers .kb

Qu'est-ce que l'utilisation en boucle ?

Le langage de Developer's Toolkit est conçu pour que les fichiers .kb puissent s'utiliser les uns les autres. Dans ce cas, chaque fichier .kb définit un type d'enregistrement accessible par les autres fichiers. Ceci entraîne ce qu'on appelle l'utilisation en boucle. En d'autres termes, un fichier .kb A ne peut pas utiliser la section PUBLIC d'un fichier .kb B si B utilise déjà la section PUBLIC de A. L'utilisation en boucle est prise en charge par Developer's Toolkit mais non par l'analyseur TSD Script.

Afin d'éviter cette utilisation en boucle, déplacez toutes les déclarations d'enregistrement concernées dans un fichier .kb distinct utilisé par les deux fichiers .kb d'origine. Ces deux fichiers peuvent ensuite continuer à faire référence aux variables et routines de chacun d'entre eux.

Erreurs de l'analyseur TSD Script

Le tableau ci-après énumère les erreurs rencontrées par l'analyseur TSD Script. (Ces erreurs sont communes à l'analyseur de fenêtres graphiques ainsi qu'à la ligne de commande.)

Attention : L'absence de points-virgules peut provoquer de nombreuses erreurs. Si vous ne comprenez pas certaines erreurs, vérifiez la présence des points-virgules.

Erreur Explication
$CURRENT n'est pas un indice de tableau valide. L'indexation d'une expression de tableau a été tentée à l'aide de l'indice spécial $CURRENT. Cet indice est valide uniquement pour les expressions de liste.
$EVENT n'est pas défini dans la portée de <fonction>. La fonction n'est pas un gestionnaire d'événements et ne se trouve pas dans la portée d'un gestionnaire d'événements ; les symboles associés à la gestion d'événements ne sont pas définis.
$EVENTPARM n'est pas défini dans la portée de <fonction>. La fonction n'est pas un gestionnaire d'événements et ne se trouve pas dans la portée d'un gestionnaire d'événements ; les symboles associés à la gestion d'événements ne sont pas définis.
$HANDLE n'est pas défini dans la portée de <fonction>. La fonction n'est pas un gestionnaire d'événements et ne se trouve pas dans la portée d'un gestionnaire d'événements ; les symboles associés à la gestion d'événements ne sont pas définis.
$NullHandler peut ne pas avoir d'argument d'initialisation lorsqu'il est utilisé en tant qu'argument vers <routine de création>. La transmission d'un argument vers $NullHandler lorsqu'il est utilisé avec la routine de création n'est donc pas nécessaire.
Aucune instruction #IF correspondant à #ELSE. L'analyseur TSD Script lit l'instruction de préprocesseur sans rencontrer d'instruction #IF correspondante.
Aucune instruction #IF correspondant à #ENDIF. Il n'existe pas d'instruction #IF correspondant à l'instruction de préprocesseur.
<nom> n'est pas un type défini. Le nom indiqué a été rencontré dans un contexte nécessitant une spécification de type.
<name> n'est pas une zone du type d'enregistrement donné. Une expression se référant au nom d'une zone indique un nom qui ne correspond à aucune zone de cet enregistrement.
<name> n'est ni une fonction ni une procédure. Une expression d'appel fait référence à un objet qui n'est pas une routine.
Une virgule (,) est manquante. L'analyseur TSD Script n'a pas rencontré de virgule à l'endroit prévu.
Une erreur d'écriture dans le fichier s'est produite. L'opération d'ouverture a abouti mais l'opération d'écriture dans un fichier a échoué. Indique généralement une erreur interne de logiciel.
Un protocole de transmission de paramètre (VALue ou REFerence) doit être indiqué. Une déclaration de paramètre formel doit être dotée d'un préfixe VAL ou du mot clé REF pour indiquer le protocole utilisé lors de l'appel de la routine.
Tous les sélecteurs d'une instruction WHEN doivent être du même type. Un ou plusieurs sélecteurs d'une clause WHEN ne sont pas du même type que d'autres sélecteurs de la clause.
Une fonction de gestion d'événements est requise. Seules les fonctions de gestion d'événements peuvent être transmises aux routines de création des fenêtres, des boîtes de dialogue et d'autres objets générant des événements.
Un délimiteur inattendu a été rencontré. La dernière spécification d'une liste de paramètres formels comporte une virgule de fin inutile.
L'argument #<n> (<nom>) de <routine> de la fonction est non valide. Le type d'argument ne concorde pas avec le type de paramètre formel correspondant.
Expression de constante requise. Une expression de constante est requise dans le contexte en cours.
La constante <nom> n'est pas référencée dans la portée de <nom>. La constante est déclarée mais non utilisée.
Impossible de trouver l'instruction #ENDIF correspondant à l'instruction de la ligne <n>. L'analyseur TSD Script a atteint la fin du fichier source sans rencontrer d'instruction #ENDIF correspondant à l'instruction #IF ou #ELSE de la ligne indiquée.
Le type de gestionnaire d'événements de <nom> ne correspond pas à la déclaration d'acheminement. Une déclaration FORWARD ou PUBLIC du gestionnaire d'événements a indiqué un autre type d'événement que celui spécifié dans la déclaration. (WINDOW est le type d'événement par défaut à gérer.)
Le gestionnaire d'événements <nom> ne peut pas être déclaré avec un type de renvoi. Il n'est pas possible d'indiquer un type de renvoi pour une routine déclarée en tant que gestionnaire d'événements. Les gestionnaires d'événements renvoient toujours un entier. Si aucune valeur n'est renvoyée, la valeur par défaut est 1.
La fonction de gestion d'événements <nom> ne gère pas le type d'événements de l'objet créé par <routine de création>. Le gestionnaire d'événements de fenêtre ne peut pas gérer les événements des objets de processus et inversement.
La fonction <nom> de gestion d'événements ne doit pas comporter plusieurs paramètres formels. Le gestionnaire d'événements donné a été déclaré avec plusieurs paramètres formels.
Les fonctions de gestion d'événements peuvent uniquement apparaître dans la portée supérieure. Un gestionnaire d'événements ne peut pas être imbriqué dans une autre routine interne.
L'expression ne fait pas référence à un emplacement accessible. Une attribution (ou une autre expression ayant une incidence sur la valeur d'un objet) nécessite un objet accessible et modifiable sur lequel effectuer des opérations.
L'expression ne peut pas être transmise par référence. Une expression dont le résultat n'est pas un objet accessible et modifiable ne peut pas être transmise en tant que paramètre REF.
La déclaration d'acheminement de <nom_variable> ne correspond pas à la déclaration d'acheminement de <nom_routine>. La section PUBLIC ROUTINES ne correspond pas à la section PRIVATE ROUTINES. Vérifiez que les arguments de chaque section concordent et que leurs données sont du même type.
La fonction d'acheminement <fonction> n'a pas de mise en oeuvre effective. La fonction a été déclarée publiquement ou par une déclaration FORWARD. Elle n'a cependant pas de déclaration effective.
fread() a échoué dans le scanneur flexible. Le fichier source .kb est devenu illisible après son ouverture. Cette incident est généralement dû à une erreur du réseau ou du disque.
La fonction <nom> n'est pas dotée d'une déclaration de type de renvoi. Une routine déclarée en tant que fonction doit être dotée d'un type de retour.
La fonction <nom> n'est jamais référencée dans la portée de <nom>. La routine est déclarée mais non utilisée.
La fonction <nom> ne peut pas être appelée dans un contexte de procédure. La fonction nommée renvoie une valeur qui ne peut pas être ignorée.
ERREUR INTERNE détectée à la ligne <n> du fichier <fichier>. Une erreur s'est produite dans l'analyseur TSD Script. Notez le nom du fichier et le numéro de la ligne et prenez contact avec le service d'assistance de Tivoli Systems.
Annotation $EXPORT non valide. Les annotations valides sont : LITTLE_ENDIAN, INTEL, BIG_ENDIAN, ASCII, EBCDIC, CUSTOM_CONVERT(...) et CTYPE(...). Une annotation ne figurant pas dans la liste des annotations valides se trouve dans la clause $EXPORT d'une déclaration d'enregistrement.
Conversion non valide du type <type-1> en type <type-2>. La conversion entre les types est non valide dans le contexte en cours.
Expression de contrôle non valide dans la boucle FOR. L'instruction FOR peut uniquement concerner les entiers et le contenu d'une liste.
Déclaration non valide. La syntaxe de la déclaration est non valide.
Expression non valide. Une erreur de syntaxe figure dans l'expression.
Type d'expression non valide. Un autre type est requis.
Annotation de zone non valide. Une annotation ne pouvant pas être appliquée à une zone a été trouvée. Les annotations LITTLE_ENDIAN, INTEL, BIG_ENDIAN, CUSTOM_CONVERT(...) et FILL(...) ne sont pas valides dans ce contexte.
Identifiant non valide : <chaîne>. Un identifiant indiqué à l'invite de commande (en tant nom de fichier .kb ou faisant partie d'une option -a ou -d) ne correspond pas aux spécifications lexicales d'un identifiant de Developer's Toolkit.
Opérande non valide pour l'opérateur <op>. L'opérateur requiert une opérande de type différent.
Option non valide : < >. L'analyseur TSD Script a rencontré un commutateur d'invite de commande inconnu.
Annotation de pseudo-zone non valide. Une annotation ne pouvant pas être appliquée à une pseudo-zone a été rencontrée. Seules les annotations FILL(...) et VALUE(...) sont valides dans ce contexte.
Nouvelle déclaration du symbole <symbole> non valide. Il existe plusieurs définitions du symbole dans la même portée.
Instruction non valide. Il existe une erreur de syntaxe dans une instruction. Vérifiez que les points-virgules requis sont présents.
Spécification de type non valide. Une erreur de syntaxe a été rencontrée alors qu'une spécification de type était requise.
Type d'expression d'instruction WHEN non valide. L'instruction WHEN peut uniquement être de type INTEGER ou STRING.
Le fichier KB <kb-1> fait référence au type <typename> défini dans le fichier

<kb-2>, mais ne contient pas <kb-2> dans la liste des fichiers .kb qu'il utilise.

Il est fait référence à un type sans définition correspondante. Ceci se produit généralement lorsqu'un enregistrement défini dans un fichier .kb contient une zone d'un type défini dans un deuxième fichier .kb alors qu'un troisième fichier .kb utilise le premier fichier .kb au lieu du second et tente d'accéder à la zone.
Le nom de fichier .kb <nom-1> ne concorde pas avec le nom (<nom-2>) sous lequel il est connu de manière externe. Le nom figurant dans la déclaration KNOWLEDGEBASE au début du fichier .kb ne correspond pas au nom permettant d'y accéder à partir de la ligne de commande ou par une déclaration USES dans un autre fichier .kb.
Le nombre de paramètres de la fonction <fonction> ne concorde pas avec la déclaration FORWARD. Une déclaration FORWARD ou publique d'une fonction indique un nombre de paramètres différent de celui indiqué par la déclaration effective.
la déclaration de paramètre de <paramètre> ne concorde pas avec la déclaration FORWARD de <fonction>. Une déclaration FORWARD ou publique d'une fonction n'indique pas le paramètre de la même manière (type ou protocole de transmission de paramètre différent) que la déclaration effective.
Le nom de paramètre <nom-1> ne concorde pas avec <nom-2> figurant dans la déclaration FORWARD de la fonction <fonction>. Une déclaration FORWARD ou publique d'une fonction indique sous un nom différent le même paramètre formel que la déclaration effective.
Il n'est jamais fait référence au paramètre <nom> de la fonction <fonction>. Le paramètre est déclaré mais n'est pas utilisé.
La fonction procédurale <nom> ne contient pas de variable $RESULT. Il n'est pas possible de faire référence à la pseudo-variable $RESULT dans une routine déclarée en tant que procédure.
La procédure <nom> ne peut pas être déclarée avec un type de retour. Une routine déclarée en tant que procédure ne peut pas avoir un type de retour.
Le sélecteur <valeur> ne peut pas figurer plusieurs fois dans une instruction WHEN. Chaque sélecteur ne peut apparaître qu'une seule fois dans une instruction WHEN.
La taille indiquée (-<n>) ne peut pas être négative. Un tableau ou une liste a été déclaré avec une taille initiale négative.
Le symbole <symbole> est défini dans les fichiers <fichier .kb 1> et <fichier .kb 2>. Le symbole donné est publiquement défini dans les deux fichiers .kb. Il s'agit d'un avertissement car la seconde définition duplique la première.
Le symbole <symbole> n'est pas défini. Le symbole a été utilisé dans une expression ou une déclaration sans être défini.
Le symbole <symbole ou nom variable> n'est pas défini. Une variable utilisée dans la section ACTIONS n'a pas été déclarée localement, ni globalement dans la section VARIABLES ou dans la chaîne USES.
L'argument désignant un gestionnaire d'événements doit être transmis par référence. Le paramètre formel désignant un gestionnaire d'événements n'a pas été indiqué avec le mot clé REF.
Il manque un délimiteur (deux-points :) dans la déclaration de <symbole>. Il manque un délimiteur (deux-points) dans la déclaration.
Il manque le mot clé IS dans la déclaration de <symbole>. Il manque le mot clé IS dans la déclaration.
Le symbole prédéfini <symbole> ne peut pas être redéfini. Le symbole est prédéfini dans le langage de Developer's Toolkit et sa définition ne peut pas être modifiée par le code de l'application.
Trop de types sont définis (plus de 65000). Un erreur interne s'est produite dans l'analyseur TSD Script.
Il n'est jamais fait référence au type <nom> dans la portée de <nom>. Le type est déclaré mais n'est pas utilisé.
Le type <type> n'est pas un type RECORD. Une type enregistrement est requis dans le contexte en cours.
Le type <type> ne peut pas être indexé. Une tentative d'indexation d'une expression n'étant pas de type tableau, liste ou chaîne a été effectuée.
Le type de l'argument d'initialisation #<n> est non valide. Le type de l'argument d'initialisation ne concorde pas avec le type du paramètre, de la zone ou de l'élément correspondant.
Le type renvoyé par <fonction> ne concorde pas avec la déclaration d'acheminement. Une déclaration FORWARD ou publique d'une fonction indique un autre type de retour que celui spécifié par la déclaration effective.
Impossible d'allouer un bloc d'octets <n> à la ligne <m> dans <fichier>. Mémoire insuffisante dans l'analyseur TSD Script lors de l'analyse du code source ; le système d'exploitation est susceptible de se verrouiller. Dans le cas où vous n'avez pas indiqué de valeur n extrêmement élevée (ce qui peut entraîner une erreur interne), ce message n'apparaît que rarement sauf si le gestionnaire de débogage du tas (heap) est en cours d'exécution. Seul un espace de permutation insuffisant entraîne alors un manque de mémoire.
Impossible de convertir la valeur <v> en type <type>. L'analyseur TSD Script n'est pas capable de convertir la valeur de la constante vers le type indiqué.
Impossible d'importer <vue>, code d'erreur = <n>. Une déclaration IMPORT a échoué. La base de données n'est peut-être pas liée ou le poste n'est pas connecté au gestionnaire de bases de données approprié.
Impossible de localiser le fichier <fichier>. L'analyseur TSD Script n'a pas trouvé le fichier nommé. Les répertoires incluent le répertoire courant, dans lequel se trouve le fichier i420.dll de Developer's Toolkit, ainsi que les répertoires indiqués dans la variable d'environnement SAIPATH ou par l'argument d'invite de commande -u.
Impossible d'accéder au répertoire <path>. Le répertoire indiqué par le commutateur d'invite de commande -c est inaccessible.
Impossible d'ouvrir le fichier <fichier>. L'ouverture du fichier a échoué. Ceci est probablement dû à l'absence de droits appropriés.
Type de sélecteur inattendu. Le type de sélecteur d'une clause WHEN ne concorde pas avec le type de l'expression contrôlée.
Caractère <car> non reconnu rencontré. Un caractère non reconnu a été trouvé.
Instruction de préprocesseur non reconnue. Une ligne commençant par le caractère '#' a été rencontrée et l'instruction était différente de #ASSERT, #DENY, #IF, #IFNOT, #ELSE ou #ENDIF.
Début de commentaire non terminé à la ligne <n>. Il n'existe pas, dans le fichier source, de séquence de caractères ';*)'; correspondant à la séquence ';(*'; de la ligne indiquée.
Chaîne non terminée. Le caractère de délimitation de chaîne (apostrophe) n'a pas été trouvé à la fin de la ligne.
Erreur de syntaxe non déterminée dans ou à proximité de la colonne 0 de la ligne 12. Le mot clé ROUTINES est manquant, le mot clé KNOWLEDGEBASE au début du fichier est mal orthographié ou une instruction END manque dans une des sections ACTIONS, WHILE ou IF.
Il n'est jamais fait référence à la variable <nom> dans la portée de <nom>. La variable est déclarée mais n'est pas utilisée.
Nombre incorrect d'arguments pour l'initialiseur de <type>. L'initialiseur du type requiert un autre nombre d'arguments (probablement inférieur).
Nombre incorrect d'arguments pour la fonction <nom>. La routine nommée requiert un autre nombre d'arguments que celui indiqué dans l'expression de l'appel.
Nombre incorrect d'arguments pour la fonction <nom_procédure>. <nombre> prévu. <nombre> reçu. Lorsque la procédure, la fonction ou l'événement est appelé dans la section ACTIONS du fichier .kb, le nombre ne correspond pas à la définition formelle.
Impossible de trouver un fichier doté du nom <nomfichier-1>. Utiliser <nomfichier-2>. Si vous indiquez un nom de fichier .kb dans la section USES d'un fichier .kb, respectez la distinction majuscules-minuscules qui est effectuée dans le fichier .kb. Dans le cas contraire, l'analyseur TSD Script recherche ce fichier et affiche ce message si la recherche aboutit.

Remarque : Ceci ne sera pas pris en charge dans les versions ultérieures.

Syntaxe non obsolète requise pour WinSetMousePointer. Remplacez par l'instruction WinSetWaitPointer. L'instruction WinSetMousePointer de la version 4.2 et des versions précédentes a été modifiée pour prendre en charge plusieurs fenêtres dans TSD Developer's Toolkit 5.0. Pour des raisons de compatibilité avec l'ancienne syntaxe, l'analyseur TSD Script convertit cette instruction en une nouvelle fonction (WinSetWaitPointer) dotée de l'ancien comportement.
Spécification de lien non valide (ou obsolète) pour la routine EXTERNAL <routine>. Les spécifications de lien $BC16 et $BC32 ne sont plus prises en charge dans TSD Developer's Toolkit 5.0 (qui est désormais un programme 32 bits et n'est plus capable de charger les bibliothèques dynamiques Windows 16 bits). Utilisez la spécification $C à la place et veillez à établir un lien vers une bibliothèque dynamique 32 octets.
Le nom du fichier .kb <nom> entre en conflit avec une fonction intégrée ou un autre symbole interne. Les versions antérieures à la version 4.2 permettaient d'indiquer un nom de fichier .kb identique à un symbole interne. Par exemple, STRING, WinCreate, when, etc., ce qui prêtait à confusion et entraînait des erreurs internes. L'analyseur TSD 5.0 Developer's Toolkit TSD Script reconnaît désormais ces doublons et les indique. Attribuez un nom unique au fichier .kb.

Tivoli Service Desk 6.0 Developer's Toolkit - Outils et utilitaires

Retour à la table des matières

Copyright