public void PrintEJournalReport()
        {
            Data.TerminalReport clsTerminalReport = new Data.TerminalReport(mConnection, mTransaction);
            mConnection = clsTerminalReport.Connection; mTransaction = clsTerminalReport.Transaction;

            Data.SalesTransactionDetails[] salesDetails = clsTerminalReport.EJournalReport(Constants.TerminalBranchID, mCashierName, mclsTerminalDetails.TerminalNo);
            clsTerminalReport.CommitAndDispose();

            DialogResult result = DialogResult.OK;

            if (mclsTerminalDetails.PreviewTerminalReport)
            {
                EJournalReportWnd clsEJournalReportWnd = new EJournalReportWnd();
                clsEJournalReportWnd.TerminalDetails = mclsTerminalDetails;
                clsEJournalReportWnd.CashierName = mCashierName;
                clsEJournalReportWnd.SalesDetails = salesDetails;
                clsEJournalReportWnd.ShowDialog(this);
                result = clsEJournalReportWnd.Result;
                clsEJournalReportWnd.Close();
                clsEJournalReportWnd.Dispose();
            }

            if (result == DialogResult.OK)
            {
                Cursor.Current = Cursors.WaitCursor;
                //PrintEJournalReportDelegate ejournalreportDel = new PrintEJournalReportDelegate(PrintEJournalReport);
                PrintEJournalReport(salesDetails);
                Cursor.Current = Cursors.Default;
            }
        }