This commit is contained in:
2021-10-27 11:19:22 +02:00
parent 13f28aa1d8
commit f4813a04a9
76 changed files with 9922 additions and 2253 deletions

View File

@@ -904,11 +904,11 @@ Public Class cRKSV
End If
KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
End If
If KASSE.rksvDE_aktiv Then ' WENN für die Kasse die DEUTSCHLAND gilt
Dim TESTFLAG = True
If TESTFLAG Or KASSE.rksvDE_aktiv Then ' WENN für die Kasse die DEUTSCHLAND gilt
Dim answer = ""
If Not cRKSV_DE.insertRKSV_DE(KASSE, KASSE.rksv_CompanyGUID, KASSE.rksv_Umsatzzaehler, BELEG.BelegDat, BELEG.Steuerschlüssel, RKSV_Beleg_Id, 0, QR_CodeString, LastJWS, TESTBUCHUNG, answer) Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
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)
@@ -1602,7 +1602,7 @@ End Class
Public Class cRKSV_DE
Public Class cRKSV_DE__TEST
Shared SQL As New SQL
Shared Function getBelegSting_BAR(summeBRUTTO As Double, steuerSchluessel As Integer) As String
@@ -1633,6 +1633,8 @@ Public Class cRKSV_DE
Shared Function insertRKSV_DE(ByVal kasse As cRKSV_Kasse, CompanyGUID As String, ByVal umsatzZaehler As Double, ByVal belegDat As DateTime, ByVal steuerSchluessel As Integer, ByVal RKSV_Beleg_Id As Integer, ByVal summeBRUTTO As Double, ByRef QR_CodeString As String, ByRef LastJWS As String, TEST As Boolean, ByRef answer As String) As Boolean
MsgBox("123")
Try
@@ -1641,7 +1643,8 @@ Public Class cRKSV_DE
' Dim licenseKey As String = kasse.rksv_DE_license '"07.11.2020;MEUCIQDfTvMPWQo4IVvTtuTbU9YHNwJ7EdMbogfGqmAp+rdw4gIgPJoEDE0OCfac/nCOKdksWvOZq+xvkFoYI0HFxJPkldU="
' Dim TSESerialNumber As String = "77A9D25F044A89E87578A8CD52D2A92564CC09214CC6448465414008D31C1CF1"
Dim m_ksv As ItgKsV.KsVCom = New ItgKsV.KsVCom()
Dim m_ksv = New ItgKsV.KsVCom()
'Dim m_ksv As ItgKsV.KsVCom = New ItgKsV.KsVCom()
' Dim result As Integer = m_ksv.InitialiseLibrary("F:", "SwissbitDemo", "12345", licenseKey)
MsgBox(kasse.rksv_ipAdresse & " --- " & kasse.rksv_DE_TSE_Serial & " --- " & kasse.rksv_DE_apiToken & " --- " & kasse.rksv_DE_user & " --- " & kasse.rksv_DE_pwd & " --- " & kasse.rksv_DE_license)
@@ -1649,43 +1652,43 @@ Public Class cRKSV_DE
Dim result As Integer = m_ksv.InitialiseLibraryLan(kasse.rksv_ipAdresse, kasse.rksv_DE_TSE_Serial, kasse.rksv_DE_apiToken, kasse.rksv_DE_user, kasse.rksv_DE_pwd, kasse.rksv_DE_license) '--> ClientId/User "Admin" mit KsVCom Demo registriert
If result <> &H0 Then
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return False
End If
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return False
End If
'' Setup bei erstmaliger Verwendung der Swissbit-TSE !!!
'' Setup bei erstmaliger Verwendung der Swissbit-TSE !!!
'result = m_ksv.SetupTSEForFirstUse("123456", "12345", "98765", "SwissbitDemo")
'result = m_ksv.SetupTSEForFirstUse("123456", "12345", "98765", "SwissbitDemo")
'If result <> &H0 Then
' MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
'Else
' MessageBox.Show("TSE setup succeeded.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)
'End If
'If result <> &H0 Then
' MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
'Else
' MessageBox.Show("TSE setup succeeded.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)
'End If
' BeginTransaction: für jede neue Rechnung wird eine Transaktion gestartet
' BeginTransaction: für jede neue Rechnung wird eine Transaktion gestartet
Dim transactionNumber As Long = 0
result = m_ksv.StartTransaction(transactionNumber)
Dim transactionNumber As Long = 0
result = m_ksv.StartTransaction(transactionNumber)
If result <> &H0 Then
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return False
End If
If result <> &H0 Then
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return False
End If
' UpdateTransaction: processData bleibt leer
' UpdateTransaction: processData bleibt leer
result = m_ksv.UpdateTransaction(transactionNumber, "", "KassenBeleg-V1")
result = m_ksv.UpdateTransaction(transactionNumber, "", "KassenBeleg-V1")
If result <> &H0 Then
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
End If
If result <> &H0 Then
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
End If
@@ -1694,29 +1697,29 @@ Public Class cRKSV_DE
result = m_ksv.FinishTransaction(transactionNumber, getBelegSting_BAR(summeBRUTTO, steuerSchluessel), "KassenBeleg-V1")
If result <> &H0 Then
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
End If
MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
End If
' QR-Code und weitere Werte, die auf der Rechnung angedruckt werden müssen
' QR-Code und weitere Werte, die auf der Rechnung angedruckt werden müssen
' QR-Code wird als base64 kodiertes bitmap geliefert
' QR-Code wird als base64 kodiertes bitmap geliefert
Dim qrCode As String = String.Empty
Dim qrCode As String = String.Empty
' QR-Code Inhalt für die Ablage in der Datenbank, falls eine Rechnung nochmals gedruckt werden muss
' QR-Code Inhalt für die Ablage in der Datenbank, falls eine Rechnung nochmals gedruckt werden muss
Dim qrCodeContent As String = String.Empty
m_ksv.GetLastReceiptQrCode(qrCode)
m_ksv.GetLastReceiptQrCodeContent(qrCodeContent)
Dim sTransactionNumber As String = String.Empty
Dim serialNumber As String = String.Empty
Dim signature As String = String.Empty
Dim sigCounter As String = String.Empty
Dim dtStartTransaction As Date = Date.MinValue
Dim dtFinishTransaction As Date = Date.MinValue
m_ksv.GetLastReceiptValues(sTransactionNumber, serialNumber, signature, dtStartTransaction, dtFinishTransaction, sigCounter)
Dim qrCodeContent As String = String.Empty
m_ksv.GetLastReceiptQrCode(qrCode)
m_ksv.GetLastReceiptQrCodeContent(qrCodeContent)
Dim sTransactionNumber As String = String.Empty
Dim serialNumber As String = String.Empty
Dim signature As String = String.Empty
Dim sigCounter As String = String.Empty
Dim dtStartTransaction As Date = Date.MinValue
Dim dtFinishTransaction As Date = Date.MinValue
m_ksv.GetLastReceiptValues(sTransactionNumber, serialNumber, signature, dtStartTransaction, dtFinishTransaction, sigCounter)
QR_CodeString = qrCode
LastJWS = signature
@@ -1762,4 +1765,422 @@ Public Class cRKSV_DE
Return False
End Function
End Class
Public Class cRKSV_DE
Shared SQL As New SQL
'Shared Function getBelegSting_BAR(summeBRUTTO As Double, steuerSchluessel As Integer) As String
' Dim steuersatz As Double = SQL.getValueTxtBySql("SELECT isnull(tblSteuersätze.Steuersatz,0) FROM tblSteuersätze WHERE tblSteuersätze.Nr='" & steuerSchluessel & "' ", "FMZOLL")
' Dim BetragSatzNormal = IIf(steuersatz = 0.19, summeBRUTTO, 0.0)
' Dim BetragSatzErm1 = IIf(steuersatz = 0.1, summeBRUTTO, 0.0)
' Dim BetragSatzNull = IIf(steuersatz = 0, summeBRUTTO, 0.0)
' BetragSatzNormal += IIf(steuersatz = 0.16, summeBRUTTO, 0.0)
' BetragSatzErm1 += IIf(steuersatz = 0.05, summeBRUTTO, 0.0)
' BetragSatzNormal += IIf(steuersatz = 0.2, summeBRUTTO, 0.0) ' Eig Nur AT
' 'Dim BetragSatzNormal = IIf(steuersatz = 0.2, summeBRUTTO, 0.0) 'summe
' 'Dim BetragSatzErm2 = IIf(steuersatz = 0.13, summeBRUTTO, 0.0)
' 'Dim BetragSatzNull = IIf(steuersatz = 0.0, summeBRUTTO, 0.0)
' Dim sum = BetragSatzNormal
' sum += BetragSatzErm1
' sum += BetragSatzNull
' MsgBox("Beleg^" & BetragSatzNormal.ToString("0.00") & "_" & BetragSatzErm1.ToString("0.00") & "_0.00_0.00_" & BetragSatzNull.ToString("0.00") & "^" & sum.ToString("0.00") & ":Bar")
' Return "Beleg^" & BetragSatzNormal.ToString("0.00") & "_" & BetragSatzErm1.ToString("0.00") & "_0.00_0.00_" & BetragSatzNull.ToString("0.00") & "^" & sum.ToString("0.00") & ":Bar"
'End Function
Shared Function stornoRKSV_DE(PERSONAL As cPersonal, BELEG As EABeleg, ByVal kasse As cRKSV_Kasse, ByVal RKSV_Beleg_Id As Integer, ByVal summeBRUTTO As Double, ByRef QR_CodeString As String, ByRef LastJWS As String, TEST As Boolean, ByRef answer As String, Optional storno As Integer = 0) As Boolean
Return insertRKSV_DE(PERSONAL, BELEG, kasse, RKSV_Beleg_Id, summeBRUTTO, QR_CodeString, LastJWS, TEST, answer, 1)
End Function
Shared Function insertRKSV_DE(PERSONAL As cPersonal, BELEG As EABeleg, ByVal kasse As cRKSV_Kasse, ByVal RKSV_Beleg_Id As Integer, ByVal summeBRUTTO As Double, ByRef QR_CodeString As String, ByRef LastJWS As String, TEST As Boolean, ByRef answer As String, Optional storno As Integer = 0) As Boolean
Try
Dim cashbox As String = kasse.rksv_KassaGuid '"VERAG_GMBH_KASSE_01" "KASSA 001"
Dim m_com As VERAG_PROG_ALLGEMEIN.RKSV_DE.DSFinVKServerClient = New VERAG_PROG_ALLGEMEIN.RKSV_DE.DSFinVKServerClient
' Dim [error] = "" 'm_com.InitializeLibrary(tbLicense.Text, "D:\Database\DSFinVK\dsfinvkdb.db3", "Administrator", "test", cashbox)
Dim [error] = m_com.InitializeLibrary("SQLGUIDE01.verag.ost.dmn", "itg_RKSV_DE", "dsfinvk", "dsfinvk#1337", cashbox)
If [error] <> VERAG_PROG_ALLGEMEIN.RKSV_DE.ErrorCode.OK Then
MessageBox.Show([error].ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return False
End If
Dim BON_ID As Integer = 0
[error] = m_com.GetNextBON_ID(cashbox, BON_ID)
If [error] <> VERAG_PROG_ALLGEMEIN.RKSV_DE.ErrorCode.OK Then
MessageBox.Show([error].ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return False
End If
Dim BON_NR As Integer = 0
[error] = m_com.GetNextBON_ID(cashbox, BON_NR)
If [error] <> VERAG_PROG_ALLGEMEIN.RKSV_DE.ErrorCode.OK Then
MessageBox.Show([error].ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return False
End If
'Rechnung beginnen
Dim bonkopfBegin As VERAG_PROG_ALLGEMEIN.RKSV_DE.BonKopfBegin = New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonKopfBegin()
bonkopfBegin.Z_KASSE_ID = cashbox
bonkopfBegin.BEDIENER_ID = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID 'tbBEDIENER_ID.Text
bonkopfBegin.BEDIENER_NAME = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME 'tbBEDIENER_NAME.Text
bonkopfBegin.BON_ID = BON_ID.ToString()
bonkopfBegin.BON_NAME = "" 'tbBON_NAME.Text
bonkopfBegin.BON_NOTIZ = "" 'tbBON_NOTIZ.Text
bonkopfBegin.BON_NR = BON_ID
bonkopfBegin.BON_STORNO = storno 'If(cbBON_STORNO.Checked, "1", "0")
bonkopfBegin.BON_TYP = "Beleg" 'cmbBON_TYP.SelectedItem.ToString()
bonkopfBegin.KUNDE_ID = "" 'tbKUNDE_ID.Text
bonkopfBegin.KUNDE_LAND = "" 'tbKUNDE_LAND.Text
bonkopfBegin.KUNDE_NAME = "" 'tbKUNDE_NAME.Text
bonkopfBegin.KUNDE_ORT = "" 'tbKUNDE_ORT.Text
bonkopfBegin.KUNDE_PLZ = "" 'tbKUNDE_PLZ.Text
bonkopfBegin.KUNDE_STRASSE = "" ' tbKUNDE_STRASSE.Text
bonkopfBegin.KUNDE_TYP = "" ' tbKUNDE_TYP.Text
bonkopfBegin.KUNDE_USTID = "" ' tbKUNDE_USTID.Text
bonkopfBegin.TERMINAL_ID = "" 'tbTERMINAL_ID.Text
Dim transactionNumber As Integer = 0
[error] = m_com.BeginReceipt(cashbox, bonkopfBegin, transactionNumber)
Dim cntZeile = 1
Dim GES_BRUTTO As Double = 0
For Each POS In BELEG.POS
'Bonposition hinzufügen
Dim position As VERAG_PROG_ALLGEMEIN.RKSV_DE.BonPosition = New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonPosition()
position.AGENTUR_ID = "" 'Convert.ToInt32(dgvBonPos.Rows[m_dgvCurrentRow].Cells["AGENTUR_ID"].Value)
position.ARTIKELTEXT = POS.LeistungsBez 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["ARTIKELTEXT"].Value)
position.ART_NR = POS.LeistungsNr ' Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["ART_NR"].Value)
position.BON_ID = Convert.ToString(BON_ID)
position.EINHEIT = "Stk." ' Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["EINHEIT"].Value)
position.FAKTOR = 1 ' Convert.ToDecimal(dgvBonPos.Rows[m_dgvCurrentRow].Cells["FAKTOR"].Value)
position.GTIN = "" 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["GTIN"].Value)
position.GUTSCHEIN_NR = "" 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["GUTSCHEIN_NR"].Value)
position.GV_NAME = "" ' Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["GV_NAME"].Value)
position.GV_TYP = "Umsatz" ' Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["GV_TYP"].Value)
position.INHAUS = "" 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["INHAUS"].Value)
position.MENGE = POS.Anzahl 'Convert.ToDecimal(dgvBonPos.Rows[m_dgvCurrentRow].Cells["MENGE"].Value)
position.POS_TERMINAL_ID = "" 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["POS_TERMINAL_ID"].Value)
position.POS_ZEILE = cntZeile 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["POS_ZEILE"].Value)
position.P_STORNO = storno ' Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["P_STORNO"].Value)
position.STK_BR = POS.Preis 'Convert.ToDecimal(dgvBonPos.Rows[m_dgvCurrentRow].Cells["STK_BR"].Value)
position.WARENGR = "" 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["WARENGR"].Value)
position.WARENGR_ID = "" 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["WARENGR_ID"].Value)
position.Z_KASSE_ID = cashbox 'Convert.ToString(dgvBonPos.Rows[m_dgvCurrentRow].Cells["Z_KASSE_ID"].Value)
' Beträge der Position
Dim position_vat = New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonPosition_Ust()
position_vat.BON_ID = position.BON_ID
position_vat.POS_ZEILE = position.POS_ZEILE
Dim steuersatzID = 1
Dim steuersatz As Double = SQL.getValueTxtBySql("SELECT [Steuersatz] FROM [tblSteuersätze] where nr='" & BELEG.Steuerschlüssel & "'", "FMZOLL")
Select Case steuersatz
Case 0.19 : steuersatzID = 1
Case 0.07 : steuersatzID = 2
Case 0.00 : steuersatzID = 6
End Select
position_vat.UST_SCHLUESSEL = steuersatzID 'm_com.GetTaxIds(cashbox,) 'Convert.ToInt32(dgvBonPos.Rows[m_dgvCurrentRow].Cells["UST_SCHLUESSEL"].Value)
Dim steuerBetrag = POS.Betrag * position_vat.UST_SCHLUESSEL
position_vat.POS_BRUTTO = POS.Betrag + steuerBetrag 'Convert.ToDecimal(dgvBonPos.Rows[m_dgvCurrentRow].Cells["POS_BRUTTO"].Value)
position_vat.POS_NETTO = POS.Betrag 'Convert.ToDecimal(dgvBonPos.Rows[m_dgvCurrentRow].Cells["POS_NETTO"].Value)
position_vat.POS_UST = steuerBetrag 'Convert.ToDecimal(dgvBonPos.Rows[m_dgvCurrentRow].Cells["POS_UST"].Value)
[error] = m_com.AddPositionToReceipt(cashbox, position, position_vat, transactionNumber)
cntZeile += 1
GES_BRUTTO += position_vat.POS_BRUTTO
Next
'Rechnung abschließen
Dim bonkopfFinish As VERAG_PROG_ALLGEMEIN.RKSV_DE.BonKopfFinish = New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonKopfFinish()
bonkopfFinish.Z_KASSE_ID = cashbox
bonkopfFinish.BON_ID = BON_ID
If Not Decimal.TryParse(GES_BRUTTO, bonkopfFinish.UMS_BRUTTO) Then
bonkopfFinish.UMS_BRUTTO = 0.00
End If
bonkopfFinish.PROCESS_TYPE = "Kassenbeleg-V1"
bonkopfFinish.payment_currencies = {"EUR"}
bonkopfFinish.payment_types = {"Bar"}
bonkopfFinish.payment_per_currency = {119.0}
[error] = m_com.FinishReceipt(cashbox, bonkopfFinish, transactionNumber)
' Kassenabschluss anlegen über alle noch nicht abgeschlossenen Rechnungen zu dieser Kasse
' Error = m_com.CreateCashpointClosing(cashbox)
' ' DSFinV-K-Export
' Int from = 0
'Int to = 10
'Dim ret = m_com.ExportCSVFiles(from, to, tbSelectedFolder.Text, tbZipName.Text, True, True,
'true, true, true, true, true, true,
'true, true, true, true,
'true, true, true, true, true,
'true, true, true);
'If (ret == ErrorCode.OK) Then
'{
'MessageBox.Show("Die CSV Dateien wurden im Ordner " + tbSelectedFolder.Text + " angelegt und in die Zip-Datei " + tbZipName.Text + " gepackt.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
'}
'Else
'{
'MessageBox.Show("Beim exportieren der CSV-Dateien ging etwas schief:\r\n" + ret.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
'}
Dim transactionNumberRet As String
Dim serialNumber As String
Dim signature As String
Dim transactionStart As Date
Dim transactionFinish As Date
Dim sigCounter As String
m_com.GetLastReceiptValues(transactionNumberRet, serialNumber, signature, transactionStart, transactionFinish, sigCounter)
Dim qrCode As String = String.Empty
Dim mimeType As String = String.Empty
m_com.GetLastReceiptQrCode(qrCode, mimeType)
QR_CodeString = qrCode
LastJWS = signature
Catch ex As Exception
MsgBox("Es ist ein Fehler bei der Signatur aufgetreten (insertRKSV): " & vbNewLine & ex.Message & ex.StackTrace)
End Try
Return False
End Function
'Shared Function insertRKSV_DE(ByVal kasse As cRKSV_Kasse, CompanyGUID As String, ByVal umsatzZaehler As Double, ByVal belegDat As DateTime, ByVal steuerSchluessel As Integer, ByVal RKSV_Beleg_Id As Integer, ByVal summeBRUTTO As Double, ByRef QR_CodeString As String, ByRef LastJWS As String, TEST As Boolean, ByRef answer As String) As Boolean
' Try
' Dim xCom As New VERAG_PROG_ALLGEMEIN.RKSV_DE.DSFinVKServerClient
' Dim ret As Long
' Dim bonkopfBegin As New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonKopfBegin
' Dim bonkopfFinish As New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonKopfFinish
' Dim bonpos As New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonPosition
' Dim bonpos_ust As New VERAG_PROG_ALLGEMEIN.RKSV_DE.BonPosition_Ust
' Dim transactionNumber As Long
' Dim bonId As Long
' Dim bonNr As Long
' Dim poszeile As Integer
' ' zwingend erforderliche Felder:
' Dim tbCashbox = kasse.rksv_KassaGuid ' VERAG_GMBH_KASSE_01
' bonkopfBegin.Z_KASSE_ID = tbCashbox
' bonkopfBegin.BON_ID = bonId
' bonkopfBegin.BON_NR = bonId
' bonkopfBegin.BON_TYP = "Beleg" 'tbBonTyp
' bonkopfBegin.BON_NAME = "" 'tbBonName
' bonkopfBegin.BON_STORNO = "0"
' bonkopfBegin.BEDIENER_ID = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID 'tbBedienerId
' bonkopfBegin.BEDIENER_NAME = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME ' tbBedienerName
' Dim tbBonStart = Format(Now(), "yyyy-mm-ddThh:MM:ss")
' poszeile = 1
' bonkopfBegin.BON_START = tbBonStart
' ' optionale Felder:
' ' bonkopfBegin.KUNDE_NAME = tbKundeName
' ' bonkopfBegin.KUNDE_ID = tbKundeId
' ' bonkopfBegin.KUNDE_TYP = tbKundeTyp
' ' bonkopfBegin.KUNDE_USTID = tbKundeUstId
' ' bonkopfBegin.KUNDE_STRASSE = tbKundeStrasse
' ' bonkopfBegin.KUNDE_PLZ = tbKundePlz
' ' bonkopfBegin.KUNDE_ORT = tbKundeOrt
' ' bonkopfBegin.KUNDE_LAND = tbKundeLand
' ret = xCom.BeginReceipt(tbCashbox, bonkopfBegin, transactionNumber)
' If ret <> 0 Then
' MsgBox("Es ist ein Fehler aufgetreten! ErrorCode = " + Str$(ret))
' Else
' tbTransNr = transactionNumber
' End If
' Dim qrCode As String = String.Empty
' ' QR-Code Inhalt für die Ablage in der Datenbank, falls eine Rechnung nochmals gedruckt werden muss
' Dim qrCodeContent As String = String.Empty
' m_ksv.GetLastReceiptQrCode(qrCode)
' m_ksv.GetLastReceiptQrCodeContent(qrCodeContent)
' Dim sTransactionNumber As String = String.Empty
' Dim serialNumber As String = String.Empty
' Dim signature As String = String.Empty
' Dim sigCounter As String = String.Empty
' Dim dtStartTransaction As Date = Date.MinValue
' Dim dtFinishTransaction As Date = Date.MinValue
' m_ksv.GetLastReceiptValues(sTransactionNumber, serialNumber, signature, dtStartTransaction, dtFinishTransaction, sigCounter)
' QR_CodeString = qrCode
' LastJWS = signature
' '' Anzeige der gestarteten/noch möglichen Transaktionen
' 'Dim maxTransactions As Integer = 0
' 'Dim openTransactions As Integer = 0
' 'm_ksv.GetMaxStartedTransactions(maxTransactions)
' 'm_ksv.GetStartedTransactions(openTransactions)
' 'Dim startedTransactions As Integer() = Nothing
' 'result = m_ksv.GetStartedTransactionNumbers(startedTransactions)
' 'If result <> &H0 Then
' ' MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
' 'End If
' '' Export der TSE-Daten im TAR-Format
' 'result = m_ksv.ExportAsTarFile("d:\export.tar")
' 'If result <> 0 Then
' ' MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
' 'End If
' '' Bibliothek aufräumen, andernfalls wird ein power-cycle der TSE erforderlich um sie wieder einsetzen zu können
' ''result = CSharpImpl.__Assign(,, m_ksv.CleanupLibrary())
' 'result = m_ksv.CleanupLibrary()
' 'If result <> 0 Then
' ' MessageBox.Show(m_ksv.StringifyErrorCode(result), "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
' 'End If
' Catch ex As Exception
' MsgBox("Es ist ein Fehler bei der Signatur aufgetreten (insertRKSV): " & vbNewLine & ex.Message & ex.StackTrace)
' End Try
' Return False
'End Function
End Class