This commit is contained in:
2024-09-12 14:06:11 +02:00
parent 8021e5a30d
commit 10340868dc
10 changed files with 174 additions and 48 deletions

View File

@@ -74,7 +74,7 @@ Public Class usrCntlBH
Dim dt = SQL.loadDgvBySql(getOPSql(), "FMZOLL")
dt.Columns.Add("VersicherungsBetrag", Type.GetType("System.Double"))
For Each r In dt.Rows
r("VersicherungsBetrag") = getVersBetrag(r("Risiko"), r("Versicherungssumme"), r("GemeldeterBetrag"), )
r("VersicherungsBetrag") = getVersBetrag(r("Risiko"), r("Versicherungssumme"), r("GemeldeterBetrag"), r("nichtVersicherbar"))
Next
dt.Columns("VersicherungsBetrag").ColumnName = "V-Betrag"
dt.Columns("Versicherungssumme").ColumnName = "V-Summe"
@@ -112,6 +112,7 @@ Public Class usrCntlBH
sqlStr &= "SELECT * FROM ("
sqlStr &= " SELECT Ordnungsbegriff, AdressenNr as KdNr, Adressen.LandKz, "
If cbxDeckungsstoppAnzeigen.Checked Then sqlStr &= " (SELECT TOP 1 ISNULL([kde_Versicherung_DeckungsstoppDatum],'') FROM [tblKundenErweitert] where kde_Versicherung_Deckungsstopp=1 and kde_KundenNr=AdressenNr) AS DS, "
sqlStr &= " (SELECT TOP 1 ISNULL(kde_txtVersicherungNichtVersicherbar,'') FROM [tblKundenErweitert] where kde_KundenNr=AdressenNr) AS nichtVersicherbar, "
If True Then sqlStr &= " isnull((SELECT TOP 1 [kde_Versicherung_GemeldeterBetrag] FROM [tblKundenErweitert] where kde_KundenNr=AdressenNr),0) AS GemeldeterBetrag, "
sqlStr &= " (SELECT SUM(Gesamtausstand) FROM dbo.[Offene Posten] WHERE (Kontonummer = AdressenNr " & Firmen_ID & ")) AS LfdSaldo, "
sqlStr &= " (SELECT MIN(Belegdatum) AS Expr1"
@@ -152,7 +153,7 @@ Public Class usrCntlBH
End If
If cbxNichtVersicherbarAusblenden.Checked Then sqlStr &= " AND isnull((SELECT kde_txtVersicherungNichtVersicherbar FROM tblKundenErweitert WHERE kde_KundenNr=Adressen.AdressenNr),0)=0 "
If cbxKundeBeiRechtsanwaltausblenden.Checked Then sqlStr &= " and Rechtsanwalt= 0 "
'If cbxKundeBeiRechtsanwaltausblenden.Checked Then sqlStr &= " and Rechtsanwalt= 0 "
@@ -178,6 +179,8 @@ Public Class usrCntlBH
sqlStr &= ") as T "
sqlStr &= " WHERE 1=1 "
If cbxNichtVersicherbarAusblenden.Checked Then sqlStr &= " AND isnull(nichtVersicherbar,0) = 0 "
If txtOPRisikoBetragVon._value <> "" Or txtOPRisikoBetragBis._value <> "" Then
If txtOPRisikoBetragVon._value <> "" Then sqlStr &= " AND Risiko >= '" & txtOPRisikoBetragVon._value & "'"
If txtOPRisikoBetragBis._value <> "" Then sqlStr &= " AND Risiko <= '" & txtOPRisikoBetragBis._value & "'"
@@ -423,7 +426,7 @@ Public Class usrCntlBH
rpt.lblVersBetrag.Text = getVersBetrag(risiko, rpt.Fields.Item("Versicherungssumme").Value, rpt.Fields.Item("GemeldeterBetrag").Value).ToString("C")
rpt.lblVersBetrag.Text = getVersBetrag(risiko, rpt.Fields.Item("Versicherungssumme").Value, rpt.Fields.Item("GemeldeterBetrag").Value, IIf(rpt.Fields.Item("nichtVersicherbar").Value IsNot DBNull.Value, rpt.Fields.Item("nichtVersicherbar").Value, False)).ToString("C")
@@ -452,39 +455,39 @@ Public Class usrCntlBH
Me.Cursor = Cursors.Default
End Sub
Function getVersBetrag(risiko, Versicherungssumme, GemeldeterBetrag, Optional versicherungGekündigt = False) As Double
Function getVersBetrag(risiko, Versicherungssumme, GemeldeterBetrag, versicherungGekündigt) As Double
If risiko Is DBNull.Value Then Return 0
If versicherungGekündigt Then Return 0
If Not versicherungGekündigt Is DBNull.Value AndAlso versicherungGekündigt Then Return 0
Dim versBetrag As Double = 0
If risiko <= 0 Then
versBetrag = 0
ElseIf cbxBagatellgrenze.Checked And risiko <= txtBagatellgrenzeBei._value Then
versBetrag = 0 ' kleiner Bagatellgrenze
ElseIf risiko <= GrenzeVersicherung Then
If Versicherungssumme IsNot DBNull.Value Then
If risiko > CDbl(Versicherungssumme) Then
versBetrag = Versicherungssumme
Else
versBetrag = risiko
End If
If risiko <= 0 Then
versBetrag = 0
ElseIf cbxBagatellgrenze.Checked And risiko <= txtBagatellgrenzeBei._value Then
versBetrag = 0 ' kleiner Bagatellgrenze
ElseIf risiko <= GrenzeVersicherung Then
If Versicherungssumme IsNot DBNull.Value Then
If risiko > CDbl(Versicherungssumme) Then
versBetrag = Versicherungssumme
Else
versBetrag = risiko
End If
Else
If Versicherungssumme IsNot DBNull.Value Then
If risiko > CDbl(Versicherungssumme) Then
versBetrag = Versicherungssumme
Else
versBetrag = risiko
End If
Else
versBetrag = GrenzeVersicherung
End If
versBetrag = risiko
End If
Else
If Versicherungssumme IsNot DBNull.Value Then
If risiko > CDbl(Versicherungssumme) Then
versBetrag = Versicherungssumme
Else
versBetrag = risiko
End If
Else
versBetrag = GrenzeVersicherung
End If
End If
Return If(GemeldeterBetrag > 0, GemeldeterBetrag, versBetrag)
Return If(GemeldeterBetrag > 0, GemeldeterBetrag, versBetrag)
End Function
Private Sub cbxOPUmsatz_CheckedChanged(sender As Object, e As EventArgs) Handles cbxOPUmsatz.CheckedChanged