POS
This commit is contained in:
@@ -742,20 +742,15 @@ Public Class frmBelegNeu
|
|||||||
|
|
||||||
|
|
||||||
' Dim RKSV_Service_Location = "\\192.168.0.106:8733/Design_Time_Addresses/RKSVCompleteServer/Service1/"
|
' 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
|
|
||||||
|
|
||||||
If sender.Name = "btnPOS" Then
|
|
||||||
IsPosPayment = True
|
|
||||||
End If
|
|
||||||
Try
|
Try
|
||||||
printErfolgreich = False
|
printErfolgreich = False
|
||||||
If BELEG.gebucht Or BELEG.gebuchtStorno Then
|
If BELEG.gebucht Or BELEG.gebuchtStorno Then
|
||||||
' KASSE.LOAD(cboKassen._value)
|
' KASSE.LOAD(cboKassen._value)
|
||||||
If BELEG.rksv_id > 0 Then KASSE.LOAD(BELEG.rksv_id)
|
If BELEG.rksv_id > 0 Then KASSE.LOAD(BELEG.rksv_id)
|
||||||
Select Case BELEG.Belegart
|
Select Case BELEG.Belegart
|
||||||
Case "1" : If cRKSV.printKundenBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, cbxBelegOffnen.Checked, IsPosPayment) Then Me.Close()
|
Case "1" : If cRKSV.printKundenBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, cbxBelegOffnen.Checked) Then Me.Close()
|
||||||
Case "2" : If cRKSV.printKundenBelegLG(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, "LG") Then Me.Close() 'Beleg drucken
|
Case "2" : If cRKSV.printKundenBelegLG(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, "LG") Then Me.Close() 'Beleg drucken
|
||||||
End Select
|
End Select
|
||||||
Else
|
Else
|
||||||
@@ -879,16 +874,9 @@ Public Class frmBelegNeu
|
|||||||
Me.DialogResult = Windows.Forms.DialogResult.OK
|
Me.DialogResult = Windows.Forms.DialogResult.OK
|
||||||
'printBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString) 'Beleg drucken
|
'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
|
Select Case BELEG.Belegart
|
||||||
Case "1"
|
Case "1"
|
||||||
If cRKSV.printKundenBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, cbxBelegOffnen.Checked, IsPosPayment) Then
|
If cRKSV.printKundenBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, cbxBelegOffnen.Checked) Then
|
||||||
'WARTEN
|
'WARTEN
|
||||||
printErfolgreich = True
|
printErfolgreich = True
|
||||||
End If
|
End If
|
||||||
@@ -1563,7 +1551,9 @@ Public Class frmBelegNeu
|
|||||||
|
|
||||||
Private Sub POSpayment(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
|
If cboKassen.SelectedItem.Text = "" Or Betrag <= 0 Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
dt = 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")
|
||||||
@@ -1571,7 +1561,6 @@ Public Class frmBelegNeu
|
|||||||
Select Case dt.Rows.Count
|
Select Case dt.Rows.Count
|
||||||
Case 0
|
Case 0
|
||||||
MsgBox("Für diese Kasse ist kein aktives POS-Terminal hinterlegt!")
|
MsgBox("Für diese Kasse ist kein aktives POS-Terminal hinterlegt!")
|
||||||
Exit Sub
|
|
||||||
Case 1
|
Case 1
|
||||||
SetRegEntries()
|
SetRegEntries()
|
||||||
|
|
||||||
@@ -1588,8 +1577,6 @@ Public Class frmBelegNeu
|
|||||||
End Select
|
End Select
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub SetRegEntries(Optional posid As Integer = -1)
|
Private Sub SetRegEntries(Optional posid As Integer = -1)
|
||||||
@@ -1659,9 +1646,155 @@ Public Class frmBelegNeu
|
|||||||
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
|
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
|
||||||
If item IsNot Nothing Then
|
If item IsNot Nothing Then
|
||||||
SetRegEntries(item.Name)
|
SetRegEntries(item.Name)
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Sub printRoutine()
|
||||||
|
|
||||||
|
|
||||||
|
Try
|
||||||
|
printErfolgreich = False
|
||||||
|
If BELEG.gebucht Or BELEG.gebuchtStorno Then
|
||||||
|
' KASSE.LOAD(cboKassen._value)
|
||||||
|
If BELEG.rksv_id > 0 Then KASSE.LOAD(BELEG.rksv_id)
|
||||||
|
Select Case BELEG.Belegart
|
||||||
|
Case "1" : If cRKSV.printKundenBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, cbxBelegOffnen.Checked) Then Me.Close()
|
||||||
|
Case "2" : If cRKSV.printKundenBelegLG(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, "LG") Then Me.Close() 'Beleg drucken
|
||||||
|
End Select
|
||||||
|
Else
|
||||||
|
Dim TESTBUCHUNG = False
|
||||||
|
' VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM()
|
||||||
|
If cRKSV.isforbiddenDate Then
|
||||||
|
MsgBox("Die Kasse wir am Monatsende abgeschlossen. Es dürfen keine weiteren Belege erstellt werden. Bitte veruchen Sie den Vorgang nach Mitternacht erneut.")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
Me.Cursor = Cursors.WaitCursor
|
||||||
|
|
||||||
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||||
|
KASSE.LOAD(6) 'Laden der Kasse anhand der Auswahlbox
|
||||||
|
Else
|
||||||
|
KASSE.LOAD(cboKassen._value) 'Laden der Kasse anhand der Auswahlbox
|
||||||
|
End If
|
||||||
|
BELEG.rksv_id = KASSE.rksv_id ' bei Fehler wird sonst die ID nicht richtig übernommen
|
||||||
|
|
||||||
|
If kdkunde.Text.Trim.Length > 50 Then
|
||||||
|
kdkunde.Text = kdkunde.Text.Trim.Substring(0, 50)
|
||||||
|
End If
|
||||||
|
|
||||||
|
datatoBeleg() 'Daten werden in "BELEG" geldaen
|
||||||
|
If Not validValues() Then Me.Cursor = Cursors.Default : Exit Sub
|
||||||
|
|
||||||
|
If Not allowPrint Then
|
||||||
|
If Not vbYes = MsgBox("Beim Druckvorgang werden die Beleg-Daten ins Kassenbuch eingetragen. Danach sind keine Änderungen mehr möglich." & vbNewLine & vbNewLine & "Soll der Vorgang gestartet werden?", vbYesNoCancel) Then Me.Cursor = Cursors.Default : Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim summeNETTO As Double = 0
|
||||||
|
For Each p In BELEG.POS : summeNETTO += p.Betrag : Next
|
||||||
|
|
||||||
|
Dim summeBRUTTO = summeNETTO
|
||||||
|
Dim steuersatz As Double = SQL.getValueTxtBySql("SELECT isnull(tblSteuersätze.Steuersatz,0) FROM tblSteuersätze WHERE tblSteuersätze.Nr='" & BELEG.Steuerschlüssel & "' ", "FMZOLL")
|
||||||
|
If IsNumeric(steuersatz) Then summeBRUTTO += (summeNETTO * steuersatz)
|
||||||
|
' If EA = "A" Then
|
||||||
|
' summeNETTO *= -1
|
||||||
|
' steuersatz *= -1
|
||||||
|
' summeBRUTTO *= -1
|
||||||
|
' End If
|
||||||
|
|
||||||
|
Dim oldBelegZaehler = KASSE.rksv_BelegIdZaehler 'Flls Fehler bei Signatur
|
||||||
|
|
||||||
|
Dim RKSV_Beleg_Id = KASSE.INCREASE_BELEG_UMSATZ(If(TESTBUCHUNG, 0, If(EA = "E", summeBRUTTO, summeBRUTTO * -1))) 'Bei Ausgabebeleg wird der Umsatz vermindert
|
||||||
|
If RKSV_Beleg_Id < 0 Then
|
||||||
|
Me.Cursor = Cursors.Default : warnClose = False : Me.Close() : Exit Sub
|
||||||
|
End If
|
||||||
|
' MsgBox(BELEG.POS.Count)
|
||||||
|
Dim JournalNr = 0
|
||||||
|
If Not cRKSV.insertKB(PERSONAL, BELEG, KASSE.rksv_id, RKSV_Beleg_Id, KASSE.rksv_aktiv, JournalNr, KASSE.rksv_firma) Then
|
||||||
|
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, summeBRUTTO * -1)
|
||||||
|
MsgBox("Programmfehler bei Eintrag ins Kassenbuch.")
|
||||||
|
Me.Cursor = Cursors.Default : warnClose = False : Me.Close() : Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
' QR_Image = Nothing
|
||||||
|
Dim QR_CodeString As String = ""
|
||||||
|
Dim LastJWS As String = ""
|
||||||
|
|
||||||
|
If KASSE.rksv_aktiv Then ' WENN für die Kasse die RKSV ÖSTERREICH gilt
|
||||||
|
Dim answer = ""
|
||||||
|
If Not cRKSV.insertRKSV(KASSE, KASSE.rksv_CompanyGUID, KASSE.rksv_Umsatzzaehler, BELEG.BelegDat, BELEG.Steuerschlüssel, RKSV_Beleg_Id, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), QR_CodeString, LastJWS, TESTBUCHUNG, answer) Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
||||||
|
If Not TESTBUCHUNG Then
|
||||||
|
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, If(EA = "E", summeBRUTTO * -1, summeBRUTTO))
|
||||||
|
cRKSV.DELETE(BELEG, KASSE.rksv_firma)
|
||||||
|
End If
|
||||||
|
MsgBox("Programmfehler bei der digitalen Signatur." & vbNewLine & vbNewLine & answer, MsgBoxStyle.Critical)
|
||||||
|
Me.Cursor = Cursors.Default : warnClose = False : Me.Close() : Exit Sub
|
||||||
|
End If
|
||||||
|
KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
|
||||||
|
End If
|
||||||
|
|
||||||
|
'If Not cRKSV_DE.insertRKSV_DE(PERSONAL, BELEG, KASSE, RKSV_Beleg_Id, 0, QR_CodeString, LastJWS, TESTBUCHUNG, answer) Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
||||||
|
' If Not TESTBUCHUNG Then
|
||||||
|
' KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, summe * -1)
|
||||||
|
' cRKSV.DELETE(BELEG)
|
||||||
|
' End If
|
||||||
|
' MsgBox("Programmfehler bei der digitalen Signatur." & vbNewLine & vbNewLine & answer, MsgBoxStyle.Critical)
|
||||||
|
' ' Me.Cursor = Cursors.Default
|
||||||
|
' 'BELEG = cRKSV.STORNO(BELEG, "Programmfehler")
|
||||||
|
' ' MsgBox("Programmfehler bei der digitalen Signatur.")
|
||||||
|
|
||||||
|
' Return False
|
||||||
|
'End If
|
||||||
|
'KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
|
||||||
|
|
||||||
|
' Dim TEST_KASSE = (BELEG.Niederlassung = "WAI")
|
||||||
|
If KASSE.rksvDE_aktiv Then ' WENN für die Kasse die RKSV DEUTSCHLAND gilt
|
||||||
|
Dim answer = ""
|
||||||
|
|
||||||
|
If Not cRKSV_DE.insertRKSV_DE(PERSONAL, BELEG, KASSE, RKSV_Beleg_Id, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), QR_CodeString, LastJWS, TESTBUCHUNG, answer) Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
||||||
|
If Not TESTBUCHUNG Then
|
||||||
|
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, If(EA = "E", summeBRUTTO * -1, summeBRUTTO))
|
||||||
|
cRKSV.DELETE(BELEG, KASSE.rksv_firma)
|
||||||
|
End If
|
||||||
|
MsgBox("Programmfehler bei der digitalen Signatur." & vbNewLine & vbNewLine & answer, MsgBoxStyle.Critical)
|
||||||
|
Me.Cursor = Cursors.Default : warnClose = False : Me.Close() : Exit Sub
|
||||||
|
End If
|
||||||
|
KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
|
||||||
|
|
||||||
|
'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||||||
|
If KASSE.rksv_KassaGuid = "KASSE_01" Then 'Testkasse
|
||||||
|
BELEG.rksv_jws = Nothing
|
||||||
|
BELEG.rksv_qr = Nothing
|
||||||
|
End If
|
||||||
|
'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||||||
|
End If
|
||||||
|
|
||||||
|
'RKSV-Daten beim Beleg ergänzen:
|
||||||
|
BELEG.rksv_jws = LastJWS
|
||||||
|
BELEG.rksv_qr = QR_CodeString
|
||||||
|
BELEG.rksv_BelegId = RKSV_Beleg_Id
|
||||||
|
BELEG.rksv_id = KASSE.rksv_id
|
||||||
|
BELEG.rksv_umsatz = summeBRUTTO
|
||||||
|
BELEG.rksv_aktiv = KASSE.rksv_aktiv
|
||||||
|
BELEG.gebucht = True
|
||||||
|
BELEG.SAVE()
|
||||||
|
|
||||||
|
|
||||||
|
Me.DialogResult = Windows.Forms.DialogResult.OK
|
||||||
|
End If
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
Me.DialogResult = Windows.Forms.DialogResult.None
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
printErfolgreich = False
|
||||||
|
MsgBox("Allgemeiner Programmfehler - Belegerfassung wird geschlossen!" & ex.Message & ex.StackTrace)
|
||||||
|
warnClose = False
|
||||||
|
Me.Close()
|
||||||
|
End Try
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user