« ShareGroupMode (CM) » : différence entre les versions

De Wiki1000
Aucun résumé des modifications
Aucun résumé des modifications
 
(3 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
<source lang='delphi'>property ShareGroupMode:Boolean;</source>
<source lang='delphi'>property ShareGroupMode:Boolean;</source>


Propriété en '''lecture seule'''.
Propriété en '''lecture/écriture'''.
 
{{tip|Cette information est positionable sur une écran (AccessRoles:farAdminfolder) et [[Mode_de_partage_d%27importation_(import)|dans le contexte d'importation (ismAdminMode)]].}}


Retourne True si l'application est gérée en [[Mode de partage (partage)|mode de partage groupe]].
Retourne True si l'application est gérée en [[Mode de partage (partage)|mode de partage groupe]].


'''Exemple :'''
'''Exemple : Création de société par le code'''
 
<source lang='delphi'>
<source lang='delphi'>
//Procedure CreateSocieties(const iRoot:string; iCount:Integer);
var site:TSite; inst:TTiersSociete; idx,idp:Integer; pd:TdbfPerimetreDomaine; dm:TdbfDomaineMetier;
begin
begin
  ClassManager.PushShareContext;
  try
  ClassManager.ShareGroupMode := True;
  WithP Transaction do
  begin
    for idx:=1 to Count do
    begin
    site := TSite.Create;
    site.Code := iRoot+Format('%.4d',[idx]);
    site.Caption := site.Code;
    site.Adresse := TAdresse.Create;
    site.Adresse.Pays := TPays.Find('(CodeISO=%1)','',True,['FRA']);
    //
    inst := TTiersSociete.Create;
    inst.Code := Site.Code;
    inst.Caption := inst.Code;
    inst.raisonSociale := inst.Code;
    inst.sitesList.AddRef(site);
    inst.Devise := TdbfCurrency.Find('CodeISO=%1','',True,['EUR']);
    dm := TdbfDomaineMetier.Find('Code=%1','',True,['DomaineComptaGenerale']); 
    pd := TdbfPerimetreDomaine.Find('(oidPerimetrePartage=%1) and (oidDomaineMetier=%2)','',True,[inst.oidPerimetreSociete,dm.InstanceOID]); 
    pd.PerimetreAutorise := TdbfPerimetrePartage.Find('Caption=%1','',True,['plan gen']);
    dm := TdbfDomaineMetier.Find('Code=%1','',True,['DomaineTiers']); 
    pd := TdbfPerimetreDomaine.Find('(oidPerimetrePartage=%1) and (oidDomaineMetier=%2)','',True,[inst.oidPerimetreSociete,dm.InstanceOID]); 
    pd.PerimetreAutorise := inst.PerimetreSociete;
    dm := TdbfDomaineMetier.Find('Code=%1','',True,['DomaineProduitsTarifs']); 
    pd := TdbfPerimetreDomaine.Find('(oidPerimetrePartage=%1) and (oidDomaineMetier=%2)','',True,[inst.oidPerimetreSociete,dm.InstanceOID]); 
    pd.PerimetreAutorise := inst.PerimetreSociete;
    end;
  end;
  finally
  ClassManager.PopShareContext;
  end;
end;
end;
</source>
</source>

Dernière version du 18 octobre 2019 à 14:09

<source lang='delphi'>property ShareGroupMode:Boolean;</source>

Propriété en lecture/écriture.

Tip : Cette information est positionable sur une écran (AccessRoles:farAdminfolder) et dans le contexte d'importation (ismAdminMode).

Retourne True si l'application est gérée en mode de partage groupe.

Exemple : Création de société par le code

<source lang='delphi'> //Procedure CreateSocieties(const iRoot:string; iCount:Integer); var site:TSite; inst:TTiersSociete; idx,idp:Integer; pd:TdbfPerimetreDomaine; dm:TdbfDomaineMetier; begin

 ClassManager.PushShareContext;
 try 
 ClassManager.ShareGroupMode := True; 
 WithP Transaction do
  begin
    for idx:=1 to Count do
    begin 
    site := TSite.Create;
    site.Code := iRoot+Format('%.4d',[idx]);
    site.Caption := site.Code; 
    site.Adresse := TAdresse.Create;
    site.Adresse.Pays := TPays.Find('(CodeISO=%1)',,True,['FRA']); 
    // 
    inst := TTiersSociete.Create; 
    inst.Code := Site.Code; 
    inst.Caption := inst.Code; 
    inst.raisonSociale := inst.Code;
    inst.sitesList.AddRef(site); 
    inst.Devise := TdbfCurrency.Find('CodeISO=%1',,True,['EUR']); 
    dm := TdbfDomaineMetier.Find('Code=%1',,True,['DomaineComptaGenerale']);  
    pd := TdbfPerimetreDomaine.Find('(oidPerimetrePartage=%1) and (oidDomaineMetier=%2)',,True,[inst.oidPerimetreSociete,dm.InstanceOID]);  
    pd.PerimetreAutorise := TdbfPerimetrePartage.Find('Caption=%1',,True,['plan gen']); 
    dm := TdbfDomaineMetier.Find('Code=%1',,True,['DomaineTiers']);  
    pd := TdbfPerimetreDomaine.Find('(oidPerimetrePartage=%1) and (oidDomaineMetier=%2)',,True,[inst.oidPerimetreSociete,dm.InstanceOID]);  
    pd.PerimetreAutorise := inst.PerimetreSociete;
    dm := TdbfDomaineMetier.Find('Code=%1',,True,['DomaineProduitsTarifs']);  
    pd := TdbfPerimetreDomaine.Find('(oidPerimetrePartage=%1) and (oidDomaineMetier=%2)',,True,[inst.oidPerimetreSociete,dm.InstanceOID]);  
    pd.PerimetreAutorise := inst.PerimetreSociete;
    end; 
  end; 
 finally
 ClassManager.PopShareContext; 
 end; 

end; </source>

{{#if:Gestion du contexte de partage (CM)|

{{#if:Gestion du contexte de partage (CM)|— Gestion du contexte de partage (CM) |}} — Développement DSM

|

{{#if:|— [[{{{1}}}]] |}} — Développement DSM

}}