Imports VERAG_PROG_ALLGEMEIN Public Class frmSendungsdetailsAbrechnung 'Public sendId As Integer = -1 Dim SQL As New cADMIN 'Public Aufschub = "" Public avisierer As String = "" Public absender As String = "" Public auftraggeber As String = "" Public empfänger As String = "" Public frachtführer As String = "" Public SENDUNG As VERAG_PROG_ALLGEMEIN.cSendungen = Nothing Dim AVISO As New cAvisoDAL Function save() As Boolean Try SENDUNG.ABRECHNUNG.Clear() ' SQL.doSQL("DELETE FROM tblSendAbrechnung WHERE sndabr_sendId=" & sendId) insertByUsrcntl(detAvisierer) insertByUsrcntl(detAbsender) insertByUsrcntl(detAuftraggeber) insertByUsrcntl(detEmpfaenger) insertByUsrcntl(detFrachtfuehrer) SENDUNG.SAVE_Abrechnung() Return True Catch ex As Exception MsgBox(ex.Message) Return False End Try End Function Sub insertByUsrcntl(usr As usrcntlSendungDetailsAbrechnung) For Each c In usr.Controls If c.GetType.ToString = "AVISO.usrcntlCheckBox" Then Dim cntlCbx As usrcntlCheckBox = DirectCast(c, usrcntlCheckBox) If cntlCbx.value <> "" Then SENDUNG.ABRECHNUNG.Add(New VERAG_PROG_ALLGEMEIN.cSendungAbrechnung(SENDUNG.tblSnd_SendungID, usr._beteiligter, cntlCbx._abrArt, cntlCbx.value)) End If End If Next For Each r As DataGridViewRow In usr.dgv.Rows Dim leistung = r.Cells("Leistung").Value Dim preis As Object = Nothing If IsNumeric(r.Cells("Preis").Value) Then preis = CDbl(r.Cells("Preis").Value) If leistung <> "" Then SENDUNG.ABRECHNUNG.Add(New VERAG_PROG_ALLGEMEIN.cSendungAbrechnung(SENDUNG.tblSnd_SendungID, usr._beteiligter, "", "", leistung, 1, preis, preis)) End If Next End Sub Private Sub btnSpeichern_Click(sender As Object, e As EventArgs) Handles btnSpeichern.Click If save() Then Me.Close() End If End Sub Private Sub frmSendungsdetailsAbrechnung_Load(sender As Object, e As EventArgs) Handles Me.Load If SENDUNG Is Nothing Then MsgBox("Sendung nicht definiert!") : Me.Close() SENDUNG.LOAD_ABRECHNUNG() detAvisierer.lblBezeichnung.Text = "Avisierer" detAbsender.lblBezeichnung.Text = "Absender" detAuftraggeber.lblBezeichnung.Text = "Auftraggeber" detEmpfaenger.lblBezeichnung.Text = "Empfänger" detFrachtfuehrer.lblBezeichnung.Text = "Frachtführer" detAvisierer.lblFirma.Text = avisierer detAbsender.lblFirma.Text = absender detAuftraggeber.lblFirma.Text = auftraggeber detEmpfaenger.lblFirma.Text = empfänger detFrachtfuehrer.lblFirma.Text = frachtführer fillusrCntl(detAvisierer) fillusrCntl(detAuftraggeber) fillusrCntl(detAbsender) fillusrCntl(detEmpfaenger) fillusrCntl(detFrachtfuehrer) If SENDUNG.tblSnd_Abfertigungsart_ID = 23 Then txtHandling.Visible = True End If End Sub Sub fillusrCntl(det As usrcntlSendungDetailsAbrechnung) For Each a In SENDUNG.ABRECHNUNG If a.sndabr_beteiligter = det._beteiligter Then Select Case a.sndabr_abrArt Case "ZOLL" : det.cntlZoll.lbl.Text = a.sndabr_wert Case "EUST" : det.cntlEust.lbl.Text = a.sndabr_wert Case "ABFKOST" : det.cntlAbf.lbl.Text = a.sndabr_wert Case "CLEARING" : det.cntlClear.lbl.Text = a.sndabr_wert Case Else : det.dgv.Rows.Add(a.sndabr_bezeichnung, If(a.sndabr_preis, "")) End Select End If Next det.init() det.cntlEust.Enabled = (SENDUNG.tblSnd_aufschub = "VERAG" Or SENDUNG.tblSnd_aufschub = "") det.dgv.ClearSelection() End Sub Private Sub Label1_Click(sender As Object, e As EventArgs) End Sub Private Sub pnlAbrechnung_Paint(sender As Object, e As PaintEventArgs) Handles pnlAbrechnung.Paint End Sub End Class