//------------------------------------------------------------------------------ public CResultAErreur Maj_Champs() { CResultAErreur result = CResultAErreur.True; CObjetDonnee objElementAOp = ElementAOperations as CObjetDonnee; if (ElementAOperations == null || (objElementAOp != null && !objElementAOp.IsValide())) { return(result); } ElementAOperations.DateDebut = m_dtDebut.Value; ElementAOperations.DateFin = m_dtFin.Value; if (!m_listeDerniersfractionInterventions.Contains(ElementAOperations.Id)) { m_listeDerniersfractionInterventions.Add(ElementAOperations.Id); } result = m_wndListeOperations.MajChamps(); CFractionIntervention fraction = ElementAOperations as CFractionIntervention; if (fraction != null) { fraction.DureeSaisie = m_wndDuree.ValeurHeure; } return(result); }
/// //////////////////////////////////////////////////// private void OnSelectionListeChange(object sender, EventArgs args) { if (DesignMode) { return; } if (m_bIsChangingSelection) { return; } m_bIsChangingSelection = true; if (m_objetEnCoursEdition != null && m_objetEnCoursEdition.ContexteDonnee.IsEnEdition && m_objetEnCoursEdition.IsValide() && MAJ_Champs != null) { CObjetDonneeResultEventArgs argsMAJ = new CObjetDonneeResultEventArgs(m_objetEnCoursEdition); MAJ_Champs(this, argsMAJ); if (!argsMAJ.Result) { Cursor.Current = Cursors.WaitCursor; CAppeleurFonctionAvecDelai.CallFonctionAvecDelai(this, "ShowErreurValidation", 1000, new Object[] { argsMAJ.Result }); return; } if (m_itemEnCours != null && m_itemEnCours.ListView != null /*supprimé*/) { m_wndListe.UpdateItemWithObject(m_itemEnCours, m_objetEnCoursEdition); } } m_bIsChangingSelection = false; m_objetEnCoursEdition = null; if (m_wndListe.SelectedItems.Count == 1) { m_nLastIndexDeListe = m_wndListe.SelectedItems[0].Index; m_objetEnCoursEdition = (CObjetDonnee)m_wndListe.SelectedItems[0].Tag; } if (InitChamp != null) { InitChamp(this, new CObjetDonneeResultEventArgs(m_objetEnCoursEdition)); } if (m_wndListe.SelectedItems.Count == 1) { m_itemEnCours = m_wndListe.SelectedItems[0]; } else { m_itemEnCours = null; } }
//------------------------------------------------------------------------------ public CResultAErreur Maj_Champs() { CResultAErreur result = CResultAErreur.True; CObjetDonnee objElementAOp = ElementAOperations as CObjetDonnee; if (ElementAOperations == null || (objElementAOp != null && !objElementAOp.IsValide())) { return(result); } ElementAOperations.DateDebut = m_dtDebut.Value; ElementAOperations.DateFin = m_dtFin.Value; //if (m_dtDebut.Value == null) //{ // result.EmpileErreur("Date de début d'intervention obligatoire"); // return result; //} if (!m_listeDerniersfractionInterventions.Contains(ElementAOperations.Id)) { m_listeDerniersfractionInterventions.Add(ElementAOperations.Id); } Hashtable tableNiveauToParent = new Hashtable(); foreach (CControleSaisieOperation control in m_listeControlsUtiles) { result = control.Maj_Champs(tableNiveauToParent); if (!result) { return(result); } COperation donnee = control.Operation; if (donnee != null) { tableNiveauToParent[donnee.Niveau] = donnee; } } CFractionIntervention fraction = ElementAOperations as CFractionIntervention; if (fraction != null) { fraction.DureeSaisie = m_wndDuree.ValeurHeure; } return(result); }
private void m_btnOk_Click(object sender, EventArgs e) { CResultAErreur result = CResultAErreur.True; CContexteDonnee ctx = null; int? nIDProj = null; CFiltreData filtreLiens = new CFiltreData(); CFiltreData filtreProjets = new CFiltreData(); CFiltreData filtreInters = new CFiltreData(); bool bFiltreLiens = false; bool bFiltreProjets = false; bool bFiltreInters = false; foreach (I2iObjetGraphique objGraph in m_objsGraphiques) { IElementDeProjet ele = CUtilProjet.GetIElementDeProjet(objGraph); if (!(ele is CObjetDonnee)) { return; } CObjetDonnee obj = (CObjetDonnee)ele; if (!obj.IsValide()) { return; } if (ctx == null) { ctx = obj.ContexteDonnee; } if (ele.Projet == null) { return; } if (!nIDProj.HasValue) { nIDProj = ele.Projet.Id; } CFiltreData filtreBase = filtreLiens; CFiltreData filtreTmp; if (m_rbtnDetacher.Checked) { bFiltreLiens = true; if (objGraph is IWndElementDeProjetPlanifiable) { ((IWndElementDeProjetPlanifiable)objGraph).Detacher = true; } string strRqt = ""; switch (ele.TypeElementDeProjet.Code) { case ETypeElementDeProjet.Projet: strRqt = CLienDeProjet.c_champPrjA + " = @1 OR " + CLienDeProjet.c_champPrjB + " = @1"; break; case ETypeElementDeProjet.Intervention: strRqt = CLienDeProjet.c_champInterA + " = @1 OR " + CLienDeProjet.c_champInterB + " = @1"; break; case ETypeElementDeProjet.Lien: strRqt = CLienDeProjet.c_champId + " =@1"; break; default: return; } ele.Projet = null; filtreTmp = new CFiltreData(strRqt, ele.Id); } else { switch (ele.TypeElementDeProjet.Code) { case ETypeElementDeProjet.Intervention: bFiltreInters = true; filtreBase = filtreInters; break; case ETypeElementDeProjet.Lien: bFiltreLiens = true; filtreBase = filtreLiens; break; case ETypeElementDeProjet.Projet: bFiltreProjets = true; filtreBase = filtreProjets; break; default: break; } filtreTmp = new CFiltreData(CUtilProjet.GetChampIDElement(objGraph) + " =@1", ele.Id); } if (filtreBase.Filtre != "") { filtreBase = CFiltreData.GetOrFiltre(filtreBase, filtreTmp); } else { filtreBase = filtreTmp; } if (m_rbtnDetacher.Checked) { filtreLiens = filtreBase; } else { switch (ele.TypeElementDeProjet.Code) { case ETypeElementDeProjet.Projet: filtreProjets = filtreTmp; break; case ETypeElementDeProjet.Intervention: filtreInters = filtreTmp; break; case ETypeElementDeProjet.Lien: filtreLiens = filtreTmp; break; default: break; } } } CFiltreData filtreSurProjet = new CFiltreData(CProjet.c_champId + " =@1", nIDProj.Value); if (bFiltreLiens) { filtreLiens = CFiltreData.GetAndFiltre(filtreLiens, filtreSurProjet); result = CObjetDonneeAIdNumerique.Delete(new CListeObjetsDonnees(ctx, typeof(CLienDeProjet), filtreLiens)); } if (result && bFiltreInters) { filtreInters = CFiltreData.GetAndFiltre(filtreInters, filtreSurProjet); result = CObjetDonneeAIdNumerique.Delete(new CListeObjetsDonnees(ctx, typeof(CIntervention), filtreInters)); } if (result && bFiltreProjets) { filtreSurProjet = new CFiltreData(CProjet.c_champIdParent + " =@1", nIDProj); filtreProjets = CFiltreData.GetAndFiltre(filtreProjets, filtreSurProjet); result = CObjetDonneeAIdNumerique.Delete(new CListeObjetsDonnees(ctx, typeof(CProjet), filtreProjets)); } if (!result) { CFormAlerte.Afficher(result.Erreur); return; } DialogResult = DialogResult.OK; }