fakt.
This commit is contained in:
@@ -2616,62 +2616,6 @@ Public Class usrCntlFaktAbrechnung
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
Private Sub prBearbGeb(POS_ As cRechnungsausgangPositionen, OFFERTE As cOfferte, RE As cRechnungsausgang, BGebLeistungsNr As Integer, BGebProzent As Double, BGebBgl As Integer)
|
||||
|
||||
If POS_.Anzahl <> 0 Then
|
||||
|
||||
If (BGebLeistungsNr > 0 AndAlso BGebProzent > 0 AndAlso BGebBgl <> 0) Then
|
||||
|
||||
Dim Betrag As Double = Math.Round(BGebBgl * BGebProzent, 1)
|
||||
For Each o In OFFERTE.POSITIONEN
|
||||
If o.LeistungsNr = BGebLeistungsNr Then
|
||||
|
||||
'Falls schon vorhanden...
|
||||
Dim POS = RE.POSITIONEN.Find(Function(x) x.LeistungsNr = BGebLeistungsNr And x.BerechnungsartNr = 9)
|
||||
If POS Is Nothing Then
|
||||
POS = New VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen()
|
||||
POS.Preis = 0
|
||||
POS.SteuerpflichtigerBetrag = 0
|
||||
POS.SteuerfreierBetrag = 0
|
||||
Dim LEISTUNG As New VERAG_PROG_ALLGEMEIN.cLeistungen(o.LeistungsNr)
|
||||
POS.Steuerpflichtig = LEISTUNG.Steuerpflichtig
|
||||
|
||||
POS.LeistungsNr = o.LeistungsNr
|
||||
POS.LeistungsBez = o.LeistungsBez
|
||||
|
||||
POS.BerechnungsartNr = o.BerechnungsartNr
|
||||
POS.Anzahl = 1
|
||||
' POS.BGebLeistungsNr = BGebLeistungsNr
|
||||
|
||||
RE.POSITIONEN.Add(POS)
|
||||
|
||||
End If
|
||||
|
||||
POS.Preis += Betrag
|
||||
|
||||
'End If
|
||||
|
||||
If POS.Steuerpflichtig Then
|
||||
POS.SteuerpflichtigerBetrag += Betrag
|
||||
Else
|
||||
POS.SteuerfreierBetrag += Betrag
|
||||
End If
|
||||
|
||||
End If
|
||||
Next
|
||||
'Catch ex As Exception
|
||||
' VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
'End Try
|
||||
' Return False
|
||||
'End Function
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub prBearbGeb_NEW(POS_ As cRechnungsausgangPositionen, OFFERTE As cOfferte, RE As cRechnungsausgang, BGebLeistungsNr As Integer, BGebProzent As Double, BGebMinBetrag As Double, BGebBgl As Integer, ByRef summeRMCBearb As Double, isRMC As Boolean)
|
||||
|
||||
|
||||
@@ -2715,10 +2659,10 @@ Public Class usrCntlFaktAbrechnung
|
||||
|
||||
|
||||
For Each o In OFFERTE.POSITIONEN
|
||||
If o.LeistungsNr = BGebLeistungsNr And o.BerechnungsartNr = 9 Then
|
||||
|
||||
If o.LeistungsNr = BGebLeistungsNr And o.BerechnungsartNr = 9 Then
|
||||
'Falls schon vorhanden...
|
||||
Dim POS = RE.POSITIONEN.Find(Function(x) x.LeistungsNr = BGebLeistungsNr And x.BerechnungsartNr = 9)
|
||||
Dim POS = RE.POSITIONEN.Find(Function(x) x.LeistungsNr = BGebLeistungsNr And x.LeistungsBez = o.LeistungsBez And x.BerechnungsartNr = 9)
|
||||
If POS Is Nothing Then
|
||||
POS = New VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen()
|
||||
POS.Preis = 0
|
||||
@@ -2726,50 +2670,47 @@ Public Class usrCntlFaktAbrechnung
|
||||
POS.SteuerfreierBetrag = 0
|
||||
Dim LEISTUNG As New VERAG_PROG_ALLGEMEIN.cLeistungen(o.LeistungsNr)
|
||||
POS.Steuerpflichtig = LEISTUNG.Steuerpflichtig
|
||||
|
||||
POS.LeistungsNr = o.LeistungsNr
|
||||
POS.LeistungsBez = o.LeistungsBez
|
||||
|
||||
POS.BerechnungsartNr = o.BerechnungsartNr
|
||||
POS.Anzahl = 1
|
||||
' POS.BGebLeistungsNr = BGebLeistungsNr
|
||||
|
||||
RE.POSITIONEN.Add(POS)
|
||||
|
||||
End If
|
||||
|
||||
POS.Preis += curBGebBetrag
|
||||
|
||||
If POS.Anzahl = 0 Then POS.Anzahl = 1
|
||||
|
||||
|
||||
If POS.Preis = curBGebBetrag * 2 AndAlso minBetragRMCUsed Then 'wenn RMCPOS und MIND-BERTAG 2x verrechnet -> nur 1x berechnen
|
||||
POS.Preis = POS.Preis / 2
|
||||
ElseIf POS.Preis <> curBGebBetrag * 2 AndAlso summeRMCBearb <> POS.Preis AndAlso (minBetragRMCUsed OrElse isRMC) AndAlso summeRMCBearb > curBGebMinBetrag Then 'wenn RMCPOS und Summe der berechneten Bearb > Mindestbetrag --> berechnetBearb verrechnet!
|
||||
POS.Preis = summeRMCBearb
|
||||
End If
|
||||
POS.Preis = POS.Preis / 2
|
||||
ElseIf POS.Preis <> curBGebBetrag * 2 AndAlso summeRMCBearb <> POS.Preis AndAlso (minBetragRMCUsed OrElse isRMC) AndAlso summeRMCBearb > curBGebMinBetrag Then 'wenn RMCPOS und Summe der berechneten Bearb > Mindestbetrag --> berechnetBearb verrechnet!
|
||||
POS.Preis = summeRMCBearb
|
||||
End If
|
||||
|
||||
|
||||
If POS.Steuerpflichtig Then
|
||||
POS.SteuerpflichtigerBetrag += curBGebBetrag
|
||||
If POS.Steuerpflichtig Then
|
||||
POS.SteuerpflichtigerBetrag += curBGebBetrag
|
||||
|
||||
If POS.SteuerpflichtigerBetrag = curBGebBetrag * 2 AndAlso minBetragRMCUsed Then 'wenn RMCPOS und MIND-BERTAG 2x verrechnet -> nur 1x berechnen
|
||||
POS.SteuerpflichtigerBetrag = POS.SteuerpflichtigerBetrag / 2
|
||||
ElseIf POS.SteuerpflichtigerBetrag <> curBGebBetrag * 2 AndAlso summeRMCBearb <> POS.SteuerpflichtigerBetrag AndAlso (minBetragRMCUsed OrElse isRMC) AndAlso summeRMCBearb > curBGebMinBetrag Then 'wenn RMCPOS und Summe der berechneten Bearb > Mindestbetrag --> berechnetBearb verrechnet!
|
||||
POS.SteuerpflichtigerBetrag = summeRMCBearb
|
||||
If POS.SteuerpflichtigerBetrag = curBGebBetrag * 2 AndAlso minBetragRMCUsed Then 'wenn RMCPOS und MIND-BERTAG 2x verrechnet -> nur 1x berechnen
|
||||
POS.SteuerpflichtigerBetrag = POS.SteuerpflichtigerBetrag / 2
|
||||
ElseIf POS.SteuerpflichtigerBetrag <> curBGebBetrag * 2 AndAlso summeRMCBearb <> POS.SteuerpflichtigerBetrag AndAlso (minBetragRMCUsed OrElse isRMC) AndAlso summeRMCBearb > curBGebMinBetrag Then 'wenn RMCPOS und Summe der berechneten Bearb > Mindestbetrag --> berechnetBearb verrechnet!
|
||||
POS.SteuerpflichtigerBetrag = summeRMCBearb
|
||||
|
||||
End If
|
||||
|
||||
Else
|
||||
POS.SteuerfreierBetrag += curBGebBetrag
|
||||
|
||||
If POS.SteuerfreierBetrag = curBGebBetrag * 2 AndAlso minBetragRMCUsed Then 'wenn RMCPOS und MIND-BERTAG 2x verrechnet -> nur 1x berechnen
|
||||
POS.SteuerfreierBetrag = POS.SteuerfreierBetrag / 2
|
||||
ElseIf POS.SteuerpflichtigerBetrag <> curBGebBetrag * 2 AndAlso summeRMCBearb <> POS.SteuerpflichtigerBetrag AndAlso (minBetragRMCUsed OrElse isRMC) AndAlso summeRMCBearb > curBGebMinBetrag Then 'wenn RMCPOS und Summe der berechneten Bearb > Mindestbetrag --> berechnetBearb verrechnet!
|
||||
POS.SteuerpflichtigerBetrag = summeRMCBearb
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Else
|
||||
POS.SteuerfreierBetrag += curBGebBetrag
|
||||
|
||||
If POS.SteuerfreierBetrag = curBGebBetrag * 2 AndAlso minBetragRMCUsed Then 'wenn RMCPOS und MIND-BERTAG 2x verrechnet -> nur 1x berechnen
|
||||
POS.SteuerfreierBetrag = POS.SteuerfreierBetrag / 2
|
||||
ElseIf POS.SteuerpflichtigerBetrag <> curBGebBetrag * 2 AndAlso summeRMCBearb <> POS.SteuerpflichtigerBetrag AndAlso (minBetragRMCUsed OrElse isRMC) AndAlso summeRMCBearb > curBGebMinBetrag Then 'wenn RMCPOS und Summe der berechneten Bearb > Mindestbetrag --> berechnetBearb verrechnet!
|
||||
POS.SteuerpflichtigerBetrag = summeRMCBearb
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
Next
|
||||
'Catch ex As Exception
|
||||
' VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
|
||||
Reference in New Issue
Block a user