/// <summary>
 /// Обновляет статус принтера
 /// </summary>
 private void dispatcherTimerStatusPrinter(object sender, EventArgs e)
 {
     if (StatusApp.PrinterStatusBool())
     {
         lblStatus.Content  = "Online";
         EllipseStatus.Fill = Brushes.GreenYellow;
     }
     else
     {
         lblStatus.Content  = "Offline";
         EllipseStatus.Fill = Brushes.OrangeRed;
     }
 }
Beispiel #2
0
 protected override void OnStartup(StartupEventArgs e)
 {
     // проверяем статус принтера
     if (!StatusApp.PrinterStatusBool())
     {
         ConfigTxt config = new ConfigTxt();
         Log.Write("Status printer " + config.PrintName + " : Offline\n");
         MessageBox.Show("Нет подключения к принтеру " + config.PrintName + " или нет драйвера .Установите в Меню/Настройки программы принтер !!!", "", MessageBoxButton.OK, MessageBoxImage.Error);
     }
     // проверяем наличие файла шрифта штрихкода
     StatusApp.FontBarcod();
     // проверяем подключения к бд
     if (!StatusApp.CheckConnection())
     {
         MessageBox.Show("Нет соединение с базой данных , проверьте сетевое подключение или обратитесь к системному администратору ", "", MessageBoxButton.OK, MessageBoxImage.Hand);
         ConnectionStringDataBase.ChangeConnect();
     }
 }
 /// <summary>
 /// Опрашивает бд и печатает  ценники и устанавливает flag 1
 /// </summary>
 private void PrintAllPriceList()
 {
     PriceListCash.Properties.Settings App1 = new PriceListCash.Properties.Settings();
     if (StatusApp.PrinterStatusBool()) //  если подключен принтер , то печатаем
     {
         DataTable dtQuery = CRUD.SelectToDateTable(" exec [cash_Ценники Вывод всех ценников]");
         if (dtQuery.Rows.Count > 0)
         {
             string defaultPrinterName = MyPrintersOptions.GetDefaultPrinterName();
             foreach (DataRow myDataRow in dtQuery.Rows)
             {
                 for (int i = 0; i < Convert.ToInt32(myDataRow["Количество"]); i++)
                 {
                     PriceList barcodeDetails = new PriceList();
                     DataTable dtPriceList    = barcodeDetails._PriceList;
                     DataRow   drow           = dtPriceList.NewRow();
                     drow["Name"]      = myDataRow["Наименование"].ToString();
                     drow["EI"]        = myDataRow["ЕИ"].ToString();
                     drow["Barcode"]   = myDataRow["BarCode"].ToString();
                     drow["Barcode_"]  = "*";
                     drow["Barcode_"] += myDataRow["КодРегистра"].ToString();
                     drow["Barcode_"] += "*";
                     var Price            = Convert.ToDouble(myDataRow["Цена"]);
                     var IntegerPartPrice = Convert.ToInt32(Math.Truncate(Price));             //  Целая часть цены
                     var FractionalPart   = Convert.ToInt32((Price - IntegerPartPrice) * 100); // Дробная часть
                     drow["IntegerPartPrice"]    = IntegerPartPrice.ToString();
                     drow["FractionalPartPrice"] = ((FractionalPart < 10) ? ("0" + FractionalPart.ToString()) : FractionalPart.ToString());
                     drow["Code"]      = myDataRow["КодРегистра"].ToString();
                     drow["TimeStamp"] = myDataRow["timestamp"].ToString();
                     drow["HostName"]  = myDataRow["HostName"].ToString();
                     dtPriceList.Rows.Add(drow);
                     if (Convert.ToInt32(App1.ВидЦенника) == 0)
                     {
                         using (CrystalReportMida Report = new CrystalReportMida())
                         {
                             Report.Database.Tables["PriceList"].SetDataSource((DataTable)dtPriceList);
                             MyPrintersOptions.SetDefaultPrinter(config.PrintName);
                             Report.PrintOptions.PrinterName = config.PrintName;
                             Report.PrintToPrinter(1, false, 0, 0);     // печать без предосмотра
                         }
                     }
                     else
                     {
                         using (CrystalReportGippo Report = new CrystalReportGippo())
                         {
                             Report.Database.Tables["PriceList"].SetDataSource((DataTable)dtPriceList);
                             MyPrintersOptions.SetDefaultPrinter(config.PrintName);
                             Report.PrintOptions.PrinterName = config.PrintName;
                             Report.PrintToPrinter(1, false, 0, 0);     // печать без предосмотра
                         }
                     }
                 }
                 CRUD.QuerySQL("UPDATE [cash_Ценники] SET [fPrint] = 1 WHERE  rowguid = '" + myDataRow["rowguid"].ToString() + "'");
             }
             MyPrintersOptions.SetDefaultPrinter(defaultPrinterName);
         }
     }
     else
     {
         Log.Write("Status printer " + config.PrintName + " : Offline\n");
         MessageBox.Show("Нет подключения к принтеру " + config.PrintName + " или нет драйвера . Установите по умолчанию принтер " + config.PrintName + " !!!", "", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }