Paramètres d'Up ! Script Engine
Up ! Script Engine est l'outil multi-plates-formes d'interprétation des scripts, de programmes ou de données écrits en Up ! 5GL. Up ! Compiler utilise Up ! Black Board.
Up ! Script Engine ne peut prendre en compte les technologies tierces - Com, Corba, Java que si elles ont été préalablement encapsuléees en des modules Up ! 5GL avec l'adaptateur client.
Up ! Script Engine gère automatiquement :
- L'adaptateur client ou serveur Up ! Network et l'adaptateur dictionnaire de chaque module interprété.
- La persistance de chaque module interprété.
Up ! Script Engine est un interpreteur s'appuyant sur les Application Program Interface (API) d'Up ! Virtual Technical Machine. Il adopte le même comportement :
- Quelle que soit la plate-forme d'exécution.
- Que le programme exécutable natif équivalent obtenu par compilation avec Up ! Compiler.
Up ! Script Engine peut être invoqué soit :
- En ligne de commande en mode batch.
En ce cas, pour les plates-formes graphiques, aucune fenêtre n'est ouverte.
- En ligne de commande en mode fenêtré.
En ce cas, pour les plates-formes graphiques, une fenêtre sommaire est ouverte contenant les messages d'interprétation.
- Encapsulé dans l'atelier de réalisation d'application Up ! Workbench.
Quel que soit son mode d'invocation, Up ! Script Engine possède les mêmes paramètres cités dans la section suivante. La commande est, selon les plates-formes, upssng, upssng.exe ou upssng.com.
Certaines paramètres font référence à des fichiers ou à des chemins d'accès. En ce cas, il est possible d'employer des variables environnement dans l'expression des chemins d'accès. Exemple :
Tmp=${UPS_HOME}/demo/tmp/${UPS_USER}
D'autre part, le séparateur de répertoire est le caractère division /
et les noms de fichiers ou de répertoires peuvent utiliser les partitions montées automatiquement par Up ! System.
Les paramètres sont lus successivement dans :
Les valeurs des paramètres comportant des caractères espace doivent être mises entre caractères guillemet " ou entre caractères apostrophe ' .
Pour connaître le source d'Up ! Script Engine, merci de se référer à la fiche Source d'Up ! Script Engine.
Paramètres d'interprétation
Up ! Script Engine étant un programme Up ! Application System particulier, les paramètres de lancement de Up ! Virtual Technical Machine et celles d'exécution de Up ! Kernel s'appliquent. La configuration de Up ! Object Management System est libre.
AutoriserMixage
AutoriserMixage permet d'autoriser le mixage des sources des composants et des ressources en Up ! 5GL au sein d'un même programme. En ce cas, l'assemblage est automatiquement réalisé par Up ! Mixer.
Par défaut, le mixage est autorisé.
AutoriserMixage=Non
CheminInterfaces
CheminInterfaces permet de spécifier le chemin de recherche des interfaces des modules. Il n'y a pas de valeur par défaut.
CheminInterfaces=${UPS_HOME}/upsvtm/interfaces;${UPS_HOME}/upsnet/interfaces;\
${UPS_HOME}/upsnls/interfaces;${UPS_HOME}/upssng/interfaces;${UPS_HOME}/upscom/interfaces;\
${UPS_HOME}/upscrb/interfaces;${UPS_HOME}/upsjav/interfaces;${UPS_HOME}/demo/interfaces
CheminRessources
CheminRessources permet de spécifier où sont rangées les ressources graphiques des composants et des modules. Par défaut, il s'agit du répertoire ${UPS_HOME}/demo/resources/${UPS_LANGUAGE};${UPS_HOME}/upsvtm/resources/${UPS_LANGUAGE}.
CheminRessources=${UPS_HOME}/demo/resources/${UPS_LANGUAGE};${UPS_HOME}/demo/upsvtm/${UPS_LANGUAGE}
CheminSources
CheminSources permet de spécifier où sont rangées les sources des composants et des modules. Par défaut, il s'agit du répertoire ${UPS_HOME}/demo/sources/${UPS_USER}.
CheminSources=${UPS_HOME}/demo/sources/${UPS_USER}
Contrainte
Contrainte permet d'ajouter au code généré du code vérifiant les contraintes d'intégrités définies par l'instruction Contrainte. Par défaut, les contraintes sont vérifiées.
Contrainte=Oui
Detail
Detail permet d'afficher le détail des opérations effectuées par Up ! Script Engine.
Detail=Oui
Entete
Entete permet d'afficher l'en-tête de interpretation précisant la date, le fichier source et les paramètres disponibles.
Entete=Oui
FactoriserChaine
FactoriserCchaine permet de demander d'optimiser les chaînes de caractères statiques en les factorisant dès lors qu'elles apparaissent deux fois dans une même procédure, fonction ou méthode. Le nombre d'objets alloués est plus faible et le code est plus efficace. Par défaut, les chaînes de caractères ne sont pas optimisées.
Seuls les procédures, les méthodes et les fonctions qui ne comportent pas explicitement de directives d'optimisation via FactoriserChaine ou NePasFactoriserChaine sont affectées par ce paramètre.
FactoriserChaine=Oui
FactoriserCode
optimisercode permet de demander d'optimiser le code généré en factorisant le code redondant suite au calcul des invariants. Le code est ainsi plus compact et plus efficace. Par défaut, le code n'est pas optimisé.
Seuls les procédures, les méthodes et les fonctions qui ne comportent pas explicitement de directives d'optimisation via FactoriserCode ou NePasFactoriserCode sont affectées par ce paramètre.
FactoriserCode=Oui
ModuleImplemente
ModuleImplemente permet de spécifier la liste de modules distribués qui sont implémentés par le programme à générer. Etant donné que plusieurs modules distribués peuvent être implémentés, le paramètre moduleimplemente est suivi d'un index.
ModuleImplemente1=Finances ModuleImplemente2=ResHum
Normes
Normes permet de spécifier le fichier des normes de programmation en Up ! 5GL à vérifier. Par défaut, le fichier est ${UPS_HOME}/ini/${UPS_LANGUAGE}/ups5gl.ini en mode mono-utilisateur et ${UPS_HOME}/ini/${UPS_USER}/ups5gl.ini en mode multi-utilisateur.
Normes=${UPS_HOME}/ini/${UPS_USER}/normes.ini
Persistant
Persistant permet de demander à ajouter les méthodes de persistance au module. De ce fait, les programmes l'employant pourront être persistants. Par défaut, le module est généré sans les méthodes de persistance.
Persistant=Oui
RepertoireInterfaces
RepertoireInterfaces permet de spécifier le répertoire des interfaces des modules générés. Par défaut, le répertoire est ${UPS_HOME}/demo/interfaces/${UPS_LANGUAGE}.
RepertoireInterfaces=${UPS_HOME}/demo/interfaces/${UPS_LANGUAGE}
RepertoireMessages
RepertoireMessages permet de spécifier où ranger les fichiers messages de génération. Par défaut, le répertoire est ${UPS_HOME}/demo/upsnls.
RepertoireMessages=${UPS_HOME}/demo/upsnls
Source
Source permet de spécifier le fichier source à interpréter contenant la fonction Principal. Cette option est obligatoire.
Source=caractere.upl
Tmp
Tmp permet de spécifier le répertoire où sont rangés les fichiers temporaires. Par défaut, le répertoire est ${UPS_HOME}/demo/tmp/${UPS_USER}.
Tmp=/tmp
Exemple de configuration d'Up ! Script Engine
; -------------------------------------------------------------------
; Fichier : upssng.ini
; Objet : Initialisation d'Up ! Script Engine.
;
; Module : Up ! Application System.
; Auteur-Date : DUVAL Jean-Pierre - Novembre 2003.
; -------------------------------------------------------------------
; Observations
;
;
; -------------------------------------------------------------------
[UpsSng]
AutoriserMixage=Non
CheminInterfaces=${UPS_HOME}/upsvtm/interfaces;${UPS_HOME}/upsnet/interfaces;${UPS_HOME}/upsnls/interfaces;${UPS_HOME}/upssng/interfaces;${UPS_HOME}/upscom/interfaces;${UPS_HOME}/upscrb/interfaces;${UPS_HOME}/upsjav/interfaces;${UPS_HOME}/demo/interfaces
CheminRessources=${UPS_HOME}/demo/resources/${UPS_LANGUAGE};${UPS_HOME}/demo/upsvtm/${UPS_LANGUAGE}
CheminSources=${UPS_HOME}/demo/sources/${UPS_USER}
Contrainte=Oui
Detail=Oui
Entete=Oui
FactoriserChaine=Oui
FactoriserCode=Oui
ModuleImplemente1=Finances
ModuleImplemente2=ResHum
Normes=${UPS_HOME}/ini/${UPS_USER}/normes.ini
Persistant=Oui
RepertoireInterfaces=${UPS_HOME}/demo/interfaces/${UPS_LANGUAGE}
RepertoireMessages=${UPS_HOME}/demo/upsnls
Source=caractere.upl
Tmp=/tmp