137 lines
4.4 KiB
C#
137 lines
4.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using VEPROMS.CSLA.Library;
|
|
using Volian.Print.Library;
|
|
using Volian.Base.Library;
|
|
|
|
namespace VEPROMS
|
|
{
|
|
public partial class dlgTransitionReport : Form
|
|
{
|
|
private FolderInfo folderInfo = null;
|
|
private ProcedureInfo procedureInfo = null;
|
|
private PDFTransitionReport rpt;
|
|
private List<DocVersionInfo> lstDocVersions;
|
|
public dlgTransitionReport(FolderInfo fi)
|
|
{
|
|
InitializeComponent();
|
|
folderInfo = fi;
|
|
lstDocVersions = new List<DocVersionInfo>();
|
|
LoadDocVersionList(folderInfo);
|
|
if (lstDocVersions.Count == 1)
|
|
{
|
|
pnlVersions.Visible = false;
|
|
this.Height = this.Height - pnlVersions.Height;
|
|
}
|
|
}
|
|
public dlgTransitionReport(ProcedureInfo pi)
|
|
{
|
|
InitializeComponent();
|
|
procedureInfo = pi;
|
|
pnlVersions.Visible = pnlProcs.Visible = false;
|
|
this.Height = this.Height - pnlVersions.Height - pnlProcs.Height;
|
|
}
|
|
//private DocVersionInfo docVersionInfo;
|
|
private void dlgTransitionReport_Load(object sender, EventArgs e)
|
|
{
|
|
if (folderInfo != null)
|
|
{
|
|
rpt = new PDFTransitionReport(folderInfo, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\VEPROMS\TransitionReport.pdf");
|
|
rpt.MyDocVersionList = lstDocVersions;
|
|
if (lstDocVersions.Count == 1)
|
|
pbProcs.Maximum = lstDocVersions[0].Procedures.Count;
|
|
else
|
|
pbVersions.Maximum = lstDocVersions.Count;
|
|
tmrReportStart.Enabled = true;
|
|
}
|
|
else
|
|
{
|
|
if (VlnSettings.GetCommandFlag("PROFILE")) ProfileTimer.TurnOnTracking("Profile.txt");
|
|
VEPROMS.CSLA.Library.Database.TrackDBUsage = VlnSettings.GetCommandFlag("DBTrack");
|
|
ProfileTimer.Reset();
|
|
int profileDepth = ProfileTimer.Push(">>>> transitionreport");
|
|
rpt = new PDFTransitionReport(procedureInfo, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\VEPROMS\TransitionReport.pdf");
|
|
pbTrans.Maximum = rpt.TransitionInfoCount;
|
|
tmrReportStart.Enabled = true;
|
|
}
|
|
}
|
|
|
|
private void LoadDocVersionList(FolderInfo fi)
|
|
{
|
|
if(fi.FolderDocVersionCount == 1)
|
|
lstDocVersions.Add(fi.FolderDocVersions[0]);
|
|
else
|
|
foreach(FolderInfo fic in fi.ChildFolders)
|
|
LoadDocVersionList(fic);
|
|
}
|
|
|
|
void rpt_TransitionProcessed(object sender, EventArgs args)
|
|
{
|
|
pbTrans.PerformStep();
|
|
Application.DoEvents();
|
|
}
|
|
|
|
private void tmrReportStart_Tick(object sender, EventArgs e)
|
|
{
|
|
tmrReportStart.Enabled = false;
|
|
if (folderInfo != null)
|
|
{
|
|
if (lstDocVersions.Count == 1)
|
|
{
|
|
rpt.ProcedureProcessed += new TransitionReportEvent(rpt_ProcedureProcessed);
|
|
rpt.TransitionProcessed += new TransitionReportEvent(rpt_TransitionProcessed);
|
|
rpt.BuildTransitionReport();
|
|
rpt.ProcedureProcessed -= new TransitionReportEvent(rpt_ProcedureProcessed);
|
|
rpt.TransitionProcessed -= new TransitionReportEvent(rpt_TransitionProcessed);
|
|
tmrReportFinish.Enabled = true;
|
|
}
|
|
else
|
|
{
|
|
rpt.DocVersionProcessed += new TransitionReportEvent(rpt_DocVersionProcessed);
|
|
rpt.ProcedureProcessed += new TransitionReportEvent(rpt_ProcedureProcessed);
|
|
rpt.TransitionProcessed += new TransitionReportEvent(rpt_TransitionProcessed);
|
|
rpt.BuildTransitionReport();
|
|
rpt.ProcedureProcessed -= new TransitionReportEvent(rpt_ProcedureProcessed);
|
|
rpt.TransitionProcessed -= new TransitionReportEvent(rpt_TransitionProcessed);
|
|
rpt.DocVersionProcessed -= new TransitionReportEvent(rpt_DocVersionProcessed);
|
|
tmrReportFinish.Enabled = true;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
rpt.TransitionProcessed += new TransitionReportEvent(rpt_TransitionProcessed);
|
|
rpt.BuildTransitionReport();
|
|
pbTrans.Value = pbTrans.Maximum;
|
|
rpt.TransitionProcessed -= new TransitionReportEvent(rpt_TransitionProcessed);
|
|
tmrReportFinish.Enabled = true;
|
|
}
|
|
}
|
|
|
|
void rpt_DocVersionProcessed(object sender, EventArgs args)
|
|
{
|
|
pbProcs.Maximum = rpt.ProcedureCount;
|
|
pbVersions.PerformStep();
|
|
Application.DoEvents();
|
|
}
|
|
|
|
void rpt_ProcedureProcessed(object sender, EventArgs args)
|
|
{
|
|
pbTrans.Value = 0;
|
|
pbTrans.Maximum = rpt.TransitionInfoCount;
|
|
pbProcs.PerformStep();
|
|
Application.DoEvents();
|
|
}
|
|
|
|
private void tmrReportFinish_Tick(object sender, EventArgs e)
|
|
{
|
|
tmrReportFinish.Enabled = false;
|
|
System.Diagnostics.Process.Start(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\VEPROMS\TransitionReport.pdf");
|
|
this.Close();
|
|
}
|
|
}
|
|
} |