Files
VERAGAddin/VERAGAddIn/frmAvisoFormularAnfügen.vb

212 lines
5.9 KiB
VB.net

Imports System.Collections
Imports System.Data
Imports System.Drawing
Imports System.Windows.Forms
Imports System.Windows.Forms.VisualStyles.VisualStyleElement.Button
Imports SDL
Imports VERAG_PROG_ALLGEMEIN
Public Class frmAvisoFormularAnfuegen
Public KdNr As Integer = -1
Public vollmachtId As Integer = -1
Dim vollmachtartId As Integer = -1
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Public SendungsId = -1
Public Bezeichnung = ""
Public PDF_MAIL = ""
Public ATT As List(Of String)
Public hasAnhaenge As Boolean = False
Sub New()
InitializeComponent()
End Sub
Sub New(Bezeichnung)
InitializeComponent()
Me.Bezeichnung = Bezeichnung
End Sub
Private Sub frmAvisoFormularAnfuegen_Load(sender As Object, e As EventArgs) Handles MyBase.Load
KdSearchBox.initKdBox(Me)
initAttachment()
If hasAnhaenge Then pbAnhaenge.Image = My.Resources.pdf
End Sub
Private Sub KdSearchBox_TextChanged(sender As Object, e As EventArgs) Handles KdSearchBox.TextChanged
If KdSearchBox.KdNr_value > 0 AndAlso KdSearchBox.KdNr IsNot Nothing Then
KdNr = KdSearchBox.KdNr_value
Dim AD = KdSearchBox.KdData_ADRESSEN
Dim KD = KdSearchBox.KdData_KUNDE
End If
End Sub
Sub init()
If KdNr > 0 Then
initVollmachtarten(KdNr)
End If
End Sub
Sub initVollmachtarten(kdNr As Integer)
cbVMTypen.fillWithSQL("SELECT DISTINCT(art.kdvma_Id), art.kdvma_Bezeichnung FROM [tblKundenVollmachtenArt] as art LEFT JOIN (select * from [tblKundenVollmachten] where [kdvm_KundenNr]='" & kdNr & "' ) as abf on art.[kdvma_Id]=abf.[kdvm_kdvmaId] WHERE art.kdvma_visible=1 AND art.kdvma_Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "'", False, "FMZOLL", True)
End Sub
Sub initUsrCntrlKundenvollmachten(vollmachtartId)
UsrCntlKundenZollVollmachten1.init(KdNr, vollmachtartId)
End Sub
Private Sub KdSearchBox_PropertyChanged(sender As Object, e As System.ComponentModel.PropertyChangedEventArgs) Handles KdSearchBox.PropertyChanged
If KdSearchBox.KdNr_value > 0 AndAlso KdSearchBox.KdData_KUNDE IsNot Nothing AndAlso KdSearchBox.KdData_ADRESSEN IsNot Nothing Then
KdNr = KdSearchBox.KdNr
Dim AD = KdSearchBox.KdData_ADRESSEN
Dim KD = KdSearchBox.KdData_KUNDE
init()
End If
End Sub
Private Sub cbVMTypen_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbVMTypen.SelectedValueChanged
If cbVMTypen._value <> "" Then
vollmachtartId = cbVMTypen._value
initUsrCntrlKundenvollmachten(vollmachtartId)
End If
End Sub
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
If Not checkMandatoryFields() Then
DialogResult = DialogResult.None
Exit Sub
End If
If Not hasAnhaenge Then
If Not vbYes = MsgBox("Diese Email besitzt keinen Anhang!" & vbCrLf & "Soll die Email denoch gespeichert werden?", vbYesNoCancel) Then
Close()
DialogResult = DialogResult.None
Exit Sub
End If
End If
Dim i = dgvAnhaenge.SelectedCells.Item(0).RowIndex
If i > 0 Then
AddAttachmentOnLastIndex(ATT, i)
End If
UsrCntlKundenZollVollmachten1.btnNeu_Click(sender, e)
vollmachtId = UsrCntlKundenZollVollmachten1.vmId
Close()
End Sub
Private Sub AddAttachmentOnLastIndex(ByRef a As List(Of String), tmpIndex As Integer)
If (a IsNot Nothing) AndAlso (a.Count > 1) Then
Dim list As New List(Of String)
list = a
Dim selectedItem As Object = list.Item(tmpIndex)
list.Add(selectedItem)
list.RemoveAt(tmpIndex) 'immer die letzte PDF-DatenarchivID wird als PDF-Verknüpfung angezeigt!!!!!
a = list
End If
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
Close()
End Sub
Sub initAttachment()
dgvAnhaenge.Rows.Clear()
If ATT.Count = 0 Then
hasAnhaenge = False
PDF_MAIL = "ONLYMAIL_DATENSERVER"
Else
hasAnhaenge = True
PDF_MAIL = "PDF_DATENSERVER"
For Each a In ATT
Dim display = a
If a.Contains("\") Then
Dim sp = a.Split("\")
display = sp(sp.Count - 1)
End If
dgvAnhaenge.Rows.Add({display})
Next
End If
If dgvAnhaenge.Rows.Count >= 2 Then
dgvAnhaenge.Visible = True
lblMultiAttachements.Visible = True
Me.Size = New Size(537, 720)
dgvAnhaenge.Size = New Size(514, 86)
Else
dgvAnhaenge.Visible = False
lblMultiAttachements.Visible = False
dgvAnhaenge.Size = New Size(514, 36)
Me.Size = New Size(537, 670)
End If
dgvAnhaenge.ClearSelection()
End Sub
Private Function checkMandatoryFields() As Boolean
Dim valid = False
If KdSearchBox.KdNr_value = -1 Then
lblWarning.Text = "Kunde auswählen!"
Return valid
End If
If cbVMTypen._value = "" Then
lblWarning.Text = "Vollmachttyp auswählen"
Return valid
End If
If UsrCntlKundenZollVollmachten1.txtGueltigVon.Text = "" Then
lblWarning.Text = "Gültig von-Datum hinterlegen!"
Return valid
End If
lblWarning.Text = ""
valid = True
Return valid
End Function
Private Sub frmAvisoFormularAnfuegen_Shown(sender As Object, e As EventArgs) Handles Me.Shown
KdSearchBox.Focus()
Label1.Visible = cAllgemein.TESTSYSTEM
End Sub
End Class