// vinay bhatt window id /// <summary> /// Excecute Process /// </summary> /// <param name="ctx"></param> /// <param name="AD_Process_ID"></param> /// <param name="Name"></param> /// <param name="AD_Table_ID"></param> /// <param name="Record_ID"></param> /// <param name="WindowNo"></param> /// <param name="fileType"></param> /// <param name="AD_Window_ID"></param> /// <returns></returns> internal static ProcessReportInfo Process(Ctx ctx, Dictionary <string, string> processInfo) { ProcessReportInfo ret = new ProcessReportInfo(); MPInstance instance = null; try { instance = new MPInstance(ctx, Util.GetValueOfInt(processInfo["Process_ID"]), Util.GetValueOfInt(processInfo["Record_ID"])); } catch (Exception e) { ret.IsError = true; ret.Message = e.Message; return(ret); } if (!instance.Save()) { ret.IsError = true; ret.Message = Msg.GetMsg(ctx, "ProcessNoInstance"); return(ret); } ret.AD_PInstance_ID = instance.GetAD_PInstance_ID(); // Get Parameters (Dialog) //Check If Contaon Parameter List <GridField> fields = ProcessParameter.GetParametersList(ctx, Util.GetValueOfInt(processInfo["Process_ID"]), Util.GetValueOfInt(processInfo["WindowNo"])); if (fields.Count < 1) //no Parameter { processInfo["AD_PInstance_ID"] = ret.AD_PInstance_ID.ToString(); ret = ExecuteProcessCommon(ctx, processInfo, null); } else { ret.ShowParameter = true; ret.ProcessFields = fields; } return(ret); }
internal static ProcessReportInfo Process(Ctx ctx, int AD_Process_ID, string Name, int AD_Table_ID, int Record_ID, int WindowNo, bool csv, bool pdf) { ProcessReportInfo ret = new ProcessReportInfo(); MPInstance instance = null; try { instance = new MPInstance(ctx, AD_Process_ID, Record_ID); } catch (Exception e) { ret.IsError = true; ret.Message = e.Message; return(ret); } if (!instance.Save()) { ret.IsError = true; ret.Message = Msg.GetMsg(ctx, "ProcessNoInstance"); return(ret); } ret.AD_PInstance_ID = instance.GetAD_PInstance_ID(); // Get Parameters (Dialog) //Check If Contaon Parameter List <GridField> fields = ProcessParameter.GetParametersList(ctx, AD_Process_ID, WindowNo); if (fields.Count < 1) //no Parameter { ret = ExecuteProcess(ctx, AD_Process_ID, Name, ret.AD_PInstance_ID, AD_Table_ID, Record_ID, null, csv, pdf); } else { ret.ShowParameter = true; ret.ProcessFields = fields; } return(ret); }
public static ProcessReportInfo GeneratePrint(Ctx ctx, int AD_Process_ID, string Name, int AD_Table_ID, int Record_ID, int WindowNo, bool csv) { ProcessReportInfo ret = new ProcessReportInfo(); MPInstance instance = null; try { instance = new MPInstance(ctx, AD_Process_ID, Record_ID); } catch (Exception e) { ret.IsError = true; ret.Message = e.Message; return(ret); } if (!instance.Save()) { ret.IsError = true; ret.Message = Msg.GetMsg(ctx, "ProcessNoInstance"); return(ret); } ret.AD_PInstance_ID = instance.GetAD_PInstance_ID(); List <GridField> fields = ProcessParameter.GetParametersList(ctx, AD_Process_ID, WindowNo); if (fields.Count < 1) //no Parameter { //ReportEngine_N re = null; string lang = ctx.GetAD_Language().Replace("_", "-"); System.Globalization.CultureInfo original = System.Threading.Thread.CurrentThread.CurrentCulture; System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(lang); System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(lang); ////////log///// string clientName = ctx.GetAD_Org_Name() + "_" + ctx.GetAD_User_Name(); string storedPath = Path.Combine(HostingEnvironment.ApplicationPhysicalPath, ""); storedPath += clientName; VLogMgt.Initialize(true, storedPath); //////////////// byte[] report = null; string rptFilePath = null; // ProcessReportInfo rep = new ProcessReportInfo(); try { ProcessInfo pi = new ProcessInfo(Name, AD_Process_ID, AD_Table_ID, Record_ID); pi.SetAD_User_ID(ctx.GetAD_User_ID()); pi.SetAD_Client_ID(ctx.GetAD_Client_ID()); pi.SetAD_PInstance_ID(ret.AD_PInstance_ID); //report = null; ProcessCtl ctl = new ProcessCtl(); ctl.SetIsPrintFormat(true); ctl.IsArabicReportFromOutside = false; ctl.SetIsPrintCsv(csv); Dictionary <string, object> d = ctl.Process(pi, ctx, out report, out rptFilePath); //rep = new ProcessReportInfo(); ret.ReportProcessInfo = d; ret.Report = report; ret.ReportString = ctl.ReportString; ret.ReportFilePath = rptFilePath; ret.HTML = ctl.GetRptHtml(); ret.IsRCReport = ctl.IsRCReport(); ctl.ReportString = null; //Env.GetCtx().Clear(); } catch (Exception e) { ret.IsError = true; ret.Message = e.Message; } System.Threading.Thread.CurrentThread.CurrentCulture = original; System.Threading.Thread.CurrentThread.CurrentUICulture = original; //return ret; //ret = ExecuteProcess(ctx, AD_Process_ID, Name, ret.AD_PInstance_ID, AD_Table_ID, Record_ID, null,true); } else { ret.ShowParameter = true; ret.ProcessFields = fields; } return(ret); }