public IRelationElementALien_Element GetNewRelation(IElementALien elementALien, CObjetDonneeAIdNumerique elementLie) { CRelationDossierSuivi_Element rel = new CRelationDossierSuivi_Element(elementALien.ContexteDonnee); rel.ElementLie = elementLie; rel.DossierSuivi = (CDossierSuivi)elementALien; rel.RelationParametre_TypeElement = this; return(rel); }
public bool AddElementLieSurType(CObjetDonneeAIdNumerique element, IRelationTypeElementALien_TypeElement relType) { if (element == null) { return(false); } Hashtable tableRelationsExistantes = new Hashtable(); CRelationDossierSuivi_Element laRelation = null; foreach (CRelationDossierSuivi_Element rel in RelationsElements) { if (rel.RelationParametre_TypeElement.Id == relType.Id) { laRelation = rel; tableRelationsExistantes[rel.ElementLie] = rel; } } bool bCreate = false; if (relType.Multiple && element != null) { if (tableRelationsExistantes[element] == null) { bCreate = true; } } else { if (tableRelationsExistantes.Count != 0) { laRelation.ElementLie = element; } else { bCreate = true; } } if (bCreate) { CRelationDossierSuivi_Element rel = new CRelationDossierSuivi_Element(ContexteDonnee); rel.CreateNewInCurrentContexte(); rel.DossierSuivi = this; rel.ElementLie = element; rel.RelationParametre_TypeElement = (CRelationTypeDossierSuivi_TypeElement)relType; } return(true); }