Le fichier source est ${UPS_HOME}/upsvtm/demo/${UPS_LANGUAGE}/habilitation.upl.
upscmp Source=habilitation.upl
habilitation
upssng Source=habilitation.upl
Source Composant "Exemple d'emploi des habilitations" Version 4.0.0;
Public :
/*****/
Type T1 Defaut Habilitation
/*************************/
Public :
/******/
CA : Booleen;
CB : Entier;
CC : Reel;
CD : Caractere;
Public :
/******/
Constructeur();
Procedure Ecrire();
Fin Type
Type T2 Defaut
/************/
Public :
/******/
CA : Booleen Habilitation;
CB : Entier Habilitation;
CC : Reel Habilitation;
CD : Caractere Habilitation
Public :
/******/
Constructeur();
Procedure Habilitation Ecrire();
Fin Type
Variable
/******/
Public :
/******/
V1 : Nul Ou T1;
V2 : Nul Ou T2;
W1 : Nul Ou T1;
W2 : Nul Ou T2;
Procedure T1.Ecrire()
/********************/
Debut
Ecran.Ecrire("T1.Ecrire");
Fin Procedure
Procedure Habilitation T2.Ecrire()
/********************************/
Debut
Ecran.Ecrire("T2.Ecrire");
Fin Procedure
Procedure Habilitation P()
/************************/
Debut
Ecran.Ecrire("P();");
Fin Procedure
Procedure TesterHabilitations2(VV1 : Nul Ou T1, VV2 : Nul Ou
T2)
/**********************************************************/
Debut
AttraperException
VV1.CA=Vrai;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV2.CA=Vrai;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV1.CA);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV2.CA);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV1.CB=2;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV2.CB=2;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV1.CB);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV2.CB);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV1.CC=3.1;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV2.CC=3.1;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV1.CC);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV2.CC);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV1.CD="a";
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV2.CD="a";
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV1.CD);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
Ecran.Ecrire(VV2.CD);
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
VV1.Ecrire();
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException<
VV2.Ecrire();
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
Fin Procedure
Procedure TesterHabilitations()
/*****************************/
Debut
AttraperException
P();
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
V1=T1();
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
V2=T2();
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
TesterHabilitations2(V1, V2);
AttraperException
V1=Nul;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
AttraperException
V2=Nul;
TraiterException
Defaut
Ecran.Ecrire("Exception:"+Exception.MessageErreur);
Fin Defaut
Fin AttraperException
Fin Procedure
Principal
/*******/
Variable
/******/
U : Nul Ou Utilisateur;
R1 : Nul Ou Role;
R2 : Nul Ou Role;
Debut
TesterHabilitations();
Connecter("Administrateur", ");
UtilisateurAdministrateur.ModifierMotDePasse(", "Administrateur");
UtilisateurSpoule.ModifierMotDePasse(", "Spoule");
TesterHabilitations();
R1=Role("Nom du role 1", "Description du role 1");
R1.AjouterHabilitationAppel("habilitation", "P", Faux);
R1.AjouterHabilitationType("habilitation", "T1", Faux, Faux, Faux, Faux, Faux);
R1.AjouterHabilitationMethodeType("habilitation", "T1", "Ecrire", Faux);
R1.AjouterHabilitationProprieteType("habilitation", "T1", "CA", Faux, Faux, Faux, Faux);
R1.AjouterHabilitationProprieteType("habilitation", "T1", "CB", Faux, Faux, Faux, Faux);
R1.AjouterHabilitationProprieteType("habilitation", "T1", "CC", Faux, Faux, Faux, Faux);
R1.AjouterHabilitationProprieteType("habilitation", "T1", "CD", Faux, Faux, Faux, Faux);
R2=Role("Nom du role 2", "Description du role 2");
R2.AjouterHabilitationType("habilitation", "T2", Faux, Faux, Faux, Faux, Faux);
R2.AjouterHabilitationMethodeType("habilitation", "T2", "Ecrire", Faux);
R2.AjouterHabilitationProprieteType("habilitation", "T2", "CA", Faux, Faux, Faux, Faux);
R2.AjouterHabilitationProprieteType("habilitation", "T2", "CB", Faux, Faux, Faux, Faux);
R2.AjouterHabilitationProprieteType("habilitation", "T2", "CC", Faux, Faux, Faux, Faux);
R2.AjouterHabilitationProprieteType("habilitation", "T2", "CD", Faux, Faux, Faux, Faux);
R2.HeriterDuRole(R1);
U=Utilisateur("scott", "scott", "tiger");
R2.AjouterUtilisateur(U);
Connecter("scott", "tiger");
TesterHabilitations();
Connecter("Administrateur", "Administrateur");
R1.ModifierHabilitationAppel("habilitation", "P", Vrai);
R1.ModifierHabilitationType("habilitation", "T1", Vrai, Vrai, Vrai, Vrai, Vrai);
R1.ModifierHabilitationMethodeType("habilitation", "T1", "Ecrire", Vrai);
R1.ModifierHabilitationProprieteType("habilitation", "T1", "CA", Vrai, Vrai, Vrai, Vrai);
R1.ModifierHabilitationProprieteType("habilitation", "T1", "CB", Vrai, Vrai, Vrai, Vrai);
R1.ModifierHabilitationProprieteType("habilitation", "T1", "CC", Vrai, Vrai, Vrai, Vrai);
R1.ModifierHabilitationProprieteType("habilitation", "T1", "CD", Vrai, Vrai, Vrai, Vrai);
R2.ModifierHabilitationType("habilitation", "T2", Vrai, Vrai, Vrai, Vrai, Vrai);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CA", Vrai, Vrai, Vrai, Vrai);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CB", Vrai, Vrai, Vrai, Vrai);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CC", Vrai, Vrai, Vrai, Vrai);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CD", Vrai, Vrai, Vrai, Vrai);
W1=T1();
W2=T2();
R2.ModifierHabilitationType("habilitation", "T2", Faux, Faux, Faux, Faux, Faux);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CA", Faux, Faux, Faux, Faux);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CB", Faux, Faux, Faux, Faux);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CC", Faux, Faux, Faux, Faux);
R2.ModifierHabilitationProprieteType("habilitation", "T2", "CD" ,Faux,Faux,Faux,Faux);
R2.AjouterHabilitationObjet(W2, Vrai, Vrai, Vrai, Vrai, Vrai);
R2.AjouterHabilitationMethodeObjet(W2, "Ecrire", Vrai);
R2.AjouterHabilitationProprieteObjet(W2, "CA", Vrai, Vrai, Vrai, Vrai);
R2.AjouterHabilitationProprieteObjet(W2, "CB", Vrai, Vrai, Vrai, Vrai);
R2.AjouterHabilitationProprieteObjet(W2, "CC", Vrai, Vrai, Vrai, Vrai);
R2.AjouterHabilitationProprieteObjet(W2, "CD", Vrai, Vrai, Vrai, Vrai);
Connecter("scott", "tiger");
TesterHabilitations2(W1, W2);
Connecter("Administrateur", "Administrateur");
R1.Supprimer();
R2.Supprimer();
U.Supprimer();
Fin Principal