public string[] GetRunAu_Code(int CG_Code, int UType, int AD_Code) { CT_Campaigns _c = GetCampaign(CG_Code); CT_Param_Value _p = new CT_Param_Value() { RP_Code = _c.CG_RP_Code, PV_Type = 1, PV_CG_Code = CG_Code, PV_UType = UType, PV_AD_OM_Code = AD_Code }; BL_Reports _bl_report = new BL_Reports(); CT_Reports _Report = _bl_report.GetReplaceReport(_p); List <CRMTreeDatabase.EX_Param> eps = new List <CRMTreeDatabase.EX_Param>(); CRMTreeDatabase.EX_Param ep = new CRMTreeDatabase.EX_Param(); ep.EX_Name = "PR"; ep.EX_Value = "0"; ep.EX_DataType = "int"; eps.Add(ep); _Report.RP_Query = BL_Reports.GetReportSql(_Report.RP_Code, eps).SQL; string[] _au_code = _bl_report.GetUserCode(_Report.RP_Query, "AU_Code").Distinct().ToArray(); return(_au_code); }
public static DataTable GetReportSqlWithTemplate(string sql, int PR = 0) { string[] sqls = sql.Split(new string[] { "|-|" }, StringSplitOptions.None); if (sqls.Length == 1) { sql = sqls[0]; } else if (sqls.Length == 2) { sql = sqls[1]; var db = CRMTreeDatabase.DBCRMTree.GetInstance(); var procSql = sqls[0]; var pr = new CRMTreeDatabase.EX_Param(); pr.EX_DataType = "int"; pr.EX_Name = "PR"; pr.EX_Value = PR.ToString(); List <CRMTreeDatabase.EX_Param> ps = new List <CRMTreeDatabase.EX_Param>(); ps.Add(pr); var pSql = SetReportSql(procSql, ps); var tags = db.Query <CRMTreeDatabase.EX_Tag>(pSql); foreach (var tag in tags) { sql = sql.Replace(tag.PL_Tag, tag.PV_Val); } } return(DL_Reports.QueryExecution(sql)); }
public int ReportRun(ReportRunParam rParam) { //-1 代表请求参数为空; if (rParam == null) { return(-1); } CT_Reports _r; if (rParam.pType == 1) { BL_Campaign c = new BL_Campaign(); CT_Campaigns _c = c.GetCampaign(rParam.CG_EV_Code); CT_Param_Value _p = new CT_Param_Value() { RP_Code = _c.CG_RP_Code, PV_Type = 1, PV_CG_Code = _c.CG_Code, PV_UType = rParam.UType, PV_AD_OM_Code = rParam.AU_AD_OM_Code }; _r = GetReplaceReport(_p); List <CRMTreeDatabase.EX_Param> eps = new List <CRMTreeDatabase.EX_Param>(); CRMTreeDatabase.EX_Param ep = new CRMTreeDatabase.EX_Param(); ep.EX_Name = "PR"; ep.EX_Value = "0"; ep.EX_DataType = "int"; eps.Add(ep); //var oeps = JsonConvert.SerializeObject(eps); _r.RP_Query = GetReportSql(_r.RP_Code, eps).SQL; return(_D_re.ReportRun <CT_Campaigns>(_r, _c, rParam.UType, rParam.AU_AD_OM_Code)); } else if (rParam.pType == 2) { DL_Event e = new DL_Event(); CT_Events _e = e.getEvents(rParam.CG_EV_Code); CT_Param_Value _p = new CT_Param_Value() { RP_Code = _e.EV_RP_Code, PV_Type = 2, PV_CG_Code = _e.EV_Code, PV_UType = rParam.UType, PV_AD_OM_Code = rParam.AU_AD_OM_Code }; _r = GetReplaceReport(_p); _r.RP_Query = GetReportSql(_r.RP_Code, null).SQL; return(_D_re.ReportRun <CT_Events>(_r, _e, rParam.UType, rParam.AU_AD_OM_Code)); } return(-1); }
/// <summary> /// 获取下载的数据 /// </summary> /// <param name="Pl_Code"></param> /// <param name="PR"></param> /// <returns></returns> private DataTable getEx_Data(int Pl_Code, int PR) { CT_Reports Report = RP.GetReprot_Chat(ChartType.List, Pl_Code); List <CRMTreeDatabase.EX_Param> eps = new List <CRMTreeDatabase.EX_Param>(); CRMTreeDatabase.EX_Param ep = new CRMTreeDatabase.EX_Param(); ep.EX_Name = "PR"; ep.EX_Value = PR.ToString(); ep.EX_DataType = "int"; eps.Add(ep); Report.RP_Query = BL_Reports.GetReportSql(Report.RP_Code, eps).SQL; DataTable dt = BL_Reports.GetReportSqlWithTemplate(Report.RP_Query); return(dt); }