internal short OpenReport(ReportType reportTemplet) { if (reportTemplet == null) { return(SystemData.ReturnValue.PARAM_ERROR); } DesignEditForm designEditForm = this.GetDesignForm(reportTemplet); if (designEditForm != null) { designEditForm.Activate(); return(SystemData.ReturnValue.OK); } designEditForm = new DesignEditForm(this.MainForm); designEditForm.FlagCode = Guid.NewGuid().ToString(); this.MainForm.OpenDesignEditForm(designEditForm); string szReportTypeID = reportTemplet.ReportTypeID; string szHndfFile = string.Format("{0}\\Cache\\{1}.hrdt" , GlobalMethods.Misc.GetWorkingPath(), szReportTypeID); byte[] byteTempletData = null; short shRet = ReportTypeAccess.Instance.GetReportData(szReportTypeID, ref byteTempletData); if (shRet != SystemData.ReturnValue.OK) { return(shRet); } GlobalMethods.IO.WriteFileBytes(szHndfFile, byteTempletData); return(designEditForm.Open(reportTemplet, szHndfFile) ? SystemData.ReturnValue.OK : SystemData.ReturnValue.EXCEPTION); }
internal short CreateReport(List <ElementBase> elements) { DesignEditForm designEditForm = new DesignEditForm(this.MainForm); designEditForm.FlagCode = Guid.NewGuid().ToString(); this.MainForm.OpenDesignEditForm(designEditForm); bool success = designEditForm.Open(null, null); if (success) { success = designEditForm.SetElements(elements); } return(success ? SystemData.ReturnValue.OK : SystemData.ReturnValue.EXCEPTION); }
internal short OpenReport(string szFileName) { if (string.IsNullOrEmpty(szFileName)) { return(SystemData.ReturnValue.PARAM_ERROR); } DesignEditForm designEditForm = new DesignEditForm(this.MainForm); designEditForm.FlagCode = Guid.NewGuid().ToString(); this.MainForm.OpenDesignEditForm(designEditForm); return(designEditForm.Open(szFileName) ? SystemData.ReturnValue.OK : SystemData.ReturnValue.PARAM_ERROR); }
internal bool OpenDesignEditForm(ScriptEditForm scriptForm) { if (scriptForm == null || scriptForm.IsDisposed) { return(false); } DesignEditForm designEditForm = this.GetDesignForm(scriptForm); if (designEditForm != null) { designEditForm.DockHandler.Activate(); return(true); } designEditForm = new DesignEditForm(this.m_mainForm); designEditForm.FlagCode = scriptForm.FlagCode; this.MainForm.OpenDesignEditForm(designEditForm); return(designEditForm.Open(scriptForm.ReportTemplet, scriptForm.HndfFile)); }
internal bool OpenScriptEditForm(DesignEditForm designForm) { if (designForm == null || designForm.IsDisposed) { return(false); } ScriptEditForm scriptEditForm = this.GetScriptForm(designForm); if (scriptEditForm != null) { scriptEditForm.DockHandler.Activate(); return(true); } scriptEditForm = new ScriptEditForm(this.MainForm); scriptEditForm.FlagCode = designForm.FlagCode; this.MainForm.OpenScriptEditForm(scriptEditForm); return(scriptEditForm.Open(designForm.ReportTemplet, designForm.HndfFile)); }
internal DesignEditForm GetDesignForm(string szTempletID) { if (this.MainForm == null || string.IsNullOrEmpty(szTempletID)) { return(null); } foreach (IDockContent content in this.MainForm.Documents) { DesignEditForm designForm = content as DesignEditForm; if (designForm == null || designForm.ReportTemplet == null) { continue; } if (designForm.ReportTemplet.ReportTypeID == szTempletID) { return(designForm); } } return(null); }
internal short OpenReport() { OpenFileDialog openDialog = new OpenFileDialog(); openDialog.Filter = "护理病历模板(*.hrdt)|*.hrdt|所有文件(*.*)|*.*"; openDialog.FilterIndex = 1; if (openDialog.ShowDialog() != DialogResult.OK) { return(SystemData.ReturnValue.ACCESS_ERROR); } if (this.MainForm == null) { return(SystemData.ReturnValue.ACCESS_ERROR); } DesignEditForm designEditForm = new DesignEditForm(this.MainForm); designEditForm.FlagCode = Guid.NewGuid().ToString(); this.MainForm.OpenDesignEditForm(designEditForm); return(designEditForm.Open(openDialog.FileName) ? SystemData.ReturnValue.OK : SystemData.ReturnValue.PARAM_ERROR); }
internal DesignEditForm GetDesignForm(ScriptEditForm scriptForm) { if (this.MainForm == null || scriptForm == null) { return(null); } foreach (IDockContent content in this.MainForm.Documents) { DesignEditForm designForm = content as DesignEditForm; if (designForm == null) { continue; } if (designForm.FlagCode == scriptForm.FlagCode) { return(designForm); } if (designForm.HndfFile == scriptForm.HndfFile) { return(designForm); } } return(null); }
/// <summary> /// 保存当前正在编辑的模板文件 /// </summary> /// <returns>bool</returns> internal bool SaveReport() { DesignEditForm designForm = this.ActiveReport; ScriptEditForm scriptForm = this.ActiveScript; if (scriptForm == null && designForm == null) { return(false); } if (designForm != null) { scriptForm = this.GetScriptForm(designForm); } else if (scriptForm != null) { designForm = this.GetDesignForm(scriptForm); } ReportFileParser parser = new ReportFileParser(); string szScriptData = null; if (scriptForm != null) { szScriptData = scriptForm.Save(); } else { szScriptData = parser.GetScriptData(designForm.HndfFile); } string szDesignData = null; if (designForm != null) { designForm.Save(ref szDesignData); } else { szDesignData = parser.GetDesignData(scriptForm.HndfFile); } byte[] byteTempletData = null; parser.MakeReportData(szDesignData, szScriptData, out byteTempletData); DialogResult result = MessageBoxEx.ShowQuestion("是否提交到服务器?" + "\r\n提交到服务器,请点击“是”按钮!\r\n仅保存到本地,请点击“否”按钮!"); if (result == DialogResult.Cancel) { return(false); } bool success = true; if (result == DialogResult.No) { success = this.SaveReportToLocal(byteTempletData); } else { success = this.SaveReportToServer(byteTempletData); } if (success) { if (designForm != null) { designForm.IsModified = false; } if (scriptForm != null) { scriptForm.IsModified = false; } } return(success); }
internal void ShowScriptTestForm() { DesignEditForm designForm = this.ActiveReport; ScriptEditForm scriptForm = this.ActiveScript; if (scriptForm == null && designForm == null) { return; } if (designForm != null) { scriptForm = this.GetScriptForm(designForm); } else if (scriptForm != null) { designForm = this.GetDesignForm(scriptForm); } ReportFileParser parser = new ReportFileParser(); string szScriptData = null; if (scriptForm != null) { szScriptData = scriptForm.Save(); } else { szScriptData = parser.GetScriptData(designForm.HndfFile); } string szDesignData = null; if (designForm != null) { designForm.Save(ref szDesignData); } else { szDesignData = parser.GetDesignData(scriptForm.HndfFile); } //编译脚本 ScriptProperty scriptProperty = new ScriptProperty(); scriptProperty.ScriptText = szScriptData; CompileResults results = null; results = ScriptCompiler.Instance.CompileScript(scriptProperty); if (!results.HasErrors) { this.MainForm.ShowCompileErrorForm(null); } else { if (scriptForm == null) { this.OpenScriptEditForm(designForm); } this.MainForm.ShowCompileErrorForm(this.GetCompileErrors(results)); MessageBoxEx.Show("编译失败,无法启动测试程序!"); return; } ScriptTestForm scriptTestForm = new ScriptTestForm(); scriptTestForm.ScriptData = szScriptData; scriptTestForm.DesignData = szDesignData; scriptTestForm.ShowDialog(); }