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 :

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 : Up ! Script Engine peut être invoqué soit : 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