POS Terminal -> Funktion mei mehreren Kassenterminals pro Kassenplatz bzw Kasse.
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
Imports System.Drawing.Printing
|
||||
Imports System.Globalization
|
||||
Imports com.sun.org.apache.xpath.internal.operations
|
||||
Imports com.sun.xml.internal.ws.api.model
|
||||
Imports DAKOSY_Worker.DEXPRD
|
||||
Imports Microsoft.Win32
|
||||
Imports SDL.RKSVServer
|
||||
@@ -35,6 +36,10 @@ Public Class frmBelegNeu
|
||||
Private Funktion As Integer
|
||||
Private Betrag As Integer = 0
|
||||
Private posTerminal As cRKSV_POS
|
||||
Private dt As DataTable
|
||||
Private setBreak As Boolean = True
|
||||
Dim sourceCnTxt As Control = Nothing
|
||||
|
||||
|
||||
Public aktFiliale As Integer = 0
|
||||
Public aktAbfertigungsNr As Integer = 0
|
||||
@@ -731,7 +736,7 @@ Public Class frmBelegNeu
|
||||
|
||||
|
||||
' Dim RKSV_Service_Location = "\\192.168.0.106:8733/Design_Time_Addresses/RKSVCompleteServer/Service1/"
|
||||
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Click ' ,btnPOS.Click
|
||||
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Click ', btnPOS.Click
|
||||
|
||||
Dim IsPosPayment As Boolean = False
|
||||
|
||||
@@ -868,6 +873,12 @@ Public Class frmBelegNeu
|
||||
Me.DialogResult = Windows.Forms.DialogResult.OK
|
||||
'printBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString) 'Beleg drucken
|
||||
|
||||
If IsPosPayment And Betrag > 0 Then
|
||||
POSpayment(sender, e)
|
||||
While setBreak
|
||||
System.Threading.Thread.Sleep(5000)
|
||||
End While
|
||||
End If
|
||||
|
||||
Select Case BELEG.Belegart
|
||||
Case "1"
|
||||
@@ -913,6 +924,8 @@ Public Class frmBelegNeu
|
||||
Me.Cursor = Cursors.Default
|
||||
End If
|
||||
|
||||
|
||||
|
||||
Catch ex As Exception
|
||||
Me.DialogResult = Windows.Forms.DialogResult.None
|
||||
Me.Cursor = Cursors.Default
|
||||
@@ -1541,74 +1554,30 @@ Public Class frmBelegNeu
|
||||
MsgBox(response)
|
||||
End Sub
|
||||
|
||||
Private Sub btnPOS_Click(sender As Object, e As EventArgs) Handles btnPOS.Click
|
||||
Private Sub POSpayment(sender As Object, e As EventArgs) Handles btnPOS.Click
|
||||
|
||||
If cboKassen.SelectedItem.Text = "" Then Exit Sub
|
||||
|
||||
|
||||
Dim dt As DataTable = SQL.loadDgvBySql("SELECT * FROM tblRKSV_POS WHERE [pos_aktiv] = 1 AND [pos_kasse]='" & cboKassen.SelectedItem.Value & "'", "FMZOLL")
|
||||
dt = SQL.loadDgvBySql("SELECT * FROM tblRKSV_POS WHERE [pos_aktiv] = 1 AND [pos_kasse]='" & cboKassen.SelectedItem.Value & "'", "FMZOLL")
|
||||
|
||||
Select Case dt.Rows.Count
|
||||
Case 0
|
||||
MsgBox("Für diese Kasse ist kein aktives POS-Terminal hinterlegt!")
|
||||
Exit Sub
|
||||
Case 1
|
||||
|
||||
|
||||
posTerminal = New cRKSV_POS(dt.Rows(0).Item("pos_id"), dt.Rows(0).Item("pos_kasse"))
|
||||
|
||||
Dim ZVTKey As RegistryKey = Registry.CurrentUser.OpenSubKey("Software\GUB\ZVT", True)
|
||||
Dim Typ As Long
|
||||
|
||||
Try
|
||||
|
||||
ZVTKey.SetValue("Funktion", Funktion, RegistryValueKind.DWord)
|
||||
Typ = posTerminal.pos_typ
|
||||
ZVTKey.SetValue("Typ", Typ, RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("KasseNr", posTerminal.pos_kassennr, RegistryValueKind.String)
|
||||
ZVTKey.SetValue("COM", posTerminal.pos_com, RegistryValueKind.String)
|
||||
ZVTKey.SetValue("IP", posTerminal.pos_ip, RegistryValueKind.String)
|
||||
ZVTKey.SetValue("Port", CInt(posTerminal.pos_port), RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("ComSpeed", CInt(posTerminal.pos_comspeed), RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("ComStop", CInt(posTerminal.pos_comstop), RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("Lizenz", posTerminal.pos_lizenz, RegistryValueKind.String)
|
||||
If Funktion = 0 Or Funktion = 4 Then
|
||||
ZVTKey.SetValue("Betrag", Betrag * 100, RegistryValueKind.DWord) 'CENTbeträge 1€ --> 100 CENT
|
||||
End If
|
||||
If Funktion = 3 Then
|
||||
'ZVTKey.SetValue("StornoBetrag", CInt("0" & TextBox_Betrag.Text), RegistryValueKind.DWord)
|
||||
'ZVTKey.SetValue("StornoBelegNr", CInt("0" & StornoBelegNr.Text), RegistryValueKind.DWord)
|
||||
End If
|
||||
If posTerminal.pos_kassendruck Then
|
||||
ZVTKey.SetValue("Kassedruck", 1, RegistryValueKind.DWord)
|
||||
Else
|
||||
ZVTKey.SetValue("Kassedruck", 0, RegistryValueKind.DWord)
|
||||
End If
|
||||
ZVTKey.SetValue("Ergebnis", 1000, RegistryValueKind.DWord) ' Zur Sicherheit, falls EasyZVT gar nicht installiert ist oder nicht gestartet werden kann
|
||||
ZVTKey.SetValue("ErgebnisText", "EasyZVT konnte nicht gestartet werden", RegistryValueKind.String)
|
||||
'ZVTKey.SetValue("DemoDruckername", comboInstalledPrinters.Text, RegistryValueKind.String)
|
||||
'If CheckBoxAutodruck.Checked Then
|
||||
' ZVTKey.SetValue("DemoAutodruck", 1, RegistryValueKind.DWord)
|
||||
'Else
|
||||
' ZVTKey.SetValue("DemoAutodruck", 0, RegistryValueKind.DWord)
|
||||
'End If
|
||||
'If CheckBoxDummy.Checked Then
|
||||
' ZVTKey.SetValue("DemoDummydruck", 1, RegistryValueKind.DWord)
|
||||
'Else
|
||||
' ZVTKey.SetValue("DemoDummydruck", 0, RegistryValueKind.DWord)
|
||||
'End If
|
||||
|
||||
EasyZVT_Worker.RunWorkerAsync()
|
||||
|
||||
|
||||
Catch ex As Exception
|
||||
MessageBox.Show("Das Schreiben der Parameter ist fehlgeschlagen: " & ex.Message)
|
||||
Exit Sub
|
||||
End Try
|
||||
ZVTKey.Close()
|
||||
PosPAyment2()
|
||||
|
||||
Case Else
|
||||
ContextMenuStrip1.Items.Clear()
|
||||
For i As Integer = 0 To dt.Rows.Count - 1
|
||||
Dim posMenu = New ToolStripMenuItem() With {.Text = dt.Rows(i).Item("pos_bezeichnung"), .Name = dt.Rows(i).Item("pos_id"), .Font = New Font(Me.Font.FontFamily, Me.Font.Size, FontStyle.Bold)}
|
||||
AddHandler posMenu.Click, AddressOf mnuItem_Clicked
|
||||
ContextMenuStrip1.Items.Add(posMenu)
|
||||
|
||||
Next
|
||||
|
||||
ContextMenuStrip1.Show(Cursor.Position)
|
||||
End Select
|
||||
|
||||
|
||||
@@ -1616,6 +1585,75 @@ Public Class frmBelegNeu
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub PosPAyment2(Optional posid As Integer = -1)
|
||||
|
||||
|
||||
If posid = -1 Then
|
||||
posTerminal = New cRKSV_POS(dt.Rows(0).Item("pos_id"), dt.Rows(0).Item("pos_kasse"))
|
||||
Else
|
||||
posTerminal = New cRKSV_POS(posid, dt.Rows(0).Item("pos_kasse"))
|
||||
End If
|
||||
|
||||
Dim ZVTKey As RegistryKey = Registry.CurrentUser.OpenSubKey("Software\GUB\ZVT", True)
|
||||
Dim Typ As Long
|
||||
|
||||
Try
|
||||
|
||||
ZVTKey.SetValue("Funktion", Funktion, RegistryValueKind.DWord)
|
||||
Typ = posTerminal.pos_typ
|
||||
ZVTKey.SetValue("Typ", Typ, RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("KasseNr", posTerminal.pos_kassennr, RegistryValueKind.String)
|
||||
ZVTKey.SetValue("COM", posTerminal.pos_com, RegistryValueKind.String)
|
||||
ZVTKey.SetValue("IP", posTerminal.pos_ip, RegistryValueKind.String)
|
||||
ZVTKey.SetValue("Port", CInt(posTerminal.pos_port), RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("ComSpeed", CInt(posTerminal.pos_comspeed), RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("ComStop", CInt(posTerminal.pos_comstop), RegistryValueKind.DWord)
|
||||
ZVTKey.SetValue("Lizenz", posTerminal.pos_lizenz, RegistryValueKind.String)
|
||||
If Funktion = 0 Or Funktion = 4 Then
|
||||
ZVTKey.SetValue("Betrag", Betrag * 100, RegistryValueKind.DWord) 'CENTbeträge 1€ --> 100 CENT
|
||||
End If
|
||||
If Funktion = 3 Then
|
||||
'ZVTKey.SetValue("StornoBetrag", CInt("0" & TextBox_Betrag.Text), RegistryValueKind.DWord)
|
||||
'ZVTKey.SetValue("StornoBelegNr", CInt("0" & StornoBelegNr.Text), RegistryValueKind.DWord)
|
||||
End If
|
||||
If posTerminal.pos_kassendruck Then
|
||||
ZVTKey.SetValue("Kassedruck", 1, RegistryValueKind.DWord)
|
||||
Else
|
||||
ZVTKey.SetValue("Kassedruck", 0, RegistryValueKind.DWord)
|
||||
End If
|
||||
ZVTKey.SetValue("Ergebnis", 1000, RegistryValueKind.DWord) ' Zur Sicherheit, falls EasyZVT gar nicht installiert ist oder nicht gestartet werden kann
|
||||
ZVTKey.SetValue("ErgebnisText", "EasyZVT konnte nicht gestartet werden", RegistryValueKind.String)
|
||||
'ZVTKey.SetValue("DemoDruckername", comboInstalledPrinters.Text, RegistryValueKind.String)
|
||||
'If CheckBoxAutodruck.Checked Then
|
||||
' ZVTKey.SetValue("DemoAutodruck", 1, RegistryValueKind.DWord)
|
||||
'Else
|
||||
' ZVTKey.SetValue("DemoAutodruck", 0, RegistryValueKind.DWord)
|
||||
'End If
|
||||
'If CheckBoxDummy.Checked Then
|
||||
' ZVTKey.SetValue("DemoDummydruck", 1, RegistryValueKind.DWord)
|
||||
'Else
|
||||
' ZVTKey.SetValue("DemoDummydruck", 0, RegistryValueKind.DWord)
|
||||
'End If
|
||||
|
||||
EasyZVT_Worker.RunWorkerAsync()
|
||||
|
||||
|
||||
Catch ex As Exception
|
||||
MessageBox.Show("Das Schreiben der Parameter ist fehlgeschlagen: " & ex.Message)
|
||||
Exit Sub
|
||||
End Try
|
||||
ZVTKey.Close()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub mnuItem_Clicked(sender As Object, e As EventArgs)
|
||||
ContextMenuStrip1.Hide() 'Sometimes the menu items can remain open. May not be necessary for you.
|
||||
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
|
||||
If item IsNot Nothing Then
|
||||
PosPAyment2(item.Name)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user