/// <summary> /// Retourne la valeur texte de la variable. /// </summary> /// <param name="strNomVariable"></param> /// <param name="objet"></param> /// <returns></returns> public static string GetValeurTexte(string strNomVariable, CObjetDonneeAIdNumerique objet) { CValeurVariableSurObjet valeur = GetValeurFor(strNomVariable, objet); if (valeur == null) { return(""); } return(valeur.ValeurTexte); }
public override object Invoke(object objetAppelle, params object[] parametres) { if (parametres.Length != 2 || parametres[0] == null || parametres[1] == null || !(objetAppelle is CObjetDonneeAIdNumerique)) { return(-1); } CValeurVariableSurObjet.SetValeur( parametres[0].ToString(), (CObjetDonneeAIdNumerique)objetAppelle, parametres[1].ToString()); return(0); }
public override object Invoke(object objetAppelle, params object[] parametres) { if (parametres.Length != 1 || parametres[0] == null || !(objetAppelle is CObjetDonneeAIdNumerique)) { return(null); } CValeurVariableSurObjet valeur = CValeurVariableSurObjet.GetValeurFor(parametres[0].ToString(), (CObjetDonneeAIdNumerique)objetAppelle); if (valeur == null) { return(new CCasteurValeurString(parametres[0].ToString(), "")); } else { return(new CCasteurValeurString(valeur.Nom, valeur.ValeurTexte)); } }
/// <summary> /// Définit une valeur de variable /// </summary> /// <param name="strNomVariable"></param> /// <param name="objet"></param> /// <param name="strValeur"></param> public static void SetValeur(string strNomVariable, CObjetDonneeAIdNumerique objet, string strValeur) { if (objet == null) { return; } CValeurVariableSurObjet valeur = GetValeurFor(strNomVariable, objet); if (valeur == null) { if (strValeur.Trim() == "") { return; } valeur = new CValeurVariableSurObjet(objet.ContexteDonnee); valeur.CreateNewInCurrentContexte(); valeur.Nom = strNomVariable; valeur.ElementLie = objet; } valeur.ValeurTexte = strValeur; }
/// <summary> /// REtourne le CValeurVariable s'il existe /// </summary> /// <param name="strNomVariable"></param> /// <param name="objet"></param> /// <returns></returns> public static CValeurVariableSurObjet GetValeurFor(string strNomVariable, CObjetDonneeAIdNumerique objet) { if (objet == null) { return(null); } CFiltreData filtre = new CFiltreData( c_champTypeElementLie + "=@1 and " + c_champIdElementLie + "=@2 and " + c_champNomVariable + "=@3", objet.GetType().ToString(), objet.Id.ToString(), strNomVariable); CValeurVariableSurObjet valeur = new CValeurVariableSurObjet(objet.ContexteDonnee); if (valeur.ReadIfExists(filtre)) { return(valeur); } return(null); }