4D v16.3

METHODE LIRE CODE

Accueil

 
4D v16.3
METHODE LIRE CODE

METHODE LIRE CODE 


 

METHODE LIRE CODE ( chemin ; code {; option} {; *} )  
Paramètre Type   Description
chemin  Texte, Tableau texte in Texte ou Tableau texte contenant un ou plusieurs chemin(s) de méthode(s)
code  Texte, Tableau texte in Code de(s) méthode(s) désignée(s)
option  Entier long in 0 ou omis = export simple (sans tokens), 1 = export avec tokens
Opérateur in Si passé = la commande s’applique à la base hôte lorsqu’elle est exécutée depuis un composant (paramètre ignoré hors de ce contexte)

La commande METHODE LIRE CODE retourne dans le paramètre code le contenu de la ou des méthode(s) désignée(s) par le paramètre chemin. La commande peut retourner le code de tous les types de méthodes : méthodes base, triggers, méthodes projet, méthodes formulaire et méthodes objet.

Vous pouvez utiliser deux types de syntaxes, basées soit sur des tableaux texte, soit sur des variables texte :

 C_TEXTE(vTchemin// variables texte
 C_TEXTE(vTcode)
 METHODE LIRE CODE(vTchemin;vTcode) // code d’une seule méthode

 TABLEAU TEXTE(tabChemins;0) // tableaux texte
 TABLEAU TEXTE(tabCodes;0)
 METHODE LIRE CODE(tabChemins;tabCodes) // codes de plusieurs méthodes

Il n’est pas possible de mixer les deux syntaxes.

Si un chemin d’accès passé est invalide, le paramètre code est laissé vide et une erreur est générée. 

Dans le texte du code généré par la commande :

  • Les noms des commandes sont écrits en anglais, hormis si vous utilisez une version française de 4D et avez coché la préférence "Utiliser langage français et paramètres régionaux système" (cf. Page Méthodes). Le code peut contenir les tokens du langage afin de le rendre indépendant de la langue et de la version, si vous utilisez le paramètre option (cf. ci-dessous).
  • Le texte est indenté avec des caractères de tabulation en fonction des structures de programmation, à l'instar de l'éditeur de méthodes, afin d'augmenter la lisibilité du code.
  • Une ligne est ajoutée en en-tête du code généré, contenant des métadonnées utilisées lors de l’import du code, par exemple :
      // %attributes = {"lang":"fr","invisible":true,"folder":"Web3"}

    En cas d’import, cette ligne n’est pas importée, elle est utilisée pour définir les attributs à appliquer (les attributs non spécifiés sont remis à leur valeur par défaut). L’attribut "lang" définit la langue d’export, il permet d’empêcher un import dans une application en langue différente (dans ce cas, une erreur est générée). L'attribut "folder" contient le nom du dossier parent de la méthode, il n’apparaît pas si la méthode n’a pas de dossier parent.
    Des attributs supplémentaires peuvent être définis. Pour plus d'informations, reportez-vous à la description de la commande METHODE FIXER ATTRIBUTS.

Le paramètre option vous permet de sélectionner le mode d'exportation du code concernant les éléments "tokenisés" de la ou des méthode(s) :

  • Si vous passez 0 ou omettez le paramètre option, le code de la méthode est exporté sans tokens, c'est-à-dire exactement comme affiché dans l'éditeur de méthodes.
  • Si vous passez 1 ou la constante Code avec tokens, le code de la méthode est exporté avec des tokens, c'est-à-dire que les éléments "tokenisés" sont suivis de leur référence interne dans le contenu du code exporté. Par exemple, l'expression "Chaine(a)" est exportée "Chaine:C10(a)", où "C10" est la référence interne de la commande Chaine.

Les éléments tokenisés du langage sont :

  • les commandes et constantes 4D,
  • les noms de tables et de champs,
  • les commandes des plug-ins 4D.

Le code exporté avec ses tokens est indépendant de tout renommage ultérieur des éléments du langage. Grâce aux tokens, le code fourni sous forme de texte sera toujours correctement interprété par 4D, que ce soit via la commande METHODE FIXER CODE ou même le copier-coller. Pour plus d'informations sur la syntaxe tokens 4D, veuillez vous reporter à la section Utiliser des tokens dans les formules.

Si la commande est exécutée depuis un composant, elle s’applique par défaut aux méthodes du composant. Si vous passez le paramètre *, elle accède aux méthodes de la base hôte.

Reportez-vous à l'exemple de la commande METHODE FIXER CODE.

Cet exemple illustre les effets du paramètre option.

Vous voulez importer le code de la méthode "simple_init" suivante :

 Au cas ou
    :(Evenement formulaire=Sur chargement)
       TOUT SELECTIONNER([Customer])
 Fin de cas

Si vous exécutez le code suivant :

 C_TEXTE($code)
 C_TEXTE($contents)
 $code:=METHODE Lire chemin(Chemin Méthode projet;"simple_init")
 METHODE LIRE CODE($code;$contents;0) //pas de tokens
 TEXTE VERS DOCUMENT("simple_init.txt";$contents)

Le document résultant contient :

  //%attributes = {"lang":"fr"} commentaire réservé, ajouté par 4D
Au cas ou
    : (Evenement formulaire=Sur chargement)
        TOUT SELECTIONNER([Customer])
Fin de cas

Si vous exécutez le code suivant :

 C_TEXTE($code)
 C_TEXTE($contents)
 $code:=METHODE Lire chemin(Chemin Méthode projet;"simple_init")
 METHODE LIRE CODE($code;$contents;Code avec tokens//ajouter tokens
 TEXTE VERS DOCUMENT("simple_init.txt";$contents)

Le document résultant contient alors :

  //%attributes = {"lang":"fr"} commentaire réservé, ajouté par 4D
Au cas ou
    : (Evenement formulaire:C388=Sur chargement:K2:1)
        TOUT SELECTIONNER:C47([Customer:1])
Fin de cas



Voir aussi  

METHODE FIXER CODE
Utiliser des tokens dans les formules

 
PROPRIÉTÉS 

Produit : 4D
Thème : Accès objets développement
Numéro : 1190
Nom intl. : METHOD GET CODE

 
HISTORIQUE 

Créé : 4D v13
Modifié : 4D v14
Modifié : 4D v15
Modifié : 4D v15 R4

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)