Paramètres d'Up ! 5GL

Il est possible de définir des normes pour l'écriture des programmes et des scripts en Up ! 5GL de façon à harmoniser le travail des différents collaborateurs au projet.

Cela s'effectue via un fichier de configuration qui est par défaut ${UPS_HOME}/ini/${UPS_LANGUAGE}/ups5gl.ini en mode mono-utilisateur ou ${UPS_HOME}/ini/${UPS_USER}/ups5gl.ini en mode multi-utilisateur.

Le fichier de normes se découpe en plusieurs parties :

Normes de programmation pour Up ! 5GL

Définitions globales

Global

Global contient l'étiquette identifiant une définition globale. La valeur par défaut est la chaîne vide ".

Global=Glo

Local

Local contient l'étiquette identifiant une définition locale. La valeur par défaut est la chaîne vide ".

Local=Loc

Module

Module permet de spécifier la liste de modules pour lesquels il ne faut pas vérifier les normes de programmation.

Etant donné que plusieurs modules distribués peuvent être pris en charge, le paramètre Module est suivi d'un index.

Module1=UpsKrn Module2=UpsOms

Parametre

Parametre contient l'étiquette identifiant un paramètre. La valeur par défaut est la chaîne vide ".

Parametre=Prm

Prive

Prive contient l'étiquette identifiant une définition déclarée avec l'instruction Prive. La valeur par défaut est la chaîne vide ".

Prive=Pri

Protege

Protege contient l'étiquette identifiant une définition déclarée avec l'instruction Protege. La valeur par défaut est la chaîne vide ".

Protege=Pro

Public

Public contient l'étiquette identifiant une définition déclarée avec l'instruction Public. La valeur par défaut est la chaîne vide ".

Public=Pub

Définitions spécifiques

CommentaireObligatoire

Si CommentaireObligatoire a pour valeur Vrai alors la définition doit comporter un commentaire. La valeur par défaut est Non.

CommentaireObligatoire=Oui

Modele

Modele contient le modèle du libellé de la définition conformément à la sémantique de l'instruction Comme. La valeur par défaut est la chaîne vide ".

Modele=Con${Portee}${Acces}${Appel}*

Le modèle peut faire appel a des pseudo-variables environnement dont la sémantique est la suivante

Pseudo-variable environnementSémantique
AccesAccès à la définition.
La valeur est le libellé donné par les paramètres Prive, Protege ou Public.
AnalyseurLexicalLibellé de l'analyseur lexical en cours de définition. La chaîne vide " par défaut.
AnalyseurSyntaxiqueLibellé de l'analyseur syntaxique en cours de définition. La chaîne vide " par défaut.
AnnuaireLibellé de l'annuaire en cours de définition. La chaîne vide " par défaut.
AnnuaireElectroniqueLibellé de l'annuaire électronique en cours de définition. La chaîne vide " par défaut.
AppelLibellé de l'appel en cours de définition. La chaîne vide " par défaut.
BlocSqlLibellé du bloc Sql en cours de définition. La chaîne vide " par défaut.
BrosseLibellé de la brosse en cours de définition. La chaîne vide " par défaut.
ConnexionSqlLibellé de la connexion Sql en cours de définition. La chaîne vide " par défaut.
ConstanteLibellé de la constante en cours de définition. La chaîne vide " par défaut.
CouleurLibellé de la couleur en cours de définition. La chaîne vide " par défaut.
EchangeLibellé de l'échange de données en cours de définition. La chaîne vide " par défaut.
EnumereLibellé de l'énuméré en cours de définition. La chaîne vide " par défaut.
ExceptionLibellé de l'exception en cours de définition. La chaîne vide " par défaut.
EntrepotLibellé de l'entrepôt en cours de définition. La chaîne vide " par défaut.
FeuilleDeStylesLibellé de la feuille de styles en cours de définition. La chaîne vide " par défaut.
FileDAttenteLibellé de la file d'attente en cours de définition. La chaîne vide " par défaut.
ImageLibellé de l'image en cours de définition. La chaîne vide " par défaut.
InterfaceLibellé de l'interface de données et de traitements en cours de définition. La chaîne vide " par défaut.
NonTerminalSyntaxiqueLibellé du non-terminal syntaxique en cours de définition. La chaîne vide " par défaut.
OrdreSqlLibellé de l'ordre Sql en cours de définition. La chaîne vide " par défaut.
PaletteLibellé de la palette de couleurs en cours de définition. La chaîne vide " par défaut.
PinceauLibellé du pinceau en cours de définition. La chaîne vide " par défaut.
PorteePortée de la définition.
La valeur est le libellé donné par les paramètres Global, Local ou Parametre.
MotifLibellé du motif en cours de définition. La chaîne vide " par défaut.
RegleSyntaxiqueLibellé de la règle syntaxique en cours de définition. La chaîne vide " par défaut.
RequeteSqlLibellé de la requête Sql en cours de définition. La chaîne vide " par défaut.
RoleLibellé du rôle en cours de définition. La chaîne vide " par défaut.
SecuriteLibellé du profil de sécurité en cours de définition. La chaîne vide " par défaut.
ServeurLibellé du serveur en cours de définition. La chaîne vide " par défaut.
SourceLibellé du fichier source en cours de définition. La chaîne vide " par défaut.
StyleCadreLibellé du style de cadre en cours de définition. La chaîne vide " par défaut.
StyleTexteLibellé du style de texte en cours de définition. La chaîne vide " par défaut.
TypeLibellé du type de données et de traitements en cours de définition. La chaîne vide " par défaut.
UtilisateurLibellé de l'utilisateur en cours de définition. La chaîne vide " par défaut.
ValeurEnumereeLibellé de la valeur de l'énumérée en cours de définition. La chaîne vide " par défaut.
VariableLibellé de la variable en cours de définition. La chaîne vide " par défaut.

A cette liste s'ajoute les pseudo-variables environnement usuelles d'Up ! System.

NombreMaximal

NombreMaximal contient le nombre maximal de définitions qu'il est possible de déclarer. La valeur par défaut est 0, ce qui correspond à pas de limite.

NombreMaximal=2

NombreMaximalDeLignes

NombreMaximalDeLignes contient le nombre maximal de lignes de programme que la définition peut contenir. La valeur par défaut est 0, ce qui correspond à pas de limite.

NombreMaximalDeLignes=2

TailleMinimale

TailleMinimale contient la taille minimale du libellé de la définition. La valeur par défaut est 0, ce qui correspond à pas de limite.

TailleMinimale=1

TailleMaximale

TailleMaximale contient la taille maximale du libellé de la définition. La valeur par défaut est 0, ce qui correspond à pas de limite.

TailleMinimale=25

Exemple de normes de programmation pour Up ! 5GL

; -------------------------------------------------------------------
; Fichier : ups5gl.ini
; Objet : Initialisation d'Up ! 5GL.
;
; Module : Up ! Application System.
; Auteur-Date : DUVAL Jean-Pierre - Novembre 2003.
; -------------------------------------------------------------------
; Observations
;
;
; -------------------------------------------------------------------

[Ups5GL]
Public=Pub
Protege=Pro
Prive=Pri
Global=Glo
Local=Loc
Parametre=Prm
Module1=UpsArc
Module2=UpsBiz
Module3=UpsCmp
Module4=UpsCns
Module5=UpsCom
Module6=UpsCrb
Module7=UpsCsv
Module8=UpsDb2
Module9=UpsDbg
Module10=UpsDgn
Module11=UpsEai
Module12=UpsEdf
Module13=UpsEdi
Module14=UpsFts
Module15=UpsGng
Module16=UpsGif
Module17=UpsJav
Module18=UpsJpg
Module19=UpsKrn
Module20=UpsMat
Module21=UpsMbp
Module22=UpsMdb
Module23=UpsMls
Module24=UpsMsn
Module25=UpsMss
Module26=UpsMxr
Module27=UpsMys
Module28=UpsNap
Module29=UpsNet
Module30=UpsNls
Module31=UpsOdb
Module32=UpsOms
Module33=UpsOra
Module34=UpsOrb
Module35=UpsPct
Module36=UpsPcx
Module37=UpsPgs
Module38=UpsPng
Module39=UpsPrf
Module40=UpsPrs
Module41=UpsPsq
Module42=UpsQry
Module43=UpsRcf
Module44=UpsRsp
Module45=UpsSec
Module46=UpsSid
Module47=UpsSoa
Module48=UpsSng
Module49=UpsSys
Module50=UpsTcp
Module51=UpsTga
Module52=UpsTff
Module53=UpsTrn
Module54=UpsWww

[AnalyseurLexical]
CommentaireObligatoire=Oui
Modele=AnaLex${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[AnalyseurSyntaxique]
CommentaireObligatoire=Oui
Modele=AnaSyn${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=1000
TailleMinimale=6
TailleMaximale=25

[Annuaire]
CommentaireObligatoire=Oui
Modele=Ann${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[AnnuaireElectronique]
CommentaireObligatoire=Oui
Modele=AEl${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[BlocSql]
CommentaireObligatoire=Oui
Modele=BloSql${Portee}${Acces}${ConnexionSql}*
NombreMaximal=2
NombreMaximalDeLignes=2
TailleMinimale=6
TailleMaximale=25

[Brosse]
CommentaireObligatoire=Oui
Modele=Bro${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Composant]
CommentaireObligatoire=Oui
Modele=*
NombreMaximal=2
NombreMaximalDeLignes=100
TailleMinimale=0
TailleMaximale=0

[ConnexionSql]
CommentaireObligatoire=Oui
Modele=ConSql${Portee}${Acces}${ConnexionSql}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Constante]
CommentaireObligatoire=Oui
Modele=Con${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Couleur]
CommentaireObligatoire=Oui
Modele=Cou${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Echange]
CommentaireObligatoire=Oui
Modele=Ech${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Entrepot]
CommentaireObligatoire=Oui
Modele=Ent${Portee}${Acces}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Enumere]
CommentaireObligatoire=Oui
Modele=Enu${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=50
TailleMinimale=6
TailleMaximale=25

[Exception]
CommentaireObligatoire=Oui
Modele=Exc${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[FeuilleDeStyles]
CommentaireObligatoire=Oui
Modele=FdS${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[FileDAttente]
CommentaireObligatoire=Oui
Modele=Fil${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Fonction]
CommentaireObligatoire=Oui
Modele=Fon${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=2
TailleMinimale=6
TailleMaximale=25

[Interface]
CommentaireObligatoire=Oui
Modele=Int${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=1000
TailleMinimale=6
TailleMaximale=25

[MethodeFonction]
CommentaireObligatoire=Oui
Modele=MthFon${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=2
TailleMinimale=6
TailleMaximale=25

[MethodeProcedure]
CommentaireObligatoire=Oui
Modele=MthPro${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=2
TailleMinimale=6
TailleMaximale=25

[Module]
CommentaireObligatoire=Oui
Modele=${UPS_PROJECT}*
NombreMaximal=0
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25
[Motif]
CommentaireObligatoire=Oui
Modele=Mot${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[NonTerminalSyntaxique]
CommentaireObligatoire=Oui
Modele=Exc${Portee}${Acces}${AnalyseurSyntaxique}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[OrdreSql]
CommentaireObligatoire=Oui
Modele=OrdSql${Portee}${Acces}${ConnexionSql}*
NombreMaximal=2
NombreMaximalDeLignes=2
TailleMinimale=6
TailleMaximale=25

[Palette]
CommentaireObligatoire=Oui
Modele=Pal${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Pinceau]
CommentaireObligatoire=Oui
Modele=Pin${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Procedure]
CommentaireObligatoire=Oui
Modele=Pro${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=2
TailleMinimale=6
TailleMaximale=25

[RegleSyntaxique]
CommentaireObligatoire=Oui
Modele=Exc${Portee}${Acces}${AnalyseurSyntaxique}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[RequeteSql]
CommentaireObligatoire=Oui
Modele=ReqSql${Portee}${Acces}${ConnexionSql}*
NombreMaximal=2
NombreMaximalDeLignes=2
TailleMinimale=6
TailleMaximale=25

[Role]
CommentaireObligatoire=Oui
Modele=Rol${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Securite]
CommentaireObligatoire=Oui
Modele=Sec${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Serveur]
CommentaireObligatoire=Oui
Modele=Ser${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[StyleCadre]
CommentaireObligatoire=Oui
Modele=SCa${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[StyleTexte]
CommentaireObligatoire=Oui
Modele=STe${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Type]
CommentaireObligatoire=Oui
Modele=Typ${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=1000
TailleMinimale=6
TailleMaximale=25

[Utilisateur]
CommentaireObligatoire=Oui
Modele=Uti${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[ValeurEnumeree]
CommentaireObligatoire=Oui
Modele=ValEnu${Portee}${Acces}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25

[Variable]
CommentaireObligatoire=Oui
Modele=Var${Portee}${Appel}*
NombreMaximal=2
NombreMaximalDeLignes=0
TailleMinimale=6
TailleMaximale=25