Procedure Convertir(O : Nul Ou Objet);
Fonction Optimiser(Invariant) CreeParLeServeur() Retourner Entier;
Fonction Optimiser(Invariant) CreeParLeProcessus() Retourner Entier;
Fonction Optimiser(Invariant) CreeDansLEntrepot() Retourner Entrepot;
Fonction Cloner(EntrepotCible : Nul Ou Entrepot=Nul, Profondeur : ModeClonage = ClonageObjetSeul) Retourner Nul Ou Objet;
Fonction LirePropriete(NomPropriete : Caractere) Retourner Nul Ou Objet;
Procedure EcrirePropriete(NomPropriete : Caractere, Valeur : Nul Ou Objet);
Fonction IncrementerDecrementerPropriete(NomPropriete : Nul Ou Caractere, Incrementer : Booleen, Prefixe : Booleen) Retourner Nul Ou Objet;
Procedure SupprimerPropriete(NomPropriete : Caractere);
Fonction Optimiser(Invariant) EnumererProprietes(NumeroPropriete : Entier, TypePropriete : Nul Ou Type=? Sortie, PeutEtreNul : Booleen=? Sortie, Aide : Nul Ou Caractere=? Sortie, NomEnumere : Nul Ou Caractere=? Sortie) Retourner Nul Ou Caractere;
Fonction Optimiser(Invariant) Adresse() Retourner Nul Ou Caractere;
Fonction Importer(E : Nul Ou IEchangeElementaire, EntrepotCible : Nul Ou Entrepot=Nul, EstFiltre : Booleen=Faux, V : Entier=0, R : Entier=0, C : Entier=0) Retourner Nul Ou Objet;
Destructeur(MettreEnAnteMemoire : Booleen) Retourner Booleen;
VersionMetier : Caractere Lecture Public;
CreePar : Nul Ou IUtilisateur Lecture Public;
CreeLe : Date Lecture Public;
ModifiePar : Nul Ou IUtilisateur Lecture Public;
ModifieLe : Date Lecture Public;
Etat : EtatObjetMetier NonVirtuel Lecture Public;
Fonction ListerCategories(CritereFiltre : Nul Ou Caractere=Nul, CritereTri : Nul Ou Caractere=Nul) Retourner Nul Ou IResultatRequeteDe Nul Ou ICategorie;
Fonction ListerRelations(CritereFiltre : Nul Ou Caractere=Nul, CritereTri : Nul Ou Caractere=Nul) Retourner Nul Ou IResultatRequeteDe Nul Ou IRelation;
Procedure Inserer();
Procedure Modifier();
Procedure Verrouiller();
Fonction EstVerrouille() Retourner Booleen;
Procedure Deverrouiller();
Procedure Supprimer();
Description : Caractere;
Societe : Nul Ou ISociete;
Responsable : Nul Ou IPersonnel;
OrganisationMere : Nul Ou IOrganisation;
Fonction ListerPersonnel(CritereFiltre : Nul Ou Caractere=Nul, CritereTri : Nul Ou Caractere=Nul) Retourner Nul Ou IResultatRequeteDe IPersonnel;
Fonction ListerSousOrganisations(CritereFiltre : Nul Ou Caractere=Nul, CritereTri : Nul Ou Caractere=Nul) Retourner Nul Ou IResultatRequeteDe IOrganisation;
Constructeur();
/****************************************************************/
Interface IOrganisation HeriteDe IObjetMetier Metier Defaut
/* Objet : Definition d'un niveau de l'organisation. */
/****************************************************************/
/*--------------------------------------------------------------*/
/* Heritage de Objet. */
/*--------------------------------------------------------------*/
Prive :
EstInstanceDe : Type Lecture Public;
Public :
Fonction Optimiser(Invariant) Identique(O : Nul Ou Objet) Retourner Nul Ou Booleen;
Prive :
Fonction Exporter(E : Nul Ou IEchangeElementaire) Retourner Boolean;
/*--------------------------------------------------------------*/
/* Heritage de IObjetMetier. */
/*--------------------------------------------------------------*/
Prive :
URIObjet : Nul Ou Caractere Lecture Public;
Public :
Commentaire : Nul Ou Caractere;
/*--------------------------------------------------------------*/
/* Definitions propres. */
/*--------------------------------------------------------------*/
Public :
Nom : Caractere;
Fin Interface
=
pour l'affectation d'une organisation dans une autre organisation.
==
pour l'égalité entre deux organisations. Le résultat est un booléen.
!=
pour l'inégalité entre deux organisations. Le résultat est un booléen.
Variable
/******/
MonOrganisation : Nul Ou IOrganisation;
MaSociete : Nul Ou ISociete;
MonResponsable : Nul Ou IPersonnel;
MonProgiciel : Nul Ou Module;
Principal
/*******/
Variable
/******/
O1 : Nul Ou IOrganisation;
O2 : Nul Ou IOrganisation;
Debut
...
/* ------------------------------------------------ */
/* Creation d'une organisation. */
/* ------------------------------------------------ */
MonOrganisation=MonProgiciel.NouvelObjet(IOrganisation);
MonOrganisation.Libelle="DAF";
MonOrganisation.Commentaire="Direction Administrative et Financière";
MonOrganisation.EstRattacheA=MaSociete;
MonOrganisation.Responsable=MonResponsable;
MonOrganisation.Personnel=Nul;
MonOrganisation.SousOrganisations=Nul;
...
Si O1==O2 Alors
/* Egalité entre deux organisations. */
...
Fin Si
Si O1!=O2 Alors
/* Inégalité entre deux organisations. */
...
Fin Si
Fin Principal
- | - | - | - | - | - | - | - | - |