StartOpt
This commit is contained in:
60
initATLASAufschubkonten/frmStartOptions.Designer.vb
generated
60
initATLASAufschubkonten/frmStartOptions.Designer.vb
generated
@@ -277,6 +277,8 @@ Partial Class frmStartOptions
|
||||
Me.Button27 = New System.Windows.Forms.Button()
|
||||
Me.lblWartungen = New System.Windows.Forms.Label()
|
||||
Me.TabPage7 = New System.Windows.Forms.TabPage()
|
||||
Me.Label50 = New System.Windows.Forms.Label()
|
||||
Me.Label49 = New System.Windows.Forms.Label()
|
||||
Me.Label48 = New System.Windows.Forms.Label()
|
||||
Me.cbxCSsync = New System.Windows.Forms.CheckBox()
|
||||
Me.cbxMailsenden = New System.Windows.Forms.CheckBox()
|
||||
@@ -352,8 +354,7 @@ Partial Class frmStartOptions
|
||||
Me.MyTextBox1 = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.txtGJ_UNISPED = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.DataGridViewTextBoxColumn1 = New System.Windows.Forms.DataGridViewTextBoxColumn()
|
||||
Me.Label49 = New System.Windows.Forms.Label()
|
||||
Me.Label50 = New System.Windows.Forms.Label()
|
||||
Me.cbxEventtriggered = New System.Windows.Forms.CheckBox()
|
||||
Me.pnl.SuspendLayout()
|
||||
CType(Me.PictureBox24, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.PictureBox23, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
@@ -3467,6 +3468,7 @@ Partial Class frmStartOptions
|
||||
'
|
||||
'TabPage7
|
||||
'
|
||||
Me.TabPage7.Controls.Add(Me.cbxEventtriggered)
|
||||
Me.TabPage7.Controls.Add(Me.Label50)
|
||||
Me.TabPage7.Controls.Add(Me.Label49)
|
||||
Me.TabPage7.Controls.Add(Me.Label48)
|
||||
@@ -3490,6 +3492,28 @@ Partial Class frmStartOptions
|
||||
Me.TabPage7.Text = "Creditsafe"
|
||||
Me.TabPage7.UseVisualStyleBackColor = True
|
||||
'
|
||||
'Label50
|
||||
'
|
||||
Me.Label50.AutoSize = True
|
||||
Me.Label50.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.Label50.ForeColor = System.Drawing.Color.Red
|
||||
Me.Label50.Location = New System.Drawing.Point(168, 181)
|
||||
Me.Label50.Name = "Label50"
|
||||
Me.Label50.Size = New System.Drawing.Size(228, 13)
|
||||
Me.Label50.TabIndex = 167
|
||||
Me.Label50.Text = "*prüfe Kunden, deren Bon-Dat. älter ist"
|
||||
'
|
||||
'Label49
|
||||
'
|
||||
Me.Label49.AutoSize = True
|
||||
Me.Label49.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.Label49.ForeColor = System.Drawing.Color.Red
|
||||
Me.Label49.Location = New System.Drawing.Point(109, 246)
|
||||
Me.Label49.Name = "Label49"
|
||||
Me.Label49.Size = New System.Drawing.Size(234, 13)
|
||||
Me.Label49.TabIndex = 166
|
||||
Me.Label49.Text = "*nur Info bei Kundenrechnung < 2 Jahre"
|
||||
'
|
||||
'Label48
|
||||
'
|
||||
Me.Label48.AutoSize = True
|
||||
@@ -4715,27 +4739,18 @@ Partial Class frmStartOptions
|
||||
Me.DataGridViewTextBoxColumn1.MinimumWidth = 8
|
||||
Me.DataGridViewTextBoxColumn1.Name = "DataGridViewTextBoxColumn1"
|
||||
'
|
||||
'Label49
|
||||
'cbxEventtriggered
|
||||
'
|
||||
Me.Label49.AutoSize = True
|
||||
Me.Label49.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.Label49.ForeColor = System.Drawing.Color.Red
|
||||
Me.Label49.Location = New System.Drawing.Point(109, 246)
|
||||
Me.Label49.Name = "Label49"
|
||||
Me.Label49.Size = New System.Drawing.Size(234, 13)
|
||||
Me.Label49.TabIndex = 166
|
||||
Me.Label49.Text = "*nur Info bei Kundenrechnung < 2 Jahre"
|
||||
'
|
||||
'Label50
|
||||
'
|
||||
Me.Label50.AutoSize = True
|
||||
Me.Label50.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.Label50.ForeColor = System.Drawing.Color.Red
|
||||
Me.Label50.Location = New System.Drawing.Point(168, 181)
|
||||
Me.Label50.Name = "Label50"
|
||||
Me.Label50.Size = New System.Drawing.Size(228, 13)
|
||||
Me.Label50.TabIndex = 167
|
||||
Me.Label50.Text = "*prüfe Kunden, deren Bon-Dat. älter ist"
|
||||
Me.cbxEventtriggered.AutoSize = True
|
||||
Me.cbxEventtriggered.Checked = True
|
||||
Me.cbxEventtriggered.CheckState = System.Windows.Forms.CheckState.Checked
|
||||
Me.cbxEventtriggered.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.cbxEventtriggered.Location = New System.Drawing.Point(14, 144)
|
||||
Me.cbxEventtriggered.Name = "cbxEventtriggered"
|
||||
Me.cbxEventtriggered.Size = New System.Drawing.Size(237, 17)
|
||||
Me.cbxEventtriggered.TabIndex = 168
|
||||
Me.cbxEventtriggered.Text = "Daily-Check (schneller aber weniger deailiert)"
|
||||
Me.cbxEventtriggered.UseVisualStyleBackColor = True
|
||||
'
|
||||
'frmStartOptions
|
||||
'
|
||||
@@ -5145,4 +5160,5 @@ Partial Class frmStartOptions
|
||||
Friend WithEvents cbxCSsync As CheckBox
|
||||
Friend WithEvents Label49 As Label
|
||||
Friend WithEvents Label50 As Label
|
||||
Friend WithEvents cbxEventtriggered As CheckBox
|
||||
End Class
|
||||
|
||||
@@ -833,6 +833,17 @@ Public Class frmStartOptions
|
||||
End If
|
||||
|
||||
|
||||
Case "CREDITSAFE_EVENTS_DETAIL"
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
|
||||
Dim upateKunden As Boolean = True
|
||||
Dim OnlyCurrentMonthData As Boolean = True
|
||||
Dim setzeInfoImKunden As Boolean = False
|
||||
Dim sendMail As Boolean = True
|
||||
|
||||
importCreditsafeEvents(CDate("01." & Now.Month & "." & Now.Year).ToShortDateString, OnlyCurrentMonthData, upateKunden, setzeInfoImKunden, sendMail, True)
|
||||
closeMe()
|
||||
|
||||
Case "CREDITSAFE_EVENTS"
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
|
||||
@@ -841,7 +852,7 @@ Public Class frmStartOptions
|
||||
Dim setzeInfoImKunden As Boolean = False
|
||||
Dim sendMail As Boolean = True
|
||||
|
||||
importCreditsafeEvents(CDate("01." & Now.Month & "." & Now.Year).ToShortDateString, OnlyCurrentMonthData, upateKunden, setzeInfoImKunden, sendMail)
|
||||
importCreditsafeEvents(CDate("01." & Now.Month & "." & Now.Year).ToShortDateString, OnlyCurrentMonthData, upateKunden, setzeInfoImKunden, sendMail, False)
|
||||
closeMe()
|
||||
|
||||
Case "CREDITSAFE_UPLOADS"
|
||||
@@ -6341,23 +6352,29 @@ weiter:
|
||||
End If
|
||||
|
||||
|
||||
importCreditsafeEvents(datumString, cbCheckDate.Checked, bcxKundendatenaktCS.Checked, cbxKundenbesonderheitenCS.Checked, cbxMailsenden.Checked)
|
||||
importCreditsafeEvents(datumString, cbCheckDate.Checked, bcxKundendatenaktCS.Checked, cbxKundenbesonderheitenCS.Checked, cbxMailsenden.Checked, Not cbxEventtriggered.Checked)
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub importCreditsafeEvents(datum As String, checkDate As Boolean, upateKunden As Boolean, setzeKundenbesonderheiten As Boolean, sendMail As Boolean)
|
||||
Private Sub importCreditsafeEvents(datum As String, checkDate As Boolean, upateKunden As Boolean, setzeKundenbesonderheiten As Boolean, sendMail As Boolean, companyDetailEventsRequest As Boolean)
|
||||
|
||||
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
'WICHTIG, bei companyDetailEventsRequest = true wird gleich Punkt 3 gemacht (dauert länger, aber mehr Datensätze und alle Kunden werden geprüft, bei companyDetailEventsRequest = false wird die u.a. Best Practice-Methode durchgeführt-> also triggerbasierend)!!!!
|
||||
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
'Best Practices for Viewing Notification Events
|
||||
|
||||
'1. Use Portfolio-Specific Events for Targeted Monitoring: Start with the portfolio-specific endpoint to focus on changes relevant to a particular portfolio.
|
||||
'2. Leverage Global Events for a Broader View: Use the all-events endpoint to gain a comprehensive overview of all notifications across your portfolios.
|
||||
'3. Drill Down to Company-Level Events When Needed: For detailed insights into a specific company, use the company-specific endpoint.
|
||||
'4. Verify Enabled Rules: Ensure that the appropriate event rules are enabled for your portfolios to capture the desired notifications. Refer to the Activate Event Rules section for guidance.
|
||||
|
||||
'aktuell machem wir gleich Punkt 3 (damit haben wir alle Informationen), das verursacht allerdings sehr viele API-Aurfrufe, besser nach dem Best Practice oben!
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
Dim creditsaveOld As String = "
|
||||
@@ -6388,33 +6405,102 @@ weiter:
|
||||
|
||||
|
||||
|
||||
Dim creditsave As String = "select distinct(ba_KundenNr) from Kunden
|
||||
|
||||
|
||||
Dim creditsave As String = "select distinct(ba_KundenNr),f.Firma from Kunden
|
||||
inner join tblKundenErweitert on Kunden.KundenNr = kde_KundenNr
|
||||
inner join Filialen as f on f.FilialenNr = Kunden.FilialenNr
|
||||
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 = 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
|
||||
|
||||
'KundenNr und Firma
|
||||
|
||||
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))
|
||||
|
||||
Dim Mailinfolast2Years As Boolean = False
|
||||
|
||||
If cs.authenticate() = "200" Then
|
||||
|
||||
If Not companyDetailEventsRequest Then
|
||||
|
||||
Dim API_Start_Daily = 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, "DAiLY-CREDITSAFE-EVENTS-IMPORT", "CS")
|
||||
|
||||
Dim dtMonitoredRequest As New DataTable
|
||||
|
||||
Dim companyDummy As New cCreditSafeAPI.Company("", "", "", "", "", "", Nothing, "", "", "", "", "", "", "", "", "", 0)
|
||||
If txtCSDate.Text <> "" AndAlso IsDate(txtCSDate.Text) Then
|
||||
companyDummy.lastChecked = CDate(txtCSDate.Text)
|
||||
End If
|
||||
repeatRequestDaily:
|
||||
Dim page As Integer = 0
|
||||
Dim totalPages As Integer = -1
|
||||
|
||||
Dim APIText = cs.getCompanyEvents(companyDummy, dtMonitoredRequest, False, totalPages, checkDate, upateKunden, False,, setzeKundenbesonderheiten, True,, page)
|
||||
If (APIText.Contains("Error") Or APIText.Contains("Verbindungsfehler")) Then API_Start_Daily.UPDTAE_ERR("ERROR", APIText, "dailyImportCreditsafeEvents")
|
||||
|
||||
If APIText.Contains("Invalid token") Then
|
||||
If Not cs.authenticate() = 200 Then
|
||||
API_Start_Daily.UPDTAE_ERR("ERROR", APIText, "importCreditsafeEvents")
|
||||
Exit Sub
|
||||
Else
|
||||
Thread.Sleep(4000)
|
||||
GoTo repeatRequestDaily
|
||||
End If
|
||||
End If
|
||||
|
||||
If totalPages > 1 Then
|
||||
For i = 2 To totalPages
|
||||
repeatRequestDailyPages:
|
||||
APIText = cs.getCompanyEvents(companyDummy, dtMonitoredRequest, False, totalPages, checkDate, upateKunden, False,, setzeKundenbesonderheiten, True,, i)
|
||||
If APIText.Contains("Invalid token") Then
|
||||
If Not cs.authenticate() = 200 Then
|
||||
API_Start_Daily.UPDTAE_ERR("ERROR", APIText, "dailyImportCreditsafeEvents")
|
||||
Exit For
|
||||
Else
|
||||
Thread.Sleep(4000)
|
||||
GoTo repeatRequestDailyPages
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
Exit Sub
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If False Then
|
||||
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 countMissingVerag As Integer = 0
|
||||
Dim countMissingIMEX As Integer = 0
|
||||
Dim countMissingUNISPED As Integer = 0
|
||||
Dim countMissingAMBAR As Integer = 0
|
||||
|
||||
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))
|
||||
dt_fehlendeCreditsafeIDS.Columns.Add("Firma", GetType(String))
|
||||
|
||||
|
||||
|
||||
Dim counter As Integer = 0
|
||||
Dim API_Start = 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-IMPORT", "CS")
|
||||
If dtCreditsafe.Rows.Count = 0 Then
|
||||
API_Start.UPDTAE_ERR("ERROR - KEINE DATEN", "Anzahl abgefragte Datensätze:" & dtCreditsafe.Rows.Count & " Anzahl importierte Datensätze:" & counter & " Anzahl fehlende Creditsafe-IDs:" & dt_fehlendeCreditsafeIDS.Rows.Count, "importCreditsafeEvents")
|
||||
End If
|
||||
|
||||
For Each row As DataRow In dtCreditsafe.Rows
|
||||
|
||||
@@ -6429,7 +6515,7 @@ 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
|
||||
|
||||
@@ -6440,10 +6526,10 @@ weiter:
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
repeatRequest:
|
||||
Dim APIText As String = ""
|
||||
If exists Then
|
||||
APIText = cs.getCompanyEvents(company, dt, checkDate, upateKunden, False,, setzeKundenbesonderheiten, Mailinfolast2Years)
|
||||
APIText = cs.getCompanyEvents(company, dt, False, checkDate, upateKunden, False,, setzeKundenbesonderheiten, Mailinfolast2Years, row("Firma"))
|
||||
End If
|
||||
|
||||
If (APIText.Contains("Error") Or APIText.Contains("Verbindungsfehler")) Then
|
||||
@@ -6455,7 +6541,18 @@ weiter:
|
||||
R("KundenNr") = KUNDE_ERW.kde_KundenNr
|
||||
R("Creditsafe-ID") = KUNDE_ERW.kde_CreditSaveId
|
||||
R("Creditsafe-NO") = KUNDE_ERW.kde_CreditSaveNo
|
||||
dt.Rows.Add(R)
|
||||
R("Firma") = row("Firma")
|
||||
dt_fehlendeCreditsafeIDS.Rows.Add(R)
|
||||
|
||||
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
Select Case row(FIRMA)
|
||||
Case "VERAG" : countMissingVerag += 1
|
||||
Case "IMEX" : countMissingIMEX += 1
|
||||
Case "AMBAR" : countMissingAMBAR += 1
|
||||
Case "UNISPED" : countMissingUNISPED += 1
|
||||
End Select
|
||||
End If
|
||||
|
||||
|
||||
KUNDE_ERW.kde_CreditSaveId = ""
|
||||
KUNDE_ERW.SAVE()
|
||||
@@ -6467,21 +6564,38 @@ weiter:
|
||||
Exit For
|
||||
Else
|
||||
Thread.Sleep(4000)
|
||||
GoTo repeatRequest
|
||||
End If
|
||||
End If
|
||||
|
||||
Else
|
||||
counter += 1
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Thread.Sleep(1000)
|
||||
Next
|
||||
|
||||
If dtCreditsafe.Rows.Count = (counter - dt_fehlendeCreditsafeIDS.Rows.Count) Then
|
||||
API_Start.UPDTAE_OK()
|
||||
Else
|
||||
API_Start.UPDTAE_ERR("IMPORT UNVOLLSTÄNDIG", "Anzahl abgefragte Datensätze:" & dtCreditsafe.Rows.Count & " Anzahl importierte Datensätze:" & counter & " Anzahl fehlende Creditsafe-IDs:" & dt_fehlendeCreditsafeIDS.Rows.Count, "importCreditsafeEvents")
|
||||
End If
|
||||
|
||||
|
||||
|
||||
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!" & "<br><br>" & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge)
|
||||
Dim empfaneger As String = ""
|
||||
If countMissingVerag > 0 Then empfaneger &= "as@verag.ag;"
|
||||
If countMissingIMEX > 0 Then empfaneger &= "Viktoria.Leirich@imex-group.at;"
|
||||
If countMissingUNISPED > 0 Then empfaneger &= "sabine.muehlboeck@unisped.at;"
|
||||
If countMissingAMBAR > 0 Then empfaneger &= "Buchhaltung@ambarlog.com;"
|
||||
If empfaneger <> "" Then VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(empfaneger, 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!" & "<br><br>" & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge)
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
Reference in New Issue
Block a user