Commit for development environment setup
This commit is contained in:
156
PROMS/VEPROMS/xxxPrintMSWord/frmPrintMsWord.cs
Normal file
156
PROMS/VEPROMS/xxxPrintMSWord/frmPrintMsWord.cs
Normal file
@@ -0,0 +1,156 @@
|
||||
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 System.IO;
|
||||
using Volian.Svg.Library;
|
||||
using Volian.Print.Library;
|
||||
using Volian.Base.Library;
|
||||
|
||||
namespace PrintMSWord
|
||||
{
|
||||
public partial class frmPrintMSWord : Form
|
||||
{
|
||||
public frmPrintMSWord()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
public string MyStatus
|
||||
{
|
||||
get { return tsslStatus.Text; }
|
||||
set { tsslStatus.Text = value; Application.DoEvents(); }
|
||||
}
|
||||
private DateTime _TimerStart;
|
||||
public DateTime TimerStart
|
||||
{
|
||||
get { return _TimerStart; }
|
||||
set { _TimerStart = value; }
|
||||
}
|
||||
private string _ProcedureNumber;
|
||||
public string ProcedureNumber
|
||||
{
|
||||
get { return _ProcedureNumber; }
|
||||
set { _ProcedureNumber = value; }
|
||||
}
|
||||
public string MyTimerStatus
|
||||
{
|
||||
get { return tsslStatus.Text; }
|
||||
set {
|
||||
TimeSpan ts = DateTime.Now - _TimerStart;
|
||||
DateTime dt = new DateTime(ts.Ticks);
|
||||
tsslStatus.Text = string.Format("{0:HH:mm:ss.fff} {1} {2}",dt,ProcedureNumber,value);
|
||||
Application.DoEvents();
|
||||
}
|
||||
}
|
||||
private DocVersionInfo GetDocVersionWithContent()
|
||||
{
|
||||
DocVersionInfoList dvList = DocVersionInfoList.Get();
|
||||
foreach (DocVersionInfo docVersion in dvList)
|
||||
if (docVersion.Procedures != null)
|
||||
if (docVersion.Procedures[0].ItemID != 0)
|
||||
return docVersion;
|
||||
return null;
|
||||
}
|
||||
public ProcedureInfo MyProcedure
|
||||
{
|
||||
get { return lbProcs.SelectedValue as ProcedureInfo; }
|
||||
}
|
||||
private void lbProcs_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
CreatePDF();
|
||||
}
|
||||
private void CreatePDF()
|
||||
{
|
||||
TimerStart = DateTime.Now;
|
||||
ProcedureInfo myProcedure = MyProcedure;
|
||||
Volian.Print.Library.Rtf2Pdf.PdfDebug = true;
|
||||
tbTimings.Text = "";
|
||||
Cursor saveCursor = this.Cursor;
|
||||
this.Cursor = Cursors.WaitCursor;
|
||||
//ProcedureConfig.PrintWatermark pw = MyProcedure.ProcedureConfig.Print_Watermark;
|
||||
CreatePDF(myProcedure,true);
|
||||
this.Cursor = saveCursor;
|
||||
}
|
||||
|
||||
private void CreatePDF(ProcedureInfo myProcedure, bool openPdf)
|
||||
{
|
||||
// set up for using format default change bars.
|
||||
ChangeBarDefinition cbd = new ChangeBarDefinition();
|
||||
ChangeBarData changeBarData = MyProcedure.ActiveFormat.PlantFormat.FormatData.ProcData.ChangeBarData;
|
||||
cbd.MyChangeBarType = PrintChangeBar.WithDefault;
|
||||
cbd.MyChangeBarText = changeBarData.ChangeBarMessage == "ChgID" ? PrintChangeBarText.ChgID :
|
||||
changeBarData.ChangeBarMessage == "DateAndChgID" ? PrintChangeBarText.DateChgID :
|
||||
changeBarData.ChangeBarMessage == "None" ? PrintChangeBarText.None :
|
||||
changeBarData.ChangeBarMessage == "RevNum" ? PrintChangeBarText.RevNum : PrintChangeBarText.UserDef;
|
||||
PromsPrinter pp = new PromsPrinter(myProcedure, tbRev.Text, cbWatermark.Text, cbDebugOutput.Checked, false, @"C:\TEMP\32Bit\Compare", openPdf, true, cbd,
|
||||
myProcedure.DisplayNumber.Replace('/','_').Replace('\\','_'),false);
|
||||
pp.StatusChanged += new PromsPrinterStatusEvent(pp_StatusChanged);
|
||||
_ElapsedTime = new Dictionary<PromsPrinterStatusType, TimeSpan>();
|
||||
DateTime tStart = DateTime.Now;
|
||||
string pdfFile = pp.Print(@"C:\TEMP\32Bit", false);
|
||||
DateTime tEnd = DateTime.Now;
|
||||
_ElapsedTime.Add(PromsPrinterStatusType.Total, DateTime.Now - tStart);
|
||||
MyTimerStatus = pdfFile + " created.";
|
||||
ShowElapsedTime();
|
||||
//MyStatus = string.Format("{0} created in {1:0.} milliseconds", pdfFile, (TimeSpan.FromTicks(tEnd.Ticks - tStart.Ticks).TotalMilliseconds));
|
||||
}
|
||||
private void ShowElapsedTime()
|
||||
{
|
||||
foreach (PromsPrinterStatusType type in _ElapsedTime.Keys)
|
||||
tbTimings.Text += "\r\n" + string.Format("'{0}',{1:0.}", type, _ElapsedTime[type].TotalMilliseconds);
|
||||
}
|
||||
private Dictionary<PromsPrinterStatusType, TimeSpan> _ElapsedTime;
|
||||
private DateTime _LastTime=DateTime.Now;
|
||||
private DateTime _StartTime = DateTime.Now;
|
||||
void pp_StatusChanged(object sender, PromsPrintStatusArgs args)
|
||||
{
|
||||
if (args.Type == PromsPrinterStatusType.Start) _LastTime = _StartTime = args.When;
|
||||
MyStatus = args.MyStatus;
|
||||
TimeSpan delta = TimeSpan.FromTicks(args.When.Ticks - _LastTime.Ticks);
|
||||
if (_ElapsedTime.ContainsKey(args.Type))
|
||||
_ElapsedTime[args.Type] += delta;
|
||||
else
|
||||
_ElapsedTime.Add(args.Type, delta);
|
||||
//if (tbTimings.Text != "") tbTimings.Text += "\r\n";
|
||||
//tbTimings.Text += string.Format("{0},{1},'{2}','{3}'", TimeSpan.FromTicks(args.When.Ticks -_StartTime.Ticks).TotalSeconds, delta.TotalMilliseconds, args.Type, args.MyStatus);
|
||||
_LastTime = args.When;
|
||||
}
|
||||
private void pDFToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
CreatePDF();
|
||||
}
|
||||
private void frmPrintMSWord_Load(object sender, EventArgs e)
|
||||
{
|
||||
DocVersionInfo dvi = GetDocVersionWithContent();
|
||||
lbProcs.DataSource = dvi.Procedures;
|
||||
}
|
||||
|
||||
private void pDFsToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
TimerStart = DateTime.Now;
|
||||
Volian.Print.Library.Rtf2Pdf.PdfDebug = true;
|
||||
tbTimings.Text = "";
|
||||
Cursor saveCursor = this.Cursor;
|
||||
this.Cursor = Cursors.WaitCursor;
|
||||
//ProcedureConfig.PrintWatermark pw = MyProcedure.ProcedureConfig.Print_Watermark;
|
||||
ItemInfoList myItems = lbProcs.DataSource as ItemInfoList;
|
||||
tspbStatus.Maximum = myItems.Count;
|
||||
tspbStatus.Value = 0;
|
||||
tspbStatus.Visible = true;
|
||||
foreach (ItemInfo myItem in myItems)
|
||||
{
|
||||
ProcedureNumber = myItem.DisplayNumber;
|
||||
if (tspbStatus != null) tspbStatus.Value++;
|
||||
CreatePDF(myItem.MyProcedure, false);
|
||||
}
|
||||
ProcedureNumber = "";
|
||||
MyTimerStatus = "Processing Complete";
|
||||
tspbStatus.Visible = false;
|
||||
this.Cursor = saveCursor;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user