Anbindung AZEZ-KI API, etc.
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
Public Class usrcntlVAT_ATEZ
|
||||
Imports System.Web.UI.WebControls.Expressions
|
||||
|
||||
Public Class usrcntlVAT_ATEZ
|
||||
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
Dim user, pw As String
|
||||
Dim land As String
|
||||
@@ -61,17 +63,19 @@
|
||||
|
||||
|
||||
Sub initDataTable()
|
||||
|
||||
dataTable.Columns.Add("count", GetType(Integer))
|
||||
dataTable.Columns.Add("currency", GetType(String))
|
||||
dataTable.Columns.Add("invoice_id", GetType(String))
|
||||
dataTable.Columns.Add("seller_VAT_id", GetType(String))
|
||||
dataTable.Columns.Add("seller_address_city", GetType(String))
|
||||
dataTable.Columns.Add("seller_address_country", GetType(String))
|
||||
dataTable.Columns.Add("seller_address_postcode", GetType(String))
|
||||
dataTable.Columns.Add("total_vat_amount", GetType(Double))
|
||||
dataTable.Columns.Add("seller_address_street", GetType(String))
|
||||
dataTable.Columns.Add("seller_name", GetType(String))
|
||||
dataTable.Columns.Add("status", GetType(String))
|
||||
dataTable.Columns.Add("invoice_date", GetType(DateTime))
|
||||
dataTable.Columns.Add("document_count", GetType(Integer))
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -83,37 +87,64 @@
|
||||
If dgvVAT.Columns.Count > 0 Then
|
||||
With dgvVAT
|
||||
.RowHeadersWidth = 10
|
||||
.Columns("count").HeaderText = "#"
|
||||
.Columns("count").Width = 25
|
||||
.Columns("currency").HeaderText = "Währung"
|
||||
.Columns("currency").Width = 50
|
||||
.Columns("invoice_id").HeaderText = "Rechnungs-Nr"
|
||||
.Columns("seller_VAT_id").HeaderText = "UID-Nr"
|
||||
.Columns("seller_VAT_id").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
||||
.Columns("seller_VAT_id").Width = 100
|
||||
.Columns("seller_address_city").Width = 100
|
||||
.Columns("seller_address_city").HeaderText = "Nr"
|
||||
.Columns("seller_address_city").HeaderText = "Stadt"
|
||||
.Columns("seller_address_country").Visible = False
|
||||
.Columns("seller_address_country").HeaderText = "Land"
|
||||
.Columns("seller_address_postcode").Width = 100
|
||||
.Columns("total_vat_amount").HeaderText = "MWST"
|
||||
.Columns("seller_address_postcode").Width = 75
|
||||
.Columns("seller_address_postcode").HeaderText = "PLZ"
|
||||
.Columns("seller_address_street").Width = 100
|
||||
.Columns("seller_address_street").Width = 125
|
||||
.Columns("seller_address_street").HeaderText = "Strasse"
|
||||
.Columns("seller_name").Width = 100
|
||||
.Columns("seller_name").HeaderText = "Verkäufer"
|
||||
.Columns("status").Width = 100
|
||||
.Columns("seller_name").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
||||
.Columns("seller_name").HeaderText = "Leistender"
|
||||
.Columns("status").Width = 75
|
||||
.Columns("status").HeaderText = "Status"
|
||||
.Columns("invoice_date").Width = 100
|
||||
.Columns("invoice_date").HeaderText = "Rechnungsdatum"
|
||||
.Columns("document_count").HeaderText = "Seite"
|
||||
.Columns("document_count").Width = 50
|
||||
End With
|
||||
|
||||
For Each row As DataGridViewRow In dgvVAT.Rows
|
||||
If Not IsDBNull(row.Cells("status").Value) Then
|
||||
Dim akiv As String = (row.Cells("status").Value.ToString).ToLower
|
||||
If akiv = "active" Then
|
||||
row.DefaultCellStyle.BackColor = Color.LightGreen
|
||||
If akiv = "success" Then
|
||||
|
||||
If Not IsDBNull(row.Cells("total_vat_amount").Value) Then
|
||||
|
||||
If IsNumeric(row.Cells("total_vat_amount").Value) AndAlso row.Cells("total_vat_amount").Value <> 0 Then
|
||||
row.DefaultCellStyle.BackColor = Color.LightGreen
|
||||
Else
|
||||
row.DefaultCellStyle.BackColor = Color.IndianRed
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
row.DefaultCellStyle.BackColor = Color.LightYellow
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
ElseIf akiv = "nonactive" Then
|
||||
row.DefaultCellStyle.BackColor = Color.IndianRed
|
||||
Else
|
||||
row.DefaultCellStyle.BackColor = Color.LightYellow
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Next
|
||||
|
||||
End If
|
||||
@@ -127,7 +158,8 @@
|
||||
' If Me.Parent.GetType() Is GetType(Form) Then o = Me.FindForm
|
||||
|
||||
For Each row As DataGridViewRow In dgvVAT.SelectedRows
|
||||
va = New VAT(IIf(IsDBNull(row.Cells("currency").Value), "", row.Cells("currency").Value),
|
||||
va = New VAT(IIf(IsDBNull(row.Cells("count").Value), "", row.Cells("count").Value),
|
||||
IIf(IsDBNull(row.Cells("currency").Value), "", row.Cells("currency").Value),
|
||||
IIf(IsDBNull(row.Cells("invoice_id").Value), "", row.Cells("invoice_id").Value),
|
||||
IIf(IsDBNull(row.Cells("seller_VAT_id").Value), "", row.Cells("seller_VAT_id").Value),
|
||||
IIf(IsDBNull(row.Cells("seller_address_city").Value), "", row.Cells("seller_address_city").Value),
|
||||
@@ -137,7 +169,8 @@
|
||||
IIf(IsDBNull(row.Cells("seller_name").Value), "", row.Cells("seller_name").Value),
|
||||
IIf(IsDBNull(row.Cells("total_VAT_amount").Value), "", row.Cells("total_VAT_amount").Value),
|
||||
IIf(IsDBNull(row.Cells("invoice_date").Value) Or Not IsDate(row.Cells("invoice_date").Value), Nothing, CDate(row.Cells("invoice_date").Value)),
|
||||
IIf(IsDBNull(row.Cells("status").Value), "", row.Cells("status").Value))
|
||||
IIf(IsDBNull(row.Cells("status").Value), "", row.Cells("status").Value),
|
||||
IIf(IsDBNull(row.Cells("document_count").Value), "", row.Cells("document_count").Value))
|
||||
Next
|
||||
|
||||
If va.status.ToLower <> "success" Then
|
||||
@@ -161,6 +194,7 @@
|
||||
|
||||
Public Class VAT
|
||||
|
||||
Public Property count As Integer
|
||||
Public Property currency As String
|
||||
Public Property invoice_id As String
|
||||
Public Property seller_VAT_id As String
|
||||
@@ -172,9 +206,11 @@
|
||||
Public Property invoice_date As Date
|
||||
Public Property total_VAT_amount As String
|
||||
Public Property status As String
|
||||
Public Property document_count As Integer
|
||||
|
||||
|
||||
Public Sub New(_currency As String, _invoice_id As String, _seller_VAT_id As String, _seller_address_city As String, _seller_address_country As String, _seller_address_postcode As String, _seller_address_street As String, _seller_name As String, _total_VAT_amount As String, _invoice_date As DateTime, _status As String)
|
||||
Public Sub New(_count As Integer, _currency As String, _invoice_id As String, _seller_VAT_id As String, _seller_address_city As String, _seller_address_country As String, _seller_address_postcode As String, _seller_address_street As String, _seller_name As String, _total_VAT_amount As String, _invoice_date As DateTime, _status As String, _document_count As Integer)
|
||||
count = _count
|
||||
currency = _currency
|
||||
invoice_id = _invoice_id
|
||||
seller_VAT_id = _seller_VAT_id
|
||||
@@ -186,6 +222,7 @@
|
||||
total_VAT_amount = _total_VAT_amount
|
||||
invoice_date = _invoice_date
|
||||
status = _status
|
||||
document_count = _document_count
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
957
SDL/USTV/frmMDM_USTVAntrag.Designer.vb
generated
957
SDL/USTV/frmMDM_USTVAntrag.Designer.vb
generated
File diff suppressed because it is too large
Load Diff
@@ -123,6 +123,9 @@
|
||||
<metadata name="ContextMenuStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>174, 17</value>
|
||||
</metadata>
|
||||
<metadata name="cnS_KIUPLOAD.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>330, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
Imports System.IO
|
||||
Imports System.Reflection
|
||||
Imports System.Windows.Documents
|
||||
Imports com
|
||||
Imports itextsharp.text.pdf
|
||||
Imports itextsharp.text.pdf.parser
|
||||
Imports Microsoft.Office.Interop
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
@@ -578,10 +576,7 @@ Public Class frmMDM_USTVAntrag
|
||||
setinfofields()
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.AUTO_ABF_NR Then btnAbfertigungsNrVergeben.Visible = True
|
||||
|
||||
scanUSTVA.INIT(USTV_ANTRAG.UStVAn_KuNr, "MDM", "USTVA_KI_" & USTV_ANTRAG.UStVAn_ID)
|
||||
|
||||
btnPDFauslesen.Enabled = scanUSTVA.getDS().da_id > 0
|
||||
initScanUSTVA()
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -699,7 +694,7 @@ Public Class frmMDM_USTVAntrag
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Shared Function loadUSTVFrom_PLOSE(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien, MWSTSummenAusBeleg) As Boolean
|
||||
Shared Function loadUSTVFrom_PLOSE(UStVAn_ID As Integer, Antrag_LandKz As String, ArchivierteEintracheNochmalsEinarbetien As Boolean, MWSTSummenAusBeleg As Boolean) As Boolean
|
||||
Try
|
||||
Dim bytSchnittstellenNr = IIf(MWSTSummenAusBeleg, 11, 6)
|
||||
Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID)
|
||||
@@ -799,21 +794,21 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
If USTV_ANTRAG.UStVAn_Währungscode <> "EUR" AndAlso ANTRAG.plose_WaehrungAbbuchung = "EUR" Then
|
||||
|
||||
UST_org = Math.round(kurs.EXCHANGE_EURTOCUR(UST_EUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
UST_org = Math.Round(kurs.EXCHANGE_EURTOCUR(UST_EUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
|
||||
ElseIf USTV_ANTRAG.UStVAn_Währungscode = "EUR" AndAlso ANTRAG.plose_WaehrungAbbuchung <> "EUR" Then
|
||||
|
||||
UST_EUR = Math.round(kurs.EXCHANGE_CURTOEUR(UST_org, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
UST_EUR = Math.Round(kurs.EXCHANGE_CURTOEUR(UST_org, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
|
||||
ElseIf USTV_ANTRAG.UStVAn_Währungscode <> "EUR" AndAlso ANTRAG.plose_WaehrungAbbuchung <> "EUR" Then
|
||||
|
||||
UST_EUR = Math.round(kurs.EXCHANGE_CURTOEUR(UST_org, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
UST_EUR = Math.Round(kurs.EXCHANGE_CURTOEUR(UST_org, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If (UST_org <> 0 AndAlso UST_org <> UST_EUR) Then
|
||||
umrechKurs = Math.floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
End If
|
||||
|
||||
|
||||
@@ -852,7 +847,7 @@ Public Class frmMDM_USTVAntrag
|
||||
End Function
|
||||
|
||||
|
||||
Shared Function loadUSTVFrom_VERAG(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean
|
||||
Shared Function loadUSTVFrom_VERAG(UStVAn_ID As Integer, Antrag_LandKz As String, ArchivierteEintracheNochmalsEinarbetien As Boolean) As Boolean
|
||||
Try
|
||||
|
||||
If Antrag_LandKz <> "AT" Then
|
||||
@@ -937,7 +932,7 @@ Public Class frmMDM_USTVAntrag
|
||||
Dim umrechKurs As Double = 1
|
||||
Dim UST_EUR = CDbl(r.Item("SteuerbetragLokal"))
|
||||
|
||||
UST_EUR = Math.round(UST_EUR, 2)
|
||||
UST_EUR = Math.Round(UST_EUR, 2)
|
||||
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR
|
||||
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
|
||||
@@ -968,7 +963,7 @@ Public Class frmMDM_USTVAntrag
|
||||
End Function
|
||||
|
||||
|
||||
Shared Function loadUSTVFrom_RMC(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean
|
||||
Shared Function loadUSTVFrom_RMC(UStVAn_ID As Integer, Antrag_LandKz As String, ArchivierteEintracheNochmalsEinarbetien As Boolean) As Boolean
|
||||
|
||||
Try
|
||||
Dim bytSchnittstellenNr = 7
|
||||
@@ -1023,12 +1018,12 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
'umrechKurs = frmdw / eur
|
||||
|
||||
umrechKurs = Math.floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
|
||||
End If
|
||||
|
||||
If CDbl(r.Item("rmc_betragMWST")) <> 0 Then
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.round((r.Item("rmc_betragMWST") / umrechKurs), 2)
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round((r.Item("rmc_betragMWST") / umrechKurs), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
|
||||
USTV_POS.UStVPo_USteuerbetrag = r.Item("rmc_betragMWST")
|
||||
End If
|
||||
@@ -1049,7 +1044,7 @@ Public Class frmMDM_USTVAntrag
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Shared Function loadUSTVFrom_MSE(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean
|
||||
Shared Function loadUSTVFrom_MSE(UStVAn_ID As Integer, Antrag_LandKz As String, ArchivierteEintracheNochmalsEinarbetien As Boolean) As Boolean
|
||||
Try
|
||||
Dim bytSchnittstellenNr = 9 'damit von alter Schnittstelle und neue Schnittstelle keine Daten doppelt importiert werden
|
||||
Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID)
|
||||
@@ -1100,7 +1095,7 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
'umrechKurs = UST_org / UST_EUR
|
||||
|
||||
umrechKurs = Math.floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
|
||||
End If
|
||||
|
||||
@@ -1126,7 +1121,7 @@ Public Class frmMDM_USTVAntrag
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Shared Function loadUSTVFrom_UTA(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean
|
||||
Shared Function loadUSTVFrom_UTA(UStVAn_ID As Integer, Antrag_LandKz As String, ArchivierteEintracheNochmalsEinarbetien As Boolean) As Boolean
|
||||
Try
|
||||
Dim bytSchnittstellenNr = 10 'damit von alter Schnittstelle und neue Schnittstelle keine Daten doppelt importiert werden
|
||||
Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID)
|
||||
@@ -1181,7 +1176,7 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
|
||||
If (UST_org <> 0 AndAlso UST_org <> UST_EUR) Then
|
||||
umrechKurs = Math.floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
End If
|
||||
|
||||
|
||||
@@ -1208,7 +1203,7 @@ Public Class frmMDM_USTVAntrag
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Shared Function loadUSTVFrom_IDS(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean
|
||||
Shared Function loadUSTVFrom_IDS(UStVAn_ID As Integer, Antrag_LandKz As String, ArchivierteEintracheNochmalsEinarbetien As Boolean) As Boolean
|
||||
Try
|
||||
'Dim bytSchnittstellenNr = 8 'damit von alter Schnittstelle und neue Schnittstelle keine Daten doppelt importiert werden
|
||||
Dim bytSchnittstellenNr = 12
|
||||
@@ -1292,11 +1287,11 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
If USTV_ANTRAG.UStVAn_Währungscode <> "EUR" Then
|
||||
Dim kurs As New cEZB_Waehrungskurse(USTV_ANTRAG.UStVAn_Währungscode)
|
||||
UST_org = Math.round(kurs.EXCHANGE_EURTOCUR(UST_EUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
UST_org = Math.Round(kurs.EXCHANGE_EURTOCUR(UST_EUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
End If
|
||||
|
||||
If (UST_org <> 0 AndAlso UST_org <> UST_EUR) Then
|
||||
umrechKurs = Math.floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
|
||||
End If
|
||||
|
||||
|
||||
@@ -1323,7 +1318,7 @@ Public Class frmMDM_USTVAntrag
|
||||
End Function
|
||||
|
||||
|
||||
Shared Function loadUSTVFrom_ATEZ_KI(UStVAn_ID As Integer, Antrag_LandKz As String, atez_api As cATEZ_NCTS_IN, daid As Integer) As Boolean
|
||||
Shared Function loadUSTVFrom_ATEZ_KI(UStVAn_ID As Integer, Antrag_LandKz As String, atez_api As cATEZ_NCTS_IN, daid As Integer, pageCount As Integer, documentType As String) As Boolean
|
||||
Try
|
||||
|
||||
Dim bytSchnittstellenNr = -1
|
||||
@@ -1335,6 +1330,7 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
If dt IsNot Nothing And Not dt.Columns.Contains("currency") Then
|
||||
|
||||
dt.Columns.Add("count", GetType(Integer))
|
||||
dt.Columns.Add("currency", GetType(String))
|
||||
dt.Columns.Add("seller_VAT_id", GetType(String))
|
||||
dt.Columns.Add("seller_address_city", GetType(String))
|
||||
@@ -1346,6 +1342,7 @@ Public Class frmMDM_USTVAntrag
|
||||
dt.Columns.Add("invoice_id", GetType(String))
|
||||
dt.Columns.Add("invoice_date", GetType(String))
|
||||
dt.Columns.Add("status", GetType(String))
|
||||
dt.Columns.Add("document_count", GetType(Integer))
|
||||
End If
|
||||
|
||||
Dim failreDesc As String
|
||||
@@ -1357,8 +1354,8 @@ Public Class frmMDM_USTVAntrag
|
||||
Else
|
||||
'If API.SendRequestWithAuthHeader("application/json", failreDesc, "/health", "GET") = "200" Then
|
||||
|
||||
'document_type = vat_invoice or receipt
|
||||
If atez_api.setJsonVAT("vat_invoice", daid) Then
|
||||
|
||||
If atez_api.setJsonVAT(documentType, daid) Then
|
||||
|
||||
resp = atez_api.SendRequestWithAuthHeader("application/json", failreDesc, "/process", "POST", dt)
|
||||
|
||||
@@ -1371,84 +1368,150 @@ Public Class frmMDM_USTVAntrag
|
||||
If f.ShowDialog = DialogResult.OK Then
|
||||
|
||||
|
||||
Dim DS_ORIG_alreadyDeleted As Boolean = False
|
||||
Dim DS_ORIG As New cDATENSERVER(daid)
|
||||
Dim fi_orig As New FileInfo(DS_ORIG.GET_TOP1_PATH())
|
||||
|
||||
For Each r As DataGridViewRow In f.usrcntlVAT_ATEZ1.dgvVAT.SelectedRows
|
||||
|
||||
Dim sql As New SQL
|
||||
'Dim kdnr = r.Cells("Kundennummer").Value
|
||||
|
||||
Dim USTV_POS As New VERAG_PROG_ALLGEMEIN.cUStVPositionen
|
||||
|
||||
|
||||
Dim reDat As Date = IIf(Not IsDBNull(r.Cells("invoice_date").Value) AndAlso IsDate(r.Cells("invoice_date").Value), r.Cells("invoice_date").Value, Nothing)
|
||||
|
||||
USTV_POS.UStVAn_ID = USTV_ANTRAG.[UStVAn_ID]
|
||||
USTV_POS.UStVPo_ID = USTV_ANTRAG.getMaxPosNr
|
||||
USTV_POS.UStVPo_ReDat = r.Cells("invoice_date").Value
|
||||
USTV_POS.UStVPo_ReDat = reDat.ToShortDateString
|
||||
USTV_POS.UStVPo_ReNr = r.Cells("invoice_id").Value.ToString
|
||||
USTV_POS.UStVPo_SchnittstellenNr = bytSchnittstellenNr
|
||||
|
||||
USTV_POS.UStVPo_Leistender =
|
||||
USTV_POS.UStVPo_Leistungsbezeichnung = "Maut/Diesel"
|
||||
USTV_POS.UStVPo_Schnittstelle = True
|
||||
|
||||
Dim leistenderName As String = r.Cells("seller_name").Value
|
||||
|
||||
|
||||
|
||||
Dim leistender As New cUStVLeistender(leistenderName & " " & Antrag_LandKz, Antrag_LandKz)
|
||||
If leistender.UStV_LeistenderId < 1 Then
|
||||
leistender = New cUStVLeistender(leistenderName)
|
||||
End If
|
||||
|
||||
USTV_POS.UStVPo_Leistender = leistender.UStV_Leistender.ToString
|
||||
USTV_POS.UStVPo_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
|
||||
USTV_POS.UStVPo_Zeitstempel = Now()
|
||||
If Not alreadyExists(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then
|
||||
|
||||
|
||||
'1. Antragswährung = Belegswährung (EUR zu FREMD und FREMD zu EUR)
|
||||
If r.Cells("currency").Value = USTV_ANTRAG.UStVAn_Währungscode Then
|
||||
Dim kurs As New cEZB_Waehrungskurse(USTV_ANTRAG.UStVAn_Währungscode)
|
||||
If USTV_ANTRAG.UStVAn_Währungscode = "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = r.Cells("total_VAT_amount").Value
|
||||
If USTV_ANTRAG.UStVAn_Währungscode <> "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetrag = Math.Round(kurs.EXCHANGE_EURTOCUR(r.Cells("total_VAT_amount").Value, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
Else
|
||||
USTV_POS.UStVPo_USteuerbetrag = r.Cells("total_VAT_amount").Value
|
||||
USTV_POS.UStVPo_Umrechnungskurs = 1
|
||||
End If
|
||||
|
||||
If pageCount = r.Cells("document_count").Value Then
|
||||
USTV_POS.UStVPo_daId_loeschbar = True
|
||||
|
||||
Dim DS_NEW As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "ATEZ_KI", Now.Year, Now.ToString("yyyyMMdd"), fi_orig.Name, USTV_ANTRAG.UStVAn_KuNr, False)
|
||||
If Not DS_NEW.uploadDataToDATENSERVER(fi_orig.FullName) Then MsgBox("Fehler beim Speichern: Datenserver!") : Return False
|
||||
If DS_NEW.da_id <= 0 Then MsgBox("Keine DocId!") : Return False
|
||||
USTV_POS.UStVPo_daId = DS_NEW.da_id
|
||||
|
||||
'gesamtePDF wird gespeichert, alte DS kann gelscht werden:
|
||||
If DS_ORIG.DELETE_COMPLETE() Then DS_ORIG_alreadyDeleted = True
|
||||
|
||||
Else
|
||||
USTV_POS.UStVPo_daId_loeschbar = True
|
||||
|
||||
'todo: Logik Aufsplittung des PDF in Teilpdfs
|
||||
Dim pagestart = 0
|
||||
For Each pages As DataRow In dt.Rows
|
||||
pagestart += CInt(pages.Item("document_count"))
|
||||
If pages.Item("count") = r.Cells("count").Value Then Exit For
|
||||
Next
|
||||
|
||||
|
||||
|
||||
Dim TMP_Path_Old = fi_orig.FullName
|
||||
Dim TMP_Path_New = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(fi_orig.Name, fi_orig.Extension,, True, "USTVA_POS")
|
||||
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.ExtractPdfPages(TMP_Path_Old, TMP_Path_New, pagestart, r.Cells("document_count").Value)
|
||||
|
||||
|
||||
Dim DS_NEW As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "ATEZ_KI", Now.Year, Now.ToString("yyyyMMdd"), fi_orig.Name, USTV_ANTRAG.UStVAn_KuNr, False)
|
||||
If Not DS_NEW.uploadDataToDATENSERVER(TMP_Path_New) Then MsgBox("Fehler beim Speichern: Datenserver!") : Return False
|
||||
If DS_NEW.da_id <= 0 Then MsgBox("Keine DocId!") : Return False
|
||||
|
||||
USTV_POS.UStVPo_daId = DS_NEW.da_id
|
||||
|
||||
|
||||
USTV_POS.UStVPo_USteuerbetrag = r.Cells("total_VAT_amount").Value
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_CURTOEUR(r.Cells("total_VAT_amount").Value, r.Cells("currency").Value, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
End If
|
||||
Else
|
||||
'2. Antragswährung <> Belegswährung (EUR zu FREMD und FREMD zu EUR)
|
||||
If USTV_ANTRAG.UStVAn_Währungscode = "EUR" Then
|
||||
Dim kurs As New cEZB_Waehrungskurse(r.Cells("currency").Value)
|
||||
If r.Cells("currency").Value <> "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetrag = r.Cells("total_VAT_amount").Value
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_EURTOCUR(r.Cells("total_VAT_amount").Value, r.Cells("currency").Value, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
ElseIf r.Cells("currency").Value = "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetrag = Math.Round(kurs.EXCHANGE_EURTOCUR(r.Cells("total_VAT_amount").Value, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = USTV_POS.UStVPo_USteuerbetrag
|
||||
USTV_POS.UStVPo_Umrechnungskurs = 1
|
||||
End If
|
||||
Else
|
||||
'2.1 Antragswährung <> Belegswährung (FREMD zu FREMD)
|
||||
|
||||
USTV_POS.UStVPo_USteuerbetrag = VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuro(r.Cells("total_VAT_amount").Value, r.Cells("currency").Value, USTV_ANTRAG.UStVAn_Währungscode)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Dim leistenderName As String = r.Cells("seller_name").Value
|
||||
Dim leistenderUID As String = r.Cells("seller_VAT_id").Value
|
||||
Dim leistender As New cUStVLeistender(leistenderUID, True)
|
||||
|
||||
If leistender.UStV_LeistenderId < 1 Then
|
||||
leistender = New cUStVLeistender(leistenderName & " " & Antrag_LandKz, Antrag_LandKz)
|
||||
End If
|
||||
If leistender.UStV_LeistenderId < 1 Then
|
||||
leistender = New cUStVLeistender(leistenderName)
|
||||
End If
|
||||
|
||||
USTV_POS.UStVPo_Leistender = leistender.UStV_Leistender.ToString
|
||||
USTV_POS.UStVPo_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
|
||||
USTV_POS.UStVPo_Zeitstempel = Now()
|
||||
|
||||
'1. Antragswährung = Belegswährung (EUR zu FREMD und FREMD zu EUR)
|
||||
If r.Cells("currency").Value = USTV_ANTRAG.UStVAn_Währungscode Then
|
||||
Dim kurs As New cEZB_Waehrungskurse(USTV_ANTRAG.UStVAn_Währungscode)
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_CURTOEUR(r.Cells("total_VAT_amount").Value, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
If USTV_ANTRAG.UStVAn_Währungscode = "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = r.Cells("total_VAT_amount").Value
|
||||
If USTV_ANTRAG.UStVAn_Währungscode <> "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetrag = Math.Round(kurs.EXCHANGE_EURTOCUR(r.Cells("total_VAT_amount").Value, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
Else
|
||||
USTV_POS.UStVPo_USteuerbetrag = r.Cells("total_VAT_amount").Value
|
||||
USTV_POS.UStVPo_Umrechnungskurs = 1
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
USTV_POS.UStVPo_USteuerbetrag = r.Cells("total_VAT_amount").Value
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_CURTOEUR(r.Cells("total_VAT_amount").Value, r.Cells("currency").Value, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
End If
|
||||
Else
|
||||
'2. Antragswährung <> Belegswährung (EUR zu FREMD und FREMD zu EUR)
|
||||
If USTV_ANTRAG.UStVAn_Währungscode = "EUR" Then
|
||||
Dim kurs As New cEZB_Waehrungskurse(r.Cells("currency").Value)
|
||||
If r.Cells("currency").Value <> "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetrag = r.Cells("total_VAT_amount").Value
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_EURTOCUR(r.Cells("total_VAT_amount").Value, r.Cells("currency").Value, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
ElseIf r.Cells("currency").Value = "EUR" Then
|
||||
USTV_POS.UStVPo_USteuerbetrag = Math.Round(kurs.EXCHANGE_EURTOCUR(r.Cells("total_VAT_amount").Value, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = USTV_POS.UStVPo_USteuerbetrag
|
||||
USTV_POS.UStVPo_Umrechnungskurs = 1
|
||||
End If
|
||||
Else
|
||||
'2.1 Antragswährung <> Belegswährung (FREMD zu FREMD)
|
||||
|
||||
USTV_POS.UStVPo_USteuerbetrag = VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuro(r.Cells("total_VAT_amount").Value, r.Cells("currency").Value, USTV_ANTRAG.UStVAn_Währungscode)
|
||||
Dim kurs As New cEZB_Waehrungskurse(USTV_ANTRAG.UStVAn_Währungscode)
|
||||
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_CURTOEUR(r.Cells("total_VAT_amount").Value, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
|
||||
USTV_POS.UStVPo_Umrechnungskurs = Math.Floor((CDbl(USTV_POS.UStVPo_USteuerbetrag) / CDbl(USTV_POS.UStVPo_USteuerbetragEUR) * 100 + 0.5)) / 100
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
USTV_POS.INSERT()
|
||||
|
||||
End If
|
||||
|
||||
USTV_POS.INSERT()
|
||||
|
||||
Next
|
||||
|
||||
If Not DS_ORIG_alreadyDeleted Then
|
||||
DS_ORIG.DELETE_COMPLETE()
|
||||
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
@@ -1844,17 +1907,18 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
End If
|
||||
|
||||
Dim Leistungsbezeichnung = ""
|
||||
If UstCntlUSTV_AntragPosition1.cboSchnittstellennr._value = 3 Then Leistungsbezeichnung = UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_Leistungsbezeichnung
|
||||
|
||||
If setArchiv(UstCntlUSTV_AntragPosition1.cboSchnittstellennr._value, UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_ReDat, UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_ReNr, UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_Leistungsbezeichnung) Then
|
||||
If setArchiv(UstCntlUSTV_AntragPosition1.cboSchnittstellennr._value, UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_ReDat, UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_ReNr, Leistungsbezeichnung) Then
|
||||
If UstCntlUSTV_AntragPosition1.UStV_POS.DELETE(UstCntlUSTV_AntragPosition1.UStV_POS.UStVAn_ID, UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_ID) Then
|
||||
reorderUSTVAPositions(UstCntlUSTV_AntragPosition1.UStV_POS.UStVAn_ID)
|
||||
End If
|
||||
init()
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
UstCntlUSTV_AntragPosition1.Enabled = False
|
||||
UstCntlUSTV_AntragPosition1.Enabled = False
|
||||
|
||||
End If
|
||||
End Sub
|
||||
@@ -2770,8 +2834,10 @@ Public Class frmMDM_USTVAntrag
|
||||
End If
|
||||
|
||||
|
||||
Dim Leistungsbezeichnung = ""
|
||||
If r.Cells("UStVPo_SchnittstellenNr").Value = 3 Then Leistungsbezeichnung = r.Cells("UStVPo_Leistungsbezeichnung").Value
|
||||
|
||||
If setArchiv(r.Cells("UStVPo_SchnittstellenNr").Value, r.Cells("UStVPo_ReDat").Value, r.Cells("UStVPo_ReNr").Value, r.Cells("UStVPo_Leistungsbezeichnung").Value) Then
|
||||
If setArchiv(r.Cells("UStVPo_SchnittstellenNr").Value, r.Cells("UStVPo_ReDat").Value, r.Cells("UStVPo_ReNr").Value, Leistungsbezeichnung) Then
|
||||
Dim sqlstr = " DELETE FROM tblUStVPositionen WHERE UStVAn_ID=" & Me.UStVAn_ID & " AND UStVPo_ID=" & r.Cells("UStVPo_ID").Value
|
||||
If Not SQL.doSQL(sqlstr, "FMZOLL") Then
|
||||
Exit Sub
|
||||
@@ -2881,24 +2947,77 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
Private Sub scanUSTVA_FileAdded(id As String, path As String, name As String) Handles scanUSTVA.FileAdded
|
||||
btnPDFauslesen.Enabled = scanUSTVA.getDS.da_id > 0
|
||||
End Sub
|
||||
|
||||
Private Sub mnuItemKIUPLOAD_Clicked(sender As Object, e As EventArgs)
|
||||
|
||||
cnS_KIUPLOAD.Hide()
|
||||
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
|
||||
|
||||
If item IsNot Nothing Then
|
||||
|
||||
Dim daid As Integer = scanUSTVA.getDS().da_id
|
||||
|
||||
If daid > 0 Then
|
||||
|
||||
Dim DS As New cDATENSERVER(daid)
|
||||
|
||||
If DS.GET_TOP1_PATH <> "" Then
|
||||
|
||||
Dim pdfR As New PdfReader(DS.GET_TOP1_PATH)
|
||||
|
||||
|
||||
If atez_api IsNot Nothing Then
|
||||
|
||||
|
||||
|
||||
If vbYes = MsgBox("Möchten Sie die Rechnungsdaten der " & item.Text & " per ATEZ-API auslesen lassen?", vbYesNoCancel) Then
|
||||
|
||||
'document_type = vat_invoice or receipt
|
||||
loadUSTVFrom_ATEZ_KI(UStVAn_ID, Antrag_LandKz, atez_api, scanUSTVA.getDS().da_id, pdfR.NumberOfPages, item.Name)
|
||||
|
||||
initScanUSTVA()
|
||||
|
||||
End If
|
||||
|
||||
Else
|
||||
DS.DELETE_COMPLETE()
|
||||
initScanUSTVA()
|
||||
|
||||
End If
|
||||
init()
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub btnPDFauslesen_Click(sender As Object, e As EventArgs) Handles btnPDFauslesen.Click
|
||||
|
||||
If scanUSTVA.getDS().da_id > 0 Then
|
||||
'document_type = vat_invoice or receipt
|
||||
|
||||
|
||||
If atez_api IsNot Nothing Then
|
||||
If vbYes = MsgBox("Möchten Sie die Rechnungsdaten per ATEZ-API auslesen lassen?", vbYesNoCancel) Then
|
||||
|
||||
loadUSTVFrom_ATEZ_KI(UStVAn_ID, Antrag_LandKz, atez_api, scanUSTVA.getDS().da_id)
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
If Not cnS_KIUPLOAD.Items.ContainsKey("vat_invoice") Then
|
||||
Dim vat = New ToolStripMenuItem() With {.Text = "MWST-Rechnung(en)", .Name = "vat_invoice", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
||||
cnS_KIUPLOAD.Items.Add(vat)
|
||||
AddHandler vat.Click, AddressOf mnuItemKIUPLOAD_Clicked
|
||||
End If
|
||||
|
||||
|
||||
If Not cnS_KIUPLOAD.Items.ContainsKey("receipt") Then
|
||||
Dim receipt = New ToolStripMenuItem() With {.Text = "Quittung(en)", .Name = "receipt", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
||||
cnS_KIUPLOAD.Items.Add(receipt)
|
||||
AddHandler receipt.Click, AddressOf mnuItemKIUPLOAD_Clicked
|
||||
|
||||
End If
|
||||
|
||||
cnS_KIUPLOAD.Show(Cursor.Position)
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub calcSumme()
|
||||
@@ -2920,4 +3039,14 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
|
||||
|
||||
Private Sub initScanUSTVA()
|
||||
|
||||
scanUSTVA.INIT(USTV_ANTRAG.UStVAn_KuNr, "MDM", "USTVA_KI_" & USTV_ANTRAG.UStVAn_ID)
|
||||
btnPDFauslesen.Enabled = scanUSTVA.getDS().da_id > 0
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
@@ -616,6 +616,7 @@ Public Class ustCntlUSTV_AntragPosition
|
||||
dt.Columns.Add("invoice_id", GetType(String))
|
||||
dt.Columns.Add("invoice_date", GetType(String))
|
||||
dt.Columns.Add("status", GetType(String))
|
||||
dt.Columns.Add("document_count", GetType(Integer))
|
||||
End If
|
||||
|
||||
Dim failreDesc As String
|
||||
|
||||
@@ -17,9 +17,17 @@ Public Class cUStVLeistender
|
||||
|
||||
Dim SQL As New SQL
|
||||
|
||||
Sub New(UStV_Leistender As String)
|
||||
Me.UStV_Leistender = UStV_Leistender
|
||||
LOAD()
|
||||
Sub New(UStV_Leistender As String, Optional searchbyUID As Boolean = False)
|
||||
If Not searchbyUID Then
|
||||
Me.UStV_Leistender = UStV_Leistender
|
||||
LOAD()
|
||||
|
||||
Else
|
||||
Me.UstV_Leistender_UstNr = UStV_Leistender
|
||||
LOADBYUID()
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Sub New(Id As Integer)
|
||||
@@ -147,6 +155,35 @@ Public Class cUStVLeistender
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Sub LOADByUID()
|
||||
Try
|
||||
hasEntry = False
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblUStVLeistender WHERE UstV_Leistender_UstNr=@UstV_Leistender_UstNr ", conn)
|
||||
cmd.Parameters.AddWithValue("@UstV_Leistender_UstNr", UstV_Leistender_UstNr)
|
||||
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
For Each li In getParameterList()
|
||||
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
|
||||
|
||||
If dr.Item(li.Text) Is DBNull.Value Then
|
||||
propInfo.SetValue(Me, Nothing)
|
||||
Else
|
||||
propInfo.SetValue(Me, dr.Item(li.Text))
|
||||
End If
|
||||
|
||||
Next
|
||||
hasEntry = True
|
||||
End If
|
||||
dr.Close()
|
||||
End Using
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Sub LOADByLand(Land As String)
|
||||
Try
|
||||
hasEntry = False
|
||||
|
||||
@@ -854,27 +854,19 @@ Public Class cATEZ_NCTS_IN
|
||||
success = jsonResult.LoadSb(sbResponseBody)
|
||||
jsonResult.Emit()
|
||||
|
||||
'--------------------------------
|
||||
|
||||
|
||||
|
||||
Dim num As Integer = jsonResult.Size
|
||||
Dim data
|
||||
Dim sizeArray = jsonResult.SizeOfArray("data")
|
||||
|
||||
If dt IsNot Nothing Then
|
||||
|
||||
Dim data
|
||||
Dim num As Integer = 1
|
||||
If sizeArray > 0 Then
|
||||
|
||||
If True Then
|
||||
|
||||
data = New Chilkat.JsonObject
|
||||
data = jsonResult
|
||||
If (data.LastMethodSuccess = False) Then
|
||||
Debug.WriteLine("data member not found.")
|
||||
End If
|
||||
|
||||
If num = -1 Then
|
||||
Return "FEHLER Array Data ist leer"
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
|
||||
num = jsonResult.SizeOfArray("data")
|
||||
num = sizeArray
|
||||
|
||||
data = jsonResult.ArrayOf("data")
|
||||
If (jsonResult.LastMethodSuccess = False) Then
|
||||
@@ -882,44 +874,112 @@ Public Class cATEZ_NCTS_IN
|
||||
End If
|
||||
|
||||
|
||||
Else
|
||||
data = New Chilkat.JsonObject
|
||||
data = jsonResult
|
||||
num = 1 'nur ein Object
|
||||
|
||||
If (data.LastMethodSuccess = False) Then
|
||||
Debug.WriteLine("data member not found.")
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
|
||||
'Dim i As Integer'
|
||||
'For i = 0 To num - 1
|
||||
|
||||
' Dim name As String = jsonResult.NameAt(i)
|
||||
' Dim value As String = jsonResult.StringAt(i)
|
||||
|
||||
' Debug.WriteLine(name & ": " & value)
|
||||
|
||||
' Dim iValue As Integer = jsonResult.IntAt(i)
|
||||
' Debug.WriteLine(name & " as integer: " & iValue)
|
||||
|
||||
'Next
|
||||
|
||||
|
||||
|
||||
|
||||
'--------------------------------
|
||||
|
||||
|
||||
|
||||
'num = jsonResult.SizeOfArray("data")
|
||||
|
||||
'If num = -1 Then
|
||||
' If dt IsNot Nothing Then
|
||||
|
||||
' Dim data
|
||||
|
||||
|
||||
' 'TODO: Check if array, else jsonObject
|
||||
|
||||
' If True Then
|
||||
|
||||
' data = New Chilkat.JsonObject
|
||||
' data = jsonResult
|
||||
' If (data.LastMethodSuccess = False) Then
|
||||
' Debug.WriteLine("data member not found.")
|
||||
' End If
|
||||
|
||||
' If num = -1 Then
|
||||
' Return "FEHLER Array Data ist leer"
|
||||
' End If
|
||||
|
||||
' Else
|
||||
|
||||
|
||||
|
||||
|
||||
' data = jsonResult.ArrayOf("data")
|
||||
' If (jsonResult.LastMethodSuccess = False) Then
|
||||
' Return "data not found."
|
||||
' End If
|
||||
|
||||
|
||||
'End If
|
||||
|
||||
'--------------------------------
|
||||
|
||||
Dim j As Integer = 0
|
||||
While j < num
|
||||
|
||||
While j < num
|
||||
Dim invoice As Chilkat.JsonObject = jsonResult.ObjectAt(j)
|
||||
|
||||
Dim invoice As Chilkat.JsonObject = data.ObjectAt(j)
|
||||
|
||||
Dim R As DataRow = dt.NewRow
|
||||
R("currency") = checkNullStr(invoice.StringOf("currency"))
|
||||
Dim totalAmonut As String = invoice.StringOf("total_VAT_amount").Replace(".", ",")
|
||||
R("total_VAT_amount") = CDbl(checkNulDbl(totalAmonut))
|
||||
R("invoice_id") = checkNullStr(invoice.StringOf("invoice_id"))
|
||||
R("invoice_date") = checkNullStr(invoice.StringOf("invoice_date"))
|
||||
Dim R As DataRow = dt.NewRow
|
||||
R("count") = j + 1
|
||||
R("currency") = checkNullStr(invoice.StringOf("currency"))
|
||||
Dim totalAmonut As String = invoice.StringOf("total_VAT_amount").Replace(".", ",")
|
||||
R("total_VAT_amount") = CDbl(checkNulDbl(totalAmonut))
|
||||
R("invoice_id") = checkNullStr(invoice.StringOf("invoice_id"))
|
||||
R("invoice_date") = checkNullStr(invoice.StringOf("invoice_date"))
|
||||
R("seller_VAT_id") = checkNullStr(invoice.StringOf("seller_VAT_id"))
|
||||
R("seller_name") = checkNullStr(invoice.StringOf("seller_name"))
|
||||
R("seller_address_city") = checkNullStr(invoice.StringOf("seller_address_city"))
|
||||
R("seller_address_country") = checkNullStr(invoice.StringOf("seller_address_country"))
|
||||
R("seller_address_postcode") = checkNullStr(invoice.StringOf("seller_address_postcode"))
|
||||
R("seller_address_street") = checkNullStr(invoice.StringOf("seller_address_street"))
|
||||
R("status") = checkNullStr(jsonResult.StringOf("status"))
|
||||
R("seller_address_country") = checkNullStr(invoice.StringOf("seller_address_country"))
|
||||
R("seller_address_postcode") = checkNullStr(invoice.StringOf("seller_address_postcode"))
|
||||
R("seller_address_street") = checkNullStr(invoice.StringOf("seller_address_street"))
|
||||
R("status") = checkNullStr(jsonResult.StringOf("status"))
|
||||
R("document_count") = checkNulInt(jsonResult.IntOf("document_count"))
|
||||
|
||||
dt.Rows.Add(R)
|
||||
dt.Rows.Add(R)
|
||||
|
||||
j = j + 1
|
||||
End While
|
||||
j = j + 1
|
||||
End While
|
||||
|
||||
Return jsonResult.StringOf("status")
|
||||
Return jsonResult.StringOf("status")
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
Return jsonResult.StringOf("atezId")
|
||||
Return jsonResult.StringOf("atezId")
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Catch ex As WebException
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
@@ -942,6 +1002,17 @@ Public Class cATEZ_NCTS_IN
|
||||
Return 0
|
||||
End If
|
||||
End Function
|
||||
Public Shared Function checkNulInt(ByVal o As Object) As Double
|
||||
If o IsNot Nothing And o IsNot DBNull.Value Then
|
||||
If IsNumeric(o) Then
|
||||
Return CInt(o)
|
||||
Else
|
||||
Return 0
|
||||
End If
|
||||
Else
|
||||
Return 0
|
||||
End If
|
||||
End Function
|
||||
|
||||
Shared Function setJsonNCTS(ncts As cATEZ_NCTS_DATA)
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Imports GrapeCity.ActiveReports.Document
|
||||
Imports System.ComponentModel
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.IO
|
||||
|
||||
Public Class cAllgemein
|
||||
Public Shared FIRMA As String
|
||||
@@ -597,6 +598,40 @@ Public Class cAllgemein
|
||||
End If
|
||||
Return ""
|
||||
End Function
|
||||
|
||||
Public Shared Function ExtractPdfPages(ByVal SourceFile As String, ByVal TargetFile As String, pageStart As Integer, pagesEnd As Integer) As Boolean 'ITEXTSHARP
|
||||
Try
|
||||
Dim impPage As iTextSharp.text.pdf.PdfImportedPage = Nothing
|
||||
If SourceFile.Contains(" ") Then SourceFile = SourceFile
|
||||
Dim Reader As New iTextSharp.text.pdf.PdfReader(SourceFile)
|
||||
If Not TargetFile.ToLower.EndsWith(".pdf") Then TargetFile = TargetFile & ".pdf"
|
||||
Dim srcDoc As New iTextSharp.text.Document() 'Reader.GetPageSizeWithRotation(0))
|
||||
Dim PdfCopyProvider As New iTextSharp.text.pdf.PdfCopy(srcDoc, New FileStream(TargetFile, System.IO.FileMode.Create))
|
||||
PdfCopyProvider.SetFullCompression()
|
||||
srcDoc.Open()
|
||||
For p As Integer = pageStart To pagesEnd
|
||||
If p > Reader.NumberOfPages Then
|
||||
MsgBox("Seitenanzahl überschritten!")
|
||||
srcDoc.Close() : Reader.Close()
|
||||
Return False
|
||||
End If
|
||||
impPage = PdfCopyProvider.GetImportedPage(Reader, p)
|
||||
' ----- Ermitteln der Seitenauflösung und setzen für die neue Seite
|
||||
PdfCopyProvider.SetPageSize(New iTextSharp.text.Rectangle(0.0F, 0.0F, impPage.Width, impPage.Height, Reader.GetPageRotation(p)))
|
||||
' ----- PDF Seite in das neue Dokument einfügen
|
||||
PdfCopyProvider.AddPage(impPage)
|
||||
|
||||
Next
|
||||
' ----- neues PDF Dokument und den Reader schließen
|
||||
srcDoc.Close()
|
||||
Reader.Close()
|
||||
Return True
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
Return False
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
Public Class cNCTS_GUARANTEES
|
||||
@@ -635,4 +670,6 @@ Public Class cNCTS_GUARANTEES
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user