barverkauf, etc.
This commit is contained in:
@@ -282,6 +282,9 @@ Public Class EABeleg
|
|||||||
Property ECZahlungsPerAPI As Boolean = False
|
Property ECZahlungsPerAPI As Boolean = False
|
||||||
Property ECTerminalreturnCode As Object = Nothing
|
Property ECTerminalreturnCode As Object = Nothing
|
||||||
Property EC_daid As Integer = 0
|
Property EC_daid As Integer = 0
|
||||||
|
Property FT_ReceiptReference As Object = Nothing
|
||||||
|
|
||||||
|
Property FT_ReceiptReference_Storno As Object = Nothing
|
||||||
|
|
||||||
|
|
||||||
Property POS As New List(Of EABelegPositionen)
|
Property POS As New List(Of EABelegPositionen)
|
||||||
@@ -362,6 +365,8 @@ 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)
|
||||||
|
Me.FT_ReceiptReference = cSqlDb.checkNullReturnValue(dr.Item("FT_ReceiptReference"), Nothing)
|
||||||
|
Me.FT_ReceiptReference_Storno = cSqlDb.checkNullReturnValue(dr.Item("FT_ReceiptReference_Storno"), Nothing)
|
||||||
|
|
||||||
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)
|
||||||
@@ -547,6 +552,8 @@ 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))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_ReceiptReference", FT_ReceiptReference))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FT_ReceiptReference_Storno", FT_ReceiptReference_Storno))
|
||||||
|
|
||||||
'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
|
||||||
|
|||||||
@@ -1,9 +1,13 @@
|
|||||||
|
|
||||||
Imports System.Data.SqlClient
|
Imports System.Data.SqlClient
|
||||||
|
Imports System.IO
|
||||||
Imports System.Reflection
|
Imports System.Reflection
|
||||||
Imports Chilkat
|
Imports Chilkat
|
||||||
|
Imports Gma.QrCodeNet.Encoding
|
||||||
Imports GrapeCity.DataVisualization.Chart
|
Imports GrapeCity.DataVisualization.Chart
|
||||||
|
Imports itextsharp.text.pdf.qrcode
|
||||||
Imports Newtonsoft.Json
|
Imports Newtonsoft.Json
|
||||||
|
Imports QRCoder
|
||||||
|
|
||||||
Public Class FtReceiptCases
|
Public Class FtReceiptCases
|
||||||
|
|
||||||
@@ -257,71 +261,71 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
|
|
||||||
json.UpdateString("cbReceiptMoment", DateTime.UtcNow.ToString("o"))
|
json.UpdateString("cbReceiptMoment", DateTime.UtcNow.ToString("o"))
|
||||||
|
|
||||||
Dim receipCase As Long
|
Dim receipCase As Long
|
||||||
Select Case _receiptCase
|
Select Case _receiptCase
|
||||||
|
|
||||||
Case "Storno"
|
Case "Storno"
|
||||||
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ReversalReceipt Or FtReceiptCases.ImplicitTransaction 'Storno
|
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ReversalReceipt Or FtReceiptCases.ImplicitTransaction 'Storno
|
||||||
|
|
||||||
Case Else
|
Case Else
|
||||||
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ImplicitTransaction 'Verkauf
|
receipCase = FtReceiptCases.PosReceipt Or FtReceiptCases.ImplicitTransaction 'Verkauf
|
||||||
|
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
|
|
||||||
json.UpdateString("ftReceiptCase", receipCase)
|
json.UpdateString("ftReceiptCase", receipCase)
|
||||||
|
|
||||||
|
|
||||||
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 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", p.Anzahl)
|
||||||
item.UpdateNumber("Amount", p.Preis.ToString().Replace(",", "."))
|
item.UpdateNumber("Amount", p.Preis.ToString().Replace(",", "."))
|
||||||
item.UpdateNumber("VATRate", vat.ToString().Replace(",", "."))
|
item.UpdateNumber("VATRate", vat.ToString().Replace(",", "."))
|
||||||
item.UpdateString("Description", p.LeistungsBez)
|
item.UpdateString("Description", p.LeistungsBez)
|
||||||
|
|
||||||
Dim ChargeItemCase As Long
|
Dim ChargeItemCase As Long
|
||||||
Select Case vat
|
Select Case vat
|
||||||
|
|
||||||
Case 19D
|
Case 19D
|
||||||
ChargeItemCase = FtChargeItemCase.RevenueNormal
|
ChargeItemCase = FtChargeItemCase.RevenueNormal
|
||||||
|
|
||||||
Case 7D
|
Case 7D
|
||||||
ChargeItemCase = FtChargeItemCase.RevenueReduced
|
ChargeItemCase = FtChargeItemCase.RevenueReduced
|
||||||
|
|
||||||
Case 0D
|
Case 0D
|
||||||
ChargeItemCase = FtChargeItemCase.RevenueTaxFree
|
ChargeItemCase = FtChargeItemCase.RevenueTaxFree
|
||||||
|
|
||||||
Case Else
|
Case Else
|
||||||
Throw New Exception("Unbekannter Steuersatz")
|
Throw New Exception("Unbekannter Steuersatz")
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
|
|
||||||
item.UpdateString("ftChargeItemCase", ChargeItemCase)
|
item.UpdateString("ftChargeItemCase", ChargeItemCase)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
Next
|
Next
|
||||||
|
|
||||||
Dim payItems = json.AppendArray("cbPayItems")
|
Dim payItems = json.AppendArray("cbPayItems")
|
||||||
payItems.AddObjectAt(-1)
|
payItems.AddObjectAt(-1)
|
||||||
Dim pay As Chilkat.JsonObject = payItems.ObjectAt(payItems.Size - 1)
|
Dim pay As Chilkat.JsonObject = payItems.ObjectAt(payItems.Size - 1)
|
||||||
pay.UpdateInt("Quantity", 1)
|
pay.UpdateInt("Quantity", 1)
|
||||||
pay.UpdateNumber("Amount", amount.ToString().Replace(",", "."))
|
pay.UpdateNumber("Amount", amount.ToString().Replace(",", "."))
|
||||||
pay.UpdateString("Description", kindOfPayment)
|
pay.UpdateString("Description", kindOfPayment)
|
||||||
|
|
||||||
Select Case kindOfPayment
|
Select Case kindOfPayment
|
||||||
Case "Cash"
|
Case "Cash"
|
||||||
pay.UpdateString("ftPayItemCase", FtPayItemCases.Cash)
|
pay.UpdateString("ftPayItemCase", FtPayItemCases.Cash)
|
||||||
Case "Card"
|
Case "Card"
|
||||||
pay.UpdateString("ftPayItemCase", FtPayItemCases.DebitCard)
|
pay.UpdateString("ftPayItemCase", FtPayItemCases.DebitCard)
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
|
|
||||||
Return json
|
Return json
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
@@ -460,7 +464,7 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
Return Terminal_ID & "_" & Application.ProductVersion
|
Return Terminal_ID & "_" & Application.ProductVersion
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function saveRKSV_FT(ByRef result_zahlung As String, ByRef QR_CodeString As String) As Boolean
|
Public Function saveRKSV_FT(ByRef result_zahlung As String, ByRef QR_CodeString As String, ByRef beleg_temp As EABeleg, ByRef isStorno As Boolean) As Boolean
|
||||||
|
|
||||||
If result_zahlung <> "" Then
|
If result_zahlung <> "" Then
|
||||||
Dim json As New Chilkat.JsonObject
|
Dim json As New Chilkat.JsonObject
|
||||||
@@ -498,6 +502,18 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
.ftState = json.StringOf("ftState")
|
.ftState = json.StringOf("ftState")
|
||||||
saved = .SAVE()
|
saved = .SAVE()
|
||||||
|
|
||||||
|
If saved AndAlso beleg_temp IsNot Nothing Then
|
||||||
|
|
||||||
|
If isStorno Then
|
||||||
|
beleg_temp.FT_ReceiptReference_Storno = .cbReceiptReference
|
||||||
|
beleg_temp.SAVE()
|
||||||
|
Else
|
||||||
|
beleg_temp.FT_ReceiptReference = .cbReceiptReference
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
End With
|
End With
|
||||||
|
|
||||||
|
|
||||||
@@ -525,10 +541,29 @@ Public Class cFiskaltrustClient_chilkat
|
|||||||
.ftSignatureFormat = SignObj.StringOf("ftSignatureFormat")
|
.ftSignatureFormat = SignObj.StringOf("ftSignatureFormat")
|
||||||
.ftSignatureType = SignObj.StringOf("ftSignatureType")
|
.ftSignatureType = SignObj.StringOf("ftSignatureType")
|
||||||
saved = .SAVE()
|
saved = .SAVE()
|
||||||
If IsNumeric(.ftSignatureType) AndAlso CInt(.ftSignatureType) = IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = True, 0, 3) Then
|
'If IsNumeric(.ftSignatureType) AndAlso CInt(.ftSignatureType) = IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = True, 0, 3) Then
|
||||||
'QR_CodeString = .ftData
|
' QR_CodeString = .ftData
|
||||||
End If
|
'End If
|
||||||
|
|
||||||
|
'https://receipts.fiskaltrust.eu/{ftQueueID}/{ftQueueItemID}
|
||||||
|
Dim URL_FT As String = ""
|
||||||
|
If Not String.IsNullOrWhiteSpace(ftSig.ftQueueID) AndAlso Not String.IsNullOrWhiteSpace(ftSig.ftQueueItemID) Then
|
||||||
|
URL_FT = $"https://receipts.fiskaltrust.eu/{ftSig.ftQueueID}/{ftSig.ftQueueItemID}"
|
||||||
|
|
||||||
|
Using qrGenerator As New QRCodeGenerator()
|
||||||
|
Using qrData As QRCodeData = qrGenerator.CreateQrCode(URL_FT, QRCodeGenerator.ECCLevel.Q)
|
||||||
|
|
||||||
|
Dim qrCode As New PngByteQRCode(qrData)
|
||||||
|
Dim qrBytes As Byte() = qrCode.GetGraphic(20)
|
||||||
|
Dim qrBase64 As String = Convert.ToBase64String(qrBytes)
|
||||||
|
|
||||||
|
QR_CodeString = qrBase64
|
||||||
|
|
||||||
|
End Using
|
||||||
|
End Using
|
||||||
|
|
||||||
|
|
||||||
|
End If
|
||||||
End With
|
End With
|
||||||
|
|
||||||
Next
|
Next
|
||||||
|
|||||||
@@ -1,10 +1,7 @@
|
|||||||
Imports System.Net.Http
|
Imports GrapeCity.ActiveReports
|
||||||
Imports System.Text
|
|
||||||
Imports GrapeCity.ActiveReports
|
|
||||||
Imports GrapeCity.DataVisualization.Options
|
|
||||||
Imports Newtonsoft.json
|
|
||||||
Imports SDL.RKSVServer
|
Imports SDL.RKSVServer
|
||||||
Imports VERAG_PROG_ALLGEMEIN.DSFinVKService
|
Imports VERAG_PROG_ALLGEMEIN.DSFinVKService
|
||||||
|
Imports VERAG_PROG_ALLGEMEIN.RKSV_DE_DSFinVKService
|
||||||
|
|
||||||
Public Class cRKSV
|
Public Class cRKSV
|
||||||
Shared SQL As New SQL
|
Shared SQL As New SQL
|
||||||
@@ -92,7 +89,7 @@ Public Class cRKSV
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
Shared Function insertRKSVFiskaltrustAsync(ByVal kasse As cRKSV_Kasse, CompanyGUID As String, ByVal umsatzZaehler As Double, ByVal belegDat As DateTime, ByVal steuerSchluessel As Integer, ByVal RKSV_Beleg_Id As Integer, ByVal summeBRUTTO As Double, TEST As Boolean, POS As List(Of EABelegPositionen), ByRef QR_CodeString As String, ByRef LastJWS 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) As Boolean
|
||||||
Try
|
Try
|
||||||
|
|
||||||
|
|
||||||
@@ -103,7 +100,7 @@ Public Class cRKSV
|
|||||||
credentials.Username = "Admin"
|
credentials.Username = "Admin"
|
||||||
credentials.Password = "verag#2"
|
credentials.Password = "verag#2"
|
||||||
credentials.CashboxID = kasse.rksv_FT_CashboxID
|
credentials.CashboxID = kasse.rksv_FT_CashboxID
|
||||||
credentials.CompanyGUID = CompanyGUID
|
credentials.CompanyGUID = kasse.rksv_CompanyGUID
|
||||||
Dim AccessToken As String = kasse.rksv_FT_AccessToken
|
Dim AccessToken As String = kasse.rksv_FT_AccessToken
|
||||||
|
|
||||||
Dim jws As String = String.Empty
|
Dim jws As String = String.Empty
|
||||||
@@ -112,16 +109,18 @@ Public Class cRKSV
|
|||||||
'Dim answer As String = String.Empty
|
'Dim answer As String = String.Empty
|
||||||
|
|
||||||
Dim Belegnummer = RKSV_Beleg_Id
|
Dim Belegnummer = RKSV_Beleg_Id
|
||||||
Dim BelegDatumUhrzeit = belegDat ' BELEG.BelegDat
|
Dim BelegDatumUhrzeit = beleg_temp.BelegDat
|
||||||
|
|
||||||
Dim steuersatz As Double = SQL.getValueTxtBySql("SELECT isnull(tblSteuersätze.Steuersatz,0) FROM tblSteuersätze WHERE tblSteuersätze.Nr='" & steuerSchluessel & "' ", "FMZOLL")
|
Dim steuersatz As Double = SQL.getValueTxtBySql("SELECT isnull(tblSteuersätze.Steuersatz,0) FROM tblSteuersätze WHERE tblSteuersätze.Nr='" & beleg_temp.Steuerschlüssel & "' ", "FMZOLL")
|
||||||
|
|
||||||
Dim BetragSatzNormal = IIf(steuersatz = 0.2, summeBRUTTO, 0.0) 'summe
|
Dim BetragSatzNormal = IIf(steuersatz = 0.2, summeBRUTTO, 0.0) 'summe
|
||||||
Dim BetragSatzErm1 = IIf(steuersatz = 0.1, summeBRUTTO, 0.0)
|
Dim BetragSatzErm1 = IIf(steuersatz = 0.1, summeBRUTTO, 0.0)
|
||||||
Dim BetragSatzErm2 = IIf(steuersatz = 0.13, summeBRUTTO, 0.0)
|
Dim BetragSatzErm2 = IIf(steuersatz = 0.13, summeBRUTTO, 0.0)
|
||||||
Dim BetragSatzNull = IIf(steuersatz = 0.0, summeBRUTTO, 0.0)
|
Dim BetragSatzNull = IIf(steuersatz = 0.0, summeBRUTTO, 0.0)
|
||||||
Dim BetragSatzBesonders = IIf(steuersatz = 0.19, summeBRUTTO, 0.0)
|
Dim BetragSatzBesonders = IIf(steuersatz = 0.19, summeBRUTTO, 0.0)
|
||||||
Dim StandUmsatzzaehler = umsatzZaehler 'KASSE.rksv_Umsatzzaehler
|
Dim StandUmsatzzaehler = kasse.rksv_Umsatzzaehler
|
||||||
|
|
||||||
|
Dim kindOfPayment As String = getKindOfPayment(beleg_temp)
|
||||||
|
|
||||||
If False Then
|
If False Then
|
||||||
'Dim client As New cFiskaltrustClient(kasse.rksv_FT_RestServiceURL, kasse.rksv_FT_CashboxID, kasse.rksv_FT_AccessToken, kasse.rksv_FT_Country)
|
'Dim client As New cFiskaltrustClient(kasse.rksv_FT_RestServiceURL, kasse.rksv_FT_CashboxID, kasse.rksv_FT_AccessToken, kasse.rksv_FT_Country)
|
||||||
@@ -134,9 +133,9 @@ 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, POS, "Cash", kasse.rksv_id)
|
Dim result = client.SignReceipt(summeBRUTTO, steuersatz, beleg_temp.POS, kindOfPayment, kasse.rksv_id)
|
||||||
If result <> "" Then
|
If result <> "" Then
|
||||||
Return client.saveRKSV_FT(result, QR_CodeString)
|
Return client.saveRKSV_FT(result, QR_CodeString, beleg_temp, False)
|
||||||
Else
|
Else
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
@@ -144,11 +143,6 @@ Public Class cRKSV
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Es ist ein Fehler bei der Signatur aufgetreten (insertRKSV): " & vbNewLine & ex.Message & ex.StackTrace)
|
MsgBox("Es ist ein Fehler bei der Signatur aufgetreten (insertRKSV): " & vbNewLine & ex.Message & ex.StackTrace)
|
||||||
Return False
|
Return False
|
||||||
@@ -915,18 +909,13 @@ Public Class cRKSV
|
|||||||
Dim client As RKSVWcfClient = New RKSVWcfClient()
|
Dim client As RKSVWcfClient = New RKSVWcfClient()
|
||||||
client.Endpoint.Address = New System.ServiceModel.EndpointAddress(getRKSVLink(kasse))
|
client.Endpoint.Address = New System.ServiceModel.EndpointAddress(getRKSVLink(kasse))
|
||||||
client.Open()
|
client.Open()
|
||||||
' svcRKSV.DBUserCredentials m_credentials = new svcRKSV.DBUserCredentials();
|
|
||||||
Dim credentials As New SDL.RKSVServer.DBUserCredentials
|
Dim credentials As New SDL.RKSVServer.DBUserCredentials
|
||||||
|
|
||||||
credentials.Database = "RKSVWcfDB"
|
credentials.Database = "RKSVWcfDB"
|
||||||
credentials.Server = "AVISO\SQLEXPRESS"
|
credentials.Server = "AVISO\SQLEXPRESS"
|
||||||
|
|
||||||
|
|
||||||
credentials.Username = "Admin"
|
credentials.Username = "Admin"
|
||||||
credentials.Password = "verag#2"
|
credentials.Password = "verag#2"
|
||||||
'credentials.CashboxID = kasse '"VERAG-SUB-KASSE-ZOLL"
|
|
||||||
'credentials.CompanyGUID = CompanyGUID ' "9119d9ae-f549-4a0f-a50f-0500ec7ca059"
|
|
||||||
|
|
||||||
credentials.CashboxID = kasse.rksv_bez '"VERAG-SUB-KASSE-ZOLL"
|
credentials.CashboxID = kasse.rksv_bez '"VERAG-SUB-KASSE-ZOLL"
|
||||||
credentials.CompanyGUID = kasse.rksv_CompanyGUID ' "9119d9ae-f549-4a0f-a50f-0500ec7ca059"
|
credentials.CompanyGUID = kasse.rksv_CompanyGUID ' "9119d9ae-f549-4a0f-a50f-0500ec7ca059"
|
||||||
|
|
||||||
@@ -952,23 +941,6 @@ Public Class cRKSV
|
|||||||
Dim BetragSatzBesonders = IIf(steuersatz = 0.19, summeBRUTTO, 0.0)
|
Dim BetragSatzBesonders = IIf(steuersatz = 0.19, summeBRUTTO, 0.0)
|
||||||
Dim StandUmsatzzaehler = kasse.rksv_Umsatzzaehler 'KASSE.rksv_Umsatzzaehler
|
Dim StandUmsatzzaehler = kasse.rksv_Umsatzzaehler 'KASSE.rksv_Umsatzzaehler
|
||||||
|
|
||||||
|
|
||||||
' Dim BetragSatzNormal = summe * -1
|
|
||||||
' Dim BetragSatzErm1 = IIf(steuersatz = 0.1, summe, 0.0) * -1
|
|
||||||
' Dim BetragSatzErm2 = IIf(steuersatz = 0.13, summe, 0.0) * -1
|
|
||||||
' Dim BetragSatzNull = IIf(steuersatz = 0.0, summe, 0.0) * -1
|
|
||||||
' Dim BetragSatzBesonders = IIf(steuersatz = 0.19, summe, 0.0) * -1
|
|
||||||
' Dim StandUmsatzzaehler = kasse.rksv_Umsatzzaehler
|
|
||||||
|
|
||||||
' Dim BetragSatzBesonders = 0
|
|
||||||
' Dim BetragSatzBesonders = 0
|
|
||||||
' Dim BetragSatzBesonders = 0
|
|
||||||
'client.ExportJWS
|
|
||||||
|
|
||||||
' MsgBox(credentials.CashboxID & " credentials.CashboxID")
|
|
||||||
' MsgBox(credentials.CompanyGUID & " credentials.CompanyGUID")
|
|
||||||
|
|
||||||
|
|
||||||
If (client.SignStornoReceipt(credentials, Belegnummer, BelegDatumUhrzeit, BetragSatzNormal, BetragSatzErm1, BetragSatzErm2, BetragSatzBesonders, BetragSatzNull, jws, qr, ocra, answer)) Then
|
If (client.SignStornoReceipt(credentials, Belegnummer, BelegDatumUhrzeit, BetragSatzNormal, BetragSatzErm1, BetragSatzErm2, BetragSatzBesonders, BetragSatzNull, jws, qr, ocra, answer)) Then
|
||||||
|
|
||||||
QR_CodeString = qr
|
QR_CodeString = qr
|
||||||
@@ -996,6 +968,82 @@ 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
|
||||||
|
Try
|
||||||
|
|
||||||
|
If beleg_temp.rksv_BelegId <= 0 Then
|
||||||
|
MsgBox("Keine RKSV-Beleg-ID")
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim credentials As New SDL.RKSVServer.DBUserCredentials
|
||||||
|
|
||||||
|
credentials.Database = "RKSVWcfDB"
|
||||||
|
credentials.Server = "AVISO\SQLEXPRESS"
|
||||||
|
credentials.Username = "Admin"
|
||||||
|
credentials.Password = "verag#2"
|
||||||
|
credentials.CashboxID = kasse.rksv_bez '"VERAG-SUB-KASSE-ZOLL"
|
||||||
|
credentials.CompanyGUID = kasse.rksv_CompanyGUID ' "9119d9ae-f549-4a0f-a50f-0500ec7ca059"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Dim jws As String = String.Empty
|
||||||
|
Dim qr As String = String.Empty
|
||||||
|
Dim ocra As String = String.Empty
|
||||||
|
'Dim answer As String = String.Empty
|
||||||
|
|
||||||
|
Dim Belegnummer = beleg_temp.rksv_BelegId
|
||||||
|
Dim BelegDatumUhrzeit = beleg_temp.BelegDat
|
||||||
|
|
||||||
|
Dim steuersatz As Double = SQL.getValueTxtBySql("SELECT isnull(tblSteuersätze.Steuersatz,0) FROM tblSteuersätze WHERE tblSteuersätze.Nr='" & beleg_temp.Steuerschlüssel & "' ", "FMZOLL")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Dim BetragSatzNormal = IIf(steuersatz = 0.2, beleg_temp.rksv_umsatz, 0.0) 'summe
|
||||||
|
Dim BetragSatzErm1 = IIf(steuersatz = 0.1, beleg_temp.rksv_umsatz, 0.0)
|
||||||
|
Dim BetragSatzErm2 = IIf(steuersatz = 0.13, beleg_temp.rksv_umsatz, 0.0)
|
||||||
|
Dim BetragSatzNull = IIf(steuersatz = 0.0, beleg_temp.rksv_umsatz, 0.0)
|
||||||
|
Dim BetragSatzBesonders = IIf(steuersatz = 0.19, beleg_temp.rksv_umsatz, 0.0)
|
||||||
|
Dim StandUmsatzzaehler = kasse.rksv_Umsatzzaehler 'KASSE.rksv_Umsatzzaehler
|
||||||
|
|
||||||
|
Dim kindOfPayment As String = getKindOfPayment(beleg_temp)
|
||||||
|
|
||||||
|
If False Then
|
||||||
|
|
||||||
|
Else
|
||||||
|
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)
|
||||||
|
If result <> "" Then
|
||||||
|
Return client.saveRKSV_FT(result, QR_CodeString, beleg_temp, True)
|
||||||
|
Else
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return True
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
MsgBox("Es ist ein Fehler bei der Signatur aufgetreten (insertRKSV): " & vbNewLine & ex.Message & ex.StackTrace)
|
||||||
|
End Try
|
||||||
|
Return False
|
||||||
|
End Function
|
||||||
|
|
||||||
|
Private Shared Function getKindOfPayment(beleg As EABeleg) As String
|
||||||
|
|
||||||
|
If beleg Is Nothing Then Return ""
|
||||||
|
|
||||||
|
Dim kindOfPayment As String = "Cash"
|
||||||
|
|
||||||
|
If beleg.ECZahlungsNr IsNot Nothing AndAlso IsNumeric(beleg.ECZahlungsNr) AndAlso beleg.ECZahlungsNr > 0 Then
|
||||||
|
kindOfPayment = "Card"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return kindOfPayment
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
'Beleg storno und Kassenbuch Gegenbuchung
|
'Beleg storno und Kassenbuch Gegenbuchung
|
||||||
Shared Function STORNO(BELEG As EABeleg, ByVal grund As String, Firma As String, Optional stornoGegenbuchen As Boolean = False) As EABeleg
|
Shared Function STORNO(BELEG As EABeleg, ByVal grund As String, Firma As String, Optional stornoGegenbuchen As Boolean = False) As EABeleg
|
||||||
|
|||||||
@@ -470,6 +470,9 @@
|
|||||||
<Reference Include="QRCode">
|
<Reference Include="QRCode">
|
||||||
<HintPath>..\..\..\dll\QRCode.dll</HintPath>
|
<HintPath>..\..\..\dll\QRCode.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="QRCoder, Version=1.8.0.0, Culture=neutral, PublicKeyToken=c4ed5b9ae8358a28, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\..\..\Aviso\AVISO\packages\QRCoder.1.8.0\lib\net40\QRCoder.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Registrierkasse">
|
<Reference Include="Registrierkasse">
|
||||||
<HintPath>..\..\..\dll\Registrierkasse.dll</HintPath>
|
<HintPath>..\..\..\dll\Registrierkasse.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
|||||||
33
SDL/USTV/frmMDM_USTVAntrag.Designer.vb
generated
33
SDL/USTV/frmMDM_USTVAntrag.Designer.vb
generated
@@ -148,7 +148,6 @@ Partial Class frmMDM_USTVAntrag
|
|||||||
Me.ToolStripMenuItem2 = New System.Windows.Forms.ToolStripMenuItem()
|
Me.ToolStripMenuItem2 = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.ToolStripMenuItem3 = New System.Windows.Forms.ToolStripMenuItem()
|
Me.ToolStripMenuItem3 = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.FakturiertToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
Me.FakturiertToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.txtWarning = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
|
||||||
Me.UstCntlUSTV_AntragPosition1 = New SDL.ustCntlUSTV_AntragPosition()
|
Me.UstCntlUSTV_AntragPosition1 = New SDL.ustCntlUSTV_AntragPosition()
|
||||||
Me.UstCntlUSTV_AntragErstattungen1 = New SDL.ustCntlUSTV_ErstattungPosition()
|
Me.UstCntlUSTV_AntragErstattungen1 = New SDL.ustCntlUSTV_ErstattungPosition()
|
||||||
Me.pnlBottom.SuspendLayout()
|
Me.pnlBottom.SuspendLayout()
|
||||||
@@ -430,7 +429,6 @@ Partial Class frmMDM_USTVAntrag
|
|||||||
'pnlHeader
|
'pnlHeader
|
||||||
'
|
'
|
||||||
Me.pnlHeader.BackColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
|
Me.pnlHeader.BackColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
|
||||||
Me.pnlHeader.Controls.Add(Me.txtWarning)
|
|
||||||
Me.pnlHeader.Controls.Add(Me.cbxRGretour)
|
Me.pnlHeader.Controls.Add(Me.cbxRGretour)
|
||||||
Me.pnlHeader.Controls.Add(Me.lblGesamtUSteuer)
|
Me.pnlHeader.Controls.Add(Me.lblGesamtUSteuer)
|
||||||
Me.pnlHeader.Controls.Add(Me.lblDiffernezbetrag)
|
Me.pnlHeader.Controls.Add(Me.lblDiffernezbetrag)
|
||||||
@@ -529,7 +527,7 @@ Partial Class frmMDM_USTVAntrag
|
|||||||
Me.KdSearchBox1.KdNr = "-1"
|
Me.KdSearchBox1.KdNr = "-1"
|
||||||
Me.KdSearchBox1.kdNrField = Nothing
|
Me.KdSearchBox1.kdNrField = Nothing
|
||||||
Me.KdSearchBox1.KdNrNullInt = Nothing
|
Me.KdSearchBox1.KdNrNullInt = Nothing
|
||||||
Me.KdSearchBox1.Location = New System.Drawing.Point(298, 10)
|
Me.KdSearchBox1.Location = New System.Drawing.Point(284, 12)
|
||||||
Me.KdSearchBox1.Name = "KdSearchBox1"
|
Me.KdSearchBox1.Name = "KdSearchBox1"
|
||||||
Me.KdSearchBox1.nurAktive = True
|
Me.KdSearchBox1.nurAktive = True
|
||||||
Me.KdSearchBox1.searchActive = True
|
Me.KdSearchBox1.searchActive = True
|
||||||
@@ -1935,34 +1933,6 @@ Partial Class frmMDM_USTVAntrag
|
|||||||
Me.FakturiertToolStripMenuItem.Text = "Fakturiert zurücksetzen"
|
Me.FakturiertToolStripMenuItem.Text = "Fakturiert zurücksetzen"
|
||||||
Me.FakturiertToolStripMenuItem.Visible = False
|
Me.FakturiertToolStripMenuItem.Visible = False
|
||||||
'
|
'
|
||||||
'txtWarning
|
|
||||||
'
|
|
||||||
Me.txtWarning._DateTimeOnly = False
|
|
||||||
Me.txtWarning._numbersOnly = False
|
|
||||||
Me.txtWarning._numbersOnlyKommastellen = ""
|
|
||||||
Me.txtWarning._numbersOnlyTrennzeichen = False
|
|
||||||
Me.txtWarning._Prozent = False
|
|
||||||
Me.txtWarning._ShortDateNew = False
|
|
||||||
Me.txtWarning._ShortDateOnly = False
|
|
||||||
Me.txtWarning._TimeOnly = False
|
|
||||||
Me.txtWarning._TimeOnly_Seconds = False
|
|
||||||
Me.txtWarning._value = ""
|
|
||||||
Me.txtWarning._Waehrung = False
|
|
||||||
Me.txtWarning._WaehrungZeichen = False
|
|
||||||
Me.txtWarning.BackColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
|
|
||||||
Me.txtWarning.BorderStyle = System.Windows.Forms.BorderStyle.None
|
|
||||||
Me.txtWarning.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
|
||||||
Me.txtWarning.ForeColor = System.Drawing.Color.Black
|
|
||||||
Me.txtWarning.Location = New System.Drawing.Point(475, 36)
|
|
||||||
Me.txtWarning.MaxLength = 10
|
|
||||||
Me.txtWarning.MaxLineLength = -1
|
|
||||||
Me.txtWarning.MaxLines_Warning = ""
|
|
||||||
Me.txtWarning.MaxLines_Warning_Label = Nothing
|
|
||||||
Me.txtWarning.Multiline = True
|
|
||||||
Me.txtWarning.Name = "txtWarning"
|
|
||||||
Me.txtWarning.Size = New System.Drawing.Size(88, 40)
|
|
||||||
Me.txtWarning.TabIndex = 61
|
|
||||||
'
|
|
||||||
'UstCntlUSTV_AntragPosition1
|
'UstCntlUSTV_AntragPosition1
|
||||||
'
|
'
|
||||||
Me.UstCntlUSTV_AntragPosition1.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.UstCntlUSTV_AntragPosition1.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
@@ -2153,5 +2123,4 @@ Partial Class frmMDM_USTVAntrag
|
|||||||
Friend WithEvents btnSortNachLeist As Button
|
Friend WithEvents btnSortNachLeist As Button
|
||||||
Friend WithEvents txtVZOffen As VERAG_PROG_ALLGEMEIN.MyTextBox
|
Friend WithEvents txtVZOffen As VERAG_PROG_ALLGEMEIN.MyTextBox
|
||||||
Friend WithEvents Label19 As Label
|
Friend WithEvents Label19 As Label
|
||||||
Friend WithEvents txtWarning As VERAG_PROG_ALLGEMEIN.MyTextBox
|
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -57,18 +57,16 @@ Public Class frmMDM_USTVAntrag
|
|||||||
lblGesamtErstattungFW.Text = "-"
|
lblGesamtErstattungFW.Text = "-"
|
||||||
lblDiffernezbetragFW.Text = "-"
|
lblDiffernezbetragFW.Text = "-"
|
||||||
|
|
||||||
txtWarning.Text = ""
|
lblGesamtUSteuer.Text="-"
|
||||||
|
|
||||||
lblGesamtUSteuer.Text = "-"
|
|
||||||
lblGesamtErstattung.Text = "-"
|
lblGesamtErstattung.Text = "-"
|
||||||
lblDiffernezbetrag.Text = "-"
|
lblDiffernezbetrag.Text = "-"
|
||||||
|
|
||||||
btnAntrageeinarbeiten.Enabled = Not UStVAn_ID <= 0
|
btnAntrageeinarbeiten.Enabled = Not UStVAn_ID <= 0
|
||||||
FlowLayoutPanel.Enabled = Not UStVAn_ID <= 0
|
FlowLayoutPanel.Enabled= Not UStVAn_ID <= 0
|
||||||
btnEintragloeschen.Enabled = Not UStVAn_ID <= 0
|
btnEintragloeschen.Enabled= Not UStVAn_ID <= 0
|
||||||
btnNeuerEintrag.Enabled = Not UStVAn_ID <= 0
|
btnNeuerEintrag.Enabled= Not UStVAn_ID <= 0
|
||||||
UstCntlUSTV_AntragPosition1.Enabled = Not UStVAn_ID <= 0
|
UstCntlUSTV_AntragPosition1.Enabled= Not UStVAn_ID <= 0
|
||||||
cbxLand.Visible = UStVAn_ID <= 0
|
cbxLand.Visible= UStVAn_ID <= 0
|
||||||
|
|
||||||
|
|
||||||
With dgvUSTVPositionen
|
With dgvUSTVPositionen
|
||||||
@@ -76,11 +74,6 @@ Public Class frmMDM_USTVAntrag
|
|||||||
|
|
||||||
If UStVAn_ID <= 0 Then Exit Sub
|
If UStVAn_ID <= 0 Then Exit Sub
|
||||||
|
|
||||||
'.SET_SQL("SELECT [UStVAn_ID] ,[UStVPo_ID] ,[UStVPo_ReDat],[UStVPo_ReNr],[UStVPo_Leistungsbezeichnung],[UStVPo_Leistender],leist.[UstV_Leistender_Strasse] + ' ' + leist.[UstV_Leistender_StrasseNr] as [UstV_Leistender_Strasse],leist.[UstV_Leistender_PLZ],leist.[UstV_Leistender_Stadt],leist.[UstV_Leistender_Land],leist.[UstV_Leistender_UstNr],[UStVPo_USteuerbetrag],[UStVPo_Schnittstelle],[UStVPo_SchnittstellenNr],[UStVPo_Umrechnungskurs],[UStVPo_USteuerbetragEUR],[UStVPo_Sachbearbeiter], [UStVPo_daId]
|
|
||||||
' FROM [tblUStVPositionen]
|
|
||||||
' left join [tblUStVLeistender] as leist on leist.UStV_Leistender = [tblUStVPositionen].[UStVPo_Leistender]
|
|
||||||
' where UStVAn_ID='" & UStVAn_ID & "' ORDER BY UStVPo_ID", "FMZOLL")
|
|
||||||
|
|
||||||
.SET_SQL("SELECT [UStVAn_ID] ,[UStVPo_ID] " & IIf(cbxInterneNr.Checked, ",[UStVPo_interneNr] as intNr", "") & " ,[UStVPo_ReDat],[UStVPo_ReNr],[UStVPo_Leistungsbezeichnung],[UStVPo_Nettobetrag],[UStVPo_NettobetragEUR],[UStVPo_Leistender],leist.[UstV_Leistender_Strasse] + ' ' + leist.[UstV_Leistender_StrasseNr] as [UstV_Leistender_Strasse],leist.[UstV_Leistender_Strasse] as StrasseOnly,leist.[UstV_Leistender_StrasseNr] as StrassenNrOnly,leist.[UstV_Leistender_PLZ],leist.[UstV_Leistender_Stadt],leist.[UstV_Leistender_Land],leist.[UstV_Leistender_UstNr],[UStVPo_USteuerbetrag],[UStVPo_Schnittstelle],[UStVPo_SchnittstellenNr],[UStVPo_Umrechnungskurs],[UStVPo_USteuerbetragEUR],[UStVPo_Sachbearbeiter], [UStVPo_daId], [UStVPo_daId_loeschbar] ,[UStVPo_VZ],[UStVPo_VZ_RKID] ,cast(case when isnull([UStVPo_VZ_RKID],0) = 0 then 0 else 1 end as bit) as VZabrechnet
|
.SET_SQL("SELECT [UStVAn_ID] ,[UStVPo_ID] " & IIf(cbxInterneNr.Checked, ",[UStVPo_interneNr] as intNr", "") & " ,[UStVPo_ReDat],[UStVPo_ReNr],[UStVPo_Leistungsbezeichnung],[UStVPo_Nettobetrag],[UStVPo_NettobetragEUR],[UStVPo_Leistender],leist.[UstV_Leistender_Strasse] + ' ' + leist.[UstV_Leistender_StrasseNr] as [UstV_Leistender_Strasse],leist.[UstV_Leistender_Strasse] as StrasseOnly,leist.[UstV_Leistender_StrasseNr] as StrassenNrOnly,leist.[UstV_Leistender_PLZ],leist.[UstV_Leistender_Stadt],leist.[UstV_Leistender_Land],leist.[UstV_Leistender_UstNr],[UStVPo_USteuerbetrag],[UStVPo_Schnittstelle],[UStVPo_SchnittstellenNr],[UStVPo_Umrechnungskurs],[UStVPo_USteuerbetragEUR],[UStVPo_Sachbearbeiter], [UStVPo_daId], [UStVPo_daId_loeschbar] ,[UStVPo_VZ],[UStVPo_VZ_RKID] ,cast(case when isnull([UStVPo_VZ_RKID],0) = 0 then 0 else 1 end as bit) as VZabrechnet
|
||||||
FROM [tblUStVPositionen]
|
FROM [tblUStVPositionen]
|
||||||
LEFT JOIN [tblUStVLeistender] as leist
|
LEFT JOIN [tblUStVLeistender] as leist
|
||||||
@@ -207,17 +200,18 @@ Public Class frmMDM_USTVAntrag
|
|||||||
DirectCast(r.Cells("clmnPDF"), DataGridViewImageCell).Value = My.Resources.pdf
|
DirectCast(r.Cells("clmnPDF"), DataGridViewImageCell).Value = My.Resources.pdf
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If Not (r.Cells("UStVPo_SchnittstellenNr").Value = 4 OrElse r.Cells("UStVPo_SchnittstellenNr").Value = 9) AndAlso Not r.Cells("UStVPo_ReNr").Value.ToString.ToLower.StartsWith("bis") Then 'MSE und "SAMMELBERIFF" ausnehmen
|
||||||
|
Dim rechnungsNr = CStr(r.Cells("UStVPo_ReNr").Value)
|
||||||
|
|
||||||
Dim rechnungsNr = CStr(r.Cells("UStVPo_ReNr").Value)
|
If Not String.IsNullOrWhiteSpace(rechnungsNr) Then
|
||||||
|
If Not invoiceNumbers.Add(rechnungsNr) Then
|
||||||
If Not String.IsNullOrWhiteSpace(rechnungsNr) Then
|
r.Cells("UStVPo_ReNr").Style.BackColor = Color.IndianRed
|
||||||
If Not invoiceNumbers.Add(rechnungsNr) Then
|
End If
|
||||||
txtWarning.Text = "dopp. Rechnungsnr!"
|
|
||||||
Exit For
|
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Next
|
Next
|
||||||
|
|
||||||
If .Columns.Count > 1 Then
|
If .Columns.Count > 1 Then
|
||||||
@@ -1832,7 +1826,7 @@ Public Class frmMDM_USTVAntrag
|
|||||||
|
|
||||||
If UStVAn_ID > 0 Then
|
If UStVAn_ID > 0 Then
|
||||||
|
|
||||||
Dim invoiceNumbers As New HashSet(Of String)
|
|
||||||
|
|
||||||
dgvUSTVPositionen.GetOrder()
|
dgvUSTVPositionen.GetOrder()
|
||||||
|
|
||||||
@@ -1844,6 +1838,18 @@ Public Class frmMDM_USTVAntrag
|
|||||||
|
|
||||||
VERAG_PROG_ALLGEMEIN.cMDMFunctionsAllgemein.Update_UStVASummenNeuBerechnen_USTVA(USTV_ANTRAG.UStVAn_ID)
|
VERAG_PROG_ALLGEMEIN.cMDMFunctionsAllgemein.Update_UStVASummenNeuBerechnen_USTVA(USTV_ANTRAG.UStVAn_ID)
|
||||||
|
|
||||||
|
Dim invoiceNumbers As New HashSet(Of String)
|
||||||
|
For Each r In dgvUSTVPositionen.Rows
|
||||||
|
Dim rechnungsNr = CStr(r.Cells("UStVPo_ReNr").Value)
|
||||||
|
|
||||||
|
If Not String.IsNullOrWhiteSpace(rechnungsNr) Then
|
||||||
|
If Not invoiceNumbers.Add(rechnungsNr) Then
|
||||||
|
MessageBox.Show($"Doppelt erfasste RechnungsNr vorhanden: {rechnungsNr}")
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
If USTV_ANTRAG.UStVAn_Währungscode IsNot Nothing AndAlso USTV_ANTRAG.UStVAn_Währungscode <> "EUR" AndAlso USTV_ANTRAG.UStVAn_Währungscode <> "" Then
|
If USTV_ANTRAG.UStVAn_Währungscode IsNot Nothing AndAlso USTV_ANTRAG.UStVAn_Währungscode <> "EUR" AndAlso USTV_ANTRAG.UStVAn_Währungscode <> "" Then
|
||||||
Dim averageUmrechnungskurs As Double = 1
|
Dim averageUmrechnungskurs As Double = 1
|
||||||
Dim invoicedateOK As Boolean = True
|
Dim invoicedateOK As Boolean = True
|
||||||
@@ -1859,14 +1865,7 @@ Public Class frmMDM_USTVAntrag
|
|||||||
PosNr = row.Cells("UStVPo_ID").Value
|
PosNr = row.Cells("UStVPo_ID").Value
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim rechnungsNr = CStr(row.Cells("UStVPo_ReNr").Value)
|
|
||||||
|
|
||||||
If Not String.IsNullOrWhiteSpace(rechnungsNr) Then
|
|
||||||
If Not invoiceNumbers.Add(rechnungsNr) Then
|
|
||||||
MessageBox.Show($"Doppelt erfasste RechnungsNr: {rechnungsNr}")
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
Next
|
Next
|
||||||
averageUmrechnungskurs = averageUmrechnungskurs / dgvUSTVPositionen.Rows.Count
|
averageUmrechnungskurs = averageUmrechnungskurs / dgvUSTVPositionen.Rows.Count
|
||||||
|
|||||||
@@ -802,7 +802,7 @@ Public Class usrCntlUSTV
|
|||||||
|
|
||||||
|
|
||||||
Dim sqlStr = "SELECT [UStVAn_ID] as AntragsID,cast([UStVPo_ReDat] as date) as Rechnungsdatum,[UStVPo_ReNr] as RechnungsNr
|
Dim sqlStr = "SELECT [UStVAn_ID] as AntragsID,cast([UStVPo_ReDat] as date) as Rechnungsdatum,[UStVPo_ReNr] as RechnungsNr
|
||||||
FROM [VERAG].[dbo].[tblUStVPositionen] where Year([UStVPo_ReDat]) >= " & RechnungsjahrVon & " and Year([UStVPo_ReDat]) >= " & RechnungsjahrBis & "
|
FROM [VERAG].[dbo].[tblUStVPositionen] where Year([UStVPo_ReDat]) >= " & RechnungsjahrVon & " and Year([UStVPo_ReDat]) <= " & RechnungsjahrBis & "
|
||||||
group by [UStVAn_ID] ,[UStVPo_ReNr], [UStVPo_ReDat]
|
group by [UStVAn_ID] ,[UStVPo_ReNr], [UStVPo_ReDat]
|
||||||
HAVING COUNT(*) > 1
|
HAVING COUNT(*) > 1
|
||||||
order by [UStVAn_ID] desc"
|
order by [UStVAn_ID] desc"
|
||||||
|
|||||||
@@ -1704,7 +1704,7 @@ Public Class frmBelegNeu
|
|||||||
|
|
||||||
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, KASSE.rksv_CompanyGUID, KASSE.rksv_Umsatzzaehler, BELEG.BelegDat, BELEG.Steuerschlüssel, RKSV_Beleg_Id, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), TESTBUCHUNG, BELEG.POS, QR_CodeString, LastJWS)
|
Dim result = cRKSV.insertRKSVFiskaltrustAsync(KASSE, BELEG, RKSV_Beleg_Id, If(EA = "E", summeBRUTTO, summeBRUTTO * -1), TESTBUCHUNG, QR_CodeString, LastJWS)
|
||||||
'result.Wait()
|
'result.Wait()
|
||||||
verarbeitet = result
|
verarbeitet = result
|
||||||
Else
|
Else
|
||||||
@@ -2028,7 +2028,7 @@ Public Class frmBelegNeu
|
|||||||
|
|
||||||
If vbYes = MsgBox(result & vbNewLine & vbNewLine & "Testdaten in DB speichern?", vbYesNoCancel) 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)
|
client_chilkat.saveRKSV_FT(result, QR_CodeString, Nothing, False)
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
Return False
|
Return False
|
||||||
|
|||||||
@@ -207,6 +207,8 @@ Public Class frmKassenbuch
|
|||||||
' " ORDER BY b.rksv_BelegId DESC;", "FMZOLL")
|
' " ORDER BY b.rksv_BelegId DESC;", "FMZOLL")
|
||||||
.LOAD()
|
.LOAD()
|
||||||
|
|
||||||
|
If .Rows.Count = 0 Then Exit Sub
|
||||||
|
|
||||||
.Columns("Betrag").DefaultCellStyle.Format = "C"
|
.Columns("Betrag").DefaultCellStyle.Format = "C"
|
||||||
.Columns("Betrag").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopRight
|
.Columns("Betrag").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopRight
|
||||||
.Columns("Ordnungsbegriff").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
.Columns("Ordnungsbegriff").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
||||||
@@ -273,6 +275,8 @@ Public Class frmKassenbuch
|
|||||||
' " " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' ORDER BY JournalNr DESC", "FMZOLL")
|
' " " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' ORDER BY JournalNr DESC", "FMZOLL")
|
||||||
.LOAD()
|
.LOAD()
|
||||||
|
|
||||||
|
If .Rows.Count = 0 Then Exit Sub
|
||||||
|
|
||||||
.Columns("JournalNr").Width = 55
|
.Columns("JournalNr").Width = 55
|
||||||
.Columns("JournalNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
.Columns("JournalNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
||||||
.Columns("Brutto").DefaultCellStyle.Format = "C"
|
.Columns("Brutto").DefaultCellStyle.Format = "C"
|
||||||
@@ -1007,10 +1011,24 @@ Public Class frmKassenbuch
|
|||||||
Dim LastJWS As String = ""
|
Dim LastJWS As String = ""
|
||||||
Dim answer = ""
|
Dim answer = ""
|
||||||
If KASSETmp.rksv_aktiv Then
|
If KASSETmp.rksv_aktiv Then
|
||||||
If Not cRKSV.stornoRKSV(KASSETmp, BELEGTmp.BelegDat, BELEGTmp.Steuerschlüssel, BELEGTmp.rksv_BelegId, BELEGTmp.rksv_umsatz, QRQString, LastJWS, answer) Then
|
|
||||||
MessageBox.Show("Fehler bei der RKSV-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
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
|
||||||
Exit Sub
|
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
|
||||||
|
MessageBox.Show("Fehler bei der RKSV-FT-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
Else
|
||||||
|
If Not cRKSV.stornoRKSV(KASSETmp, BELEGTmp.BelegDat, BELEGTmp.Steuerschlüssel, BELEGTmp.rksv_BelegId, BELEGTmp.rksv_umsatz, QRQString, LastJWS, answer) Then
|
||||||
|
MessageBox.Show("Fehler bei der RKSV-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
If KASSETmp.rksvDE_aktiv Then
|
If KASSETmp.rksvDE_aktiv Then
|
||||||
Dim PERSONALTmp1 As cPersonal = FMZOLL_SQL.getPersonalById(BELEGTmp.Benutzer)
|
Dim PERSONALTmp1 As cPersonal = FMZOLL_SQL.getPersonalById(BELEGTmp.Benutzer)
|
||||||
@@ -1075,14 +1093,25 @@ Public Class frmKassenbuch
|
|||||||
Dim LastJWS As String = ""
|
Dim LastJWS As String = ""
|
||||||
Dim answer = ""
|
Dim answer = ""
|
||||||
If KASSETmp.rksv_aktiv Then
|
If KASSETmp.rksv_aktiv Then
|
||||||
If Not cRKSV.stornoRKSV(KASSETmp, BELEGTmp.BelegDat, BELEGTmp.Steuerschlüssel, If(BELEGTmp.rksv_BelegIdStorno, BELEGTmp.rksv_BelegId), BELEGTmp.rksv_umsatz, QRQString, LastJWS, answer) Then
|
|
||||||
'FEHLER!!
|
If KASSETmp.rksv_FT_CashboxID IsNot Nothing AndAlso KASSETmp.rksv_FT_CashboxID <> "" AndAlso BELEGTmp.FT_ReceiptReference IsNot Nothing Then
|
||||||
If KASSETmp.rksv_StornoIncreaseBelegCnt Then BELEGTmp.rksv_BelegIdStorno = Nothing
|
Dim client_chilkat As New cFiskaltrustClient_chilkat(KASSETmp.rksv_FT_RestServiceURL, KASSETmp.rksv_FT_CashboxID, KASSETmp.rksv_FT_AccessToken, KASSETmp.rksv_FT_Country)
|
||||||
BELEGTmp = cRKSV.STORNO_RUECKGAENGIG(BELEGTmp, grund, KASSETmp.rksv_firma) 'Beleg storno und Kassenbuch Gegenbuchung
|
If Not cRKSV.stornoRKSV_FT(KASSETmp, BELEGTmp, QRQString, LastJWS, answer) Then
|
||||||
MessageBox.Show("Fehler bei der RKSV-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
|
||||||
|
|
||||||
|
Else
|
||||||
|
If Not cRKSV.stornoRKSV(KASSETmp, BELEGTmp.BelegDat, BELEGTmp.Steuerschlüssel, If(BELEGTmp.rksv_BelegIdStorno, BELEGTmp.rksv_BelegId), BELEGTmp.rksv_umsatz, QRQString, LastJWS, answer) Then
|
||||||
|
'FEHLER!!
|
||||||
|
If KASSETmp.rksv_StornoIncreaseBelegCnt Then BELEGTmp.rksv_BelegIdStorno = Nothing
|
||||||
|
BELEGTmp = cRKSV.STORNO_RUECKGAENGIG(BELEGTmp, grund, KASSETmp.rksv_firma) 'Beleg storno und Kassenbuch Gegenbuchung
|
||||||
|
MessageBox.Show("Fehler bei der RKSV-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If KASSETmp.rksvDE_aktiv Then
|
If KASSETmp.rksvDE_aktiv Then
|
||||||
If Not cRKSV.stornoRKSV_DE(PERSONALTmp, BELEGTmp, KASSETmp, If(BELEGTmp.rksv_BelegIdStorno, BELEGTmp.rksv_BelegId), BELEGTmp.rksv_BelegId, BELEGTmp.rksv_umsatz, QRQString, LastJWS, False, answer) Then
|
If Not cRKSV.stornoRKSV_DE(PERSONALTmp, BELEGTmp, KASSETmp, If(BELEGTmp.rksv_BelegIdStorno, BELEGTmp.rksv_BelegId), BELEGTmp.rksv_BelegId, BELEGTmp.rksv_umsatz, QRQString, LastJWS, False, answer) Then
|
||||||
'FEHLER!!
|
'FEHLER!!
|
||||||
|
|||||||
@@ -71,6 +71,7 @@
|
|||||||
<package id="Microsoft.Extensions.Primitives" version="5.0.0" targetFramework="net48" />
|
<package id="Microsoft.Extensions.Primitives" version="5.0.0" targetFramework="net48" />
|
||||||
<package id="Newtonsoft.Json" version="13.0.4" targetFramework="net48" />
|
<package id="Newtonsoft.Json" version="13.0.4" targetFramework="net48" />
|
||||||
<package id="Portable.BouncyCastle" version="1.8.5" targetFramework="net48" />
|
<package id="Portable.BouncyCastle" version="1.8.5" targetFramework="net48" />
|
||||||
|
<package id="QRCoder" version="1.8.0" targetFramework="net48" />
|
||||||
<package id="System.Buffers" version="4.5.1" targetFramework="net48" />
|
<package id="System.Buffers" version="4.5.1" targetFramework="net48" />
|
||||||
<package id="System.Diagnostics.DiagnosticSource" version="5.0.0" targetFramework="net48" />
|
<package id="System.Diagnostics.DiagnosticSource" version="5.0.0" targetFramework="net48" />
|
||||||
<package id="System.Interactive.Async" version="4.0.0" targetFramework="net48" />
|
<package id="System.Interactive.Async" version="4.0.0" targetFramework="net48" />
|
||||||
|
|||||||
Reference in New Issue
Block a user