Files
ADMIN/initATLASAufschubkonten/frmMDMNachrichtenVerarbeitung.vb
2020-05-31 22:26:21 +02:00

692 lines
30 KiB
VB.net

Imports System.IO
Imports System.Globalization
Imports System.Xml
Imports Renci.SshNet
Imports System.Net
Imports System.Text
Public Class frmMDMNachrichtenVerarbeitung
Dim cntDatenEingelesen As Integer = 0
Dim dsNichtErkannt As Integer = 0
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim allowClose = False
' Dim DY_PFAD = "C:\Users\DEVELOPER1\Desktop\test\TEST\"
Dim TELOTEC_PFAD = "" '"C:\Users\DEVELOPER1\Desktop\test\TEST\Nachrichtendaten_Einarbeitung\"
Dim VERARBEITUNGS_PFAD = "" '"C:\Users\DEVELOPER1\Desktop\test\TEST\Nachrichtendaten_Einarbeitung\"
Dim ZIEL_PFAD = "" '"C:\Users\DEVELOPER1\Desktop\test\TEST\Nachrichtendaten_Ablage\"
Dim ERROR_PFAD = "" '"C:\Users\DEVELOPER1\Desktop\test\TEST\Nachrichtendaten_ERROR\"
' Dim BOX_VERSION = "8.8"
Dim Dateiname = ""
Sub New()
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Sub New(allowClose) 'autostart
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
Me.allowClose = allowClose
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Sub initPfade()
Me.TELOTEC_PFAD = MDM_Worker.cMDM_Paramter.GET_PARAM_ByName("PLOSE_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
Me.VERARBEITUNGS_PFAD = MDM_Worker.cMDM_Paramter.GET_PARAM_ByName("VERARBEITUNGS_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
'VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getRootDir() & "DAKOSY\TESTSYSTEM\Nachrichtendaten_Einarbeitung\"
Me.ZIEL_PFAD = MDM_Worker.cMDM_Paramter.GET_PARAM_ByName("ZIEL_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
'VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getRootDir() & "DAKOSY\TESTSYSTEM\Nachrichtendaten_Ablage\"
Me.ERROR_PFAD = MDM_Worker.cMDM_Paramter.GET_PARAM_ByName("ERROR_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
'VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getRootDir() & "DAKOSY\TESTSYSTEM\Nachrichtendaten_ERROR\"
If Not IO.Directory.Exists(VERARBEITUNGS_PFAD) Then IO.Directory.CreateDirectory(VERARBEITUNGS_PFAD)
If Not IO.Directory.Exists(ZIEL_PFAD) Then IO.Directory.CreateDirectory(ZIEL_PFAD)
If Not IO.Directory.Exists(ERROR_PFAD) Then IO.Directory.CreateDirectory(ERROR_PFAD)
'Me.BOX_VERSION = MDM_Worker.cDY_Paramter.GET_PARAM_ByName("BOX_VERSION", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
End Sub
Private Sub frmDYNachrichtenVerarbeitung_Load(sender As Object, e As EventArgs) Handles Me.Load
initPfade()
For Each d In System.IO.Directory.GetFiles(VERARBEITUNGS_PFAD)
ListBox3.Items.Add(frmStartOptions.cut_file(d))
Me.Refresh()
Next
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Me.Enabled = False
Try
Label9.Visible = True
Dim cnt = getNachrichtenDatenFromMDMServices()
Label9.Text = cnt & " Datensätze empfangen."
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Me.Enabled = True
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.Enabled = False
Try
Label5.Visible = True
DatenEinlesen()
If dsNichtErkannt > 0 Then
Label6.Text = dsNichtErkannt & " Datensätze nicht " & vbNewLine & "erkannt."
Label6.Visible = True
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Me.Enabled = True
Label5.Text = cntDatenEingelesen & " Datensätze verarbeitet."
End Sub
Function getNachrichtenDatenFromMDMServices() As Integer
Dim cnt = 0
Try
Dim MDM_server = ""
Dim MDM_name = ""
Dim MDM_pwd = ""
Dim MDM_port = ""
Dim MDM_PFAD_out = ""
MDM_Worker.cMDMFunctions.getSFTPLoginData(MDM_server, MDM_name, MDM_pwd, MDM_port, "", MDM_PFAD_out)
DownloadFtpDirectory("ftp://ftp.plose.it" & "/"c & MDM_PFAD_out, New NetworkCredential(MDM_name, MDM_pwd), "", cnt, True)
'Dim request = WebRequest.Create("ftp://ftp.plose.it" & "/"c & MDM_PFAD_out)
''request.Method = WebRequestMethods.Ftp.DownloadFile
''request.Credentials = New NetworkCredential(MDM_name, MDM_pwd)
'request.Method = WebRequestMethods.Ftp.ListDirectory
'request.Credentials = New NetworkCredential(MDM_name, MDM_pwd)
'Dim response As FtpWebResponse = DirectCast(request.GetResponse(), FtpWebResponse)
'Dim responseStream As Stream = response.GetResponseStream
'Using reader As New StreamReader(responseStream)
' Do While reader.Peek <> -1
' Dim fName = reader.ReadLine
' MsgBox(fName)
' Loop
'End Using
' Dim dest = Path.Combine(MDM_PFAD_out, fileName)
' Using resp = request.GetResponse(), strmResp = resp.GetResponseStream,
'strmFile = New FileStream(dest, FileMode.Create)
' Dim buf(1023) As Byte
' Do
' Dim read = strmResp.Read(buf, 0, buf.Length)
' If read = 0 Then Exit Do 'end of Transmission
' strmFile.Write(buf, 0, read)
' Loop
' End Using
' Return False
'MsgBox(MDM_server & "/" & MDM_PFAD_out)
'Dim Dirlist As New List(Of String) 'I prefer List() instead of an array
'Dim request As New FtpWebRequest("http://ftp.plose.it") ' DirectCast(WebRequest.Create("http://ftp.plose.it"), FtpWebRequest) ' DirectCast(WebRequest.Create("ftp.plose.it"), FtpWebRequest)
'request.Method = WebRequestMethods.Ftp.ListDirectory
'request.Credentials = New NetworkCredential(MDM_name, MDM_pwd)
'Dim response As FtpWebResponse = DirectCast(request.GetResponse(), FtpWebResponse)
'Dim responseStream As Stream = response.GetResponseStream
'Using reader As New StreamReader(responseStream)
' Do While reader.Peek <> -1
' Dim fName = reader.ReadLine
' MsgBox(fName)
' Loop
'End Using
'response.Close()
'Try
' ' Setup session options
' Dim sessionOptions As New SessionOptions
' With sessionOptions
' .Protocol = Protocol.Ftp
' .HostName = "example.com"
' .UserName = "user"
' .Password = "mypassword"
' End With
' Using session As New Session
' ' Will continuously report progress of synchronization
' AddHandler session.FileTransferred, AddressOf FileTransferred
' ' Connect
' session.Open(sessionOptions)
' ' Synchronize files
' Dim synchronizationResult As SynchronizationResult
' synchronizationResult =
' session.SynchronizeDirectories(
' SynchronizationMode.Local, "d:\www", "/home/martin/public_html", False)
' ' Throw on any error
' synchronizationResult.Check()
' End Using
' Return 0
'Catch e As Exception
' Console.WriteLine("Error: {0}", e)
' Return 1
'End Try
'MsgBox(MDM_server & " - " & MDM_name & " - " & MDM_pwd & " - " & MDM_port)
'Dim ConnectionInfo As New ConnectionInfo(MDM_server, MDM_port, MDM_name, New PasswordAuthenticationMethod(MDM_name, MDM_pwd))
'Using client = New SftpClient(ConnectionInfo)
' client.Connect()
' For Each f In client.ListDirectory(MDM_PFAD_out)
' ' MsgBox(f.Name)
' If Not f.Name.StartsWith(".") Then
' 'Temp. DownloadPfad
' Dim destFilenameTMP = VERARBEITUNGS_PFAD + "." & If(IO.File.Exists(VERARBEITUNGS_PFAD & "." & f.Name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & f.Name
' 'Datei herunterladen
' Dim downloadFileStream As Stream = File.OpenWrite(destFilenameTMP)
' client.DownloadFile(f.FullName, downloadFileStream)
' If IO.File.Exists(destFilenameTMP) Then client.DeleteFile(f.FullName) 'Datei nach erfolgreichem Herunterladen vom Server löschen
' downloadFileStream.Dispose()
' 'Gültiger Filename
' Dim destFilename = VERARBEITUNGS_PFAD & If(IO.File.Exists(VERARBEITUNGS_PFAD & f.Name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & f.Name
' IO.File.Move(destFilenameTMP, destFilename) 'Datei umbenennen
' Dim fi As FileInfo = New FileInfo(destFilename)
' ListBox3.Items.Add(frmStartOptions.cut_file(fi.Name)) 'zur Liste hinzufügen
' cnt += 1
' End If
' Next
' client.Disconnect()
'End Using
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Return cnt
End Function
Sub DownloadFtpDirectory(url As String, credentials As NetworkCredential, localPath As String, ByRef cnt As Integer, deleteAfterDownload As Boolean)
Dim listRequest As FtpWebRequest = WebRequest.Create(url)
listRequest.Method = WebRequestMethods.Ftp.ListDirectoryDetails
listRequest.Credentials = credentials
Dim lines As List(Of String) = New List(Of String)
Using listResponse As FtpWebResponse = listRequest.GetResponse(),
listStream As Stream = listResponse.GetResponseStream(),
listReader As StreamReader = New StreamReader(listStream)
While Not listReader.EndOfStream
lines.Add(listReader.ReadLine())
End While
End Using
For Each line As String In lines
Dim tokens As String() =
line.Split(New Char() {" "}, 9, StringSplitOptions.RemoveEmptyEntries)
Dim name As String = tokens(8)
Dim permissions As String = tokens(0)
Dim localFilePath As String = Path.Combine(localPath, name)
Dim fileUrl As String = url + name
If permissions(0) = "d" Then
If Not Directory.Exists(localFilePath) Then
Directory.CreateDirectory(localFilePath)
End If
DownloadFtpDirectory(fileUrl + "/", credentials, localFilePath, cnt, deleteAfterDownload)
Else
If True Then
' Temp.DownloadPfad
Dim destFilenameTMP = VERARBEITUNGS_PFAD + "." & If(IO.File.Exists(VERARBEITUNGS_PFAD & "." & name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & name
Dim downloadRequest As FtpWebRequest = WebRequest.Create(fileUrl)
downloadRequest.Method = WebRequestMethods.Ftp.DownloadFile
downloadRequest.Credentials = credentials
Using downloadResponse As FtpWebResponse = downloadRequest.GetResponse(),
sourceStream As Stream = downloadResponse.GetResponseStream(),
targetStream As Stream = File.OpenWrite(destFilenameTMP)
Dim buffer As Byte() = New Byte(10240 - 1) {}
Dim read As Integer
Do
read = sourceStream.Read(buffer, 0, buffer.Length)
If read > 0 Then
targetStream.Write(buffer, 0, read)
End If
Loop While read > 0
sourceStream.Dispose()
targetStream.Dispose()
downloadResponse.Dispose()
Dim destFilename = VERARBEITUNGS_PFAD & If(IO.File.Exists(VERARBEITUNGS_PFAD & name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & name
IO.File.Move(destFilenameTMP, destFilename) 'Datei umbenennen
Dim fi As FileInfo = New FileInfo(destFilename)
ListBox3.Items.Add(frmStartOptions.cut_file(fi.Name)) 'zur Liste hinzufügen
cnt += 1
'Datei nach download löschen
If deleteAfterDownload Then
Dim ftpReq As FtpWebRequest = WebRequest.Create(fileUrl)
ftpReq.Method = WebRequestMethods.Ftp.DeleteFile
ftpReq.Credentials = credentials
Dim ftpResp As FtpWebResponse = ftpReq.GetResponse
ftpResp.Close()
End If
End Using
End If
End If
Next
End Sub
Function getNachrichtenDatenFromMDMServices_ALTERNATIV() As Integer
Dim cnt = 0
Try
For Each f In IO.Directory.GetFiles(TELOTEC_PFAD)
Dim FI As New FileInfo(f)
If Not FI.Name.StartsWith(".") Then
'Temp. DownloadPfad
Dim destFilenameTMP = VERARBEITUNGS_PFAD + "." & If(IO.File.Exists(VERARBEITUNGS_PFAD & "." & FI.Name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & FI.Name
'Datei herunterladen
IO.File.Copy(f, destFilenameTMP)
If IO.File.Exists(destFilenameTMP) Then IO.File.Delete(f) 'Datei nach erfolgreichem Herunterladen vom Server löschen
'Gültiger Filename
Dim destFilename = VERARBEITUNGS_PFAD & If(IO.File.Exists(VERARBEITUNGS_PFAD & FI.Name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & FI.Name
IO.File.Move(destFilenameTMP, destFilename) 'Datei umbenennen
Dim fi_dest As FileInfo = New FileInfo(destFilename)
ListBox3.Items.Add(frmStartOptions.cut_file(fi_dest.Name)) 'zur Liste hinzufügen
cnt += 1
lblDatenCnt.Text = cnt
Me.Refresh()
End If
Next
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Return cnt
'Dim cnt = 0
'Try
' Dim DY_server = ""
' Dim DY_name = ""
' Dim DY_pwd = ""
' Dim DY_port = ""
' Dim DY_PFAD_out = ""
' DAKOSY_Worker.cDakosyFunftions.getSFTPLoginData(DY_server, DY_name, DY_pwd, DY_port, "", DY_PFAD_out)
' Dim ConnectionInfo As New ConnectionInfo(DY_server, DY_port, DY_name, New PasswordAuthenticationMethod(DY_name, DY_pwd))
' Using client = New SftpClient(ConnectionInfo)
' client.Connect()
' For Each f In client.ListDirectory(DY_PFAD_out)
' ' MsgBox(f.Name)
' If Not f.Name.StartsWith(".") Then
' 'Temp. DownloadPfad
' Dim destFilenameTMP = VERARBEITUNGS_PFAD + "." & If(IO.File.Exists(VERARBEITUNGS_PFAD & "." & f.Name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & f.Name
' 'Datei herunterladen
' Dim downloadFileStream As Stream = File.OpenWrite(destFilenameTMP)
' client.DownloadFile(f.FullName, downloadFileStream)
' If IO.File.Exists(destFilenameTMP) Then client.DeleteFile(f.FullName) 'Datei nach erfolgreichem Herunterladen vom Server löschen
' downloadFileStream.Dispose()
' 'Gültiger Filename
' Dim destFilename = VERARBEITUNGS_PFAD & If(IO.File.Exists(VERARBEITUNGS_PFAD & f.Name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & f.Name
' IO.File.Move(destFilenameTMP, destFilename) 'Datei umbenennen
' Dim fi As FileInfo = New FileInfo(destFilename)
' ListBox3.Items.Add(frmStartOptions.cut_file(fi.Name)) 'zur Liste hinzufügen
' cnt += 1
' End If
' Next
' client.Disconnect()
' End Using
'Catch ex As Exception
' VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
'End Try
'Return cnt
End Function
' Dim toEncodeAsBytes() As Byte = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode)
' string returnValue = System.Convert.ToBase64String(toEncodeAsBytes)
Public Function stripNonValidXMLCharacters(ByVal textIn As String) As String
Dim textOut As System.Text.StringBuilder = New System.Text.StringBuilder()
Dim current As Char
If textIn Is Nothing OrElse textIn = String.Empty Then Return String.Empty
For i As Integer = 0 To textIn.Length - 1
current = textIn(i)
If (current = "9" OrElse current = "10" OrElse current = "13") OrElse ((current >= "32") AndAlso (current <= "55295")) OrElse ((current >= "57344") AndAlso (current <= "65533")) OrElse ((current >= "65536") AndAlso (current <= "1114111")) Then
textOut.Append(current)
End If
Next
Return textOut.ToString()
End Function
Public Function SanitizeXmlString(ByVal xml As String) As String
If xml Is Nothing Then
Throw New ArgumentNullException("xml")
End If
Dim buffer As System.Text.StringBuilder = New System.Text.StringBuilder(xml.Length)
For Each c As Char In xml
If IsLegalXmlChar(Asc(c)) Then
buffer.Append(c)
End If
Next
Return buffer.ToString()
End Function
Public Function IsLegalXmlChar(ByVal character As Integer) As Boolean
Return (character = 9 OrElse character = 10 OrElse character = 13 OrElse (character >= 32 AndAlso character <= 55295) OrElse (character >= 57344 AndAlso character <= 65533) OrElse (character >= 65536 AndAlso character <= 1114111))
End Function
Sub DatenEinlesen()
VERAG_PROG_ALLGEMEIN.cAllgemein.ERR_OP_GLOBAL = VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL
If ListBox3.Items.Count = 0 Then
Label6.Text = "Keine Daten zum Einlesen vorhanden."
Label6.Visible = True
Exit Sub
End If
For Each d In System.IO.Directory.GetFiles(VERARBEITUNGS_PFAD)
Try
Dateiname = d
cWorker_NCTS.Dateiname = d
If IO.File.Exists(d) Then
Dim found = False
Dim fi As FileInfo = New FileInfo(d)
' EDIFACT
' If fi.Extension = ".edi" Then
Dim alreadyMoved = False
If fi.Extension.ToLower = ".xml" Then
Dim xmlWriterSettings As XmlWriterSettings = New XmlWriterSettings With {.Encoding = System.Text.Encoding.UTF8, .CheckCharacters = True}
Dim doc As New XmlDocument()
Dim XML_Code = System.IO.File.ReadAllText(d, System.Text.UTF8Encoding.Default)
doc.LoadXml(SanitizeXmlString(XML_Code))
Dim VERSION As String = ""
'------------------------------------------------------------------------------------------------------------------------------
' eZOLL
'------------------------------------------------------------------------------------------------------------------------------
'------------------------------------------
'------------------ Anmeldung ------------------
'------------------------------------------
'TC: Versandbestätigung
'If Not found And cGetMsgType.isTC_Anmeldung(doc) Then
' If readTC_Anmeldung(doc, d) <> "" Then found = True
' ' If bezugsNr <> "" Then addDGVEinarbeitung("NCTS: Versandbestätigung", bezugsNr) : found = True
'End If
ElseIf fi.Extension.ToLower = ".csv" Then
'------------------------------------------------------------------------------------------------------------------------------
' PLOSE
'------------------------------------------------------------------------------------------------------------------------------
'------------------------------------------
'------------------ DETAIL ------------------
'------------------------------------------
'TC: Versandbestätigung
If Not found And cGetMsgType.isPLOSE_Detail(d) Then
If readPLOSE_Detail(d) <> "" Then found = True
' If bezugsNr <> "" Then addDGVEinarbeitung("NCTS: Versandbestätigung", bezugsNr) : found = True
End If
End If
If True Then
If Not alreadyMoved Then
If found Then
If Not IO.Directory.Exists(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
frmStartOptions.moveFile(d, ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
Else
frmStartOptions.moveFile(d, ERROR_PFAD)
End If
End If
End If
Me.Refresh()
If found Then cntDatenEingelesen += 1 Else dsNichtErkannt += 1
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Next
End Sub
Function getString(doc As XmlDocument) As Boolean
If doc.HasChildNodes Then
' If doc.GetElementsByTagName("DakosyMessageInternal").Count > 0 Then
Dim sw = New StringWriter()
Dim xw = New XmlTextWriter(sw)
doc.WriteTo(xw)
Dim XmlString = sw.ToString()
MsgBox(XmlString)
End If
Return False
End Function
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
Me.Close()
End Sub
Private Sub btn_Click(sender As Object, e As EventArgs) Handles btn.Click
Me.Close()
End Sub
Sub addDGVEinarbeitung(art, BezugsNr)
dgvEinarbeitung.Rows.Add(art, BezugsNr)
Try
dgvEinarbeitung.FirstDisplayedScrollingRowIndex = dgvEinarbeitung.RowCount - 1
Catch ex As Exception
End Try
End Sub
Function readPLOSE_Detail(d As String) As String
Try
readPLOSE_Detail = ""
Dim KdnR = ""
Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser(d, Encoding.UTF8)
MyReader.TextFieldType = FileIO.FieldType.Delimited
MyReader.SetDelimiters(";")
Dim currentRow As String()
Dim cnt = 0
If True Then
While Not MyReader.EndOfData
Try
currentRow = MyReader.ReadFields()
If currentRow.Length > 24 AndAlso currentRow(12) <> "839160" Then 'KDNR <> VERAG --> Die Kosten bleiben uns
Dim PLOSE As New MDM_Worker.cPLOSE
PLOSE.plose_Datensatztyp = SQL.isleernothing(currentRow(0))
PLOSE.plose_KodexMautTankstelle = SQL.isleernothing(currentRow(1))
PLOSE.plose_BeschreibungMautTankstelle = SQL.isleernothing(currentRow(2))
PLOSE.plose_KodexEinfahrt = SQL.isleernothing(currentRow(3))
PLOSE.plose_BeschreibungEinfahrt = SQL.isleernothing(currentRow(4))
PLOSE.plose_KodexAusfahrt = SQL.isleernothing(currentRow(5))
PLOSE.plose_BeschreibungAusfahrt = SQL.isleernothing(currentRow(6))
PLOSE.plose_Kartenkodex = SQL.isleernothing(currentRow(7))
PLOSE.plose_Kontonummer = SQL.isleernothing(currentRow(8))
PLOSE.plose_NummerKarteGeraet = SQL.isleernothing(currentRow(9))
PLOSE.plose_Kennzeichen = SQL.isleernothing(currentRow(10))
PLOSE.plose_InterneNrFahrzeug = SQL.isleernothing(currentRow(11))
PLOSE.plose_POLSEKundennummer = SQL.isleernothing(currentRow(12))
PLOSE.plose_Firmenname = SQL.isleernothing(currentRow(13))
PLOSE.plose_DatumTransaktion = SQL.isleernothingDateFormatstring(currentRow(14))
PLOSE.plose_Produktbeschreibung = SQL.isleernothing(currentRow(15))
PLOSE.plose_Menge = SQL.isNullNothingDbl(currentRow(16))
PLOSE.plose_Preis = SQL.isNullNothingDbl(currentRow(17))
PLOSE.Einheitsrabatt = SQL.isleernothing(currentRow(18))
PLOSE.plose_NettobetragTransaktion = SQL.isNullNothingDbl(currentRow(19))
PLOSE.plose_MWSTBetrag = SQL.isNullNothingDbl(currentRow(20))
PLOSE.plose_BruttobetragTransaktion = SQL.isNullNothingDbl(currentRow(21))
PLOSE.plose_NettobetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(22))
PLOSE.plose_MWSTBetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(23))
PLOSE.plose_BruttobetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(24))
PLOSE.plose_WaehrungLandDiesntleistung = SQL.isleernothing(currentRow(25))
PLOSE.plose_WaehrungAbbuchung = SQL.isleernothing(currentRow(26))
PLOSE.plose_DokumentNrQuittungUhrzeit = SQL.isleernothing(currentRow(27))
PLOSE.plose_ArtTransaktion = SQL.isleernothing(currentRow(28))
PLOSE.plose_Fahrzeugklasse = SQL.isleernothing(currentRow(29))
PLOSE.plose_KlassenidentifikationEURO = SQL.isleernothing(currentRow(30))
PLOSE.plose_ProduktbeschreibungShort = SQL.isleernothing(currentRow(31))
PLOSE.plose_DokumentNrQuittungUhrzeit = SQL.isleernothing(currentRow(32))
PLOSE.plose_Geraetetyp = SQL.isleernothing(currentRow(33))
PLOSE.plose_ProduktCode = SQL.isleernothing(currentRow(34))
PLOSE.plose_ReferenzenBuchungMaut = SQL.isleernothing(currentRow(35))
''''''''''''
If PLOSE.SAVE() Then
End If
End If
cnt += 1
'For Each currentField In currentRow
'Next
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
End While
'Label30.Text = (cnt + 1) & " / " & LineCount
'Label31.Visible = True
readPLOSE_Detail = "Zeilen: " & cnt
Else
MsgBox("FEHLER beim Löschen der vorhandenen OP-Liste.")
End If
End Using
Try
' System.IO.File.Delete(p)
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
addDGVEinarbeitung("PLOSE: Detail" & KdnR, readPLOSE_Detail)
' End Using
'End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
MsgBox(ex.StackTrace & ex.Message)
readPLOSE_Detail = ""
End Try
End Function
Private Sub dgvEinarbeitung_SelectionChanged(sender As Object, e As EventArgs) Handles dgvEinarbeitung.SelectionChanged
dgvEinarbeitung.ClearSelection()
End Sub
Private Sub frmTCNachrichtenVerarbeitung_Shown(sender As Object, e As EventArgs) Handles Me.Shown
If allowClose Then
Me.Refresh()
Button2.PerformClick()
Button1.PerformClick()
System.Threading.Thread.Sleep(2000)
Me.Close()
End If
End Sub
Private Sub pnl_Paint(sender As Object, e As PaintEventArgs) Handles pnl.Paint
End Sub
End Class