Files
SDL/SDL/kunden/frmOffertenBearbeiten.vb
2022-11-22 17:39:00 +01:00

76 lines
3.1 KiB
VB.net

Public Class frmOffertenBearbeiten
Dim FIRMA_TMP = ""
Public kdnr As Integer = -1
Dim SQL As New SQL
Sub New(kdnr)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
Me.kdnr = kdnr
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Private Sub frmOffertenBearbeiten_Load(sender As Object, e As EventArgs) Handles Me.Load
FlowLayoutPanel.Controls.Clear()
Dim KUNDE As New VERAG_PROG_ALLGEMEIN.cKunde(kdnr)
If KUNDE Is Nothing Then Me.Close()
If Not KUNDE.hasEntry Then Me.Close()
FIRMA_TMP = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(KUNDE.FilialenNr)
'Dim OFFERTE As New cOfferteList(kdnr, False)
Dim where = ""
Select Case FIRMA_TMP
Case "IMEX"
where = " WHERE [Offertenstamm].[OffertenNr] IN (1,2,3,4,5,6,7,8,9,10,26,27,29,50,51)"
End Select
Dim SQLsrt = " SELECT (select case when COUNT(*)>0 then 1 else 0 end FROM Offerten where KundenNr=" & kdnr & " and [Offerten].[OffertenNr]=[Offertenstamm].[OffertenNr]) as vorhanden," &
" [Offertenstamm].[OffertenNr],[OffertenBez] FROM Offertenstamm " & where & " order by OffertenNr"
For Each r As DataRow In SQL.loadDgvBySql(SQLsrt, "FMZOLL").Rows
Dim cbx As New VERAG_PROG_ALLGEMEIN.MyCheckBoxValue
cbx._value = r("OffertenNr")
cbx.AutoSize = False
cbx.Width = FlowLayoutPanel.Width - 30
cbx.Height = 18
cbx.Checked = CBool(r("vorhanden"))
If cbx.Checked Then cbx.Enabled = False
cbx.Text = r("OffertenNr") & " " & r("OffertenBez")
FlowLayoutPanel.Controls.Add(cbx)
Next
End Sub
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
If kdnr <= 0 Then MsgBox("Keine KundenNr gefunden!") : Exit Sub
For Each c In FlowLayoutPanel.Controls
If c.GetType Is GetType(VERAG_PROG_ALLGEMEIN.MyCheckBoxValue) Then
' MsgBox(c._value)
If c.enabled And c.checked Then
Dim o As New VERAG_PROG_ALLGEMEIN.cOfferte(kdnr, c._value, False)
o.Art = "Neuanlage"
o.SAVE() 'speichern
o.LOAD_POSITIONEN() 'positionen Laden
If o.POSITIONEN.Count = 0 Then 'wenn keine POS --> neues Offert
o.RESET_STANDARTOFFERTEN_FIRMA(VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME, FIRMA_TMP) '--> Standartofferten laden
End If
'SQL.doSQL("INSERT INTO Offertenpositionen WHERE KundenNr=" & kdnr & " AND [OffertenNr]=" & kdnr & "")
Else
' SQL.doSQL("DELETE FROM Offertenpositionen WHERE KundenNr=" & kdnr & " AND [OffertenNr]=" & kdnr & "")
' SQL.doSQL("DELETE FROM Offerten WHERE KundenNr=" & kdnr & " AND [OffertenNr]=" & kdnr & "")
End If
End If
Next
Me.Close()
End Sub
End Class