/// ////////////////////////////////////////// public override CResultAErreur MyEval(CContexteEvaluationExpression ctx, object[] valeursParametres) { CResultAErreur result = CResultAErreur.True; try { //TESTDBKEYOK CContexteDonnee contexte = (CContexteDonnee)ctx.GetObjetAttache(typeof(CContexteDonnee)); CDbKey key = null; if (contexte != null) { key = CSessionClient.GetSessionForIdSession(contexte.IdSession).GetInfoUtilisateur().KeyUtilisateur; } else { key = CSessionClient.GetSessionUnique().GetInfoUtilisateur().KeyUtilisateur; } result.Data = null; if (key != null) { CDonneesActeurUtilisateur user = new CDonneesActeurUtilisateur(CContexteDonneeSysteme.GetInstance()); if (user.ReadIfExists(key)) { result.Data = user.Id; } } } catch { result.Data = -1; } return(result); }
/// ////////////////////////////////////////// public override CResultAErreur MyEval(CContexteEvaluationExpression ctx, object[] listeParametres) { CResultAErreur result = CResultAErreur.True; string strVal = listeParametres[0].ToString(); Type tp = listeParametres[0] as Type; if (tp == null) { tp = CActivatorSurChaine.GetType(strVal, true); } if (tp == null) { tp = CActivatorSurChaine.GetType(strVal, false); } if (tp == null) { result.EmpileErreur(I.T("The @1 type does not exist|221", strVal)); return(result); } try { IAllocateurSupprimeurElements allocateur; object source = ctx.ObjetSource; allocateur = source as IAllocateurSupprimeurElements; if (allocateur == null) { allocateur = ctx.GetObjetAttache(typeof(IAllocateurSupprimeurElements)) as IAllocateurSupprimeurElements; } result.Data = null; if (allocateur != null) { result.Data = allocateur.AlloueElement(tp).Data; } if (result.Data == null) { try { result.Data = Activator.CreateInstance(tp, new object[0]); } catch { } } return(result); } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } return(result); }