public Execute ( CommandExecutionContext context ) : void | ||
context | CommandExecutionContext | |
리턴 | void |
public void ReportToCsv(ReportSpec reportSpec, SrmDocument doc, string fileName, CultureInfo cultureInfo) { Report report = Report.Load(reportSpec); using (var saver = new FileSaver(fileName)) using (var writer = new StreamWriter(saver.SafeName)) using (var database = new Database(doc.Settings)) { database.AddSrmDocument(doc); var resultSet = report.Execute(database); char separator = TextUtil.GetCsvSeparator(cultureInfo); ResultSet.WriteReportHelper(resultSet, separator, writer, cultureInfo); writer.Flush(); writer.Close(); saver.Commit(); } }
public void ExecuteEventHandler(object sender, SimPe.Events.ResourceEventArgs e) { if (!ChangeEnabledStateEventHandler(null, e)) { return; } SimPe.FileTable.FileIndex.Load(); System.IO.StreamWriter sw = new System.IO.StreamWriter(new System.IO.MemoryStream()); try { List <uint> list = new List <uint>(); SimPe.Interfaces.Scenegraph.IScenegraphFileIndexItem[] items = SimPe.FileTable.FileIndex.FindFile(Data.MetaData.GLOB_FILE, true); sw.WriteLine("public static Alias[] SemiGlobals = {"); sw.WriteLine(""); sw.Write(" "); Wait.SubStart(items.Length); //int ct = 0; foreach (SimPe.Interfaces.Scenegraph.IScenegraphFileIndexItem item in items) { SimPe.Plugin.Glob glb = new Glob(); glb.ProcessData(item); if (list.Contains(glb.SemiGlobalGroup)) { continue; } list.Add(glb.SemiGlobalGroup); sw.WriteLine("new SemiGlobalAlias(true, 0x" + Helper.HexString(glb.SemiGlobalGroup) + ",\"" + glb.SemiGlobalName + "\"),"); } Wait.SubStop(); sw.WriteLine("};"); Report f = new Report(); f.Execute(sw); } finally { sw.Close(); } }
/// <summary> /// Returns a string representation of the report based on the document. /// </summary> private string ReportToCsvString(SrmDocument doc, char separator, IProgressMonitor progressMonitor) { IProgressStatus status = new ProgressStatus(string.Format(Resources.ReportSpec_ReportToCsvString_Exporting__0__report, Name)); progressMonitor.UpdateProgress(status); Report report = Report.Load(this); StringWriter writer = new StringWriter(); using (Database database = new Database(doc.Settings) { ProgressMonitor = progressMonitor, Status = status, PercentOfWait = 80 }) { database.AddSrmDocument(doc); status = database.Status; ResultSet resultSet; try { resultSet = report.Execute(database); } catch (Exception) { progressMonitor.UpdateProgress(status.Cancel()); throw; } progressMonitor.UpdateProgress(status = status.ChangePercentComplete(95)); ResultSet.WriteReportHelper(resultSet, separator, writer, LocalizationHelper.CurrentCulture); } writer.Flush(); string csv = writer.ToString(); writer.Close(); progressMonitor.UpdateProgress(status.Complete()); return(csv); }
public void TestLoadReportFile() { SrmDocument srmDocument = ResultsUtil.DeserializeDocument("silac_1_to_4.sky", GetType()); using (Database database = new Database()) using (var streamR = GetType().Assembly.GetManifestResourceStream(GetType().Namespace + ".Study9p_template_0721_2009_v3.skyr")) { Assert.IsNotNull(streamR); database.AddSrmDocument(srmDocument); ReportSpecList reportSpecList = new ReportSpecList(); var xmlSerializer = new XmlSerializer(reportSpecList.DeserialType); reportSpecList = (ReportSpecList)xmlSerializer.Deserialize(streamR); Report report = Report.Load(reportSpecList["Study 9p_0721_2009_v6"]); ResultSet resultSet = report.Execute(database); Assert.AreEqual(26, resultSet.ColumnInfos.Count); // The file contains one transition that does not map to the imported results Assert.AreEqual(srmDocument.PeptideTransitionCount / 2 - 1, resultSet.RowCount); } }
public void ExecuteEventHandler(object sender, SimPe.Events.ResourceEventArgs e) { if (!ChangeEnabledStateEventHandler(null, e)) { return; } SimPe.FileTable.FileIndex.Load(); System.IO.StreamWriter sw = new System.IO.StreamWriter(new System.IO.MemoryStream()); try { foreach (SimPe.Interfaces.Files.IPackedFileDescriptor pfd in e.LoadedPackage.Package.Index) { SimPe.Interfaces.Scenegraph.IScenegraphFileIndexItem[] fiis = FileTable.FileIndex.FindFile(pfd, e.LoadedPackage.Package); if (fiis.Length != 1) { sw.WriteLine(GetString(pfd) + " found " + fiis.Length.ToString() + " times."); foreach (SimPe.Interfaces.Scenegraph.IScenegraphFileIndexItem fii in fiis) { sw.WriteLine(" " + fii.Package.FileName + ": " + GetString(fii.FileDescriptor)); } } else if (fiis[0].FileDescriptor.Offset != pfd.Offset || fiis[0].FileDescriptor.Size != pfd.Size) { sw.WriteLine(GetString(pfd) + " " + " <> " + GetString(fiis[0].FileDescriptor)); } } Report f = new Report(); f.Execute(sw); } finally { sw.Close(); } }
private bool ExportReport(string fileName, char separator) { try { using (var saver = new FileSaver(fileName)) { if (!saver.CanSave(this)) { return(false); } using (var writer = new StreamWriter(saver.SafeName)) { Report report = GetReport(); bool success = false; using (var longWait = new LongWaitDlg { Text = Resources.ExportReportDlg_ExportReport_Generating_Report }) { longWait.PerformWork(this, 1500, broker => { var status = new ProgressStatus(Resources.ExportReportDlg_GetDatabase_Analyzing_document); broker.UpdateProgress(status); Database database = EnsureDatabase(broker, 80, ref status); if (broker.IsCanceled) { return; } broker.UpdateProgress(status = status.ChangeMessage(Resources.ExportReportDlg_ExportReport_Building_report)); ResultSet resultSet = report.Execute(database); if (broker.IsCanceled) { return; } broker.UpdateProgress(status = status.ChangePercentComplete(95) .ChangeMessage(Resources.ExportReportDlg_ExportReport_Writing_report)); ResultSet.WriteReportHelper(resultSet, separator, writer, CultureInfo); writer.Flush(); writer.Close(); if (broker.IsCanceled) { return; } broker.UpdateProgress(status.Complete()); saver.Commit(); success = true; }); } return(success); } } } catch (Exception x) { MessageDlg.ShowWithException(this, string.Format(Resources.ExportReportDlg_ExportReport_Failed_exporting_to, fileName, GetExceptionDisplayMessage(x)), x); return(false); } }
public void ExecuteEventHandler(object sender, SimPe.Events.ResourceEventArgs e) { if (!ChangeEnabledStateEventHandler(null, e)) { return; } SimPe.FileTable.FileIndex.Load(); System.IO.StreamWriter sw = new System.IO.StreamWriter(new System.IO.MemoryStream()); try { System.Collections.ArrayList guids = new System.Collections.ArrayList(); SimPe.Interfaces.Scenegraph.IScenegraphFileIndexItem[] items = SimPe.FileTable.FileIndex.FindFile(Data.MetaData.OBJD_FILE, true); sw.WriteLine("<?"); sw.WriteLine("$guids = array("); sw.Write(" "); Wait.SubStart(items.Length); int ct = 0; foreach (SimPe.Interfaces.Scenegraph.IScenegraphFileIndexItem item in items) { SimPe.PackedFiles.Wrapper.ExtObjd objd = new SimPe.PackedFiles.Wrapper.ExtObjd(); objd.ProcessData(item); if (guids.Contains(objd.Guid)) { continue; } if (objd.Type == SimPe.Data.ObjectTypes.Memory) { continue; } if (objd.Type == SimPe.Data.ObjectTypes.Person) { continue; } if (ct > 0) { sw.Write(","); } ct++; Wait.Progress = ct; sw.Write("array("); sw.Write("0x" + Helper.HexString(objd.Guid)); guids.Add(objd.Guid); sw.Write(", '"); sw.Write("Maxis: " + objd.FileName.Replace("'", "").Replace("\\", "").Replace("\"", "")); /*SimPe.Interfaces.Scenegraph.IScenegraphFileIndexItem[] list = SimPe.FileTable.FileIndex.FindFile(Data.MetaData.CTSS_FILE, objd.FileDescriptor.Group, objd.CTSSInstance, null); * if (list.Length==0) sw.Write(objd.FileName.Replace("'", "").Replace("\\", "").Replace("\"", "")); * else * { * SimPe.PackedFiles.Wrapper.Str str = new SimPe.PackedFiles.Wrapper.Str(1); * str.ProcessData(list[0]); * SimPe.PackedFiles.Wrapper.StrItemList strs = str.LanguageItems(SimPe.Data.MetaData.Languages.English); * if (strs.Count==0) sw.Write(objd.FileName.Replace("'", "").Replace("\\", "").Replace("\"", "")); * else sw.Write(strs[0].Title.Replace("'", "").Replace("\\", "").Replace("\"", "")); * }*/ sw.WriteLine("')"); } Wait.SubStop(); sw.WriteLine(");"); sw.WriteLine("?>"); Report f = new Report(); f.Execute(sw); } finally { sw.Close(); } }