//-------------------------------------------------------------------- private void m_lnkEditerModificationsPrevisionnelles_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if (m_gestionnaireModeEdition.ModeEdition) { Intervention.VersionDonneesAAppliquer = (CVersionDonnees)m_txtSelectVersionLiee.ElementSelectionne; } if (Intervention.VersionDonneesAAppliquer == null) { if (!m_gestionnaireModeEdition.ModeEdition) { CFormAlerte.Afficher(I.T("No planified modification for that intervention|1359"), EFormAlerteType.Erreur); return; } //Si nouvelle inter, il faut la valider if (CFormAlerte.Afficher(I.T("You have to save your intervention before associate it to planified modification. Would you like to save now ?|1356"), EFormAlerteType.Question) == DialogResult.No) { return; } if (SaveRequired != null) { CancelEventArgs args = new CancelEventArgs(); args.Cancel = false; SaveRequired(this, args); if (args.Cancel) { return; } } else { CFormAlerte.Afficher("Error", EFormAlerteType.Erreur); return; } CResultAErreur result = CResultAErreur.True; //Création de la version CVersionDonnees version = CFormCreateVersionPourIntervention.GetVersionForInter(Intervention); if (version != null) { if (version.IsNew()) { result = version.CommitEdit(); if (!result) { CFormAlerte.Afficher(I.T("Error while creating data version|1357"), EFormAlerteType.Erreur); return; } } //Affectation de la version à l'intervention CIntervention intervention = Intervention; bool bStartEdit = intervention.ContexteDonnee.IsEnEdition; if (!bStartEdit) { intervention.BeginEdit(); } intervention.VersionDonneesAAppliquer = version; if (!bStartEdit) { result = intervention.CommitEdit(); } if (!result) { intervention.CancelEdit(); CFormAlerte.Afficher(I.T("Error while affecting version do intervention|1358"), EFormAlerteType.Erreur); } InitChamps(intervention); } } //La version de données est maintenant normallement associée à l'intervention CSite site = Intervention.Site; if (site == null) { return; } if (Intervention.VersionDonneesAAppliquer == null) { return; } //Crée un contexte dans la version using (CContexteDonnee contexte = new CContexteDonnee(Intervention.ContexteDonnee.IdSession, true, false)) { CResultAErreur result = contexte.SetVersionDeTravail(Intervention.VersionDonneesAAppliquer.Id, true); if (!result) { CFormAfficheErreur.Show(result.Erreur); return; } site = (CSite)site.GetObjetInContexte(contexte); CFormNavigateurPopup.Show(new CFormEditionSite(site)); } }