Beispiel #1
0
        /// <summary>
        /// 函数追踪
        /// </summary>
        /// <param name="xml"></param>
        /// <returns></returns>
        public static IList <FuncTrackResult> GetFuncsTrack(string xml)
        {
            //生成本次报表运算的GUID
            IList <FuncInfo> funcs = XmlHelper.GetFuncs(xml);

            IList <FuncTrackResult> results = new List <FuncTrackResult>();

            funcs.ToList().ForEach(p => {
                var result = FuncFactory.GetFuncTrack(p);
                results.Add(result);
            });
            return(results);
        }
Beispiel #2
0
        /// <summary>
        /// 取多个函数的值
        /// </summary>
        /// <param name="xml"></param>
        /// <returns></returns>
        public static string GetFuncsValue(string xml)
        {
            //生成本次报表运算的GUID
            IList <FuncInfo> funcs = XmlHelper.GetFuncs(xml);

            IList <FuncCalcResult> results = new List <FuncCalcResult>();


            funcs.ToList().ForEach(p => {
                var result = FuncFactory.GetFuncValue(p);
                if (result.Status != EnumFuncActionStatus.Failure)
                {
                    //设置返回值的数据类型
                    result.ResultDataType = FuncCache.GetFuncInfoMetaData(p.Name).ResultType;
                }
                results.Add(result);
            });
            //返回结果集
            return(XmlHelper.GetFuncResult(results));
        }
Beispiel #3
0
 /// <summary>
 /// 单一函数获取结果集
 /// </summary>
 /// <param name="func"></param>
 /// <returns></returns>
 public static FuncCalcResult GetFuncValue(FuncInfo func)
 {
     return(FuncFactory.GetFuncValue(func));
 }