Einarbeitung UTA und Bugfix RMC
This commit is contained in:
@@ -63,12 +63,20 @@
|
|||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
<dependentAssembly>
|
<dependentAssembly>
|
||||||
<assemblyIdentity name="Renci.SshNet" publicKeyToken="1cee9f8bde3db106" culture="neutral" />
|
<assemblyIdentity name="Renci.SshNet" publicKeyToken="1cee9f8bde3db106" culture="neutral" />
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2014.4.6.0" newVersion="2014.4.6.0" />
|
<bindingRedirect oldVersion="0.0.0.0-2024.0.0.0" newVersion="2024.0.0.0" />
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
<dependentAssembly>
|
<dependentAssembly>
|
||||||
<assemblyIdentity name="BouncyCastle.Crypto" publicKeyToken="0e99375e54769942" culture="neutral" />
|
<assemblyIdentity name="BouncyCastle.Crypto" publicKeyToken="0e99375e54769942" culture="neutral" />
|
||||||
<bindingRedirect oldVersion="0.0.0.0-1.8.2.0" newVersion="1.8.2.0" />
|
<bindingRedirect oldVersion="0.0.0.0-1.8.2.0" newVersion="1.8.2.0" />
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
|
<dependentAssembly>
|
||||||
|
<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||||
|
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
|
||||||
|
</dependentAssembly>
|
||||||
|
<dependentAssembly>
|
||||||
|
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||||
|
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||||
|
</dependentAssembly>
|
||||||
</assemblyBinding>
|
</assemblyBinding>
|
||||||
</runtime>
|
</runtime>
|
||||||
</configuration>
|
</configuration>
|
||||||
|
|||||||
@@ -231,6 +231,9 @@
|
|||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="PresentationCore" />
|
<Reference Include="PresentationCore" />
|
||||||
<Reference Include="PresentationFramework" />
|
<Reference Include="PresentationFramework" />
|
||||||
|
<Reference Include="Renci.SshNet, Version=2024.0.0.0, Culture=neutral, PublicKeyToken=1cee9f8bde3db106, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\SSH.NET.2024.0.0\lib\net462\Renci.SshNet.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
||||||
|
|||||||
@@ -140,7 +140,7 @@
|
|||||||
|
|
||||||
<assemblyIdentity name="Renci.SshNet" publicKeyToken="1cee9f8bde3db106" culture="neutral" />
|
<assemblyIdentity name="Renci.SshNet" publicKeyToken="1cee9f8bde3db106" culture="neutral" />
|
||||||
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2014.4.6.0" newVersion="2014.4.6.0" />
|
<bindingRedirect oldVersion="0.0.0.0-2024.0.0.0" newVersion="2024.0.0.0" />
|
||||||
|
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
|
|
||||||
@@ -152,6 +152,22 @@
|
|||||||
|
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
|
|
||||||
|
<dependentAssembly>
|
||||||
|
|
||||||
|
<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||||
|
|
||||||
|
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
|
||||||
|
|
||||||
|
</dependentAssembly>
|
||||||
|
|
||||||
|
<dependentAssembly>
|
||||||
|
|
||||||
|
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||||
|
|
||||||
|
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||||
|
|
||||||
|
</dependentAssembly>
|
||||||
|
|
||||||
</assemblyBinding>
|
</assemblyBinding>
|
||||||
|
|
||||||
</runtime>
|
</runtime>
|
||||||
|
|||||||
@@ -75,19 +75,19 @@ Public Class frmAPIEinstellungen
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
For Each r As DataGridViewRow In .Rows
|
For Each r As DataGridViewRow In .Rows
|
||||||
If r.Cells("api_url").Value Is DBNull.Value Then
|
If r.Cells("api_url").Value Is DBNull.Value Then
|
||||||
r.DefaultCellStyle.ForeColor = Color.Gray
|
r.DefaultCellStyle.ForeColor = Color.Gray
|
||||||
ElseIf CBool(r.Cells("api_active").Value) = False Then
|
ElseIf CBool(r.Cells("api_active").Value) = False Then
|
||||||
r.DefaultCellStyle.ForeColor = Color.Gray
|
r.DefaultCellStyle.ForeColor = Color.Gray
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If r.Cells("api_url").Value IsNot DBNull.Value AndAlso CheckAddress(r.Cells("api_url").Value) Then
|
If r.Cells("api_url").Value IsNot DBNull.Value AndAlso CheckAddress(r.Cells("api_url").Value, r.Cells("api_user").Value, r.Cells("api_password").Value) Then
|
||||||
DirectCast(r.Cells("isRunning"), DataGridViewImageCell).Value = My.Resources.ok
|
DirectCast(r.Cells("isRunning"), DataGridViewImageCell).Value = My.Resources.ok
|
||||||
Else
|
Else
|
||||||
DirectCast(r.Cells("isRunning"), DataGridViewImageCell).Value = My.Resources.del
|
DirectCast(r.Cells("isRunning"), DataGridViewImageCell).Value = My.Resources.del
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
End With
|
End With
|
||||||
@@ -144,15 +144,42 @@ Public Class frmAPIEinstellungen
|
|||||||
If DataGridView.SelectedRows.Count = 0 Then Exit Sub
|
If DataGridView.SelectedRows.Count = 0 Then Exit Sub
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Function CheckAddress(url As String) As Boolean
|
Private Function CheckAddress(url As String, user As String, pw As String) As Boolean
|
||||||
Try
|
|
||||||
If url = "" Then Return False
|
If url = "" Then Return False
|
||||||
Dim request As WebRequest = WebRequest.Create(url)
|
|
||||||
Dim response As WebResponse = request.GetResponse()
|
If Not url.Contains("ftp") Then
|
||||||
Catch ex As Exception
|
|
||||||
Return False
|
Try
|
||||||
End Try
|
Dim request As WebRequest
|
||||||
Return True
|
request = WebRequest.Create(url)
|
||||||
|
Dim response As WebResponse = request.GetResponse()
|
||||||
|
Catch ex As Exception
|
||||||
|
Return False
|
||||||
|
End Try
|
||||||
|
Return True
|
||||||
|
Else
|
||||||
|
|
||||||
|
If url.StartsWith("ftp") Then
|
||||||
|
Dim request As FtpWebRequest
|
||||||
|
request = WebRequest.Create(url)
|
||||||
|
request.Credentials = New NetworkCredential(user, pw)
|
||||||
|
request.Method = WebRequestMethods.Ftp.GetFileSize
|
||||||
|
|
||||||
|
Try
|
||||||
|
Dim response As FtpWebResponse = request.GetResponse()
|
||||||
|
Catch ex As WebException
|
||||||
|
Dim response As FtpWebResponse = ex.Response
|
||||||
|
If FtpStatusCode.ActionNotTakenFileUnavailable = response.StatusCode Then
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
End Try
|
||||||
|
End If
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub txtSuche_KeyDown(sender As Object, e As KeyEventArgs) Handles txtSuche.KeyDown
|
Private Sub txtSuche_KeyDown(sender As Object, e As KeyEventArgs) Handles txtSuche.KeyDown
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
<package id="Hardcodet.NotifyIcon.Wpf" version="1.0.5" targetFramework="net40-Client" requireReinstallation="True" />
|
<package id="Hardcodet.NotifyIcon.Wpf" version="1.0.5" targetFramework="net40-Client" requireReinstallation="True" />
|
||||||
<package id="Microsoft.Bcl.AsyncInterfaces" version="5.0.0" targetFramework="net47" />
|
<package id="Microsoft.Bcl.AsyncInterfaces" version="5.0.0" targetFramework="net47" />
|
||||||
<package id="Microsoft.CSharp" version="4.7.0" targetFramework="net47" />
|
<package id="Microsoft.CSharp" version="4.7.0" targetFramework="net47" />
|
||||||
|
<package id="SSH.NET" version="2024.0.0" targetFramework="net47" />
|
||||||
<package id="System.Buffers" version="4.5.1" targetFramework="net47" />
|
<package id="System.Buffers" version="4.5.1" targetFramework="net47" />
|
||||||
<package id="System.IO.FileSystem.Primitives" version="4.0.1" targetFramework="net47" />
|
<package id="System.IO.FileSystem.Primitives" version="4.0.1" targetFramework="net47" />
|
||||||
<package id="System.IO.Packaging" version="4.0.0" targetFramework="net47" />
|
<package id="System.IO.Packaging" version="4.0.0" targetFramework="net47" />
|
||||||
|
|||||||
@@ -133,6 +133,7 @@
|
|||||||
<Compile Include="cATEZWorker.vb" />
|
<Compile Include="cATEZWorker.vb" />
|
||||||
<Compile Include="cOREGONWorker.vb" />
|
<Compile Include="cOREGONWorker.vb" />
|
||||||
<Compile Include="cMAVIWorker.vb" />
|
<Compile Include="cMAVIWorker.vb" />
|
||||||
|
<Compile Include="cUTA.vb" />
|
||||||
<Compile Include="frmRMCNachrichtenVerarbeitung.Designer.vb">
|
<Compile Include="frmRMCNachrichtenVerarbeitung.Designer.vb">
|
||||||
<DependentUpon>frmRMCNachrichtenVerarbeitung.vb</DependentUpon>
|
<DependentUpon>frmRMCNachrichtenVerarbeitung.vb</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
|
|||||||
1267
initATLASAufschubkonten/cUTA.vb
Normal file
1267
initATLASAufschubkonten/cUTA.vb
Normal file
File diff suppressed because it is too large
Load Diff
@@ -4,7 +4,10 @@ Imports System.Runtime.Remoting
|
|||||||
Imports System.Text
|
Imports System.Text
|
||||||
Imports System.Text.RegularExpressions
|
Imports System.Text.RegularExpressions
|
||||||
Imports System.Xml
|
Imports System.Xml
|
||||||
|
Imports DocumentFormat.OpenXml.Bibliography
|
||||||
Imports DocumentFormat.OpenXml.Office2010.Excel
|
Imports DocumentFormat.OpenXml.Office2010.Excel
|
||||||
|
Imports Renci.SshNet
|
||||||
|
Imports Renci.SshNet.Sftp
|
||||||
Imports VERAG_PROG_ALLGEMEIN
|
Imports VERAG_PROG_ALLGEMEIN
|
||||||
|
|
||||||
Public Class frmRMCNachrichtenVerarbeitung
|
Public Class frmRMCNachrichtenVerarbeitung
|
||||||
@@ -13,6 +16,7 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||||
Dim allowClose = False
|
Dim allowClose = False
|
||||||
Dim rmc As New cRMC
|
Dim rmc As New cRMC
|
||||||
|
Dim uta As New cUTA
|
||||||
Dim programName As String
|
Dim programName As String
|
||||||
Dim Dateiname = ""
|
Dim Dateiname = ""
|
||||||
|
|
||||||
@@ -37,19 +41,33 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
|
|
||||||
Private Sub frmDYNachrichtenVerarbeitung_Load(sender As Object, e As EventArgs) Handles Me.Load
|
Private Sub frmDYNachrichtenVerarbeitung_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||||
|
|
||||||
rmc.initImportPfade(programName)
|
ListBox3.Items.Clear()
|
||||||
|
Me.Refresh()
|
||||||
|
|
||||||
|
|
||||||
lblFTP.Text = programName
|
lblFTP.Text = programName
|
||||||
For Each d In System.IO.Directory.GetFiles(rmc.VERARBEITUNG_PFAD)
|
|
||||||
ListBox3.Items.Add(frmStartOptions.cut_file(d))
|
If programName.Contains("RMC") Then
|
||||||
Me.Refresh()
|
rmc.initImportPfade(programName)
|
||||||
Next
|
For Each d In System.IO.Directory.GetFiles(rmc.VERARBEITUNG_PFAD)
|
||||||
|
ListBox3.Items.Add(frmStartOptions.cut_file(d))
|
||||||
|
Me.Refresh()
|
||||||
|
Next
|
||||||
|
ElseIf programName.Contains("UTA") Then
|
||||||
|
uta.initImportPfade(programName)
|
||||||
|
For Each d In System.IO.Directory.GetFiles(uta.VERARBEITUNG_PFAD)
|
||||||
|
ListBox3.Items.Add(frmStartOptions.cut_file(d))
|
||||||
|
Me.Refresh()
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
||||||
Me.Enabled = False
|
Me.Enabled = False
|
||||||
Try
|
Try
|
||||||
Label9.Visible = True
|
Label9.Visible = True
|
||||||
Dim cnt = getNachrichtenDatenFromRMCServices()
|
Dim cnt = getNachrichtenDaten()
|
||||||
Label9.Text = cnt & " Datensätze empfangen."
|
Label9.Text = cnt & " Datensätze empfangen."
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
@@ -77,11 +95,15 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
Function getNachrichtenDatenFromRMCServices() As Integer
|
Function getNachrichtenDaten() As Integer
|
||||||
Dim cnt = 0
|
Dim cnt = 0
|
||||||
Try
|
Try
|
||||||
|
If programName.Contains("RMC") Then
|
||||||
|
DownloadFtpDirectory(rmc.API_STRING & "/", New NetworkCredential(rmc.API.Rows(0).Item("api_user").ToString, rmc.API.Rows(0).Item("api_password").ToString), "", cnt, False)
|
||||||
|
ElseIf programName.Contains("UTA") Then
|
||||||
|
DownloadSFtpDirectory(uta.API_STRING, New NetworkCredential(uta.API.Rows(0).Item("api_user").ToString, uta.API.Rows(0).Item("api_password").ToString), "", cnt, False, "/TRX/" & Now.Year)
|
||||||
|
End If
|
||||||
|
|
||||||
DownloadFtpDirectory(rmc.API_STRING & "/", New NetworkCredential(rmc.API.Rows(0).Item("api_user").ToString, rmc.API.Rows(0).Item("api_password").ToString), "", cnt, False)
|
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
@@ -96,6 +118,13 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
listRequest.Method = WebRequestMethods.Ftp.ListDirectoryDetails
|
listRequest.Method = WebRequestMethods.Ftp.ListDirectoryDetails
|
||||||
listRequest.Credentials = credentials
|
listRequest.Credentials = credentials
|
||||||
|
|
||||||
|
Dim verarbeitungspfad = ""
|
||||||
|
|
||||||
|
If programName.Contains("RMC") Then
|
||||||
|
verarbeitungspfad = rmc.VERARBEITUNG_PFAD
|
||||||
|
ElseIf programName.Contains("UTA") Then
|
||||||
|
verarbeitungspfad = uta.VERARBEITUNG_PFAD
|
||||||
|
End If
|
||||||
|
|
||||||
Dim lines As List(Of String) = New List(Of String)
|
Dim lines As List(Of String) = New List(Of String)
|
||||||
|
|
||||||
@@ -124,52 +153,101 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
downloadRequest.Method = WebRequestMethods.Ftp.DownloadFile
|
downloadRequest.Method = WebRequestMethods.Ftp.DownloadFile
|
||||||
downloadRequest.Credentials = credentials
|
downloadRequest.Credentials = credentials
|
||||||
|
|
||||||
Dim fileDateTmp As Date = ServerDateFile(credentials, fileUrl)
|
' Dim fileDateTmp As Date = ServerDateFile(credentials, fileUrl)
|
||||||
|
|
||||||
name = name.Replace(".csv", "_RGDAT_" & fileDateTmp.ToShortDateString & ".csv")
|
'name = name.Replace(".csv", "_RGDAT_" & Now.ToShortDateString & ".csv")
|
||||||
|
|
||||||
Dim destFilenameTMP = rmc.VERARBEITUNG_PFAD & "." & If(IO.File.Exists(rmc.VERARBEITUNG_PFAD & "." & name), name.Replace(".csv", "_") & Now.ToString("yyMMdd_HHmmss.fff") & ".csv", name)
|
Dim destFilenameTMP = verarbeitungspfad
|
||||||
|
If IO.File.Exists(verarbeitungspfad & name) Then
|
||||||
|
Dim fi As FileInfo = New FileInfo(verarbeitungspfad & name)
|
||||||
|
destFilenameTMP &= name.Replace(fi.Extension, "_") & Now.ToString("yyMMdd_HHmmss.fff") & fi.Extension
|
||||||
|
Else
|
||||||
|
destFilenameTMP &= name
|
||||||
|
|
||||||
Using downloadResponse As FtpWebResponse = downloadRequest.GetResponse(),
|
End If
|
||||||
sourceStream As Stream = downloadResponse.GetResponseStream(),
|
|
||||||
targetStream As Stream = File.OpenWrite(destFilenameTMP)
|
Try
|
||||||
Dim buffer As Byte() = New Byte(10240 - 1) {}
|
|
||||||
Dim read As Integer
|
|
||||||
Do
|
Using downloadResponse As FtpWebResponse = downloadRequest.GetResponse(),
|
||||||
read = sourceStream.Read(buffer, 0, buffer.Length)
|
sourceStream As Stream = downloadResponse.GetResponseStream(),
|
||||||
If read > 0 Then
|
targetStream As Stream = File.OpenWrite(destFilenameTMP)
|
||||||
targetStream.Write(buffer, 0, read)
|
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 = verarbeitungspfad & If(IO.File.Exists(verarbeitungspfad & name), name.Replace(".csv", "_") & Now.ToString("yyMMdd_HHmmss.fff") & ".csv", name)
|
||||||
|
|
||||||
|
'IO.File.Move(destFilenameTMP, destFilename) 'Datei umbenennen
|
||||||
|
|
||||||
|
|
||||||
|
Dim fi As FileInfo = New FileInfo(destFilenameTMP)
|
||||||
|
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 If
|
||||||
Loop While read > 0
|
|
||||||
|
|
||||||
sourceStream.Dispose()
|
End Using
|
||||||
targetStream.Dispose()
|
Catch ex As Exception
|
||||||
downloadResponse.Dispose()
|
|
||||||
|
|
||||||
Dim destFilename = rmc.VERARBEITUNG_PFAD & If(IO.File.Exists(rmc.VERARBEITUNG_PFAD & name), name.Replace(".csv", "_") & Now.ToString("yyMMdd_HHmmss.fff") & ".csv", name)
|
End Try
|
||||||
|
|
||||||
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
|
||||||
'End If
|
'End If
|
||||||
Next
|
Next
|
||||||
End Sub
|
End Sub
|
||||||
|
Function DownloadSFtpDirectory(url As String, credentials As NetworkCredential, localPath As String, ByRef cnt As Integer, deleteAfterDownload As Boolean, Path As String) As Integer
|
||||||
|
|
||||||
|
|
||||||
|
Dim ConnectionInfo As New ConnectionInfo(url, "22", credentials.UserName, New PasswordAuthenticationMethod(credentials.UserName, credentials.Password))
|
||||||
|
Using client = New SftpClient(ConnectionInfo)
|
||||||
|
client.Connect()
|
||||||
|
|
||||||
|
Dim files = client.ListDirectory(Path)
|
||||||
|
|
||||||
|
Dim targetFile As SftpFile
|
||||||
|
|
||||||
|
For Each file As SftpFile In files
|
||||||
|
If file.IsRegularFile AndAlso file.Name.ToLower.Contains(".uta") AndAlso file.Length > 0 Then
|
||||||
|
|
||||||
|
Dim remoteFileName = "/" & file.Name
|
||||||
|
Dim filePath = uta.VERARBEITUNG_PFAD & If(IO.File.Exists(uta.VERARBEITUNG_PFAD & file.Name), Name.Replace(".UTA", "_") & Now.ToString("yyMMdd_HHmmss.fff") & ".UTA", file.Name)
|
||||||
|
|
||||||
|
Dim downloadedFile As Stream = IO.File.Create(filePath)
|
||||||
|
|
||||||
|
|
||||||
|
client.DownloadFile(Path + remoteFileName, downloadedFile)
|
||||||
|
|
||||||
|
Dim fi As FileInfo = New FileInfo(filePath)
|
||||||
|
ListBox3.Items.Add(frmStartOptions.cut_file(fi.Name)) 'zur Liste hinzufügen
|
||||||
|
cnt += 1
|
||||||
|
|
||||||
|
'TODO: nach erfolgreichen verschieben, von FTP löschen!
|
||||||
|
|
||||||
|
downloadedFile.Close()
|
||||||
|
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
End Using
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -186,7 +264,8 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
|
|
||||||
Return ServerDate
|
Return ServerDate
|
||||||
Catch ex As WebException
|
Catch ex As WebException
|
||||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "RMC GET DATE FILE: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & programName & " GET DATE FILE: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
Return Now
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
Return ServerDate
|
Return ServerDate
|
||||||
@@ -202,72 +281,100 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Dim verarbeitungspfad, zielpfad
|
||||||
|
If programName.Contains("RMC") Then
|
||||||
|
verarbeitungspfad = rmc.VERARBEITUNG_PFAD
|
||||||
|
zielpfad = rmc.ZIEL_PFAD
|
||||||
|
ElseIf programName.Contains("UTA") Then
|
||||||
|
verarbeitungspfad = uta.VERARBEITUNG_PFAD
|
||||||
|
zielpfad = uta.ZIEL_PFAD
|
||||||
|
End If
|
||||||
|
|
||||||
For i = 1 To 2
|
For i = 1 To 2
|
||||||
|
|
||||||
For Each d In System.IO.Directory.GetFiles(rmc.VERARBEITUNG_PFAD)
|
For Each d In System.IO.Directory.GetFiles(verarbeitungspfad)
|
||||||
Try
|
Try
|
||||||
Dateiname = d
|
Dateiname = d
|
||||||
'cWorker_NCTS.Dateiname = d
|
|
||||||
If IO.File.Exists(d) Then
|
If IO.File.Exists(d) Then
|
||||||
Dim found = False
|
Dim found = False
|
||||||
Dim fi As FileInfo = New FileInfo(d)
|
Dim fi As FileInfo = New FileInfo(d)
|
||||||
|
|
||||||
Dim alreadyMoved = False
|
Dim alreadyMoved = False
|
||||||
|
|
||||||
Select Case i
|
If programName.Contains("RMC") Then
|
||||||
Case 1
|
|
||||||
'------------------------------------------
|
|
||||||
'------------------ CSV ------------------
|
|
||||||
'------------------------------------------
|
|
||||||
If fi.Extension.ToLower = ".csv" Then
|
|
||||||
|
|
||||||
If Not found Then
|
Select Case i
|
||||||
If readRMC(d) <> "" Then found = True
|
Case 1
|
||||||
|
'------------------------------------------
|
||||||
|
'------------------ CSV ------------------
|
||||||
|
'------------------------------------------
|
||||||
|
If fi.Extension.ToLower = ".csv" Then
|
||||||
|
|
||||||
|
If Not found Then
|
||||||
|
If readRMC(d) <> "" Then found = True
|
||||||
|
End If
|
||||||
|
If found Then cntDatenEingelesen += 1
|
||||||
End If
|
End If
|
||||||
If found Then cntDatenEingelesen += 1
|
Case 2
|
||||||
End If
|
|
||||||
Case 2
|
|
||||||
|
|
||||||
'------------------------------------------
|
'------------------------------------------
|
||||||
'------------------ PDF ------------------
|
'------------------ PDF ------------------
|
||||||
'------------------------------------------
|
'------------------------------------------
|
||||||
If fi.Extension.ToLower = ".pdf" Then
|
If fi.Extension.ToLower = ".pdf" Then
|
||||||
|
|
||||||
found = False
|
found = False
|
||||||
|
|
||||||
If Not IO.Directory.Exists(rmc.ZIEL_PFAD & "Invoice_PDF\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(rmc.ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
If Not IO.Directory.Exists(zielpfad & "Invoice_PDF\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(zielpfad & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||||
|
|
||||||
'File in Datenarchiv sichern:
|
'File in Datenarchiv sichern:
|
||||||
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "RMC", Now.Year, Now.ToString("yyyyMMdd"), frmStartOptions.getFileName(d))
|
If fi.Name.ToString.StartsWith("invoice_") Then 'aktuell nur die RMC-Dateien! (später, wenn CSV vollständig, dann alle PDS importieren! d.breimaier: 2024-06-05
|
||||||
|
|
||||||
|
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "MDM_DATEN", "RMC", Now.Year, Now.ToString("yyyyMMdd"), frmStartOptions.getFileName(d))
|
||||||
|
|
||||||
|
DS.uploadDataToDATENSERVER(d,,,,,, True)
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
frmStartOptions.moveFile_DateBack(d, zielpfad & "Invoice_PDF\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||||
|
If fi.Name.ToLower.Contains("pdf") Then addDGVEinarbeitung("PDF", fi.Name)
|
||||||
|
|
||||||
|
dgvEinarbeitung.Refresh()
|
||||||
|
|
||||||
DS.uploadDataToDATENSERVER(d,,,,,, 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")
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
frmStartOptions.moveFile_DateBack(d, rmc.ZIEL_PFAD & "Invoice_PDF\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
End Select
|
||||||
|
|
||||||
addDGVEinarbeitung("PDF", DS.da_name)
|
ElseIf programName.Contains("UTA") Then
|
||||||
|
|
||||||
dgvEinarbeitung.Refresh()
|
'------------------------------------------
|
||||||
|
'------------------ .UTA ------------------
|
||||||
|
'------------------------------------------
|
||||||
|
|
||||||
'Eintrag
|
|
||||||
|
If fi.Extension.ToLower = ".uta" Then
|
||||||
|
|
||||||
|
If Not found Then
|
||||||
|
uta.clearimporttable()
|
||||||
|
If readUTA(d) <> "" Then found = True
|
||||||
End If
|
End If
|
||||||
|
If found Then cntDatenEingelesen += 1
|
||||||
|
End If
|
||||||
|
|
||||||
End Select
|
End If
|
||||||
|
|
||||||
If True Then
|
If True Then
|
||||||
If Not alreadyMoved Then
|
If Not alreadyMoved Then
|
||||||
If found Then
|
If found Then
|
||||||
If Not IO.Directory.Exists(rmc.ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(rmc.ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
If Not IO.Directory.Exists(zielpfad & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(zielpfad & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||||
frmStartOptions.moveFile_DateBack(d, rmc.ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
frmStartOptions.moveFile_DateBack(d, zielpfad & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Me.Refresh()
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
Me.Refresh()
|
||||||
|
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
End Try
|
End Try
|
||||||
@@ -354,7 +461,7 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
If filepath <> "" Then
|
If filepath <> "" Then
|
||||||
Dim anhenge As New List(Of String)
|
Dim anhenge As New List(Of String)
|
||||||
anhenge.Add(filepath)
|
anhenge.Add(filepath)
|
||||||
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("juricevic@verag.ag", "Wölfl-UIDNr", "Im Anhang die zu prüfenden Kunden von WÖLFL " & vbNewLine & vbNewLine & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge)
|
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("d.breimaier@verag.ag", "Wölfl-UIDNr", "Im Anhang die zu prüfenden Kunden von WÖLFL " & vbNewLine & vbNewLine & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag", anhenge)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
@@ -366,6 +473,30 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
Function readUTA(d As String) As String
|
||||||
|
Try
|
||||||
|
|
||||||
|
Dim fi As FileInfo = New FileInfo(d)
|
||||||
|
|
||||||
|
Dim objFileRead As StreamReader = New StreamReader(d)
|
||||||
|
|
||||||
|
|
||||||
|
If uta.readAndSaveUTA(objFileRead, fi) Then
|
||||||
|
addDGVEinarbeitung(fi.Name, "OK")
|
||||||
|
Else
|
||||||
|
addDGVEinarbeitung(fi.Name, "Fehler")
|
||||||
|
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)
|
||||||
|
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
Private Sub dgvEinarbeitung_SelectionChanged(sender As Object, e As EventArgs) Handles dgvEinarbeitung.SelectionChanged
|
Private Sub dgvEinarbeitung_SelectionChanged(sender As Object, e As EventArgs) Handles dgvEinarbeitung.SelectionChanged
|
||||||
dgvEinarbeitung.ClearSelection()
|
dgvEinarbeitung.ClearSelection()
|
||||||
|
|
||||||
@@ -426,5 +557,6 @@ Public Class frmRMCNachrichtenVerarbeitung
|
|||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
|||||||
879
initATLASAufschubkonten/frmStartOptions.Designer.vb
generated
879
initATLASAufschubkonten/frmStartOptions.Designer.vb
generated
File diff suppressed because it is too large
Load Diff
@@ -4373,4 +4373,12 @@ Public Class frmStartOptions
|
|||||||
f.ShowDialog()
|
f.ShowDialog()
|
||||||
Me.Visible = True
|
Me.Visible = True
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Sub LinkLabel53_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel53.LinkClicked
|
||||||
|
Me.Visible = False
|
||||||
|
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = cbxTestsystem.Checked
|
||||||
|
Dim f As New frmRMCNachrichtenVerarbeitung("UTA")
|
||||||
|
f.ShowDialog()
|
||||||
|
Me.Visible = True
|
||||||
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
Reference in New Issue
Block a user