Exemple #1
0
        /// <summary>
        /// Prints the with CR layout.
        /// </summary>
        /// <param name="nomor">The nomor.</param>
        /// <param name="loket">The loket.</param>
        /// <param name="copies">The copies.</param>
        /// <param name="sender">The sender.</param>
        public static void PrintWithCRLayout(string nomor, string loket, int copies, IWin32Window sender)
        {
            using (var f = new QWaitingWidget("Sedang proses mencetak, tunggu sejenak"))
            {
                // show PROGRESS
                f.Show(sender);
                Application.DoEvents();

                // load REPORT FILES
                var crDocument = new ReportDocument();
                crDocument.Load(Application.StartupPath + "/Reports/PrintNomor.Rpt");
                crDocument.DataDefinition.FormulaFields["nomor"].Text =
                    (char)34 + nomor + (char)34;
                crDocument.DataDefinition.FormulaFields["loket"].Text =
                    (char)34 + loket + (char)34;

                // get company profile
                var db = new CompanyBase();
                List<Company> companies = db.GetAll();
                db.Dispose();

                if (companies != null)
                {
                    crDocument.DataDefinition.FormulaFields["companyname"].Text =
                        (char)34 + companies[0].CompanyName + (char)34;
                    crDocument.DataDefinition.FormulaFields["phone"].Text =
                        (char)34 + companies[0].Phone + (char)34;
                    crDocument.DataDefinition.FormulaFields["email"].Text =
                        (char)34 + companies[0].Email + (char)34;
                }

                try
                {
                    // Get Default Printer Name
                    var pname = new StringBuilder(255);
                    int length = 255;
                    Printer.GetDefaultPrinter(pname, ref length);

                    // start PRINTING
                    crDocument.PrintOptions.PrinterName = pname.ToString().Trim();
                    crDocument.PrintToPrinter(copies, false, 1, 1);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, @"Error !",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Exemple #2
0
        /// <summary>
        /// Initializes this instance.
        /// </summary>
        private void Initialize()
        {
            IDataAccess<Company> db = new CompanyBase();
            List<Company> companies = db.GetAll();

            if (companies.Count == 0) return;
            try
            {
                txtCompanyName.Text = companies[0].CompanyName;
                txtCompanyAddress.Text = companies[0].Address;
                txtCompanyCity.Text = companies[0].City;
                txtCompanyPhone.Text = companies[0].Phone;
                txtCompanyFax.Text = companies[0].Fax;
                txtCompanyEmail.Text = companies[0].Email;
                txtCompanyUrl.Text = companies[0].Url;
            }
            catch (NullReferenceException)
            {
            }
        }
Exemple #3
0
        /// <summary>
        /// Prints the with ESC.
        /// </summary>
        /// <param name="nomor">The nomor.</param>
        /// <param name="loket">The loket.</param>
        /// <param name="copies">The copies.</param>
        /// <param name="sender">The sender.</param>
        public static void PrintWithESC(string nomor, string loket, int copies, IWin32Window sender)
        {
            using (var f = new QWaitingWidget("Sedang proses mencetak, silahkan tunggu !"))
            {
                f.Show(sender);
                Application.DoEvents();

                // get company profile
                var db = new CompanyBase();
                List<Company> companies = db.GetAll();
                db.Dispose();

                var pr = new StringBuilder();

                pr.Append(DirectPrint.InitializePrinter());
                pr.Append(DirectPrint.PrintCenterText() + "SELAMAT DATANG");

                if (companies != null && companies.Count > 0)
                {
                    pr.Append(DirectPrint.FeedPaper(1) +
                              DirectPrint.PrintCenterText() + companies[0].CompanyName);
                }

                pr.Append(DirectPrint.FeedPaper(1));
                pr.Append(DirectPrint.Bold(true));
                pr.Append(DirectPrint.Strong(Settings.Default.StrongSize));
                pr.Append(DirectPrint.FeedPaper(1) + DirectPrint.PrintCenterText() + nomor);
                pr.Append(DirectPrint.Strong(0));
                pr.Append(DirectPrint.Bold(false));
                pr.Append(DirectPrint.FeedPaper(1) + DirectPrint.PrintCenterText() + loket);
                pr.Append(DirectPrint.FeedPaper(2) +
                          DirectPrint.PrintCenterText() + DateTime.Now.ToString("dddd, dd-MM-yyyy"));
                pr.Append("  -  " + DateTime.Now.ToString("HH:mm:ss"));
                pr.Append(DirectPrint.FeedPaper(1) +
                          DirectPrint.PrintCenterText() + "SILAHKAN TUNGGU, TERIMA KASIH");

                pr.Append(DirectPrint.FeedPaper(8));

                if (Settings.Default.AutoCutter)
                {
                    pr.Append(DirectPrint.CutPaper());
                }

                try
                {
                    var pname = new StringBuilder(255);
                    int length = 255;

                    // get default printer name
                    Printer.GetDefaultPrinter(pname, ref length);

                    // loop print by copies
                    for (int i = 1; i <= copies; i++)
                        RawPrinterHelper.SendStringToPrinter(pname.ToString().Trim(), pr.ToString().Trim());

                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, @"Error !",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }