Files
SDL/SDL/ZOLLSYSTEM/frmImportFromAVISOAnhaenge.vb
2025-09-05 08:54:23 +02:00

161 lines
5.6 KiB
VB.net
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Imports System.IO
Imports DocumentFormat.OpenXml.Drawing.Charts
Imports VERAG_PROG_ALLGEMEIN
Public Class frmImportFromAVISOAnhaenge
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim AvisoId As Integer = -1
Dim SendungID As Integer = -1
Public LIST_FILES As New List(Of String)
Sub New(avisoId, sendungId)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
Me.AvisoId = avisoId
Me.SendungID = sendungId
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Sub New(aviso As VERAG_PROG_ALLGEMEIN.cAviso, sendung As cSendungen)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
If aviso IsNot Nothing Then
Me.AvisoId = aviso.AvisoID
End If
If sendung IsNot Nothing Then
Me.SendungID = sendung.tblSnd_SendungID
End If
Me.SendungID = SendungID
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Private Sub frmImportFromAVISOAnhaenge_Load(sender As Object, e As EventArgs) Handles Me.Load
initAnhang()
End Sub
Sub initAnhang()
If AvisoId <= 0 Then Exit Sub
If SendungID <= 0 Then Exit Sub
Dim hSQL As String = " SELECT [anh_id],[anh_Name],anh_Datum,[anh_docId],CASE WHEN (anh_SendungsId is null OR anh_SendungsId <=0) AND isnull(aa_name,'')='' THEN '***' ELSE [aa_name] END as [anh_Art],[anh_Typ]
FROM [tblAvisoAnhaenge]
left join tblAvisoAnhangsArten on aa_bezeichnung = anh_Art
WHERE anh_AvisoId=" & AvisoId & " AND (anh_SendungsId is null OR anh_SendungsId <=0 OR anh_SendungsId=" & SendungID & ")
ORDER BY anh_SendungsId desc, case when aa_sort = NULL THEN 15 else aa_sort END, [anh_Reihenfolge],[anh_id]"
dgvAnhang.DataSource = SQL.loadDgvBySql(hSQL, "AVISO")
If dgvAnhang.RowCount = 0 Then dgvAnhang.Columns.Clear() : Exit Sub
With dgvAnhang
.RowTemplate.Height = 35
'.RowTemplate.MinimumHeight = 30
.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
.Columns("anh_id").Visible = False 'VermerkID nicht anzeigen
.Columns("anh_docId").Visible = False 'AvisoID nicht anzeigen
.Columns("anh_Name").MinimumWidth = 150
.Columns("anh_Name").HeaderText = "Name"
.Columns("anh_Name").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("anh_Datum").Width = 120
.Columns("anh_Datum").HeaderText = "Datum"
.Columns("anh_Art").MinimumWidth = 100
.Columns("anh_Art").HeaderText = "Art"
.Columns("anh_Art").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("anh_Typ").Width = 150
.Columns("anh_Typ").HeaderText = "Typ"
.Columns("anh_Typ").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.ClearSelection()
End With
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
If dgvAnhang.SelectedRows.Count = 0 Then Exit Sub
LIST_FILES.Clear()
For Each r In dgvAnhang.SelectedRows
Dim docId As Integer = CInt(r.cells("anh_docId").value)
If docId > 0 Then
Dim tempFile As String = VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(docId)
If tempFile <> "" Then
LIST_FILES.Add(tempFile)
End If
End If
Next
If LIST_FILES.Count > 0 Then
Me.DialogResult = DialogResult.OK
Me.Close()
Else
Me.DialogResult = DialogResult.None
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim fd As New OpenFileDialog With {
.Filter = "Excel Dateien|*.xls;*.xlsx",
.Multiselect = True,
.Title = "Bitte eine oder mehrere Excel-Dateien auswählen"
}
Dim result As DialogResult = fd.ShowDialog()
If result <> DialogResult.OK Then
Me.Cursor = Cursors.Default
MsgBox("Keine Datei ausgewählt!")
Me.DialogResult = DialogResult.None
Exit Sub
Else
For Each filePath As String In fd.FileNames
If Not filePath.ToLower.EndsWith(".xls") AndAlso Not filePath.ToLower.EndsWith(".xlsx") Then
' Ungültige Datei überspringen oder abbrechen
Continue For
End If
LIST_FILES.Add(filePath)
Next
If LIST_FILES.Count > 0 Then
Me.DialogResult = DialogResult.OK
Me.Close()
Else
Me.DialogResult = DialogResult.None
End If
End If
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim data As IDataObject = Clipboard.GetDataObject
For Each s As String In My.Computer.Clipboard.GetFileDropList() 'GetData(DataFormats.) 'data.GetData(DataFormats.FileDrop) 'DataFormats.FileDrop)
If System.IO.File.Exists(s) Then
LIST_FILES.Add(s)
End If
Next
If LIST_FILES.Count > 0 Then
Me.DialogResult = DialogResult.OK
Me.Close()
Else
Me.DialogResult = DialogResult.None
End If
End Sub
End Class