This commit is contained in:
2023-03-10 08:22:11 +01:00
17 changed files with 6782 additions and 1577 deletions

View File

@@ -31,6 +31,7 @@ Public Class frmBelegNeu
Dim allowPrint = False
Public printErfolgreich = False
Public defaultPrinter = ""
Dim TESTBUCHUNG = True
Private EasyZVT_Worker As System.ComponentModel.BackgroundWorker = New System.ComponentModel.BackgroundWorker()
Private Funktion As Integer
@@ -38,6 +39,8 @@ Public Class frmBelegNeu
Private posTerminal As cRKSV_POS
Private dt As DataTable
Private setBreak As Boolean = True
Private Zahlungsmittel As String
Private POSFIBU As Integer = -1
Dim sourceCnTxt As Control = Nothing
@@ -167,7 +170,7 @@ Public Class frmBelegNeu
Case "SUA"
cboKassen.changeItem(5)
Case Else
MsgBox("Fehler: Dem Benutzer ist noch keine RKSV-Kasse bze. keine Niederlassung zugeordnet!")
MsgBox("Fehler: Dem Benutzer ist noch keine RKSV-Kasse bzw. keine Niederlassung zugeordnet!")
End Select
End If
@@ -228,15 +231,18 @@ Public Class frmBelegNeu
BELEG.Belegart = "2"
Label19.Text = "Kunden-Auszahlung"
Label19.ForeColor = Color.Red
btnPOS.Enabled = False
End If
Else
If BELEG.gebucht Then
btnPOS.Enabled = False
pnlData.Enabled = False
pnlOptionen.Enabled = False
FlowLayoutPanel.Enabled = False
' FlowLayoutPanel1.Enabled = False
Label17.Visible = True
btnPrint.Text = "Beleg Kopie" & vbNewLine & "drucken"
End If
If BELEG.Belegart = "1" Then
@@ -247,10 +253,12 @@ Public Class frmBelegNeu
EA = "A"
Label19.Text = "Kunden-Auszahlung"
Label19.ForeColor = Color.Red
btnPOS.Enabled = False
End If
If BELEG.gebuchtStorno Then
lblStorno.Visible = True
btnPOS.Enabled = False
End If
If AvisoID Is Nothing Then AvisoID = BELEG.LKW_Id
@@ -294,7 +302,7 @@ Public Class frmBelegNeu
AddHandler EasyZVT_Worker.DoWork, New ComponentModel.DoWorkEventHandler(AddressOf EasyZVT_Async)
AddHandler EasyZVT_Worker.RunWorkerCompleted, New System.ComponentModel.RunWorkerCompletedEventHandler(AddressOf EasyZVT_OnCompleted)
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG("Kassenbuch POS-Terminalzahlungen", Me) = 0 Then
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG("Kassenbuch_POS_Terminalzahlungen", Me) = 0 Then
btnPOS.Enabled = False
End If
@@ -337,6 +345,8 @@ Public Class frmBelegNeu
If BELEG.rksv_BelegId > 0 Then
lblBelegNr.Text = BELEG.rksv_BelegId
End If
cboFiliale.changeItem(BELEG.FilialenNr)
txtAbfertigungsNr.Text = IIf(BELEG.AbfertigungsNr <= 0, "", BELEG.AbfertigungsNr)
@@ -742,204 +752,13 @@ 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
Dim IsPosPayment As Boolean = False
If sender.Name = "btnPOS" Then
IsPosPayment = True
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Click
Zahlungsmittel = "Bar"
If Not printRoutine() Then
Exit Sub
End If
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, IsPosPayment) 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
setRKSV()
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
'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"
If cRKSV.printKundenBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, cbxBelegOffnen.Checked, IsPosPayment) Then
'WARTEN
printErfolgreich = True
End If
Case "2"
If cRKSV.printKundenBelegLG(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, "LG") Then
'WARTEN
printErfolgreich = True
End If
End Select
If warnClose Then 'Dann automatisch erstellt, zb Leihgeld --> Spedbuch bereits dort erfasst
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "ATILLA" Then 'Or VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG = "WAI" Then
If vbYes = MsgBox("Daten ins Speditionsbuch eintragen?", vbYesNoCancel) Then
Dim abbruch As Boolean = False
If cRKSV.SpedBuchExists(BELEG) Then
If vbYes <> MsgBox("Speditionsbuch Eintrag existiert bereits - Daten überschreiben?", vbYesNoCancel) Then
abbruch = True
End If
End If
If Not abbruch Then
cRKSV.insertToSpedBuch(PERSONAL, PERSONAL_LG, BELEG, AvisoID, SendungID)
If Not cRKSV.SpedBuchExists(BELEG) Then
MsgBox("Speditionsbuch-Eintrag fehlgeschlagen!!")
Else
If vbYes = MsgBox("Speditionsbuch anzeigen?", vbYesNoCancel) Then
Dim frmNacherfassung As New frmNacherfassungNEU()
frmNacherfassung.srchFiliale = BELEG.FilialenNr
frmNacherfassung.srchAbfertigungsnummer = BELEG.AbfertigungsNr
frmNacherfassung.srchUnterNr = 0
frmNacherfassung.ShowDialog(Me)
End If
End If
End If
End If
End If
End If
Me.Close()
Me.Cursor = Cursors.Default
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
@@ -1516,7 +1335,7 @@ Public Class frmBelegNeu
End While
Else
MsgBox("EasyZVT ist nicht installiert. Bitte im Internet Explorer über www.easyzvt.de/publish installieren")
MsgBox("EasyZVT ist nicht installiert." & vbNewLine & "In der Master-Kasse unter POS-Terminal als Systemadministrator installieren!")
End If
Catch ex As Exception
MessageBox.Show("Der Programmstart ist fehlgeschlagen: " & ex.Message)
@@ -1530,49 +1349,38 @@ Public Class frmBelegNeu
Dim ZVTKey As RegistryKey = Registry.CurrentUser.OpenSubKey("Software\GUB\ZVT", True)
Dim response As String = ""
response &= ZVTKey.GetValue("Ergebnis") & vbNewLine
response &= ZVTKey.GetValue("ErgebnisText")
Dim returnCode = CInt(ZVTKey.GetValue("Ergebnis"))
Dim response As String = ZVTKey.GetValue("ErgebnisText")
Dim ZahlungsmittelCode As Integer = ZVTKey.GetValue("Kartentyp")
'TextBox_Drucktext.Text = Replace(ZVTKey.GetValue("Drucktext"), vbLf, vbCrLf)
'TextBox_Drucktext2.Text = Replace(ZVTKey.GetValue("Drucktext2"), vbLf, vbCrLf)
'TextBox_BelegNr.Text = ZVTKey.GetValue("BelegNr").ToString
'TextBox_Betrag.Text = ""
'If CheckBoxAutodruck.Checked Then
' If Len(TextBox_Drucktext.Text) > 1 Then
' Button_Kundenbeleg_drucken.PerformClick()
' End If
' If Len(TextBox_Drucktext2.Text) > 1 Then
' Button_Haendlerbeleg_drucken.PerformClick()
' End If
'End If
'TextBox_Betrag.Focus()
'Button_Autorisierung.Enabled = True
'Button_Diagnose.Enabled = True
'Button_Tagesabschluss.Enabled = True
'Button_Storno.Enabled = True
'Button_Gutschrift.Enabled = True
ZVTKey.Close()
MsgBox(response)
setBreak = False
If returnCode = 0 Then 'Zahlung wurde erfolgreich durchgeführt
setRKSV()
End If
End Sub
Private Sub POSpayment(sender As Object, e As EventArgs) Handles btnPOS.Click
Zahlungsmittel = "EC"
If cboKassen.SelectedItem.Text = "" Then
MsgBox("Keine Kasse ausgewählt!")
Exit Sub
End If
If cboKassen.SelectedItem.Text = "" Then Exit Sub
If Betrag <= 0 Then
MsgBox("Es können nur positive Beträge über das POS-Terminal bezahlt werden!")
Exit Sub
End If
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
If Not printRoutine() Then
Exit Sub
End If
SetRegEntries()
Case Else
@@ -1588,8 +1396,6 @@ Public Class frmBelegNeu
End Select
End Sub
Private Sub SetRegEntries(Optional posid As Integer = -1)
@@ -1601,9 +1407,17 @@ Public Class frmBelegNeu
posTerminal = New cRKSV_POS(posid, dt.Rows(0).Item("pos_kasse"))
End If
POSFIBU = posTerminal.pos_FIBU
Dim ZVTKey As RegistryKey = Registry.CurrentUser.OpenSubKey("Software\GUB\ZVT", True)
Dim Typ As Long
If ZVTKey Is Nothing Then
MsgBox("EasyZVT ist nicht installiert." & vbNewLine & "In der Master-Kasse unter POS-Terminal als Systemadministrator installieren!" & vbNewLine & "INFO: EasyZVT wird als RegKey unter CurrentUser gesetzt.")
Me.Cursor = Cursors.Default
Exit Sub
End If
Try
ZVTKey.SetValue("Funktion", Funktion, RegistryValueKind.DWord)
@@ -1630,17 +1444,7 @@ Public Class frmBelegNeu
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()
@@ -1657,11 +1461,248 @@ Public Class frmBelegNeu
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 Not printRoutine() Then
Exit Sub
End If
If item IsNot Nothing Then
SetRegEntries(item.Name)
End If
End Sub
Private Function 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
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.")
Return False
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 : Return False
If Not allowPrint Then
If Not vbYes = MsgBox("Bei Zahlung/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 : Return False
End If
End If
Return True
Me.Cursor = Cursors.Default
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 Function
Private Sub setRKSV()
Try
If Not BELEG.gebucht And Not BELEG.gebuchtStorno Then
Me.Cursor = Cursors.WaitCursor
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, POSFIBU, Zahlungsmittel) 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
'printBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString) 'Beleg drucken
Select Case BELEG.Belegart
Case "1"
If cRKSV.printKundenBeleg(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, cbxBelegOffnen.Checked) Then
'WARTEN
printErfolgreich = True
End If
Case "2"
If cRKSV.printKundenBelegLG(BELEG, KASSE, PERSONAL, cboPrinter.SelectedItem.ToString, "LG") Then
'WARTEN
printErfolgreich = True
End If
End Select
If warnClose Then 'Dann automatisch erstellt, zb Leihgeld --> Spedbuch bereits dort erfasst
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "ATILLA" Then 'Or VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG = "WAI" Then
If vbYes = MsgBox("Daten ins Speditionsbuch eintragen?", vbYesNoCancel) Then
Dim abbruch As Boolean = False
If cRKSV.SpedBuchExists(BELEG) Then
If vbYes <> MsgBox("Speditionsbuch Eintrag existiert bereits - Daten überschreiben?", vbYesNoCancel) Then
abbruch = True
End If
End If
If Not abbruch Then
cRKSV.insertToSpedBuch(PERSONAL, PERSONAL_LG, BELEG, AvisoID, SendungID)
If Not cRKSV.SpedBuchExists(BELEG) Then
MsgBox("Speditionsbuch-Eintrag fehlgeschlagen!!")
Else
If vbYes = MsgBox("Speditionsbuch anzeigen?", vbYesNoCancel) Then
Dim frmNacherfassung As New frmNacherfassungNEU()
frmNacherfassung.srchFiliale = BELEG.FilialenNr
frmNacherfassung.srchAbfertigungsnummer = BELEG.AbfertigungsNr
frmNacherfassung.srchUnterNr = 0
frmNacherfassung.ShowDialog(Me)
End If
End If
End If
End If
End If
End If
Me.Close()
'If Zahlungsmittel = "EC" Then
' generatePOSUmbuchung()
'End If
Me.Cursor = Cursors.Default
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
'Private Sub generatePOSUmbuchung()
' Dim isUmbuchung = True
' Dim frmFremdbeleg As New frmFremdbeleg(isUmbuchung)
' frmFremdbeleg.PERSONAL = PERSONAL
' frmFremdbeleg.Art = 2
' frmFremdbeleg.Show()
' frmFremdbeleg.cboKonto.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Umbuchung Kassa/Bankomat", "3281"))
' frmFremdbeleg.cboKonto.changeItem("3281")
' frmFremdbeleg.txtReferenz.Text = BELEG.BelegNr
' frmFremdbeleg.txtBetrag._value = Betrag
' frmFremdbeleg.cbxBelegDrucken.Checked = False
' frmFremdbeleg.btn.PerformClick()
'End Sub
End Class