//------------------------------------------------------------------- public override CResultAErreur VerifieDonnees(CObjetDonnee objet) { CResultAErreur result = CResultAErreur.True; try { CLivraisonLotValorisation rel = (CLivraisonLotValorisation)objet; if (rel.Livraison == null) { result.EmpileErreur(I.T("Link between delivery and valuation lot must be linked to a delivery|20173")); } if (rel.LotDeValorisation == null) { result.EmpileErreur(I.T("Link between delivery and valuation lot must be linked to a valuation lot|20174")); } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } return(result); }
//------------------------------------------------------------------- public override CResultAErreur TraitementAvantSauvegarde(CContexteDonnee contexte) { CResultAErreur result = base.TraitementAvantSauvegarde(contexte); if (!result) { return(result); } DataTable table = contexte.Tables[GetNomTable()]; ArrayList lst = new ArrayList(table.Rows); HashSet <CLivraisonEquipement> livraisonsPourValorisation = new HashSet <CLivraisonEquipement>(); foreach (DataRow row in lst) { if (row.RowState != DataRowState.Unchanged) { CLivraisonLotValorisation livLot = new CLivraisonLotValorisation(row); if (row.RowState == DataRowState.Deleted) { livLot.VersionToReturn = DataRowVersion.Original; } try { CLivraisonEquipement livraison = livLot.Livraison; if (livraison.IsValide()) { livraisonsPourValorisation.Add(livraison); } } catch { } } } foreach (CLivraisonEquipement liv in livraisonsPourValorisation) { liv.AppliqueValorisation(); } return(result); }