From f4dcfa7592c4318bfd5144a19af318a812b28dff Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 24 Sep 2025 15:36:50 +0200 Subject: [PATCH] Mitarbeiter, Creditsafe-Infos, etc. --- UID/Mitarbeiter/frmMitarbDetails.Designer.vb | 25 ++++----- UID/Mitarbeiter/frmMitarbDetails.vb | 24 ++++----- initATLASAufschubkonten/frmStartOptions.vb | 57 +++++++++++++++++--- 3 files changed, 75 insertions(+), 31 deletions(-) diff --git a/UID/Mitarbeiter/frmMitarbDetails.Designer.vb b/UID/Mitarbeiter/frmMitarbDetails.Designer.vb index dd5619b..74acbfd 100644 --- a/UID/Mitarbeiter/frmMitarbDetails.Designer.vb +++ b/UID/Mitarbeiter/frmMitarbDetails.Designer.vb @@ -202,7 +202,7 @@ Partial Class frmMitarbDetails Me.cboAdminBer = New System.Windows.Forms.ComboBox() Me.Label7 = New System.Windows.Forms.Label() Me.TabPage8 = New System.Windows.Forms.TabPage() - Me.cbxClient = New System.Windows.Forms.ComboBox() + Me.cbxClientTimas = New System.Windows.Forms.ComboBox() Me.cbxTimasMehrereFirmen = New System.Windows.Forms.CheckBox() Me.clbTimasMehreFirmen = New System.Windows.Forms.CheckedListBox() Me.lblName1 = New System.Windows.Forms.TextBox() @@ -2260,7 +2260,7 @@ Partial Class frmMitarbDetails ' 'TabPage8 ' - Me.TabPage8.Controls.Add(Me.cbxClient) + Me.TabPage8.Controls.Add(Me.cbxClientTimas) Me.TabPage8.Controls.Add(Me.cbxTimasMehrereFirmen) Me.TabPage8.Controls.Add(Me.clbTimasMehreFirmen) Me.TabPage8.Controls.Add(Me.lblName1) @@ -2303,16 +2303,17 @@ Partial Class frmMitarbDetails Me.TabPage8.Text = "Zeiterfassung" Me.TabPage8.UseVisualStyleBackColor = True ' - 'cbxClient + 'cbxClientTimas ' - Me.cbxClient.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList - Me.cbxClient.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.cbxClient.FormattingEnabled = True - Me.cbxClient.Items.AddRange(New Object() {"", "1", "2", "3", "4", "5"}) - Me.cbxClient.Location = New System.Drawing.Point(253, 144) - Me.cbxClient.Name = "cbxClient" - Me.cbxClient.Size = New System.Drawing.Size(54, 21) - Me.cbxClient.TabIndex = 159 + Me.cbxClientTimas.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.cbxClientTimas.DropDownWidth = 100 + Me.cbxClientTimas.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.cbxClientTimas.FormattingEnabled = True + Me.cbxClientTimas.Items.AddRange(New Object() {"", "1", "2", "3", "4", "5"}) + Me.cbxClientTimas.Location = New System.Drawing.Point(253, 144) + Me.cbxClientTimas.Name = "cbxClientTimas" + Me.cbxClientTimas.Size = New System.Drawing.Size(54, 21) + Me.cbxClientTimas.TabIndex = 159 ' 'cbxTimasMehrereFirmen ' @@ -2937,7 +2938,7 @@ Partial Class frmMitarbDetails Friend WithEvents lblName1 As TextBox Friend WithEvents cbxTimasMehrereFirmen As CheckBox Friend WithEvents clbTimasMehreFirmen As CheckedListBox - Friend WithEvents cbxClient As ComboBox + Friend WithEvents cbxClientTimas As ComboBox Friend WithEvents tabParameter As TabPage Friend WithEvents dgvUserParameter As VERAG_PROG_ALLGEMEIN.MyDatagridview End Class diff --git a/UID/Mitarbeiter/frmMitarbDetails.vb b/UID/Mitarbeiter/frmMitarbDetails.vb index 6464c25..027d89b 100644 --- a/UID/Mitarbeiter/frmMitarbDetails.vb +++ b/UID/Mitarbeiter/frmMitarbDetails.vb @@ -149,15 +149,15 @@ Public Class frmMitarbDetails clbTimasMehreFirmen.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG")) clbTimasMehreFirmen.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR")) - cbxClient.Items.Clear() - cbxClient.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", "")) - cbxClient.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "ATILLA")) - cbxClient.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "FO")) - cbxClient.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX")) - cbxClient.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG AG", "VERAG AG")) - cbxClient.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG GMBH", "VERAG GMBH")) + cbxClientTimas.Items.Clear() + cbxClientTimas.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", "")) + cbxClientTimas.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "ATILLA")) + cbxClientTimas.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "FO")) + cbxClientTimas.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX")) + cbxClientTimas.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG AG", "VERAG AG")) + cbxClientTimas.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG GMBH", "VERAG GMBH")) - cbxClient.SelectedIndex = 0 + cbxClientTimas.SelectedIndex = 0 cboFirma.Items.Clear() @@ -1285,7 +1285,7 @@ Public Class frmMitarbDetails If checkMandatoryFields() Then - timas.createEmployee(mitarbeiter, rtfInfoTimas.Text, cbxClient.SelectedItem.Text, dtTimas) + timas.createEmployee(mitarbeiter, rtfInfoTimas.Text, cbxClientTimas.SelectedItem.Text, dtTimas) If rtfInfoTimas.Visible = False AndAlso rtfInfoTimas.Text <> "" Then MsgBox(rtfInfoTimas.Text) tbcntr_TabIndexChanged(sender, e) End If @@ -1307,7 +1307,7 @@ Public Class frmMitarbDetails btnMAanlegen.Visible = Not cbxTimasAngelegt.Checked txtLohnNr.Enabled = Not cbxTimasAngelegt.Checked txtClientNr.Enabled = Not cbxTimasAngelegt.Checked - cbxClient.Enabled = Not cbxTimasAngelegt.Checked + cbxClientTimas.Enabled = Not cbxTimasAngelegt.Checked dgvData.Visible = Not cbxTimasAngelegt.Checked rtfInfoTimas.Visible = cbxTimasAngelegt.Checked btngetInfo.Visible = cbxTimasAngelegt.Checked @@ -1329,7 +1329,7 @@ Public Class frmMitarbDetails ' Return False 'End If - If cbxClient.SelectedItem.Text = "" Then + If cbxClientTimas.SelectedItem.Text = "" Then MsgBox("ClientNr prüfen!") Return False End If @@ -1531,7 +1531,7 @@ Public Class frmMitarbDetails btnMAanlegen.Visible = Not cbxTimasAngelegt.Checked txtLohnNr.Enabled = Not cbxTimasAngelegt.Checked txtClientNr.Enabled = Not cbxTimasAngelegt.Checked - cbxClient.Enabled = Not cbxTimasAngelegt.Checked + cbxClientTimas.Enabled = Not cbxTimasAngelegt.Checked dgvData.Visible = Not cbxTimasAngelegt.Checked TabControl3.Visible = Not cbxTimasAngelegt.Checked rtfInfoTimas.Visible = cbxTimasAngelegt.Checked diff --git a/initATLASAufschubkonten/frmStartOptions.vb b/initATLASAufschubkonten/frmStartOptions.vb index 9655b16..55314d4 100644 --- a/initATLASAufschubkonten/frmStartOptions.vb +++ b/initATLASAufschubkonten/frmStartOptions.vb @@ -6,6 +6,7 @@ Imports System.Security.Cryptography.X509Certificates Imports System.Text Imports System.Threading Imports System.Xml +Imports com.sun.xml.internal.rngom Imports com.sun.xml.internal.rngom.digested Imports MDM_Worker Imports Renci.SshNet @@ -6391,19 +6392,27 @@ weiter: inner join tblKundenErweitert on Kunden.KundenNr = kde_KundenNr inner join tblBonitaetsauskunft on ba_KundenNr = kde_KundenNr where isnull(tblKundenErweitert.kde_CreditSaveId,'') <> '' and kde_CreditSaveId <> 'True' and kde_CreditSaveId <>'False' and isnull(kde_CreditSaveNo,'') <> '' and kde_CSPortfolioAdded = 1 AND ba_Pruefungstool = 'creditsafe API'" & IIf(datum <> "", " AND Kunden.Bonitätsdatum <= '" & datum & "'", "") + If False Then - creditsave &= " and ba_KundenNr = 725398" + creditsave &= " and (ba_KundenNr = 718137 or ba_KundenNr = 1003418)" End If + Dim dtRechnungen As DataTable = (New SQL).loadDgvBySql("select distinct(RechnungsKundenNr) from Rechnungsausgang where cast(RechnungsDatum as Date) >= ' " & Today().AddYears(-2) & "' ", "FMZOLL") - Dim dtCreditsafe As DataTable = (New SQL).loadDgvBySql(creditsave, "FMZOLL") + If dtCreditsafe.Rows.Count = 0 Then Exit Sub Dim cs = New cCreditSafeAPI("creditsafe") + Dim dt_fehlendeCreditsafeIDS As New DataTable + dt_fehlendeCreditsafeIDS.Columns.Add("KundenNr", GetType(String)) + dt_fehlendeCreditsafeIDS.Columns.Add("Creditsafe-ID", GetType(String)) + dt_fehlendeCreditsafeIDS.Columns.Add("Creditsafe-NO", GetType(String)) + + If cs.authenticate() = "200" Then @@ -6421,8 +6430,9 @@ weiter: If currentBonID > 0 Then company.csBonID = currentBonID Dim dt As New DataTable() Dim Mailinfolast2Years As Boolean = False + Dim exists As Boolean = dtRechnungen.AsEnumerable().Any(Function(r) r.Field(Of Integer)("RechnungsKundenNr") = KUNDE_ERW.kde_KundenNr) If sendMail Then - Dim exists As Boolean = dtRechnungen.AsEnumerable().Any(Function(r) r.Field(Of Integer)("RechnungsKundenNr") = KUNDE_ERW.kde_KundenNr) + If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Mailinfolast2Years = True Else @@ -6431,17 +6441,50 @@ weiter: End If - Dim APIText As String = cs.getCompanyEvents(company, dt, checkDate, upateKunden, False,, setzeKundenbesonderheiten, Mailinfolast2Years) + Dim APIText As String = "" + If exists Then + APIText = cs.getCompanyEvents(company, dt, checkDate, upateKunden, False,, setzeKundenbesonderheiten, Mailinfolast2Years) + End If - If APIText.Contains("Error") Or APIText.Contains("Verbindungsfehler") Then - Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.IN, VERAG_PROG_ALLGEMEIN.cAPI_Type.REST, VERAG_PROG_ALLGEMEIN.cAPI_ART.AVISO_IN_CS, "CREDITSAFE-EVENTS", "CS") + If (APIText.Contains("Error") Or APIText.Contains("Verbindungsfehler")) Then + Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.IN, VERAG_PROG_ALLGEMEIN.cAPI_Type.REST, VERAG_PROG_ALLGEMEIN.cAPI_ART.AVISO_IN_CS, "CREDITSAFE-EVENTS", "CS",, KUNDE_ERW.kde_KundenNr) API.UPDTAE_ERR("ERROR", APIText, "importCreditsafeEvents") - Exit For + If APIText.Contains("Not Found") AndAlso APIText.Contains(KUNDE_ERW.kde_CreditSaveId) Then + + Dim R As DataRow = dt_fehlendeCreditsafeIDS.NewRow + R("KundenNr") = KUNDE_ERW.kde_KundenNr + R("Creditsafe-ID") = KUNDE_ERW.kde_CreditSaveId + R("Creditsafe-NO") = KUNDE_ERW.kde_CreditSaveNo + dt.Rows.Add(R) + + KUNDE_ERW.kde_CreditSaveId = "" + KUNDE_ERW.SAVE() + End If + + If APIText.Contains("Invalid token") Then + If Not cs.authenticate() = 200 Then + API.UPDTAE_ERR("ERROR", APIText, "importCreditsafeEvents") + Exit For + Else + Thread.Sleep(4000) + End If + End If + End If Thread.Sleep(1000) Next + + If dt_fehlendeCreditsafeIDS.Rows.Count > 0 Then + Dim filepath = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt_fehlendeCreditsafeIDS,,,,, False) + If filepath <> "" Then + Dim anhenge As New List(Of String) + anhenge.Add(filepath) + VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "d.breimaier@verag.ag", "as@verag.ag"), IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "TEST-", "") & "CREDITSAFE - fehlende CS-IDs", "Im Anhang befinden sich eine Liste der Kunden, deren Creditsafe-ID ungültig sind/nicht gefunden wurden!" & "

" & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge) + End If + End If + End If End Sub