From 0239e01171f6b57bdacb5a0cede6895974bcc551 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Tue, 13 May 2025 16:58:50 +0200 Subject: [PATCH 1/5] fix Typo --- SDL/buchhaltung/frmBU_Mahnlauf.vb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SDL/buchhaltung/frmBU_Mahnlauf.vb b/SDL/buchhaltung/frmBU_Mahnlauf.vb index 392e562a..adcdb910 100644 --- a/SDL/buchhaltung/frmBU_Mahnlauf.vb +++ b/SDL/buchhaltung/frmBU_Mahnlauf.vb @@ -1146,13 +1146,13 @@ Public Class frmBU_Mahnlauf Case 3 MahnTEXT_VOR = "Trotz zweifacher Mahnung sind nachstehende Rechnungen immer noch nicht beglichen." - MahnTEXT_NACH = "NWir fordern Sie hiermit letztmalig auf, den überfälligen Betrag unverzüglich bis DONNERSTAG zu entrichten." & vbNewLine & "Sollten wir zum Ablauf der neuerlichen Frist keine Kopie Ihres Überweisungsbelegs erhalten, müssen wir Ihre Konten sperren!" + MahnTEXT_NACH = "Wir fordern Sie hiermit letztmalig auf, den überfälligen Betrag unverzüglich bis DONNERSTAG zu entrichten." & vbNewLine & "Sollten wir zum Ablauf der neuerlichen Frist keine Kopie Ihres Überweisungsbelegs erhalten, müssen wir Ihre Konten sperren!" MAHNTEXT = MAHNSTUFE & ". MAHNUNG" Case >= 4 And MAHNSTUFE <= 7 MahnTEXT_VOR = "Trotz mehrfacher Mahnung sind nachstehende Rechnungen immer noch nicht beglichen." & vbNewLine & "Wir fordern Sie hiermit letztmalig auf, den offenen Betrag unverzüglich bis MITTWOCH zur Einzahlung zu bringen. Bitte senden Sie uns eine Kopie des Überweisungsbelegs!" - MahnTEXT_NACH = "NNach erfolglosem Ablauf dieser neuerlichen Frist sind wir gezwungen, ohne weitere vorherige Ankündigung rechtliche Schritte einzuleiten." + MahnTEXT_NACH = "Nach erfolglosem Ablauf dieser neuerlichen Frist sind wir gezwungen, ohne weitere vorherige Ankündigung rechtliche Schritte einzuleiten." MAHNTEXT = MAHNSTUFE & ". MAHNUNG" From a53cd730d32fe412f6ac0350d99dfcf45d2c3d04 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 14 May 2025 12:30:18 +0200 Subject: [PATCH 2/5] atez KI-Upload --- SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb | 26 ++++++++++++++ SDL/Creditsafe/usrcntlVAT_ATEZ.vb | 29 ++++++++++++--- SDL/My Project/AssemblyInfo.vb | 4 +-- SDL/USTV/frmMDM_USTVAntrag.vb | 36 +++++++++++++------ SDL/USTV/frmUSTVoffeneAntraege.vb | 2 ++ SDL/USTV/ustCntlUSTV_AntragPosition.vb | 14 +++++--- .../ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb | 22 ++++++++---- 7 files changed, 106 insertions(+), 27 deletions(-) diff --git a/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb b/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb index bb0a5d4f..2888010c 100644 --- a/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb +++ b/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb @@ -38,6 +38,7 @@ Partial Class usrcntlVAT_ATEZ Me.Label3 = New System.Windows.Forms.Label() Me.dgvVAT = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.cboLand = New VERAG_PROG_ALLGEMEIN.MyComboBox() + Me.lblPagecount = New System.Windows.Forms.Label() CType(Me.dgvVAT, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' @@ -51,6 +52,7 @@ Partial Class usrcntlVAT_ATEZ Me.lblUID.Size = New System.Drawing.Size(40, 13) Me.lblUID.TabIndex = 1 Me.lblUID.Text = "UID-Nr" + Me.lblUID.Visible = False ' 'txtUID ' @@ -60,6 +62,7 @@ Partial Class usrcntlVAT_ATEZ Me.txtUID.Name = "txtUID" Me.txtUID.Size = New System.Drawing.Size(134, 23) Me.txtUID.TabIndex = 3 + Me.txtUID.Visible = False ' 'txtFirma ' @@ -70,6 +73,7 @@ Partial Class usrcntlVAT_ATEZ Me.txtFirma.Name = "txtFirma" Me.txtFirma.Size = New System.Drawing.Size(173, 23) Me.txtFirma.TabIndex = 1 + Me.txtFirma.Visible = False ' 'lblFirma ' @@ -80,6 +84,7 @@ Partial Class usrcntlVAT_ATEZ Me.lblFirma.Size = New System.Drawing.Size(32, 13) Me.lblFirma.TabIndex = 3 Me.lblFirma.Text = "Firma" + Me.lblFirma.Visible = False ' 'lblLand ' @@ -90,6 +95,7 @@ Partial Class usrcntlVAT_ATEZ Me.lblLand.Size = New System.Drawing.Size(31, 13) Me.lblLand.TabIndex = 5 Me.lblLand.Text = "Land" + Me.lblLand.Visible = False ' 'lblWarning ' @@ -121,6 +127,7 @@ Partial Class usrcntlVAT_ATEZ Me.txtStrasse.Name = "txtStrasse" Me.txtStrasse.Size = New System.Drawing.Size(163, 23) Me.txtStrasse.TabIndex = 101 + Me.txtStrasse.Visible = False ' 'Label1 ' @@ -132,6 +139,7 @@ Partial Class usrcntlVAT_ATEZ Me.Label1.Size = New System.Drawing.Size(42, 13) Me.Label1.TabIndex = 100 Me.Label1.Text = "Strasse" + Me.Label1.Visible = False ' 'txtPLZ ' @@ -141,6 +149,7 @@ Partial Class usrcntlVAT_ATEZ Me.txtPLZ.Name = "txtPLZ" Me.txtPLZ.Size = New System.Drawing.Size(84, 23) Me.txtPLZ.TabIndex = 103 + Me.txtPLZ.Visible = False ' 'Label2 ' @@ -152,6 +161,7 @@ Partial Class usrcntlVAT_ATEZ Me.Label2.Size = New System.Drawing.Size(27, 13) Me.Label2.TabIndex = 102 Me.Label2.Text = "PLZ" + Me.Label2.Visible = False ' 'txtOrt ' @@ -161,6 +171,7 @@ Partial Class usrcntlVAT_ATEZ Me.txtOrt.Name = "txtOrt" Me.txtOrt.Size = New System.Drawing.Size(155, 23) Me.txtOrt.TabIndex = 105 + Me.txtOrt.Visible = False ' 'Label3 ' @@ -172,6 +183,7 @@ Partial Class usrcntlVAT_ATEZ Me.Label3.Size = New System.Drawing.Size(21, 13) Me.Label3.TabIndex = 104 Me.Label3.Text = "Ort" + Me.Label3.Visible = False ' 'dgvVAT ' @@ -204,6 +216,18 @@ Partial Class usrcntlVAT_ATEZ Me.cboLand.Name = "cboLand" Me.cboLand.Size = New System.Drawing.Size(58, 24) Me.cboLand.TabIndex = 99 + Me.cboLand.Visible = False + ' + 'lblPagecount + ' + Me.lblPagecount.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.lblPagecount.AutoSize = True + Me.lblPagecount.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!) + Me.lblPagecount.Location = New System.Drawing.Point(827, 37) + Me.lblPagecount.Name = "lblPagecount" + Me.lblPagecount.Size = New System.Drawing.Size(43, 13) + Me.lblPagecount.TabIndex = 106 + Me.lblPagecount.Text = "Seiten: " ' 'usrcntlVAT_ATEZ ' @@ -211,6 +235,7 @@ Partial Class usrcntlVAT_ATEZ Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScroll = True Me.BackColor = System.Drawing.Color.White + Me.Controls.Add(Me.lblPagecount) Me.Controls.Add(Me.txtOrt) Me.Controls.Add(Me.Label3) Me.Controls.Add(Me.txtPLZ) @@ -248,4 +273,5 @@ Partial Class usrcntlVAT_ATEZ Friend WithEvents Label2 As Label Friend WithEvents txtOrt As TextBox Friend WithEvents Label3 As Label + Friend WithEvents lblPagecount As Label End Class diff --git a/SDL/Creditsafe/usrcntlVAT_ATEZ.vb b/SDL/Creditsafe/usrcntlVAT_ATEZ.vb index fb13a13d..2048199c 100644 --- a/SDL/Creditsafe/usrcntlVAT_ATEZ.vb +++ b/SDL/Creditsafe/usrcntlVAT_ATEZ.vb @@ -76,6 +76,9 @@ Public Class usrcntlVAT_ATEZ dataTable.Columns.Add("status", GetType(String)) dataTable.Columns.Add("invoice_date", GetType(DateTime)) dataTable.Columns.Add("document_count", GetType(Integer)) + dataTable.Columns.Add("total_pages", GetType(Integer)) + dataTable.Columns.Add("doc_index", GetType(Integer)) + dataTable.Columns.Add("page_count", GetType(Integer)) End Sub @@ -85,6 +88,9 @@ Public Class usrcntlVAT_ATEZ If dgvVAT.Columns.Count > 0 Then + + lblPagecount.Text &= dgvVAT.Rows(0).Cells("total_pages").Value + With dgvVAT .RowHeadersWidth = 10 .Columns("count").HeaderText = "#" @@ -109,8 +115,14 @@ Public Class usrcntlVAT_ATEZ .Columns("status").HeaderText = "Status" .Columns("invoice_date").Width = 100 .Columns("invoice_date").HeaderText = "Rechnungsdatum" - .Columns("document_count").HeaderText = "Seite" + .Columns("document_count").HeaderText = "Dok.#" .Columns("document_count").Width = 50 + .Columns("page_count").HeaderText = "Seiten" + .Columns("page_count").Width = 50 + + .Columns("total_pages").Visible = False + .Columns("doc_index").Visible = False + End With For Each row As DataGridViewRow In dgvVAT.Rows @@ -170,7 +182,10 @@ Public Class usrcntlVAT_ATEZ 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("document_count").Value), "", row.Cells("document_count").Value)) + IIf(IsDBNull(row.Cells("document_count").Value), "", row.Cells("document_count").Value), + IIf(IsDBNull(row.Cells("total_pages").Value), "", row.Cells("total_pages").Value), + IIf(IsDBNull(row.Cells("doc_index").Value), "", row.Cells("doc_index").Value), + IIf(IsDBNull(row.Cells("page_count").Value), "", row.Cells("page_count").Value)) Next If va.status.ToLower <> "success" Then @@ -207,9 +222,13 @@ Public Class usrcntlVAT_ATEZ Public Property total_VAT_amount As String Public Property status As String Public Property document_count As Integer + Public Property total_pages As Integer + Public Property page_count As Integer + Public Property doc_index As Integer - 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) + + 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, _total_pages As Integer, _doc_index As Integer, _page_count As Integer) count = _count currency = _currency invoice_id = _invoice_id @@ -223,7 +242,9 @@ Public Class usrcntlVAT_ATEZ invoice_date = _invoice_date status = _status document_count = _document_count - + total_pages = _total_pages + page_count = _page_count + doc_index = _doc_index End Sub diff --git a/SDL/My Project/AssemblyInfo.vb b/SDL/My Project/AssemblyInfo.vb index 78a3d88c..1f14476b 100644 --- a/SDL/My Project/AssemblyInfo.vb +++ b/SDL/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/SDL/USTV/frmMDM_USTVAntrag.vb b/SDL/USTV/frmMDM_USTVAntrag.vb index 9891b8d1..8996af85 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.vb @@ -1377,10 +1377,13 @@ Public Class frmMDM_USTVAntrag dt.Columns.Add("invoice_date", GetType(String)) dt.Columns.Add("status", GetType(String)) dt.Columns.Add("document_count", GetType(Integer)) + dt.Columns.Add("doc_index", GetType(Integer)) + dt.Columns.Add("page_count", GetType(Integer)) + dt.Columns.Add("total_pages", GetType(Integer)) End If Dim failreDesc As String - Dim authResp = atez_api.authenticate("VAT", "client1", "password") + Dim authResp = atez_api.authenticate("VAT", "client1", "password", documentType) Dim resp If authResp <> "200" Then MsgBox("Authentifizierung fehlgeschlagen" & vbNewLine & authResp) @@ -1391,7 +1394,7 @@ Public Class frmMDM_USTVAntrag If atez_api.setJsonVAT(documentType, daid) Then - resp = atez_api.SendRequestWithAuthHeader("application/json", failreDesc, "/process", "POST", dt) + resp = atez_api.SendRequestWithAuthHeader("application/json", failreDesc, "/process", "POST", dt, documentType) If dt.Rows.Count > 0 Then @@ -1433,7 +1436,7 @@ Public Class frmMDM_USTVAntrag - If pageCount = r.Cells("document_count").Value Then + If pageCount = r.Cells("page_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) @@ -1450,7 +1453,7 @@ Public Class frmMDM_USTVAntrag 'todo: Logik Aufsplittung des PDF in Teilpdfs Dim pagestart = 0 For Each pages As DataRow In dt.Rows - pagestart += CInt(pages.Item("document_count")) + pagestart += CInt(pages.Item("page_count")) If pages.Item("count") = r.Cells("count").Value Then Exit For Next @@ -1459,7 +1462,7 @@ Public Class frmMDM_USTVAntrag 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) + VERAG_PROG_ALLGEMEIN.cAllgemein.ExtractPdfPages(TMP_Path_Old, TMP_Path_New, pagestart, r.Cells("page_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) @@ -1596,12 +1599,12 @@ Public Class frmMDM_USTVAntrag Else - Dim USTV_ANTRAG = New VERAG_PROG_ALLGEMEIN.cUSTVAntrag() + Dim USTV_ANTRAG = New VERAG_PROG_ALLGEMEIN.cUSTVAntrag() Dim ADR As New cAdressen(KundenNr) Dim ERW As New cKundenErweitert(KundenNr) Dim FIRMA As New cFirmen(1) 'Nr 1 weil Kontodaten von Verag..... - If KundenNr <0 Then + If KundenNr < 0 Then MsgBox("Kunde auswählen!") Exit Sub End If @@ -1633,16 +1636,29 @@ Public Class frmMDM_USTVAntrag 'check if already existing 'überschneidungen prüfen!!!! - Dim dt_existingUSTVA As DataTable = SQL.loadDgvBySql("Select UStVAn_ID,UStVAn_ReDatvon, UStVAn_ReDatBis from tblUStVAntrag where UStvAN_KuNr = " & KundenNr & " and (isnull(UStVAn_AntragArt,'MWST') = '" & cboAntragArt._value & "' or UStVAn_AntragArt = '') and UStVAn_LandNr = " & USTV_ANTRAG.UStVAn_LandNr & " + Dim dt_existingUSTVA As DataTable = SQL.loadDgvBySql("Select UStVAn_ID,UStVAn_ReDatvon, UStVAn_ReDatBis, UStVAn_AntragEingereichtAm from tblUStVAntrag where UStvAN_KuNr = " & KundenNr & " and (isnull(UStVAn_AntragArt,'MWST') = '" & cboAntragArt._value & "' or UStVAn_AntragArt = '') and UStVAn_LandNr = " & USTV_ANTRAG.UStVAn_LandNr & " AND not ((cast(UStVAn_ReDatvon as date) > '" & CDate(txtVon._value).ToShortDateString & "' or cast(UStVAn_ReDatBis as date) <= '" & CDate(txtVon._value).ToShortDateString & "' ) and (cast(UStVAn_ReDatBis as date) < '" & CDate(txtBis._value).ToShortDateString & "' or cast(UStVAn_ReDatvon as date) >= '" & CDate(txtBis._value).ToShortDateString & "'))", "FMZOLL") 'Dim anzUSTVA = CInt((New SQL).getValueTxtBySql("Select count(*) from tblUStVAntrag where UStvAN_KuNr = " & KundenNr & " and (isnull(UStVAn_AntragArt,'MWST') = '" & cboAntragArt._value & "' or UStVAn_AntragArt = '') and UStVAn_LandNr = " & USTV_ANTRAG.UStVAn_LandNr & " ' AND not ((cast(UStVAn_ReDatvon as date) > '" & CDate(txtVon._value).ToShortDateString & "' and cast(UStVAn_ReDatBis as date) <= '" & CDate(txtVon._value).ToShortDateString & "') or (cast(UStVAn_ReDatvon as date) < '" & CDate(txtBis._value).ToShortDateString & "' and cast(UStVAn_ReDatBis as date) >= '" & CDate(txtBis._value).ToShortDateString & "'))", "FMZOLL")) If dt_existingUSTVA.Rows.Count = 1 Then - If Not vbYes = MsgBox("Es existiert bereits ein" & cboAntragArt._value & " -Eintrag von " & dt_existingUSTVA.Rows(0).Item("UStVAn_ReDatvon") & " - " & dt_existingUSTVA.Rows(0).Item("UStVAn_ReDatbis") & " von " & ADR.Name_1 & " für " & cbxLand.SelectedItem.ToString & vbNewLine & "Trotzdem Antrag speichern?", vbYesNoCancel) Then Exit Sub + + Dim eingereicht As String = IIf(Not IsDBNull(dt_existingUSTVA.Rows(0).Item("UStVAn_AntragEingereichtAm")) AndAlso IsDate(dt_existingUSTVA.Rows(0).Item("UStVAn_AntragEingereichtAm")), " EINGEREICHTER ", "") + + Dim result As MsgBoxResult = MsgBox("Es existiert bereits ein " & eingereicht & cboAntragArt._value & "-Eintrag von " & dt_existingUSTVA.Rows(0).Item("UStVAn_ReDatvon") & " - " & dt_existingUSTVA.Rows(0).Item("UStVAn_ReDatbis") & " von " & ADR.Name_1 & " für " & cbxLand.SelectedItem.ToString & vbNewLine & "Ja = Antrag speichern" & vbNewLine & "Nein = existierenden Antrag öffnen", vbYesNoCancel) + + Select Case result + Case MsgBoxResult.Cancel : Exit Sub + Case MsgBoxResult.No + Me.Close() + Dim frm = New frmMDM_USTVAntrag(dt_existingUSTVA.Rows(0).Item("UStVAn_ID")) + frm.ShowDialog() + Exit Sub + End Select + ElseIf dt_existingUSTVA.Rows.Count > 1 Then - If Not vbYes = MsgBox("Es existiert bereits mind. ein " & cboAntragArt._value & " -Eintrag in diesem Zeitbereich von " & ADR.Name_1 & " für " & cbxLand.SelectedItem.ToString & vbNewLine & "Trotzdem Antrag speichern?", vbYesNoCancel) Then Exit Sub + If Not vbYes = MsgBox("Es existiert bereits mind. ein " & cboAntragArt._value & "-Eintrag in diesem Zeitbereich von " & ADR.Name_1 & " für " & cbxLand.SelectedItem.ToString & vbNewLine & "Trotzdem Antrag speichern?", vbYesNoCancel) Then Exit Sub End If diff --git a/SDL/USTV/frmUSTVoffeneAntraege.vb b/SDL/USTV/frmUSTVoffeneAntraege.vb index 12308a27..eb44b85d 100644 --- a/SDL/USTV/frmUSTVoffeneAntraege.vb +++ b/SDL/USTV/frmUSTVoffeneAntraege.vb @@ -1,4 +1,5 @@ Imports System.Windows.Documents +Imports VERAG_PROG_ALLGEMEIN Public Class frmUSTVoffeneAntraege @@ -959,6 +960,7 @@ Public Class frmUSTVoffeneAntraege If MyDatagridview1.SelectedRows(0).Cells("antragExisitiert").Value > 0 AndAlso Not MyDatagridview1.SelectedRows(0).Cells("eingereicht").Value Then + Dim frm = New frmMDM_USTVAntrag(MyDatagridview1.SelectedRows(0).Cells("antragExisitiert").Value) frm.ShowDialog() diff --git a/SDL/USTV/ustCntlUSTV_AntragPosition.vb b/SDL/USTV/ustCntlUSTV_AntragPosition.vb index b757ca50..505cdf02 100644 --- a/SDL/USTV/ustCntlUSTV_AntragPosition.vb +++ b/SDL/USTV/ustCntlUSTV_AntragPosition.vb @@ -108,7 +108,7 @@ Public Class ustCntlUSTV_AntragPosition If da_id > -1 Then scanSonstiges.INIT_daId(da_id) scanSonstiges.Enabled = UStV_POS.UStVPo_daId_loeschbar 'Not UStV_POS.UStVPo_SchnittstellenNr > 0 - btnAPIUbload.Enabled = UStV_POS.UStVPo_daId_loeschbar + btnAPIUbload.Enabled = True 'hochladbar aber nicht einfügen lassen! UStV_POS.UStVPo_daId_loeschbar Else scanSonstiges.INIT(kdnr, "MDM", "MDM_DATEN", "USTVA_" & UStV_POS.UStVAn_ID & "_" & UStV_POS.UStVPo_ID) 'scanSonstiges.INIT_daId(da_id) @@ -659,10 +659,13 @@ Public Class ustCntlUSTV_AntragPosition dt.Columns.Add("invoice_date", GetType(String)) dt.Columns.Add("status", GetType(String)) dt.Columns.Add("document_count", GetType(Integer)) + dt.Columns.Add("page_count", GetType(Integer)) + dt.Columns.Add("doc_index", GetType(Integer)) + dt.Columns.Add("total_pages", GetType(Integer)) End If Dim failreDesc As String - Dim authResp = API.authenticate("VAT", "client1", "password") + Dim authResp = API.authenticate("VAT", "client1", "password", item.Name) Dim resp If authResp <> "200" Then MsgBox("Authentifizierung fehlgeschlagen" & vbNewLine & authResp) @@ -673,13 +676,14 @@ Public Class ustCntlUSTV_AntragPosition 'document_type = vat_invoice or receipt If API.setJsonVAT(item.Name, UStV_POS.UStVPo_daId) Then - resp = API.SendRequestWithAuthHeader("application/json", failreDesc, "/process", "POST", dt) + resp = API.SendRequestWithAuthHeader("application/json", failreDesc, "/process", "POST", dt, item.Name) If dt.Rows.Count > 0 Then Dim f As New frmVAT_ATEZ() + f.usrcntlVAT_ATEZ1.btnUebernehmen.Enabled = UStV_POS.UStVPo_daId_loeschbar 'NUR ÜBERNEHMEN WENN LÖSCHBAR! f.usrcntlVAT_ATEZ1.initDGV(dt) If f.ShowDialog = DialogResult.OK Then txtRgDatum.Text = f.usrcntlVAT_ATEZ1.va.invoice_date @@ -774,8 +778,8 @@ Public Class ustCntlUSTV_AntragPosition Private Sub btnAPIUbload_Click(sender As Object, e As EventArgs) Handles btnAPIUbload.Click - 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)} + If Not cnS_KIUPLOAD.Items.ContainsKey("invoice") Then + Dim vat = New ToolStripMenuItem() With {.Text = "MWST-Rechnung(en)", .Name = "invoice", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} cnS_KIUPLOAD.Items.Add(vat) AddHandler vat.Click, AddressOf mnuItemKIUPLOAD_Clicked End If diff --git a/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb b/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb index 38b67e0f..e0babdac 100644 --- a/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb +++ b/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb @@ -748,7 +748,7 @@ Public Class cATEZ_NCTS_IN End Function - Shared Function authenticate(program As String, Optional client_id As String = "", Optional grant_type As String = "") As String + Shared Function authenticate(program As String, Optional client_id As String = "", Optional grant_type As String = "", Optional documentType As String = "") As String Dim myUri As String = API_STRING Dim contentType = "application/json" @@ -756,7 +756,10 @@ Public Class cATEZ_NCTS_IN Select Case program Case "NCTS" : myUri &= "/api/tds/auth/" - Case "VAT" : myUri &= "/token" : contentType = "application/x-www-form-urlencoded" : useBody = False + Case "VAT" + + If documentType <> "" Then myUri = myUri.Replace("invoice", documentType) + myUri &= "/token" : contentType = "application/x-www-form-urlencoded" : useBody = False @@ -769,7 +772,7 @@ Public Class cATEZ_NCTS_IN End Function - Shared Function SendRequestWithAuthHeader(acceptContentType As String, ByRef failureDesc As String, myUrl As String, Method As String, Optional dt As DataTable = Nothing) As String + Shared Function SendRequestWithAuthHeader(acceptContentType As String, ByRef failureDesc As String, myUrl As String, Method As String, Optional dt As DataTable = Nothing, Optional documentType As String = "") As String Try VERAG_PROG_ALLGEMEIN.cChilkat_Helper.UnlockCilkat() @@ -780,6 +783,9 @@ Public Class cATEZ_NCTS_IN Dim bTls As Boolean = True Dim port As Integer = 443 Dim bAutoReconnect As Boolean = True + + If documentType <> "" Then API_STRING = API_STRING.Replace("invoice", documentType) + success = rest.Connect(API_STRING, port, bTls, bAutoReconnect) If (success <> True) Then Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason) @@ -949,9 +955,10 @@ Public Class cATEZ_NCTS_IN Dim invoice As Chilkat.JsonObject = jsonResult.ObjectAt(j) Dim R As DataRow = dt.NewRow + Dim totalAmonut As String = invoice.StringOf("total_VAT_amount").Replace(".", ",") + 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")) @@ -963,6 +970,9 @@ Public Class cATEZ_NCTS_IN R("seller_address_street") = checkNullStr(invoice.StringOf("seller_address_street")) R("status") = checkNullStr(jsonResult.StringOf("status")) R("document_count") = checkNulInt(jsonResult.IntOf("document_count")) + R("doc_index") = checkNulInt(jsonResult.IntOf("doc_index")) + R("page_count") = checkNulInt(jsonResult.IntOf("page_count")) + R("total_pages") = checkNulInt(jsonResult.IntOf("total_pages")) dt.Rows.Add(R) @@ -976,10 +986,10 @@ Public Class cATEZ_NCTS_IN 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) From c86f82483a0c9366f448b6235eb58c0a57da7fc6 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 14 May 2025 14:46:33 +0200 Subject: [PATCH 3/5] mdmAntrag, KI, etc. --- SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb | 32 ++++----- SDL/Creditsafe/usrcntlVAT_ATEZ.vb | 63 ++++++++-------- SDL/USTV/frmMDM_USTVAntrag.vb | 53 +++++--------- SDL/USTV/ustCntlUSTV_AntragPosition.vb | 20 +----- .../ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb | 71 +++++++++++++++++-- VERAG_PROG_ALLGEMEIN/cAllgemein.vb | 2 +- 6 files changed, 135 insertions(+), 106 deletions(-) diff --git a/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb b/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb index 2888010c..4b4f4ad6 100644 --- a/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb +++ b/SDL/Creditsafe/usrcntlVAT_ATEZ.Designer.vb @@ -47,7 +47,7 @@ Partial Class usrcntlVAT_ATEZ Me.lblUID.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.lblUID.AutoSize = True Me.lblUID.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!) - Me.lblUID.Location = New System.Drawing.Point(669, 10) + Me.lblUID.Location = New System.Drawing.Point(1129, 10) Me.lblUID.Name = "lblUID" Me.lblUID.Size = New System.Drawing.Size(40, 13) Me.lblUID.TabIndex = 1 @@ -58,7 +58,7 @@ Partial Class usrcntlVAT_ATEZ ' Me.txtUID.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtUID.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!) - Me.txtUID.Location = New System.Drawing.Point(672, 26) + Me.txtUID.Location = New System.Drawing.Point(1132, 26) Me.txtUID.Name = "txtUID" Me.txtUID.Size = New System.Drawing.Size(134, 23) Me.txtUID.TabIndex = 3 @@ -71,7 +71,7 @@ Partial Class usrcntlVAT_ATEZ Me.txtFirma.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!) Me.txtFirma.Location = New System.Drawing.Point(73, 27) Me.txtFirma.Name = "txtFirma" - Me.txtFirma.Size = New System.Drawing.Size(173, 23) + Me.txtFirma.Size = New System.Drawing.Size(633, 23) Me.txtFirma.TabIndex = 1 Me.txtFirma.Visible = False ' @@ -112,7 +112,7 @@ Partial Class usrcntlVAT_ATEZ Me.btnUebernehmen.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.btnUebernehmen.DialogResult = System.Windows.Forms.DialogResult.OK Me.btnUebernehmen.FlatStyle = System.Windows.Forms.FlatStyle.Flat - Me.btnUebernehmen.Location = New System.Drawing.Point(784, 359) + Me.btnUebernehmen.Location = New System.Drawing.Point(1244, 359) Me.btnUebernehmen.Name = "btnUebernehmen" Me.btnUebernehmen.Size = New System.Drawing.Size(136, 41) Me.btnUebernehmen.TabIndex = 9 @@ -123,7 +123,7 @@ Partial Class usrcntlVAT_ATEZ ' Me.txtStrasse.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtStrasse.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!) - Me.txtStrasse.Location = New System.Drawing.Point(252, 27) + Me.txtStrasse.Location = New System.Drawing.Point(712, 27) Me.txtStrasse.Name = "txtStrasse" Me.txtStrasse.Size = New System.Drawing.Size(163, 23) Me.txtStrasse.TabIndex = 101 @@ -134,7 +134,7 @@ Partial Class usrcntlVAT_ATEZ Me.Label1.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label1.AutoSize = True Me.Label1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!) - Me.Label1.Location = New System.Drawing.Point(249, 11) + Me.Label1.Location = New System.Drawing.Point(709, 11) Me.Label1.Name = "Label1" Me.Label1.Size = New System.Drawing.Size(42, 13) Me.Label1.TabIndex = 100 @@ -145,7 +145,7 @@ Partial Class usrcntlVAT_ATEZ ' Me.txtPLZ.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtPLZ.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!) - Me.txtPLZ.Location = New System.Drawing.Point(582, 26) + Me.txtPLZ.Location = New System.Drawing.Point(1042, 26) Me.txtPLZ.Name = "txtPLZ" Me.txtPLZ.Size = New System.Drawing.Size(84, 23) Me.txtPLZ.TabIndex = 103 @@ -156,7 +156,7 @@ Partial Class usrcntlVAT_ATEZ Me.Label2.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label2.AutoSize = True Me.Label2.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!) - Me.Label2.Location = New System.Drawing.Point(579, 10) + Me.Label2.Location = New System.Drawing.Point(1039, 10) Me.Label2.Name = "Label2" Me.Label2.Size = New System.Drawing.Size(27, 13) Me.Label2.TabIndex = 102 @@ -167,7 +167,7 @@ Partial Class usrcntlVAT_ATEZ ' Me.txtOrt.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtOrt.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!) - Me.txtOrt.Location = New System.Drawing.Point(421, 26) + Me.txtOrt.Location = New System.Drawing.Point(881, 26) Me.txtOrt.Name = "txtOrt" Me.txtOrt.Size = New System.Drawing.Size(155, 23) Me.txtOrt.TabIndex = 105 @@ -178,7 +178,7 @@ Partial Class usrcntlVAT_ATEZ Me.Label3.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label3.AutoSize = True Me.Label3.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!) - Me.Label3.Location = New System.Drawing.Point(418, 10) + Me.Label3.Location = New System.Drawing.Point(878, 10) Me.Label3.Name = "Label3" Me.Label3.Size = New System.Drawing.Size(21, 13) Me.Label3.TabIndex = 104 @@ -196,12 +196,12 @@ Partial Class usrcntlVAT_ATEZ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.dgvVAT.BackgroundColor = System.Drawing.Color.White Me.dgvVAT.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize - Me.dgvVAT.Location = New System.Drawing.Point(12, 63) + Me.dgvVAT.Location = New System.Drawing.Point(12, 56) Me.dgvVAT.Name = "dgvVAT" Me.dgvVAT.ReadOnly = True Me.dgvVAT.RowHeadersVisible = False Me.dgvVAT.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect - Me.dgvVAT.Size = New System.Drawing.Size(908, 290) + Me.dgvVAT.Size = New System.Drawing.Size(1368, 297) Me.dgvVAT.TabIndex = 7 ' 'cboLand @@ -223,11 +223,11 @@ Partial Class usrcntlVAT_ATEZ Me.lblPagecount.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.lblPagecount.AutoSize = True Me.lblPagecount.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!) - Me.lblPagecount.Location = New System.Drawing.Point(827, 37) + Me.lblPagecount.Location = New System.Drawing.Point(1268, 10) Me.lblPagecount.Name = "lblPagecount" - Me.lblPagecount.Size = New System.Drawing.Size(43, 13) + Me.lblPagecount.Size = New System.Drawing.Size(77, 13) Me.lblPagecount.TabIndex = 106 - Me.lblPagecount.Text = "Seiten: " + Me.lblPagecount.Text = "Gesamtseiten: " ' 'usrcntlVAT_ATEZ ' @@ -252,7 +252,7 @@ Partial Class usrcntlVAT_ATEZ Me.Controls.Add(Me.txtUID) Me.Controls.Add(Me.lblUID) Me.Name = "usrcntlVAT_ATEZ" - Me.Size = New System.Drawing.Size(938, 403) + Me.Size = New System.Drawing.Size(1398, 403) CType(Me.dgvVAT, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) Me.PerformLayout() diff --git a/SDL/Creditsafe/usrcntlVAT_ATEZ.vb b/SDL/Creditsafe/usrcntlVAT_ATEZ.vb index 2048199c..9b1c6aea 100644 --- a/SDL/Creditsafe/usrcntlVAT_ATEZ.vb +++ b/SDL/Creditsafe/usrcntlVAT_ATEZ.vb @@ -1,4 +1,5 @@ Imports System.Web.UI.WebControls.Expressions +Imports VERAG_PROG_ALLGEMEIN.VERAG_OUT_NCTS Public Class usrcntlVAT_ATEZ Dim sql As New VERAG_PROG_ALLGEMEIN.SQL @@ -60,28 +61,6 @@ Public Class usrcntlVAT_ATEZ End Sub - - - 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)) - dataTable.Columns.Add("total_pages", GetType(Integer)) - dataTable.Columns.Add("doc_index", GetType(Integer)) - dataTable.Columns.Add("page_count", GetType(Integer)) - - End Sub - Sub initDGV(dt As DataTable) dgvVAT.DataSource = dt @@ -89,14 +68,16 @@ Public Class usrcntlVAT_ATEZ If dgvVAT.Columns.Count > 0 Then + Dim pageCpunterCheck = 0 + lblPagecount.Text &= dgvVAT.Rows(0).Cells("total_pages").Value With dgvVAT .RowHeadersWidth = 10 .Columns("count").HeaderText = "#" .Columns("count").Width = 25 - .Columns("currency").HeaderText = "Währung" - .Columns("currency").Width = 50 + .Columns("total_VAT_currency").HeaderText = "Währung" + .Columns("total_VAT_currency").Width = 50 .Columns("invoice_id").HeaderText = "Rechnungs-Nr" .Columns("seller_VAT_id").HeaderText = "UID-Nr" .Columns("seller_VAT_id").Width = 100 @@ -115,17 +96,27 @@ Public Class usrcntlVAT_ATEZ .Columns("status").HeaderText = "Status" .Columns("invoice_date").Width = 100 .Columns("invoice_date").HeaderText = "Rechnungsdatum" - .Columns("document_count").HeaderText = "Dok.#" - .Columns("document_count").Width = 50 + .Columns("doc_index").HeaderText = "Dok.#" + .Columns("doc_index").Width = 50 .Columns("page_count").HeaderText = "Seiten" .Columns("page_count").Width = 50 .Columns("total_pages").Visible = False - .Columns("doc_index").Visible = False + .Columns("seller_address_full").Visible = False + '.Columns("doc_index").Visible = False End With For Each row As DataGridViewRow In dgvVAT.Rows + + + + If IsNumeric(row.Cells("page_count").Value) AndAlso row.Cells("page_count").Value <> 0 Then + pageCpunterCheck += row.Cells("page_count").Value + End If + + + If Not IsDBNull(row.Cells("status").Value) Then Dim akiv As String = (row.Cells("status").Value.ToString).ToLower If akiv = "success" Then @@ -159,6 +150,15 @@ Public Class usrcntlVAT_ATEZ Next + If dgvVAT.Rows(0).Cells("total_pages").Value <> pageCpunterCheck Then + lblLand.Text = "ACHTUNG, es wurden nur " & pageCpunterCheck & " von möglichen " & dgvVAT.Rows(0).Cells("total_pages").Value & " per KI ausgelesen, das kann uU zu fehlern beim Aufsplitten der Seiten führen!" + lblLand.ForeColor = Color.Red + lblLand.Visible = True + Else + lblLand.Visible = False + + End If + End If @@ -171,13 +171,14 @@ Public Class usrcntlVAT_ATEZ For Each row As DataGridViewRow In dgvVAT.SelectedRows 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("total_VAT_currency").Value), "", row.Cells("total_VAT_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), IIf(IsDBNull(row.Cells("seller_address_country").Value), "", row.Cells("seller_address_country").Value), IIf(IsDBNull(row.Cells("seller_address_postcode").Value), "", row.Cells("seller_address_postcode").Value), IIf(IsDBNull(row.Cells("seller_address_street").Value), "", row.Cells("seller_address_street").Value), + IIf(IsDBNull(row.Cells("seller_address_full").Value), "", row.Cells("seller_address_full").Value), 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)), @@ -217,6 +218,7 @@ Public Class usrcntlVAT_ATEZ Public Property seller_address_country As String Public Property seller_address_postcode As String Public Property seller_address_street As String + Public Property seller_address_full As String Public Property seller_name As String Public Property invoice_date As Date Public Property total_VAT_amount As String @@ -228,7 +230,7 @@ Public Class usrcntlVAT_ATEZ - 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, _total_pages As Integer, _doc_index As Integer, _page_count As Integer) + 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_address_full As String, _seller_name As String, _total_VAT_amount As String, _invoice_date As DateTime, _status As String, _document_count As Integer, _total_pages As Integer, _doc_index As Integer, _page_count As Integer) count = _count currency = _currency invoice_id = _invoice_id @@ -237,6 +239,7 @@ Public Class usrcntlVAT_ATEZ seller_address_country = _seller_address_country seller_address_postcode = _seller_address_postcode seller_address_street = _seller_address_street + seller_address_full = _seller_address_full seller_name = _seller_name total_VAT_amount = _total_VAT_amount invoice_date = _invoice_date @@ -251,7 +254,7 @@ Public Class usrcntlVAT_ATEZ End Class Private Sub dgvCreditsafe_SelectionChanged(sender As Object, e As EventArgs) Handles dgvVAT.SelectionChanged - If dgvVAT.SelectedRows.Count <> 1 Then + If dgvVAT.SelectedRows.Count = 0 Then btnUebernehmen.Enabled = False Else btnUebernehmen.Enabled = True diff --git a/SDL/USTV/frmMDM_USTVAntrag.vb b/SDL/USTV/frmMDM_USTVAntrag.vb index 8996af85..a11c6e0b 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.vb @@ -1360,27 +1360,10 @@ Public Class frmMDM_USTVAntrag Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID) + Dim dt As New DataTable - 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)) - dt.Columns.Add("seller_address_country", GetType(String)) - dt.Columns.Add("seller_address_postcode", GetType(String)) - dt.Columns.Add("seller_address_street", GetType(String)) - dt.Columns.Add("seller_name", GetType(String)) - dt.Columns.Add("total_VAT_amount", GetType(Double)) - 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)) - dt.Columns.Add("doc_index", GetType(Integer)) - dt.Columns.Add("page_count", GetType(Integer)) - dt.Columns.Add("total_pages", GetType(Integer)) - End If + dt = atez_api.createVATDatatable(documentType) Dim failreDesc As String Dim authResp = atez_api.authenticate("VAT", "client1", "password", documentType) @@ -1389,11 +1372,12 @@ Public Class frmMDM_USTVAntrag MsgBox("Authentifizierung fehlgeschlagen" & vbNewLine & authResp) Return False Else - 'If API.SendRequestWithAuthHeader("application/json", failreDesc, "/health", "GET") = "200" Then + 'If API.SendRequestWithAuthHeader("application/json", failreDesc, "/health", "GET") = "200" Then If atez_api.setJsonVAT(documentType, daid) Then + Dim pageCounter = 0 resp = atez_api.SendRequestWithAuthHeader("application/json", failreDesc, "/process", "POST", dt, documentType) @@ -1402,6 +1386,7 @@ Public Class frmMDM_USTVAntrag Dim f As New frmVAT_ATEZ() f.usrcntlVAT_ATEZ1.initDGV(dt) + If f.ShowDialog = DialogResult.OK Then @@ -1439,7 +1424,7 @@ Public Class frmMDM_USTVAntrag If pageCount = r.Cells("page_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) + Dim DS_NEW As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "ATEZ_KI", Now.Year, Now.ToString("ddMMyy_HHmmss.ffff"), 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 @@ -1454,7 +1439,7 @@ Public Class frmMDM_USTVAntrag Dim pagestart = 0 For Each pages As DataRow In dt.Rows pagestart += CInt(pages.Item("page_count")) - If pages.Item("count") = r.Cells("count").Value Then Exit For + If pages.Item("doc_index") = r.Cells("doc_index").Value Then Exit For Next @@ -1465,9 +1450,9 @@ Public Class frmMDM_USTVAntrag VERAG_PROG_ALLGEMEIN.cAllgemein.ExtractPdfPages(TMP_Path_Old, TMP_Path_New, pagestart, r.Cells("page_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 + Dim DS_NEW As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "ATEZ_KI", Now.Year, Now.ToString("ddMMyy_HHmmss.ffff"), fi_orig.Name, USTV_ANTRAG.UStVAn_KuNr, False) + If Not DS_NEW.uploadDataToDATENSERVER(TMP_Path_New) Then MsgBox("Fehler beim Speichern: Datenserver!") + If DS_NEW.da_id <= 0 Then MsgBox("Keine DocId!") USTV_POS.UStVPo_daId = DS_NEW.da_id @@ -1495,7 +1480,7 @@ Public Class frmMDM_USTVAntrag 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 + If r.Cells("total_VAT_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 @@ -1510,18 +1495,18 @@ Public Class frmMDM_USTVAntrag 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_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_CURTOEUR(r.Cells("total_VAT_amount").Value, r.Cells("total_VAT_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 + Dim kurs As New cEZB_Waehrungskurse(r.Cells("total_VAT_currency").Value) + If r.Cells("total_VAT_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_USteuerbetragEUR = Math.Round(kurs.EXCHANGE_EURTOCUR(r.Cells("total_VAT_amount").Value, r.Cells("total_VAT_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 + ElseIf r.Cells("total_VAT_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 @@ -1529,7 +1514,7 @@ Public Class frmMDM_USTVAntrag 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) + USTV_POS.UStVPo_USteuerbetrag = VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuro(r.Cells("total_VAT_amount").Value, r.Cells("total_VAT_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 @@ -3111,8 +3096,8 @@ Public Class frmMDM_USTVAntrag 'document_type = vat_invoice or receipt - 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)} + If Not cnS_KIUPLOAD.Items.ContainsKey("invoice") Then + Dim vat = New ToolStripMenuItem() With {.Text = "MWST-Rechnung(en)", .Name = "invoice", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} cnS_KIUPLOAD.Items.Add(vat) AddHandler vat.Click, AddressOf mnuItemKIUPLOAD_Clicked End If diff --git a/SDL/USTV/ustCntlUSTV_AntragPosition.vb b/SDL/USTV/ustCntlUSTV_AntragPosition.vb index 505cdf02..a891abe1 100644 --- a/SDL/USTV/ustCntlUSTV_AntragPosition.vb +++ b/SDL/USTV/ustCntlUSTV_AntragPosition.vb @@ -644,25 +644,7 @@ Public Class ustCntlUSTV_AntragPosition Dim dt As New DataTable - 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)) - dt.Columns.Add("seller_address_country", GetType(String)) - dt.Columns.Add("seller_address_postcode", GetType(String)) - dt.Columns.Add("seller_address_street", GetType(String)) - dt.Columns.Add("seller_name", GetType(String)) - dt.Columns.Add("total_VAT_amount", GetType(Double)) - 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)) - dt.Columns.Add("page_count", GetType(Integer)) - dt.Columns.Add("doc_index", GetType(Integer)) - dt.Columns.Add("total_pages", GetType(Integer)) - End If + dt = API.createVATDatatable(item.Name) Dim failreDesc As String Dim authResp = API.authenticate("VAT", "client1", "password", item.Name) diff --git a/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb b/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb index e0babdac..ef41fbca 100644 --- a/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb +++ b/VERAG_PROG_ALLGEMEIN/Schnittstellen/ATEZ/VERAG_OUT_ATEZ_IN/cATEZ_NCTS_IN.vb @@ -4,6 +4,8 @@ Imports System.Reflection Imports System.Threading Imports System.Windows.Forms Imports Chilkat +Imports com.sun.tools.doclets.internal.toolkit.resources +Imports com.sun.xml.internal.rngom Imports DocumentFormat.OpenXml.Wordprocessing Imports javax Imports javax.xml.ws.soap.AddressingFeature @@ -950,28 +952,43 @@ Public Class cATEZ_NCTS_IN '-------------------------------- Dim j As Integer = 0 + dt.Clear() + While j < num - Dim invoice As Chilkat.JsonObject = jsonResult.ObjectAt(j) Dim R As DataRow = dt.NewRow + + Dim invoice As Chilkat.JsonObject = data.ObjectAt(j) + Dim totalAmonut As String = invoice.StringOf("total_VAT_amount").Replace(".", ",") R("count") = j + 1 - R("currency") = checkNullStr(invoice.StringOf("currency")) + R("total_VAT_currency") = checkNullStr(invoice.StringOf("currency")) R("total_VAT_amount") = CDbl(checkNulDbl(totalAmonut)) - R("invoice_id") = checkNullStr(invoice.StringOf("invoice_id")) - R("invoice_date") = checkNullStr(invoice.StringOf("invoice_date")) + + If documentType = "receipt" Then + R("invoice_id") = checkNullStr(invoice.StringOf("receipt_id")) + R("invoice_date") = checkNullStr(invoice.StringOf("receipt_date")) + Else + R("invoice_id") = checkNullStr(invoice.StringOf("invoice_id")) + R("invoice_date") = checkNullStr(invoice.StringOf("invoice_date")) + End If + 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("seller_address_full") = checkNullStr(invoice.StringOf("seller_address_full")) + + + R("status") = checkNullStr(jsonResult.StringOf("status")) R("document_count") = checkNulInt(jsonResult.IntOf("document_count")) - R("doc_index") = checkNulInt(jsonResult.IntOf("doc_index")) - R("page_count") = checkNulInt(jsonResult.IntOf("page_count")) + R("doc_index") = checkNulInt(invoice.IntOf("doc_index")) + R("page_count") = checkNulInt(invoice.IntOf("page_count")) R("total_pages") = checkNulInt(jsonResult.IntOf("total_pages")) dt.Rows.Add(R) @@ -979,6 +996,7 @@ Public Class cATEZ_NCTS_IN j = j + 1 End While + Return jsonResult.StringOf("status") End If @@ -1091,6 +1109,47 @@ Public Class cATEZ_NCTS_IN End Function + + Shared Function createVATDatatable(documentType As String) As DataTable + + + Dim dt As New DataTable + + Dim success As Boolean = False + + + If dt IsNot Nothing And Not dt.Columns.Contains("total_VAT_currency") Then + + dt.Columns.Add("count", GetType(Integer)) + dt.Columns.Add("total_VAT_currency", GetType(String)) + dt.Columns.Add("seller_VAT_id", GetType(String)) + dt.Columns.Add("seller_address_city", GetType(String)) + dt.Columns.Add("seller_address_country", GetType(String)) + dt.Columns.Add("seller_address_postcode", GetType(String)) + dt.Columns.Add("seller_address_street", GetType(String)) + dt.Columns.Add("seller_address_full", GetType(String)) + dt.Columns.Add("seller_name", GetType(String)) + dt.Columns.Add("total_VAT_amount", GetType(Double)) + dt.Columns.Add("status", GetType(String)) + dt.Columns.Add("document_count", GetType(Integer)) + dt.Columns.Add("doc_index", GetType(Integer)) + dt.Columns.Add("page_count", GetType(Integer)) + dt.Columns.Add("total_pages", GetType(Integer)) + dt.Columns.Add("invoice_id", GetType(String)) + dt.Columns.Add("invoice_date", GetType(String)) + + End If + + + + Return dt + + End Function + + + + + Public Function setJsonPDF(ncts As cATEZ_NCTS_DATA, dgv As DataGridView) Dim success As Boolean diff --git a/VERAG_PROG_ALLGEMEIN/cAllgemein.vb b/VERAG_PROG_ALLGEMEIN/cAllgemein.vb index 2fd13364..9a4c3737 100644 --- a/VERAG_PROG_ALLGEMEIN/cAllgemein.vb +++ b/VERAG_PROG_ALLGEMEIN/cAllgemein.vb @@ -609,7 +609,7 @@ Public Class cAllgemein 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 + For p As Integer = pageStart To (pageStart + pagesEnd) - 1 If p > Reader.NumberOfPages Then MsgBox("Seitenanzahl überschritten!") srcDoc.Close() : Reader.Close() From 81550cff7cebf89a837245b57e2503263c8a34c3 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 14 May 2025 15:17:37 +0200 Subject: [PATCH 4/5] Mahnlauf, Fakt, etc. --- SDL/Fakturierung/usrCntlFaktAbrechnung.vb | 9 ++++++++- SDL/buchhaltung/frmBU_Mahnlauf.vb | 8 +++----- SDL/buchhaltung/rptMahnung.Designer.vb | 2 +- SDL/kunden/usrcntlKundeBearbeitenFull.vb | 1 + 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb index dd5843fe..f1775bf7 100644 --- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb +++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb @@ -662,7 +662,14 @@ Public Class usrCntlFaktAbrechnung cboRechnungSprache.changeItem("DE") If kdFirmaRechnungAn.KdData_KUNDE_ERW IsNot Nothing Then If If(kdFirmaRechnungAn.KdData_KUNDE_ERW.kde_Fakturierung_Sprache, "") <> "" Then - cboRechnungSprache.changeItem(kdFirmaRechnungAn.KdData_KUNDE_ERW.kde_Fakturierung_Sprache) + + If kdFirmaRechnungAn.KdData_KUNDE_ERW.kde_Fakturierung_Sprache = "TR" Then + cboRechnungSprache.changeItem("EN") + Else + cboRechnungSprache.changeItem(kdFirmaRechnungAn.KdData_KUNDE_ERW.kde_Fakturierung_Sprache) + End If + + End If End If diff --git a/SDL/buchhaltung/frmBU_Mahnlauf.vb b/SDL/buchhaltung/frmBU_Mahnlauf.vb index adcdb910..fee3023e 100644 --- a/SDL/buchhaltung/frmBU_Mahnlauf.vb +++ b/SDL/buchhaltung/frmBU_Mahnlauf.vb @@ -441,11 +441,8 @@ Public Class frmBU_Mahnlauf Select Case FIRMA.Firma_ID Case 19 - If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_email <> "" Then - rpt.lblEmail.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_email - Else - rpt.lblEmail.Text = IIf(FIRMA.Firma_E_Mail_Mahnungen <> "", FIRMA.Firma_E_Mail_Mahnungen, "buchhaltung@verag.ag") - End If + + rpt.lblEmail.Text = IIf(FIRMA.Firma_E_Mail_Mahnungen <> "", FIRMA.Firma_E_Mail_Mahnungen, VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_email) If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_telefonnr <> "" AndAlso VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_durchwahl <> "" Then rpt.lblTelefon.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_telefonnr + "-" + VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_durchwahl @@ -535,6 +532,7 @@ Public Class frmBU_Mahnlauf rpt.lblUeberschriftRG_GS.Text = MAHNTEXT rpt.txtMahnungstextVOR.Text = MahnTEXT_VOR rpt.txtVermerk.Text = MahnTEXT_NACH + rpt.txtDisclaimer.Text = "Wir arbeiten ausschließlich aufgrund der Allgemeinen Spediteurbedingungen in der jeweils geltenden Fassung. Zahlungen werden zunächst auf unsere Rechnungen, Spesen und Zinsen, zuletzt auf Zölle angerechnet. Zahlbar und klagbar in Schärding. Steuer-, Zoll- und Tarifauskünfte sind unverbindlich." Else getMahnstufetextMDM(MAHNSTUFE, MahnTEXT_VOR, MahnTEXT_NACH, MAHNTEXT) rpt.lblUeberschriftRG_GS.Text = MAHNTEXT diff --git a/SDL/buchhaltung/rptMahnung.Designer.vb b/SDL/buchhaltung/rptMahnung.Designer.vb index dabb81b7..26e675b2 100644 --- a/SDL/buchhaltung/rptMahnung.Designer.vb +++ b/SDL/buchhaltung/rptMahnung.Designer.vb @@ -1367,7 +1367,7 @@ Partial Public Class rptMahnung Private WithEvents Line3 As GrapeCity.ActiveReports.SectionReportModel.Line Private WithEvents lblSachbearbeiterUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents lblBankUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label - Private WithEvents txtDisclaimer As GrapeCity.ActiveReports.SectionReportModel.TextBox + Public WithEvents txtDisclaimer As GrapeCity.ActiveReports.SectionReportModel.TextBox Public WithEvents lblRgDatum As GrapeCity.ActiveReports.SectionReportModel.Label Public WithEvents lblSachbearbeiter As GrapeCity.ActiveReports.SectionReportModel.Label Public WithEvents lblRechnung_Name1 As GrapeCity.ActiveReports.SectionReportModel.Label diff --git a/SDL/kunden/usrcntlKundeBearbeitenFull.vb b/SDL/kunden/usrcntlKundeBearbeitenFull.vb index 93556951..a3aad7d5 100644 --- a/SDL/kunden/usrcntlKundeBearbeitenFull.vb +++ b/SDL/kunden/usrcntlKundeBearbeitenFull.vb @@ -901,6 +901,7 @@ cboRechnungSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Deutsch", "DE")) cboRechnungSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Englisch", "EN")) cboRechnungSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Rumänisch", "RO")) + If isVerag360 Then cboRechnungSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Türkisch", "TR")) cboRechnungSprache.changeItem(0) cboProvisionStaffelArt.fillWithSQL("SELECT [PreislistenNr],[PreislistenBez] FROM [VERAG].[dbo].[tblPreislisten] WHERE Art='E' ORDER BY Preislistenbez", False, "FMZOLL", True) From f6a7af91a32f80a47bb0956ed31ef71c5ee25188 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 14 May 2025 16:11:05 +0200 Subject: [PATCH 5/5] BU, etc. --- SDL/buchhaltung/frmBU_Mahnlauf.vb | 16 ++++++++++------ SDL/buchhaltung/rptMahnung.vb | 21 +++++++++++++++++---- SDL/cProgramFunctions.vb | 16 +++++++++++++++- 3 files changed, 42 insertions(+), 11 deletions(-) diff --git a/SDL/buchhaltung/frmBU_Mahnlauf.vb b/SDL/buchhaltung/frmBU_Mahnlauf.vb index fee3023e..0f2fabff 100644 --- a/SDL/buchhaltung/frmBU_Mahnlauf.vb +++ b/SDL/buchhaltung/frmBU_Mahnlauf.vb @@ -360,9 +360,13 @@ Public Class frmBU_Mahnlauf Next End If + Dim dict As New Dictionary(Of String, String) + dict("MITTWOCH") = Today.AddDays((DayOfWeek.Wednesday - Today.DayOfWeek + 7) Mod 7).ToShortDateString() + dict("DONNERSTAG") = Today.AddDays((DayOfWeek.Thursday - Today.DayOfWeek + 7) Mod 7).ToShortDateString() + dict("FREITAG") = Today.AddDays((DayOfWeek.Friday - Today.DayOfWeek + 7) Mod 7).ToShortDateString() + dict("HEUTE") = Today.ToShortDateString() - - Dim rpt As New rptMahnung(Sprache, MAHNSTUFE, Firma_ID) + Dim rpt As New rptMahnung(Sprache, MAHNSTUFE, Firma_ID, IIf(Firma_ID = 19, dict, Nothing)) rpt.Document.Printer.PrinterName = "" rpt.PageSettings.PaperKind = GrapeCity.ActiveReports.Printing.PaperKind.A4 @@ -1138,24 +1142,24 @@ Public Class frmBU_Mahnlauf Case 2 MahnTEXT_VOR = "Trotz unserer 1. Mahnung wurden die nachstehenden Rechnungen immer noch nicht beglichen." - MahnTEXT_NACH = "Zur Vermeidung weiterer Kosten und Unannehmlichkeiten fordern wir Sie nunmehr mit aller Bestimmtheit auf, den überfälligen Betrag bis FREITAG zu begleichen." & vbNewLine & "Sollten Sie zwischenzeitlich Zahlung geleistet haben, senden Sie uns bitte umgehend eine Kopie Ihres Überweisungsbelegs. " + MahnTEXT_NACH = "Zur Vermeidung weiterer Kosten und Unannehmlichkeiten fordern wir Sie nunmehr mit aller Bestimmtheit auf, den überfälligen Betrag bis %FREITAG% zu begleichen." & vbNewLine & "Sollten Sie zwischenzeitlich Zahlung geleistet haben, senden Sie uns bitte umgehend eine Kopie Ihres Überweisungsbelegs. " MAHNTEXT = MAHNSTUFE & ". MAHNUNG" Case 3 MahnTEXT_VOR = "Trotz zweifacher Mahnung sind nachstehende Rechnungen immer noch nicht beglichen." - MahnTEXT_NACH = "Wir fordern Sie hiermit letztmalig auf, den überfälligen Betrag unverzüglich bis DONNERSTAG zu entrichten." & vbNewLine & "Sollten wir zum Ablauf der neuerlichen Frist keine Kopie Ihres Überweisungsbelegs erhalten, müssen wir Ihre Konten sperren!" + MahnTEXT_NACH = "Wir fordern Sie hiermit letztmalig auf, den überfälligen Betrag unverzüglich bis %DONNERSTAG% zu entrichten." & vbNewLine & "Sollten wir zum Ablauf der neuerlichen Frist keine Kopie Ihres Überweisungsbelegs erhalten, müssen wir Ihre Konten sperren!" MAHNTEXT = MAHNSTUFE & ". MAHNUNG" Case >= 4 And MAHNSTUFE <= 7 - MahnTEXT_VOR = "Trotz mehrfacher Mahnung sind nachstehende Rechnungen immer noch nicht beglichen." & vbNewLine & "Wir fordern Sie hiermit letztmalig auf, den offenen Betrag unverzüglich bis MITTWOCH zur Einzahlung zu bringen. Bitte senden Sie uns eine Kopie des Überweisungsbelegs!" + MahnTEXT_VOR = "Trotz mehrfacher Mahnung sind nachstehende Rechnungen immer noch nicht beglichen." & vbNewLine & "Wir fordern Sie hiermit letztmalig auf, den offenen Betrag unverzüglich bis %MITTWOCH% zur Einzahlung zu bringen. Bitte senden Sie uns eine Kopie des Überweisungsbelegs!" MahnTEXT_NACH = "Nach erfolglosem Ablauf dieser neuerlichen Frist sind wir gezwungen, ohne weitere vorherige Ankündigung rechtliche Schritte einzuleiten." MAHNTEXT = MAHNSTUFE & ". MAHNUNG" Case >= 8 - MahnTEXT_VOR = "Trotz mehrfacher Mahnung sind nachstehende Rechnungen immer noch nicht beglichen." & vbNewLine & "Wir fordern Sie hiermit letztmalig auf, den offenen Betrag unverzüglich HEUTE zur Einzahlung zu bringen. Bitte senden Sie uns eine Kopie des Überweisungsbelegs!" + MahnTEXT_VOR = "Trotz mehrfacher Mahnung sind nachstehende Rechnungen immer noch nicht beglichen." & vbNewLine & "Wir fordern Sie hiermit letztmalig auf, den offenen Betrag unverzüglich %HEUTE% zur Einzahlung zu bringen. Bitte senden Sie uns eine Kopie des Überweisungsbelegs!" MahnTEXT_NACH = "Nach erfolglosem Ablauf dieser neuerlichen Frist wären wir dann gezwungen, aber ohne weitere vorherige Ankündigung rechtliche Schritte einzuleiten." MAHNTEXT = MAHNSTUFE & ". MAHNUNG" End Select diff --git a/SDL/buchhaltung/rptMahnung.vb b/SDL/buchhaltung/rptMahnung.vb index 4bcae0fc..96a6aa23 100644 --- a/SDL/buchhaltung/rptMahnung.vb +++ b/SDL/buchhaltung/rptMahnung.vb @@ -1,10 +1,12 @@ Imports GrapeCity.ActiveReports Imports GrapeCity.ActiveReports.Document +Imports GrapeCity.DataVisualization.Chart Public Class rptMahnung Dim _LAN = "" Dim _OPTION = "" Dim _FIRMAID As Integer = -1 + Dim DICT As Dictionary(Of String, String) = Nothing Sub New() InitializeComponent() @@ -19,14 +21,25 @@ Public Class rptMahnung Me._FIRMAID = _FIRMAID ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. End Sub + + Sub New(_LAN, _OPTION, _FIRMAID, _DICT) + ' Dieser Aufruf ist für den Designer erforderlich. + InitializeComponent() + Me.Document.Printer.PrinterName = "" + Me._LAN = _LAN + Me._OPTION = _OPTION + Me._FIRMAID = _FIRMAID + Me.DICT = _DICT + ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. + End Sub Private Sub rptRechnungDruck_ReportStart(sender As Object, e As EventArgs) Handles MyBase.ReportStart Me.Document.Printer.PrinterName = "" If _LAN.replace("DE", "") <> "" Then - SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.ReportHeader1.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID) - SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.ReportFooter1.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID) - SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.GroupHeader4.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID) - SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.PageFooter.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID) + SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.ReportHeader1.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID, DICT) + SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.ReportFooter1.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID, DICT) + SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.GroupHeader4.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID, DICT) + SDL.cProgramFunctions._TRANSLATE_RPT(Me, Me.PageFooter.Controls, _LAN, "rptMahnung", _OPTION, _FIRMAID, DICT) End If End Sub diff --git a/SDL/cProgramFunctions.vb b/SDL/cProgramFunctions.vb index c1c31005..602e2768 100644 --- a/SDL/cProgramFunctions.vb +++ b/SDL/cProgramFunctions.vb @@ -1418,7 +1418,7 @@ Public Class cProgramFunctions End Sub - Public Shared Sub _TRANSLATE_RPT(rpt As GrapeCity.ActiveReports.SectionReport, o As GrapeCity.ActiveReports.SectionReportModel.ControlCollection, lan As String, reportName As String, Optional _option As String = "", Optional _firmenid As Integer = -1) + Public Shared Sub _TRANSLATE_RPT(rpt As GrapeCity.ActiveReports.SectionReport, o As GrapeCity.ActiveReports.SectionReportModel.ControlCollection, lan As String, reportName As String, Optional _option As String = "", Optional _firmenid As Integer = -1, Optional dict As Dictionary(Of String, String) = Nothing) If lan = "" Then Exit Sub If lan = "DE" Then Exit Sub 'o... Form @@ -1472,9 +1472,23 @@ Public Class cProgramFunctions If obj IsNot Nothing Then If (TypeOf obj Is GrapeCity.ActiveReports.SectionReportModel.Label) Then DirectCast(obj, GrapeCity.ActiveReports.SectionReportModel.Label).Text = TXT.trs_text + + If dict IsNot Nothing Then + For Each pair In dict + DirectCast(obj, GrapeCity.ActiveReports.SectionReportModel.Label).Text = DirectCast(obj, GrapeCity.ActiveReports.SectionReportModel.Label).Text.ToString.Replace("%" & pair.Key & "%", pair.Value) + Next + End If + End If If (TypeOf obj Is GrapeCity.ActiveReports.SectionReportModel.TextBox) Then DirectCast(obj, GrapeCity.ActiveReports.SectionReportModel.TextBox).Text = TXT.trs_text + + If dict IsNot Nothing Then + For Each pair In dict + DirectCast(obj, GrapeCity.ActiveReports.SectionReportModel.TextBox).Text = DirectCast(obj, GrapeCity.ActiveReports.SectionReportModel.TextBox).Text.ToString.Replace("%" & pair.Key & "%", pair.Value) + Next + End If + End If End If End If