Conversion d'un raccourci

Les raccourcis sont déréférencés lors de la conversion : la portée de l'objet cible remplace la portée du raccourci.

Par exemple, le fichier généré suivant défini dans la métaclasse package fournit la liste des classes contenues dans le package. Si un raccourci vers une classe est trouvé, le code de son objet cible suivi de (Raccourci) est généré, suivi par l'ID de l'objet parent, puis par l'ID du raccourci, ce qui montre clairement que la portée du raccourci est remplacée par la portée de l'objet cible du raccourci :

.foreach_item(Classes)
   .if (%IsShortcut%)
%Code% (Shortcut)
oid = %ObjectID%
shortcut oid = %Shortcut.ObjectID%
   .else
%Code%
%Shortcut%
   .endif
.next(\n)

Ce comportement est l'inverse de celui du VB Script, dans lequel la conversion des raccourcis récupère le raccourci lui-même.

Si vous souhaitez générer le raccourci lui-même plutôt que l'objet auquel il fait référence, vous pouvez utiliser la variable %Shortcut%.

Raccourci externe

Si le modèle cible d'un raccourci externe n'est pas ouvert, une boîte de dialogue de confirmation apparaît pour vous permettre d'ouvrir le modèle cible. Vous pouvez utiliser la macro set_interactive_mode pour changer ce comportement. Cette macro permet de décider si l'exécution du GTL doit s'effectuer avec des interactions avec l'utilisateur ou non.

Pour plus d'informations sur la macro set_interactive_mode, reportez-vous à la section Macro .set_interactive_mode.


Created October 8, 2009. Send feedback on this help topic to Sybase Technical Publications: pubs@sybase.com