version 6.0
Nom commande (commande) Alpha
Paramètre | Type | Description | |
commande | Numérique | Numéro de la commande | |
Résultat | Alpha | Nom (traduit) de la commande |
Description
La fonction Nom commande retourne le nom (universel) de la commande dont le numéro a été passé dans commande.
4D comporte un système unique en son genre de traduction dynamique des mots-clés, constantes et noms de commandes que vous utilisez dans vos méthodes. Si, par exemple, vous écrivez dans la version anglaise de 4D :
DEFAULT TABLE ([MyTable]) ALL RECORDS ([MyTable])
Le même code, si vous l'ouvrez avec la version française de 4D, sera automatiquement traduit :
TABLE PAR DEFAUT ([MyTable]) TOUT SELECTIONNER ([MyTable])
Cependant, 4D comporte aussi une autre fonctionnalité unique, la commande EXECUTER FORMULE, qui vous permet de construire à la volée et d'exécuter des parties de code même lorsque la base de données est compilée.
Si nous réécrivons le code précédent avec des commandes EXECUTE FORMULA, en anglais, il prendra l'apparence suivante :
EXECUTE FORMULA ( "DEFAULT TABLE([MyTable])") EXECUTE FORMULA ( "ALL RECORDS([MyTable])")
Le même code, ouvert avec la version française de 4D, sera automatiquement traduit :
EXECUTER FORMULE ( "DEFAULT TABLE([MyTable])") EXECUTER FORMULE ( "ALL RECORDS([MyTable])")
4D traduit automatiquement la commande EXECUTE FORMULA (anglais) en EXECUTER FORMULE (français) mais ne peut pas traduire les instructions passées à la commande.
Si vous utilisez la commande EXECUTER FORMULE dans votre application et si vous souhaitez éliminer les problèmes de traduction liés à ce type d'instruction, utilisez Nom commande pour rendre vos instructions indépendantes des localisations. L'exemple précédent devient alors :
EXECUTE FORMULA (Command name (46)+"([MyTable])") EXECUTE FORMULA (Command name (47)+"([MyTable])")
La version française se lira :
EXECUTER FORMULE (Nom commande (46)+"([MyTable])") EXECUTER FORMULE (Nom commande (47)+"([MyTable])")
Note : Pour connaître le numéro de chaque commande, reportez-vous à la section Syntaxe des commandes (liste alphabétique).
Exemples
(1) Pour toutes les tables de votre base de données, vous avez créé un formulaire appelé "FORMULAIRE ENTREE" que vous utilisez pour la saisie dans chaque table. Vous voulez ajouter une méthode projet générique qui va désigner ce formulaire comme étant le formulaire entrée pour la table dont vous passez le nom ou le pointeur. Vous pouvez écrire :
` méthode projet FORMULAIRE ENTREE STANDARD ` FORMULAIRE ENTREE STANDARD ( Pointeur {; Chaîne }) ` FORMULAIRE ENTREE STANDARD ( ->Table {; NomTable }) C_POINTEUR ($1) C_ALPHA (31;$2) Si (Nombre de parametres>=2) EXECUTER FORMULE (Nom commande (55)+"(["+$2+"];"FORMULAIRE ENTREE")") Sinon Si (Nombre de parametres>=1) FORMULAIRE ENTREE ($1->;"FORMULAIRE ENTREE") Fin de si Fin de si
Une fois que cette méthode a été ajoutée dans votre base, vous pouvez écrire :
FORMULAIRE ENTREE STANDARD (->[Employés]) FORMULAIRE ENTREE STANDARD ("Employés")
Note : Généralement, il est préférable d'utiliser des pointeurs pour écrire des routines génériques. Tout d'abord, le code sera exécuté compilé si la base est compilée. Ensuite, comme dans l'exemple ci-dessus, votre code cessera de fonctionner si vous renommez la table. Cependant, dans certains cas, l'utilisation de la commande EXECUTER FORMULE peut être la réponse à vos besoins.
(2) Dans un formulaire, vous voulez afficher une liste déroulante contenant les commandes standard de génération d'états. Dans la méthode objet de cette liste déroulante, vous écrivez :
Au cas ou : (Evenement formulaire =Sur Chargement) TABLEAU TEXTE (asCommand;4) asCommand{1}:=Nom commande (1) ` Somme asCommand{2}:=Nom commande (2) ` Moyenne asCommand{3}:=Nom commande (3) ` Min asCommand{4}:=Nom commande (4) ` Max ` ... Fin de cas
Dans une version anglaise de 4D, la liste déroulante contiendra : Sum, Average, Min et Max.
Dans une version française de 4D, la liste déroulante contiendra : Somme, Moyenne, Min et Max.
Référence
EXECUTER FORMULE, Syntaxe des commandes (liste alphabétique).