Procédure de synchronisation de paquet (MM)
De Wiki1000
(Différences entre les versions)
(Nouvelle page : Après synchronisation du modèle relationnel de l'application le framework exécute une procédure de synchronisation <source lang='delphi'>procedure TRegister<Nom_du_paquet>.Synch...) |
|||
Ligne 1 : | Ligne 1 : | ||
− | Après synchronisation du modèle relationnel de l'application le framework exécute une procédure de synchronisation | + | Après synchronisation du modèle relationnel de l'application, le framework exécute une procédure de synchronisation pour chaque paquet métier. |
+ | |||
+ | '''Si la base de données est en mode partage (multi sociétés)''' | ||
+ | |||
+ | La procédure de synchronisation execute les méthodes de synchronisation de chaque domaine métier : | ||
+ | |||
+ | <source lang='delphi'>procedure TRegister<Nom_du_paquet>.Code_du_domaine;</source> | ||
+ | |||
+ | '''Si la base de données n'est pas en mode partage''' | ||
+ | |||
+ | La procédure de synchronisation exécute la méthode : | ||
<source lang='delphi'>procedure TRegister<Nom_du_paquet>.Synchronize;</source> | <source lang='delphi'>procedure TRegister<Nom_du_paquet>.Synchronize;</source> | ||
− | |||
{{tip|Le code de ces procédures doit être exécutable plusieurs fois, si vous créez des objets assurez vous avant qu'ils n'existent pas déjà.}} | {{tip|Le code de ces procédures doit être exécutable plusieurs fois, si vous créez des objets assurez vous avant qu'ils n'existent pas déjà.}} | ||
Ligne 38 : | Ligne 47 : | ||
{{Footer|ModelManager_(code)}} | {{Footer|ModelManager_(code)}} | ||
[[category:ModelManager]] | [[category:ModelManager]] | ||
+ | [[category:Initialisation d'une base de données]] |
Version actuelle en date du 14 avril 2017 à 08:06
Après synchronisation du modèle relationnel de l'application, le framework exécute une procédure de synchronisation pour chaque paquet métier.
Si la base de données est en mode partage (multi sociétés)
La procédure de synchronisation execute les méthodes de synchronisation de chaque domaine métier :
procedure TRegister<Nom_du_paquet>.Code_du_domaine;
Si la base de données n'est pas en mode partage
La procédure de synchronisation exécute la méthode :
procedure TRegister<Nom_du_paquet>.Synchronize;
Tip : Le code de ces procédures doit être exécutable plusieurs fois, si vous créez des objets assurez vous avant qu'ils n'existent pas déjà. |
Exemple
procedure TRegisterMyPackage.Synchronize; begin var vContexte : TContextePoids; begin ClassManager.BeginTran; try vContexte := ClassManager.FindSingleton('TContextePoids'); if not Assigned(vContexte) then begin vContexte := ClassManager.CreateInstance('TContextePoids'); vContexte.Caption := 'ContextePoids'; end; .... ClassManager.Commit; except ClassManager.RollBack; end; end;
Voir aussi :