This commit is contained in:
2020-03-12 14:47:52 +01:00
parent a6964d7082
commit 3c0d99a279
44 changed files with 8275 additions and 437 deletions

View File

@@ -4,7 +4,7 @@ Imports System.IO
Public Class cDakosyFunftions
Shared Function send_Data_To_Dakosy_FTP(file, dySt_BezugsNr, dy_Id)
Shared Function send_Data_To_Dakosy_FTP(file, dySt_BezugsNr, dy_Id, FRIMA_DY)
Try
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_DakosyZA_Senden", "AVISO") Then
MsgBox("Sie haben keine Sendeberechtigung.")
@@ -21,7 +21,7 @@ Public Class cDakosyFunftions
Dim DY_PFAD_IN = ""
Dim DY_PFAD_IN_KD = ""
getSFTPLoginData(DY_server, DY_name, DY_pwd, DY_port, DY_PFAD_IN, "", DY_PFAD_IN_KD)
getSFTPLoginData(DY_server, DY_name, DY_pwd, DY_port, DY_PFAD_IN, "", DY_PFAD_IN_KD, FRIMA_DY)
Dim ConnectionInfo As New ConnectionInfo(DY_server, DY_port, DY_name, New PasswordAuthenticationMethod(DY_name, DY_pwd))
Using client = New SftpClient(ConnectionInfo)
@@ -63,7 +63,7 @@ Public Class cDakosyFunftions
End Try
End Function
Shared Function send_Data_To_Dakosy_FTP(file, Optional misc = False)
Shared Function send_Data_To_Dakosy_FTP_file(file, FRIMA_DY, Optional misc = False)
Try
If Not IO.File.Exists(file) Then Return False
Dim F As New System.IO.FileInfo(file)
@@ -76,7 +76,9 @@ Public Class cDakosyFunftions
Dim DY_PFAD_IN_KD = ""
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "" Then VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "VERAG"
getSFTPLoginData(DY_server, DY_name, DY_pwd, DY_port, DY_PFAD_IN, "", DY_PFAD_IN_KD)
If FRIMA_DY = "" Then FRIMA_DY = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
getSFTPLoginData(DY_server, DY_name, DY_pwd, DY_port, DY_PFAD_IN, "", DY_PFAD_IN_KD, FRIMA_DY)
Dim ConnectionInfo As New ConnectionInfo(DY_server, DY_port, DY_name, New PasswordAuthenticationMethod(DY_name, DY_pwd))
Using client = New SftpClient(ConnectionInfo)
@@ -110,31 +112,31 @@ Public Class cDakosyFunftions
End Function
Shared Sub getSFTPLoginData(ByRef DY_server, ByRef DY_name, ByRef DY_pwd, ByRef DY_port, ByRef DY_PFAD_IN, ByRef DY_PFAD_OUT, ByRef DY_PFAD_IN_KD)
Shared Sub getSFTPLoginData(ByRef DY_server, ByRef DY_name, ByRef DY_pwd, ByRef DY_port, ByRef DY_PFAD_IN, ByRef DY_PFAD_OUT, ByRef DY_PFAD_IN_KD, FIRMA_DY)
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
DY_server = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_SERVER", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_name = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_NAME", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_pwd = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_PASSWORD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_port = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_PORT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_server = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_SERVER", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_name = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_NAME", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_pwd = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_PASSWORD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_port = cDY_Paramter.GET_PARAM_ByName("FTP_TEST_PORT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_PFAD_IN = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_PFAD_OUT = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_OUT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_PFAD_IN = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_PFAD_OUT = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_OUT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
If DY_PFAD_IN = "" Then DY_PFAD_IN = "in/test/gebox/"
If DY_PFAD_OUT = "" Then DY_PFAD_OUT = "out/test/"
DY_PFAD_IN_KD = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN_KD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_PFAD_IN_KD = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN_KD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
Else
DY_server = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_SERVER", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_name = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_NAME", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_pwd = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_PASSWORD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_port = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_PORT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_server = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_SERVER", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_name = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_NAME", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_pwd = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_PASSWORD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_port = cDY_Paramter.GET_PARAM_ByName("FTP_PROD_PORT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_PFAD_IN = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_PFAD_OUT = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_OUT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_PFAD_IN = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
DY_PFAD_OUT = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_OUT", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
If DY_PFAD_IN = "" Then DY_PFAD_IN = "in/prod/gebox/"
If DY_PFAD_OUT = "" Then DY_PFAD_OUT = "out/prod/"
DY_PFAD_IN_KD = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN_KD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
DY_PFAD_IN_KD = cDY_Paramter.GET_PARAM_ByName("DY_PFAD_IN_KD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, FIRMA_DY)
End If
End Sub
@@ -188,7 +190,7 @@ Public Class cDakosyFunftions
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
Dim saveFile = ""
If DAKOSY_Worker.cDakosyFunftions.generateVERAGKdData(dt, getDefaultFolder_SEND, saveFile, Dakosy_Mandant) Then
If cDakosyFunftions.send_Data_To_Dakosy_FTP(saveFile, True) Then
If cDakosyFunftions.send_Data_To_Dakosy_FTP_file(saveFile, VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA, True) Then
For Each ROW As DataRow In dt.Rows
updateKdDakosyExportDate(ROW("KundenNr"))
Next
@@ -207,16 +209,16 @@ Public Class cDakosyFunftions
' Dakosy_Mandant = "VERG"
End Select
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "IMEX" Then
MsgBox("Übertrag derzeit nicht möglich!")
Return False
End If
'If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "IMEX" Then
' MsgBox("Übertrag derzeit nicht möglich!")
' Return False
'End If
Dim dt = DAKOSY_Worker.cDakosyFunftions.getKDDataByKdNr(KdNr)
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
Dim saveFile = ""
If DAKOSY_Worker.cDakosyFunftions.generateVERAGKdData(dt, getDefaultFolder_SEND, saveFile, Dakosy_Mandant) Then
If cDakosyFunftions.send_Data_To_Dakosy_FTP(saveFile, True) Then
If cDakosyFunftions.send_Data_To_Dakosy_FTP_file(saveFile, VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA, True) Then
updateKdDakosyExportDate(KdNr)
Return True
End If
@@ -227,7 +229,7 @@ Public Class cDakosyFunftions
Shared Function getDefaultFolder_SEND() As String
Try
getDefaultFolder_SEND = "\\192.168.0.91\Datenarchiv\DAKOSY\" & If(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "TESTSYSTEM", "ECHTSYSTEM") & "\Ausgang_Kundendaten\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\" ' Path.GetTempPath
getDefaultFolder_SEND = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getRootDir(False) & "DAKOSY\" & If(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "TESTSYSTEM", "ECHTSYSTEM") & "\Ausgang_Kundendaten\" & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\" ' Path.GetTempPath
If Not IO.Directory.Exists(getDefaultFolder_SEND) Then
IO.Directory.CreateDirectory(getDefaultFolder_SEND)
End If
@@ -246,6 +248,11 @@ Public Class cDakosyFunftions
End Function
Shared Function generateVERAGKdData(dt As DataTable, path As String, ByRef saveFile As String, Optional Dakosy_Mandant As String = "VERG") As Boolean
Return generateVERAGKdData_V2(dt, path, saveFile, Dakosy_Mandant)
'Alle mit V2
'---------------------
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "IMEX" Then Return generateVERAGKdData_V2(dt, path, saveFile, Dakosy_Mandant)
Select Case Dakosy_Mandant
Case "UNAT" : Return generateVERAGKdData_V2(dt, path, saveFile, Dakosy_Mandant)
Case Else : Return generateVERAGKdData_V1(dt, path, saveFile, Dakosy_Mandant)