Files
SDL/SDL/mdm/Besuchsberichte/frmBesuchsberichte.vb
2024-10-02 08:59:41 +00:00

328 lines
14 KiB
VB.net

Public Class frmBesuchsberichte
Public KdNr As Integer = -1
Public bb_id As Integer = -1
Dim BB As New VERAG_PROG_ALLGEMEIN.cBesuchsbericht
Sub New(bb_id, Optional kdNr = -1)
InitializeComponent()
Me.bb_id = bb_id
Me.KdNr = kdNr
End Sub
Private Sub KdSearchBox1_TextChanged(sender As Object, e As EventArgs) Handles kdFirma.TextChanged
If kdFirma.KdNr_value > 0 AndAlso kdFirma.KdNr IsNot Nothing Then
Dim AD = kdFirma.KdData_ADRESSEN
Dim KD = kdFirma.KdData_KUNDE
txtFirma.Enabled = True
BB.bb_KundenNr = kdFirma.KdNr_value
txtFirma.Text = If(AD.Name_1, "") & If(AD.Name_2, "")
txtFirma.Text &= vbNewLine & If(AD.Straße, "")
txtFirma.Text &= vbNewLine & If(AD.LandKz, "") & If(AD.PLZ, "") & If(AD.Ort, "")
BB.bb_Kunde = If(txtFirma.Text, "-")
txtFirma.Enabled = False
Else
txtFirma.Enabled = True
End If
End Sub
Private Sub frmBesuchsberichte_Load(sender As Object, e As EventArgs) Handles Me.Load
kdFirma.initKdBox(Me)
cboKontaktart.Items.Clear()
cboKontaktart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
cboKontaktart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Persönlich", "PERSON"))
cboKontaktart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Telefonisch", "TELEFON"))
cboKontaktart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Videomeeting", "VIDEO"))
cboKontaktart.changeItem("")
cboZufrieden.Items.Clear()
cboZufrieden.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
cboZufrieden.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("JA", "True"))
cboZufrieden.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEIN", "False"))
cboZufrieden.changeItem("")
If KdNr > 0 Then
Me.kdFirma.KdNr = KdNr
kdFirma.Enabled = False
txtFirma.ReadOnly = True
Else
kdFirma.Enabled = True
txtFirma.ReadOnly = False
End If
If bb_id > 0 Then
BB = New VERAG_PROG_ALLGEMEIN.cBesuchsbericht(bb_id)
setvalues(BB)
UsrcntlPDFScanList1.Enabled = True
'UsrcntlPDFScanList1.INIT(-1, "BESUCHSBERICHTE", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA, bb_id)
UsrcntlPDFScanList1.INIT(BB.bb_KundenNr, "BESUCHSBERICHTE", bb_id)
Else
UsrcntlPDFScanList1.Enabled = False
End If
End Sub
Sub setvalues(BB As VERAG_PROG_ALLGEMEIN.cBesuchsbericht)
kdFirma.Enabled = BB.bb_KundenNr <= 0
kdFirma.KdNr = BB.bb_KundenNr
datBesuchtAm._value = BB.bb_DatumBesuch
txtTeilgenommen.Text = If(BB.bb_Teilnehmer, "")
cboKontaktart.changeItem(If(BB.bb_Kontaktart, ""))
If If(BB.bb_KundenNr, -1) <= 0 Then
txtFirma.Text = If(BB.bb_Kunde, "")
End If
txtGF.Text = If(BB.bb_Geschaeftsfuehrer, "")
txtAnsprechpartner.Text = If(BB.bb_Anpsprechpartner, "")
txtMail.Text = If(BB.bb_Mail, "")
txtTel.Text = If(BB.bb_Telefon, "")
txtUmsatz._value = If(BB.bb_Umsatz, "")
txtFuhrparkEigene.Text = If(BB.bb_FuhrparkEigentum, "")
txtFuhrparkLeasing.Text = If(BB.bb_FuhrparkLeasing, "")
cbxPlane.Checked = BB.bb_LKW_Plane
cbxKuehltransporte.Checked = BB.bb_LKW_Kuehltranporte
cbxSondertransporte.Checked = BB.bb_LKW_Sondertransporte
cbxSprinter.Checked = BB.bb_LKW_Sprinter
cbxSiloTank.Checked = BB.bb_LKW_SiloTank
txtAuftraggeber.Text = If(BB.bb_Auftraggeber, "")
txtTransportRoute.Text = If(BB.bb_Route, "")
txtDerzeitigerLieferant.Text = If(BB.bb_DerzeitigerLieferant, "")
cboZufrieden.changeItem(If(BB.bb_Zufrieden.ToString, ""))
txtZufriedenNEIN.Text = If(BB.bb_ZufriedenNEIN, "")
txtGarantie.Text = If(BB.bb_Garantie, "")
txtVermerk.Text = If(BB.bb_Vermerk, "")
cbxZollabfertigung.Checked = BB.bb_Interesse_Zollabfertigung
cbxBrexit.Checked = BB.bb_Interesse_Zollabfertigung
cbxParkplatz.Checked = BB.bb_Interesse_Parkplatz
cbxLagerUmschlag.Checked = BB.bb_Interesse_LagerUmschlag
cbxRola.Checked = BB.bb_Interesse_Rola
cbxYesMonex.Checked = BB.bb_Interesse_YesMoney
cbxFerry.Checked = BB.bb_Interesse_Ferry
End Sub
Function getvalues(ByRef BB As VERAG_PROG_ALLGEMEIN.cBesuchsbericht) As Boolean
If Not checkValid() Then Return False
BB.bb_DatumBesuch = datBesuchtAm._value
BB.bb_Teilnehmer = txtTeilgenommen.Text
BB.bb_Kontaktart = cboKontaktart._value
If If(BB.bb_KundenNr, -1) <= 0 Then
If txtFirma.Text <> "" Then
If txtFirma.Text.Length > 35 Then
BB.bb_Kunde = txtFirma.Text.Substring(0, 35)
Else
BB.bb_Kunde = txtFirma.Text
End If
Else
BB.bb_Kunde = "-" 'diese Fall kann nicht eintreten, wird im Formular abgefangen.
End If
End If
BB.bb_Geschaeftsfuehrer = txtGF.Text
BB.bb_Anpsprechpartner = txtAnsprechpartner.Text
BB.bb_Mail = txtMail.Text
BB.bb_Telefon = txtTel.Text
BB.bb_Umsatz = If(txtUmsatz._value = "" Or Not IsNumeric(txtUmsatz._value), Nothing, CDbl(txtUmsatz._value))
BB.bb_FuhrparkEigentum = txtFuhrparkEigene.Text
BB.bb_FuhrparkLeasing = txtFuhrparkLeasing.Text
BB.bb_LKW_Plane = cbxPlane.Checked
BB.bb_LKW_Kuehltranporte = cbxKuehltransporte.Checked
BB.bb_LKW_Sondertransporte = cbxSondertransporte.Checked
BB.bb_LKW_Sprinter = cbxSprinter.Checked
BB.bb_LKW_SiloTank = cbxSiloTank.Checked
BB.bb_Auftraggeber = txtAuftraggeber.Text
BB.bb_Route = txtTransportRoute.Text
BB.bb_DerzeitigerLieferant = txtDerzeitigerLieferant.Text
BB.bb_Zufrieden = IIf(cboZufrieden._value = "", Nothing, cboZufrieden._value)
BB.bb_ZufriedenNEIN = txtZufriedenNEIN.Text
BB.bb_Garantie = txtGarantie.Text
BB.bb_Vermerk = txtVermerk.Text
BB.bb_Interesse_Zollabfertigung = cbxZollabfertigung.Checked
BB.bb_Interesse_Brexit = cbxBrexit.Checked
BB.bb_Interesse_Parkplatz = cbxParkplatz.Checked
BB.bb_Interesse_LagerUmschlag = cbxLagerUmschlag.Checked
BB.bb_Interesse_Rola = cbxRola.Checked
BB.bb_Interesse_YesMoney = cbxYesMonex.Checked
BB.bb_Interesse_Ferry = cbxFerry.Checked
BB.bb_Firma = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
BB.bb_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
BB.bb_SachbearbeiterId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
Return BB.SAVE()
End Function
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
If getvalues(BB) Then
UsrcntlPDFScanList1.Enabled = True
'UsrcntlPDFScanList1.INIT(-1, "BESUCHSBERICHTE", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA, bb_id)
UsrcntlPDFScanList1.INIT(BB.bb_KundenNr, "BESUCHSBERICHTE")
End If
End Sub
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
If getvalues(BB) Then
Me.Close()
End If
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
Me.Close()
End Sub
Function checkValid() As Boolean
lblErr_BesuchtAm.Visible = False
lblErr_Kontaktart.Visible = False
lblErr_Teilgenommen.Visible = False
lblErr_Firma.Visible = False
If datBesuchtAm._value = "" Then lblErr_BesuchtAm.Visible = True : Return False
If cboKontaktart._value = "" Then lblErr_Kontaktart.Visible = True : Return False
If txtTeilgenommen.Text = "" Then lblErr_Teilgenommen.Visible = True : Return False
If txtFirma.Text = "" Then lblErr_Firma.Visible = True : Return False
Return True
End Function
Private Sub UsrcntlPDFScanList1_Load(sender As Object, e As EventArgs) Handles UsrcntlPDFScanList1.Load
End Sub
Private Sub btnPDFReport_Click(sender As Object, e As EventArgs) Handles btnPDFReport.Click
'Erstellung der BerichtsPDF
btnSave_Click(sender, e)
Dim fm As New VERAG_PROG_ALLGEMEIN.cFormularManager
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.MyListItem)
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Datum", BB.bb_DatumBesuch.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Teilnehmer", BB.bb_Teilnehmer.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Geschäftsführer", BB.bb_Geschaeftsfuehrer.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Ansprechpartner", BB.bb_Anpsprechpartner.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Firma", txtFirma.Text))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Umatz", BB.bb_Umsatz)) 'ACHTUNG -> im Formular wurde das Feld "Umatz" benannt, nicht korrigieren!
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Telefon", BB.bb_Telefon.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mail", BB.bb_Mail.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("LKWEigentum", BB.bb_FuhrparkEigentum.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("LKWLeasing", BB.bb_FuhrparkLeasing.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Auftraggeber", BB.bb_Auftraggeber.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("TransportRouten", BB.bb_Route.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DerzeitigerAnbieter", BB.bb_DerzeitigerLieferant.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Bericht", BB.bb_Vermerk.ToString))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Garentie", BB.bb_Garantie)) 'ACHTUNG -> im Formular wurde das Feld "Garentie" benannt, nicht korrigieren!
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Plane", IIf(BB.bb_LKW_Plane = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Kühltransporte", IIf(BB.bb_LKW_Kuehltranporte = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Sondertransporte", IIf(BB.bb_LKW_Sondertransporte = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Sprinter", IIf(BB.bb_LKW_Sprinter = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("SiloTank", IIf(BB.bb_LKW_SiloTank = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Zollabfertigung", IIf(BB.bb_Interesse_Zollabfertigung = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Brexit", IIf(BB.bb_Interesse_Brexit = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Parkplatz", IIf(BB.bb_Interesse_Parkplatz = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("LagerUmladung", IIf(BB.bb_Interesse_LagerUmschlag = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Rola", IIf(BB.bb_Interesse_Rola = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("YesMoney", IIf(BB.bb_Interesse_YesMoney = True, "On", "Off")))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Ferry", IIf(BB.bb_Interesse_Ferry = True, "On", "Off")))
If BB.bb_Zufrieden = "" Or IsNothing(BB.bb_Zufrieden) Then
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("JA", "Off"))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEIN", "Off"))
ElseIf BB.bb_Zufrieden = True Then
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("JA", "On"))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEIN", "Off"))
ElseIf BB.bb_Zufrieden = False Then
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("JA", "Off"))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEIN", "On"))
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ZufriedenNEIN", IIf(BB.bb_ZufriedenNEIN <> "", BB.bb_ZufriedenNEIN.ToString, "")))
End If
Select Case BB.bb_Kontaktart.ToString
Case "PERSON"
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("persönlich", "On"))
Case "TELEFON"
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("telefonisch", "On"))
Case "VIDEO"
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Videomeeting", "On"))
Case Else
End Select
fm.fillPDF("Besuchsbericht_MDM", list, Nothing, , , , , , "VERAG")
End Sub
Private Sub kdFirma_PropertyChanged(sender As Object, e As EventArgs) Handles kdFirma.PropertyChanged
If kdFirma.KdNr_value > 0 AndAlso kdFirma.KdData_ADRESSEN IsNot Nothing AndAlso kdFirma.KdData_KUNDE IsNot Nothing Then
Dim AD = kdFirma.KdData_ADRESSEN
Dim KD = kdFirma.KdData_KUNDE
txtFirma.Text = If(AD.Name_1, "") & If(AD.Name_2, "")
txtFirma.Text &= vbNewLine & If(AD.Straße, "")
txtFirma.Text &= vbNewLine & If(AD.LandKz, "") & If(AD.PLZ, "") & If(AD.Ort, "")
txtFirma.ReadOnly = True
Else
txtFirma.ReadOnly = False
End If
End Sub
Private Sub cboZufrieden_SelectedValueChanged(sender As Object, e As EventArgs) Handles cboZufrieden.SelectedValueChanged
If (cboZufrieden.SelectedIndex = 2) Then
txtZufriedenNEIN.Enabled = True
Else
txtZufriedenNEIN.Enabled = False
txtZufriedenNEIN.Clear()
End If
End Sub
End Class