Vous pouvez utiliser les commandes de script (WFS) WebFOCUS avec les paramètres du Client WebFOCUS (voir Utilisation de la Console d'Administration)) et les variables d'en-tête HTTP (voir Variables d'en-tête HTTP disponibles pour le traitement) afin de personnaliser davantage le traitement et le contrôle du client WebFOCUS .
Les commandes WFS vous permettent de :
Conseil : vous pouvez aussi utiliser les variables suivantes avec les commandes de script WebFOCUS :
Vous pouvez placer les commandes WFS suivantes dans le fichier site.wfs ou dans le profil de nœud d'un serveur spécifié.
Syntaxe de commande |
Description |
---|---|
<EXIT> |
Entraîne l'arrêt du traitement et la fermeture immédiate du client WebFOCUS. |
<INCLUDE> filename |
Intègre la logique WFS à partir de fichiers externes vers un traitement WFS standard. Le fichier doit exister pour pouvoir reprendre le traitement. Pour plus d'informations, consultez Intégrer les fichiers externes dans le traitement WFS standard. |
<CONDITIONAL_INCLUDE> filename |
Fonctionne de la même manière que <INCLUDE> nomdefichier, sauf que le fichier ne doit pas forcément exister. Pour plus d'informations, consultez Intégrer les fichiers externes dans le traitement WFS standard. |
<SET> variable (option) |
Envoie les variables au serveur de génération de rapports WebFOCUS pour l'utilisation dans les procédures serveur. Elle est utilisée pour les variables qui ne sont pas automatiquement envoyées au serveur de génération de rapports . Pour plus d'informations, consultez Envoyer des variables au serveur de génération de rapports WebFOCUS . |
<CALL> function(parm1,...) |
Appelle les plugins WebFOCUS. Chaque plugin WebFOCUS peut contenir un maximum de dix paramètres d'entrée. Pour plus d'informations, consultez Appeler le plugin du servlet WebFOCUS . |
<IF> variable operator value
<ELSE>
<ENDIF> |
Permet la vérification conditionnelle des variables du client WebFOCUS. Pour plus d'informations, consultez Vérifier conditionnellement les variables. |
<IFDEF> variable
<ELSE>
<ENDIF> |
Vérifie l'existence d'une variable du client WebFOCUS. Pour plus d'informations, consultez Vérifier si une variable existe. |
<IFNDEF> variable
<ELSE>
<ENDIF> |
Vérifie la non existence d'une variable du client WebFOCUS. Pour plus d'informations, consultez Vérifier la non existance d'une variable. |
<SENDVAR> name={constant|&value} <ENDSENDVAR> |
Envoie les variables au serveur de génération de rapports WebFOCUS pour l'utilisation dans les procédures serveur. Elle est utilisée pour les variables qui ne sont pas automatiquement envoyées au serveur de génération de rapports . Pour plus d'informations, consultez Envoyer des variables au serveur de génération de rapports WebFOCUS . Remarque : cette syntaxe est obsolète. Il est recommandé d'utiliser <SET> variable_name (pass), plutôt que la technique <SENDVAR>. |
Lorsque vous codez des commandes WFS, vous pouvez utiliser la syntaxe suivante.
Syntaxe de commande |
Description |
---|---|
<! > # |
Des caractères à titre de commentaire qui servent à signaler au client WebFOCUS que la ligne en cours est un commentaire. Le signe Inférieure à et un point d'exclamation (<!) ou le signe hash (#) doit être le premier caractère de la ligne. Par exemple : <! This is a comment.> # This is also a comment. |
\\= |
Le caractère de continuation qui peut être ajouté à la fin d'une ligne. Il indique au client WebFOCUS que la ligne suivante est la suite de la ligne en cours. Par exemple : long_string = this is a \\= very long string that \\= needs multiple lines |
\n |
Interligne de retour chariot qui vous permet de mettre plusieurs commandes sur une même ligne. |
value = {constant|&variable} |
Attribue une valeur à une variable dans un fichier WFS, comme une constante ou une variable, où :
Une fois la variable attribuée à une valeur, vous pouvez utiliser le nom de variable, précédé d'une esperluette (&) à la place de la valeur. C'est de cette manière que vous pouvez concaténer des valeurs littérales. Par exemple : long_string = this is a long_string = &long_string very long string long_string = &long_string that requires multiple lines |
Lorsqu'une barre oblique (\) est utilisée comme caractère d'échappement, vous pouvez :
Lorsqu'une barre oblique (\) est utilisée comme caractère d'échappement, elle n'est pas comprise dans les calculs en fonction de la longueur de la chaîne. Une chaîne de cinq caractères et un caractère d'échappement tient dans une variable de cinq caractères.
Les variables de client WebFOCUS permettent de contrôler l'affichage de plusieurs rapports sur la même page HTML avec plusieurs cadres, sans nécessiter la syntaxe de codage HTLM FRAME. Elles vous permettent également de lier plusieurs rapports avec une Table de matières (TDM). Vous pouvez utiliser ces variables pour afficher des formats de rapports différents, par exemple des formats HTML et PDF, sur une même page de lancement. Pour modifier la sortie résultante des requêtes provenant du serveur de génération de rapports WebFOCUS, spécifiez la syntaxe suivante sur le serveur de génération de rapports WebFOCUS:
-TYPE WEBFOCUS CGIVAR variable = value
où :
Est le nom de la variable du client WebFOCUS.
Spécifie la valeur de la variable du client WebFOCUS.
Pour plus d'informations sur les noms de variable du client WebFOCUS et les valeurs possibles, consultez le manuel Développement des application de rapports.
Vous pouvez intégrer des fichiers externes dans un traitement WFS standard. La commande <INCLUDE> suivante permet d'appeler un autre fichier WFS à partir des fichiers WFS standards. Le fichier personnalisé doit exister pour que le traitement puisse se poursuivre.
<INCLUDE> filename
où :
Est le nom du fichier à ajouter pour le traitement WFS.
Remarque : la commande <CONDITIONAL_INCLUDE> filename fonctionne de la même manière que <INCLUDE> filename sauf que le fichier ne doit pas forcément exister.
La commande <SET> suivante active la validation et le contrôle des variables du client WebFOCUS passées d'un cookie ou d'un formulaire:
<SET> variable (option)
où :
Est le nom de la variable du client WebFOCUS.
Peut être l'une des valeurs suivantes :
Spécifie que la variable sera considérée comme une variable amper du Gestionnaire de dialogues sur le serveur de génération de rapports WebFOCUS. C'est la valeur par défaut.
Spécifie que la variable ne sera pas passée au serveur dde rapports WebFOCUS.
Spécifie que la variable ne peut pas être définie depuis le navigateur.
Remarque : il ne faut pas appliquer l'option « protect » aux variables IBIF_focexec et IBIF_ex. Cela empêcherait WebFOCUS d'exécuter la procédure.
Spécifie que la variable doit uniquement être numérique.
Spécifie que la variable ne peut contenir que des caractères alphanumériques (0-9, a-z) et des points (.).
Spécifie que tous les caractères sont valides.
Définit la longueur maximale en caractères d'une variable. Par défaut, la longueur est illimitée.
Pour activer le plugin du servlet WebFOCUS, vous devez définir la variable WFEXT au nom de classe ibi.webfoc.WFEXTDefault dans le fichier cgivars.vars.
Remarque : seul un plugin peut être actif à la fois. Si vous souhaitez ajouter une fonctionnalité supplémentaire, vous devez développer la classe pour y incorporer la nouvelle fonctionnalité, assurant ainsi que vous ne perdez pas l'accès aux méthodes fournies par cette classe.
La commande <CALL> suivante invoque un plug-in WebFOCUS.
<CALL> routine(parm1,parm2) <IF> RETCODE NE "returncodevalue" # insert your code here <ENDIF>
où :
est la commande qui appelle le plugin WebFOCUS.
Définit le nom de la fonction à appeler (par exemple, security ou CopyHTTPCookieToWFVar).
sont les paramètres d'entrée du plugin WebFOCUS. Chaque plugin WebFOCUS peut contenir un maximum de dix paramètres d'entrée. Le segment de sortie est transmis, mais ne contribue pas au nombre maximal de paramètres d'entrées.
indique l'état de l'appel de méthode.
Est la valeur avec laquelle la valeur renvoyée par le plugin doit être comparée (par exemple, 0).
L'instruction <IF> suivante vérifie conditionnellement les variables du client WebFOCUS.
<IF> variable operator value
<ELSE>
<ENDIF>
où :
Est toute variable du client WebFOCUS.
Peut être défini à EQ, NE, CONTAINS, OR, ou AND.
Cette valeur peut être appliquée à n'importe quelle variable du client WebFOCUS.
Vous pouvez utiliser l'instruction <IF> suivante afin d'assurer l'appel de la page de connexion WebFOCUS.
Si vous ajoutez « upper » à une variable WFS, la valeur est vérifiée comme si elle contenait uniquement des lettres majuscules. Ceci vous permet de vérifier la valeur saisie par l'utilisateur sans se soucier de la casse.
L'instruction suivante <IF> assure que toute valeur saisie est considérée comme caractère en majuscule.
<IF> ABC.upper EQ "Y" OR ABC.upper EQ "YES" DEF = &GHI <ENDIF>
L'instruction <IF> suivante assure que toutes les valeurs de serveur saisies ne sont pas sensibles à la case.
<IF> IBIC_server.upper EQ "EDASERV" # INSERT YOUR CODE HERE.... <ENDIF>
L'instruction <IF> suivante vérifie si la constante .ibi.com est comprise dans la variable HTTP_HOST du client WebFOCUS.
<IF> HTTP_HOST contains ".ibi.com"
# INSERT YOUR CODE HERE....
<ENDIF>
L'instruction <IFDEF> suivante vérifie l'existance d'une variable du client WebFOCUS.
<IFDEF> variable
<ELSE>
<ENDIF>
où :
Est toute variable du client WebFOCUS.
Dans l'exemple ci-après, si la variable _ON_NT existe, PATH_SEP est défini comme un point-virgule (;). Si la variable _ON_NT n'existe pas, PATH_SEP est défini comme un point-virgule (;).
<IFDEF> _ON_NT PATH_SEP=; <ELSE> PATH_SEP=: <ENDIF>
L'instruction <IFNDEF> suivante vérifie la non existance d'une variable du client WebFOCUS.
<IFNDEF> variable
<ELSE>
<ENDIF>
où :
Est toute variable du client WebFOCUS.
La commande <SET> permet d'envoyer les variables au serveur de génération de rapports WebFOCUS pour une utilisation avec les procédures du serveur. Certaines variables personnalisées sont automatiquement envoyées au serveur de génération de rapports WebFOCUS. Cette syntaxe est utilisée pour les variables qui ne sont pas envoyées automatiquement au serveur de génération de rapports WebFOCUS.
<SET> name = {constant|&variable} (pass)
où :
Est une variable Dialogue Manager à utiliser par le serveur de génération de rapports WebFOCUS.
Est une valeur littérale. Si vous incluez des guillemets ("), ils sont passés comme partie intégrante de la variable. Cette valeur peut être appliquée à n'importe quelle variable du client WebFOCUS.
Est un paramètre substituable pour une valeur. Cette valeur peut être appliquée à n'importe quelle variable du client WebFOCUS.
WebFOCUS |