merge
This commit is contained in:
@@ -284,6 +284,8 @@ Public Class EABeleg
|
|||||||
Property EC_daid As Integer = 0
|
Property EC_daid As Integer = 0
|
||||||
Property FT_ReceiptReference As Object = Nothing
|
Property FT_ReceiptReference As Object = Nothing
|
||||||
Property FT_ReceiptReference_Storno As Object = Nothing
|
Property FT_ReceiptReference_Storno As Object = Nothing
|
||||||
|
Property FT_MissingSignature As Boolean = False
|
||||||
|
Property FT_setMissingSignatureFailed As Boolean = False
|
||||||
|
|
||||||
|
|
||||||
Property POS As New List(Of EABelegPositionen)
|
Property POS As New List(Of EABelegPositionen)
|
||||||
@@ -364,8 +366,13 @@ Public Class EABeleg
|
|||||||
Me.ECZahlungsPerAPI = cSqlDb.checkNullReturnValue(dr.Item("ECZahlungsPerAPI"), Nothing)
|
Me.ECZahlungsPerAPI = cSqlDb.checkNullReturnValue(dr.Item("ECZahlungsPerAPI"), Nothing)
|
||||||
Me.ECTerminalreturnCode = cSqlDb.checkNullReturnValue(dr.Item("ECTerminalreturnCode"), Nothing)
|
Me.ECTerminalreturnCode = cSqlDb.checkNullReturnValue(dr.Item("ECTerminalreturnCode"), Nothing)
|
||||||
Me.EC_daid = cSqlDb.checkNullReturnValue(dr.Item("EC_daid"), Nothing)
|
Me.EC_daid = cSqlDb.checkNullReturnValue(dr.Item("EC_daid"), Nothing)
|
||||||
|
|
||||||
|
'Fiskaltrust
|
||||||
|
|
||||||
Me.FT_ReceiptReference = cSqlDb.checkNullReturnValue(dr.Item("FT_ReceiptReference"), Nothing)
|
Me.FT_ReceiptReference = cSqlDb.checkNullReturnValue(dr.Item("FT_ReceiptReference"), Nothing)
|
||||||
Me.FT_ReceiptReference_Storno = cSqlDb.checkNullReturnValue(dr.Item("FT_ReceiptReference_Storno"), Nothing)
|
Me.FT_ReceiptReference_Storno = cSqlDb.checkNullReturnValue(dr.Item("FT_ReceiptReference_Storno"), Nothing)
|
||||||
|
Me.FT_MissingSignature = cSqlDb.checkNullReturnValue(dr.Item("FT_MissingSignature"), False)
|
||||||
|
Me.FT_MissingSignature = cSqlDb.checkNullReturnValue(dr.Item("FT_setMissingSignatureFailed"), False)
|
||||||
|
|
||||||
If loadPosAswell Then POS = LOAD_POS_List(Mandant, Niederlassung, Benutzer, BelegNr, BelegDat)
|
If loadPosAswell Then POS = LOAD_POS_List(Mandant, Niederlassung, Benutzer, BelegNr, BelegDat)
|
||||||
' MsgBox(POS.Count)
|
' MsgBox(POS.Count)
|
||||||
@@ -551,8 +558,12 @@ Public Class EABeleg
|
|||||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("ECZahlungsPerAPI", ECZahlungsPerAPI))
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("ECZahlungsPerAPI", ECZahlungsPerAPI))
|
||||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("ECTerminalreturnCode", ECTerminalreturnCode))
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("ECTerminalreturnCode", ECTerminalreturnCode))
|
||||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("EC_daid", EC_daid))
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("EC_daid", EC_daid))
|
||||||
|
|
||||||
|
'FISKALTRUST
|
||||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_ReceiptReference", FT_ReceiptReference))
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_ReceiptReference", FT_ReceiptReference))
|
||||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_ReceiptReference_Storno", FT_ReceiptReference_Storno))
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_ReceiptReference_Storno", FT_ReceiptReference_Storno))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_MissingSignature", FT_MissingSignature))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_setMissingSignatureFailed", FT_setMissingSignatureFailed))
|
||||||
|
|
||||||
'For Each p As System.Reflection.PropertyInfo In Me.GetType().GetProperties()
|
'For Each p As System.Reflection.PropertyInfo In Me.GetType().GetProperties()
|
||||||
'If p.CanRead Then
|
'If p.CanRead Then
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ Public Class FtReceiptCases
|
|||||||
' Test-/Nullbeleg
|
' Test-/Nullbeleg
|
||||||
Public Const ZeroReceipt As Long = &H4445000000000002L
|
Public Const ZeroReceipt As Long = &H4445000000000002L
|
||||||
|
|
||||||
|
' Kassenlebenszyklus
|
||||||
Public Const InitialOperation As Long = &H4445000000000003L
|
Public Const InitialOperation As Long = &H4445000000000003L
|
||||||
Public Const OutOfOperation As Long = &H4445000000000004L
|
Public Const OutOfOperation As Long = &H4445000000000004L
|
||||||
|
|
||||||
@@ -22,6 +23,12 @@ Public Class FtReceiptCases
|
|||||||
Public Const ImplicitTransaction As Long = &H100000000L
|
Public Const ImplicitTransaction As Long = &H100000000L
|
||||||
Public Const ReversalReceipt As Long = &H40000L
|
Public Const ReversalReceipt As Long = &H40000L
|
||||||
Public Const TrainingReceipt As Long = &H20000L
|
Public Const TrainingReceipt As Long = &H20000L
|
||||||
|
' aktiviert den Late-Signing-Modus
|
||||||
|
Public Const FailedReceipt As Long = &H10000L
|
||||||
|
|
||||||
|
' Receipt-Request:
|
||||||
|
' bereits verarbeiteten Beleg anhand cbReceiptReference abrufen
|
||||||
|
Public Const ReceiptRequest As Long = &H800000000000L
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
@@ -44,6 +51,17 @@ Public Class FtJournalType
|
|||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
Public Class ReceiptCaseIntern
|
||||||
|
|
||||||
|
Public Const VERKAUF As String = "Verkauf"
|
||||||
|
Public Const EINGANG As String = "Eingang"
|
||||||
|
Public Const AUSGANG As String = "Ausgang"
|
||||||
|
Public Const WIEDERHOLUNG As String = "Retry"
|
||||||
|
|
||||||
|
End Class
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Public Class FtPayItemCases
|
Public Class FtPayItemCases
|
||||||
|
|
||||||
'DE
|
'DE
|
||||||
@@ -71,25 +89,31 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
Private ReadOnly _cashboxId As String
|
Private ReadOnly _cashboxId As String
|
||||||
Private ReadOnly _accessToken As String
|
Private ReadOnly _accessToken As String
|
||||||
Private ReadOnly _country As String
|
Private ReadOnly _country As String
|
||||||
|
Private ReadOnly _isFiskaltrust As Boolean = False
|
||||||
|
|
||||||
Public Sub New(baseUrl As String, cashboxId As String, accessToken As String, country As String)
|
Public Sub New(baseUrl As String, cashboxId As String, accessToken As String, country As String)
|
||||||
_baseUrl = baseUrl.TrimEnd("/"c)
|
_baseUrl = baseUrl.TrimEnd("/"c)
|
||||||
_cashboxId = cashboxId
|
_cashboxId = cashboxId
|
||||||
_accessToken = accessToken
|
_accessToken = accessToken
|
||||||
_country = country
|
_country = country
|
||||||
|
|
||||||
|
If _cashboxId <> "" AndAlso baseUrl <> "" AndAlso _accessToken <> "" AndAlso _country <> "" Then
|
||||||
|
_isFiskaltrust = True
|
||||||
|
Else
|
||||||
|
_isFiskaltrust = False
|
||||||
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Function SignReceipt(amount As Decimal, vat As Decimal, POS As List(Of EABelegPositionen), kindOfPayment As String, posSystemId As String, typOfReceiptCase As String) As String
|
Public Function isFiskaltrust() As Boolean
|
||||||
|
Return _isFiskaltrust
|
||||||
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, typOfReceiptCase, "")
|
|
||||||
|
|
||||||
Return SendChilkat(GetEndpoint("payment"), payload.Emit())
|
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Public Function SignReceipt_test(posSystemId As String) As String
|
|
||||||
|
|
||||||
|
Public Function SignReceipt_test(posSystemId As String, TSEisOnline As Boolean) As String
|
||||||
|
|
||||||
Dim LIST = New List(Of EABelegPositionen)
|
Dim LIST = New List(Of EABelegPositionen)
|
||||||
Dim p = New EABelegPositionen
|
Dim p = New EABelegPositionen
|
||||||
@@ -110,23 +134,22 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
Dim vat = 0
|
Dim vat = 0
|
||||||
Dim POS = LIST
|
Dim POS = LIST
|
||||||
Dim kindOfPayment = "Cash"
|
Dim kindOfPayment = "Cash"
|
||||||
|
Try
|
||||||
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, "Verkauf", "")
|
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, "Verkauf", "", TSEisOnline)
|
||||||
|
|
||||||
Return SendChilkat(GetEndpoint("payment"), payload.Emit())
|
Return SendChilkat(GetEndpoint("payment"), payload.Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Public Function ChancelReceipt(reference As String, amount As Decimal, vat As Decimal, POS As List(Of EABelegPositionen), kindOfPayment As String, posSystemId As String) As String
|
|
||||||
|
|
||||||
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, "Storno", reference)
|
|
||||||
|
|
||||||
Return SendChilkat(GetEndpoint("storno"), payload.Emit())
|
Public Function ChancelReceipt_test(reference As String, posSystemId As String, TSEisOnline As Boolean) As String
|
||||||
End Function
|
|
||||||
|
|
||||||
Public Function ChancelReceipt_test(reference As String, posSystemId As String) As String
|
|
||||||
|
|
||||||
|
Try
|
||||||
Dim LIST = New List(Of EABelegPositionen)
|
Dim LIST = New List(Of EABelegPositionen)
|
||||||
Dim p = New EABelegPositionen
|
Dim p = New EABelegPositionen
|
||||||
p.Mandant = "VERA"
|
p.Mandant = "VERA"
|
||||||
@@ -147,44 +170,98 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
Dim POS = LIST
|
Dim POS = LIST
|
||||||
Dim kindOfPayment = "Cash"
|
Dim kindOfPayment = "Cash"
|
||||||
|
|
||||||
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, "Storno", reference)
|
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, "Storno", reference, TSEisOnline)
|
||||||
|
|
||||||
Return SendChilkat(GetEndpoint("storno"), payload.Emit())
|
Return SendChilkat(GetEndpoint("storno"), payload.Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
Public Function SignReceipt(amount As Decimal, vat As Decimal, POS As List(Of EABelegPositionen), kindOfPayment As String, posSystemId As String, typOfReceiptCase As String, reference As String, TESisOnline As Boolean) As String
|
||||||
|
Try
|
||||||
|
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, typOfReceiptCase, reference, TESisOnline)
|
||||||
|
|
||||||
|
Return SendChilkat(GetEndpoint("payment"), payload.Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
Public Function SignNullReceipt(posSystemId As String) As String
|
Public Function SignNullReceipt(posSystemId As String) As String
|
||||||
|
Try
|
||||||
Return SendChilkat(GetEndpoint("payment"), BuildPayloadNullReceipt(posSystemId, _country).Emit())
|
Return SendChilkat(GetEndpoint("payment"), BuildPayloadNullReceipt(posSystemId, _country).Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
|
|
||||||
|
Public Function ChancelReceipt(reference As String, amount As Decimal, vat As Decimal, POS As List(Of EABelegPositionen), kindOfPayment As String, posSystemId As String, TSEisOnline As Boolean) As String
|
||||||
|
Try
|
||||||
|
Dim payload As JsonObject = BuildPayloadReceipt(amount, vat, POS, kindOfPayment, posSystemId, "Storno", reference, TSEisOnline)
|
||||||
|
|
||||||
|
Return SendChilkat(GetEndpoint("storno"), payload.Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function SignOutOfOrderReceipt(posSystemId As String) As String
|
Public Function SignOutOfOrderReceipt(posSystemId As String) As String
|
||||||
|
Try
|
||||||
Return SendChilkat(GetEndpoint("payment"), BuildPayloadOutOfOperationReceipt(posSystemId, _country).Emit())
|
Return SendChilkat(GetEndpoint("payment"), BuildPayloadOutOfOperationReceipt(posSystemId, _country).Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function SignOInitialOperationReceipt(posSystemId As String) As String
|
Public Function SignTempOutOfOrderReceipt(posSystemId As String) As String
|
||||||
|
Try
|
||||||
|
Return SendChilkat(GetEndpoint("payment"), BuildPayloadOutOfOperationReceipt(posSystemId, _country).Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
|
|
||||||
|
Public Function SignInitialOperationReceipt(posSystemId As String) As String
|
||||||
|
Try
|
||||||
Return SendChilkat(GetEndpoint("payment"), BuildPayloadInitialOperationReceipt(posSystemId, _country).Emit())
|
Return SendChilkat(GetEndpoint("payment"), BuildPayloadInitialOperationReceipt(posSystemId, _country).Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function SignClosingReceipt(receiptType As String, posSystemId As String, kind As String) As String
|
Public Function SignClosingReceipt(receiptType As String, posSystemId As String, kind As String) As String
|
||||||
|
Try
|
||||||
Return SendChilkat(GetEndpoint("payment"), BuildPayloadClosingReceipt(receiptType, posSystemId, kind).Emit())
|
Return SendChilkat(GetEndpoint("payment"), BuildPayloadClosingReceipt(receiptType, posSystemId, kind).Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function Echo(kassenName As String) As String
|
Public Function Echo(kassenName As String) As String
|
||||||
|
Try
|
||||||
Dim json As New JsonObject()
|
Dim json As New JsonObject()
|
||||||
json.UpdateString("Message", kassenName & " - VERBINDUNG OK")
|
json.UpdateString("Message", kassenName & " - VERBINDUNG OK")
|
||||||
|
|
||||||
Return SendChilkat(GetEndpoint("test"), json.Emit())
|
Return SendChilkat(GetEndpoint("test"), json.Emit())
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function Journal(ftJournalType As Integer) As String
|
Public Function Journal(ftJournalType As Integer) As String
|
||||||
|
Try
|
||||||
|
|
||||||
Dim endpoint = GetEndpoint("journal")
|
Dim endpoint = GetEndpoint("journal")
|
||||||
|
|
||||||
endpoint &= "?type=" & ftJournalType
|
endpoint &= "?type=" & ftJournalType
|
||||||
|
|
||||||
Return SendChilkat(endpoint, "")
|
Return SendChilkat(endpoint, "")
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
@@ -289,9 +366,12 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
|
|
||||||
Throw lastEx
|
Throw lastEx
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Function BuildPayloadReceipt(amount As Decimal, vat As Decimal, POS As List(Of EABelegPositionen), kindOfPayment As String, posSystemId As String, _receiptCase As String, _reference As String) As JsonObject
|
Private Function BuildPayloadReceipt(amount As Decimal, vat As Decimal, POS As List(Of EABelegPositionen), kindOfPayment As String, posSystemId As String, _receiptCase As String, _reference As String, TSEisOnline As Boolean) As JsonObject
|
||||||
|
|
||||||
Dim json As New JsonObject()
|
Dim json As New JsonObject()
|
||||||
|
|
||||||
@@ -312,49 +392,64 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
|
|
||||||
If _receiptCase = "Storno" Then
|
If _receiptCase = "Storno" Then
|
||||||
|
|
||||||
' New reference for the Storno receipt
|
|
||||||
json.UpdateString("cbReceiptReference", Guid.NewGuid().ToString())
|
json.UpdateString("cbReceiptReference", Guid.NewGuid().ToString())
|
||||||
|
|
||||||
' Reference to the original receipt from the database
|
|
||||||
json.UpdateString("cbPreviousReceiptReference", _reference)
|
json.UpdateString("cbPreviousReceiptReference", _reference)
|
||||||
|
|
||||||
' Storno = POS receipt + reversal + implicit transaction
|
If TSEisOnline Then
|
||||||
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ReversalReceipt Or FtReceiptCases.ImplicitTransaction
|
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ReversalReceipt Or FtReceiptCases.ImplicitTransaction
|
||||||
|
Else
|
||||||
|
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ReversalReceipt Or FtReceiptCases.FailedReceipt Or FtReceiptCases.ImplicitTransaction
|
||||||
|
End If
|
||||||
|
|
||||||
|
ElseIf _receiptCase = "Retry" Then
|
||||||
|
|
||||||
|
'Receipt-Request nach Kommunikationsfehler
|
||||||
|
'dieselbe cbReceiptReference verwenden
|
||||||
|
'dieselben cbChargeItems und cbPayItems mitsenden
|
||||||
|
'optional dieselbe cbTerminalID
|
||||||
|
|
||||||
|
json.UpdateString("cbReceiptReference", _reference)
|
||||||
|
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ReceiptRequest
|
||||||
|
|
||||||
Else
|
Else
|
||||||
|
|
||||||
' New reference for a normal receipt
|
' New reference for a normal receipt
|
||||||
json.UpdateString("cbReceiptReference", Guid.NewGuid().ToString())
|
json.UpdateString("cbReceiptReference", Guid.NewGuid().ToString())
|
||||||
|
If TSEisOnline Then
|
||||||
' Normal sale
|
|
||||||
|
|
||||||
'Select Case _receiptCase
|
|
||||||
' Case "Eingang"
|
|
||||||
' receipCase = FtReceiptCases.CashIn Or FtReceiptCases.ImplicitTransaction
|
|
||||||
' Case "Ausgang"
|
|
||||||
' receipCase = FtReceiptCases.CashOut Or FtReceiptCases.ImplicitTransaction
|
|
||||||
' Case Else
|
|
||||||
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ImplicitTransaction
|
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ImplicitTransaction
|
||||||
'End Select
|
Else
|
||||||
|
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.FailedReceipt Or FtReceiptCases.ImplicitTransaction
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
json.UpdateString("ftReceiptCase", receipCase.ToString())
|
json.UpdateString("ftReceiptCase", receipCase.ToString())
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Dim chargeItems = json.AppendArray("cbChargeItems")
|
Dim chargeItems = json.AppendArray("cbChargeItems")
|
||||||
|
|
||||||
For Each p In POS
|
For Each p In POS
|
||||||
|
|
||||||
If chargeItems.AddObjectAt(-1) Then
|
If chargeItems.AddObjectAt(-1) Then
|
||||||
|
|
||||||
|
|
||||||
|
Dim quantity As Double = p.Anzahl
|
||||||
|
Dim unitPrice As Double = p.Preis
|
||||||
|
Dim lineAmount As Double = p.Betrag
|
||||||
|
|
||||||
|
'bei Storno negieren (BEI DE nur einen Teil)!
|
||||||
|
'To cancel a receipt, resend it with this flag added to the ftReceiptCase and inverse the cbPayItems OR cbChargeItems (This is not the same behavior as described in the general part — in Germany, this flag requires only one of cbPayItems or cbChargeItems to be negative, and both must not be negative at the same time)'
|
||||||
|
'https://docs.fiskaltrust.cloud/docs/poscreators/middleware-doc/germany/reference-tables/ftreceiptcase
|
||||||
|
|
||||||
|
If _receiptCase = "Storno" Then
|
||||||
|
quantity = quantity * -1
|
||||||
|
lineAmount = lineAmount * -1
|
||||||
|
End If
|
||||||
|
|
||||||
Dim item As Chilkat.JsonObject = chargeItems.ObjectAt(chargeItems.Size - 1)
|
Dim item As Chilkat.JsonObject = chargeItems.ObjectAt(chargeItems.Size - 1)
|
||||||
item.UpdateInt("Quantity", p.Anzahl)
|
item.UpdateInt("Quantity", quantity)
|
||||||
item.UpdateNumber("Amount", p.Preis.ToString().Replace(",", "."))
|
item.UpdateNumber("Amount", lineAmount)
|
||||||
item.UpdateNumber("VATRate", vat.ToString().Replace(",", "."))
|
item.UpdateNumber("VATRate", vat)
|
||||||
item.UpdateString("Description", p.LeistungsBez)
|
item.UpdateString("Description", p.LeistungsBez)
|
||||||
|
|
||||||
Dim ChargeItemCase As Long
|
Dim ChargeItemCase As Long
|
||||||
@@ -430,8 +525,6 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
json.UpdateString("cbUser", "Admin")
|
json.UpdateString("cbUser", "Admin")
|
||||||
json.UpdateString("ftReceiptCaseData", "")
|
json.UpdateString("ftReceiptCaseData", "")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Dim chargeItems = json.AppendArray("cbChargeItems")
|
Dim chargeItems = json.AppendArray("cbChargeItems")
|
||||||
Dim payItems = json.AppendArray("cbPayItems")
|
Dim payItems = json.AppendArray("cbPayItems")
|
||||||
|
|
||||||
@@ -573,7 +666,14 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
.ftReceiptIdentification = json.StringOf("ftReceiptIdentification")
|
.ftReceiptIdentification = json.StringOf("ftReceiptIdentification")
|
||||||
.ftReceiptMoment = ftReceiptMoment.GetAsTimestamp(getAsLocal)
|
.ftReceiptMoment = ftReceiptMoment.GetAsTimestamp(getAsLocal)
|
||||||
.ftState = json.StringOf("ftState")
|
.ftState = json.StringOf("ftState")
|
||||||
|
|
||||||
|
If beleg_temp Is Nothing Then
|
||||||
|
.ftBeleg_ID = -1
|
||||||
|
Else
|
||||||
.ftBeleg_ID = beleg_temp.BelegNr
|
.ftBeleg_ID = beleg_temp.BelegNr
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
saved = .SAVE()
|
saved = .SAVE()
|
||||||
|
|
||||||
If saved AndAlso beleg_temp IsNot Nothing Then
|
If saved AndAlso beleg_temp IsNot Nothing Then
|
||||||
@@ -594,8 +694,8 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
|
|
||||||
Dim num As Integer = json.SizeOfArray("ftSignatures")
|
Dim num As Integer = json.SizeOfArray("ftSignatures")
|
||||||
If num = 0 Then
|
If num = 0 Then
|
||||||
MsgBox("Signatureinheit liefert keine (gültige) Signatur, Signatureinheit ausgefallen!")
|
MsgBox("Signatureinheit liefert keine (gültige) Signatur, Signatureinheit ausgefallen" & vbNewLine & "Beleg kann nachträglich signiert werden!")
|
||||||
Return True
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim Signatures As Chilkat.JsonArray = json.ArrayOf("ftSignatures")
|
Dim Signatures As Chilkat.JsonArray = json.ArrayOf("ftSignatures")
|
||||||
@@ -714,15 +814,8 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
Private Sub Log(message As String)
|
|
||||||
Console.WriteLine(message)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Public Function PrettyPrintJson(jsonText As String) As String
|
Public Function PrettyPrintJson(jsonText As String) As String
|
||||||
|
|
||||||
Dim json As New Chilkat.JsonObject()
|
Dim json As New Chilkat.JsonObject()
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ Public Class cRKSV
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
Shared Function insertRKSVFiskaltrustAsync(ByVal kasse As cRKSV_Kasse, beleg_temp As EABeleg, ByVal RKSV_Beleg_Id As Integer, ByVal summeBRUTTO As Double, TEST As Boolean, ByRef QR_CodeString As String, ByRef LastJWS As String, ByRef typOfReceiptCase As String) As Boolean
|
Shared Function insertRKSVFiskaltrustAsync(ByVal kasse As cRKSV_Kasse, beleg_temp As EABeleg, ByVal RKSV_Beleg_Id As Integer, ByVal summeBRUTTO As Double, TEST As Boolean, ByRef QR_CodeString As String, ByRef LastJWS As String, ByRef typOfReceiptCase As String, Optional reference As String = "", Optional TSEisOnline As Boolean = True) As Boolean
|
||||||
Try
|
Try
|
||||||
|
|
||||||
|
|
||||||
@@ -133,7 +133,7 @@ Public Class cRKSV
|
|||||||
'End If
|
'End If
|
||||||
Else
|
Else
|
||||||
Dim client As New cFiskaltrustClient_chilkat(kasse.rksv_FT_RestServiceURL, kasse.rksv_FT_CashboxID, kasse.rksv_FT_AccessToken, kasse.rksv_FT_Country)
|
Dim client As New cFiskaltrustClient_chilkat(kasse.rksv_FT_RestServiceURL, kasse.rksv_FT_CashboxID, kasse.rksv_FT_AccessToken, kasse.rksv_FT_Country)
|
||||||
Dim result = client.SignReceipt(summeBRUTTO, steuersatz, beleg_temp.POS, kindOfPayment, kasse.rksv_id, typOfReceiptCase)
|
Dim result = client.SignReceipt(summeBRUTTO, steuersatz, beleg_temp.POS, kindOfPayment, kasse.rksv_id, typOfReceiptCase, reference, TSEisOnline)
|
||||||
If result <> "" Then
|
If result <> "" Then
|
||||||
Return client.saveRKSV_FT(result, QR_CodeString, beleg_temp, False)
|
Return client.saveRKSV_FT(result, QR_CodeString, beleg_temp, False)
|
||||||
Else
|
Else
|
||||||
@@ -968,7 +968,7 @@ Public Class cRKSV
|
|||||||
End Try
|
End Try
|
||||||
Return False
|
Return False
|
||||||
End Function
|
End Function
|
||||||
Shared Function stornoRKSV_FT(ByVal kasse As cRKSV_Kasse, ByVal beleg_temp As EABeleg, ByRef QR_CodeString As String, ByRef LastJWS As String, ByRef answer As String) As Boolean
|
Shared Function stornoRKSV_FT(ByVal kasse As cRKSV_Kasse, ByVal beleg_temp As EABeleg, ByRef QR_CodeString As String, ByRef LastJWS As String, ByRef answer As String, TSEisOnline As Boolean) As Boolean
|
||||||
Try
|
Try
|
||||||
|
|
||||||
If beleg_temp.rksv_BelegId <= 0 Then
|
If beleg_temp.rksv_BelegId <= 0 Then
|
||||||
@@ -1013,7 +1013,7 @@ Public Class cRKSV
|
|||||||
|
|
||||||
Else
|
Else
|
||||||
Dim client As New cFiskaltrustClient_chilkat(kasse.rksv_FT_RestServiceURL, kasse.rksv_FT_CashboxID, kasse.rksv_FT_AccessToken, kasse.rksv_FT_Country)
|
Dim client As New cFiskaltrustClient_chilkat(kasse.rksv_FT_RestServiceURL, kasse.rksv_FT_CashboxID, kasse.rksv_FT_AccessToken, kasse.rksv_FT_Country)
|
||||||
Dim result = client.ChancelReceipt(beleg_temp.FT_ReceiptReference, beleg_temp.rksv_umsatz, steuersatz, beleg_temp.POS, kindOfPayment, kasse.rksv_id)
|
Dim result = client.ChancelReceipt(beleg_temp.FT_ReceiptReference, beleg_temp.rksv_umsatz, steuersatz, beleg_temp.POS, kindOfPayment, kasse.rksv_id, TSEisOnline)
|
||||||
If result <> "" Then
|
If result <> "" Then
|
||||||
client.saveRKSV_FT(result, QR_CodeString, beleg_temp, True)
|
client.saveRKSV_FT(result, QR_CodeString, beleg_temp, True)
|
||||||
Else
|
Else
|
||||||
|
|||||||
@@ -404,6 +404,12 @@ Public Class cAutomailversand
|
|||||||
Subject = Subject.Replace("%Belegtyp%", belegtyp)
|
Subject = Subject.Replace("%Belegtyp%", belegtyp)
|
||||||
Subject = Subject.Replace("%BelegNr%", txtRgNr)
|
Subject = Subject.Replace("%BelegNr%", txtRgNr)
|
||||||
|
|
||||||
|
If RECHNUNG IsNot Nothing Then
|
||||||
|
Subject = Subject.Replace("%FilialNr%%AbfertigungsNr%-%UnterNr%", RECHNUNG.FilialenNr & "-" & RECHNUNG.AbfertigungsNr & "-" & RECHNUNG.UnterNr)
|
||||||
|
Else
|
||||||
|
Subject = Subject.Replace("%FilialNr%%AbfertigungsNr%-%UnterNr%", "")
|
||||||
|
End If
|
||||||
|
|
||||||
TextHTML &= r.txt_text
|
TextHTML &= r.txt_text
|
||||||
|
|
||||||
TextHTML = TextHTML.Replace("%Belegtyp%", belegtyp)
|
TextHTML = TextHTML.Replace("%Belegtyp%", belegtyp)
|
||||||
|
|||||||
@@ -3058,6 +3058,9 @@ Public Class cFakturierung
|
|||||||
Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(RECHNUNG.Firma_ID)
|
Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(RECHNUNG.Firma_ID)
|
||||||
Dim desc As InvoiceDescriptor = InvoiceDescriptor.CreateInvoice(addYeartoRgNr(FIRMA.Firma_ID, RECHNUNG.Buchungsjahr) & RECHNUNG.RechnungsNr, RECHNUNG.RechnungsDatum, IIf(FIRMA.Firma_ID = 26, CurrencyCodes.GBP, CurrencyCodes.EUR))
|
Dim desc As InvoiceDescriptor = InvoiceDescriptor.CreateInvoice(addYeartoRgNr(FIRMA.Firma_ID, RECHNUNG.Buchungsjahr) & RECHNUNG.RechnungsNr, RECHNUNG.RechnungsDatum, IIf(FIRMA.Firma_ID = 26, CurrencyCodes.GBP, CurrencyCodes.EUR))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Select Case RECHNUNG.BelegartenKz
|
Select Case RECHNUNG.BelegartenKz
|
||||||
Case "AR"
|
Case "AR"
|
||||||
desc.Name = "SPEDITIONSRECHNUNG"
|
desc.Name = "SPEDITIONSRECHNUNG"
|
||||||
@@ -3108,6 +3111,11 @@ Public Class cFakturierung
|
|||||||
|
|
||||||
' Optionally, to support Peppol-----------------------------
|
' Optionally, to support Peppol-----------------------------
|
||||||
|
|
||||||
|
If RECHNUNG.FilialenNr > 0 AndAlso RECHNUNG.AbfertigungsNr > 0 Then
|
||||||
|
Dim lrn = RECHNUNG.FilialenNr & "/" & RECHNUNG.AbfertigungsNr
|
||||||
|
desc.AddAdditionalReferencedDocument(lrn, AdditionalReferencedDocumentTypeCode.ReferenceDocument)
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
If Not IsDBNull(RECHNUNG.RechnungsUstIdNr) AndAlso RECHNUNG.RechnungsUstIdNr IsNot Nothing AndAlso Not IsDBNull(RECHNUNG.RechnungsUstIdKz) AndAlso RECHNUNG.RechnungsUstIdKz IsNot Nothing Then
|
If Not IsDBNull(RECHNUNG.RechnungsUstIdNr) AndAlso RECHNUNG.RechnungsUstIdNr IsNot Nothing AndAlso Not IsDBNull(RECHNUNG.RechnungsUstIdKz) AndAlso RECHNUNG.RechnungsUstIdKz IsNot Nothing Then
|
||||||
desc.AddBuyerTaxRegistration(RECHNUNG.RechnungsUstIdKz & RECHNUNG.RechnungsUstIdNr, TaxRegistrationSchemeID.VA)
|
desc.AddBuyerTaxRegistration(RECHNUNG.RechnungsUstIdKz & RECHNUNG.RechnungsUstIdNr, TaxRegistrationSchemeID.VA)
|
||||||
@@ -3297,6 +3305,17 @@ Public Class cFakturierung
|
|||||||
End Select
|
End Select
|
||||||
|
|
||||||
|
|
||||||
|
If Not IsDBNull(ROW("FilialenNr")) AndAlso Not IsDBNull(ROW("AbfertigungsNr")) Then
|
||||||
|
|
||||||
|
Dim filialenNr As String = ROW("FilialenNr").ToString().Trim()
|
||||||
|
Dim abfertigungsNr As String = ROW("AbfertigungsNr").ToString().Trim()
|
||||||
|
|
||||||
|
If filialenNr <> String.Empty AndAlso abfertigungsNr <> String.Empty Then
|
||||||
|
Dim lrn As String = filialenNr & "/" & abfertigungsNr
|
||||||
|
desc.AddAdditionalReferencedDocument(lrn, AdditionalReferencedDocumentTypeCode.ReferenceDocument)
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
'Die „Berechnung BT-10“ bezieht sich auf das Feld BT-10 „Buyer reference“ (Käuferreferenz) in der elektronischen Rechnung, speziell im XRechnung-Standard. Dieses Feld dient zur Angabe der Leitweg-ID
|
'Die „Berechnung BT-10“ bezieht sich auf das Feld BT-10 „Buyer reference“ (Käuferreferenz) in der elektronischen Rechnung, speziell im XRechnung-Standard. Dieses Feld dient zur Angabe der Leitweg-ID
|
||||||
'für öffentliche Auftraggeber oder anderer Referenzinformationen für interne Zuordnungsprozesse.
|
'für öffentliche Auftraggeber oder anderer Referenzinformationen für interne Zuordnungsprozesse.
|
||||||
'Die Leitweg-ID ist in Deutschland eine Pflichtangabe für elektronische Rechnungen an die Bundesverwaltung und muss vom Rechnungssteller vom Auftraggeber erhalten werden.
|
'Die Leitweg-ID ist in Deutschland eine Pflichtangabe für elektronische Rechnungen an die Bundesverwaltung und muss vom Rechnungssteller vom Auftraggeber erhalten werden.
|
||||||
|
|||||||
@@ -5,7 +5,9 @@ Imports System.Reflection
|
|||||||
Imports System.Text.RegularExpressions
|
Imports System.Text.RegularExpressions
|
||||||
Imports System.Windows.Documents
|
Imports System.Windows.Documents
|
||||||
Imports com.sun.tools.internal.ws.wsdl.document.mime
|
Imports com.sun.tools.internal.ws.wsdl.document.mime
|
||||||
|
Imports DAKOSY_Worker.Abgabenbescheid_008
|
||||||
Imports GrapeCity.ActiveReports
|
Imports GrapeCity.ActiveReports
|
||||||
|
Imports GrapeCity.DataVisualization.TypeScript
|
||||||
Imports itextsharp.text.pdf
|
Imports itextsharp.text.pdf
|
||||||
Imports Microsoft.Office.Interop
|
Imports Microsoft.Office.Interop
|
||||||
Imports VERAG_PROG_ALLGEMEIN
|
Imports VERAG_PROG_ALLGEMEIN
|
||||||
@@ -1316,7 +1318,10 @@ Public Class frmFormulare
|
|||||||
Dim ADR As New cAdressen(KundenNr)
|
Dim ADR As New cAdressen(KundenNr)
|
||||||
|
|
||||||
If ADR.Name_1 IsNot Nothing AndAlso ADR.Name_1 <> "" Then
|
If ADR.Name_1 IsNot Nothing AndAlso ADR.Name_1 <> "" Then
|
||||||
Bez = "_" & ADR.Name_1
|
|
||||||
|
Bez = "_" & ADR.Name_1.ToString
|
||||||
|
Bez = VERAG_PROG_ALLGEMEIN.cDATENSERVER.replaceInvalidCahr(Bez)
|
||||||
|
Bez = Regex.Replace(Bez, "[" & Regex.Escape(New String(System.IO.Path.GetInvalidFileNameChars())) & "]", "_")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
17
SDL/kassenbuch/frmBelegNeu.Designer.vb
generated
17
SDL/kassenbuch/frmBelegNeu.Designer.vb
generated
@@ -147,6 +147,7 @@ Partial Class frmBelegNeu
|
|||||||
Me.FlowLayoutPanel2 = New System.Windows.Forms.FlowLayoutPanel()
|
Me.FlowLayoutPanel2 = New System.Windows.Forms.FlowLayoutPanel()
|
||||||
Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
||||||
Me.cm_FT = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
Me.cm_FT = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
||||||
|
Me.lblTSEisOffline = New System.Windows.Forms.Label()
|
||||||
CType(Me.dgvBelegPos, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.dgvBelegPos, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.pnl.SuspendLayout()
|
Me.pnl.SuspendLayout()
|
||||||
Me.pnlData.SuspendLayout()
|
Me.pnlData.SuspendLayout()
|
||||||
@@ -648,6 +649,7 @@ Partial Class frmBelegNeu
|
|||||||
'pnlData
|
'pnlData
|
||||||
'
|
'
|
||||||
Me.pnlData.BackColor = System.Drawing.Color.FromArgb(CType(CType(244, Byte), Integer), CType(CType(244, Byte), Integer), CType(CType(244, Byte), Integer))
|
Me.pnlData.BackColor = System.Drawing.Color.FromArgb(CType(CType(244, Byte), Integer), CType(CType(244, Byte), Integer), CType(CType(244, Byte), Integer))
|
||||||
|
Me.pnlData.Controls.Add(Me.lblTSEisOffline)
|
||||||
Me.pnlData.Controls.Add(Me.cboBuchungsoforterzeugen)
|
Me.pnlData.Controls.Add(Me.cboBuchungsoforterzeugen)
|
||||||
Me.pnlData.Controls.Add(Me.lblErr_Fahrer)
|
Me.pnlData.Controls.Add(Me.lblErr_Fahrer)
|
||||||
Me.pnlData.Controls.Add(Me.lblErr_Pass)
|
Me.pnlData.Controls.Add(Me.lblErr_Pass)
|
||||||
@@ -1784,6 +1786,20 @@ Partial Class frmBelegNeu
|
|||||||
Me.cm_FT.Name = "ContextMenuStrip1"
|
Me.cm_FT.Name = "ContextMenuStrip1"
|
||||||
Me.cm_FT.Size = New System.Drawing.Size(61, 4)
|
Me.cm_FT.Size = New System.Drawing.Size(61, 4)
|
||||||
'
|
'
|
||||||
|
'lblTSEisOffline
|
||||||
|
'
|
||||||
|
Me.lblTSEisOffline.AutoSize = True
|
||||||
|
Me.lblTSEisOffline.BackColor = System.Drawing.Color.Red
|
||||||
|
Me.lblTSEisOffline.Cursor = System.Windows.Forms.Cursors.Default
|
||||||
|
Me.lblTSEisOffline.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||||
|
Me.lblTSEisOffline.ForeColor = System.Drawing.Color.White
|
||||||
|
Me.lblTSEisOffline.Location = New System.Drawing.Point(154, 35)
|
||||||
|
Me.lblTSEisOffline.Name = "lblTSEisOffline"
|
||||||
|
Me.lblTSEisOffline.Size = New System.Drawing.Size(125, 20)
|
||||||
|
Me.lblTSEisOffline.TabIndex = 50
|
||||||
|
Me.lblTSEisOffline.Text = "TSE ist Offline"
|
||||||
|
Me.lblTSEisOffline.Visible = False
|
||||||
|
'
|
||||||
'frmBelegNeu
|
'frmBelegNeu
|
||||||
'
|
'
|
||||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
|
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
|
||||||
@@ -1935,4 +1951,5 @@ Partial Class frmBelegNeu
|
|||||||
Friend WithEvents cboBuchungsoforterzeugen As CheckBox
|
Friend WithEvents cboBuchungsoforterzeugen As CheckBox
|
||||||
Friend WithEvents Button4 As Button
|
Friend WithEvents Button4 As Button
|
||||||
Friend WithEvents cm_FT As ContextMenuStrip
|
Friend WithEvents cm_FT As ContextMenuStrip
|
||||||
|
Friend WithEvents lblTSEisOffline As Label
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -45,6 +45,7 @@ Public Class frmBelegNeu
|
|||||||
|
|
||||||
Public aktFiliale As Integer = 0
|
Public aktFiliale As Integer = 0
|
||||||
Public aktAbfertigungsNr As Integer = 0
|
Public aktAbfertigungsNr As Integer = 0
|
||||||
|
Dim tseIsOnline As Boolean = False
|
||||||
|
|
||||||
Public Sub New(PERSONAL As cPersonal, PERSONAL_LG As cPersonal, EA As String)
|
Public Sub New(PERSONAL As cPersonal, PERSONAL_LG As cPersonal, EA As String)
|
||||||
|
|
||||||
@@ -231,9 +232,8 @@ Public Class frmBelegNeu
|
|||||||
' Case "WAI" : cboFiliale.changeItem(5103)
|
' Case "WAI" : cboFiliale.changeItem(5103)
|
||||||
' End Select
|
' End Select
|
||||||
|
|
||||||
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ADMINFUNCTIONS", "SDL") Then
|
|
||||||
Button4.Visible = True
|
Button4.Visible = checkFiskaltrust()
|
||||||
End If
|
|
||||||
|
|
||||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||||
cboKassen.Enabled = True
|
cboKassen.Enabled = True
|
||||||
@@ -1704,17 +1704,20 @@ Public Class frmBelegNeu
|
|||||||
Dim answer = ""
|
Dim answer = ""
|
||||||
|
|
||||||
Dim verarbeitet As Boolean = False
|
Dim verarbeitet As Boolean = False
|
||||||
Dim isFiskaltrust As Boolean = False
|
Dim isFiskaltrust = checkFiskaltrust()
|
||||||
If KASSE.rksv_FT_RestServiceURL <> "" Then
|
|
||||||
Dim result = cRKSV.insertRKSVFiskaltrustAsync(KASSE, BELEG, RKSV_Beleg_Id, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), TESTBUCHUNG, QR_CodeString, LastJWS, "Verkauf")
|
If isFiskaltrust Then
|
||||||
'result.Wait()
|
Dim result = cRKSV.insertRKSVFiskaltrustAsync(KASSE, BELEG, RKSV_Beleg_Id, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), TESTBUCHUNG, QR_CodeString, LastJWS, ReceiptCaseIntern.VERKAUF)
|
||||||
verarbeitet = result
|
verarbeitet = result
|
||||||
isFiskaltrust = True
|
|
||||||
Else
|
Else
|
||||||
verarbeitet = 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) 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
verarbeitet = 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) 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If Not verarbeitet AndAlso Not isFiskaltrust Then
|
If Not verarbeitet Then
|
||||||
|
|
||||||
|
If Not isFiskaltrust Then
|
||||||
|
|
||||||
If Not TESTBUCHUNG Then
|
If Not TESTBUCHUNG Then
|
||||||
|
|
||||||
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, If(EA = "E", summeBRUTTO * -1, summeBRUTTO))
|
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, If(EA = "E", summeBRUTTO * -1, summeBRUTTO))
|
||||||
@@ -1725,9 +1728,16 @@ Public Class frmBelegNeu
|
|||||||
MsgBox(Errmsg, MsgBoxStyle.Critical)
|
MsgBox(Errmsg, MsgBoxStyle.Critical)
|
||||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(Errmsg, "", System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(Errmsg, "", System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
Me.Cursor = Cursors.Default : warnClose = False : Me.Close() : Exit Sub
|
Me.Cursor = Cursors.Default : warnClose = False : Me.Close() : Exit Sub
|
||||||
|
Else
|
||||||
|
BELEG.FT_MissingSignature = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If Not isFiskaltrust Then KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
|
If Not isFiskaltrust Then KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
|
||||||
|
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
@@ -1873,6 +1883,21 @@ Public Class frmBelegNeu
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
Private Function checkFiskaltrust()
|
||||||
|
|
||||||
|
If PERSONAL.cRKSV_Kasse IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_RestServiceURL IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_CashboxID IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_AccessToken IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_Country IsNot Nothing Then
|
||||||
|
|
||||||
|
|
||||||
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country)
|
||||||
|
Return client_chilkat.isFiskaltrust()
|
||||||
|
|
||||||
|
Else
|
||||||
|
Return False
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub openZahlungsbeleg(daid As Integer)
|
Private Sub openZahlungsbeleg(daid As Integer)
|
||||||
@@ -1896,84 +1921,29 @@ Public Class frmBelegNeu
|
|||||||
Private Sub cboKassen_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboKassen.SelectedIndexChanged
|
Private Sub cboKassen_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboKassen.SelectedIndexChanged
|
||||||
|
|
||||||
KASSE.LOAD(cboKassen._value)
|
KASSE.LOAD(cboKassen._value)
|
||||||
'Button4.Visible = KASSE.rksv_FT_RestServiceURL <> ""
|
|
||||||
|
If KASSE IsNot Nothing AndAlso KASSE.rksv_aktiv AndAlso KASSE.rksv_FT_RestServiceURL IsNot Nothing Then
|
||||||
|
|
||||||
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country)
|
||||||
|
If client_chilkat.isFiskaltrust() Then
|
||||||
|
Dim result As String = client_chilkat.Echo(KASSE.rksv_bez & " " & KASSE.rksv_FT_Country & " - ")
|
||||||
|
|
||||||
|
If result IsNot Nothing AndAlso result.Contains("VERBINDUNG OK") Then
|
||||||
|
tseIsOnline = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
lblTSEisOffline.Visible = Not tseIsOnline
|
||||||
|
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub Button4_ClickAsync(sender As Object, e As EventArgs) Handles Button4.Click
|
Private Sub Button4_ClickAsync(sender As Object, e As EventArgs) Handles Button4.Click
|
||||||
|
|
||||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
If Not cm_FT.Items.ContainsKey("ft_neusignierung") AndAlso BELEG IsNot Nothing AndAlso (BELEG.gebucht Or BELEG.gebuchtStorno) AndAlso BELEG.FT_setMissingSignatureFailed Then
|
||||||
'nur im Testsystem!
|
Dim ids = New ToolStripMenuItem() With {.Text = "Beleg neu signieren", .Name = "ft_neusignierung", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
||||||
If Not cm_FT.Items.ContainsKey("bar") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Barverkauf", .Name = "bar", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(ids)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("storno") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Storno", .Name = "storno", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(ids)
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("null") Then
|
|
||||||
Dim plose = New ToolStripMenuItem() With {.Text = "Nullbeleg", .Name = "null", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
cm_FT.Items.Add(plose)
|
|
||||||
AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("monthly") Then
|
|
||||||
Dim rmc = New ToolStripMenuItem() With {.Text = "Monatabschluss", .Name = "monthly", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler rmc.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(rmc)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("daily") Then
|
|
||||||
Dim rmc = New ToolStripMenuItem() With {.Text = "Tagesabschluss", .Name = "daily", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler rmc.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(rmc)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("yearly") Then
|
|
||||||
Dim uta = New ToolStripMenuItem() With {.Text = "Jahresabschluss", .Name = "yearly", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler uta.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(uta)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("test") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Verbindungstest", .Name = "verbindungstest", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(ids)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("version") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Journal - Version", .Name = "version", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(ids)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("signatures") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Journal - Signaturen", .Name = "signatures", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(ids)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("action") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Journal - Action", .Name = "action", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(ids)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("queueitem") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Journal - Queue", .Name = "queueitem", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
|
||||||
cm_FT.Items.Add(ids)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("exportJournal") Then
|
|
||||||
Dim ids = New ToolStripMenuItem() With {.Text = "Journal - EXPORT", .Name = "exportJournal", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
||||||
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
||||||
cm_FT.Items.Add(ids)
|
cm_FT.Items.Add(ids)
|
||||||
End If
|
End If
|
||||||
@@ -1994,153 +1964,64 @@ Public Class frmBelegNeu
|
|||||||
|
|
||||||
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country)
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country)
|
||||||
|
|
||||||
If item.Name = "null" Then
|
If item.Name = "ft_neusignierung" Then
|
||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie wirklich einen 0-Beleg an die TSE schicken?", vbYesNoCancel) Then
|
If BELEG IsNot Nothing Then
|
||||||
|
If vbYes = MsgBox("Möchten den nicht signierten Beleg " & BELEG.BelegNr & " an die TSE schicken?", vbYesNoCancel) Then
|
||||||
|
|
||||||
Dim result As String = client_chilkat.SignNullReceipt(KASSE.rksv_id)
|
Dim result As Boolean = False
|
||||||
|
|
||||||
|
If BELEG.gebucht Or BELEG.gebuchtStorno Then
|
||||||
|
|
||||||
If result <> "" Then
|
Dim summeBRUTTO As Double = BELEG.rksv_umsatz
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ElseIf item.Name = "verbindungstest" Then
|
|
||||||
|
|
||||||
Dim result As String = client_chilkat.Echo(KASSE.rksv_bez & " " & KASSE.rksv_FT_Country & " - ")
|
|
||||||
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
ElseIf item.Name = "storno" Then
|
|
||||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
|
||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie wirklich einen Teststorno durchführen?", vbYesNoCancel) Then
|
|
||||||
|
|
||||||
Dim result As String = client_chilkat.ChancelReceipt_test("-1", KASSE.rksv_id)
|
|
||||||
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
Else
|
|
||||||
MsgBox("ACHTUNG, im Produktivsystem nicht möglich!")
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
ElseIf item.Name = "bar" Then
|
|
||||||
|
|
||||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
|
||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie wirklich einen Testzahlung durchführen?", vbYesNoCancel) Then
|
|
||||||
|
|
||||||
Dim result As String = client_chilkat.SignReceipt_test(KASSE.rksv_id)
|
|
||||||
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
If vbYes = MsgBox(result & vbNewLine & vbNewLine & "Testdaten in DB speichern?", vbYesNoCancel) Then
|
|
||||||
Dim QR_CodeString As String = ""
|
Dim QR_CodeString As String = ""
|
||||||
client_chilkat.saveRKSV_FT(result, QR_CodeString, Nothing, False)
|
Dim LastJWS As String = ""
|
||||||
End If
|
Dim EA As String = ""
|
||||||
|
Dim kindOfReceiptCase As String = ""
|
||||||
|
|
||||||
|
Select Case BELEG.Beleg_TYP
|
||||||
|
Case "0"
|
||||||
|
Return False 'null Belege nicht senden!
|
||||||
|
Case "E" 'Eingang/Ausgang
|
||||||
|
If BELEG.Belegart = "1" Then
|
||||||
|
EA = "E"
|
||||||
Else
|
Else
|
||||||
Return False
|
EA = "A"
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
|
||||||
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
|
Case "L"
|
||||||
|
If BELEG.Belegart = "1" Then
|
||||||
|
EA = "E"
|
||||||
Else
|
Else
|
||||||
MsgBox("ACHTUNG, im Produktivsystem nicht möglich!")
|
EA = "A"
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Case Else
|
||||||
|
If BELEG.Belegart = "1" Then
|
||||||
ElseIf item.Name = "monthly" Then
|
EA = "E"
|
||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie wirklich einen Monatsbeleg an die TSE schicken, anschließend kann dieses Monat kein Beleg mehr signiert werden!", vbYesNoCancel) Then
|
|
||||||
|
|
||||||
Dim result As String = client_chilkat.SignClosingReceipt(item.Name, KASSE.rksv_id, item.Name)
|
|
||||||
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
ElseIf item.Name = "daily" Then
|
|
||||||
'Nur DE
|
|
||||||
If KASSE.rksv_FT_Country = "DE" Then
|
|
||||||
Dim result As String = client_chilkat.SignClosingReceipt(item.Name, KASSE.rksv_id, item.Name)
|
|
||||||
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
|
||||||
|
|
||||||
End If
|
|
||||||
Else
|
Else
|
||||||
MsgBox("nicht für AT-Kassen möglich!")
|
EA = "A"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
ElseIf item.Name = "yearly" Then
|
|
||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie wirklich einen Jahresbeleg an die TSE schicken, anschließend kann in diesem Jahr kein Beleg mehr signiert werden!", vbYesNoCancel) Then
|
|
||||||
|
|
||||||
|
|
||||||
Dim result As String = client_chilkat.SignClosingReceipt(item.Name, KASSE.rksv_id, item.Name)
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
ElseIf (item.Name = "version" Or item.Name = "action" Or item.Name = "signatures" Or item.Name = "queueitem" Or item.Name = "exportJournal") Then
|
|
||||||
|
|
||||||
Dim result As String = ""
|
|
||||||
Select Case item.Name
|
|
||||||
Case "version" : result = client_chilkat.Journal(FtJournalType.VersionInformation)
|
|
||||||
Case "action" : result = client_chilkat.Journal(FtJournalType.ActionJournal)
|
|
||||||
Case "signatures" : result = client_chilkat.Journal(FtJournalType.ReceiptJournal)
|
|
||||||
Case "queueitem" : result = client_chilkat.Journal(FtJournalType.QueueItemJournal)
|
|
||||||
Case "exportJournal" : result = client_chilkat.Journal(FtJournalType.ReceiptJournal)
|
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
If result <> "" Then
|
|
||||||
|
|
||||||
MsgBox(client_chilkat.PrettyPrintJson(result))
|
result = cRKSV.insertRKSVFiskaltrustAsync(PERSONAL.cRKSV_Kasse, BELEG, BELEG.rksv_BelegId, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), False, QR_CodeString, LastJWS, "", "", tseIsOnline) 'receiptCase leer und Reference leer!!!!!
|
||||||
|
|
||||||
If item.Name = "exportJournal" Then
|
If result Then
|
||||||
client_chilkat.exportJournal(result)
|
BELEG.FT_setMissingSignatureFailed = False
|
||||||
|
BELEG.SAVE()
|
||||||
|
MsgBox("Beleg erfolgreich gesendet!")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If result Then
|
||||||
|
init()
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|||||||
@@ -224,13 +224,16 @@ Public Class frmFremdbeleg
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Dim answer = ""
|
Dim answer = ""
|
||||||
Dim isFiskaltrust As Boolean = False
|
|
||||||
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country)
|
||||||
|
Dim isFiskaltrust As Boolean = client_chilkat.isFiskaltrust()
|
||||||
|
|
||||||
If KASSE.rksv_aktiv Then
|
If KASSE.rksv_aktiv Then
|
||||||
|
|
||||||
Dim verarbeitet As Boolean = False
|
Dim verarbeitet As Boolean = False
|
||||||
|
|
||||||
If KASSE.rksv_FT_RestServiceURL <> "" Then
|
If KASSE.rksv_FT_RestServiceURL <> "" Then
|
||||||
Dim result = cRKSV.insertRKSVFiskaltrustAsync(KASSE, BELEG, RKSV_Beleg_Id, summeBRUTTO, TESTBUCHUNG, QR_CodeString, LastJWS, IIf(Art = 1, "Eingang", "Ausgang"))
|
Dim result = cRKSV.insertRKSVFiskaltrustAsync(KASSE, BELEG, RKSV_Beleg_Id, summeBRUTTO, TESTBUCHUNG, QR_CodeString, LastJWS, IIf(Art = 1, ReceiptCaseIntern.EINGANG, ReceiptCaseIntern.AUSGANG))
|
||||||
'result.Wait()
|
'result.Wait()
|
||||||
verarbeitet = result
|
verarbeitet = result
|
||||||
Else
|
Else
|
||||||
@@ -238,7 +241,10 @@ Public Class frmFremdbeleg
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
If Not verarbeitet AndAlso Not isFiskaltrust Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
If Not verarbeitet Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
||||||
|
|
||||||
|
If Not isFiskaltrust Then
|
||||||
|
|
||||||
If Not TESTBUCHUNG Then
|
If Not TESTBUCHUNG Then
|
||||||
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, BELEG.rksv_umsatz * -1)
|
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, BELEG.rksv_umsatz * -1)
|
||||||
cRKSV.DELETE(BELEG, KASSE.rksv_firma)
|
cRKSV.DELETE(BELEG, KASSE.rksv_firma)
|
||||||
@@ -247,6 +253,10 @@ Public Class frmFremdbeleg
|
|||||||
' BELEG = cRKSV.STORNO(BELEG, "Programmfehler")
|
' BELEG = cRKSV.STORNO(BELEG, "Programmfehler")
|
||||||
'MsgBox("Programmfehler bei der digitalen Signatur.")
|
'MsgBox("Programmfehler bei der digitalen Signatur.")
|
||||||
Me.Cursor = Cursors.Default : Me.Close() : Exit Sub
|
Me.Cursor = Cursors.Default : Me.Close() : Exit Sub
|
||||||
|
Else
|
||||||
|
BELEG.FT_MissingSignature = True 'nachträgliche Signierung, Beleg NICHT löschen!!
|
||||||
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|||||||
58
SDL/kassenbuch/frmKassenbuch.Designer.vb
generated
58
SDL/kassenbuch/frmKassenbuch.Designer.vb
generated
@@ -66,6 +66,8 @@ Partial Class frmKassenbuch
|
|||||||
Me.Label14 = New System.Windows.Forms.Label()
|
Me.Label14 = New System.Windows.Forms.Label()
|
||||||
Me.Label13 = New System.Windows.Forms.Label()
|
Me.Label13 = New System.Windows.Forms.Label()
|
||||||
Me.pnlMain = New System.Windows.Forms.Panel()
|
Me.pnlMain = New System.Windows.Forms.Panel()
|
||||||
|
Me.pbInitialStart = New System.Windows.Forms.PictureBox()
|
||||||
|
Me.lblInitStart = New System.Windows.Forms.Label()
|
||||||
Me.lblFiskaltrustHeader = New System.Windows.Forms.Label()
|
Me.lblFiskaltrustHeader = New System.Windows.Forms.Label()
|
||||||
Me.picTSEOnline = New System.Windows.Forms.PictureBox()
|
Me.picTSEOnline = New System.Windows.Forms.PictureBox()
|
||||||
Me.lblTSEOnline = New System.Windows.Forms.Label()
|
Me.lblTSEOnline = New System.Windows.Forms.Label()
|
||||||
@@ -95,8 +97,6 @@ Partial Class frmKassenbuch
|
|||||||
Me.UsrCntlTestsystem1 = New VERAG_PROG_ALLGEMEIN.usrCntlTestsystem()
|
Me.UsrCntlTestsystem1 = New VERAG_PROG_ALLGEMEIN.usrCntlTestsystem()
|
||||||
Me.Button1 = New System.Windows.Forms.Button()
|
Me.Button1 = New System.Windows.Forms.Button()
|
||||||
Me.cm_FT = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
Me.cm_FT = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
||||||
Me.lblInitStart = New System.Windows.Forms.Label()
|
|
||||||
Me.pbInitialStart = New System.Windows.Forms.PictureBox()
|
|
||||||
CType(Me.DataGridView1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.DataGridView1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.DataGridView2, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.DataGridView2, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.pnlTop.SuspendLayout()
|
Me.pnlTop.SuspendLayout()
|
||||||
@@ -104,13 +104,13 @@ Partial Class frmKassenbuch
|
|||||||
Me.pnlSuche.SuspendLayout()
|
Me.pnlSuche.SuspendLayout()
|
||||||
Me.pnlSearch.SuspendLayout()
|
Me.pnlSearch.SuspendLayout()
|
||||||
Me.pnlMain.SuspendLayout()
|
Me.pnlMain.SuspendLayout()
|
||||||
|
CType(Me.pbInitialStart, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.picTSEOnline, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.picTSEOnline, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.picNULLbeleg, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.picNULLbeleg, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.picJahres, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.picJahres, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.picMonats, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.picMonats, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.picTages, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.picTages, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.pnl.SuspendLayout()
|
Me.pnl.SuspendLayout()
|
||||||
CType(Me.pbInitialStart, System.ComponentModel.ISupportInitialize).BeginInit()
|
|
||||||
Me.SuspendLayout()
|
Me.SuspendLayout()
|
||||||
'
|
'
|
||||||
'Label2
|
'Label2
|
||||||
@@ -668,6 +668,29 @@ Partial Class frmKassenbuch
|
|||||||
Me.pnlMain.Size = New System.Drawing.Size(778, 433)
|
Me.pnlMain.Size = New System.Drawing.Size(778, 433)
|
||||||
Me.pnlMain.TabIndex = 425
|
Me.pnlMain.TabIndex = 425
|
||||||
'
|
'
|
||||||
|
'pbInitialStart
|
||||||
|
'
|
||||||
|
Me.pbInitialStart.BackgroundImage = Global.SDL.My.Resources.Resources.ok
|
||||||
|
Me.pbInitialStart.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
|
||||||
|
Me.pbInitialStart.Location = New System.Drawing.Point(614, 67)
|
||||||
|
Me.pbInitialStart.Name = "pbInitialStart"
|
||||||
|
Me.pbInitialStart.Size = New System.Drawing.Size(27, 20)
|
||||||
|
Me.pbInitialStart.TabIndex = 452
|
||||||
|
Me.pbInitialStart.TabStop = False
|
||||||
|
Me.pbInitialStart.Visible = False
|
||||||
|
'
|
||||||
|
'lblInitStart
|
||||||
|
'
|
||||||
|
Me.lblInitStart.AutoSize = True
|
||||||
|
Me.lblInitStart.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||||
|
Me.lblInitStart.ForeColor = System.Drawing.Color.Black
|
||||||
|
Me.lblInitStart.Location = New System.Drawing.Point(655, 71)
|
||||||
|
Me.lblInitStart.Name = "lblInitStart"
|
||||||
|
Me.lblInitStart.Size = New System.Drawing.Size(70, 16)
|
||||||
|
Me.lblInitStart.TabIndex = 451
|
||||||
|
Me.lblInitStart.Text = "Initial Start "
|
||||||
|
Me.lblInitStart.Visible = False
|
||||||
|
'
|
||||||
'lblFiskaltrustHeader
|
'lblFiskaltrustHeader
|
||||||
'
|
'
|
||||||
Me.lblFiskaltrustHeader.AutoSize = True
|
Me.lblFiskaltrustHeader.AutoSize = True
|
||||||
@@ -834,7 +857,7 @@ Partial Class frmKassenbuch
|
|||||||
Me.lbldailyCashboxClosing.AutoSize = True
|
Me.lbldailyCashboxClosing.AutoSize = True
|
||||||
Me.lbldailyCashboxClosing.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
Me.lbldailyCashboxClosing.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||||
Me.lbldailyCashboxClosing.ForeColor = System.Drawing.Color.Red
|
Me.lbldailyCashboxClosing.ForeColor = System.Drawing.Color.Red
|
||||||
Me.lbldailyCashboxClosing.Location = New System.Drawing.Point(361, 5)
|
Me.lbldailyCashboxClosing.Location = New System.Drawing.Point(363, 5)
|
||||||
Me.lbldailyCashboxClosing.Name = "lbldailyCashboxClosing"
|
Me.lbldailyCashboxClosing.Name = "lbldailyCashboxClosing"
|
||||||
Me.lbldailyCashboxClosing.Size = New System.Drawing.Size(410, 16)
|
Me.lbldailyCashboxClosing.Size = New System.Drawing.Size(410, 16)
|
||||||
Me.lbldailyCashboxClosing.TabIndex = 436
|
Me.lbldailyCashboxClosing.TabIndex = 436
|
||||||
@@ -972,7 +995,7 @@ Partial Class frmKassenbuch
|
|||||||
'lblRKSV_KASSEN_Bez
|
'lblRKSV_KASSEN_Bez
|
||||||
'
|
'
|
||||||
Me.lblRKSV_KASSEN_Bez.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
Me.lblRKSV_KASSEN_Bez.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||||
Me.lblRKSV_KASSEN_Bez.Location = New System.Drawing.Point(463, 3)
|
Me.lblRKSV_KASSEN_Bez.Location = New System.Drawing.Point(542, 3)
|
||||||
Me.lblRKSV_KASSEN_Bez.Name = "lblRKSV_KASSEN_Bez"
|
Me.lblRKSV_KASSEN_Bez.Name = "lblRKSV_KASSEN_Bez"
|
||||||
Me.lblRKSV_KASSEN_Bez.Size = New System.Drawing.Size(231, 13)
|
Me.lblRKSV_KASSEN_Bez.Size = New System.Drawing.Size(231, 13)
|
||||||
Me.lblRKSV_KASSEN_Bez.TabIndex = 426
|
Me.lblRKSV_KASSEN_Bez.TabIndex = 426
|
||||||
@@ -1025,29 +1048,6 @@ Partial Class frmKassenbuch
|
|||||||
Me.cm_FT.Name = "ContextMenuStrip1"
|
Me.cm_FT.Name = "ContextMenuStrip1"
|
||||||
Me.cm_FT.Size = New System.Drawing.Size(61, 4)
|
Me.cm_FT.Size = New System.Drawing.Size(61, 4)
|
||||||
'
|
'
|
||||||
'lblInitStart
|
|
||||||
'
|
|
||||||
Me.lblInitStart.AutoSize = True
|
|
||||||
Me.lblInitStart.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
|
||||||
Me.lblInitStart.ForeColor = System.Drawing.Color.Black
|
|
||||||
Me.lblInitStart.Location = New System.Drawing.Point(655, 71)
|
|
||||||
Me.lblInitStart.Name = "lblInitStart"
|
|
||||||
Me.lblInitStart.Size = New System.Drawing.Size(70, 16)
|
|
||||||
Me.lblInitStart.TabIndex = 451
|
|
||||||
Me.lblInitStart.Text = "Initial Start "
|
|
||||||
Me.lblInitStart.Visible = False
|
|
||||||
'
|
|
||||||
'pbInitialStart
|
|
||||||
'
|
|
||||||
Me.pbInitialStart.BackgroundImage = Global.SDL.My.Resources.Resources.ok
|
|
||||||
Me.pbInitialStart.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
|
|
||||||
Me.pbInitialStart.Location = New System.Drawing.Point(614, 67)
|
|
||||||
Me.pbInitialStart.Name = "pbInitialStart"
|
|
||||||
Me.pbInitialStart.Size = New System.Drawing.Size(27, 20)
|
|
||||||
Me.pbInitialStart.TabIndex = 452
|
|
||||||
Me.pbInitialStart.TabStop = False
|
|
||||||
Me.pbInitialStart.Visible = False
|
|
||||||
'
|
|
||||||
'frmKassenbuch
|
'frmKassenbuch
|
||||||
'
|
'
|
||||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||||
@@ -1072,6 +1072,7 @@ Partial Class frmKassenbuch
|
|||||||
Me.pnlSearch.PerformLayout()
|
Me.pnlSearch.PerformLayout()
|
||||||
Me.pnlMain.ResumeLayout(False)
|
Me.pnlMain.ResumeLayout(False)
|
||||||
Me.pnlMain.PerformLayout()
|
Me.pnlMain.PerformLayout()
|
||||||
|
CType(Me.pbInitialStart, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
CType(Me.picTSEOnline, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.picTSEOnline, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
CType(Me.picNULLbeleg, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.picNULLbeleg, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
CType(Me.picJahres, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.picJahres, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
@@ -1079,7 +1080,6 @@ Partial Class frmKassenbuch
|
|||||||
CType(Me.picTages, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.picTages, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
Me.pnl.ResumeLayout(False)
|
Me.pnl.ResumeLayout(False)
|
||||||
Me.pnl.PerformLayout()
|
Me.pnl.PerformLayout()
|
||||||
CType(Me.pbInitialStart, System.ComponentModel.ISupportInitialize).EndInit()
|
|
||||||
Me.ResumeLayout(False)
|
Me.ResumeLayout(False)
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
Imports GrapeCity.DataVisualization.TypeScript
|
Imports DocumentFormat.OpenXml.Drawing
|
||||||
Imports SDL.RKSVServer
|
|
||||||
|
|
||||||
Public Class frmKassenbuch
|
Public Class frmKassenbuch
|
||||||
Dim SQL As New SQL
|
Dim SQL As New SQL
|
||||||
@@ -22,6 +21,7 @@ Public Class frmKassenbuch
|
|||||||
Dim InitialStartIsCreated As Boolean = True
|
Dim InitialStartIsCreated As Boolean = True
|
||||||
Dim OutOfOrderIsCreated As Boolean = False
|
Dim OutOfOrderIsCreated As Boolean = False
|
||||||
Dim TSEIsOnline As Boolean = False
|
Dim TSEIsOnline As Boolean = False
|
||||||
|
Dim MiddlewareIsOnline As Boolean = False
|
||||||
|
|
||||||
Dim isADMIN As Boolean = False
|
Dim isADMIN As Boolean = False
|
||||||
|
|
||||||
@@ -106,7 +106,7 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub InitFiskaltrust(isOnline As Boolean, tagesabschluss As Boolean, Montagsabschluss As Boolean, Jahresabschluss As Boolean, NULLBeleg As Boolean, initialStart As Boolean)
|
Private Sub InitFiskaltrust(TSEisOnline As Boolean, tagesabschluss As Boolean, Montagsabschluss As Boolean, Jahresabschluss As Boolean, NULLBeleg As Boolean, initialStart As Boolean)
|
||||||
|
|
||||||
lblTSEOnline.Visible = True
|
lblTSEOnline.Visible = True
|
||||||
lblTages.Visible = True
|
lblTages.Visible = True
|
||||||
@@ -123,7 +123,7 @@ Public Class frmKassenbuch
|
|||||||
picTSEOnline.Visible = True
|
picTSEOnline.Visible = True
|
||||||
pbInitialStart.Visible = True
|
pbInitialStart.Visible = True
|
||||||
|
|
||||||
showPic(isOnline, picTSEOnline)
|
showPic(TSEisOnline, picTSEOnline)
|
||||||
showPic(tagesabschluss, picTages)
|
showPic(tagesabschluss, picTages)
|
||||||
showPic(monatsabschlussIsSet, picMonats)
|
showPic(monatsabschlussIsSet, picMonats)
|
||||||
showPic(Jahresabschluss, picJahres)
|
showPic(Jahresabschluss, picJahres)
|
||||||
@@ -158,9 +158,6 @@ Public Class frmKassenbuch
|
|||||||
btnBelegAusgang.Enabled = False
|
btnBelegAusgang.Enabled = False
|
||||||
pnl.Visible = True
|
pnl.Visible = True
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
'sqlstr = "SELECT Sum(tblKassenbuch.Soll) AS Soll, Sum(tblKassenbuch.Haben) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo " &
|
'sqlstr = "SELECT Sum(tblKassenbuch.Soll) AS Soll, Sum(tblKassenbuch.Haben) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo " &
|
||||||
' " FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer " &
|
' " FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer " &
|
||||||
' " WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' AND tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' " &
|
' " WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' AND tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' " &
|
||||||
@@ -209,7 +206,12 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If PERSONAL.cRKSV_Kasse.rksv_FT_CashboxID IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_RestServiceURL IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_AccessToken IsNot Nothing Then
|
lbldailyCashboxClosing.Text = ""
|
||||||
|
|
||||||
|
If PERSONAL.cRKSV_Kasse IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_RestServiceURL IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_CashboxID IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_AccessToken IsNot Nothing AndAlso PERSONAL.cRKSV_Kasse.rksv_FT_Country IsNot Nothing Then
|
||||||
|
|
||||||
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(PERSONAL.cRKSV_Kasse.rksv_FT_RestServiceURL, PERSONAL.cRKSV_Kasse.rksv_FT_CashboxID, PERSONAL.cRKSV_Kasse.rksv_FT_AccessToken, PERSONAL.cRKSV_Kasse.rksv_FT_Country)
|
||||||
|
If client_chilkat.isFiskaltrust() Then
|
||||||
|
|
||||||
resetFIskaltrust()
|
resetFIskaltrust()
|
||||||
|
|
||||||
@@ -229,9 +231,7 @@ Public Class frmKassenbuch
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
If Not (PERSONAL.cRKSV_Kasse.rksv_FT_OutOfOrderCreated Is Nothing OrElse IsDBNull(PERSONAL.cRKSV_Kasse.rksv_FT_OutOfOrderCreated)) Then
|
If Not (PERSONAL.cRKSV_Kasse.rksv_FT_OutOfOrderCreated Is Nothing OrElse IsDBNull(PERSONAL.cRKSV_Kasse.rksv_FT_OutOfOrderCreated)) Then
|
||||||
|
|
||||||
OutOfOrderIsCreated = True
|
OutOfOrderIsCreated = True
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
@@ -239,22 +239,39 @@ Public Class frmKassenbuch
|
|||||||
InitialStartIsCreated = False
|
InitialStartIsCreated = False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim client_chilkat As New cFiskaltrustClient_chilkat(PERSONAL.cRKSV_Kasse.rksv_FT_RestServiceURL, PERSONAL.cRKSV_Kasse.rksv_FT_CashboxID, PERSONAL.cRKSV_Kasse.rksv_FT_AccessToken, PERSONAL.cRKSV_Kasse.rksv_FT_Country)
|
|
||||||
Dim result As String = client_chilkat.Echo(PERSONAL.cRKSV_Kasse.rksv_bez & " " & PERSONAL.cRKSV_Kasse.rksv_FT_Country & " - ")
|
Dim result As String = client_chilkat.Echo(PERSONAL.cRKSV_Kasse.rksv_bez & " " & PERSONAL.cRKSV_Kasse.rksv_FT_Country & " - ")
|
||||||
|
|
||||||
|
If result IsNot Nothing Then
|
||||||
If result.Contains("VERBINDUNG OK") Then
|
If result.Contains("VERBINDUNG OK") Then
|
||||||
TSEIsOnline = True
|
TSEIsOnline = True
|
||||||
|
MiddlewareIsOnline = True
|
||||||
|
Else
|
||||||
|
TSEIsOnline = False
|
||||||
|
MiddlewareIsOnline = True
|
||||||
End If
|
End If
|
||||||
|
Else
|
||||||
|
TSEIsOnline = False
|
||||||
|
MiddlewareIsOnline = False
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
InitFiskaltrust(TSEIsOnline, tagesabschlussIsSet, monatsabschlussIsSet, jahresabschlussIsSet, NULLBelegIsCreated, InitialStartIsCreated)
|
InitFiskaltrust(TSEIsOnline, tagesabschlussIsSet, monatsabschlussIsSet, jahresabschlussIsSet, NULLBelegIsCreated, InitialStartIsCreated)
|
||||||
|
|
||||||
If Not NULLBelegIsCreated Then
|
If Not MiddlewareIsOnline Then
|
||||||
diasableBarverkauf("NULLBELEG")
|
diasableBarverkauf("MIDDLEWARE")
|
||||||
|
ElseIf Not InitialStartIsCreated Then
|
||||||
|
diasableBarverkauf("INITIALSTART")
|
||||||
ElseIf tagesabschlussIsSet Then
|
ElseIf tagesabschlussIsSet Then
|
||||||
diasableBarverkauf("TAGESABSCHLUSS")
|
diasableBarverkauf("TAGESABSCHLUSS")
|
||||||
ElseIf OutOfOrderIsCreated Then
|
ElseIf OutOfOrderIsCreated Then
|
||||||
diasableBarverkauf("OUTOFORDER")
|
diasableBarverkauf("OUTOFORDER")
|
||||||
Else
|
Else
|
||||||
|
lbldailyCashboxClosing.Text = ""
|
||||||
|
If Not TSEIsOnline Then
|
||||||
|
lbldailyCashboxClosing.Text = "TSE ist OFFLINE: Belege werden nachträglich signiert!"
|
||||||
|
End If
|
||||||
|
|
||||||
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("KASSE", Me) Then
|
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("KASSE", Me) Then
|
||||||
btnBelegKunde.Enabled = True
|
btnBelegKunde.Enabled = True
|
||||||
btnBelegAusgang.Enabled = True
|
btnBelegAusgang.Enabled = True
|
||||||
@@ -269,6 +286,8 @@ Public Class frmKassenbuch
|
|||||||
Button11.Visible = False
|
Button11.Visible = False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
' Label9.Text = PERSONAL.Name
|
' Label9.Text = PERSONAL.Name
|
||||||
DataGridView2.ClearSelection()
|
DataGridView2.ClearSelection()
|
||||||
@@ -277,9 +296,11 @@ Public Class frmKassenbuch
|
|||||||
Private Sub diasableBarverkauf(status)
|
Private Sub diasableBarverkauf(status)
|
||||||
|
|
||||||
Select Case status
|
Select Case status
|
||||||
Case "NULLBELEG" : lbldailyCashboxClosing.Text = "Es wurde noch kein 0-Beleg über FT erstellt!"
|
' Case "NULLBELEG" : lbldailyCashboxClosing.Text = "Es wurde kein 0-Beleg erstellt (OPTIONAL)"
|
||||||
Case "TAGESABSCHLUSS" : lbldailyCashboxClosing.Text = "Tagesabschluss für heute wurde bereits durchgeführt!"
|
Case "INITIALSTART" : lbldailyCashboxClosing.Text = "Kasse wurde noch nicht gestartet!"
|
||||||
|
Case "TAGESABSCHLUSS" : lbldailyCashboxClosing.Text = "Tagesabschluss wurde bereits durchgeführt!"
|
||||||
Case "OUTOFORDER" : lbldailyCashboxClosing.Text = "STATUS: INAKTIV!"
|
Case "OUTOFORDER" : lbldailyCashboxClosing.Text = "STATUS: INAKTIV!"
|
||||||
|
Case "MIDDLEWARE" : lbldailyCashboxClosing.Text = "Middleware ist OFFLINE!"
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
btnBelegKunde.Enabled = False
|
btnBelegKunde.Enabled = False
|
||||||
@@ -321,7 +342,7 @@ Public Class frmKassenbuch
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Dim searchdate As Date = CDate("01." & Now.Month & "." & Now.Year)
|
Dim searchdate As Date = CDate("01." & Now.Month & "." & Now.Year)
|
||||||
Sub initDgv()
|
Sub initDgv(Optional isFiskaltrust As Boolean = False)
|
||||||
|
|
||||||
With DataGridView2
|
With DataGridView2
|
||||||
.Columns.Clear()
|
.Columns.Clear()
|
||||||
@@ -343,9 +364,10 @@ Public Class frmKassenbuch
|
|||||||
If PERSONAL.isLeihgeldkasse Then
|
If PERSONAL.isLeihgeldkasse Then
|
||||||
lgTxt = ",[Fahrer],[Passnummer] "
|
lgTxt = ",[Fahrer],[Passnummer] "
|
||||||
End If
|
End If
|
||||||
|
|
||||||
.SET_SQL("SELECT b.rksv_BelegId, b.BelegDat, CASE WHEN b.Belegart=1 THEN 'E' ELSE 'A' END as Belegart,CASE WHEN b.Beleg_TYP='E' THEN rksv_umsatz ELSE (SELECT sum( betrag ) FROM tblEABelegposition WHERE (b.BelegNr = tblEABelegposition.BelegNr) AND (b.BelegDat = tblEABelegposition.BelegDat) AND (b.Benutzer = tblEABelegposition.Benutzer) AND (b.Niederlassung = tblEABelegposition.Niederlassung) AND (b.Mandant = tblEABelegposition.Mandant ) ) END as Betrag, b.Ordnungsbegriff, b.BelegNr, b.Frachtführer, " &
|
.SET_SQL("SELECT b.rksv_BelegId, b.BelegDat, CASE WHEN b.Belegart=1 THEN 'E' ELSE 'A' END as Belegart,CASE WHEN b.Beleg_TYP='E' THEN rksv_umsatz ELSE (SELECT sum( betrag ) FROM tblEABelegposition WHERE (b.BelegNr = tblEABelegposition.BelegNr) AND (b.BelegDat = tblEABelegposition.BelegDat) AND (b.Benutzer = tblEABelegposition.Benutzer) AND (b.Niederlassung = tblEABelegposition.Niederlassung) AND (b.Mandant = tblEABelegposition.Mandant ) ) END as Betrag, b.Ordnungsbegriff, b.BelegNr, b.Frachtführer, " &
|
||||||
" CASE WHEN b.storniert=1 THEN 'JA' ELSE '' END as [storniert], b.Beleg_TYP ,b.Benutzer " & benutzerBezTMP & lgTxt & ", b.ECZahlungsPerAPI as EC,b.ECZahlungsNr as ECNr, mit_username as kassiert" &
|
" CASE WHEN b.storniert=1 THEN 'JA' ELSE '' END as [storniert], b.Beleg_TYP ,b.Benutzer " & benutzerBezTMP & lgTxt & ", b.ECZahlungsPerAPI as EC,b.ECZahlungsNr as ECNr, mit_username as kassiert,[FT_MissingSignature]" &
|
||||||
" FROM tblEABelegnummer as b LEFT JOIN " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & " .[ADMIN].[dbo].[tblMitarbeiter] on durchfuehrender_Benutzer = mit_id WHERE b.Mandant='" & PERSONAL.Mandant & "' AND b.Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' " &
|
" FROM tblEABelegnummer as b LEFT JOIN " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & " .[ADMIN].[dbo].[tblMitarbeiter] on durchfuehrender_Benutzer = mit_id WHERE b.Mandant='" & PERSONAL.Mandant & "' AND b.Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' AND b.rksv_BelegId > -1" &
|
||||||
" ORDER BY b.rksv_BelegId DESC, b.[upsize_ts] desc;", "FMZOLL")
|
" ORDER BY b.rksv_BelegId DESC, b.[upsize_ts] desc;", "FMZOLL")
|
||||||
' .DataSource = SQL.loadDgvBySql("SELECT b.rksv_BelegId, b.BelegDat, CASE WHEN b.Belegart=1 THEN 'E' ELSE 'A' END as Belegart,CASE WHEN b.Beleg_TYP='E' THEN rksv_umsatz ELSE (SELECT sum( betrag ) FROM tblEABelegposition WHERE (b.BelegNr = tblEABelegposition.BelegNr) AND (b.BelegDat = tblEABelegposition.BelegDat) AND (b.Benutzer = tblEABelegposition.Benutzer) AND (b.Niederlassung = tblEABelegposition.Niederlassung) AND (b.Mandant = tblEABelegposition.Mandant ) ) END as Betrag, b.Ordnungsbegriff, b.BelegNr, b.Frachtführer, " &
|
' .DataSource = SQL.loadDgvBySql("SELECT b.rksv_BelegId, b.BelegDat, CASE WHEN b.Belegart=1 THEN 'E' ELSE 'A' END as Belegart,CASE WHEN b.Beleg_TYP='E' THEN rksv_umsatz ELSE (SELECT sum( betrag ) FROM tblEABelegposition WHERE (b.BelegNr = tblEABelegposition.BelegNr) AND (b.BelegDat = tblEABelegposition.BelegDat) AND (b.Benutzer = tblEABelegposition.Benutzer) AND (b.Niederlassung = tblEABelegposition.Niederlassung) AND (b.Mandant = tblEABelegposition.Mandant ) ) END as Betrag, b.Ordnungsbegriff, b.BelegNr, b.Frachtführer, " &
|
||||||
' " CASE WHEN b.storniert=1 THEN 'JA' ELSE '' END as [storniert], b.Beleg_TYP ,b.Benutzer " & benutzerBezTMP &
|
' " CASE WHEN b.storniert=1 THEN 'JA' ELSE '' END as [storniert], b.Beleg_TYP ,b.Benutzer " & benutzerBezTMP &
|
||||||
@@ -385,10 +407,22 @@ Public Class frmKassenbuch
|
|||||||
.Columns("Passnummer").Visible = False
|
.Columns("Passnummer").Visible = False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If .Columns.Contains("FT_MissingSignature") Then
|
||||||
|
.Columns("FT_MissingSignature").HeaderText = "fehl Sig."
|
||||||
|
.Columns("FT_MissingSignature").Width = 45
|
||||||
|
For Each r As DataGridViewRow In .Rows
|
||||||
|
If Not IsDBNull(r.Cells("FT_MissingSignature").Value) AndAlso r.Cells("FT_MissingSignature").Value Then
|
||||||
|
r.DefaultCellStyle.ForeColor = Color.Red
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
If master_Kasse Then
|
If master_Kasse Then
|
||||||
.Columns("BenutzerBez").HeaderText = "Benutzer" 'gibts bei bei master
|
.Columns("BenutzerBez").HeaderText = "Benutzer" 'gibts bei bei master
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
For Each r As DataGridViewRow In .Rows
|
For Each r As DataGridViewRow In .Rows
|
||||||
If r.Cells("storniert").Value = "JA" Then
|
If r.Cells("storniert").Value = "JA" Then
|
||||||
r.DefaultCellStyle.ForeColor = Color.Red
|
r.DefaultCellStyle.ForeColor = Color.Red
|
||||||
@@ -1160,9 +1194,11 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
If KASSETmp.rksv_FT_CashboxID IsNot Nothing AndAlso KASSETmp.rksv_FT_CashboxID <> "" AndAlso IsNumeric(KASSETmp.rksv_FT_CashboxID) AndAlso BELEGTmp.FT_ReceiptReference IsNot Nothing Then
|
If KASSETmp.rksv_FT_CashboxID IsNot Nothing AndAlso KASSETmp.rksv_FT_CashboxID <> "" AndAlso IsNumeric(KASSETmp.rksv_FT_CashboxID) AndAlso BELEGTmp.FT_ReceiptReference IsNot Nothing Then
|
||||||
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSETmp.rksv_FT_RestServiceURL, KASSETmp.rksv_FT_CashboxID, KASSETmp.rksv_FT_AccessToken, KASSETmp.rksv_FT_Country)
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSETmp.rksv_FT_RestServiceURL, KASSETmp.rksv_FT_CashboxID, KASSETmp.rksv_FT_AccessToken, KASSETmp.rksv_FT_Country)
|
||||||
If Not cRKSV.stornoRKSV_FT(KASSETmp, BELEGTmp, QRQString, LastJWS, answer) Then
|
If Not cRKSV.stornoRKSV_FT(KASSETmp, BELEGTmp, QRQString, LastJWS, answer, TSEIsOnline) Then
|
||||||
MessageBox.Show("Fehler bei der RKSV-FT-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
MessageBox.Show("Fehler bei der RKSV-FT-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
Exit Sub
|
Exit Sub
|
||||||
|
Else
|
||||||
|
BELEGTmp.rksv_qr = QRQString
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
@@ -1242,7 +1278,7 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
If KASSETmp.rksv_FT_CashboxID IsNot Nothing AndAlso KASSETmp.rksv_FT_CashboxID <> "" AndAlso BELEGTmp.FT_ReceiptReference IsNot Nothing Then
|
If KASSETmp.rksv_FT_CashboxID IsNot Nothing AndAlso KASSETmp.rksv_FT_CashboxID <> "" AndAlso BELEGTmp.FT_ReceiptReference IsNot Nothing Then
|
||||||
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSETmp.rksv_FT_RestServiceURL, KASSETmp.rksv_FT_CashboxID, KASSETmp.rksv_FT_AccessToken, KASSETmp.rksv_FT_Country)
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSETmp.rksv_FT_RestServiceURL, KASSETmp.rksv_FT_CashboxID, KASSETmp.rksv_FT_AccessToken, KASSETmp.rksv_FT_Country)
|
||||||
If Not cRKSV.stornoRKSV_FT(KASSETmp, BELEGTmp, QRQString, LastJWS, answer) Then
|
If Not cRKSV.stornoRKSV_FT(KASSETmp, BELEGTmp, QRQString, LastJWS, answer, TSEIsOnline) Then
|
||||||
MessageBox.Show("Fehler bei der RKSV-FT-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
MessageBox.Show("Fehler bei der RKSV-FT-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
@@ -1546,6 +1582,8 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
Private Sub Button11_Click_1(sender As Object, e As EventArgs) Handles Button11.Click
|
Private Sub Button11_Click_1(sender As Object, e As EventArgs) Handles Button11.Click
|
||||||
|
|
||||||
|
cm_FT.Items.Clear()
|
||||||
|
|
||||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||||
'nur im Testsystem!
|
'nur im Testsystem!
|
||||||
If Not cm_FT.Items.ContainsKey("bar") AndAlso isADMIN Then
|
If Not cm_FT.Items.ContainsKey("bar") AndAlso isADMIN Then
|
||||||
@@ -1574,7 +1612,7 @@ Public Class frmKassenbuch
|
|||||||
AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked
|
AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If Not cm_FT.Items.ContainsKey("initialstart") AndAlso isADMIN AndAlso Not OutOfOrderIsCreated Then
|
If Not cm_FT.Items.ContainsKey("initialstart") AndAlso isADMIN AndAlso Not OutOfOrderIsCreated AndAlso Not InitialStartIsCreated Then
|
||||||
Dim plose = New ToolStripMenuItem() With {.Text = "Initial Start", .Name = "initialstart", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
Dim plose = New ToolStripMenuItem() With {.Text = "Initial Start", .Name = "initialstart", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
||||||
cm_FT.Items.Add(plose)
|
cm_FT.Items.Add(plose)
|
||||||
AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked
|
AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked
|
||||||
@@ -1634,6 +1672,13 @@ Public Class frmKassenbuch
|
|||||||
cm_FT.Items.Add(ids)
|
cm_FT.Items.Add(ids)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If Not cm_FT.Items.ContainsKey("setMissingSignatures") Then
|
||||||
|
Dim ids = New ToolStripMenuItem() With {.Text = "fehlende Signaturen nachtragen", .Name = "setMissingSignatures", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
||||||
|
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
|
||||||
|
cm_FT.Items.Add(ids)
|
||||||
|
End If
|
||||||
|
|
||||||
cm_FT.Show(Cursor.Position)
|
cm_FT.Show(Cursor.Position)
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
@@ -1674,6 +1719,93 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
ElseIf item.Name = "setMissingSignatures" Then
|
||||||
|
|
||||||
|
Dim dt As DataTable = SQL.loadDgvBySql("SELECT * FROM [tblEABelegnummer] WHERE [rksv_id]='" & PERSONAL.cRKSV_KasseID & "' AND isnull(FT_MissingSignature,0)=1", "FMZOLL")
|
||||||
|
|
||||||
|
If dt.Rows.Count = 0 Then
|
||||||
|
MsgBox("Für die Kasse " & PERSONAL.cRKSV_Kasse.rksv_bez & " existieren keine unsignierten Belege!")
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
If vbYes = MsgBox("Möchten die " & dt.Rows.Count & " nicht signierten Belege an die TSE schicken?", vbYesNoCancel) Then
|
||||||
|
|
||||||
|
Dim result As Boolean = False
|
||||||
|
For Each r As DataRow In dt.Rows
|
||||||
|
|
||||||
|
Dim BELEG = New EABeleg("LOAD", r("Mandant"), r("Niederlassung"), r("Benutzer"), r("BelegNr"), r("BelegDat"))
|
||||||
|
Dim summeBRUTTO As Double = BELEG.rksv_umsatz
|
||||||
|
Dim QR_CodeString As String = ""
|
||||||
|
Dim LastJWS As String = ""
|
||||||
|
Dim EA As String = ""
|
||||||
|
Dim kindOfReceiptCase As String = ""
|
||||||
|
|
||||||
|
Select Case BELEG.Beleg_TYP
|
||||||
|
Case "0"
|
||||||
|
Continue For 'null Belege nicht senden!
|
||||||
|
Case "E" 'Eingang/Ausgang
|
||||||
|
If BELEG.Belegart = "1" Then
|
||||||
|
EA = "E"
|
||||||
|
Else
|
||||||
|
EA = "A"
|
||||||
|
End If
|
||||||
|
Case "L"
|
||||||
|
If BELEG.Belegart = "1" Then
|
||||||
|
EA = "E"
|
||||||
|
Else
|
||||||
|
EA = "A"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Case Else
|
||||||
|
If BELEG.Belegart = "1" Then
|
||||||
|
EA = "E"
|
||||||
|
Else
|
||||||
|
EA = "A"
|
||||||
|
End If
|
||||||
|
End Select
|
||||||
|
|
||||||
|
kindOfReceiptCase = ReceiptCaseIntern.WIEDERHOLUNG
|
||||||
|
|
||||||
|
result = cRKSV.insertRKSVFiskaltrustAsync(PERSONAL.cRKSV_Kasse, BELEG, BELEG.rksv_BelegId, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), False, QR_CodeString, LastJWS, kindOfReceiptCase, BELEG.FT_ReceiptReference)
|
||||||
|
|
||||||
|
If result Then
|
||||||
|
BELEG.FT_MissingSignature = False
|
||||||
|
BELEG.SAVE()
|
||||||
|
Else
|
||||||
|
MsgBox("Fehler bei der nachträglichen Signierung von BelegNr: " & BELEG.BelegNr & vbNewLine & "Beleg wurde nicht in der QUEUE gefunden!" & vbNewLine & "Beleg muss erneut an Fiskaltrust gesendet werden!")
|
||||||
|
BELEG.FT_MissingSignature = False
|
||||||
|
BELEG.FT_setMissingSignatureFailed = True
|
||||||
|
BELEG.SAVE()
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
|
||||||
|
If result Then
|
||||||
|
init()
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ElseIf item.Name = "tempoutoforder" Then
|
||||||
|
|
||||||
|
|
||||||
|
If vbYes = MsgBox("Möchten Sie einen temp. Ausfall an die TSE schicken?" & vbNewLine & "Falls die TSE zwar Online ist, jedoch ein technischer Fehler beim Signieren besteht", vbYesNoCancel) Then
|
||||||
|
|
||||||
|
Dim result As String = client_chilkat.SignOutOfOrderReceipt(PERSONAL.cRKSV_Kasse.rksv_id)
|
||||||
|
|
||||||
|
If result <> "" Then
|
||||||
|
|
||||||
|
MsgBox(client_chilkat.PrettyPrintJson(result))
|
||||||
|
|
||||||
|
Dim rksv As New cRKSV_Kasse(PERSONAL.cRKSV_Kasse.rksv_id)
|
||||||
|
rksv.SET_OUTOFORDERBELEG()
|
||||||
|
init()
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ElseIf item.Name = "outoforder" Then
|
ElseIf item.Name = "outoforder" Then
|
||||||
@@ -1701,7 +1833,7 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie einen Start an die TSE schicken?", vbYesNoCancel) Then
|
If vbYes = MsgBox("Möchten Sie einen Start an die TSE schicken?", vbYesNoCancel) Then
|
||||||
|
|
||||||
Dim result As String = client_chilkat.SignOInitialOperationReceipt(PERSONAL.cRKSV_Kasse.rksv_id)
|
Dim result As String = client_chilkat.SignInitialOperationReceipt(PERSONAL.cRKSV_Kasse.rksv_id)
|
||||||
|
|
||||||
|
|
||||||
If result <> "" Then
|
If result <> "" Then
|
||||||
@@ -1733,7 +1865,7 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie wirklich einen Teststorno durchführen?" & vbNewLine & "NIEMALS auf einer produktiven TSE durchführen!", vbYesNoCancel) Then
|
If vbYes = MsgBox("Möchten Sie wirklich einen Teststorno durchführen?" & vbNewLine & "NIEMALS auf einer produktiven TSE durchführen!", vbYesNoCancel) Then
|
||||||
|
|
||||||
Dim result As String = client_chilkat.ChancelReceipt_test("-1", PERSONAL.cRKSV_Kasse.rksv_id)
|
Dim result As String = client_chilkat.ChancelReceipt_test("-1", PERSONAL.cRKSV_Kasse.rksv_id, TSEIsOnline)
|
||||||
|
|
||||||
If result <> "" Then
|
If result <> "" Then
|
||||||
|
|
||||||
@@ -1754,7 +1886,7 @@ Public Class frmKassenbuch
|
|||||||
|
|
||||||
If vbYes = MsgBox("Möchten Sie wirklich einen Testzahlung durchführen?" & vbNewLine & "NIEMALS auf einer produktiven TSE durchführen!", vbYesNoCancel) Then
|
If vbYes = MsgBox("Möchten Sie wirklich einen Testzahlung durchführen?" & vbNewLine & "NIEMALS auf einer produktiven TSE durchführen!", vbYesNoCancel) Then
|
||||||
|
|
||||||
Dim result As String = client_chilkat.SignReceipt_test(PERSONAL.cRKSV_Kasse.rksv_id)
|
Dim result As String = client_chilkat.SignReceipt_test(PERSONAL.cRKSV_Kasse.rksv_id, TSEIsOnline)
|
||||||
|
|
||||||
If result <> "" Then
|
If result <> "" Then
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
|
|
||||||
Imports GrapeCity.ActiveReports
|
Imports GrapeCity.ActiveReports
|
||||||
|
Imports java.security.acl
|
||||||
Imports VERAG_PROG_ALLGEMEIN
|
Imports VERAG_PROG_ALLGEMEIN
|
||||||
|
|
||||||
Public Class frmNacherfassungLeihgeld
|
Public Class frmNacherfassungLeihgeld
|
||||||
@@ -363,12 +364,17 @@ Public Class frmNacherfassungLeihgeld
|
|||||||
Dim QR_CodeString As String = ""
|
Dim QR_CodeString As String = ""
|
||||||
Dim LastJWS As String = ""
|
Dim LastJWS As String = ""
|
||||||
Dim isFiskaltrust As Boolean = False
|
Dim isFiskaltrust As Boolean = False
|
||||||
|
If KASSE.rksv_FT_RestServiceURL IsNot Nothing AndAlso KASSE.rksv_FT_CashboxID IsNot Nothing AndAlso KASSE.rksv_FT_AccessToken IsNot Nothing AndAlso KASSE.rksv_FT_Country IsNot Nothing Then
|
||||||
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country)
|
||||||
|
isFiskaltrust = client_chilkat.isFiskaltrust()
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
If KASSE.rksv_aktiv Then ' WENN für die Kasse die RKSV gilt
|
If KASSE.rksv_aktiv Then ' WENN für die Kasse die RKSV gilt
|
||||||
Dim answer = ""
|
Dim answer = ""
|
||||||
|
|
||||||
Dim verarbeitet As Boolean = False
|
Dim verarbeitet As Boolean = False
|
||||||
If KASSE.rksv_FT_RestServiceURL <> "" Then
|
If isFiskaltrust Then
|
||||||
Dim result = cRKSV.insertRKSVFiskaltrustAsync(KASSE, BELEG, RKSV_Beleg_Id, summeBRUTTO, TESTBUCHUNG, QR_CodeString, LastJWS, "Verkauf")
|
Dim result = cRKSV.insertRKSVFiskaltrustAsync(KASSE, BELEG, RKSV_Beleg_Id, summeBRUTTO, TESTBUCHUNG, QR_CodeString, LastJWS, "Verkauf")
|
||||||
'result.Wait()
|
'result.Wait()
|
||||||
verarbeitet = result
|
verarbeitet = result
|
||||||
@@ -376,7 +382,10 @@ Public Class frmNacherfassungLeihgeld
|
|||||||
verarbeitet = cRKSV.insertRKSV(KASSE, KASSE.rksv_CompanyGUID, KASSE.rksv_Umsatzzaehler, BELEG.BelegDat, BELEG.Steuerschlüssel, RKSV_Beleg_Id, summeBRUTTO, QR_CodeString, LastJWS, TESTBUCHUNG, answer) 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
verarbeitet = cRKSV.insertRKSV(KASSE, KASSE.rksv_CompanyGUID, KASSE.rksv_Umsatzzaehler, BELEG.BelegDat, BELEG.Steuerschlüssel, RKSV_Beleg_Id, summeBRUTTO, QR_CodeString, LastJWS, TESTBUCHUNG, answer) 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If Not verarbeitet AndAlso Not isFiskaltrust Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
If Not verarbeitet Then 'Digitale Signierung und Erfassung in die RKSV-Datenbank mittels ITG-Service
|
||||||
|
|
||||||
|
If Not isFiskaltrust Then
|
||||||
|
|
||||||
If Not TESTBUCHUNG Then
|
If Not TESTBUCHUNG Then
|
||||||
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, summeBRUTTO * -1)
|
KASSE.DECREASE_BELEG_UMSATZ(oldBelegZaehler, summeBRUTTO * -1)
|
||||||
cRKSV.DELETE(BELEG, KASSE.rksv_firma)
|
cRKSV.DELETE(BELEG, KASSE.rksv_firma)
|
||||||
@@ -386,8 +395,15 @@ Public Class frmNacherfassungLeihgeld
|
|||||||
'BELEG = cRKSV.STORNO(BELEG, "Programmfehler")
|
'BELEG = cRKSV.STORNO(BELEG, "Programmfehler")
|
||||||
' MsgBox("Programmfehler bei der digitalen Signatur.")
|
' MsgBox("Programmfehler bei der digitalen Signatur.")
|
||||||
Me.Cursor = Cursors.Default : Me.Close() : Exit Sub
|
Me.Cursor = Cursors.Default : Me.Close() : Exit Sub
|
||||||
|
|
||||||
|
Else
|
||||||
|
BELEG.FT_MissingSignature = True
|
||||||
|
|
||||||
End If
|
End If
|
||||||
KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not isFiskaltrust Then KASSE.SET_LAST_QR_JWS(LastJWS, QR_CodeString)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3147,13 +3147,13 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
|
|||||||
sqlGroup = " CASE WHEN tblIDSTransactionsNew.OutletCode BETWEEN 4473 AND 4474 THEN 'Austria Suben' ELSE tblIDSTransactionsNew.OutletCountry END"
|
sqlGroup = " CASE WHEN tblIDSTransactionsNew.OutletCode BETWEEN 4473 AND 4474 THEN 'Austria Suben' ELSE tblIDSTransactionsNew.OutletCountry END"
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
sqlstr &= " SELECT Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], " & sqlSelect & ", tbl_IDS_Produkte.ProductDescription, tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz, Sum(tblIDSTransactionsNew.[TransactionVolume]) AS Liter, Sum(tblIDSTransactionsNew.[TotalNetAmount]) AS Nettobetrag, Sum(tblIDSTransactionsNew.[VATAmount]) AS Steuerbetrag,
|
sqlstr &= " SELECT Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], " & sqlSelect & ", tbl_IDS_Produkte.ProductDescription,tbl_IDS_Stationen.OutletName, tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz, Sum(tblIDSTransactionsNew.[TransactionVolume]) AS Liter, Sum(tblIDSTransactionsNew.[TotalNetAmount]) AS Nettobetrag, Sum(tblIDSTransactionsNew.[VATAmount]) AS Steuerbetrag,
|
||||||
case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([TotalNetAmount])/Sum([TransactionVolume]) END AS NettopreisProLiter,
|
case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([TotalNetAmount])/Sum([TransactionVolume]) END AS NettopreisProLiter,
|
||||||
Sum(tblIDSTransactionsNew.Rabattbetrag) AS [SummevonRabattbetrag],
|
Sum(tblIDSTransactionsNew.Rabattbetrag) AS [SummevonRabattbetrag],
|
||||||
case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([Rabattbetrag])/Sum([TransactionVolume]) END AS RabattbetragProLiter
|
case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([Rabattbetrag])/Sum([TransactionVolume]) END AS RabattbetragProLiter
|
||||||
FROM ((tblIDSTransactionsNew INNER JOIN tbl_IDS_Länder ON tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode) INNER JOIN tbl_IDS_Produkte ON tblIDSTransactionsNew.[ProductTypeCode] = tbl_IDS_Produkte.ProductTypeCode) INNER JOIN Adressen ON tblIDSTransactionsNew.KdNrVERAG = Adressen.AdressenNr
|
FROM ((tblIDSTransactionsNew INNER JOIN tbl_IDS_Länder ON tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode) INNER JOIN tbl_IDS_Produkte ON tblIDSTransactionsNew.[ProductTypeCode] = tbl_IDS_Produkte.ProductTypeCode INNER JOIN tbl_IDS_Stationen ON tblIDSTransactionsNew.OutletCountryCode = tbl_IDS_Stationen.OutletCountryCode and tblIDSTransactionsNew.OutletCode = tbl_IDS_Stationen.OutletCode) INNER JOIN Adressen ON tblIDSTransactionsNew.KdNrVERAG = Adressen.AdressenNr
|
||||||
WHERE cast(tblIDSTransactionsNew.YearMonthDay as Date) = '" & DateTimePicker2.Text & "' AND tblIDSTransactionsNew.KdNrVERAG = " & KdNr & sqlWhere & "
|
WHERE cast(tblIDSTransactionsNew.YearMonthDay as Date) = '" & DateTimePicker2.Text & "' AND tblIDSTransactionsNew.KdNrVERAG = " & KdNr & sqlWhere & "
|
||||||
GROUP BY Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], " & sqlGroup & ", tbl_IDS_Produkte.ProductDescription, tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz;
|
GROUP BY Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], " & sqlGroup & ", tbl_IDS_Produkte.ProductDescription, tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz,tbl_IDS_Stationen.OutletName;
|
||||||
"
|
"
|
||||||
|
|
||||||
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
|
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
|
||||||
@@ -3210,7 +3210,12 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
|
|||||||
rpt.txtKunde.Text = SQL.isDbnullEmpty(rpt.Fields.Item("AdressenNr").Value, "")
|
rpt.txtKunde.Text = SQL.isDbnullEmpty(rpt.Fields.Item("AdressenNr").Value, "")
|
||||||
rpt.txtKunde.Text &= " " & SQL.isDbnullEmpty(rpt.Fields.Item("Name 1").Value, "")
|
rpt.txtKunde.Text &= " " & SQL.isDbnullEmpty(rpt.Fields.Item("Name 1").Value, "")
|
||||||
|
|
||||||
rpt.txtProduktBeschreibung.Text = SQL.isDbnullEmpty(rpt.Fields.Item("ProductDescription").Value, "")
|
Dim Station As String = SQL.isDbnullEmpty(rpt.Fields.Item("OutletName").Value, "")
|
||||||
|
If Station <> "" Then
|
||||||
|
Station = " (" & Station & ")"
|
||||||
|
End If
|
||||||
|
|
||||||
|
rpt.txtProduktBeschreibung.Text = SQL.isDbnullEmpty(rpt.Fields.Item("ProductDescription").Value, "") & Station
|
||||||
|
|
||||||
rpt.txtLiter.Text = SQL.isDbnullEmpty(rpt.Fields.Item("Liter").Value, "")
|
rpt.txtLiter.Text = SQL.isDbnullEmpty(rpt.Fields.Item("Liter").Value, "")
|
||||||
rpt.txtPreis.Text = SQL.isDbnullEmptyDbl(rpt.Fields.Item("NettopreisProLiter").Value, 4, "")
|
rpt.txtPreis.Text = SQL.isDbnullEmptyDbl(rpt.Fields.Item("NettopreisProLiter").Value, 4, "")
|
||||||
|
|||||||
@@ -64,6 +64,10 @@ Public Class cNCTSGestellungsadressen
|
|||||||
Public Function SAVE() As Boolean
|
Public Function SAVE() As Boolean
|
||||||
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
||||||
|
|
||||||
|
If Not VERAG_PROG_ALLGEMEIN.cProgramFunctions.ValidateSQLFieldLengths(list, "tblNCTSGestellungsadressen", "", "FMZOLL") Then
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
Dim sqlstr = " BEGIN TRAN IF EXISTS(SELECT * FROM tblNCTSGestellungsadressen WITH(updlock,serializable) WHERE nga_id=@nga_id) " &
|
Dim sqlstr = " BEGIN TRAN IF EXISTS(SELECT * FROM tblNCTSGestellungsadressen WITH(updlock,serializable) WHERE nga_id=@nga_id) " &
|
||||||
" BEGIN " & getUpdateCmd() & " END " &
|
" BEGIN " & getUpdateCmd() & " END " &
|
||||||
|
|||||||
@@ -2512,7 +2512,7 @@ Public Class DATENVERVER_OPTIONS
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
Public Shared Function addZugferdXML(pdfPath As String, xmlPath As String) As String
|
Public Shared Function addZugferdXML(pdfPath As String, xmlPath As String, Optional fixedIssuerAssignedID As Boolean = True) As String
|
||||||
|
|
||||||
|
|
||||||
Dim tempFile As String = pdfPath & ".tmp"
|
Dim tempFile As String = pdfPath & ".tmp"
|
||||||
@@ -2522,6 +2522,12 @@ Public Class DATENVERVER_OPTIONS
|
|||||||
|
|
||||||
|
|
||||||
Dim xmlBytes = File.ReadAllBytes(xmlPath)
|
Dim xmlBytes = File.ReadAllBytes(xmlPath)
|
||||||
|
|
||||||
|
If fixedIssuerAssignedID Then
|
||||||
|
fixIssuerAssignedID(xmlBytes)
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
Dim fileName As String = "factur-x.xml"
|
Dim fileName As String = "factur-x.xml"
|
||||||
|
|
||||||
If HasAttachment(pdf, fileName) Then
|
If HasAttachment(pdf, fileName) Then
|
||||||
@@ -2557,6 +2563,75 @@ Public Class DATENVERVER_OPTIONS
|
|||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Public Shared Sub fixIssuerAssignedID(ByRef xmlBytes As Byte())
|
||||||
|
|
||||||
|
|
||||||
|
Dim xmlDoc As New System.Xml.XmlDocument()
|
||||||
|
xmlDoc.PreserveWhitespace = True
|
||||||
|
|
||||||
|
Using ms As New MemoryStream(xmlBytes)
|
||||||
|
xmlDoc.Load(ms)
|
||||||
|
End Using
|
||||||
|
|
||||||
|
Dim ns As New System.Xml.XmlNamespaceManager(xmlDoc.NameTable)
|
||||||
|
|
||||||
|
ns.AddNamespace(
|
||||||
|
"ram",
|
||||||
|
"urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
|
||||||
|
)
|
||||||
|
|
||||||
|
Dim documents = xmlDoc.SelectNodes(
|
||||||
|
"//ram:AdditionalReferencedDocument",
|
||||||
|
ns
|
||||||
|
)
|
||||||
|
|
||||||
|
For Each document As XmlElement In documents
|
||||||
|
|
||||||
|
Dim idNode As XmlNode =
|
||||||
|
document.SelectSingleNode("ram:ID", ns)
|
||||||
|
|
||||||
|
If idNode Is Nothing Then
|
||||||
|
Continue For
|
||||||
|
End If
|
||||||
|
|
||||||
|
' Wert der bisherigen ID merken
|
||||||
|
Dim idValue As String = idNode.InnerText
|
||||||
|
|
||||||
|
' Neue IssuerAssignedID erzeugen
|
||||||
|
Dim issuerAssignedID As XmlElement =
|
||||||
|
xmlDoc.CreateElement(
|
||||||
|
"ram",
|
||||||
|
"IssuerAssignedID",
|
||||||
|
"urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
|
||||||
|
)
|
||||||
|
|
||||||
|
issuerAssignedID.InnerText = idValue
|
||||||
|
|
||||||
|
' ID entfernen
|
||||||
|
document.RemoveChild(idNode)
|
||||||
|
|
||||||
|
' IssuerAssignedID an ERSTE Stelle setzen
|
||||||
|
document.InsertBefore(
|
||||||
|
issuerAssignedID,
|
||||||
|
document.FirstChild
|
||||||
|
)
|
||||||
|
|
||||||
|
Next
|
||||||
|
|
||||||
|
Using ms As New MemoryStream()
|
||||||
|
xmlDoc.Save(ms)
|
||||||
|
xmlBytes = ms.ToArray()
|
||||||
|
End Using
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Private Shared Function HasAttachment(pdf As iText.Kernel.Pdf.PdfDocument, fileName As String) As Boolean
|
Private Shared Function HasAttachment(pdf As iText.Kernel.Pdf.PdfDocument, fileName As String) As Boolean
|
||||||
|
|
||||||
Dim catalog = pdf.GetCatalog().GetPdfObject()
|
Dim catalog = pdf.GetCatalog().GetPdfObject()
|
||||||
|
|||||||
@@ -225,7 +225,13 @@ Public Class cVERAG_CustomsDeclarations
|
|||||||
' CBAM Pattern (HSCode)
|
' CBAM Pattern (HSCode)
|
||||||
' ------------------------------------------------------------
|
' ------------------------------------------------------------
|
||||||
Dim cbamWhere As String = VERAG_PROG_ALLGEMEIN.cGreendeal_CBAM_Trn.BuildCBAMPatternWhereClause("i.zaItem_HSCode")
|
Dim cbamWhere As String = VERAG_PROG_ALLGEMEIN.cGreendeal_CBAM_Trn.BuildCBAMPatternWhereClause("i.zaItem_HSCode")
|
||||||
Dim cbamWhereSnd As String = " AND " & cbamWhere.Replace("i.zaItem_HSCode", "zaItem_HSCode")
|
Dim cbamWhereSnd As String = " AND " & cbamWhere.Replace("i.zaItem_HSCode", "zaItem_HSCode") &
|
||||||
|
" AND zaItem_OriginCountry NOT IN (
|
||||||
|
'EU','AT','BE','BG','HR','CY','CZ','DK','EE','FI','FR',
|
||||||
|
'DE','GR','HU','IE','IT','LV','LT','LU','MT','NL',
|
||||||
|
'PL','PT','RO','SK','SI','ES','SE',
|
||||||
|
'CH','NO','IS','LI','XI'
|
||||||
|
)"
|
||||||
|
|
||||||
Dim cbamWhereISOCntry As String = " i.zaItem_OriginCountry NOT IN (
|
Dim cbamWhereISOCntry As String = " i.zaItem_OriginCountry NOT IN (
|
||||||
/*EU-27 (ISO2)*/
|
/*EU-27 (ISO2)*/
|
||||||
|
|||||||
Reference in New Issue
Block a user