//------------------------------------------------------- public void FillFromEquipement(CEquipement equipement, CReleveEquipement releveEqptParent) { if (Database is CReleveDb) { Equipement = equipement; ReleveEquipementParent = releveEqptParent; TypeEquipement = equipement.TypeEquipement; TypeEquipementConstructeur = equipement.TypeEquipementConstructeur; Coordonnee = equipement.Coordonnee; NumeroSerie = equipement.NumeroSerie; foreach (CRelationEquipementChampCustom rel in equipement.RelationsChampsCustom) { CChampCustom champ = rel.ChampCustom.GetChampInMemoryDb(Database); if (champ != null) { SetValeurChamp(champ.Id, rel.Valeur); } } foreach (CEquipement eqptFils in equipement.EquipementsContenus) { CReleveEquipement relFils = new CReleveEquipement(Database as CReleveDb); relFils.CreateNew(); relFils.ReleveSite = ReleveSite; relFils.FillFromEquipement(eqptFils, this); } } }
//------------------------------------------------------- public void InitEquipementsReleves( ) { //Prépare les équipements CListeEntitesDeMemoryDb <CEquipement> lstEqpts = Site.Equipements; lstEqpts.Filtre = new CFiltreMemoryDb(CEquipement.c_champIdEquipementContenant + " is null"); lstEqpts.Sort = CEquipement.c_champCoordonnee; foreach (CEquipement eqpt in lstEqpts) { CReleveEquipement relEqpt = new CReleveEquipement(Database as CReleveDb); relEqpt.CreateNew(); relEqpt.ReleveSite = this; relEqpt.FillFromEquipement(eqpt, null); } }
//------------------------------------------------------------- private static CResultAErreur IntegreReleveEquipement( TID.releve.CReleveEquipement releveEq, CReleveEquipement relEqParentTimos, CReleveSite releveTimos) { CResultAErreur result = CResultAErreur.True; CReleveEquipement relEqTimos = new CReleveEquipement(releveTimos.ContexteDonnee); relEqTimos.CreateNewInCurrentContexte(); relEqTimos.ReleveSite = releveTimos; //trouve l'équipement relEqTimos.Equipement = GetObjetTimos <CEquipement>(releveEq.Row[TID.CEquipement.c_champId], releveTimos.ContexteDonnee); relEqTimos.TypeEquipement = GetObjetTimos <CTypeEquipement>(releveEq.Row[TID.CTypeEquipement.c_champId], releveTimos.ContexteDonnee); relEqTimos.ReferenceConstructeur = GetObjetTimos <CRelationTypeEquipement_Constructeurs>(releveEq.Row[TID.CTypeEquipementConstructeur.c_champId], releveTimos.ContexteDonnee); relEqTimos.NumSerie = releveEq.NumeroSerie; relEqTimos.Coordonnee = releveEq.Coordonnee; relEqTimos.Presence = releveEq.IsPresent; relEqTimos.Commentaire = releveEq.Commentaire; relEqTimos.ReleveEquipementParent = relEqParentTimos; foreach (TID.releve.CRelationReleveEquipementChampCustom rel in releveEq.RelationsChampsCustom) { if (rel.ChampCustom != null && rel.ChampCustom.IdTimos != null) { relEqTimos.SetValeurChamp(rel.ChampCustom.IdTimos.Value, rel.Valeur); } } foreach (TID.releve.CReleveEquipement relContenu in releveEq.RelevesContenus) { result = IntegreReleveEquipement(relContenu, relEqTimos, releveTimos); if (!result) { return(result); } } return(result); }