merge
This commit is contained in:
@@ -4,6 +4,7 @@ Imports System.Text
|
||||
Imports System.Text.RegularExpressions
|
||||
Imports System.Web
|
||||
Imports System.Xml
|
||||
Imports io.konik.zugferd
|
||||
Imports Renci.SshNet
|
||||
Imports Renci.SshNet.Sftp
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
@@ -23,6 +24,7 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
Dim Dateiname = ""
|
||||
Public year As Integer
|
||||
Public UtaTestkunden As Boolean = False
|
||||
Public RMCNewFormat As Boolean = True
|
||||
|
||||
|
||||
Sub New(programName As String)
|
||||
@@ -526,11 +528,17 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim dt As New DataTable
|
||||
|
||||
Dim deleteTable As Boolean = False
|
||||
Dim verarbeitungspfad, zielpfad
|
||||
If programName.Contains("RMC") Then
|
||||
verarbeitungspfad = rmc.VERARBEITUNG_PFAD
|
||||
zielpfad = rmc.ZIEL_PFAD
|
||||
|
||||
dt.Columns.Add("KundenNr", GetType(String))
|
||||
dt.Columns.Add("UID", GetType(String))
|
||||
|
||||
ElseIf programName.Contains("UTA") Then
|
||||
verarbeitungspfad = uta.VERARBEITUNG_PFAD
|
||||
zielpfad = uta.ZIEL_PFAD
|
||||
@@ -552,6 +560,8 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
|
||||
If programName.Contains("RMC") Then
|
||||
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = True
|
||||
|
||||
Select Case i
|
||||
|
||||
Case 1
|
||||
@@ -561,7 +571,7 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
If fi.Extension.ToLower = ".csv" Then
|
||||
|
||||
If Not found Then
|
||||
If readRMC(d) <> "" Then found = True
|
||||
If readRMC(d, programName) <> "" Then found = True
|
||||
End If
|
||||
If found Then cntDatenEingelesen += 1
|
||||
End If
|
||||
@@ -580,30 +590,126 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
'd.breimaier: 2024-06-05 aktuell nur die RMC-Dateien! (später, wenn CSV vollständig, dann alle PDFs importieren!
|
||||
'd.breimaier: 2024-06-17 laut Christian Schuster von Comcore (EDV-BEtr. von RMC) nicht möglich CSV mit easytrip und sofico Datensätzen zu ergängen!
|
||||
|
||||
If fi.Name.ToString.StartsWith("invoice_") Then
|
||||
'd.breimaier: 2025-09-15 laut Christian Schuster erhalten wir nun die Rechnungen mit folgenden Aufbau:
|
||||
|
||||
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "RMC", Now.Year, Now.ToString("yyyyMMdd"), frmStartOptions.getFileName(d))
|
||||
'• fixwert invoice
|
||||
'• Kundennummer 26807 (in der CSV enthalten)
|
||||
'• Abrechnungnummer 5549 (Stimmt mit der Abrechnungsnummer im Dateinamen der CSV überein)
|
||||
'• RechnungsNr "262014347" (in der CSV enthalten) - nicht verwechseln mit RechngsNrSL
|
||||
'• Das Land AT, DE, FR...
|
||||
'• zuletzt steht orig. Das ist für euch nicht wichtig, bedeutet nur das ist das Original und keine Kopie
|
||||
|
||||
DS.uploadDataToDATENSERVER(d,,,,,, True)
|
||||
'easytrip-Rechnungen sind immer ITALIEN!
|
||||
|
||||
Dim fileNamePath As String = d
|
||||
|
||||
'If fi.Name.ToString.StartsWith("invoice_") Then
|
||||
|
||||
If RMCNewFormat Then
|
||||
|
||||
Dim destFilename As String = fi.FullName
|
||||
|
||||
destFilename = destFilename.Replace(".pdf", IIf(programName.ToLower.Contains("nto"), "_nto", "_bto") & ".pdf")
|
||||
|
||||
System.IO.File.Move(fi.FullName, destFilename) 'Datei umbenennen
|
||||
|
||||
fileNamePath = destFilename
|
||||
|
||||
End If
|
||||
|
||||
If fi.Name.ToString.StartsWith("invoice_") OrElse (fi.Name.ToString.StartsWith("maut_") AndAlso fi.Name.ToString.Contains("EGR") AndAlso Not fi.Name.ToString.Contains("ALL")) Then 'RMC Eigenrechnungen
|
||||
|
||||
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "RMC", Now.Year, Now.ToString("yyyyMMdd"), frmStartOptions.getFileName(fileNamePath))
|
||||
|
||||
DS.uploadDataToDATENSERVER(fileNamePath,,,,,, True)
|
||||
|
||||
If fi.Name.ToString.StartsWith("invoice_") Then
|
||||
|
||||
SQL.doSQL("Update [tblRMCImport] SET [rmc_daId]='" & DS.da_id & "' where [rmc_pdfFileName] = '" & DS.da_name & "' and [rmc_importDatum] > DATEADD(DAY,-4,getdate()) ", "FMZOLL")
|
||||
|
||||
ElseIf (fi.Name.ToString.StartsWith("maut_") AndAlso fi.Name.ToString.Contains("EGR") AndAlso Not fi.Name.ToString.Contains("ALL")) Then 'EasyTrip IT Rechnungen
|
||||
|
||||
Dim fileNameEasyTrip As String = fi.Name
|
||||
|
||||
fileNameEasyTrip = fileNameEasyTrip.Replace("maut_", "")
|
||||
fileNameEasyTrip = fileNameEasyTrip.Replace("EGR_con", "")
|
||||
|
||||
'maut_24952_EGR_con00079883FITFIT2002A25-07993920250908120506AT70DE_341929194_.pdf
|
||||
|
||||
'24952_00079883FITFIT2002A25-07993920250908120506AT70DE_341929194_.pdf
|
||||
|
||||
'RechnungNr: FIT2002A25-079939
|
||||
'Datum: 08/09/2025
|
||||
'Land: IT
|
||||
'VAT: DE_341929194
|
||||
|
||||
Dim indexOfFIT = fileNameEasyTrip.LastIndexOf("FITFIT") + 3
|
||||
|
||||
Dim kdNr As String = fileNameEasyTrip.Substring(0, 5)
|
||||
Dim invoiceNo As String = "" 'FIT2002A25-079939
|
||||
Dim invoiceDate As String = "" '20250908
|
||||
Dim UID As String = "" 'DE_341929194
|
||||
|
||||
Dim RMC As New cRMC() 'easytry über Filename anlegen!
|
||||
|
||||
invoiceNo = fileNameEasyTrip.Substring(indexOfFIT, 17)
|
||||
invoiceDate = fileNameEasyTrip.Substring(indexOfFIT + 17, 8)
|
||||
Dim parsedDate As DateTime = DateTime.ParseExact(invoiceDate, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture)
|
||||
|
||||
UID = fileNameEasyTrip.Substring(fileNameEasyTrip.IndexOf("AT70") + 4, 12)
|
||||
UID = UID.Replace("_", "")
|
||||
|
||||
RMC.rmc_reDatum = parsedDate.ToString("dd.MM.yyyy")
|
||||
RMC.rmc_importDatum = Now()
|
||||
RMC.rmc_kdNr = kdNr
|
||||
RMC.rmc_UID = UID
|
||||
RMC.rmc_landKZ = "IT"
|
||||
RMC.rmc_landBezeichnung = "Italien"
|
||||
RMC.rmc_reDatum = parsedDate
|
||||
RMC.rmc_reNr = invoiceNo
|
||||
RMC.rmc_waehrung = "EUR"
|
||||
RMC.rmc_daId = DS.da_id
|
||||
RMC.rmc_pdfFileName = fi.Name
|
||||
|
||||
'EasyTrip können die Beträge initual nicht ausgelesen werden, dürfen aber nicht 0 sein!
|
||||
RMC.rmc_betragBrutto = 0.01
|
||||
RMC.rmc_betragMWST = 0.01
|
||||
RMC.rmc_betragNetto = 0.01
|
||||
RMC.rmc_euroBrutto = 0.01
|
||||
|
||||
|
||||
If RMC.SAVE() Then
|
||||
|
||||
|
||||
Dim adress As New VERAG_PROG_ALLGEMEIN.cAdressen(RMC.rmc_UID, RMC.rmc_kdNr)
|
||||
If Not adress.hasEntry Then
|
||||
Dim R As DataRow = dt.NewRow
|
||||
R("KundenNr") = RMC.rmc_kdNr
|
||||
R("UID") = RMC.rmc_UID
|
||||
dt.Rows.Add(R)
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
SQL.doSQL("Update [tblRMCImport] SET [rmc_daId]='" & DS.da_id & "' where [rmc_pdfFileName] = '" & DS.da_name & "' and [rmc_importDatum] > DATEADD(DAY,-4,getdate()) ", "FMZOLL")
|
||||
|
||||
End If
|
||||
|
||||
'copy file to lydia
|
||||
|
||||
Dim filepathToLydia = IIf(rmc.PDFRECHNUNGEN <> "", rmc.PDFRECHNUNGEN, "\\share01\F\Juricevic Datensicherung\RMC_RECHNUNGEN\")
|
||||
If Dateiname.ToString.ToLower.Contains("nto") Then
|
||||
frmStartOptions.copyFile(d, filepathToLydia & "NETTO\")
|
||||
Else
|
||||
frmStartOptions.copyFile(d, filepathToLydia & "BRUTTO\")
|
||||
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
Dim filepathToLydia = IIf(rmc.PDFRECHNUNGEN <> "", rmc.PDFRECHNUNGEN, "\\share01\F\Juricevic Datensicherung\RMC_RECHNUNGEN\")
|
||||
If Dateiname.ToString.ToLower.Contains("nto") Then
|
||||
frmStartOptions.copyFile(fileNamePath, filepathToLydia & "NETTO\")
|
||||
Else
|
||||
frmStartOptions.copyFile(fileNamePath, filepathToLydia & "BRUTTO\")
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
frmStartOptions.moveFile_DateBack(d, zielpfad & "Invoice_PDF\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||
frmStartOptions.moveFile_DateBack(fileNamePath, zielpfad & "Invoice_PDF\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||
If fi.Name.ToLower.Contains("pdf") Then addDGVEinarbeitung("PDF", fi.Name)
|
||||
dgvEinarbeitung.Refresh()
|
||||
|
||||
End If
|
||||
|
||||
|
||||
@@ -955,6 +1061,23 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
|
||||
If programName.Contains("UTA") Then uta.importUTALeistungen()
|
||||
|
||||
If programName.Contains("RMC") Then
|
||||
|
||||
|
||||
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
If dt.Rows.Count > 0 Then
|
||||
Dim filepath = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt,,,,, False,)
|
||||
If filepath <> "" Then
|
||||
Dim anhenge As New List(Of String)
|
||||
anhenge.Add(filepath)
|
||||
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("juricevic@verag.ag", "Wölfl-UIDNr (EASYTRIP)", "Im Anhang die zu prüfenden Kunden von WÖLFL EasyTrip: " & vbNewLine & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge)
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -979,7 +1102,7 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
End Sub
|
||||
|
||||
|
||||
Function readRMC(d As String) As String
|
||||
Function readRMC(d As String, typ As String) As String
|
||||
Try
|
||||
|
||||
Dim fi As FileInfo = New FileInfo(d)
|
||||
@@ -989,6 +1112,10 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
Dim fileNr = filetimestamp.Substring(0, IIf(filetimestamp.Length > 8, filetimestamp.Length - 8, filetimestamp.Length))
|
||||
Dim fileType = IIf(fi.Name.ToLower.Contains("nto"), "netto", "brutto")
|
||||
|
||||
If RMCNewFormat Then
|
||||
fileType = IIf(typ.ToLower.Contains("nto"), "netto", "brutto")
|
||||
End If
|
||||
|
||||
Dim dt As New DataTable
|
||||
dt.Columns.Add("KundenNr", GetType(String))
|
||||
dt.Columns.Add("Kunde", GetType(String))
|
||||
@@ -1030,13 +1157,14 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
End Using
|
||||
|
||||
addDGVEinarbeitung("RMC: Detail" & kdNr, readRMC)
|
||||
|
||||
If dt.Rows.Count > 0 Then
|
||||
Dim filepath = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt,,,,, False,)
|
||||
If filepath <> "" Then
|
||||
Dim anhenge As New List(Of String)
|
||||
anhenge.Add(filepath)
|
||||
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("juricevic@verag.ag", "Wölfl-UIDNr", "Im Anhang die zu prüfenden Kunden von WÖLFL für Importdatei: " & fi.Name & vbNewLine & "Pro Importdatei wird ein Email generiert/gesendet" & vbNewLine & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge)
|
||||
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
If dt.Rows.Count > 0 Then
|
||||
Dim filepath = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt,,,,, False,)
|
||||
If filepath <> "" Then
|
||||
Dim anhenge As New List(Of String)
|
||||
anhenge.Add(filepath)
|
||||
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("juricevic@verag.ag", "Wölfl-UIDNr", "Im Anhang die zu prüfenden Kunden von WÖLFL für Importdatei: " & fi.Name & vbNewLine & "Pro Importdatei wird ein Email generiert/gesendet" & vbNewLine & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge)
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
@@ -1142,7 +1270,15 @@ Public Class frmNachrichtenVerarbeitung_MDM_divers
|
||||
End If
|
||||
|
||||
RMC.rmc_euroBrutto = SQL.isleernothing(currentRow(13))
|
||||
RMC.rmc_pdfFileName = "invoice_" & RMC.rmc_kdNr & "_" & filenr & "_" & RMC.rmc_sammelReNr & IIf(fileType = "netto", "_nto_e_verag.pdf", "_bto_e_verag.pdf")
|
||||
|
||||
If RMCNewFormat Then
|
||||
RMC.rmc_pdfFileName = "invoice_" & RMC.rmc_kdNr & "_" & filenr & "_" & RMC.rmc_sammelReNr & "_" & RMC.rmc_landKZ & "_orig" & IIf(fileType = "netto", "_nto", "_bto") & ".pdf"
|
||||
Else
|
||||
RMC.rmc_pdfFileName = "invoice_" & RMC.rmc_kdNr & "_" & filenr & "_" & RMC.rmc_sammelReNr & IIf(fileType = "netto", "_nto_e_verag.pdf", "_bto_e_verag.pdf")
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
If RMC.SAVE() Then
|
||||
If kdNr <> RMC.rmc_kdNr Then
|
||||
|
||||
1817
initATLASAufschubkonten/frmStartOptions.Designer.vb
generated
1817
initATLASAufschubkonten/frmStartOptions.Designer.vb
generated
File diff suppressed because it is too large
Load Diff
@@ -212,6 +212,102 @@
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox12.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox11.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox10.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox9.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox26.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
@@ -622,9 +718,6 @@
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="clmnMRN.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<data name="PictureBox18.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
@@ -721,102 +814,12 @@
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox12.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox11.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox10.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="PictureBox9.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABGdJREFUSEtj
|
||||
YKAyYOFk4Za0knSzzrXOd8x2jJeUlGRgZ2dHV0YFwMjAKKInomlUYJRl32e/wn+Z/0Gf2T4L9eP1rQRV
|
||||
BQWZ2JnQdVAGBNQEFI2KjHLCj4Qfjz0f+zX+Uvz/iKMR9z2XeU7USdNxENYVFmZkYWRE10c2sGqyKgg/
|
||||
FH4s7mLcPxAGWQhjR5+Pnm5Wa+bAxs/Ggq6PbODQ77Aw5mzMO5BF6DjuYtzDoB1BU5ynO9uh6yMZcIpy
|
||||
Sin5KsX5rva9gMWiP3EX4354LPDYb9VkVWpSZmKIrp8kwMrDyifnLBcUtCPoYfSp6G9oln2PPh39InRf
|
||||
6EXVYNUYLjEuCXT9JAMFT4UI5+nO22POxPyMuxD3F83CK/4b/CdoJ2hb8CnwiTIyM5Iff8yczNxSVlJu
|
||||
Nm02i8P2h72EJRKwRRfifsScibnts9Kn0yjfyIZfkZ+bhZOFGd0MkgC7ALuIXppeDXq8xZ6L/Rl+MPyR
|
||||
2xy3iXpperai+qLUyfG4LIw8GvnGY57HVnFDcTk2bjZ0beQBHikeeWV/5QTvpd4nI49FfoRZFnM+5rdd
|
||||
j91KEV0REzY+Ng5GZgJ5nJmDmZtPgU9dwUPBUsZeRoNLgosNXRO7ILsIOKFMdd4adTzqE7Lv/Pf6b9JM
|
||||
1wxB0YALgFIQrxyvmlacVrHfer/prnNccxW9FWXZBdhZGZCKQEENQUOzKrMpaKnxR9zFuOeWMyy9JDwl
|
||||
WJHNxQk4xTilVAJVkkP2hjyLPhP9NvJE5C7PJZ7J4ibikqw8rPDkjMPCazEXYorkveWVWHiISPnMHMxc
|
||||
qsGqKe7z3Q+Cy75LcSBDXkQcjdjuMMEhStJKUo6JlYmVlZdVQD9Lv8F3je9FeKq8EHvZf5N/j26Grg6P
|
||||
LA8PutlYgYKbQqjzVOdtyK6GuvxD7IXYlea15v5ixmISXBJcsm5z3PZC5X7FXYx7Grg9cKpZlZkzuxA7
|
||||
GxMrE4FUAgXIpTuahWDxmPMx011mudiiWQhyzBKzSjMvQQ1BXnQz8QJpG2lPZX/lKMs6y464i3H34y/F
|
||||
g+syJIsfhh8KPw6yLPxQ+GuQWOSRyNc27Tbd0rbSZizcZJQibHxsvBImEsamFaaVrjNdNwXvDH6A7mMY
|
||||
BlnqNtttj5yrXDAosaGbRTKQdZYNsOu2WxZ9MvpD3IW43/GX4hHl5MW4n75rfI/pZ+kXsouwC6HrJQuw
|
||||
cLPwKngqeLvPc18adTLqRfyl+F9IFt73We0zQTdd14BdkIotI25JbgkZBxkHtVC1JLc5brtjz8f+jL0Q
|
||||
+z1oZ9B6syqzaGEdYX5mdmYqt4qgQDVINcVjocfByBORr63brCulbaW10NVQHYibiNsHbQ+6L24q7oAu
|
||||
RxPAxs8mJG4iDmp1USehIAMuLi4GeXl5NlNTU347OzsRe3t7UWRsZ2cnbG5uzicrK8vKxcVFXOmCD0hK
|
||||
SjJ6enoK1NXVqU6aNMlg2rRpxsh48uTJus3NzYqurq68EhISJGd6ADkzAttxL7feAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="clmnMRN.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="clmnMRN.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAgIAAAAEAGAAoyAAAFgAAACgAAACAAAAAAAEAAAEAGAAAAAAAAMgAAMQOAADEDgAAAAAAAAAA
|
||||
|
||||
@@ -831,15 +831,27 @@ Public Class frmStartOptions
|
||||
End If
|
||||
|
||||
|
||||
Case "CREDITSAFE_EVENTS"
|
||||
Case "CREDITSAFE_EVENTS_MONTHLY"
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
|
||||
Dim upateKunden As Boolean = True
|
||||
Dim OnlyCurrentMonthData As Boolean = True
|
||||
Dim setzeInfoImKunden As Boolean = True
|
||||
Dim upateKunden As Boolean = False
|
||||
Dim checkDate As Boolean = True
|
||||
Dim setzeInfoImKunden As Boolean = False
|
||||
Dim sendMail As Boolean = False 'nicht nochmals, oder?
|
||||
|
||||
importCreditsafeEvents(CDate("01." & Now.Month & "." & Now.Year).ToShortDateString, checkDate, upateKunden, setzeInfoImKunden, sendMail, True)
|
||||
closeMe()
|
||||
|
||||
Case "CREDITSAFE_EVENTS_DAILY"
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
|
||||
Dim upateKunden As Boolean = False
|
||||
Dim checkDate 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)
|
||||
importCreditsafeEvents(CDate(Today().AddDays(-1)).ToShortDateString, checkDate, upateKunden, setzeInfoImKunden, sendMail, False)
|
||||
|
||||
|
||||
|
||||
closeMe()
|
||||
@@ -847,8 +859,8 @@ Public Class frmStartOptions
|
||||
Case "CREDITSAFE_UPLOADS"
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
|
||||
UploadCompaniesToCreditsafe()
|
||||
|
||||
Dim sync As Boolean = True
|
||||
UploadCompaniesToCreditsafe(sync)
|
||||
closeMe()
|
||||
|
||||
Case Else
|
||||
@@ -3756,7 +3768,7 @@ Public Class frmStartOptions
|
||||
|
||||
Private Sub LinkLabel20_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel20.LinkClicked
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "VERAG", "UID Prüfung VERAG", "as@verag.ag;kb@verag.ag", "al@verag.ag;d.breimaier@verag.ag",, MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked, txtMsVerz._value)
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "VERAG", "UID Prüfung VERAG", "as@verag.ag;kb@verag.ag", "al@verag.ag;d.breimaier@verag.ag",, MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked)
|
||||
'bool = getUID_Pruefung(MyTextBox1.Text, "VERAG", "UID Prüfung VERAG", "d.breimaier@verag.ag",,, MyTextBox2._value, cbxVermerk.Checked)
|
||||
'Dim bool = getUID_PruefungVERAG(MyTextBox1.Text)
|
||||
showPic(bool, PictureBox12)
|
||||
@@ -4240,12 +4252,12 @@ Public Class frmStartOptions
|
||||
Private Sub LinkLabel32_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel32.LinkClicked
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
' Dim bool = getUID_PruefungIMEX(MyTextBox1.Text)
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "IMEX", "UID Prüfung IMEX", "Viktoria.Leirich@imex-group.at;as@verag.ag;kb@verag.ag", "al@verag.ag;d.breimaier@verag.ag",, MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked, txtMsVerz._value)
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "IMEX", "UID Prüfung IMEX", "Viktoria.Leirich@imex-group.at;as@verag.ag;kb@verag.ag", "al@verag.ag;d.breimaier@verag.ag",, MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked)
|
||||
showPic(bool, PictureBox12)
|
||||
End Sub
|
||||
Private Sub LinkLabel33_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel33.LinkClicked
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "AMBAR", "UID Prüfung AMBAR", "io@ambarlog.de", , "al@verag.ag;as@verag.ag", MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked, txtMsVerz._value)
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "AMBAR", "UID Prüfung AMBAR", "io@ambarlog.de", , "al@verag.ag;as@verag.ag", MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked)
|
||||
showPic(bool, PictureBox12)
|
||||
End Sub
|
||||
|
||||
@@ -4396,7 +4408,7 @@ Public Class frmStartOptions
|
||||
|
||||
Private Sub LinkLabel36_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel36.LinkClicked
|
||||
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "UNISPED", "UID Prüfung UNISPED", "al@verag.ag", "al@verag.ag",, MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked, txtMsVerz._value)
|
||||
Dim bool = getUID_Pruefung(MyTextBox1.Text, "UNISPED", "UID Prüfung UNISPED", "al@verag.ag", "al@verag.ag",, MyTextBox2._value, cbxVermerk.Checked, cbxUseUIDFinanzOnline.Checked)
|
||||
showPic(bool, PictureBox12)
|
||||
End Sub
|
||||
|
||||
@@ -6312,7 +6324,7 @@ weiter:
|
||||
|
||||
'Existing companies in the portfolio will be skipped, and only new unique entries will be added.
|
||||
|
||||
UploadCompaniesToCreditsafe()
|
||||
UploadCompaniesToCreditsafe(cbxCSsync.Checked)
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -6375,70 +6387,153 @@ 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 (Punkt 1 und 2) -> also triggerbasierend)!!!!
|
||||
'ANSATZ, bei der täglichen Prüfung die triggerbasierten Abruf, 1x im Monat bzw. wenn spezisches Unternehmen geprüft wird, dann Punkt 3.
|
||||
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
'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, das verursacht sehr viele APP-Aurfrufe, besser nach der Liste oben!
|
||||
'3. Drill Down to Company-Level Events WHEN NEEDED: For detailed insights into a specific company, use the company-specific endpoint.
|
||||
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Dim creditsaveOld As String = "
|
||||
select ba_KundenNr FROM tblBonitaetsauskunft WHERE ba_Pruefungstool = 'creditsafe API'
|
||||
|
||||
EXCEPT
|
||||
|
||||
SELECT * FROM ( SELECT ba_KundenNr
|
||||
FROM tblBonitaetsauskunft
|
||||
WHERE ba_Pruefungstool = 'creditsafe API' and cast(ba_Datum as Date) >= '" & datum & "'
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT e.KundenNr
|
||||
FROM (
|
||||
SELECT e.KundenNr,
|
||||
e.eventDate,
|
||||
'creditsafe API' AS Source
|
||||
FROM [VERAG].[dbo].[tblCreditsafeEvents] e
|
||||
INNER JOIN [VERAG].[dbo].[tblBonitaetsauskunft] b
|
||||
ON e.bonId = b.ba_id
|
||||
WHERE b.ba_Pruefungstool = 'creditsafe API'
|
||||
AND (e.localEventCode IN ('CL','CR') OR e.globalEventCode IN ('CL','CR'))
|
||||
) e
|
||||
WHERE cast(e.eventDate as Date) >= '" & datum & "'
|
||||
GROUP BY Source, e.KundenNr, cast(e.eventDate as Date)
|
||||
) AS Temp"
|
||||
'Dim creditsaveOld As String = "
|
||||
' select ba_KundenNr FROM tblBonitaetsauskunft WHERE ba_Pruefungstool = 'creditsafe API'
|
||||
|
||||
' EXCEPT
|
||||
|
||||
' SELECT * FROM ( SELECT ba_KundenNr
|
||||
' FROM tblBonitaetsauskunft
|
||||
' WHERE ba_Pruefungstool = 'creditsafe API' and cast(ba_Datum as Date) >= '" & datum & "'
|
||||
|
||||
' UNION ALL
|
||||
|
||||
' SELECT e.KundenNr
|
||||
' FROM (
|
||||
' SELECT e.KundenNr,
|
||||
' e.eventDate,
|
||||
' 'creditsafe API' AS Source
|
||||
' FROM [VERAG].[dbo].[tblCreditsafeEvents] e
|
||||
' INNER JOIN [VERAG].[dbo].[tblBonitaetsauskunft] b
|
||||
' ON e.bonId = b.ba_id
|
||||
' WHERE b.ba_Pruefungstool = 'creditsafe API'
|
||||
' AND (e.localEventCode IN ('CL','CR') OR e.globalEventCode IN ('CL','CR'))
|
||||
' ) e
|
||||
' WHERE cast(e.eventDate as Date) >= '" & datum & "'
|
||||
' GROUP BY Source, e.KundenNr, cast(e.eventDate as Date)
|
||||
' ) AS Temp"
|
||||
|
||||
|
||||
|
||||
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 = 720249"
|
||||
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 VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
creditsave &= " AND ba_Kundennr in (701809, 1096780)"
|
||||
End If
|
||||
|
||||
|
||||
Dim dtCreditsafe As DataTable = (New SQL).loadDgvBySql(creditsave, "FMZOLL")
|
||||
If dtCreditsafe.Rows.Count = 0 Then Exit Sub
|
||||
|
||||
|
||||
Dim cs = New cCreditSafeAPI("creditsafe")
|
||||
|
||||
Dim Mailinfolast1Year 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 datum <> "" AndAlso IsDate(datum) Then
|
||||
companyDummy.lastChecked = CDate(datum)
|
||||
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
|
||||
|
||||
|
||||
Dim dtRechnungen As DataTable = (New SQL).loadDgvBySql("select distinct(RechnungsKundenNr) from Rechnungsausgang where cast(RechnungsDatum as Date) >= ' " & Today().AddYears(-1) & "' ", "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
|
||||
|
||||
@@ -6453,21 +6548,109 @@ weiter:
|
||||
|
||||
If currentBonID > 0 Then company.csBonID = currentBonID
|
||||
Dim dt As New DataTable()
|
||||
cs.getCompanyEvents(company, dt, checkDate, upateKunden, False,, setzeKundenbesonderheiten, sendMail)
|
||||
|
||||
Dim exists As Boolean = dtRechnungen.AsEnumerable().Any(Function(r) r.Field(Of Integer)("RechnungsKundenNr") = KUNDE_ERW.kde_KundenNr)
|
||||
If sendMail Then
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
Mailinfolast1Year = True
|
||||
Else
|
||||
Mailinfolast1Year = exists
|
||||
End If
|
||||
|
||||
End If
|
||||
repeatRequest:
|
||||
Dim APIText As String = ""
|
||||
If exists Then
|
||||
APIText = cs.getCompanyEventsDetails(company, dt, checkDate, upateKunden, False, , setzeKundenbesonderheiten, Mailinfolast1Year, row("Firma"))
|
||||
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",, KUNDE_ERW.kde_KundenNr)
|
||||
API.UPDTAE_ERR("ERROR", APIText, "importCreditsafeEvents")
|
||||
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
|
||||
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()
|
||||
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)
|
||||
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)
|
||||
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
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub UploadCompaniesToCreditsafe()
|
||||
Private Sub UploadCompaniesToCreditsafe(sync As Boolean)
|
||||
|
||||
Dim cs = New cCreditSafeAPI("creditsafe")
|
||||
Dim addCreditsave As Boolean = False
|
||||
If cs.authenticate() = "200" Then addCreditsave = True
|
||||
|
||||
'The Sync method allows you to replace all existing companies in a portfolio with the contents of an uploaded file.
|
||||
'Unlike the Import method, this endpoint overwrites the entire portfolio, deleting all previously allocated companies.
|
||||
|
||||
Dim where As String = ""
|
||||
|
||||
If Not sync Then where = " and kde_CSPortfolioAdded = 0"
|
||||
|
||||
While addCreditsave
|
||||
Dim creditsave As String = "select kde_CreditSaveNo 'Safe Number', '' as 'Local Org No.',left(kde_CreditSaveId,2) as 'Country Code', '' as Reference, '' as 'Free Text', '' as 'Personal Limit' from tblKundenErweitert where isnull(tblKundenErweitert.kde_CreditSaveId,'') <> '' and kde_CreditSaveId <> 'True' and kde_CreditSaveId <>'False' and isnull(kde_CreditSaveNo,'') <> '' and kde_CSPortfolioAdded = 0 group by kde_CreditSaveNo, kde_CreditSaveId"
|
||||
Dim creditsave As String = "select kde_CreditSaveNo 'Safe Number', '' as 'Local Org No.',left(kde_CreditSaveId,2) as 'Country Code', '' as Reference, '' as 'Free Text', '' as 'Personal Limit' from tblKundenErweitert inner join Adressen on Adressen.AdressenNr = kde_KundenNr where isnull(tblKundenErweitert.kde_CreditSaveId,'') <> '' and kde_CreditSaveId <> 'True' and kde_CreditSaveId <>'False' and isnull(kde_CreditSaveNo,'') <> '' " & where & " and Adressen.Auswahl = 'A' group by kde_CreditSaveNo, kde_CreditSaveId"
|
||||
Dim dtCreditsafe_CSV As DataTable = (New SQL).loadDgvBySql(creditsave, "FMZOLL")
|
||||
|
||||
If dtCreditsafe_CSV.Rows.Count = 0 Then
|
||||
@@ -6476,11 +6659,15 @@ weiter:
|
||||
|
||||
Dim Path As String = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genCSVFromDT(dtCreditsafe_CSV,,, "importcsv")
|
||||
If Path <> "" Then
|
||||
If cs.AddCompaniesCSVToPortfolio(Path).Contains("400") Then 'bei Fehler abbrechen!
|
||||
|
||||
Dim resp = cs.AddCompaniesCSVToPortfolio(Path, sync)
|
||||
If resp IsNot Nothing AndAlso resp.Contains("400") Then 'bei Fehler abbrechen!
|
||||
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-PORTFOLIO UPLOAD", "CS")
|
||||
API.UPDTAE_ERR("ERROR", resp, "AddCompaniesCSVToPortfolio")
|
||||
Exit While
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Dim displayView = New DataView(dtCreditsafe_CSV, "", "Safe Number", DataViewRowState.CurrentRows)
|
||||
@@ -6498,7 +6685,7 @@ weiter:
|
||||
addCreditsave = (New SQL).doSQL("Update tblKundenErweitert set kde_CSPortfolioAdded = 1 where kde_CreditSaveNo in (" & CS_ID & ")", "FMZOLL")
|
||||
End If
|
||||
|
||||
|
||||
If sync Then addCreditsave = False
|
||||
|
||||
End While
|
||||
|
||||
|
||||
Reference in New Issue
Block a user