Imports System.Windows.Forms.VisualStyles.VisualStyleElement Imports System.Security.Cryptography Imports Microsoft.Data.SqlClient Imports System.Data.DataTable Imports DocumentFormat.OpenXml.VariantTypes Imports System.Drawing.Printing Imports System.Reflection Imports DocumentFormat.OpenXml.Bibliography Public Class Form16 Dim DataString As String = My.Settings.subnet ' informatii cu privire la subnet Dim surce As String = My.Settings.serverName ' informatii preluate din system settings numele servarului Dim catalog As String = My.Settings.serverdatabase ' informatii din system setings cu privire la numele bazei de date Dim user As String = My.Settings.serverUser ' informatii din system setings cu privire la userul de introducere a datelor in baza de date Dim pass As String = My.Settings.serverUserpass ' informatii din system setings cu privire la parola userului Dim timeout As String = My.Settings.timeout ' informatii din system setings cu privire la server time out Dim encrypt As String = My.Settings.encrypt ' ' informatii din system setings cu privire la encriptie Dim trust As String = My.Settings.cert ' informatii din system setings cu privire la certificate Dim reason As String = My.Settings.reason Dim subnet As String = My.Settings.subnet Dim rowIdval As String ' gasirea randului din datagrid Dim comCli As String Dim comCli2 As String Dim plusCpSerie As String Dim cpserie As String Dim row As Integer = 0 'Dim dataStringforE As String Private Sub Form16_Load(sender As Object, e As EventArgs) Handles MyBase.Load ' Get available printers and add them to combo box For Each printer As String In PrinterSettings.InstalledPrinters ComboBox1.Items.Add(printer) Next End Sub Private Sub updateTable() ' updateul tabelului din datagrid care se face dupa fiecare conexiune la server Dim con As New SqlConnection("Data Source=" & surce & "; Initial Catalog=" & catalog & "; User ID=" & user & "; Password=" & pass & "; Connect Timeout=" & timeout & "; Encrypt=" & encrypt & "; TrustServerCertificate=" & trust & "; ApplicationIntent=" & reason & "; MultiSubnetFailover=" & subnet & "") con.Open() ' deschiderea conexiuni cu serverul Dim command As New SqlCommand("select * from Info_etichete where Comanda_Linia = '" & comCli & "' ", con) Dim sda As New SqlDataAdapter(command) ' adaptorul pentru data grig view Dim dt As New DataTable ' pregatirea datelor pentru data grid view sda.Fill(dt) ' actualizarea data grid view DataGridView1.DataSource = dt con.Close() ' inchiderea conexiuneii cu serverul End Sub Private Sub ScanCP_TextChangeed(sender As Object, e As EventArgs) Handles ScanCP.TextChanged ' validare text box 1 cu OQ ' acest text box are o lungime a stringului de 4 caractere If ScanCP.Text.Length < 10 Then ' caod de validare a criteriilor de Operator calitate OQ01 OQ02 OQ03 OQ04.... ElseIf ScanCP.Text.Length = 10 Then Dim val As String val = ScanCP.Text If InStr(1, val, "CP") > 0 Then Dim con As New SqlConnection("Data Source=" & surce & "; Initial Catalog=" & catalog & "; User ID=" & user & "; Password=" & pass & "; Connect Timeout=" & timeout & "; Encrypt=" & encrypt & "; TrustServerCertificate=" & trust & "; ApplicationIntent=" & reason & "; MultiSubnetFailover=" & subnet & "") Dim command As New SqlCommand("select Com_Achiz_Client from CP_Import_Wiz where Comanda_Productie = '" & val & "' ", con) Dim command2 As New SqlCommand("select Cantitate_Com_Prod from CP_Import_Wiz where Comanda_Productie = '" & val & "' ", con) con.Open() ' deschiderea conexiuni cu serverul comCli = CStr(command.ExecuteScalar()) comCli2 = CStr(command2.ExecuteScalar()) Label3.Text = comCli Label6.Text = comCli2 updateTable() Dim clientDataGrid As String clientDataGrid = DataGridView1.Rows(0).Cells(15).Value Label7.Text = clientDataGrid Else MsgBox("Scaneaza codul CP corect") ' cod de eroare in cazul introducerii codului gresit ScanCP.Focus() 'focus pe textbox 1 End If Else End If cpserie = ScanCP.Text & "-00" & Label6.Text End Sub Dim WithEvents PD As New PrintDocument Dim PPD As New PrintPreviewDialog Dim WithEvents PD1 As New PrintDocument Dim PPD1 As New PrintPreviewDialog Private Sub BTPRINT_Click(sender As Object, e As EventArgs) Handles BTPRINT.Click PPD.Document = PD PPD1.Document = PD1 If comCli2 < 5 Then Dim serieCant As Integer serieCant = comCli2 For i As Integer = 1 To serieCant Dim number As String = i.ToString().PadLeft(3, "0"c) plusCpSerie = number.ToString() Dim rowCount As Integer = DataGridView1.RowCount If rowCount = serieCant Then row = serieCant - 1 Else row = 0 End If PD.Print() 'Direct Print PD.Print() ' PPD.ShowDialog() Next Else Dim serieCant As Integer serieCant = comCli2 For i As Integer = 1 To serieCant Dim number As String = i.ToString().PadLeft(3, "0"c) plusCpSerie = number.ToString() Dim rowCount As Integer = DataGridView1.RowCount If rowCount = serieCant Then row = serieCant - 1 Else row = 0 End If PD.Print() 'Direct Print PD1.Print() Next End If DataGridView1.DataSource = Nothing ScanCP.Clear() ScanCP.Focus() End Sub Private Sub PD_BeginPrint(sender As Object, e As PrintEventArgs) Handles PD.BeginPrint Dim pagesetup As New PageSettings pagesetup.PaperSize = New PaperSize("Custom", 300, 500) PD.DefaultPageSettings = pagesetup If ComboBox1.Text = "" Then MsgBox("Selecteaza un printer") Else PD.PrinterSettings.PrinterName = ComboBox1.SelectedItem.ToString() End If End Sub Private Sub PD_PrintPage(sender As Object, e As PrintPageEventArgs) Handles PD.PrintPage Dim cpserie As String cpserie = ScanCP.Text + "-" + plusCpSerie Dim f8 As New Font("Calibri", 8, FontStyle.Regular) Dim f10 As New Font("Calibri", 10, FontStyle.Regular) Dim f10b As New Font("Calibri", 10, FontStyle.Bold) Dim f14 As New Font("Calibri", 12, FontStyle.Bold) Dim leftmargin As Integer = PD.DefaultPageSettings.Margins.Left Dim centermargin As Integer = PD.DefaultPageSettings.PaperSize.Width / 2 Dim rightmargin As Integer = PD.DefaultPageSettings.PaperSize.Width 'font alignment Dim right As New StringFormat Dim center As New StringFormat right.Alignment = StringAlignment.Far center.Alignment = StringAlignment.Center Dim line As String line = "----------------------------------------------" Dim bara As String bara = "|" 'Dim row As Integer = 0 DataGridView1.AllowUserToAddRows = False e.Graphics.DrawString("Quantity:", f14, Brushes.Black, 5, 40) 'first line e.Graphics.DrawString(DataGridView1.Rows(row).Cells(1).Value.ToString, f14, Brushes.Black, 90, 40) 'first line e.Graphics.DrawString("To Pallet", f14, Brushes.Black, 110, 40) 'First line e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 55) ' linia nr 2 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(2).Value.ToString, f14, Brushes.Black, 5, 65) ' linia nr 3 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 80) 'linia nr 4 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(3).Value.ToString, f14, Brushes.Black, 5, 90) 'inia nr 5 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 100) 'linia 6 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(4).Value.ToString, f14, Brushes.Black, 5, 110) 'linia 7 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 125) 'linia 8 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(5).Value.ToString, f14, Brushes.Black, 5, 135) 'linia 9 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 147) 'linia 10 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(6).Value.ToString, f14, Brushes.Black, 5, 155) 'linia 11 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 167) 'linia 12 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(7).Value.ToString, f14, Brushes.Black, 5, 175) ' 'linia 13 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 187) 'linia 14 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(8).Value.ToString, f14, Brushes.Black, 5, 195) 'linia 15 e.Graphics.DrawString(bara, f14, Brushes.Black, 100, 195) 'linia 15 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(9).Value.ToString, f14, Brushes.Black, 110, 195) 'linia 15 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 205) 'linia 16 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(10).Value.ToString, f14, Brushes.Black, 5, 215) 'linia 17 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 225) 'linia 18 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(11).Value.ToString, f14, Brushes.Black, 5, 235) 'linia 19 e.Graphics.DrawString(bara, f14, Brushes.Black, 50, 235) 'linia 19 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(12).Value, f14, Brushes.Black, 65, 235) 'linia 19 e.Graphics.DrawString(bara, f14, Brushes.Black, 160, 235) 'linia 19 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(13).Value.ToString, f14, Brushes.Black, 170, 235) 'linia 19 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 250) 'linia 20 e.Graphics.DrawString("Barcode Number =>", f14, Brushes.Black, 5, 260) 'linia 21 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 275) 'linia 22 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(14).Value.ToString, f14, Brushes.Black, 10, 285) 'linia 23 Dim barcodeData As String = DataGridView1.Rows(row).Cells(14).Value.ToString Dim gbarcode As New MessagingToolkit.Barcode.BarcodeEncoder Dim barcodeimage As Image Dim w As Integer = 100 Dim h As Integer = 300 barcodeimage = New Bitmap(gbarcode.Encode(MessagingToolkit.Barcode.BarcodeFormat.Code128, barcodeData)) PictureBox1.Image = barcodeimage Me.PictureBox1.Height = h Me.PictureBox1.Width = w Me.PictureBox1.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 300) 'linia 24 e.Graphics.DrawImage(PictureBox1.Image, 205, 60, 90, 300) ''Print lateral code de bare e.Graphics.DrawString("Production Number & Series ", f14, Brushes.Black, 5, 310) e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 320) e.Graphics.DrawString(cpserie, f14, Brushes.Black, 5, 330) e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 345) Dim cpBarcode As New MessagingToolkit.Barcode.BarcodeEncoder Dim cpbarcodeimage As Image cpbarcodeimage = New Bitmap(cpBarcode.Encode(MessagingToolkit.Barcode.BarcodeFormat.Code128, cpserie)) PictureBox2.Image = cpbarcodeimage PictureBox2.SizeMode = PictureBoxSizeMode.Zoom PictureBox2.Size = New Size(300, 200) e.Graphics.DrawImage(PictureBox2.Image, -50, 353, 400, 100) PictureBox1.Dispose() PictureBox2.Dispose() Try Dim cpserieE As String = cpserie Dim comLiniaE As String = DataGridView1.Rows(row).Cells(0).Value.ToString() Dim cantGE As String = DataGridView1.Rows(row).Cells(1).Value.ToString() Dim comLinia1E As String = DataGridView1.Rows(row).Cells(2).Value.ToString() Dim onsE As String = DataGridView1.Rows(row).Cells(3).Value.ToString() Dim descrE As String = DataGridView1.Rows(row).Cells(4).Value.ToString(0) Dim dimE As String = DataGridView1.Rows(row).Cells(5).Value.ToString(0) Dim clientE As String = DataGridView1.Rows(row).Cells(6).Value.ToString() Dim stradaE As String = DataGridView1.Rows(row).Cells(7).Value.ToString() Dim pCodeE As String = DataGridView1.Rows(row).Cells(8).Value.ToString() Dim orasClientE As String = DataGridView1.Rows(row).Cells(9).Value.ToString() Dim pfE As String = DataGridView1.Rows(row).Cells(10).Value.ToString() Dim marcajE As String = DataGridView1.Rows(row).Cells(11).Value.ToString(0) Dim dataStringE As String dataStringE = DataGridView1.Rows(row).Cells(12).Value Dim volE As String = DataGridView1.Rows(row).Cells(13).Value.ToString() Dim barcodeE As String = DataGridView1.Rows(row).Cells(14).Value.ToString() Dim numeClientE As String = DataGridView1.Rows(row).Cells(15).Value.ToString() Dim con As New SqlConnection("Data Source=" & surce & "; Initial Catalog=" & catalog & "; User ID=" & user & "; Password=" & pass & "; Connect Timeout=" & timeout & "; Encrypt=" & encrypt & "; TrustServerCertificate=" & trust & "; ApplicationIntent=" & reason & "; MultiSubnetFailover=" & subnet & "") 'con.Open() ' deschiderea conexiuni cu serverul Dim command As New SqlCommand("INSERT INTO Etichete_Printate VALUES('" & cpserieE & "','" & comLiniaE & "','" & cantGE & "','" & comLinia1E & "','" & onsE & "', '" & descrE & "','" & dimE & "','" & clientE & "','" & stradaE & "','" & pCodeE & "','" & orasClientE & "','" & pfE & "', '" & marcajE & "','" & dataStringE & "','" & volE & "','" & barcodeE & "','" & numeClientE & "')", con) con.Open() command.ExecuteNonQuery() con.Close() Catch ex As Exception End Try End Sub Private Sub PD1_PrintPage(sender As Object, e As PrintPageEventArgs) Handles PD.PrintPage Dim cpserie As String cpserie = ScanCP.Text + "-" + plusCpSerie Dim f8 As New Font("Calibri", 8, FontStyle.Regular) Dim f10 As New Font("Calibri", 10, FontStyle.Regular) Dim f10b As New Font("Calibri", 10, FontStyle.Bold) Dim f14 As New Font("Calibri", 12, FontStyle.Bold) Dim leftmargin As Integer = PD.DefaultPageSettings.Margins.Left Dim centermargin As Integer = PD.DefaultPageSettings.PaperSize.Width / 2 Dim rightmargin As Integer = PD.DefaultPageSettings.PaperSize.Width 'font alignment Dim right As New StringFormat Dim center As New StringFormat right.Alignment = StringAlignment.Far center.Alignment = StringAlignment.Center Dim line As String line = "----------------------------------------------" Dim bara As String bara = "|" 'Dim row As Integer = 0 DataGridView1.AllowUserToAddRows = False e.Graphics.DrawString("Quantity:", f14, Brushes.Black, 5, 40) 'first line e.Graphics.DrawString(DataGridView1.Rows(row).Cells(1).Value.ToString, f14, Brushes.Black, 90, 40) 'first line e.Graphics.DrawString("To Pallet", f14, Brushes.Black, 110, 40) 'First line e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 55) ' linia nr 2 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(2).Value.ToString, f14, Brushes.Black, 5, 65) ' linia nr 3 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 80) 'linia nr 4 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(3).Value.ToString, f14, Brushes.Black, 5, 90) 'inia nr 5 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 100) 'linia 6 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(4).Value.ToString, f14, Brushes.Black, 5, 110) 'linia 7 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 125) 'linia 8 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(5).Value.ToString, f14, Brushes.Black, 5, 135) 'linia 9 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 147) 'linia 10 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(6).Value.ToString, f14, Brushes.Black, 5, 155) 'linia 11 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 167) 'linia 12 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(7).Value.ToString, f14, Brushes.Black, 5, 175) ' 'linia 13 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 187) 'linia 14 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(8).Value.ToString, f14, Brushes.Black, 5, 195) 'linia 15 e.Graphics.DrawString(bara, f14, Brushes.Black, 100, 195) 'linia 15 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(9).Value.ToString, f14, Brushes.Black, 110, 195) 'linia 15 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 205) 'linia 16 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(10).Value.ToString, f14, Brushes.Black, 5, 215) 'linia 17 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 225) 'linia 18 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(11).Value.ToString, f14, Brushes.Black, 5, 235) 'linia 19 e.Graphics.DrawString(bara, f14, Brushes.Black, 50, 235) 'linia 19 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(12).Value, f14, Brushes.Black, 65, 235) 'linia 19 e.Graphics.DrawString(bara, f14, Brushes.Black, 160, 235) 'linia 19 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(13).Value.ToString, f14, Brushes.Black, 170, 235) 'linia 19 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 250) 'linia 20 e.Graphics.DrawString("Barcode Number =>", f14, Brushes.Black, 5, 260) 'linia 21 e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 275) 'linia 22 e.Graphics.DrawString(DataGridView1.Rows(row).Cells(14).Value.ToString, f14, Brushes.Black, 10, 285) 'linia 23 Dim barcodeData As String = DataGridView1.Rows(row).Cells(14).Value.ToString Dim gbarcode As New MessagingToolkit.Barcode.BarcodeEncoder Dim barcodeimage As Image Dim w As Integer = 100 Dim h As Integer = 300 barcodeimage = New Bitmap(gbarcode.Encode(MessagingToolkit.Barcode.BarcodeFormat.Code128, barcodeData)) PictureBox1.Image = barcodeimage Me.PictureBox1.Height = h Me.PictureBox1.Width = w Me.PictureBox1.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 300) 'linia 24 e.Graphics.DrawImage(PictureBox1.Image, 205, 60, 90, 300) ''Print lateral code de bare e.Graphics.DrawString("Production Number & Series ", f14, Brushes.Black, 5, 310) e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 320) e.Graphics.DrawString(cpserie, f14, Brushes.Black, 5, 330) e.Graphics.DrawString(line, f10b, Brushes.Black, 0, 345) PictureBox1.Dispose() Label7.Text = "-" End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Form15.Show() Me.Close() End Sub End Class