DOCUMENTATION SUR LE JEU DES COMMANDES DE FORMULAIRE
Les commandes sont actives en fonction du composant pour lequel elles sont demandées.
Les commandes sont :
- AddList
- AddText
-
-
- GetCount
- GetDate
- GetFEC
- GetIndex
- GetREF
- GetSon
- GetStr
- GetTime
- Set
- SetAlias
- SetColor
- SetDate
- SetEvent
- SetFEC
- SetFocus
- SetOrder
-
- SetREF
- SetTime
- SetTimer
- SetTrace
- SetVal
- Annuaire
- Appel
- Clear
- DelEvent
- Exec
- Exit
- Export
- Filtre
- Gosub
- GoTo
- InitConf
- ListConf
- NewNMess
- PutConf
- Recap
- Split
- ValEvent
- Wait
- If
- ElseIf
- Else
- End
- For
- Next
- Do
- Loop
- Twip
Syntaxes des commandes
Dans ce paragraphe
- « Obj » représente le nom du composant de destination
- « ObjSource » représente le composant lui-même
- une valeur entre [ ] représente un paramètre Optionnel
Le nom d’un composant est représenté par son nom suivi de son index et séparé par un point d’exclamation « ! »
Le contenu d’une variable ou d’un Objet est écrit entre {}.
Il est possible d’écrire {V!{1!4}} qui signifie que l’index de la variable est donné par le champ 4 du recordset 1.
Les commandes sont utilisées dans des fonctions créés par le programmeur pour réponde aux besoins du scénario. Ces fonctions portent un nom librement choisi par le programmeur. Cependant trois noms sont utilisés dans Opérat et ont une signification spécifique. Ils sont :
- « Load » qui est une fonction automatiquement appelée lors du chargement du formulaire.
- « Coche » qui est une fonction automatiquement appelée lorsque l’opérateur clique sur la coche verte de validation.
- « Croix » qui est une fonction automatique appelée lorsque l’opérateur clique sur la croix rouge de fermeture de la fiche. ATTENTION ne jamais utiliser la fonction Exit dans cette macro.
- « Voir » qui est une fonction automatique appelée lors du chargement du formulaire lors d’une demande « Voir Formulaire » dans les mouvements.
Déplacement d’un objet
d’un support vers un autre
Imaginons qu’un composant soit placé sur un Picture est que vous souhaitiez le placer sur un autre Picture. Pour ce faire vous devez :
1) sélectionner le composant
2) déplacer la souris sur le picture de réception
3) faire F5 (le pointeur de souris devient +
4) Placez le pointeur à l’endroit exacte où vous souhaitez placer l’objet sans toutefois sortir du Picture réceptacle (la sortie annule la commande)
5) Cliquez, le composant se replace à l’endroit de la souris.
Masquer et démasquer des
réceptacle d’objet
Les réceptables sont soient le Pic de l’onglet soit un Picture.
Lors de la contruction d’un formulaire plusieurs Pictures peuvent se chevaucher voir même se recouvrir rendant difficile la gestion de l’objet Picture.
Une icône représentant le sigle Windows, situé dans la barre des icônes à droite de la fenêtre, permet d’afficher la liste des Pictures ainsi que le Pic de la fenêtre.
Dans cette liste un clic droit sur une entrée permet de tous masquer alors qu’un clic gauche sur une des entrées permet de réaficher l’objet support désiré.
Désignation
Cette commande permet d’exporter les données d’un recordset vers un fichier texte avec séparateur.
Syntaxe
Export | Index | Séparateur | Chemin | Option
Où Index représente l’index du tableau de recordset à utiliser
Séparateur représente le caractère à utiliser pour la séparation des champs (« , » ou « ; » ou …)
Chemin représente le chemin d’accès et le nom du ficher résultat.
Option permet de préciser si le fichier doit être complété ou nouveau. Si l’option est « New » le fichier sera créé ou expurgé de ses données s’il existe.
Exemple
Export | 1 | ; | C:\Prospect.txt | New
Cette commande copie les données du recordset numéro 1 dans le fichier « C:\Prospect.txt » après avoir purgé ce dernier. Les données sont séparées par un « ; ».
Remarque
Les données de chaque champ sont encadrés par des guillemets.
GetSon Retour
Désignation
Cette commande permet de retrouver le nom du fichier son de l’enregistrement de la communication encours. Tant que le formulaire n’est pas fermé, l’agent peut réécouter l’enregistrement de la communication qui vient d’avoir. Cette fonction peut être utilisée dans le cas où il souhaite récupérer une information communiquer lors de la conversation Appelant/Agent ou même de la communication avant la mise en relation de l’appelant avec l’Agent (cas d’un message délivré par un robot).
Syntaxe
GetSon | Obj | SDA | Date | RefCom
Où
Obj représente l’objet où sera placé le nom complet du fichier de l’enregistrement
SDA représente la SDA de l’appel
Date représente la date du début de l’appel (il convient de la sauvegarder à la montée de la fiche)
RefCom représente la référence de la communication (il convient de la sauvegarder à la montée de la fiche)
Exemple
GetSon | Text1!6 | 4950 | 14/07/2010 | 10000152
Cette commande recherche le nom du fichier de l’enregistrement de la communication de la SDA 4950 pour l’appel du 14 juillet 2010 qui porte la référence 10000152. Le résultat est placé dans la zone text (Text1!6).
Remarque
Le nom du fichier son ne doit pas contenir de (.) autre que celui servant à l’extension.
LectureSon Retour
Désignation
Cette commande permet de lire avec le téléphone de l’agent un fichier sonore dont le nom est communiqué.
Syntaxe
LectureSon | NomSon [| Dossier]
Où
NomSon représente le nom du fichier sonore sans chemin.
Dossier représente le nom du dossier où chercher le fichier sonore.
Exemple
LectureSon | {Text1!6} | Enregistreur
Cette commande difuse dans le téléphone de l’agent l’enregistrement dont le nom est placé dans la zone text (Text1!6) du dossier Enregistreur.
LectureSon | M001
Cette commande lit le fichier M001 contenu dans le dossier du client.
Remarque
Si l’agent n’est pas en ligne, l’ACD appel l’agent pour lui diffuser le message.
CopyToFile Retour
Désignation
Cette commande permet de copier le contenu d’un objet Text dans un fichier texte.
Syntaxe
CopyToFile | Objet | FileName | Titre | Option
Où
- Objet représente l’objet où prendre les données à copier. L’objet ne peut-être qu’un Label, Text1, Text2 ou le contenu d’un variable V
- FileName représente le nom complet du fichier à créer (chemin compris)
- Titre représente l’entête du fichier, il peut être composé d’une ou plusieurs lignes
- Option permet de préciser si le fichier doit être complété ou nouveau. Si l’option est « New » le fichier sera créé ou expurgé de ses données s’il existe.
Exemple
CopyToFile | Text2!1 | C:\Prospect.txt | | New
Cette commande copie le contenu de Text2!1 dans le fichier « C:\Prospect.txt » après avoir purgé ce dernier.
Remarque
Les données sont copiées telquelles se présente dans l’obj.
GetPlageContrat Retour
Désignation
Cette commande permet de rechercher dans un recordset organiser autour des champs date et heure l’enregistrement dont la plage horaire corespond aux paramètres Date et Heure.
Syntaxe
GetPlageContrat | Record | Date | Heure | Variable1 | Variable2 | Variable3
Où
Record représente le n° du recordset contenant les enregistrements
Date représente la date à vérifier
Heure représente l’heure à vérifier
Variable1 représente l’état de la plage trouvée
Variable2 représente la date du prochain événement
Variable3 représente l’heure du prochain événement
Exemple
GetPlageContrat | 18 | {Date} | {Time} | V!25 | V!26 | V!27
Cette commande recherche dans le recordset 18 la plage horaire qui corespond à la date et heure passées en paramètres
V!25 retourne le contenu du champ Action
V!26 retourne la date calculée du prochain événement.
V!27 retourne l’heure calculée du prochain événement.
GetDateTime Retour
Désignation
Cette commande permet d’envoyer la date et l’heure dans une zone texte
Syntaxe
GetDateTime | Obj
Exemple
GetDateTime | Text1!9
Cette commande copie la date et l’heure dans la zone texte « Text1 » indicée « 9 »
Test
GetData Retour
Désignation
Cette commande permet d’envoyer la date dans une zone texte soit en format par défaut (jj/mm/yyyy hh:mm) soit sous le format que vous souhaitez.
Syntaxe
GetDate | Obj [| Format]
Exemple 1
GetDate | Text1!9
Cette commande copie la date dans la zone texte « Text1 » indicée « 9 »
Exemple 2
GetDate | Text1!9 | « jjj jj mmm yy »
Cette commande copie la date courante (Mer 12 mar 08) dans la zone texte « Text1 » indicée « 9 »
Tableau des formats de date possible
Caractère |
Description |
(:) |
Séparateur horaire. Dans certains paramètres régionaux, le séparateur horaire est représenté par un autre caractère. Le séparateur horaire dissocie les heures, les minutes et les secondes lorsque des valeurs horaires sont mises en forme. Le caractère effectivement utilisé comme séparateur horaire dans la sortie mise en forme est déterminé par les paramètres de votre système. |
(/) |
Séparateur de date. Dans certains paramètres régionaux, le séparateur de date est représenté par un autre caractère. Le séparateur de date dissocie le jour, le mois et l'année lorsque des valeurs de date sont mises en forme. Le caractère effectivement utilisé comme séparateur de date dans la sortie mise en forme est déterminé par les paramètres de votre système. |
c |
Affichage de la date sous la forme ddddd et de l'heure sous la forme ttttt, dans cet ordre. Affichage des informations relatives à la date seulement si le numéro de série de date ne comporte aucune partie décimale ; affichage des informations relatives à l'heure seulement en l'absence de partie entière. |
j |
Affichage du jour sous la forme d'un nombre sans zéro non significatif (1 – 31). |
jj |
Affichage du jour sous la forme d'un nombre avec un zéro non significatif (01 – 31). |
jjj |
Affichage du jour sous sa forme abrégée (dim – sam). |
jjjj |
Affichage du jour sous sa forme complète (dimanche – samedi). |
ddddd |
Affichage de la date complète (jour, mois et année), mise en forme conformément à l'option de format de date abrégé définie dans votre système. Le format de date abrégé par défaut est j/m/aa. |
dddddd |
Affichage d'un numéro de série de date sous la forme d'une date complète (jour, mois et année) mise en forme conformément à l'option de format de date longue définie dans votre système. Le format de date longue par défaut est jj mmmm aaaa. |
e |
Affichage du jour de la semaine sous la forme d'un nombre (de 1 pour dimanche à 7 pour samedi). |
ee |
Affichage de la semaine de l'année sous la forme d'un nombre (1 - 54). |
m |
Affichage du mois sous la forme d'un nombre sans zéro non significatif (1 – 12). Si m suit immédiatement h ou hh, les minutes sont affichées à la place du mois. |
mm |
Affichage du mois sous la forme d'un nombre avec un zéro non significatif (01 – 12). Si m suit immédiatement h ou hh, les minutes sont affichées à la place du mois. |
mmm |
Affichage du mois sous sa forme abrégée (jan – déc). |
mmmm |
Affichage du mois sous sa forme complète (janvier – décembre). |
t |
Affichage du trimestre de l'année sous la forme d'un nombre (1 – 4). |
j |
Affichage du jour de l'année sous la forme d'un nombre (1 – 366). |
jj |
Affichage de l'année sous la forme d'un nombre à deux chiffres (00 – 99). |
jjjj |
Affichage de l'année sous la forme d'un nombre à quatre chiffres (100 – 9999). |
h |
Affichage de l'heure sous la forme d'un nombre sans zéro non significatif (0 – 23). |
Hh |
Affichage de l'heure sous la forme d'un nombre avec un zéro non significatif (00 – 23). |
N |
Affichage des minutes sous la forme d'un nombre sans zéro non significatif (0 – 59). |
Nn |
Affichage des minutes sous la forme d'un nombre avec un zéro non significatif (00 – 59). |
S |
Affichage des secondes sous la forme d'un nombre sans zéro non significatif (0 – 59). |
Ss |
Affichage des secondes sous la forme d'un nombre avec un zéro non significatif (00 – 59). |
t t t t t |
Affichage de l'heure complète (heures, minutes et secondes), mise en forme à l'aide du séparateur horaire défini par le format horaire de votre système. Un zéro non significatif est affiché si l'option correspondante est sélectionnée et si l'heure est antérieure à 10:00 A.M. ou P.M. Le format horaire par défaut est h:mm:ss. |
AM/PM |
Affichage à l'aide du format 12 heures et avec l'indicateur AM en majuscules pour une heure antérieure à midi et de l'indicateur PM en majuscules pour une heure située entre midi et 11:59 P.M. |
am/pm |
Affichage à l'aide du format 12 heures et avec l'indicateur AM en minuscules pour une heure antérieure à midi et de l'indicateur PM en minuscules pour une heure située entre midi et 11:59 P.M. |
A/P |
Affichage à l'aide du format 12 heures et avec l'indicateur A en majuscule pour une heure antérieure à midi et de l'indicateur P en majuscule pour une heure située entre midi et 11:59 P.M. |
a/p |
Affichage à l'aide du format 12 heures et avec l'indicateur A en minuscule pour une heure antérieure à midi et de l'indicateur P en minuscule pour une heure située entre midi et 11:59 P.M. |
AMPM |
Affichage à l'aide du format 12 heures et avec le littéral AM sous la forme définie par votre système, pour une heure antérieure à midi et du littéral PM sous la forme définie par votre système, pour une heure située entre midi et 11:59 P.M. AMPM peut apparaître soit en minuscules, soit en majuscules, mais la casse de la chaîne affichée dépend de la chaîne définie par vos paramètres système. Le format par défaut est AM/PM. |
GetTime Retour
Désignation
Cette commande permet d’envoyer l’heure dans une zone texte
Syntaxe
GetTime |
Obj
Exemple
GetTime |
Text1!9
Cette commande copie l’heure dans la zone texte « Text1 » indicée « 9 »
GetDicoNom Retour
Désignation
Cette commande permet de remplir une liste, un Combo ou un HFlexGrid avec le dictionnaire des noms
Syntaxe
GetDicoNom | Obj
Exemple
GetDicoNom | HFlexGrid!15
Cette commande remplit le HFlexGrid(15) avec le dictionnaire des noms de famille
Remarque
Les composants List et Combo sont tous utilisables avec cette commande, cependant la vitesse de remplissage sera très lente.
Il est fortement conseillé d’utiliser un HFlexGrid pour ce cas.
GetDicoPrenom Retour
Désignation
Cette commande permet de remplir une liste, un Combo ou un HFlexGrid avec le dictionnaire des prénoms
Syntaxe
GetDicoPrenom | Obj
Exemple
GetDicoPrenom | HFlexGrid!15
Cette commande remplit le HFlexGrid(15) avec le dictionnaire des prénoms
Remarque
Les composants List et Combo sont tous utilisables avec cette commande, cependant la vitesse de remplissage sera très lente.
Il est fortement conseillé d’utiliser un HFlexGrid pour ce cas.
GetDicoVille Retour
Désignation
Cette commande permet de remplir une liste, un Combo ou un HFlexGrid avec le dictionnaire des villes
Syntaxe
GetDicoVille | Obj
Exemple
GetDicoVille | HFlexGrid!15
Cette commande remplit le HFlexGrid(15) avec le dictionnaire des noms de ville ainsi que leur code postal
Remarque
Les composants List et Combo sont tous utilisables avec cette commande, cependant la vitesse de remplissage sera très lente.
De plus ils ne feront pas apparaître les codes postaux
Il est fortement conseillé d’utiliser un HFlexGrid pour ce cas.
GetDicoPays Retour
Désignation
Cette commande permet de remplir une liste, un Combo ou un HFlexGrid avec le dictionnaire des pays
Syntaxe
GetDicoPays | Obj
Exemple
GetDicoPays | HFlexGrid!15
Cette commande remplit le HFlexGrid(15) avec le dictionnaire des pays
Remarque
Les composants List et Combo sont tous utilisables avec cette commande, cependant la vitesse de remplissage sera très lente.
Il est fortement conseillé d’utiliser un HFlexGrid pour ce cas.
GetStr Retour
Désignation
Cette commande permet d’effectuer des opérations sur le string du contenu d’un objet.
Syntaxe
GetStr | Obj | Fonction | Val1 | Val2
Où Fonction peut prendre les valeurs suivantes
- Len Retourne dans l’objet le nombre de caractère du string présent dans l’objet
- Left Retoune dans l’objet les X premiers caractères en partant de la gauche, du string présent dans l’objet
- Right Retourne dans l’objet les X derniers caractères en partant de droite, du string présent dans l’objet
- Mid Retourne dans l’objet X caractères extraits du string présent dans l’objet donc le départ est fixé ainsi que la taille de l’extraction
- DelCar Retour dans l’objet son contenu après lui avoir supprimé le carractère communiqué dans Val
- Code Retourne dans l’objet son contenu codé.
- Decode Retourne dans l’objet son contenu décodé.
- Replace Remplace un caractère par un autre au sein d'un string.
Exemple
GetStr | Text1!3 | Mid | 2,3
Cet exemple extrait du string compris dans l’objet, 3 caractères en partant du 2ème.
Si Text1!3 = SOURIS le retour sera OUR
Exemple
GetStr | Text1!1 | Code
Cet exemple Code le contenu de Text1!1.
Exemple
GetStr | Text1!1 | Replace | A | B
Cet
exemple remplace, dans le contenu de Text1!1, le
caractère A par B
Remarque
Attention la valeur d’origine est détruite par le résultat.
Utilisez une zone texte comme registre de travail.
GetListeAnnexe Retour
Désignation
Cette commande permet de remplir un recordset multi-lignes avec des données provenant d’une base de données annexe à Opérat-IV. Le recordset ainsi obtenu est affecté à un HFlexGrid pour rendre visible les données.
Syntaxe
GetListeAnnexe | SQL[Sx] | Obj [|Largeur1 | Largeur2 | … ]
Où SQL représente la requête SQL suivie de l’index du tableau de recordset utilisable tout au long de la vie du formulaire et optionnellement l’index du Serveur.
Largeur représente la largeur à affecter aux colonnes de la grille. Cette valeur peut-être $ ce qui signifie que la colonne sera dimentionnée automatiquement à la largeur du texte le plus large.
Exemple
GetListAnnexe | SELECT DISTINCT Commune FROM Carrefours ORDER BY Commune ! 1 | HFlexGrid!18 | 2800
Cette commande remplit le tableau de recordset n°1 et lie le HFlexGrid(18) avec lui. Cette liaison a pour but de communiquer la liste des communes de la table Carrefours de la base des annexes.
La largeur de la colonne affichée est fixée à 2800 Twips
Exemple2
GetListAnnexe | SELECT * FROM CLIENTS ! 1S2 | HFlexGrid!18 | 0 | $ |500
Cette commande établie un lien avec le serveur N°2 et remplit le tableau de recordset n°1 et lie le HFlexGrid(18) avec lui. Les colonnes 1, 2 et 3 auront une largeur de 0 pour la première (cachée), la deuxième sera automatiquement ajustée à la largeur du texte le plus grand, la troisième sera fixée à 500 Twips.
Remarques
Unité de mesure de l'écran égale à 1/20 point. Un twip est une unité indépendante de l'écran, utilisée pour garantir que l'emplacement et la proportion des éléments d'écran de votre application seront les mêmes, quel que soit le système d'affichage. On compte environ 1 440 twips dans un pouce logique et 567 twips dans un centimètre logique (la longueur d'un élément d'écran étant égale à un pouce ou à un centimètre lorsqu'il est imprimé).
Le résultat des requêtes ainsi exécutées est placé dans des tableaux de recordset qui sont indicés de 1 à 50 et réutilisable, à tout moment dans le scénario, sous forme de variable.
GetListeAnnexeEx Retour
Désignation
Cette commande permet de remplir un recordset multi-lignes avec des données provenant d’une base de données Externe à Opérat-IV. Le recordset ainsi obtenu est affecté à un HFlexGrid pour rendre visible les données.
Syntaxe
GetListeAnnexeEx | SQL | Sx | Obj [|Largeur1 | Largeur2 | … ]
Où SQL représente la requête SQL suivie de l’index du tableau de recordset utilisable tout au long de la vie du formulaire et optionnellement l’index du Serveur.
Sx représente le n° de la connexion externe initialisé par le Serveur Opérat.
Largeur représente la largeur à affecter aux colonnes de la grille. Cette valeur peut-être $ ce qui signifie que la colonne sera dimentionnée automatiquement à la largeur du texte le plus large.
Exemple
GetListAnnexe | SELECT DISTINCT Commune FROM Carrefours ORDER BY Commune !1 | 2
HFlexGrid!18 | 2800
Cette commande remplit le tableau de recordset n°1 et lie le HFlexGrid(18) avec lui. Cette liaison a pour but de communiquer la liste des communes de la table Carrefours de la base de données liée par le connecteur 2 du Serveur Opérat.
La largeur de la colonne affichée est fixée à 2800 Twips
Exemple2
GetListAnnexe | SELECT * FROM CLIENTS !1 | 2 | HFlexGrid!18 | 0 | $ |500
Cette commande établie un lien avec le serveur N°2 et remplit le tableau de recordset n°1 et lie le HFlexGrid(18) avec lui. Les colonnes 1, 2 et 3 auront une largeur de 0 pour la première (cachée), la deuxième sera automatiquement ajustée à la largeur du texte le plus grand, la troisième sera fixée à 500 Twips.
Remarques
GetListFEC Retour
Désignation
Cette commande permet de remplir un recordset multi-lignes avec des données provenant de la table `FichesEnCours` de la base de données « System » de Opérat-IV. Le recordset ainsi obtenu est affecté à un HFlexGrid pour rendre visible les données.
Syntaxe
GetListFEC | Champs | Where | Recorset | Obj [| T1 | T2 …]
Où
- Champs représente la liste des champs à retourner dans le résultat (* est autorisée)
- Where représente la clause WHERE de la requête qui peut aussi contenir une clause ORDER
- Recordset représente l’index du tableau de recordset utilisable tout au long de la vie du formulaire.
- Obj est le nom de la grille qui recevra les données.
- T1 à Tx représentent la largeur des colonnes de la grille où sont affichée les data. La valeur 0 masque la colonne
Exemple
GetListFEC | * | `NomCli`=’{NomCli}’ AND `C1`=’{Text1!4}’ ORDER BY NomCli | 1 | HFlexGrid!18 | 2800
Cette commande remplit le tableau de recordset n°1 et li le HFlexGrid(18) avec lui. Cette liaison a pour but de communiquer les données reçues à la grille.
La largeur de la colonne affichée est fixée à 2800 Twips
Exemple2
GetListFEC | * | `NomCli`=’{NomCli}’ AND `C1`=’{Text1!4}’ | 1 | HFlexGrid!18 | 2800
Remarques
ATTENTION
Le champ NSOC est automatiquement géré dans la clause WHERE, donc ne pas gérer.
Unité de mesure de l'écran égale à 1/20 point. Un twip est une unité indépendante de l'écran, utilisée pour garantir que l'emplacement et la proportion des éléments d'écran de votre application seront les mêmes, quel que soit le système d'affichage. On compte environ 1 440 twips dans un pouce logique et 567 twips dans un centimètre logique (la longueur d'un élément d'écran étant égale à un pouce ou à un centimètre lorsqu'il est imprimé).
Le résultat des requêtes ainsi exécutées est placé dans des tableaux de recordset qui sont indicés de 1 à 50 et réutilisable, à tout moment dans le scénario, sous forme de variable.
GetAnnexe Retour
Désignation
Cette commande permet de remplir un recordset avec des données provenant d’une base de données annexe à Opérat-IV. Les données de la première colonne peuvent être optionnellement copiées dans une zone texte
Syntaxe
GetAnnexe | SQL[Sx] | Obj]
Où SQL représente la requête SQL suivie de l’index du tableau de recordset utilisable tout au long de la vie du formulaire et optionnellement l’index du Serveur.
Exemple
GetAnnexe | SELECT * FROM Carrefours WHERE NCARF= {3!NCARF} ! 4
Cette commande remplit le tableau de recordset n°4 avec les données de la table Carrefours de la base des annexes.
GetAnnexe | SELECT * FROM Carrefours WHERE NCARF= {3!NCARF} ! 4 | Text1!10
Idem au premier exemple mais en plus cette commande copie la valeur de la première colonne du recordset dans la zone text(10)
GetAnnexe | SELECT * FROM CLIENTS ! 1S2
Cette commande établie un lien avec le serveur N°2 et remplit le tableau de recordset n°1
Remarques
Le résultat des requêtes ainsi exécutées est placé dans un tableau (recordset) qui est indicé de 1 à 50 et réutilisable à tout moment dans le scénario, sous forme de variable.
GetAnnexeEx Retour
Désignation
Cette commande permet de remplir un recordset avec des données provenant d’une base de données Externe à Opérat-IV.
Syntaxe
GetAnnexeEx | SQL | Sx
Où SQL représente la requête SQL suivie de l’index du tableau de recordset utilisable tout au long de la vie du formulaire
Sx représente l’index du Serveur tel qu’il est déclaré sur le serveur Opérat.
Exemple
GetAnnexeEx
| SELECT * FROM Carrefours WHERE NCARF= {3!NCARF} !4 |
1
Cette commande remplit le tableau de recordset n°4 avec les données de la table Carrefours de la base externe définie par le connecteur 1 du serveur Opérat.
Remarques
Le résultat des requêtes ainsi exécutées est placé dans un tableau (recordset) qui est indicé de 1 à 50 et réutilisable à tout moment dans le scénario, sous forme de variable.
GetFEC Retour
Désignation
Cette commande permet de remplir un recordset multi-lignes avec des données provenant de la table `FichesEnCours` de la base de données « System » de Opérat-IV.
Syntaxe
GetFEC | Champs | Where | Record [| Obj]
Où
- Champs représente la liste des champs à retourner dans le résultat (* est autorisée)
- Where représente la clause WHERE de la requête qui peut aussi contenir une clause ORDER
- Record représente l’index du tableau de recordset utilisable tout au long de la vie du formulaire.
- Obj est une zone texte où le premier champ du résultat y serait copié.
Exemple
GetListFEC | * | `NomCli`=’{NomCli}’ AND `C1`=’{Text1!4}’ ORDER BY NomCli | 4
Cette commande remplit le tableau de recordset n°4 avec les données de la table FicheEnCours de la base System de Opérat.
GetFEC |
NMES, NomCli,C1, Statut,
Date, Agent, NEVENT | NomCli`=’{NomCli}’
AND `C1`=’{Text1!4}’ ORDER BY NomCli | 4 | Text1!10
Idem au premier exemple mais en plus cette commande copie la valeur de la première colonne du recordset dans la zone text(10)
Remarques
Le résultat des requêtes ainsi exécutées est placé dans un tableau (recordset) qui est indicé de 1 à 50 et réutilisable à tout moment dans le scénario, sous forme de variable.
Reportez-vous à la liste des champs de la table FEC ListeChampsFEC
ATTENTION
Le champ NSOC est automatiquement géré dans la clause WHERE, donc ne pas gérer.
GetCount Retour
Désignation
Cette commande permet d’obtenir :
- le nombre de caractère contenu dans un objet Text ou Label ’
- le nombre de ligne dans un objet List, Combo ou HFlexGrid
Syntaxe
GetCount | Obj | V
Où Obj représente la variable ou la zone texte
V représente la variable où sera stocké la réponse
Exemple
GetCount | Text1!4 | V!6
Cette commande acquière le nombre de caractère contenu dans la zone texte « Text(4) et stocke cette valeur dans la variable 6 (V!6).
GetRecordCount Retour
Désignation
Cette commande permet d’obtenir le nombre d’enregistrement d’un recordset. La valeur retournée est copiée dans une variable ou une zone texte.
Syntaxe
GetRecordCount | N | Obj
Où N représente l’index du tableau de recordset.
Obj représente la variable ou la zone texte
Exemple
GetRecordCount | 1 | Text1!4
Cette commande acquière le nombre d’enregistrement du Recordset N°1 et copie le résultat dans la zone texte numéro 4.
Remarques
Attention le nombre d’enregistrement change si un l’un d’eux est ajouté ou supprimé dans la table.
Si le Recordset n'est pas initialisé la fonction retournera « False ».
GetRecordPosition Retour
Désignation
Cette commande permet d’obtenir la position d’un enregistrement dans un recordset. La valeur retournée est copiée dans une variable ou une zone texte.
Syntaxe
GetRecordPosition | N | Obj
Où N représente l’index du tableau de recordset.
Obj représente la variable ou la zone texte
Exemple
GetRecordPosition | 1 | V!4
Cette commande acquière la position, dans le recordset N°1, de l’enregistrement actif et le copie dans la variable numéro 4.
Remarques
Attention la position d’un enregistrement peut changer entre deux lectures d’une table. En effet, si un enregistrement est ajouté ou supprimé dans la table.
GetListePosition Retour
Désignation
Cette commande permet d’obtenir la position de la ligne séléctionnée dans un objet liste (HFlexGrid, List ou Cmb). La valeur retournée est copiée dans une variable ou une zone texte.
Syntaxe
GetListePosition | Obj | D | Opt
Où Obj représente l’objet liste.
D représente la variable ou la zone texte où le résultat sera retourné
Opt représente une option de décalage de ligne dans les HFlexGrid
Exemple
GetListePosition | List!3 | V!4
Cette commande acquière la ligne sélectionnée dans la liste 3 et retourne sa position, dans la variable 4.
GetListePosition | HFlexGrid!3 | V!4 | 0
Cette commande acquière la ligne sélectionnée dans le HFlexGrid 3 et retourne sa position dans la variable 4 sans faire de calcul de décalage.
Un décalage peut être effectué lorsque la ligne 0 contient une ligne de données qui correspond à la première ligne d’un recordset.
Remarques
GetRaccourcis Retour
Désignation
Cette commande permet de charger les raccourcis dans une Liste ou un Combo.
Syntaxe
GetRaccourci | Obj
Où Obj représente l’objet liste ou Combo.
Exemple
GetRaccourci | Cmb!3
Cette commande acquière les raccourcis du collaborateur et les chargent dans le Combo 3
Remarques
GetObjetSource Retour
Désignation
Cette commande permet d’initialiser l’ObjetSource d’une action.
Par exemple un clic dans une zone texte peut faire une référence à l’Objet dans lequel le clic à eu lieu.
Ceci permet part la suite de faire référence à cet objet sans identifier ses références.
Syntaxe
GetObjetSource
Exemple
Une série de 15 zones texte sert de case à cocher.
GetObjetSource
If | ObjetSource | VIDE
Set | ObjetSource | X
Else
SetObjetSource |
End
SetAlignement | ObjetSource | 2
Sans cette option, il aurait fallu écrire 15 fonctions différentes afin de pouvoir identifier l’objet avec ses références.
Cette commande acquière les références de l’objet déclencheur de la macro logiciel.
Remarques
Ne jamais utiliser l’objet « ObjetSource » sans avoir préhalablement effectué le GetObjetSource !
GetIndex Retour
Désignation
Cette commande permet d’initialiser la variable « MyIndex » avec la valeur de l’index de l’objet à l’origine de la macro logiciel.
Par exemple un clic dans une zone texte qui déclenche une macro dans l’aquelle la fonction GetIndex est utilisée retournera la valeur de l’index de l’objet dans la variable « MyIndex ».
Ceci permet part la suite de faire référence à cet index en testant la variable « MyIndex ».
Syntaxe
GetIndex
Exemple
Une série de 15 zones texte sert de case à cocher.
GetIndex
If | {MyIndex}| =| 12
Traitement spécial du composant X !12
Else
Traitement normal
End
Sans cette option, il aurait fallu écrire une fonction spécifique pour traiter le cas de l’index 12 du composant X.
Cette commande acquière l’Index de l’objet déclencheur de la macro logiciel.
Remarques
Ne jamais utiliser une référence à un Index ({MyIndex}) sans avoir préhalablement effectué le GetIndex !
Set Record Retour
Désignation
Cette commande permet de modifier le contenu d’un recordset sans pour autant le recharger. Ce qui est d’une grande économie de temps lorsque que l’on travail sur un grand nombre d’enregistrement.
Syntaxe
SetRecord | N1 | N2
Où
- N1 représente :
1. l’index du tableau de recordset à modifier
2. le nom d’un champ du Recordset à modifier
- N2 représente :
1. l’index d’un tableau de Recordset à copier
2. le nom d’un champ d’un Recordset à copier
3. un objet dont le contenu doit être copié dans le Recordset.
Exemple
SetRecord | 1 | 2
Cette commande copie l’enregistrement actif du tableau 2 dans l’enregistrement actif du tableau 1.
SetRecord | 1!Nom | 2!Nom
Cette commande copie le contenu du champ « 2!Nom » dans le champ « 1!Nom ».
SetRecord | 1!Nom | {Text1!6}
Cette commande copie le contenu de la zone texte (Text1(6)) dans le champ « 1!Nom ».
Remarques
Attention la mise à jour d’un champ de cette manière ne modifie en rien la base de données.
L’intérêt est de modifier l’enregistrement en mémoire après une UPDATE dans la base de donnée sans pour autant avoir à recharger le Recordset complet.
SetRecordPosition Retour
Désignation
Cette commande permet de modifier la position de l’enregistrement actif dans un recordset.
Un retour sur l’état de la position est retourné dans la variable R().
Syntaxe
SetRecordPosition | N | Commande [| Param]
Où N représente l’index du tableau de recordset.
Commande représente le type de movement. Elle peut-être :
- First ou Premier à positionne l’enregistrement actif sur le premier enregistrement.
- Last ou Dernier à positionne l’enregistrement actif sur le dernier enregistrement
- Next ou Suivant à positionne l’enregistrement actif sur l’enregistrement suivant.
- Previous ou Précédent à positionne sur l’enregistrement précédent.
- Position à Dans ce cas Param contient la position de l’enregistrement souhaité.
Si la commande n’est pas connue, elle représente le nom d’un des champs du recordset et Param la valeur qu’il doit contenir pour que la position soit faite.
Exemple
SetRecordPosition | 1 | Next
Cette commande déplace l’enregistrement actif sur l’enregistrement suivant.
Si l’enregistrement est actif la variable R!1 est égale à « True » sinon elle prend la valeur « False »
SetRecordPosition | 1 | Nom | {Text1!1}
Cette commande recherche, à partir de sa position, un enregistrement dont le champ Nom contient partiellement ou totalement le contenu de la zone texte (Text1!1).
Si la position est trouvé la variable R!1 retourne « True » sinon elle retourne « False »
Remarques
Attention la recherche sur un champ ne parcourt pas la table depuis le début mais depuis la position courant de l’enregistrement actif du recordset. Si vous souhaitez chercher depuis le début, positionnez l’enregistrement actif sur le premier enregistrement à l’aide de la commande First.
GetAstreinte Retour
Désignation
Cette commande permet de chercher, dans la table d’astreinte de Opérat-IV, le nom et n° de téléphone d’une personne d’astreinte. Le résultat de la recherche est placé dans deux zones textes.
Syntaxe
GetAstreinte | Critère | Obj
Où Critère représente le critère de recherche de la fonction. Il est en général formé par un mot clef représentant le type de service pour lequel un homme d’astreinte est recherché.
Exemple
GetAstreinte | GAZ | Text1!17 | Text!18
Cette commande recherche l’homme d’astreinte pour le service correspondant au gaz et place le nom dans la zone texte « Text1(17) » et le numéro de téléphone dans la zone texte « Text1(18) ».
Remarques
Le tableau d’astreinte de Opérat-IV doit être préalablement rempli.
GetAstreinteGroupe Retour
Désignation
Cette commande permet de chercher, dans les tables annexes Opérat-IV, les noms et les numéros de téléphone des personnes d’astreinte en fonction d’une grille horaire. Le résultat de la recherche est placé dans deux variables libres de choix.
Principe
Cette fonction recherche dans un tableau de données la plage horaire qui est active au moment de l’appel. Les données contenues dans le tableau doivent avoir, au minimum, les champs suivants :
- DateD à Date de début de la plage
- HeureD à Heure de début de la plage
- DateF à Date de fin de la plage
- HeureF à Heure de fin de la plage
- Detail à Type de plage
Le recordset passé en paramètre est parcourue enregistrement par enregistrement jusqu’à ce qu’une réponse positive soit trouvée ou que la fin du recorset soit trouvée.
Dans ces données le type de plage peut être :
- (Vide) à la plage est considéré comme active même si la plage est définie
- « JOUR » à la plage est testée uniquement sur les horaires :
1. (tous les jours de 08:00 à 18:00)
- « NUIT » à la plage est testée uniquement sur les horaires :
1. (toutes les nuits de 18:00 à 08:00)
- "JOUR-DATE" à du 9/10/2006 au 15/10/2006 de 08:00 à 17:00
1. (Les plages sont à considérer de jour et les champs date contiennent une date)
- "NUIT-DATE" à du 9/10/2006 au 15/10/2006 de 18:00 à 08:00
1. (Les plages sont à considérer de nuit et les champs date contiennent une date)
- "JOUR-JOUR" à du Lundi au Vendredi de 08:00 à 18:00
1. (Les plages sont à considérer de jour et les champs date contiennent des jours)
- "NUIT-JOUR" à du Lundi au Vendredi de 18:00 à 08:00
1. (Les plages sont à considérer de nuit et les champs date contiennent des jours)
- "WEEK" à du 2/10/2006 08:00 au 9/10/2006 08:00
1. (Les plages couvrent une semaine complète commençant à DateD & HeureD et finissant à DateF & HeureF)
- "WEEK-JOUR" à du Lundi 08:00 au Vendredi 18:00
1. (Les plages couvrent une période complète commençant à DateD & HeureD et finissant à DateF & HeureF)
- "WEEK-END" à du Vendredi 17:00 au Lundi 08:00
1. (Les plages couvrent une fin de semaine avec débord sur le début de l’autre)
- "WEEK-PAIR" à Paire 08:00 à 08:00
1. (Ce type de plage permet de retourner, dans la variable principale, le numéro du groupe1 lorsque la semaine est paire et le numéro du groupe2 lorsque la semaine est impaire)
- "OUVRE-JOUR-DATE" à du 02/10/2006 au 09/10/2006 de 08:00 à 18:00
1. (Ce type de plage permet de retourner un numéro de groupe que si dans les plages indiquées, le jour correspondant est un jour ouvré)
- "OUVRE-JOUR-JOUR" à du Lundi au Vendredi de 08:00 à 17:30
1. (Ce type est identique au précédent à l’exception que les dates représentent des jours de semaine.)
- "OUVRE-NUIT-DATE" à du 9/10/2006 au 15/10/2006 de 18:00 à 08:00
1. (Les plages sont à considérer de nuit et les champs date contiennent une date - Ce type de plage permet de retourner un numéro de groupe que si dans les plages indiquées, la nuit active correspond à une nuit de jour ouvré. Il est cependant préférable d’utiliser la fonction « OUVRE-JOUR-DATE » avec un type Vrai/Faux)
- "OUVRE-NUIT-JOUR" à du Lundi au Vendredi de 18:00 à 08:00
1. (Les plages sont à considérer de nuit et les champs date contiennent des jours. Ce type de plage permet de retourner un numéro de groupe que si dans les plages indiquées, la nuit active correspond à une nuit de jour ouvré. Il est cependant préférable d’utiliser la fonction « OUVRE-JOUR-JOUR» avec un type Vrai/Faux))
- "FERIE-JOUR-DATE" à du 02/10/2006 au 09/10/2006 de 08:00 à 18:00
1. (Ce type de plage permet de retourner un numéro de groupe que si dans les plages indiquées, le jour correspondant est un jour férié)
- "FERIE-JOUR-JOUR" à du Lundi au Vendredi de 08:00 à 17:30
1. (Ce type est identique au précédent à l’exception que les dates représentent des jours de semaine.)
- "FERIE-NUIT-DATE" à du 9/10/2006 au 15/10/2006 de 18:00 à 08:00
1. (Les plages sont à considérer de nuit et les champs date contiennent une date - Ce type de plage permet de retourner un numéro de groupe que si dans les plages indiquées, la nuit active correspond à une nuit de jour férié. Il est cependant préférable d’utiliser la fonction « FERIE-JOUR-DATE » avec un type Vrai/Faux)
- "FERIE-NUIT-JOUR" à du Lundi au Vendredi de 18:00 à 08:00
1. (Les plages sont à considérer de nuit et les champs date contiennent des jours. Ce type de plage permet de retourner un numéro de groupe que si dans les plages indiquées, la nuit active correspond à une nuit de jour férié. Il est cependant préférable d’utiliser la fonction « FERIE-JOUR-JOUR» avec un type Vrai/Faux))
Syntaxe
GetAstreinteGroupe | Recordset | Groupe1 | Groupe2 | Type Astreinte
Où
- Recordset représente l’index du tableau de données contenant les plages horaires.
- Groupe1 représente la variable où sera retourné le numéro du premier groupe d’astreinte.
- Groupe2 représente la variable où sera retourné le numéro du deuxième groupe d’astreinte.
- Type Astreinte représente le type de fonctionnement des groupes d’astreintes. Ces types peuvent être :
1. GRP-V&F à Si la plage est vraie on retourne, dans la variable Groupe1, le premier groupe sinon, on retourne le numéro du deuxième groupe dans la variable Groupe1. Dans ce cas la variable Groupe2 reste à 0 !
2. GRP-1&2 à Le groupe d’astreinte est composé de l’ensemble des deux groupes.
3. GRP-1 à Seul le premier groupe d’astreinte doit être pris en considération.
Exemple
GetAstreinteGroupe | 3 | V!12 | V!13 | GRP-1
Cette commande recherche la plage active dans le tableau de données et retourne dans la variable V!12 le numéro du tableau d’astreinte à utiliser. V!13 reste à 0 puisque le dernier paramètre est GRP-1.
GetAstreinteGroupe | 2 | V!12 | V!13 | GRP-1&2
Cette commande recherche la plage active dans le tableau de données et retourne dans la variable V!12 & V!13 les numéros des tableaux d’astreintes à utiliser.
GetAstreinteGroupe | 4 | V!12 | V!13 | GRP-V&F
Cette commande recherche dans la première plage du tableau de données les numéros des groupes d’astreintes et retourne dans la variable V!12 le numéro du premier groupe si la plage est active sinon il retourne le numéro du deuxième groupe.
Remarques
Si V!12 et V!13 sont tous les deux à 0 c’est qu’aucune plage n’a été trouvée
GetIncident Retour
Désignation
Cette commande permet de chercher, dans la table des incidents de Opérat-IV, si l’incident donné en paramètre existe et s’il est toujours valide.
Si l’incident est Valide, la zone texte communiquée indique : « Cet incident est en cours de traitement », sinon elle indique « Incident inconnu »
Syntaxe
GetIncident | REF | Obj
Où REF représente la référence de l’incident à rechercher dans la table des incidents. Il est en général formé par un mot clef représentant le type d’incident.
Exemple
GetIncident | GAZ524 | Text1!19
Cette commande recherche l’incident référencé « GAZ524 » dans la table des incidents et place le résultat dans la zone texte « Text1(19) ».
Remarques
La table des incidents peut être initialisée à partir de la commande SetIncident.
GetREF Retour
Désignation
Cette commande permet de chercher, dans la table des références de Opérat-IV, si la référence, donnée en paramètre existe.
Cette référence peut-être liée à un critère de recherche.
Si la référence existe, elle est copiée dans la variable communiquée sinon la variable est mise à zéro.
Syntaxe
GetREF | Critères | V!x
Où Critère représente le critère de recherche de la référence à rechercher dans la table des références.
Il est en général formé par un mot clef représentant le client.
Exemple
GetREF | CLARIANT | V!3
Cette commande recherche la référence correspondant au critère « CLARIANT » dans la table des références et place la référence trouvée dans la variable « V(3) ».
Remarques
La table des références peut être initialisée à partir de la commande SetREF ou manuellement par Opérat.
GetMessage Retour
Désignation
Cette commande permet de chercher, dans la table des messages de Opérat-IV soit le message dont le numéro est communiqué en paramètre, dans ce cas le message est copié dans l’objet référencé comme étant le réceptacle du message(DefineMessage), soit le résultat de la requête passée en paramètre.
ATTENTION le contenu de l’objet servant de réceptacle du message est totalement remplacé par le message chargé dans le cas où un n° de message est communiqué.
Si ce n’est pas un n° de message qui est communiqué mais une requête SQL, la zone texte message n’est pas affectée. Si aucun paramètre n’est passé à la commande aucune action n’est faite.
Syntaxe
GetMessage | NMES
Où NMES représente le n° du message dans la table des messages de Opérat.
Ou
GetMessage | RQT
Exemple1
GetMessage | {NMES}
Cette commande recherche le message dont le numéro est communiqué par la variable « NMES » et, s’il existe, rempli la zone texte correspondante avec le contenu du message.
Exemple2
GetMessage
| SELECT DateS, Message,N
From Message Where Archive=0 And NCOL={NCOL}
Cette commande recherche tous les enregistrements du collaborateur dont le champs Archive est à zéro et rapatri dans le recorset les champs DateS, Message et N
Remarques
Désignation
Cette commande permet d’enregistrer dans la table des astreintes des données via une requête SQL.
Syntaxe
SetAnnexe | SQL | [Sx] | [Echp]
- SQL représente la requête SQL
- Sx représente optionnellement le N° du serveur à utiliser (0 par défaut)
- Echp représente optionnellement le caractère d’échappement utilisé par le serveur de donnée
Exemple
SetAnnexe | INSERT INTO `Incident` (NMES,STATUT,NCLI)
VALUES ({NMES},'{Text1!1}',{NCLI});
Cette commande créé un nouvel enregistrement dans la table « Incident » de la base annexe de l’adherent.
SetAnnexe | UPDATE FROM Carrefours SET `Lieu`=’{Text1!4}
WHERE NCARF= {3!NCARF}
Cette commande modifie un enregistrement de la table « Carrefours » de la base annexe de l’adhérent dont le numéro de carrefour correspond au contenu de la variable 3!NCARF
SetAnnexe
| UPDATE FROM Clients SET `Lieu`=’{Text1!4} WHERE N=3 | 2 | ‘
Cette commande modifie un enregistrement de la table « Clients » de la base de données située sur la connexion serveur N°2 en utilisant le caractère d’échappement « ‘ »
Remarques
SetAnnexeEx Retour
Désignation
Cette commande permet d’enregistrer dans une table du base de données externe des données via une requête SQL.
Syntaxe
SetAnnexeEx | SQL | Sx
Où SQL représente la requête SQL
Sx représente le N° du connecteur déclaré sur le serveur Opérat.
Exemple
SetAnnexe | INSERT INTO `Incident` (NMES,STATUT,NCLI)
VALUES ({NMES},'{Text1!1}',{NCLI}) | 1;
Cette commande créé un nouvel enregistrement dans la table « Incident » de la base externe connecté via la connexion N°1 du serveur Opérat.
SetAnnexe | UPDATE FROM Carrefours SET `Lieu`=’{Text1!4}
WHERE NCARF= {3!NCARF} | 2
Cette commande modifie un enregistrement de la table « Carrefours » de la base externe accessible via le connecteur N° 2 dont le numéro de carrefour correspond au contenu de la variable 3!NCARF
SetAnnexe
| UPDATE FROM Clients SET `Lieu`=’{Text1!4} WHERE N=3 | S2
Cette commande modifie un enregistrement de la table « Clients » de la base de données située la connexion serveur N°2
Remarques
SetFEC Retour
Désignation
Cette commande permet d’enregistrer dans la table `FichesEnCours` de la base System des données via une requête SQL.
Syntaxe
SetAnnexe | TYPE | DATA1 | DATA2
Où
- TYPE représente « UPDATE » pour mettre à jour un enregistrement ou « INSERT » pour créer un nouvel enregistrement.
- DATA1 représente :
1. pour un UPDATE les champs et leurs données
2. pour un INSERT la liste des champs
- DATA2 représente :
1. pour un UPDATE la clause WHERE
2. pour un INSERT la liste des données
Exemple
SetFEC | INSERT | NMES,STATUT,NCLI | {NMES},'{Text1!1}',{NCLI}
Cette commande créé un nouvel enregistrement dans la table « FichesEnCours » de la base System de Opérat.
SetFEC | UPDATE | `C1`=’{Text1!4} | NMES= {3!NMES}
Cette commande modifie un enregistrement de la table « FichesEnCours » de la base System de Opérat dont le champ NMES correspond au contenu de la variable 3!NMES.
Remarques
ATTENTION
Le champ NSOC est automatiquement géré dans la clause WHERE, donc ne pas gérer.
Idem pour les champs (DATA1 et DATA2) le champ NSOC est géré dans la fonction.
DeleteAnnexe Retour
Désignation
Cette commande permet de détruire dans une table des annexes de l’adhérent, un enregistrement via une requête SQL.
Syntaxe
DeleteAnnexe | SQL
Où SQL représente la requête SQL suivie optionnellement du N° de serveur.
Exemple
DeleteAnnexe | DELETE FROM `Incident` WHERE N={1!N};
Cette commande détruit de la table “Incident” l’enregistrement dont le champ N correspond à 1!N
DeleteAnnexe | DELETE FROM Clients WHERE N=3 !S2
Cette commande détruit de la table « Clients » du serveur N°2, l’enregistrement dont le champ N est égal à 3.
Remarques
Il est à noter que le résultat aurait été identique avec la commande SetAnnexe
SetAnnexe
| DELETE FROM `Incident` WHERE N={1!N};
DeleteFEC Retour
Désignation
Cette commande permet de détruire dans la table ‘FichesEnCours’ de la base System, un enregistrement.
Syntaxe
DeleteFEC | WHERE
Où WHERE représente la clause WHERE de la requête.
Exemple
DeleteFEC | NMES={1!NMES};
Cette commande détruit de la table “FichesEnCours” l’enregistrement dont le champ NMES correspond à 1!NMES
ATTENTION
Le champ NSOC est automatiquement géré dans la clause WHERE, donc ne pas gérer en plus.
Idem pour les champs (DATA1 et DATA2) le champ NSOC est géré dans la fonction.
DeleteMessage Retour
Désignation
Cette commande permet de détruire dans une table des messages un des messages de l’adhérent.
Syntaxe
DeleteMessage | NMES
Où NMES représente le numéro du message à supprimer.
Exemple
DeleteMessage | {NMES}
Cette commande détruit de la table “Message” le message correspondant.
Remarques
Il est à noter que le message ne peut pas être détruit s’il a fait l’objet d’un suivi de saisie.
GetGPSDistance Retour
Désignation
Cette commande permet d'obtenir la distance en kilomètre entre deux points GPS.
Syntaxe
GetGPSDistance | LatA | LatB | LongA | LongB | Obj
Où
– LatA est la latitude du point A
– LatB est la latitude du point B
– LongA est la longitude du point A
– LongB est la longitude du point B
– Obj représente une zone Text où sera retourné le résultat du calcul
Exemple
GetGPSDistance | 47,8311 | 47,5833 | 1,6955 | 1,3333 | Text1
Cette commande calcul la distance à vol d'oiseau entre les deux points et place le résultat dans Text1.
Remarques
Il est à noter que les cordonnées doivent être en décimale séparateur virgule.
GetFormulaire Retour
Désignation
Cette commande permet de chercher, dans la table des journaux de formulaire de Opérat-IV, le formulaire dont le numéro est communiqué en paramètre.
ATTENTION le formulaire en cours sera totalement remplacé par le formulaire chargé
Dès lors que le numéro de formulaire est connu le formulaire est rechargé dans l’état exact où il était lors de sa précédente fermeture.
Si le numéro de formulaire demandé n’existe pas aucune action n’est faite.
A l’issu du chargement, la variable NMES est initialisée avec le Numéro de formulaire.
Syntaxe
GetFormulaire | NMES
Où NMES représente le n° du message dans la table des messages de Opérat.
Exemple
GetFormulaire | {NMES}
Cette commande recherche le formulaire dont le numéro est communiqué par la variable « NMES » et, s’il existe, remplace le formulaire par le formulaire demandé.
Remarques
La variable NMES est modifiée !
SetFormulaire Retour
Désignation
Cette commande permet de sauvegarder, dans la table des journaux de formulaire de Opérat-IV, l’état exact du formulaire.
ATTENTION la sauvegarde précédente sera totalement remplacée par la nouvelle.
Dès lors que le numéro de message est connu le formulaire est sauvegardé dans l’état exact où il est.
Si le numéro de message n’est pas connu action n’est faite.
Syntaxe
SetFormulaire
Exemple
SetFormulaire
Cette commande sauvegarde l’état des composant dynamique du formulaire dont le numéro est communiqué par la variable « NMES ».
Remarques
SetREF Retour
Désignation
Cette commande permet de programmer, dans la table des références de Opérat-IV, une référence communiquée en paramètre.
Cette référence peut-être liée à un critère de recherche.
Syntaxe
SetREF | Critères | Ref
Où Critère représente le critère de recherche de la référence dans la table des références.
Il est en général formé par un mot clef représentant le client.
Ref représente la référence à créer. Elle peut-être communiquée directement ou être spécifiée dans une variable ou un objet.
En plus des variables connues, il existe des spécifiques ( voir Variables).
Voir l’instruction NewNMess pour créer un nouveau message.
Exemple
SetREF | CLARIANT | {NMES}
Cette commande créer une référence contenant le n° du message en cours et lui adjoint le critère « CLARIANT ».
Remarques
La table des références peut être initialisée manuellement à partir Opérat-IV (voir la fiche collaborateur).
SetMessage Retour
Désignation
Cette commande permet l’enregistrement, dans la table des messages de Opérat-IV, du message encours dans l’objet message (voir DefineMessage) identifié par la variable NMES.
Si la variable NMES est à zéro, un nouveau message est créé lors de l’enregistrement et stocké dans la variable NMES.
Elle permet aussi de n’enregistrer dans la base de données que les champs souhaitaient
Syntaxe
SetMessage
Ou
SetMessage | RQT
Exemple
SetMessage
Cette commande enregistre le message dont le numéro est communiqué par la variable « NMES » et, s’il n’existe pas de n° de message, un nouveau numéro est créé.
SetMessage
| UPDATE Message Set Archive = 1 Where N={1!4}
Cette commande passe en paramètre une requête de mise à jour d’un enregistrement.
Remarques
SetSuivis Retour
Désignation
Cette commande permet le déclenchement des suivis, dans la table des suivis de Opérat-IV, du message encours dans l’objet message (voir DefineMessage) identifié par la variable NMES.
Par défaut cette fonction recherche les options de message cochées afin d’identifier le travail à effectuer.
Si l’option mail est cochée, Opérat utilise, par défaut, l’adresse mail du collaborateur. Cependant, il est possible de passer en paramètre des informations dans la commande qui seront utilisées en lieu et place de celles du collaborateur. Ceci est vrai pour les 3 options Mail, Fax et SMS.
ATTENTION : le fait de passer un paramètre pour un type de transmission, n’exclus pas les autres options même si les paramètres correspondant ne sont pas passés.
Il est ainsi possible de passer une adresse mail spécifique dans la commande et si deux options « Mail et Fax » sont cochées, le mail partira sur l’adresse communiquée alors que le fax partira sur le numéro de fax identifié dans la structure correspondante.
Si, lors d’une utilisation de cette fonction, vous ne souhaitez pas qu’une des options valides soit prise en compte, vous pouvez la désactiver en passant « 0 » dans le paramètre correspondant où en décochant l’option correspondante (voir composants spéciaux)
Syntaxe
SetSuivis [ | mail ;mail*sujet | fax | SMS | URG ]
Où sujet représente le sujet du mail
Exemple
SetSuivis
Cette commande recherche les options de transmission définies pour les messages du collaborateur et, en fonction des structures correspondantes, demande le traitement correspondant.
SetSuivis | y.charbonnier@callbooster.fr;Jacques.Dupond@wanadoo.fr
Cette commande recherche les options de transmission définies pour les messages du collaborateur et, en fonction des structures correspondantes, demande le traitement correspondant. Si l’envoi par mail est demandé l’adresse utilisée sera celle communiquée en paramètre et non celle de la fiche collaborateur.
SetSuivis | y.charbonnier@callbooster.fr*Test de mail | 0 | 0
Dans cet exemple seul le mail sera utilisé, si l’option mail est cochée. Le Fax et le SMS seront ignorés. A noter que le sujet du mail sera « Test du mail »
SetSuivis | y.charbonnier@callbooster.fr | | | 1
Dans cet exemple les transmissions définies dans les options de message ou redéfinie dans les composants spéciaux seront effectuées. Le mail sera envoyé à l’adresse spécifiée, si l’option mail est cochée. Le Fax et le SMS seront ceux des structures correspondantes. L’option URG est à 1 cela signifie que le suivis devra calculer la date et l’heure d’envoie correspondant au choix « Urgent » de la structure correspondante.
Ceci permet d’envoyer immédiatement un message à une adresse (URG=1)
Remarques
Les structures doivent être programmées et les option de message renseignées.
Il est possible d’envoyer plusieurs messages de suite en faisant plusieurs SetSuivis et en changeant les paramètres passés.
SetIncident Retour
Désignation
Cette commande permet de valider un incident dans la table des incidents de Opérat-IV pour une durée déterminée.
Syntaxe
SetIncident | REF | Durée
Où REF représente la référence de l’incident à valider.
Durée représente la durée de validité de l’incident.
Exemple
SetIncident | GAZ524 | M;60
Cette commande valide l’incident référencé « GAZ524 » dans la table des incidents pour 60 minutes.
Remarques
La durée de l’incident doit être au format suivant :
- S ;X S pour seconde
- M ;X M pour minute
- H ;X H pour heure
- J ;X J pour Jour
- D ;Y ;Z pour une date spécifique
X étant la valeur de la durée dans le type demandé.
Y doit être saisi au format « AAAA/MM/DD » et Z au format « HH:MM:SS »
Exemple de date « D;2005/11/05;11:30:00 ». Tous les paramètres doivent être saisis !
SetEnabled Retour
Désignation
Cette commande permet de valider ou invalider un des objets du formulaire.
Syntaxe
SetEnabled | Obj | Val
Où Val représente l’état de la validation souhaitée. Soit 0 pour invalider et 1 pour valider
Exemple
SetEnabled | Text1!15 | 0
Cette commande invalide le composant « Text1(15).
Remarques
SetOrder Retour
Désignation
Cette commande permet de positionner l’objet sur le plan désiré.
Syntaxe
SetOrder | Obj | Val
Où Val représente le numéro du plan où doit être placé l’objet. Soit 0 pour le 1er plan et 1 pour le plan immédiatement en dessous
Exemple
SetOrder | Text1!15 | 0
Cette commande place l’objet Text1(15) en premier plan.
Remarques
SetAlignement Retour
Désignation
Cette commande permet de positionner le texte au sein d’un objet Label ou Text1. Le texte de ces objets peut être ainsi positionné à gauche, droite ou centré.
Syntaxe
SetAlignement | Obj | Val
Où Val représente le type d’alignement qui peut être :
- 0 pour aligner à gauche
- 1 pour aligner à droite
- 2 pour un centrage du texte
Exemple
SetAlignement | Label!15 | 2
Cette commande centre le texte du Label(5).
Remarques
SetConnexionBase Retour
Désignation
Cette commande permet d’établir une connexion avec une base de données d’un serveur de données autre que celui du serveur Opérat.
Syntaxe
SetConnexionBase | DRIVER | Host | Base | UID | PWD | CURSOR | iCnx
Où
- DRIVER représente le string de connexion (ex : DRIVER={MySQL ODBC 3.51 Driver})
- Host représente l’adresse IP du serveur
- Base représente le nom de la base de donnée à laquelle vous souhaitez vous connecter
- UID représente le nom d’utilisateur de la connexion
- PWD représente le mot de passe de la connexion
- CURSOR représente le type de cursor utilisé :
1. (adUseNone) à Aucun curseur n'est utilisé. (Cette constante est obsolète et n'est proposée que pour des raisons de compatibilité.)
2. (adUseServer) à Valeur utilisée par défaut. Utilise les curseurs fournis par les fournisseurs, les données ou les pilotes. Ces curseurs sont parfois très souples et plus sensibles aux modifications apportées par d'autres utilisateurs à la source de données. Certaines fonctions de Microsoft Client Cursor Provider (comme les jeux d'enregistrements dissociés) ne peuvent cependant pas être utilisées avec des curseurs côté serveur et ces fonctionnalités ne seront pas disponibles si cette valeur est sélectionnée.
3. (adUseClient) à Utilise des curseurs client fournis par une bibliothèque locale de curseurs. Les moteurs de curseurs locaux permettent souvent bon nombre de fonctions interdites par les curseurs externes, et cette valeur peut présenter un avantage compte tenu des fonctions offertes.
- iCnx représente le numéro de la connexion (50 possibles) de 1 à 50.
Exemple
SetConnexionBase |{MySQL ODBC 3.51 Driver}|CallBOOSTER.COM|Essai|Yves|1234| 3 | 1
Remarque
Attention le port d’accès au serveur de données doit être ouvert sur le serveur distant.
Le driver ODBC correspondant à votre connexion doit être installé sur le poste Opérat.
SetDate Retour
Désignation
Cette commande permet de recalculer la date présente dans l’objet en ajoutant ou supprimant une valeur au jour ou au mois ou à l’année.
Syntaxe
SetDate | Obj | Fonction | Val
Où Fonction peut prendre les valeurs suivantes
- D- Soustrait Val au jour
- D+ Ajoute Val au jour
- M- Soustrait Val au mois
- M+ Ajoute Val au mois
- Y- Soustrait Val à l’année
- Y+ Ajoute Val à l’année
- F Applique de format de date souhaité (Voit GetDate pour les formats)
Exemple
SetDate | Text1!3 | D- | 4
Cet exemple soustrait 4 jours à la date de la zone texte et replace le résultat dans la zone texte.
Remarque
Attention la date précédente est perdue !
Voir la fonction GetDate pour les formats de date
SetTime Retour
Désignation
Cette commande permet de recalculer l’heure présent dans l’objet en ajoutant ou supprimant une valeur à l’heure ou aux minutes ou aux secondes.
Syntaxe
SetTime | Obj | Fonction | Val
Où Fonction peut prendre les valeurs suivantes
- S- Soustrait Val aux secondes
- S+ Ajoute Val aux secondes
- M- Soustrait Val aux minutes
- M+ Ajoute Val aux minutes
- H- Soustrait Val à l’année
- H+ Ajoute Val à l’année
- F Applique de format d’heure souhaité (Voit GetDate pour les formats)
Exemple
SetTime | Text1!3 | M+ | 6
Cet exemple ajoute 6 minutes à l’heure de la zone texte et replace le résultat dans la zone texte.
Remarque
Attention l’heure précédente est perdue !
Voir la fonction GetDate pour les formats de date
SetFormat Retour
Désignation
Cette commande permet de formater le contenu d’un objet.
Syntaxe
SetFormat | Obj | Fonction | Val
Où Fonction peut prendre les valeurs suivantes
- UCase Passe tous les carractères de l’objet en majuscule
- LCase Passe tous les caractères de l’objet en minuscule
- AutosizeCol Formate la colonne d’une grille à la largeur maximale du texte
- AutosizeRows Formate les lignes d’une grille à la hauteur maximale du texte
- WordWrap Force la grille à gérer les retours dans les textes
- Alignment Détermine l’alignement du text dans l’objet (0 > Left, 1 > Right, 2 > Center)
- Apostrophe Remplace « ‘ » de Val par « \’ » et copie le résultat dans Obj.
Exemple
SetFormat | HFlexGrid!3 | AutosizeRows | 4
Cet exemple formate les lignes de la grille 3 à la hauteur du texte contenu dans la colonne 4.
SetFormat | [reg1] | Apostrophe | {[txtFiltre]}
Cet exemple échappe le contenu de txtFiltre et copie le résultat dans reg1
Remarque
Attention la commande WordWrap doit être passée à 1 avant d’effectuer une commande AutosizeRows.
SetAlias Retour
Désignation
Cette commande permet d’identifier les objets par un nom.
Syntaxe
SetAlias | Obj | Nom
Où
- Nom Représente le nom donné à l’objet
- Obj L’objet lui-même
Exemple
SetAlias | HFlexGrid!3 | GrilleClient
Cet exemple Nomme le HFlexGrid!3 en GrilleClient.
Ceci permet d’utiliser GrilleClient entre crochets [GrilleClient] dans les fonctions du formulaire en lieu et place du nom du composant. Cette écriture rend plus lisible le code.
Vous pouvez écrire :
SetAlias | Text1!1 | NomClient L’objet Text1!1 pourra être remplacé par [NomClient] dans le code
SetAlias | Text1!2 | Result L’objet Text1!2 pourra être remplacé par [Result] dans le code
Set | [Result] | {[NomClient]} : Le contenu de l’objet [NomClient] sera copié dans l’objet [Result]
Remarque
Nous conseillons d’initialiser les Alias dans la macro « Load » toutefois il est cent fois préférable d’utiliser la déclaration des Alias par la fonction « Alias » intégrée à Opérat lors de la création de votre formulaire.
En effet les alias créés avec cette fonction ne sont pas sauvegardés ce qui provoquera des erreurs lors du chargement initial des objets si ceux-ci utilisent l’option Build car les Alias ainsi créés ne seront pas encore connu de Opérat.
CloseConnexionBase Retour
Désignation
Cette commande permet de supprimer une connexion avec une base de données d’un serveur de données distant.
Syntaxe
CloseConnexionBase | iCnx
Où
iCnx représente le numéro de la connexion à supprimer.
Exemple
CloseConnexionBase | 1
Remarque
SetTrace Retour
Désignation
Cette commande permet de tracer à l’écran le déroulement des macros.
Syntaxe
SetTrace | Val [| File]
Où Val représente l’état de la trace qui peut être :
- On pour l’activation des traces écran,
- File pour l’activation des traces dans un fichier
- Off pour stopper les traces.
Exemple1
SetTrace | On
Cette commande démarre le mode trace.
Exemple2
SetTrace | File | C:\FitreNom.tra
Cette commande démarre le mode trace dans le fichier FiltreNom.tra
Remarques
Lors des traces sur l’écran, les commandes sont affichées avant leur exécution et trois boutons permettent :
- OK > exécute la commande
- NO > n’éxécute pas la commande
- Annul > Sort du mode trace et exécute toutes les commandes jusqu’au prochain déclenchement.
Lors d’un trace fichier, si le nom n’est pas communiqué le nom suivant sera utilisé par défaut : « C:\TraceFor.tra »
SetVisible Retour
Désignation
Cette commande permet de rendre visible ou invisible un des objets du formulaire.
Syntaxe
SetVisible | Obj | Val | Opt
Où Val représente l’état de la commande souhaitée. Soit 0 pour invisible et 1 pour visible
Où Opt représente une option qui permet un complément à la fonction.
- All permet de valider à vrai l'ensemble des objets d'un Picture
Exemple
SetVisible | Text1!16 | 1
Cette commande rend visible le composant « Text1(16).
Exemple
SetVisible | Picture2!1 | 1 | All
Cette commande rend visible le Picture(1) ainsi que l'ensemble des composants qui y réside.
Remarques
SetPosition Retour
Désignation
Cette commande permet de modifier la position d’un des objets du formulaire.
Syntaxe
SetPosition
| Obj | Left | Top | Width | Height
Exemple
SetPosition | Text1!16 | 6360 | 2500 | 5895 | 2430
Cette commande place :
- le bord gauche de l’objet à 6360 Twips du bord gauche de la fenêtre
- le bord haut de l’objet à 2500 Twips du bort supérieur de la fenêtre
Elle dimensionne :
- la largeur de l’objet à 5895 Twips
- la hauteur de l’objet à 2430 Twips.
Remarques
Tous les paramètres doivent être passés !
SetFocus Retour
Désignation
Cette commande permet de donner le focus à un des objets du formulaire.
Syntaxe
SetFocus | Obj
Exemple
SetFocus | Text1!16
Cette commande donne le contrôle (focus) à la zone Text1(16)
Remarques
Désignation
Cette commande permet d’initialiser une zone texte ou un label avec :
- une valeur alphanumérique
- le contenu d’un objet quelconque.
Si l’objet source est un HFlexGrid, toutes les colonnes de la ligne sont copiées dans la zone texte excepté si le n° de la colonne est précisé dans la commande.
Si l’objet est une zone liste multisélection, les textes des sélections sont copiés à la fin du texte
Si l’objet est une zone texte, le pointeur est positionné à la fin du texte
Syntaxe
Set | Obj | Val [ | Col ]
Où :
- Val représente le texte à copier dans l’objet ou l’objet source ou le contenu texte d’un objet.
- Col représente le n° de la colonne d’un HFlexGrid. Son contenu sera copié dans l’objet
Exemple
Set | Text1!11 | BONJOUR
Cette commande copie dans le composant « Text1(11) » le texte « BONJOUR »
Set | Text2!3 | HFlexGrid!4
Cette commande copie l’ensemble de la ligne du HFlexGrid(4) dans la zone text2(3)
Set | Text2!3 | HFlexGrid!4 | 2
Cette commande copie le contenu de la deuxième colonne de la ligne sélectionnée du HFlexGrid(4) dans la zone text2(3)
Set | Text2!3 | ListM!1 | vbCrLf
Cette commande copie le contenu des lignes sélectionnées à la fin de la zone texte « Text2(3) » en sautant une ligne à chaque sélection.
Set | Text2!3 | ListM!1 | ;
Cette commande copie le contenu des lignes sélectionnées à la fin de la zone texte « Text2(3) » en incorporant un « ; » entre chaque texte.
Set | Text1!10 | {CmbL!2}
Cette commande copie la ligne sélectionnée du combo liste (2) dans la zone texte « Text1(10) »
Remarques
La valeur alphanumérique peut contenir le contenu d’un objet (Le technicien est {Text1!7})
SetObjetSource Retour
Désignation
Cette commande permet d’initialiser un objet source d’une action avec :
- une valeur alphanumérique
Syntaxe
SetObjetSource | Val
Où :
- Val représente le texte à copier dans l’objet ou l’objet source ou le contenu texte d’un objet.
Exemple
SetObjetSource| BONJOUR
Cette commande copie dans le composant Source de l’action le texte « BONJOUR »
If est à noter que la commande « Set | ObjetSource | BONJOUR » fait la même chose.
Remarques
Voir la fonction Set qui est plus vaste.
SetVal Retour
Désignation
Cette commande permet d’initialiser :
- une zone texte avec un texte
- une ligne d’une liste, d’un combo ou d’un HFlexGrid
- un des composants spéciaux
Syntaxe
SetVal | Obj | Val
Où Val représente le texte pour un objet texte ou label
Un n° de ligne pour une Liste, un combo ou un HFlexGrid
Exemple
SetVal | Text1!11 | BONJOUR
Cette commande copie dans le composant « Text1(11) » le texte « BONJOUR »
SetVal | HFlexGrid !20 | 2
Cet exemple valide la deuxième ligne de l’HFlexGrid(20)
SetVal | chkUrgent | 1
Cet exemple permet de cocher la case à cochée correspondante et de rendre vrai l’urgence du message.
Remarques
SetTimer Retour
Désignation
Cette commande est une fonction qui permet, lors de l'exploitation, de déclencher un timer qui aura pour rôle d'effectuer une tâche sur l’ordinateur.
A ce jour, seule la tâche "AppelFirstPage" est active.
Cette fonction doit commencer par
les paramètres de durée du timer qui sont du même
type que ceux utilisés par la fonction "SetIncident"
suivie par les paramètres.
Syntaxe
SetTimer | Durée | Paramètres
Où « Durée » représente le délai de déclenchement du timer (Voir SetIncident pour la syntaxe)
Où « Paramètres » représente :
§
NSOC représente le
numéro de la société adhérente
§
NCLI représente le
numéro du client
§
NCOL représente le
numéro du collaborateur
§
nomCli
représente le nom du client
§
nomCol
représente le nom du collaborateur
§
Accueil représente la
phrase d'accueil
§
NTEL représente un
numéro de téléphone à communiquer
§
NAPL représente le n°
d'une fiche appelant
§
X représente un nom de
fenêtre de production. Si celui-ci est omis, c'est la fenêtre par défaut qui
sera utilisée sinon les noms suivants peuvent êtres
utilisés.
§
AGD ou RDV pour
l'agenda
§
FOR ou FORM pour le
formulaire
§
MES pour le message
§
VIS pour les visites
§
AUT pour autre page
Exemple
SetTimer | M ;5|AppelFirstPage,3,8,192,Maintenance,Alarme,,,0,FORM
A l’issue de 5 minutes, la fiche de
production de type Formulaire du client « Maintenance » et du
collaborateur « Alarme » sera montée automatiquement à l’écran.
La phrase d’accueil et le n° de
téléphone ne sont pas communiqués.
Remarques
Cette commande n’agit que sur l’ordinateur sur lequel elle est déclenchée.
Elle permet de libérer un opérateur dans l’attente d’un éventuel appel.
SetEvent Retour
Désignation
Cette commande est une fonction qui permet, lors de l'exploitation, de déclencher un évènement qui aura pour rôle d'effectuer le rappel du formulaire sur un des ordinateurs du groupe d’opérateurs autorisés, après un délai programmable et dans l’état exact où il a été fermé.
Elle retourne dans V(0) l’index de l’événement programmé.
ATTENTION : cette fonction n’utilise pas de structure, elle ne peut donc pas être associée avec la fonction NextEvent qui elle utilise les structures pour calculer le prochain événement.
Lorsque l’événement se déclenche,
l’évènement et dévalidé !
SetEvent | Durée [| Paramètres1 ;Paramètre2 ; …]
Où « Durée » représente le délai de déclenchement du timer (Voir SetIncident pour la syntaxe)
Où « Paramètre » représente un string ou le contenu d’objet(s) qui vous sera retourné dans la variable « PARAM » et que vous pourrez tester dans une fonction « If ».
Exemple
SetEvent | M;5 | Astreinte1
A l’issue de 5 minutes, la fiche de
production de type Formulaire qui a servi au déclenchement de la commande, sera
montée automatiquement à l’écran d’un des ordinateurs du groupe de travail où
Opérat-IV est ouvert en attente.
Dans la macro « Load », vous pouvez tester la variable PARAM !1
afin de prendre des choix.
L’événement est automatiquement
dévalidé et mis à zéro par le serveur lors du déclenchement.
Exemple de fonction Load
If | PARAM !1 | Astreinte1
SetVisible | Picture2 !1 | 0
SetVisible |
Picture2 !2 | 1
End
If
| PARAM !1 | Astreinte2
SetVisible |
Picture2 !1 | 1
SetVisible |
Picture2 !2 | 0
End
Remarques
Cette commande agit sur l’ensemble des ordinateurs du groupe de travail. Un opérateur qui vient de saisir sur un formulaire des renseignements et qui, après avoir bipé un technicien d’astreinte, peut quitter le formulaire lui permettant de ne pas se bloquer et de traiter d’autres appels.
A l’issue du temps programmé, l’évènement se déclenche sur un des postes du groupe de travail permettant à un des opérateurs de prendre la suite du traitement du formulaire.
ATTENTION : l’événement est mis à zéro en date et heure lors de la remonté puis dévalidé, il ne peut être revalidé directement !
Si la fiche qui est remontée automatiquement doit être remise en attente une deuxième fois, nous conseillions de détruire l’ancien évévement avant d’en revalider un afin de libérer de l’espace dans la base de données. Vous connaissez le n° de l’événement en retour de fonction dans la variable V(0) qui peut-être sauvegardé dans les données de FicheEnCours dans le champ Nevent.
Exemple de fonction sur une mise en attente :
SetVariable | V!16 | Non finalisée..
Gosub | SetEncours
'Recherche l'Encours existant ?
SetRecordPosition | 5 | First << Si le contenu de l’encour est dans le recordset N°5
SetRecordPosition | 5 | NMES| {NMES}
If | {5!NEvent} | IsNotNumeric << S’il n’y avait pas encore eu de mise en attente
SetEvent | M;10 | Rappel;{[NumTicket]}
SetAnnexe | UPDATE `fiches_encours` SET `NEVENT`='{V!0}' WHERE NMES={NMES}
Else << Dans le cas où une mise en attente avait déjà eu lieu
DelEvent | {5!NEvent} << destruction de l’ancien événement
SetEvent | M;10 | Rappel;{[NumTicket]} << creation d’un nouvel événement
‘Sauvegarde du n° de l’événement dans l’encours
SetAnnexe | UPDATE `fiches_encours`
SET `NEVENT`='{V!0}' WHERE NMES={NMES}
End
NextEvent Retour
Désignation
Cette commande de fonction permet, lors de l'exploitation, de recalculer l’heure de déclenchement de l’événement dont le numéro est passé en paramètre. Le calcul s’effectue dans une fourchette de temps, exprimée en minutes, afin d’éviter de court-circuiter des événements.
Par exemple si un événement doit
avoir lieu tous les jours à 08h05 afin de contrôler la prise de poste d’un
gardien, il ne doit pas se déclencher si le gardien appel à 08h00 pour signaler
sa présence.
ATTENTION : Cette fonction est active que dans le cas où une structure d’évènement existe ! Elle ne peut donc pas être associée à un événement SetEvent.
Syntaxe
NextEvent | NEvent | DeltaT
Où NEvent représente le n° d’index de l’événement
Où DeltaT représente l’intervalle de temps pendant lequel l’appel du gardien peut être pris en compte.
Exemple
NextEvent | 372 | 15
Dans cet exemple l’événement 372
doit être recalculé s’il devait se déclencher dans les 15 prochaines minutes.
Si un événement doit se déclencher
à 08h05 et que le gardien appel à 08h00 l’événement de 08h05 sera supprimé car
il est à moins de 15 minutes de l’appel. Cependant si le gardien appelle à
07h45, l’événement ne sera pas supprimer car l’appel
est à plus de 15 minutes de l’événement.
Remarques
Cette commande agit sur l’événement en cours dont le n° est passé en paramètre.
ATTENTION : Cette fonction est active que dans le cas où une structure d’évènement existe ! Elle ne peut donc pas être associée à un événement SetEvent.
ValEvent Retour
Désignation
Cette commande de fonction permet, lors de l'exploitation, de valider ou invalider un événement dont le numéro est passé en paramètre.
Syntaxe
ValEvent | NEvent | 0 ou 1
Où NEvent représente le n° d’index de l’événement
Où 0 pour invalider et 1 pour valider
Exemple
ValEvent | 372 | 1
Dans cet exemple l’événement 372
sera rendu valide
Si l’événement était arrêté, il se
trouvera revalidé
Remarques
DelEvent Retour
Désignation
Cette commande de fonction permet, lors de l'exploitation, de détruire un événement dont le numéro est passé en paramètre.
Syntaxe
DelEvent | NEvent
Où NEvent représente le n° d’index de l’événement
Exemple
DelEvent | 372
Dans cet exemple l’événement 372
sera détruit de la table événement de Opérat-IV quelque
soit sont état.
Remarques
(Voir SetEvent, NextEvent et ValEvent)
SetAlerte Retour
Désignation
Cette commande est une fonction qui permet, lors de l'exploitation, de déclencher une alerte téléphonique vers une liste de correspondants et d’établir un compte-rendu sur Fax ou par Mail.
L’alerte a pour rôle d’appeler des
correspondants dont le n° de téléphone est donné dans une table de la base de
données des annexes, et de leur délivrer un message.
Syntaxe
SetAlerte | Libelle | TypeS | DestS | IntervalS | Groupe | NomMess | ModeS
Où
- « Libelle » représente le nom de la structure d’alerte de Opérat-IV
- « TypeS » représente le type de Suivi (Fax, Mail, SMS ou rien)
- « DestS » représente le n° ou l’adresse du destinataire du compte-rendu
- « IntervalS » représente l’intervalle entre deux comptes-rendus
- « Groupe » est un numéro formant un groupe d’enregistrement dans une base de données
- « NomMess » représente le nom du message à diffuser
- « ModeS » représente le mode de suivie à utiliser (0 à détaillé, 1 à résumé)
Exemple
SetAlerte | Crise | Mail | ycharbonnier@wanadoo.fr | 15 | Oui | AlloAlerte | 0
La fonction alerte recherche dans les structures d’alerte de Opérat-IV, la structure « Crise » et demande au Front-BOOSTER d’exécuter des appels et de diffuser le message AlloAlerte. Elle demande également de faire un compte-rendu par mail sur l’adresse ycharbonnier@wanadoo.fr toutes les 15 minutes afin de renseigner sur l’état de l’alerte et du nombre de personnes contactées.
Remarques
Cette commande utilise le boîtier téléphonique Front-BOOSTER pour effectuer les appels.
SetJournal Retour
Désignation
Cette commande permet d’activer ou de désactiver l’enregistrement dans le journal de formulaire.
Le journal de formulaire permet de restituer à l’identique le formulaire.
Syntaxe
SetJournal | Etat
Où « Etat » peut prend la valeur 0 ou 1.
0 pour désactiver le journal
1 pour activer le journal
En effet, la création d’une ligne de journal créer automatiquement, s’il n’existe pas, un nouveau n° de message.
Si votre souhait est de recharger un ancien message, il est donc inutile de créer un nouveau n° de message et surtout de créer un journal correspondant à ce n° inutile
Ceci est utile si vous recharger un formulaire existant et que vous ne souhaitez pas créer de nouveau message.
Exemple
SetJournal | 0
Cet exemple dévalide le journal
SetJournal | 1
Cet exemple valide le journal
Remarques
ATTENTION : L’utilisation de cette fonction peut s’avérer délicate d’emploi ! car si vous dévalidez le journal, vous ne pourrez donc pas le recharger pour consultation !
DefineMessage Retour
Désignation
Cette commande définit quel est le composant texte du formulaire qui sera considéré être celui qui comportera le compte-rendu et qui sera mis à jour par la commande « AddMessage »
Syntaxe
DefineMessage | Obj
Exemple
DefineMessage | Text2!6
Le composant « Text2!6 » sera considéré par le formulaire comme étant le
texte du message de compte-rendu
Remarques
Cette commande est indispensable pour que Opérat-IV puisse enregistrer un message, générer des suivis et retrouver le travail fait. Cette commande doit être utilisée lors de la construction du composant (voir la fonction associée à la propriété « Build » du composant) ou dans la fonction « Load ».
DefineShortMessage Retour
Désignation
Cette commande définit quel est le composant texte du formulaire qui sera considéré être celui qui comportera le mini message pour l’envoi des SMS, et qui sera mis à jour par la commande « AddShortMessage »
Syntaxe
DefineShortMessage | Obj
Exemple
DefineShortMessage | Text2!8
Le composant « Text2!8 » sera considéré par le formulaire comme étant le
texte du mini message utilisé lors de l’envoi des SMS
Remarques
Cette commande est indispensable pour que Opérat-IV puisse enregistrer un mini message à destination d’un envoi SMS. Si l’option SMS n’est pas demandée sur un formulaire, la commande n’est donc pas utile. Dans le cas où elle est utilisée, renseignez-la lors de la construction du composant (voir la fonction associée à la propriété « Build » du composant) ou dans la fonction « Load ».
DefineAppelant Retour
Désignation
Cette commande définit quel est le composant texte du formulaire qui sera considéré être celui qui comportera le nom de l’appelant. Cette information est très utile dans les suivis de message.
Syntaxe
DefineAppelant | Obj
Exemple
DefineAppelant | Text2!15
Le composant « Text2!15 » sera considéré par le formulaire comme étant le
texte contenant le nom de l’appelant.
Remarques
Cette commande n’est pas obligatoire mais conseillée si vous n’utilisez pas la gestion des appelants de Opérat-IV et ce, afin d’avoir le nom de l’appelant renseigné dans les suivis des saisies. Dans le cas où elle est utilisée, renseignez-la lors de la construction du composant (voir la fonction associée à la propriété « Build » du composant) ou dans la fonction « Load ».
DefineUser Retour
Désignation
Cette commande définit quels sont les composants texte du formulaire qui comporteront les textes à sauvegarder dans la table « Messages » de Opérat-IV dans les champs « User » lors d’un « SetMessage »
Syntaxe
DefineUser | x | Obj
Où x représente le numéro d’index du champ User à définir (1 parmi 5)
Exemple
DefineUser | 2 | Text2!6
Le composant « Text2!6 » sera considéré par le formulaire comme étant le
texte du champ « User2 »
Remarques
L’utilisation des champs « User » n’est pas obligatoire. Si les champs « User » ne sont pas utilisés, ils seront mis à vide lors de la sauvegarde. Cette commande est indispensable pour que Opérat-IV puisse enregistrer un des champs « User ». Cette commande doit être utilisée lors de la construction du composant (voir la fonction associée à la propriété « Build » du composant) ou dans la fonction « Load ».
AddMessage Retour
Désignation
Cette commande permet d’ajouter du texte au composant défini comme réceptacle du message de compte-rendu.
Syntaxe
AddMessage | Texte [ | vbCrLf]
Exemple
AddMessage | Ceci est la suite du message | vbCrLf
Le texte « Ceci est la suite
du message » et concaténé au texte du composant défini comme étant l’objet
Message
Si le troisième paramètre, qui est
un paramètre optionnel, contient la constante « vbCrLf »
un retour chariot sera ajouté au texte de l’objet message.
Remarques
AddShortMessage Retour
Désignation
Cette commande permet d’ajouter du texte au composant défini comme réceptacle du mini message de SMS.
Syntaxe
AddShortMessage | Texte [ | vbCrLf]
Exemple
AddShort | Tt va bien [| vbCrLf]
Le texte « Tt va bien » est
concaténé au texte du composant défini comme étant l’objet du mini Message
Si le troisième paramètre, qui est
un paramètre optionnel, contient la constante « vbCrLf »,
un retour chariot sera ajouté au texte de l’objet ShortMessage.
Remarques
AddText Retour
Désignation
Cette commande permet d’ajouter du texte au composant défini en paramètre.
Syntaxe
AddText | Obj | Texte [ | vbCrLf]
Exemple
AddText | Text2 !2 | Coucou [| vbCrLf]
Le texte « Coucou » est
concaténé au texte du composant défini en troisième paramètre.
Si le quatrième paramètre, qui est
un paramètre optionnel, contient la constante « vbCrLf »,
un retour chariot sera ajouté au texte.
Remarques
Exec Retour
Désignation
Cette commande permet d’exécuter toute commande Windows comme le lancement d’un programme annexe.
Syntaxe
Exec | Programme ;W;H;TaskName;TOP;VERROU
Où
- Programme représente le chemin complet d’accès au programme
- W représente la largeur de la fenêtre du programme exécuté
- H représente la hauteur de la fenêtre du programme exécuté
- TaskName représente le nom de la fenêtre dans le task manager
- TOP signifie que la fenêtre dans toujours rester dans le premier plan
- VERROU signifie que le contrôle ne peut être rendu à Opérat que lorsque la fenêtre sera fermée
Exemple 1
Exec | C:\Essai\Bidon.exe;650;520
Cette commande lance l’exécution du
programme « Bidon » et définit la largeur de sa fenêtre d’exécution
de 650 twips et sa hauteur de 520 twips. Sans forcer la fenêtre en premier plan
ni verrou.
Exemple 2
Exec | C:\Essai\Bidon.htm;650;520 ;ESSAI EXEC ;TOP ;VERROU
Cette commande lance la lecture de la page HTML « Bidon.htm » qui porte le nom « ESSAI EXEC » dans le task manager de Windows. La page sera toujours en premier plan et Verrouillée.
Remarques
Il est possible d’utiliser TOP sans VERROU et son inverse quoi que dans ce cas il n’y ait pas d’utilité. Le TaskName n’est obligatoire que dans le cas où le nom dans le Task Manager n’est pas le même que le nom du programme (cas des pages HTML dans l’explorateur)
ExecAction ou Gosub Retour
Désignation
Cette commande permet d’exécuter une des Macro-commandes à l’intérieur de la Macro-commande en court.
Syntaxe
ExecAction | Macro-commande
Gosub | Macro-commande
Où Macro-commande représente le nom d’une des macro-commandes du formulaire.
Exemple 1
ExecAction | Bouton1
Ou
Gosub | Bouton1
Cette commande lance l’exécution de
la Macro-commande « Bouton1 » et lorsque toutes les commandes de la
Macro sont exécutées, l’exécution est redonnée à la commande suivant le « Gosub » de la Macro appelante.
Il peut y avoir plusieurs « Gosub » dans une Macro-commande et il peut y avoir des
« Gosub » dans la Macro-commande appelée.
Dans notre exemple la
Macro-commande « Bouton1 » peut contenir un « Gosub » vers une autre macro-commande qui peut elle
aussi contenir une commande « Gosub » vers
une autre Macro-commande et ainsi de suite.
Remarques
Dans le principe il n’y a pas de limite de niveau d’appel.
Désignation
Cette commande permet d’appeler via le Front-BOOSTER un correspondant comme un homme d’astreinte.
Une option permet d’indiquer le
mode de mise en relation
Syntaxe
Appel | n° Tel | {Option}
Le n° de téléphone peut être extrait d’une variable
Option peut être :
- « AppelSimple » Cette option est celle par défaut, elle permet l’appel d’un correspondant et d’être mis en relation avec lui.
- « AppelAboute » Cette option permet d’appeler un correspondant et de mette en relation avec une autre communication, généralement un appelant
- « TransferOPE » Cette option permet de transférer la communication vers un autre agent opérateur.
Exemple
Appel | {text1!18}
Ou
Appel | {2!NTEL}
Ou
Appel | 0247590200
Ou
Allel | 0247590200 | AppelAboute
Le premier exemple trouve le n° de téléphone
dans la zone texte du composant « Text1(18) »
Le deuxième exemple trouve le n° de téléphone dans le champ « NTEL » du 2ème tableau de recordset
Le troisième exemple trouve
directement le n° de téléphone dans la commande.
Le quatrième exemple appel le
0247590200 et le met en relation avec le correspondant en attente
Remarques
A la réception de cette commande, le Front-BOOSTER appelle l’opérateur afin d’établir une liaison avec lui puis, dans un second temps, il appelle le n° demandé. Lorsque le correspondant a décroché, la communication est jointe à celle de l’opératrice.
Désignation
Cette commande permet de filtrer des données dans un HFlexGrid. Ceci permet, lors de la saisie d’un texte dans un TextBox, de filtrer la liste.
Syntaxe
Filtre | Obj [| Champ | Recordset]
Le filtre est appliqué au composant « Obj » à partir du composant « ObjSource »
Les paramètres Champs et Recordset sont optionnels
Champs peut prendre deux types de valeur :
- Le numéro de la colonne du recordset à filtrer
- Le nom de la colonne du recordset à filtrer.
Recordset représente soit l’index du recordset du formulaire soit un des noms de recordset.
- Prenoms (Recordset utilisé dans le Dico des prenoms)
- Noms (Recordset utilisé dans le Dico des Noms)
- CP (Recordset utilisé dans le Dico des Villes et Codes-Postaux)
- Pays (Recordset utilisé dans le Dico des Pays)
Exemple
Filtre | HFlexGrid!15
Le texte saisi dans le composant TextBox est appliqué au champ de la première colonne du recordset qui alimente le HFlexGrid(15)
Exemple
Filtre | HFlexGrid!15
| Ville | CP
Le texte saisi dans le composant TextBox est appliqué au champ Ville du recordset
CP qui alimente le HFlexGrid(15). (Dico des Ville)
Exemple
Filtre | HFlexGrid!15
| 2 | 3
Le texte saisi dans le composant TextBox est appliqué au deuxième champ du recordset 3 qui alimente le HFlexGrid(15). (Filtre
privé)
Remarques
Cette commande, pour être efficace, doit être affectée à la propriété « Change » d’un composant TextBox.
ATTENTION :
- Le champ utilisé doit être un champ « Index »
- Dans le cas où les extensions ne sont pas utilisées vous ne devez pas saisir d’espace dans le filtre ou tout autre caractère qui ne serait pas connue dans le recordset.
Enregistre Retour
Désignation
Cette commande permet de déclencher l’enregistrement d’un message sonore à partir du poste de l’opérateur.
Syntaxe
Enregistre | NomSon
Où NomSon représente le nom du fichier son qui sera créé
Exemple
Enregistre | MessageAlerte
Remarques
A la réception de cette commande, le Front-BOOSTER appelle l’opérateur afin d’établir une liaison avec lui puis, dans un second temps, il démarre l’enregistrement après l’émission d’un bip sonore. La fin de l’enregistrement est provoquée par l’appui sur une touche du téléphone.
Operation Retour
Désignation
Cette commande permet d’effectuer une opération arithmétique entre deux objets et/ou variables et copie le résultat de l’opération dans un objet ou une variable.
Syntaxe
Operation | + - / * | {Obj} ou {Vx} | {Obj} ou {Vx} | Obj ou Vx
Exemple
Operation
| + | {Text1!2} | {V!3} | Text1!10
Additionne le contenu de Text1(2)
avec le contenu de la variable V!3 et place le
résultat dans Text1(10)
Remarques
Désignation
Cette commande permet d’effacer le contenu de l’objet visé.
Syntaxe
Clear |
Obj
Exemple
Clear
| Text1!10
Vide le contenu de la zone
text1(10)
Remarques
Vous pouvez vider le contenu d’une zone liste, d’un Combo ou d’un HFlexGrid
ClearVariable Retour
Désignation
Cette commande permet d’effacer le contenu d’une des 50 variables ou l’un des 50 tableaux de recordset ou l’une des variables Opérat‑IV suivante :
NAPL, NomApl, NumTel et NMES
Syntaxe
ClearVariable | V!x
ClearVariable | R!x
ClearVariable | NMES
Exemple
ClearVariable | V!10
Vide le contenu de la variable V
indice 10 « V(10) »
ClearVariable | R!4
Vide le contenu du recordset N° 4
ClearVariable | NMES
Met à zéro le numéro de message
Remarques
Vous pouvez utiliser l’une des 50 variables allant de V(1) à V(50)
Les variables Opérat-IV sont affectées comme suit :
NAPL = 0
NomApl = ‘’
NumTel = ‘’
NMES = 0
Wait Retour
Désignation
Cette commande permet de marquer une pose dans la fonction.
Valeur possible de 0,1 seconde à 10000 secondes
Syntaxe
Wait | Valeur
Où valeur représente le temps en seconde
Exemple
Wait | 0,5
Attent ½ seconde
avant de passer à l’instruction suivante.
SetVariable Retour
Désignation
Cette commande permet d’initialiser le contenu d’une des 50 variables ou l’une des variables Opérat‑IV suivante :
NAPL, NomApl, NumTel et NMES avec une valeur
Syntaxe
SetVariable | V!x | 10
SetVariable | NMES | 3254
Exemple
SetVariable | V!10 | « ESSAI »
Initialise le contenu de la
variable V indice 10 « V(10) » avec le mot
« ESSAI »
SetVariable | NMES | « 356 »
Initialise la variable ‘NMES’ avec
le chiffre « 356 ». Cette variable représentant le numéro de message
seul des chiffres peuvent y être placés.
Remarques
Vous pouvez utiliser l’une des 50 variables allant de V(1) à V(50)
Les variables Opérat-IV sont affectées comme suit :
NAPL = (Numérique seulement)
NomApl = (AlphaNumérique)
NumTel = (AlphaNumérique)
NMES = (Numérique seulement)
AddVariable Retour
Désignation
Cette commande permet d’ajouter du texte à la variable définie en paramètre.
Syntaxe
AddVariable | Vx | STR [| vbCrLf]
Exemple
AddVariable | V!8 | Ceci est la suite du
message | vbCrLf
Le texte « Ceci est la suite
du message » est concaténé au contenu de la variable V!8.
Si le troisième paramètre, qui est
un paramètre optionnel, contient la constante « vbCrLf »
un retour chariot sera ajouté au texte de l’objet message.
Remarques
AddList Retour
Désignation
Cette commande permet d’ajouter du texte à une liste.
Syntaxe
AddList | Obj | STR | N
Où
Obj représente un objet liste ou combo
STR représente les données à copier. Elle peuvent être soit une variable, soit un tableau de résultat soit le contenu d’un objet {}
N représente le numéro de la ligne d’un tableau dans le cas où STR pointe sur un tableau de résultat
Exemple
AddList | List!1 | V!3
Le contenu de la variable V!3 est ajouté à la liste (List!1)
AddList | List !1 | resF!3 | V!3
Le contenu de la ligne (V!3) du tableau resF!3 est ajouté à la liste (List!1)
AddList | List!1 | resF!3 | F!1
Le contenu de la ligne (F!1) du tableau resF!3 est ajouté à la liste (List!1). La
variable F est le pointeur d’une boucle For / Next
AddList | List!1 | {1!Choix}
Le contenu du champ
« Choix » du recordset N°1 est ajouté à la
liste (List!1)
Remarques
Désignation
Cette commande permet de sélectionner les commandes à exécuter dans une macro en fonction de diverses possibilités.
Syntaxe1
If | Obj | Condition | Valeur de comparaison
Où valeur peut-être une valeur quelconque ou le contenu d’une variable ou d’un objet.
Où Condition représente les valeurs suivantes
- VIDE (If | Text1!2 | VIDE)
-
REMPLI (If | Text1!2 | REMPLI)
-
VISIBLE (If | Text1!2 | VISIBLE)
-
CACHE (If | Text1!2 | CACHE)
-
IsNumeric (If
| {Text1!2}| est numéric
-
IsNotNumeric (If |
{Text1!2}| n’est pas numéric
-
=
(Egale) (If | Text1!2 | = | 12) ou (If | Text1!2 | = | {Text1!4})
- < (Inférieur) (If | Text1!2 | < | 31) ou (If | Text1!2 | < | {V!1})
- > (Supérieur) (If | Text1!2 | > | 4)
- Le texte de l’objet avec une valeur (If | Text1!2 | 6) Test si l’objet = 6
- L’index de la ligne dans une liste ou un combo (%x) Test le N° de la ligne sélectionnée
1. % spécifie qu’il s’agit d’un index de ligne (If | List!3 | %4)
2. x représente le numéro de la ligne
Syntaxe2
If | Vx | Condition | Valeur de comparaison
Où valeur peut-être une valeur quelconque ou le contenu d’une variable ou d’un objet.
Où Condition représente les valeurs suivantes
- VIDE (If | Vx | VIDE)
- REMPLI (If | Vx | REMPLI)
-
IsNumeric (If
| {Vx}| est numéric
-
IsNotNumeric (If |
{Vx}| n’est pas numéric
-
= (If | Vx | = | 23) ou (If | V2 | = | {Text1!4})
-
< (If | Vx | < | 182) ou (If | V!2 | < | {V!1})
- > (If | Vx | > | 16)
- Une valeur à comparer à la variable (If | Vx | 12)
Syntaxe3
If | PARAM | Condition
Où Condition représente les valeurs suivantes
- Une valeur à comparer au paramètre
Exemple
If | Text1!11
| VIDE
Si l’objet Text1(11) est vide, alors les commandes qui suivent sont traitées. Sinon, les commandes qui suivent sont sautées jusqu’à ce qu’une commande « ElseIf », « Else » ou « End » soit trouvée.
If | List !2 | %4
Si la 4ème ligne de ‘List(2)’ est sélectionné les commande qui suivent sont traitées.
Il est possible d’imbriquer des
« If » à l’intérieur d’un « If » comme ceci :
If
| Text1!11 | VIDE
If | Picture2!15 | VISIBLE
SetVisible | Picture2!15 | 0
Else
SetVisible
| Picture2!15 | 1
End
Else
If | Picture2!12 | VISIBLE
SetVisible
| Picture2!12 | 0
Else
SetVisible
| Picture2!12 | 1
End
SetVisible
| Picture2!15 | 1
End
Exemple 2
If | {Text1!11} | = | 4
Recap | Text1(11) est = à 4 | Rappel du choix | Jaune
ElseIf | {Text1 !11} | = | 5
Recap | Text1(11) est = à 5 | Rappel du choix | Jaune
ElseIf | {Text1 !11} | = | 6
Recap | Text1(11) est = à 6 | Rappel du choix | Jaune
ElseIf | {Text1 !11} | = | 7
Recap | Text1(11) est = à 7 | Rappel du choix | Jaune
End
Cet exemple montre comment utiliser la fonction ElseIf. Bien entendu il est toujour possible d’imbriquer des tests à l’intérieur d’un test.
Remarques
Les décalages par rapport à la marge n’ont d’utilité que de permettre une meilleure vision.
Désignation
Cette commande permet d’effectuer une tâche répétitive en fonction d’un compteur F(). La variable compteur ne peut pas être initialisée autrement que par cette fonction. En revanche, elle peut-être testée à n’importe qu’elle moment.
Syntaxe
For | Index | Valeur de départ
…
Next | Index | Pas | Condition | Valeur de test
Où
- Index est un chiffre de 1 à 50 représentant l’index de la boucle
- Valeur de départ est la valeur de départ du compteur
- Pas est le pas de calcul du compteur : Il peut être – ou + suivi du pas du compteur
- Condition est soit : < ou > ou =
- Valeur de test est la valeur de test de fin du compteur de boucle.
Exemple
For | 1 | 1
For | 2 | 1
‘Travail X
Next | 2 | +1 | > | 1000
Set | Text1!1 | {F(1)}
Next | 1 | +1 | > | 100
Dans cet exemple, il est utilisé la variable F() qui est la valeur du compteur qui a le même Index que celui de la boucle For.
Remarques
Il est possible d’imbriquer jusqu’à 50 boucles les unes dans les autres sans utiliser deux fois le même index.
Désignation
Cette commande permet d’effectuer une tâche répétitive.
Syntaxe
Do | Index
…
Loop | Index
Où
- Index est un chiffre de 1 à 50 représentant l’index de la boucle
-
Exemple
Do | 1
'
Loop | 1
Remarques
Attention : Vous devez prévoir la sortie de la boucle dans un If et un GoTo
Il est possible d’imbriquer jusqu’à 50 boucles les unes dans les autres sans utiliser deux fois le même index.
GetAppelant Retour
Désignation
Cette commande permet d’affecter à une variable ou un objet le contenu d’un champ de la fiche appelant en cours.
Syntaxe
GetAppelant | Champ | Obj ou Vx
Où Champ représente un des champs de la fiche appelant.
Exemple
GetAppelant | Nom | Text1!19
Cette commande copie dans la zone texte « Text1(19 » le contenu du champ « Nom » de l’enregistrement de l’appelant.
Remarques
Il faut que la fiche de l’appelant ait été initialisée avec avant d’effectuer la commande.
Désignation
Cette commande permet de copier une partie de l’annuaire de Opérat dans un HFlexGrid. La copie s’initialise ou se filtre à partir d’une zone texte.
Syntaxe
Annuaire | SQL | NbC | Obj ; ObjS | L1 | L2 …
Où SQL représente :
- Les champs à sélectionner
- La condition WHERE de la requête
- La condition Order de la requête
Où NbC représente le nombre de caractères qui doit être saisi dans ObjS, afin que la requête puisse être prise en compte.
Si NbC est < à ObjS, la grille est vidée
Si NbC est = à ObjS, la grille est chargée si elle est vide
Si NbC est > à ObjS, la grille est filtrée ou chargée si elle est vide.
Où L1 à Lx représente la largeur des colonnes en Twips.
Exemple
Annuaire | NOM,PRENOM,TEL1,N;Nom
Like '{Text1!3}%';Nom | 2 | HFlexGrid!1;Text1!3 | 2000 | 1500 | 1000 | 1000
Cette commande charge, à partir du deuxième caractère saisi dans Text1(3), l’ensemble des Nom, Prenom, N° de téléphone et Index de l’annuaire dont les noms commencent par les deux lettres saisies. Elle classe les données dans l’ordre croissant des noms puis les place dans le HFlexGrid(1). Les caractères saisis au-delà du deuxième permettent de filtrer les données de la grille.
Remarques
Pour une bonne fluidité de la commande, il n’est pas conseillé de descendre en dessous de deux caractères saisis.
Il faut obligatoirement que l’annuaire soit chargé avec le champ « N », qui est un index unique identifiant individuellement chaque ligne de l’annuaire.
SetAppelant Retour
Désignation
Cette commande permet d’affecter l’enregistrement de la fiche appelant avec l’enregistrement choisi dans la grille annuaire.
Syntaxe
SetAppelant [| NAPL]
Cette commande se suffit à elle-même puisqu’elle permet d’initialiser la fiche appelant à partir du choix dans l’enregistrement sélectionné dans l’annuaire. Cependant le n° de l’appelant peut être communiqué afin de charger la fiche de l’appelant de son choix.
Exemple
SetAppelant
Cette commande copie dans l’enregistrement de la fiche appelant l’ensemble des données de l’enregistrement sélectionné dans la grille de l’annuaire.
SetAppelant | 12458
Cette commande copie dans l’enregistrement de la fiche appelant toutes les données de l’enregistrement 12458.
Remarques
Il faut obligatoirement que l’annuaire soit chargé avec le champ « N », qui est un index unique identifiant individuellement chaque ligne de l’annuaire.
AddAppelant Retour
Désignation
Cette commande permet d’ajouter dans l’annuaire un enregistrement formé avec les données des champs de saisie définies dans la commande.
Syntaxe
AddAppelant | Liste des champs | Liste des données
Exemple
AddAppelant | Nom,Prenom,TEL1 | '{Text1!3}','{Text1!4}','{Text1!12}'
Cette commande crée un nouvel enregistrement dans l’annuaire et renseigne les champs Nom, Prenom et Téléphone à partir des zones de saisie Text1(3), Text1(4) et Text1(12).
Remarques
Vous devez respecter le format MySQL,qui consiste à entourer les données de format « String » par des côtes(‘)
DeleteAppelant Retour
Désignation
Cette commande permet de supprimer un enregistrement de l’annuaire.
Syntaxe
DeleteAppelant
Exemple
DeleteAppelant | TEL1 | '{Text1!12}'
L’enregistrement, qui est pointé dans la grille,est complété avec la donnée du champ de saisie « Text1(12) »
Remarques
ATTENTION ! Cette commande est dangereuse d’utilisation. En effet, les messages saisis possèdent l’index de l’enregistrement d’annuaire afin de faire référence à l’appelant lors des consultations de message. Si vous détruisez un enregistrement de l’annuaire, vous le détruisez ainsi que tous les messages qui lui font référence.
Utilisez la fiche de gestion de l’appelant, qui gère ce cas.
UpdateAppelant Retour
Désignation
Cette commande permet de compléter les données d’une fiche appelant.
Syntaxe
UpdateAppelant | Données
Où Le paramètre « Données » représente les champs et leur valeur à modifier.
Exemple
UpdateAppelant | Prénom=’{Text1!4}’,Tel2=’{Text1!5}
L’enregistrement, qui est pointé dans la grille, est modifié.
Remarques
ATTENTION ! Cette commande est dangereuse d’utilisation. En effet, les messages saisis possèdent l’index de l’enregistrement d’annuaire afin de faire référence à l’appelant lors des consultations de message. Si vous modifiez un enregistrement de l’annuaire, vous modifiez également tous les messages qui lui font référence. Donc, modifier un numéro de téléphone d’une fiche peut être très dommageable pour le client final, qui en consultant ses messages, obtiendra un numéro de téléphone qui n’est peut-être pas celui qui le concerne.
Désignation
Cette commande permet de quitter la saisie du formulaire.
Syntaxe
Exit | Type
Où Type représente le type de sortie.
- 1 permet de quitter en enregistrant le message
- 0 permet de quitter sans enregistrer le message.
Exemple
Exit | 1
Quitte la saisie du formulaire après avoir enregistré le message.
Remarques
Cette commande est généralement utilisée lors d’un déclenchement de Timer ou Event.
SetOnglet Retour
Désignation
Cette commande permet de sélectionner et mettre en premier plan l’onglet désigné.
Syntaxe
SetOnglet | N° Onglet
Où N° Onglet représente le numéro d’ordre de l’onglet.
Exemple
SetOnglet | 4
Quitte la page en cours pour pointer sur la page correspond à l’onglet 4.
Remarques
NewNMess Retour
Désignation
Cette commande permet de créer un nouveau message et d’initialiser celui-ci avec un message par défaut.
Syntaxe
NewNMess [ | Message]
Exemple
NewNMess | Nouveau message
Créer un nouveau message dans la table des messages et y copie la phrase « Nouveau message »
Remarques
Cette fonction est utilisée, par exemple, lorsque l’on souhaite gérer une main courante à la prise de service d’un technicien ou gardien.
GoTo Retour
Désignation
Cette commande permet de créer des sauts à l’intérieur d’une macro.
Syntaxe
GoTo | Etiquette
Où Etiquette représente l’étiquette où le saut doit avoir lieu.
Exemple
GoTo | Saut1
------
Saut1 :
L’interpréteur sautera l’ensemble des instructions de la macro jusqu’à l’étiquette « Saut1 »
Remarques
Le saut ne peut pas revenir en arrière dans la macro.
L’étiquette doit obligatoirement commencer à la ligne est terminer par deux point verticaux « : ».
SetColor Retour
Désignation
Cette commande permet de faire la couleur de fond d’un objet.
Syntaxe
SetColor | Obj | Couleur
Où Obj représente un des objets composant du Formulaire.
Couleur représente la couleur de fond de l’objet.
Si la couleur passée en paramètre n’est pas une des couleurs attendues aucun changement n’est effectué.
Exemple
SetColor | Pic!1 | Bleu ‘Color le fond de la feuille en bleu.
SetColor | Text1!6| Rouge ‘Color le fond de la zone texte en rouge.
Remarques
Les couleurs de fond possibles sont :
Noir ou Black (&H0)
Rouge ou Red (&HFF)
Vert ou Green (&HFF00)
Jaune ou Yellow (&HFFFF)
Bleu ou Blue (&HFF0000)
Magenta (&HFF00FF)
Cyan (&HFFFF00)
Blanc ou White (&HFFFFFF)
Les couleurs fondamentales fonctionnent par paire (RGB) :
- La première paire contient la quantité de bleu à intégrer à la couleur,
- La deuxième paire contient la quantité de vert à intégrer à la couleur,
- La troisième paire contient la quantité de rouge à intégrer à la couleur.
Vous pouvez par conséquent, spécifier une couleur sous la forme d'un nombre hexadécimal à l'aide de la syntaxe suivante :
&HBBGGRR&
Les lettres BB indiquent la quantité de bleu, GG la quantité de vert, et RR la quantité de rouge. Chacun de ces groupes de lettres prend la forme d'un nombre hexadécimal à deux chiffres, compris entre 00 et FF. La valeur médiane est 80. Le nombre ci-dessus, constitué de l'intensité moyenne des trois couleurs, représente donc la couleur grise :
Note : Bien qu'il soit possible de spécifier plus de 16 millions de couleurs différentes, tous les systèmes ne sont pas capables de les afficher exactement.
Recap Retour
Désignation
Cette commande permet de faire afficher une petite fenêtre POPUP, dans laquelle le texte, passé en paramètre, apparaît sur la couleur de fond définie. Cette fenêtre peut-être affichée sans ou avec des boutons.
Syntaxe
Recap | Message | Titre | Couleur [| ModeAff | Show | Durée]
Où Message représente le texte à afficher dans le POPUP.
Titre représente le titre de la fenêtre
Couleur1 représente la couleur du fond
ModeAff représente le mode d’affichage (sans bouton, 1 bouton ou 2 boutons)
- 0 pour aucun bouton
- 1 pour le mode 1 bouton (coche verte) (mode par défaut)
- 2 pour le mode deux boutons (coche verte et croix rouge)
Show représente le type d’affiche qui peut-être bloquant ou non
- 0 pour un affiche non bloquant
- 1 pour un affichage bloquant (mode d’affichage par défaut)
Durée est la durée d’affichage maxi du message
- 0 pour un affichage infini (durée par défaut)
- X en seconde pour un affichage limité dans le temps
Si la couleur passée en paramètre n’est pas une des couleurs attendues et s’il s’agit d’une valeur numérique, celle-ci est directement convertie en couleur, sinon l’affiche se fait sur fond jaune.
Dans le cas d’une utilisation du mode d’affiche avec deux boutons, la variable V(15) contient le résultat du choix.
- La croix rouge retourne « No »
- La coche verte retourne « Yes »
Cette variable retourne « Ok » dans le cas d’une utilisation avec un bouton et rien dans le cas sans bouton.
Exemple
Recap | Ceci est un message | Titre de la fenêtre | Bleu
Affichage d’un message sur fond bleu
Recap | Ceci est un message {vbCrLf} – Coche Verte pour OUI {vbCrLf} – Croix rouge pour NON | Titre de la fenêtre | Bleu | 2
Affichage d’un message sur fond bleu avec retour dans la variable V(15). Notez l’utilisation de la variable vbCrLF
Recap | Ceci est un message furtif | Titre de la fenêtre | Jaune | 0| 0 | 5
Affichage d’un message sur fond jaune pendant 5 secondes en mode sans bouton et non bloquant
Remarques
Les couleurs de fond possibles sont :
Noir ou Black (&H0)
Rouge ou Red (&HFF)
Vert ou Green (&HFF00)
Jaune ou Yellow (&HFFFF)
Bleu ou Blue (&HFF0000)
Magenta (&HFF00FF)
Cyan (&HFFFF00)
Blanc ou White (&HFFFFFF)
Les couleurs fondamentales fonctionnent par paire (RGB) :
- La première paire contient la quantité de bleu à intégrer à la couleur,
- La deuxième paire contient la quantité de vert à intégrer à la couleur,
- La troisième paire contient la quantité de rouge à intégrer à la couleur.
Vous pouvez par conséquent, spécifier une couleur sous la forme d'un nombre hexadécimal à l'aide de la syntaxe suivante :
&HBBGGRR&
Les lettres BB indiquent la quantité de bleu, GG la quantité de vert, et RR la quantité de rouge. Chacun de ces groupes de lettres prend la forme d'un nombre hexadécimal à deux chiffres, compris entre 00 et FF. La valeur médiane est 80. Le nombre ci-dessus, constitué de l'intensité moyenne des trois couleurs, représente donc la couleur grise :
Note : Bien qu'il soit possible de spécifier plus de 16 millions de couleurs différentes, tous les systèmes ne sont pas capables de les afficher exactement.
CallFicheCollabo Retour
Désignation
Cette commande permet de faire afficher la petite fiche collaborateur, dans laquelle un numéro de téléphone peut-être passé en paramètre.
Syntaxe
CallFicheCollabo | Téléphone
Où Téléphone représente le numéro de téléphone à utiliser pour un appel.
Exemple
CallFicheCollabo | 0247590200
Remarques
Le numéro ne doit pas contenir de point, ni d’espace
SelectCollaborateur Retour
Désignation
Cette commande permet dans un formulaire de Présélection d’appeler une fiche Collaborateur dans le mode souhaité.
Syntaxe
SelectCollaborateur | Nom, NCOL, Type
Où
- Nom représente le nom qui sera affiché dans la liste locale
- NCOL représente le numéro du collaborateur à appeler
- Type représente le type de feuille de production souhaité. Il peut être :
1. « FOR » pour appeler la feuille « Formulaire » du collaborateur
2. « MES » pour appeler la feuille « Message » du collaborateur
3. « VIS » pour appeler la feuille « Visite » du collaborateur
4. « AGD » pour appeler la feuille « Agenda » du collaborateur
5. « AUT » pour appeler la feuille de type « Autre » du collaborateur
Exemple
SelectCollaborateur | CHARBONNIER | 224 | FOR
Cette commande appelle la page « Formulaire » du collaborateur 224 et inscrit « CHARBONNIER » dans la liste d’attente locale.
Remarques
Cette commande n’est utilisable que dans un formulaire de Présélection.
Elle ne doit jamais être utilisé dans un autre formulaire sous peine de perdre le travail en cours.
Désignation
Cette commande découper un string en fonction d’un caractère séparateur et place le résultat dans un tableau resF() et indique dans la variable U() le nombre de découpage effectué.
Syntaxe
Split | String | Séparateur | Index
Où
- String représente la chaîne de caractère à découper
- Séparateur représente le caractère séparateur
- Index représente le numéro du tableau de résultat (resF)
Exemple
Split | {3!Directe} | & | 1
Cet exemple découpe la chaîne contenue dans 3!Directe en fonction du caractère & et place le résultat dans le tableau resF!1.
Si 3!Directe contient (Tours&Cormery&Loches) resF!1!1 = Tours, resF!1!2 = Cormery et resF!1!3 = Loches
Dans ce cas U(1) et égale à 3
CompareTab Retour
Désignation
Cette commande permet de comparer deux tableaux de résultat et de sortir toutes les égalités ou les différences et de placer le résultat obtenu dans un autre tableau. La variable U du tableau de résultat contient le nombre de correspondance trouvé
Syntaxe
CompareTab | Tab1 | Tab2 | Comparateur | Tab3
Où
- Tab1 contient l’index du premier tableau à comparer
- Tab2 contient l’index du deuxième tableau à comparer
- Comparateur contient « = » ou « <> »
- Tab3 contien l’index du tableau de résultat
Exemple
CompareTab | 1 | 2 | = | 3
Dans cet exemple la comparaison est faite entre le tableau resF !1 et le tableau resF !2 et toutes les égalités sont placées dans le tableau resF!3. La variable U!3 contient le nombre d’égalité trouvé.
CallFicheAppelant Retour
Désignation
Cette commande permet d’appeler la fiche de saisie d’un appelant.
Syntaxe
CallFicheAppelant
Exemple
CallFicheAppelant
InitConf Retour
Désignation
Cette commande permet d’initialiser une conférence téléphonique.
Syntaxe
InitConf | NomConf
Exemple
InitConf | Charles
Cette commande initialise une conférence appelée Charles
Remarque
Cette Commande ne fonctionne qu’avec le nouveau CoOPERATel
PrintScreen Retour
Désignation
Cette commande permet d’imprimer l’écran Opérat en cours d’affichage.
Syntaxe
PrintScreen | Methode | Sens | Position
Où
Methode peut être « Screen » ou « Form »
« Screen » permet l’impression de la form avec un câdre autours de la fenêtre
« Form » imprime la fenêtre sans câdre.
Sens défini le sens d’impression sur le papier et peut-être soit « P » ou « L »
« P » imprime en mode portrait
« L » imprime en mode payasage
Position défini dans la méthode « Screen » seulement la position X,Y de l’impression ce qui permet une mise en page en décalant les impressions vers la droite et vers le bas.
Exemple
PrintScreen | Screen | L | 40,60
Cette commande imprime l’écran avec le câdre de la fenêtre en faisan une marge gauche de 40 et une marge haute de 60
PrintScreen | Form | L
Cette commande imprime l’écran sans son câdre de fenêtre et sans marge.
Remarque
Les valeurs de position sont obligatoires dans la méthode « Screen »
PutConf Retour
Désignation
Cette commande permet de transférer l’appelant dans une conférence
Syntaxe
PutConf | NomConf
Où
NomConf représente le nom de la conférence à utilise
Exemple
PutConf | Charles
Cette commande transfert l’appelant dans la conférence Charles
Remarque
Cette Commande ne fonctionne qu’avec le nouveau CoOPERATel
ListConf Retour
Désignation
Cette commande permet d’obtenir la liste des personnes présentes dans une conférence
Syntaxe
ListConf | NomConf | Obj
Où
NomConf représente le nom de la conférence à utilise
Obj est une liste dans laquelle sera copié le nom des appelants
Exemple
ListeConf | Charles | List!4
Cette commande remplie la liste 4 avec la listes des personnes présentent dans la conférence Charles.
Remarque
Cette Commande ne fonctionne qu’avec le nouveau CoOPERATel
Les variables sont utilisées dans le formulaire entre accolades {}. Elles sont :
- Date Date courante
- Heure Heure courante
- Time Heure courante
- Agent Nom de l’agent logué
- NOPE Code de l’agent logué
- Accueil Contient la phrase d’accueil
- Astreinte N° de téléphone de l’astreinte en cour
- V!x Variable de 0 à 50
- U!x Variable de 0 à 50 contenant le nombre de découpage d’un Split
- resF!x Tableau contenant le résultat d’un Split
- PARAM!x Paramètre de 0 à 10
- NCLI N° du client
- NCOL N° du collaborateur
- NSOC N° de l’adhérent
- NAPL N° de l’appelant si la fiche appelant est remplie
- NomCli Nom du client
- NomCol Nom du collaborateur
- SDA N° de SDA demandé (telque défini dans Opérat)
- NumTel N° de téléphone reçu dans l’ACD
- NomAPL Nom de l’appelant si la fiche appelant est remplie
- NMES N° du message en cours
- vbCrLf Génère un retour à la ligne dans les messages (Recap)
- MyIndex Index d’un objet obtenu à l’aide de la fonction GetIndex
- RefComm Référence de la communication
Ces variables peuvent être testées dans des fonctions If.
Le contenu des variables est données lorsque la variable est spécifiée entre {} Ex : {NMES}
Liste des champs FEC Retour
Les champs de la table FEC sont :
- NMES Long Index Numéro du message correspondant.
- NomCli String Nom du client
-
C1 String Champ
1
- Statut String Champ représentant le statut de la fiche
- Date String Champ contenant la date de la fiche
- Agent String Champs contenant le nom de l’agent
-
C2 String Champ
2
-
C3 String Champ
3
-
C4 String Champ
4
-
C5 String Champ
5
-
C6 String Champ
6
-
C7 String Champ
7
-
C8 String Champ
8
-
C9 String Champ
9
-
C10 String Champ
10
-
C11 String Champ
11
- NEVENT Long Index Numéro de l’événement correspondant
- NSOC Long Index Numéro de l’adhérent
- NCLI Long Index Numéro du Client
- NCOL Champ Index Numéro du Collaborateur
ATTENTION Ne pas utiliser NSOC dans vos requêtes car Opérat l’intègre systématiquement.
Lors d’une sélection d’un formulaire à partir d’une liste FEC, la variable PARAM(0) contient le mot « FEC » ce qui permet de tester dans la macro ‘Load’ l’origine de l’appel du formulaire.
Les composants spéciaux sont des composants intrinsèques au fonctionnement de Opérat et qui peuvent être commandés par les commandes de « Formulaire ». Il ne sont pas naturellement visible mais vous pouvez les faire apparaître sur votre écran à l’aide d’un SetOrder et de le positionner avec un SetPosition. Attention l’amplitude de ces composants, pour qu’ils soient visibles sur la page de Formulaire est de :
- Left de 2500 à 13800
- Top de 1800 à 7700
Pour une hauteur (Height) de 255 et une largeur (Width) de 855.
- chkUrgent Permet de définir le caractère d’urgence dans un message lors du SetSuivis. La date et heure de l’envoie sera fonction de la fréquence d’envoie ou immédiat dans les plages horaires.
- chkLire Permet de définir si le message doit être mis en attente de lecture.
- chkMail Permet de définir si le message doit être expédié par Mail lors du SetSuivis.
- chkFax Permet de définir si le message doit être expédié par Fax lors du SetSuivis.
- chkBip Permet de définir si le message doit être expédié par SMS lors du SetSuivis.