Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v20 R7
Commandes du thème Accès objets développement

Commandes du thème Accès objets développement  


 

 

4D vous permet d'accéder par programmation au contenu des méthodes de vos applications. Ce source toolkit facilite l’intégration de vos applications aux outils de contrôle du code, notamment les applications de gestion de versions (VCS). Il permet également de mettre en place des systèmes avancés de documentation du code, de construire un explorateur personnalisé ou encore d’organiser la sauvegarde régulière du code sous forme de fichiers sur disque.

Les principes suivants sont mis en oeuvre :

  • Chaque méthode et formulaire d’une application 4D dispose d’une adresse sous forme de chemin d’accès. Par exemple, la méthode trigger de la table 1 est accessible à l’adresse "[trigger]/table_1". Chaque chemin d’accès d’objet est unique dans une application.
    Note : Pour assurer l’unicité des chemins d’accès, 4D ne permet plus de créer des objets de même nom dans des pages formulaires différentes. Dans les bases de données converties depuis des versions antérieures à 4D v13, le CSM vous permet de détecter ces doublons.
  • La majorité des commandes de ce thème fonctionnent en mode interprété et en mode compilé. Les commandes modifiant les propriétés ou accédant au contenu exécutable des méthodes peuvent être utilisées en mode interprété uniquement (cf. tableau ci-dessous).
  • Toutes les commandes de ce thème sont utilisables avec 4D en mode local ou distant.
    En revanche, gardez à l’esprit que certaines commandes ne sont pas utilisables en mode compilé : la finalité du thème est la création d’outils personnalisés d’aide de développement. Les commandes ne doivent pas être utilisées pour modifier dynamiquement le fonctionnement d’une base en exécution. Par exemple, vous ne pouvez pas utiliser METHOD SET ATTRIBUTE pour modifier un attribut de méthode en fonction du statut de l’utilisateur courant.
  • Lorsqu’une commande de ce thème est appelée depuis un composant, elle accède par défaut aux objets du composant. Pour accéder aux objets de la base hôte dans ce cas, il suffit de passer un * en dernier paramètre. A noter que cette syntaxe est la seule possible dans ce contexte pour les commandes permettant de modifier les objets (telles que METHOD SET ATTRIBUTE), car les composants sont toujours exécutés en lecture seulement.

Here is the syntax of paths to different methods and forms in the 4D application:

 

 Path Description
 class Path of class definition. Example:
[class]/MyClass
 class function Path of class function. Example:
[class]/MyClass/myFunction
database method Path of database methods specified. List of these methods:
[databaseMethod]/onStartup
[databaseMethod]/onExit
[databaseMethod]/onDrop
[databaseMethod]/onBackupStartup
[databaseMethod]/onBackupShutdown
[databaseMethod]/onWebConnection
[databaseMethod]/onWebAuthentication
[databaseMethod]/onWebSessionSuspend
[databaseMethod]/onServerStartup
[databaseMethod]/onServerShutdown
[databaseMethod]/onServerOpenConnection
[databaseMethod]/onServerCloseConnection
[databaseMethod]/onSystemEvent
[databaseMethod]/onSqlAuthentication
[databaseMethod]/onHostDatabaseEvent
[databaseMethod]/onRESTAuthentication
[databaseMethod]/onMobileAppAuthentication
[databaseMethod]/onMobileAppAction
 project form Path of project form methods and all their object methods. Examples:
[projectForm]/myForm/{formMethod}
[projectForm]/myForm/button1
[projectForm]/myForm/my list
[projectForm]/myForm/button1
 project method Name of method. Example:
MyProjectMethod
 table form Path of table form methods and all their object methods. Examples:
[tableForm]/table_1/Form1/{formMethod}
[tableForm]/table_1/Form1/button1
[tableForm]/table_1/Form1/my list
[tableForm]/table_2/Form1/my list
 trigger Path of database triggers. Examples:
[trigger]/table_1
[trigger]/table_2

Par défaut, aucun fichier n’est créé sur disque par 4D. Cependant, les chemins d’accès générés pour les objets sont compatibles avec la gestion de fichiers du système d’exploitation, ils peuvent être utilisés directement pour générer des fichiers sur disque via vos propres méthodes d’import/export. 

En particulier, les caractères interdits tels que ":" sont encodés dans les noms des méthodes. Les fichiers générés pourront être automatiquement intégrés à une application de gestion de versions. Les caractères encodés sont les suivants :

CaractèreEncodage
"%22
*%2A
/%2F
:%3A
<%3C
>%3E
?%3F
|%7C
\%5C
%%25

Exemples :
Form?1 sera encodé Form%3F1
Button/1 sera encodé Button%2F1

Pour des raisons liées au principe même du processus de compilation, seules certaines commandes de ce thème sont utilisables en mode compilé. Le tableau suivant indique la disponibilité des commandes en mode compilé :

CommandeUtilisable en mode compilé
Current method pathOui
FORM EDITNon (*)
FORM GET NAMESOui
METHOD SET ATTRIBUTENon (*)
METHOD SET ATTRIBUTESNon (*)
METHOD SET CODENon (*)
METHOD SET COMMENTSNon (*)
METHOD SET ACCESS MODEOui
METHOD Get attributeOui
METHOD GET ATTRIBUTESOui
METHOD Get pathOui
METHOD GET PATHSOui
METHOD GET PATHS FORMOui
METHOD GET CODENon (*)
METHOD GET COMMENTSOui
METHOD GET MODIFICATION DATEOui
METHOD GET FOLDERSOui
METHOD GET NAMESOui
METHOD OPEN PATHNon (*)
METHOD RESOLVE PATHOui

(*) L'erreur -9762, "La commande ne peut pas être exécutée dans une base compilée." est générée lorsque la commande est exécutée en mode compilé.

 
PROPRIÉTÉS 

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

 
PAGE CONTENTS 
 
HISTORIQUE 

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v20 R7)