4D v16.3

METHOD GET PATHS

Accueil

 
4D v16.3
METHOD GET PATHS

METHOD GET PATHS 


 

METHOD GET PATHS ( {nomDossier ;} typeMéthode ; tabChemins {; marqueur}{; *} ) 
Paramètre Type   Description
nomDossier  Texte in Nom de dossier de la page Démarrage
typeMéthode  Entier long in Sélecteur de type de méthode à récupérer
tabChemins  Tableau texte in Tableau des chemins et noms des méthodes
marqueur  Variable entier long in Valeur minimum de marqueur
in Nouvelle valeur courante
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 METHOD GET PATHS remplit le tableau tabChemins avec les chemins d’accès internes et les noms des méthodes de l’application du type défini par le paramètre typeMéthode.

Si votre code est organisé en "dossiers" dans l’Explorateur de 4D (page Démarrage), vous pouvez passer dans le paramètre optionnel nomDossier un nom de dossier. Dans ce cas, le tableau tabChemins ne contient que les chemins des méthodes situées à cet emplacement. 

Note : Il n’est pas possible d’utiliser le caractère "@" dans nomDossier

Passez dans typeMéthode le type de méthode dont vous souhaitez obtenir les chemins dans le tableau tabChemins. Vous pouvez utiliser les constantes suivantes, placées dans le thème Accès objets développement (vous pouvez utiliser une constante ou une combinaison de constantes) :

Constante Type Valeur Comment
Path all objects Entier long 31 Combinaison des chemins de toutes les méthodes de la base
Path database method Entier long 2 Chemin des méthodes base définies (nom anglais). Liste de ces méthodes :
[databaseMethod]/onStartup
[databaseMethod]/onExit
[databaseMethod]/onDrop
[databaseMethod]/onBackupStartup
[databaseMethod]/onBackupShutdown
[databaseMethod]/onWebConnection
[databaseMethod]/onWebAuthentication
[databaseMethod]/onWebSessionSuspend
[databaseMethod]/onServerStartup
[databaseMethod]/onServerShutdown
[databaseMethod]/onServerOpenConnexion
[databaseMethod]/onServerCloseConnection
[databaseMethod]/onSystemEvent
[databaseMethod]/onSqlAuthentication
Path project form Entier long 4 Chemin des méthodes formulaire projet et de toutes leurs méthodes objet. Exemples :
[projectForm]/monForm/{formMethod}
[projectForm]/monForm/bouton1
[projectForm]/monForm/ma%2liste
[projectForm]/monForm2/bouton1
Path project method Entier long 1 Nom de la méthode.
Exemple : MaMethodeProjet
Path table form Entier long 16 Chemin des méthodes formulaire table et de toutes leurs méthodes objet. Exemples :
[tableForm]/table_1/Form1/{formMethod}
[tableForm]/table_1/Form1/bouton1
[tableForm]/table_1/Form1/ma%2liste
[tableForm]/table_2/Form1/ma%2liste
Path trigger Entier long 8 Chemin des triggers de la base. Exemples :
[trigger]/table_1
[trigger]/table_2

Le paramètre marqueur vous permet de ne récupérer que les chemins des méthodes modifiées à compter d’un instant spécifique. Dans le cadre d’un système de contrôle de version, ce principe permet de mettre à jour uniquement les méthodes modifiées depuis la dernière sauvegarde.
Le fonctionnement est le suivant : 4D maintient un compteur de modification des méthodes. A chaque fois qu’une méthode est créée ou réenregistrée, ce compteur est incrémenté et sa valeur courante est stockée dans le marqueur interne de la méthode. Si vous passez marqueur, la commande ne retourne que les méthodes dont le marqueur est supérieur ou égal à la valeur passée dans ce paramètre. De plus, la commande retourne dans marqueur la nouvelle valeur courante du compteur de modification, c’est-à-dire la valeur la plus élevée. Si vous stockez cette valeur, il vous suffira de la passer lors de l’appel suivant à la commande afin de ne récupérer que les méthodes nouvelles ou modifiées. 

Si la commande est exécutée depuis un composant, elle retourne par défaut les chemins des méthodes du composant. Si vous passez le paramètre *, le tableau contiendra les chemins des méthodes de la base hôte.

Si la commande détecte un nom de méthode dupliqué, l'erreur -9802 est générée ("Chemin d'objet non unique"). Il est recommandé dans ce cas d'utiliser le CSM afin de vérifier la structure de la base de données.

Récupération des méthodes projet placée dans un dossier "web" :

 METHOD GET PATHS("web";Path project method;tabChemins)

Récupération des méthodes base et des triggers :

 METHOD GET PATHS(Path trigger+Path database method;tabChemins)

Récupération des méthodes projet modifiées depuis le dernier backup :

  // On charge la dernière valeur stockée
 $stamp:=Max([Backups]cur_stamp)
 METHOD GET PATHS(Path project method;tabChemins;$stamp)
  // On stocke la nouvelle valeur
 CREATE RECORD([Backups])
 [Backups]cur_stamp:=$stamp
 SAVE RECORD([Backups])

Reportez-vous à l'exemple de la commande METHOD SET CODE.



Voir aussi  

Current method path
METHOD GET FOLDERS

 
PROPRIÉTÉS 

Produit : 4D
Thème : Accès objets développement
Numéro : 1163

 
HISTORIQUE 

Créé : 4D v13

 
UTILISATION DE L'ARTICLE

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