//------------------------------------------------------------------- public CResultAErreur DoRemplacementPourDotation(DateTime dateRemplacement) { CResultAErreur result = CResultAErreur.True; CRemplacementEquipement remplacementEdite = this; remplacementEdite.BeginEdit(); try { #region annulation des mouvements generés précédements (annulation) result = AnnuleRemplacement(); if (!result) { return(result); } #endregion string strInfo = ""; if (remplacementEdite.EquipementDeRemplacement != null) { strInfo = I.T("Replacement by @1|235", remplacementEdite.EquipementDeRemplacement.Libelle); } else if (remplacementEdite.Operation != null) { strInfo = I.T("Equipment removed during the operation @1|236", remplacementEdite.Operation.TypeOperation.Libelle); } else { strInfo = I.T("Replaced|237"); } //Déplacement de l'équipement de remplacement if (remplacementEdite.EquipementDeRemplacement != null) { result = remplacementEdite.EquipementDeRemplacement.DeplaceEquipementOptionPassage( I.T("Replacement of @1 |271", remplacementEdite.EquipementDeRemplacement.Libelle), remplacementEdite.EmplacementDestination, null, null, null, null, dateRemplacement, "", false, true); if (!result) { result.EmpileErreur(I.T("Movement of equipment @1 impossible|270", remplacementEdite.EquipementDeRemplacement.Libelle)); return(result); } remplacementEdite.MouvementDuRemplacant = (CMouvementEquipement)result.Data; result = remplacementEdite.EquipementDeRemplacement.DeplaceEquipementOptionPassage( strInfo, remplacementEdite.MouvementDuRemplacant.EmplacementOrigine, remplacementEdite.MouvementDuRemplacant.EquipementOrigine, remplacementEdite.MouvementDuRemplacant.CoordonneeOrigine, remplacementEdite.MouvementDuRemplacant.OccupationOrigine, null, dateRemplacement, "", false, true); if (!result) { result.EmpileErreur(I.T("Movement of equipment @1 impossible|270", remplacementEdite.EquipementDeRemplacement.Libelle)); return(result); } remplacementEdite.MouvementDuRemplace = (CMouvementEquipement)result.Data; } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } finally { if (result) { result = remplacementEdite.CommitEdit(); } else { remplacementEdite.CancelEdit(); } } return(result); }
//------------------------------------------------------------------- public CResultAErreur AnnuleRemplacement() { CResultAErreur result = CResultAErreur.True; CRemplacementEquipement remplacementEdite = this; remplacementEdite.BeginEdit(); try { if (remplacementEdite.MouvementDuRemplace != null) { if (IsDotation) { CMouvementEquipement mvt = remplacementEdite.MouvementDuRemplace; remplacementEdite.MouvementDuRemplace = null; //Pour éviter la suppression en casade result = mvt.Delete(); } else { result = remplacementEdite.MouvementDuRemplace.AnnuleDeplacement(); } if (!result) { result.EmpileErreur(I.T("Impossible to cancel the replacement|267")); return(result); } else { remplacementEdite.MouvementDuRemplace = null; } } if (remplacementEdite.MouvementDuRemplacant != null) { if (IsDotation) { CMouvementEquipement mvt = remplacementEdite.MouvementDuRemplacant; remplacementEdite.MouvementDuRemplacant = null; //pour éviter la suppr en cascade result = mvt.Delete(); } else { result = remplacementEdite.MouvementDuRemplacant.AnnuleDeplacement(); } if (!result) { result.EmpileErreur(I.T("Impossible to cancel the replacement|267")); return(result); } else { remplacementEdite.MouvementDuRemplacant = null; if (IsDotation) { remplacementEdite.EquipementDeRemplacement.NumSerie = NumSerieAvantRemplacement; } } } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } finally { if (result) { result = remplacementEdite.CommitEdit(); } else { remplacementEdite.CancelEdit(); } } return(result); }