This commit is contained in:
2024-06-07 13:35:42 +02:00
4 changed files with 139 additions and 11 deletions

View File

@@ -1,7 +1,8 @@
Imports System.Data.SqlClient
Imports System.Reflection
Imports System.Windows.Forms
Imports DocumentFormat.OpenXml.Spreadsheet
'Imports DocumentFormat.OpenXml.Drawing.Charts
'Imports DocumentFormat.OpenXml.Spreadsheet
Public Class cRechnungsausgangLIST
@@ -693,16 +694,64 @@ Public Class cRechnungsausgang
MsgBox("Fehler In der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
End Sub
Public Sub LOAD_OFFERT_POSITIONEN(kdNr)
Public Sub LOAD_POSITIONEN_FROM_OFFERTE(OFFERTE As VERAG_PROG_ALLGEMEIN.cOfferte)
For Each O In OFFERTE.POSITIONEN
'If row("Anzahl") > 0 Then -->SQL
Dim l As New cRechnungsausgangPositionen
l.LeistungsNr = O.LeistungsNr
l.LeistungsBez = O.LeistungsBez
l.Anzahl = O.Anzahl
l.Preis = O.Preis
l.BerechnungsartNr = O.BerechnungsartNr
l.BGebLeistungsNr = O.BGebLeistungsNr
l.BGebProzent = O.BGebProzent
l.BGebMinBetrag = O.BGebMinBetrag
' l.Steuerpflichtig = O.ste
l.RK_ID = Me.RK_ID
POSITIONEN.Add(l)
' End If
Next
End Sub
Public Sub LOAD_OFFERT_POSITIONEN()
Try
' POSITIONEN.Clear()
Dim dt As DataTable = SQL.loadDgvBySql(" SELECT [Offertenpositionen].[LeistungsNr],[Offertenpositionen].[LeistungsBez],[Anzahl],[Preis],[Offertenpositionen].[BerechnungsartNr],[BGebLeistungsNr],[BGebProzent],[BGebMinBetrag],Steuerpflichtig/*,[Geändert am],[Sachbearbeiter]*/,BerechnungsartPosInkludiert " &
" FROM [Offertenpositionen] INNER JOIN [Leistungen] ON leistungen.LeistungsNr=Offertenpositionen.LeistungsNr" &
" WHERE KundenNr='" & kdNr & "' and OffertenNr='" & OffertenNr & "' ORDER BY LeistungsNr ", "FMZOLL")
Dim dt = SQL.loadDgvBySql(" Select [Offertenpositionen].[LeistungsNr],[Offertenpositionen].[LeistungsBez],[Anzahl],[Preis],[Offertenpositionen].[BerechnungsartNr],[BGebLeistungsNr],[BGebProzent],[BGebMinBetrag],Steuerpflichtig/*,[Geändert am],[Sachbearbeiter]*/,BerechnungsartPosInkludiert
From [Offertenpositionen] INNER Join [Leistungen] On Leistungen.LeistungsNr=Offertenpositionen.LeistungsNr
Where KundenNr ='" & Me.RechnungsKundenNr & "' and OffertenNr='" & OffertenNr & "' AND Anzahl>0 AND Preis>0 ORDER BY LeistungsNr", "FMZOLL")
For Each row In dt.Rows
'If row("Anzahl") > 0 Then -->SQL
Dim l As New cRechnungsausgangPositionen
l.LeistungsNr = row("LeistungsNr")
l.LeistungsBez = row("LeistungsBez")
l.Anzahl = row("Anzahl")
l.Preis = row("Preis")
l.BerechnungsartNr = row("BerechnungsartNr")
l.BGebLeistungsNr = row("BGebLeistungsNr")
l.BGebProzent = row("BGebProzent")
l.BGebMinBetrag = row("BGebMinBetrag")
l.Steuerpflichtig = row("Steuerpflichtig")
'l.BGebBgl = l.Preis
If l.Steuerpflichtig Then
l.SteuerpflichtigerBetrag = l.Preis
l.Preis = l.Preis
Else
Dim steuersatz = SQL.DLookup("Steuertabelle.[Steuersatz %] ", "[Kunden] inner join Steuertabelle on Steuertabelle.Steuerschlüssel=kunden.Steuerschlüssel", "KundenNr='" & Me.RechnungsKundenNr & "'",, "0")
L.SteuerfreierBetrag = l.Preis + (l.Preis * steuersatz)
l.Preis = l.Preis + (l.Preis * steuersatz)
End If
l.RK_ID = Me.RK_ID
POSITIONEN.Add(l)
' End If
Next
Catch ex As Exception