public void AddFormules(IEnumerable <CFormuleNommee> formules) { foreach (CFormuleNommee formule in formules) { CFormuleNommee existante = m_listeFormules.FirstOrDefault(e => e.Libelle == formule.Libelle); if (formule.Libelle.Trim() == "" || existante == null) { m_listeFormules.Add(formule); } else if (existante != null) { existante.Formule = formule.Formule; } } }
//--------------------------------------------------------------------- private void m_wndListeCalques_SelectedIndexChanged(object sender, EventArgs e) { if (m_calqueEdite != null) { MajCalqueEnCours(); } m_calqueEdite = null; m_panelOptionsCalque.Visible = false; if (m_wndListeCalques.SelectedItems.Count != 1) { return; } else { ListViewItem item = m_wndListeCalques.SelectedItems[0]; CConfigCalqueMap config = item.Tag as CConfigCalqueMap; if (config == null) { return; } m_panelOptionsCalque.Visible = true; List <CFormuleNommee> lstFormules = new List <CFormuleNommee>(); foreach (IVariableDynamique variable in config.generator.ListeVariables) { //Trouve la formule existante CFormuleNommee formule = null; foreach (CFormuleNommee f in config.ValeursVariablesFiltre) { if (f.Id == variable.IdVariable) { formule = f; break; } } if (formule == null) { formule = new CFormuleNommee(variable.Nom, null); formule.Id = variable.IdVariable; } lstFormules.Add(formule); } m_wndListeValeursVariables.Init( lstFormules.ToArray(), m_objetEdite, m_fournisseurProprietes); m_calqueEdite = config; } }
//---------------------------------------------------------------------------- private void m_lnkOptionsFiltre_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if (m_actionEditee != null) { CFiltreDynamiqueInDb filtre = new CFiltreDynamiqueInDb(CContexteDonneeSysteme.GetInstance()); if (filtre.ReadIfExists(m_actionEditee.IdFiltreDynamiqueAUtiliser)) { CFiltreDynamique filtreDyn = filtre.Filtre; if (filtreDyn != null) { List <CFormuleNommee> lst = new List <CFormuleNommee>(); foreach (IVariableDynamique variable in filtreDyn.ListeVariables) { CFormuleNommee formule = new CFormuleNommee(variable.Nom, null); formule.Id = variable.IdVariable; foreach (CFormuleNommee formuleEx in m_actionEditee.ValeursVariablesFiltre) { if (formuleEx.Id == variable.IdVariable) { formule.Formule = formuleEx.Formule; } } lst.Add(formule); } CFormuleNommee[] formules = lst.ToArray(); if (CFormEditeListeFormulesNommees.EditeFormules(ref formules, m_objetPourSousProprietes)) { lst = new List <CFormuleNommee>(); foreach (CFormuleNommee formule in formules) { if (formule.Formule != null) { lst.Add(formule); } } m_actionEditee.ValeursVariablesFiltre = lst.ToArray(); } } } } }
///////////////////////////////////////////////////////////////////////////////// private void InitListeFormulesParametres(CProcess process, CActionSur2iLinkExecuterProcess action) { if (process == null) { m_panelParametresAction.Visible = false; return; } m_panelParametresAction.Visible = true; Dictionary <string, CFormuleNommee> dicFormulesCreees = new Dictionary <string, CFormuleNommee>(); if (action != null) { foreach (CFormuleNommee formule in action.FormulesPourParametres) { dicFormulesCreees[formule.Libelle] = formule; } } List <CFormuleNommee> lst = new List <CFormuleNommee>(); if (process != null) { foreach (IVariableDynamique variable in process.ListeVariables) { if (variable.IsChoixUtilisateur()) { CFormuleNommee formuleAffectee = null; if (dicFormulesCreees.TryGetValue(variable.Nom, out formuleAffectee)) { lst.Add(formuleAffectee); } else { lst.Add(new CFormuleNommee(variable.Nom, null)); } } } } m_panelParametresAction.Init(lst.ToArray(), m_objetPourSousProprietes, new CFournisseurGeneriqueProprietesDynamiques()); }
//--------------------------------------------------- public void RemoveFormuleConditionFin(CFormuleNommee formule) { m_listeFormulesDeConditionDeFin.Remove(formule); }
//--------------------------------------------------- public void AddFormuleConditionFin(CFormuleNommee formule) { m_listeFormulesDeConditionDeFin.Add(formule); }