public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_calculQte = calcul as CDonneeBesoinQuantiteCU; if (m_calculQte != null) { Visible = true; m_txtQuantité.UnitValue = m_calculQte.Quantite; m_lblUniteCU.Text = ""; m_uniteCU = null; if (m_calculQte.CoutUnitaire != null) { m_txtCoutUnitaire.DoubleValue = m_calculQte.CoutUnitaire.Valeur; if (m_calculQte.Quantite != null && m_calculQte.Quantite.IUnite != null) { string strU = CUtilUnite.GetUniteInverse(m_calculQte.CoutUnitaire.Unite); IUnite u = CGestionnaireUnites.GetUnite(strU); if (u != null && u.Classe.GlobalId == m_calculQte.Quantite.IUnite.Classe.GlobalId) { m_uniteCU = u; m_lblUniteCU.Text = u.LibelleCourt; } } } else { m_txtCoutUnitaire.DoubleValue = null; } } m_bIsInitializing = false; }
//----------------------------------------------- public CResultAErreur MajChamps() { CResultAErreur result = CResultAErreur.True; if (m_calculQte != null) { m_calculQte.Quantite = m_txtQuantité.UnitValue; if (m_txtCoutUnitaire.DoubleValue != null) { if (m_uniteCU != null && m_calculQte.Quantite != null && (m_calculQte.Quantite.IUnite == null || m_calculQte.Quantite.IUnite.Classe == m_uniteCU.Classe)) { m_calculQte.CoutUnitaire = new CValeurUnite(m_txtCoutUnitaire.DoubleValue.Value, CUtilUnite.GetUniteInverse(m_uniteCU.GlobalId)); } else { m_calculQte.CoutUnitaire = new CValeurUnite(m_txtCoutUnitaire.DoubleValue.Value, ""); } } else { m_calculQte.CoutUnitaire = null; } } return(result); }
//------------------------------------------------------------ private void m_btnCoutVerrouillé_Click(object sender, EventArgs e) { if (m_donneeConsommable != null && !LockEdition && m_besoin != null) { m_donneeConsommable.IsCoutTarif = !m_donneeConsommable.IsCoutTarif; if (m_donneeConsommable.IsCoutTarif) { m_txtCoutUnitaire.LockEdition = true; m_donneeConsommable.SetTypeConsommable(m_donneeConsommable.GetTypeConsommable(m_besoin.ContexteDonnee)); if (m_donneeConsommable.CoutUnitaire != null) { m_txtCoutUnitaire.DoubleValue = m_donneeConsommable.CoutUnitaire.Valeur; m_uniteCU = CGestionnaireUnites.GetUnite(CUtilUnite.GetUniteInverse(m_donneeConsommable.CoutUnitaire.Unite)); } if (OnCoutChanged != null) { OnCoutChanged(this, null); } } else { m_txtCoutUnitaire.LockEdition = false; } UpdateImageVerrou(); } }
/// ///////////////////////////////////////////////// protected override List <COperateurAnalysable> GetOperateursDynamiqueNiveau(int nNiveau, string strMot) { List <COperateurAnalysable> lst = new List <COperateurAnalysable>(); if (nNiveau == 0 && strMot.StartsWith(":")) { string strTmp = strMot.Substring(1); if (CUtilUnite.GetIdClasseUnite(strTmp) != null) { COperateurAnalysable operateur = new COperateurAnalysable(0, ":" + strTmp, ":" + strTmp, false); lst.Add(operateur); } } return(lst); }
/// ////////////////////////////////////////////////////////////// public IExpression GetExpression(string strIdExpression) { Type tp = (Type)m_tableTypesExpression[strIdExpression]; if (tp == null) { if (strIdExpression.StartsWith(":"))//Une unité ? { if (CUtilUnite.GetIdClasseUnite(strIdExpression.Substring(1)) != null) { return(new C2iExpressionConvertUnit(strIdExpression.Substring(1))); } } return(null); } #if PDA return((IExpression)Activator.CreateInstance(tp)); #else return((IExpression)Activator.CreateInstance(tp, new object[0])); #endif }
//----------------------------------------------- private void FillFromDonnee() { if (m_donneeConsommable == null || m_besoin == null) { return; } CTypeConsommable typeConsommable = m_donneeConsommable.GetTypeConsommable(m_besoin.ContexteDonnee); if (typeConsommable != null) { IUnite unite = typeConsommable.Unite; if (unite != null) { m_txtQuantité.DefaultFormat = unite.LibelleCourt; } m_txtQuantité.UseValueFormat = true; } m_txtQuantité.UnitValue = m_donneeConsommable.Quantite; m_lblUniteCU.Text = ""; m_uniteCU = null; if (m_donneeConsommable.CoutUnitaire != null) { m_txtCoutUnitaire.DoubleValue = m_donneeConsommable.CoutUnitaire.Valeur; string strU = CUtilUnite.GetUniteInverse(m_donneeConsommable.CoutUnitaire.Unite); IUnite u = CGestionnaireUnites.GetUnite(strU); m_uniteCU = u; m_lblUniteCU.Text = u.LibelleCourt; } else { m_txtCoutUnitaire.DoubleValue = null; } m_txtCoutUnitaire.LockEdition = LockEdition || m_donneeConsommable.IsCoutTarif; m_lblUniteCU.Enabled = !LockEdition && !m_donneeConsommable.IsCoutTarif; }