4D v14Attribut Exécuter sur serveur |
||
|
4D v14
Attribut Exécuter sur serveur
Attribut Exécuter sur serveur
L'attribut de méthode projet "Exécuter sur serveur" peut être défini dans la boîte de dialogue de modification globale des attributs ou dans la boîte de dialogue des propriétés de la méthode : Lorsque cette option est cochée, la méthode projet est toujours exécutée sur le serveur, quel que soit le mode d’appel de la méthode. Note : Cet attribut est pris en compte uniquement dans le cadre d’une application 4D exécutée en client/serveur. Lorsque cet attribut est coché, le contexte d’exécution de la méthode projet est comparable à celui des triggers (cf. section 4D Server et le langage 4D) : la méthode sur le serveur partage le même contexte de base de données que le contexte correspondant côté client pour le verrouillage d’enregistrements et les transactions, mais pas le même contexte de langage (variables process, ensembles, sélections courantes). Toutefois, à la différence d'un trigger, la méthode exécutée sur le serveur ne partage pas l'enregistrement courant avec le contexte du client. Tous les paramètres de la méthode ($1, $2, etc.) sont envoyés sur le serveur et la valeur du paramètre $0, s’il est utilisé, est retournée sur le client. A la différence de la commande Executer sur serveur, cette option ne provoque pas de création de process sur le serveur. 4D Server utilise le process "jumeau" du process client qui a demandé l’exécution. Les méthodes ayant l'attribut "Exécuter sur serveur" sont soumises aux mêmes règles que les procédures stockées en matière d'usage des commandes du langage 4D. L'exécution de certaines commandes est interdite sur le serveur, d'autres sont déconseillées. Pour plus d'informations, reportez-vous au paragraphe "Que ne peut pas faire une procédure stockée (exécutée sur le serveur) ?" dans la section Procédures stockées. Si vous passez un pointeur sur une variable (variable simple, tableau ou élément de tableau), la valeur pointée est également envoyée sur le serveur. Si la valeur pointée est modifiée sur le serveur par la méthode, la valeur modifiée est retournée sur le client pour mise à jour de la variable correspondante côté client. Note : L’option fonctionne de la même manière en mode interprété et en mode compilé. Voici le code la méthode projet Monappli ayant l’attribut "Exécuter sur serveur" : C_POINTEUR($1) `Pointeur sur table Côté client, l’appel de la méthode s’effectue ainsi : TABLEAU TEXTE(monTab;0) |
PROPRIÉTÉS
Produit : 4D UTILISATION DE L'ARTICLE
4D Server - Référence ( 4D v13) Parent de : Attribut Exécuter sur serveur ( 4D Server v11 SQL Release 6) |