From 0e6a08cc02f2de17d1df4ccc0d530abc5bea8540 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Fri, 19 Apr 2024 15:33:42 +0200 Subject: [PATCH] Mailvorlagen und Essensbestellungen --- ...sensbestellungenAdministration.Designer.vb | 182 +++++++++++------- SDL/frmEssensbestellungenAdministration.vb | 46 ++++- SDL/frmdynMailvorlage.vb | 23 ++- .../Classes/Essensbestellung.vb | 2 + 4 files changed, 171 insertions(+), 82 deletions(-) diff --git a/SDL/frmEssensbestellungenAdministration.Designer.vb b/SDL/frmEssensbestellungenAdministration.Designer.vb index 629461e2..297e8666 100644 --- a/SDL/frmEssensbestellungenAdministration.Designer.vb +++ b/SDL/frmEssensbestellungenAdministration.Designer.vb @@ -28,6 +28,8 @@ Partial Class frmEssensbestellungenAdministration Me.Label4 = New System.Windows.Forms.Label() Me.Label22 = New System.Windows.Forms.Label() Me.Panel1 = New System.Windows.Forms.Panel() + Me.Button3 = New System.Windows.Forms.Button() + Me.txtarchivieren = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.cbxCurrenyear = New System.Windows.Forms.CheckBox() Me.cbxAlleAnzeigen = New System.Windows.Forms.CheckBox() Me.lblBestellungBis = New System.Windows.Forms.Label() @@ -73,16 +75,16 @@ Partial Class frmEssensbestellungenAdministration Me.txtAnzahlDS = New System.Windows.Forms.TextBox() Me.Label27 = New System.Windows.Forms.Label() Me.Label5 = New System.Windows.Forms.Label() - Me.txtSumme = New VERAG_PROG_ALLGEMEIN.MyTextBox() - Me.dgvBestellungen = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) - Me.cbxMailKW = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.Label7 = New System.Windows.Forms.Label() - Me.cbxMailGebäude = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.Label8 = New System.Windows.Forms.Label() Me.Button1 = New System.Windows.Forms.Button() Me.lblWarning = New System.Windows.Forms.Label() Me.Button2 = New System.Windows.Forms.Button() Me.Label9 = New System.Windows.Forms.Label() + Me.cbxMailKW = New VERAG_PROG_ALLGEMEIN.MyComboBox() + Me.cbxMailGebäude = New VERAG_PROG_ALLGEMEIN.MyComboBox() + Me.txtSumme = New VERAG_PROG_ALLGEMEIN.MyTextBox() + Me.dgvBestellungen = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.pnlTop.SuspendLayout() Me.Panel1.SuspendLayout() Me.ContextMenuStrip1.SuspendLayout() @@ -123,6 +125,8 @@ Partial Class frmEssensbestellungenAdministration ' 'Panel1 ' + Me.Panel1.Controls.Add(Me.Button3) + Me.Panel1.Controls.Add(Me.txtarchivieren) Me.Panel1.Controls.Add(Me.cbxCurrenyear) Me.Panel1.Controls.Add(Me.cbxAlleAnzeigen) Me.Panel1.Controls.Add(Me.lblBestellungBis) @@ -163,6 +167,40 @@ Partial Class frmEssensbestellungenAdministration Me.Panel1.Size = New System.Drawing.Size(1242, 106) Me.Panel1.TabIndex = 2 ' + 'Button3 + ' + Me.Button3.Enabled = False + Me.Button3.Location = New System.Drawing.Point(111, 77) + Me.Button3.Name = "Button3" + Me.Button3.Size = New System.Drawing.Size(91, 23) + Me.Button3.TabIndex = 75 + Me.Button3.Text = "archivieren" + Me.Button3.UseVisualStyleBackColor = True + ' + 'txtarchivieren + ' + Me.txtarchivieren._DateTimeOnly = False + Me.txtarchivieren._numbersOnly = True + Me.txtarchivieren._numbersOnlyKommastellen = "" + Me.txtarchivieren._numbersOnlyTrennzeichen = True + Me.txtarchivieren._Prozent = False + Me.txtarchivieren._ShortDateNew = False + Me.txtarchivieren._ShortDateOnly = False + Me.txtarchivieren._TimeOnly = False + Me.txtarchivieren._TimeOnly_Seconds = False + Me.txtarchivieren._value = "" + Me.txtarchivieren._Waehrung = False + Me.txtarchivieren._WaehrungZeichen = False + Me.txtarchivieren.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtarchivieren.ForeColor = System.Drawing.Color.Black + Me.txtarchivieren.Location = New System.Drawing.Point(40, 79) + Me.txtarchivieren.MaxLineLength = -1 + Me.txtarchivieren.MaxLines_Warning = "" + Me.txtarchivieren.MaxLines_Warning_Label = Nothing + Me.txtarchivieren.Name = "txtarchivieren" + Me.txtarchivieren.Size = New System.Drawing.Size(63, 20) + Me.txtarchivieren.TabIndex = 74 + ' 'cbxCurrenyear ' Me.cbxCurrenyear.AutoSize = True @@ -177,7 +215,7 @@ Partial Class frmEssensbestellungenAdministration 'cbxAlleAnzeigen ' Me.cbxAlleAnzeigen.AutoSize = True - Me.cbxAlleAnzeigen.Location = New System.Drawing.Point(668, 79) + Me.cbxAlleAnzeigen.Location = New System.Drawing.Point(669, 78) Me.cbxAlleAnzeigen.Name = "cbxAlleAnzeigen" Me.cbxAlleAnzeigen.Size = New System.Drawing.Size(42, 17) Me.cbxAlleAnzeigen.TabIndex = 72 @@ -312,7 +350,7 @@ Partial Class frmEssensbestellungenAdministration 'cbxNichtAbgeschickt ' Me.cbxNichtAbgeschickt.AutoSize = True - Me.cbxNichtAbgeschickt.Location = New System.Drawing.Point(668, 58) + Me.cbxNichtAbgeschickt.Location = New System.Drawing.Point(669, 57) Me.cbxNichtAbgeschickt.Name = "cbxNichtAbgeschickt" Me.cbxNichtAbgeschickt.Size = New System.Drawing.Size(137, 17) Me.cbxNichtAbgeschickt.TabIndex = 51 @@ -322,7 +360,7 @@ Partial Class frmEssensbestellungenAdministration 'cbxAbgerechnet ' Me.cbxAbgerechnet.AutoSize = True - Me.cbxAbgerechnet.Location = New System.Drawing.Point(668, 19) + Me.cbxAbgerechnet.Location = New System.Drawing.Point(669, 18) Me.cbxAbgerechnet.Name = "cbxAbgerechnet" Me.cbxAbgerechnet.Size = New System.Drawing.Size(86, 17) Me.cbxAbgerechnet.TabIndex = 50 @@ -332,7 +370,7 @@ Partial Class frmEssensbestellungenAdministration 'cbxStornos ' Me.cbxStornos.AutoSize = True - Me.cbxStornos.Location = New System.Drawing.Point(668, 39) + Me.cbxStornos.Location = New System.Drawing.Point(669, 38) Me.cbxStornos.Name = "cbxStornos" Me.cbxStornos.Size = New System.Drawing.Size(63, 17) Me.cbxStornos.TabIndex = 49 @@ -707,56 +745,6 @@ Partial Class frmEssensbestellungenAdministration Me.Label5.TabIndex = 44 Me.Label5.Text = "Anzahl Datensätze:" ' - 'txtSumme - ' - Me.txtSumme._DateTimeOnly = False - Me.txtSumme._numbersOnly = False - Me.txtSumme._numbersOnlyKommastellen = "" - Me.txtSumme._numbersOnlyTrennzeichen = False - Me.txtSumme._Prozent = False - Me.txtSumme._ShortDateNew = False - Me.txtSumme._ShortDateOnly = False - Me.txtSumme._TimeOnly = False - Me.txtSumme._TimeOnly_Seconds = False - Me.txtSumme._value = "" - Me.txtSumme._Waehrung = True - Me.txtSumme._WaehrungZeichen = True - Me.txtSumme.ForeColor = System.Drawing.Color.Black - Me.txtSumme.Location = New System.Drawing.Point(1130, 744) - Me.txtSumme.MaxLineLength = -1 - Me.txtSumme.MaxLines_Warning = "" - Me.txtSumme.MaxLines_Warning_Label = Nothing - Me.txtSumme.Name = "txtSumme" - Me.txtSumme.ReadOnly = True - Me.txtSumme.Size = New System.Drawing.Size(100, 20) - Me.txtSumme.TabIndex = 47 - Me.txtSumme.TextAlign = System.Windows.Forms.HorizontalAlignment.Right - ' - 'dgvBestellungen - ' - Me.dgvBestellungen.AKTUALISIERUNGS_INTERVALL = -1 - Me.dgvBestellungen.AllowUserToAddRows = False - Me.dgvBestellungen.AllowUserToDeleteRows = False - Me.dgvBestellungen.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize - Me.dgvBestellungen.ContextMenuStrip = Me.ContextMenuStrip1 - Me.dgvBestellungen.Location = New System.Drawing.Point(0, 161) - Me.dgvBestellungen.Name = "dgvBestellungen" - Me.dgvBestellungen.Size = New System.Drawing.Size(1242, 560) - Me.dgvBestellungen.TabIndex = 43 - ' - 'cbxMailKW - ' - Me.cbxMailKW._allowedValuesFreiText = Nothing - Me.cbxMailKW._allowFreiText = False - Me.cbxMailKW._value = "" - Me.cbxMailKW.DropDownWidth = 100 - Me.cbxMailKW.Font = New System.Drawing.Font("Microsoft Tai Le", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.cbxMailKW.FormattingEnabled = True - Me.cbxMailKW.Location = New System.Drawing.Point(14, 741) - Me.cbxMailKW.Name = "cbxMailKW" - Me.cbxMailKW.Size = New System.Drawing.Size(91, 22) - Me.cbxMailKW.TabIndex = 57 - ' 'Label7 ' Me.Label7.AutoSize = True @@ -767,19 +755,6 @@ Partial Class frmEssensbestellungenAdministration Me.Label7.TabIndex = 56 Me.Label7.Text = "Kalenderwoche" ' - 'cbxMailGebäude - ' - Me.cbxMailGebäude._allowedValuesFreiText = Nothing - Me.cbxMailGebäude._allowFreiText = True - Me.cbxMailGebäude._value = "" - Me.cbxMailGebäude.DropDownWidth = 250 - Me.cbxMailGebäude.Font = New System.Drawing.Font("Microsoft Tai Le", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.cbxMailGebäude.FormattingEnabled = True - Me.cbxMailGebäude.Location = New System.Drawing.Point(122, 741) - Me.cbxMailGebäude.Name = "cbxMailGebäude" - Me.cbxMailGebäude.Size = New System.Drawing.Size(80, 22) - Me.cbxMailGebäude.TabIndex = 55 - ' 'Label8 ' Me.Label8.AutoSize = True @@ -836,6 +811,69 @@ Partial Class frmEssensbestellungenAdministration Me.Label9.Text = "Gesamtbetrag" Me.Label9.TextAlign = System.Drawing.ContentAlignment.TopRight ' + 'cbxMailKW + ' + Me.cbxMailKW._allowedValuesFreiText = Nothing + Me.cbxMailKW._allowFreiText = False + Me.cbxMailKW._value = "" + Me.cbxMailKW.DropDownWidth = 100 + Me.cbxMailKW.Font = New System.Drawing.Font("Microsoft Tai Le", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.cbxMailKW.FormattingEnabled = True + Me.cbxMailKW.Location = New System.Drawing.Point(14, 741) + Me.cbxMailKW.Name = "cbxMailKW" + Me.cbxMailKW.Size = New System.Drawing.Size(91, 22) + Me.cbxMailKW.TabIndex = 57 + ' + 'cbxMailGebäude + ' + Me.cbxMailGebäude._allowedValuesFreiText = Nothing + Me.cbxMailGebäude._allowFreiText = True + Me.cbxMailGebäude._value = "" + Me.cbxMailGebäude.DropDownWidth = 250 + Me.cbxMailGebäude.Font = New System.Drawing.Font("Microsoft Tai Le", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.cbxMailGebäude.FormattingEnabled = True + Me.cbxMailGebäude.Location = New System.Drawing.Point(122, 741) + Me.cbxMailGebäude.Name = "cbxMailGebäude" + Me.cbxMailGebäude.Size = New System.Drawing.Size(80, 22) + Me.cbxMailGebäude.TabIndex = 55 + ' + 'txtSumme + ' + Me.txtSumme._DateTimeOnly = False + Me.txtSumme._numbersOnly = False + Me.txtSumme._numbersOnlyKommastellen = "" + Me.txtSumme._numbersOnlyTrennzeichen = False + Me.txtSumme._Prozent = False + Me.txtSumme._ShortDateNew = False + Me.txtSumme._ShortDateOnly = False + Me.txtSumme._TimeOnly = False + Me.txtSumme._TimeOnly_Seconds = False + Me.txtSumme._value = "" + Me.txtSumme._Waehrung = True + Me.txtSumme._WaehrungZeichen = True + Me.txtSumme.ForeColor = System.Drawing.Color.Black + Me.txtSumme.Location = New System.Drawing.Point(1130, 744) + Me.txtSumme.MaxLineLength = -1 + Me.txtSumme.MaxLines_Warning = "" + Me.txtSumme.MaxLines_Warning_Label = Nothing + Me.txtSumme.Name = "txtSumme" + Me.txtSumme.ReadOnly = True + Me.txtSumme.Size = New System.Drawing.Size(100, 20) + Me.txtSumme.TabIndex = 47 + Me.txtSumme.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'dgvBestellungen + ' + Me.dgvBestellungen.AKTUALISIERUNGS_INTERVALL = -1 + Me.dgvBestellungen.AllowUserToAddRows = False + Me.dgvBestellungen.AllowUserToDeleteRows = False + Me.dgvBestellungen.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.dgvBestellungen.ContextMenuStrip = Me.ContextMenuStrip1 + Me.dgvBestellungen.Location = New System.Drawing.Point(0, 161) + Me.dgvBestellungen.Name = "dgvBestellungen" + Me.dgvBestellungen.Size = New System.Drawing.Size(1242, 560) + Me.dgvBestellungen.TabIndex = 43 + ' 'frmEssensbestellungenAdministration ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -930,4 +968,6 @@ Partial Class frmEssensbestellungenAdministration Friend WithEvents ExportToolStripMenuItem As ToolStripMenuItem Friend WithEvents ExcelToolStripMenuItem As ToolStripMenuItem Friend WithEvents cbxCurrenyear As CheckBox + Friend WithEvents Button3 As Button + Friend WithEvents txtarchivieren As VERAG_PROG_ALLGEMEIN.MyTextBox End Class diff --git a/SDL/frmEssensbestellungenAdministration.vb b/SDL/frmEssensbestellungenAdministration.vb index af538765..5cc3dbca 100644 --- a/SDL/frmEssensbestellungenAdministration.vb +++ b/SDL/frmEssensbestellungenAdministration.vb @@ -22,16 +22,16 @@ Public Class frmEssensbestellungenAdministration cbxStornos.Checked = False cbxAbgerechnet.Checked = False - cboGebaeude.fillWithSQL("SELECT DISTINCT(eb_gebaeude) FROM [tblEssensbestellungen]", False, "AVISO", True) + cboGebaeude.fillWithSQL("SELECT DISTINCT(eb_gebaeude) FROM [tblEssensbestellungen] where eb_archiviert = 0", False, "AVISO", True) cboGebaeude.changeItem("") - cboAbteilung.fillWithSQL("SELECT DISTINCT(eb_abteilung) FROM [tblEssensbestellungen]", False, "AVISO", True) + cboAbteilung.fillWithSQL("SELECT DISTINCT(eb_abteilung) FROM [tblEssensbestellungen] where eb_archiviert = 0", False, "AVISO", True) 'changeYear() - cbKW.fillWithSQL("SELECT DISTINCT(eb_kw) FROM [tblEssensbestellungen] UNION SELECT (REPLACE(MenuTitel,'Wochenkarte ','')) + ' - ' + Convert(varchar, Year(MenuDateVon)) as kwDateNew FROM [tblEBMenu] where MenuDateVon > GETDATE() ORDER BY eb_kw desc", False, "AVISO", True) + cbKW.fillWithSQL("SELECT DISTINCT(eb_kw) FROM [tblEssensbestellungen] where eb_archiviert = 0 UNION SELECT (REPLACE(MenuTitel,'Wochenkarte ','')) + ' - ' + Convert(varchar, Year(MenuDateVon)) as kwDateNew FROM [tblEBMenu] where MenuDateVon > GETDATE() ORDER BY eb_kw desc", False, "AVISO", True) - cbxMailKW.fillWithSQL("SELECT DISTINCT(eb_kw) FROM [tblEssensbestellungen] ORDER BY eb_kw desc", False, "AVISO", True) + cbxMailKW.fillWithSQL("SELECT DISTINCT(eb_kw) FROM [tblEssensbestellungen] where eb_archiviert = 0 ORDER BY eb_kw desc", False, "AVISO", True) cbxMailKW.changeItem("") cbxMailGebäude.changeItem("") @@ -50,7 +50,7 @@ Public Class frmEssensbestellungenAdministration Dim SQLString As String = "SELECT [eb_mitid] , [eb_mitname] ,[eb_firma] , [eb_kw] , [eb_gebaeude],[eb_abteilung],[eb_montag],[eb_dienstag],[eb_mittwoch], [eb_donnerstag] ,[eb_freitag],[eb_datum],[eb_preis], [eb_anmerkung],[eb_storniert],[eb_storniert_am],[eb_abgerechnet],[eb_abgerechnet_am], [eb_gesendet], [eb_gesendet_am] FROM - [tblEssensbestellungen] WHERE 1=1" + [tblEssensbestellungen] WHERE 1=1 " SQLString &= IIf(cAllgemein.MITARBEITER.getFirma = "UNISPED", " And eb_firma = '" & cAllgemein.MITARBEITER.getFirma & "'", "") 'UNISPED-Bestellungen! @@ -951,6 +951,42 @@ Public Class frmEssensbestellungenAdministration End Sub + Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click + If txtarchivieren.Text <> "" AndAlso IsNumeric(txtarchivieren.Text) AndAlso txtarchivieren.TextLength = 4 Then + + Try + Dim year = CInt(txtarchivieren.Text) + Dim bottomYear = 2022 + Dim currentYear = CInt(DateTime.Now().Year) + If Not (2022 <= year AndAlso year < currentYear) Then + MsgBox("Es können nur Bestellungen zwischen " & bottomYear & " und " & currentYear - 1 & " archiviert werden!") + Else + If vbYes = MsgBox("Möchten Sie alle Bestellungen aus dem Jahr " & year & " archivieren?" & vbNewLine & "Die Bestellungen aus diesem Jahr werden dann ausgeblendet!", vbYesNoCancel) Then + If SQL.doSQL("UPDATE [tblEssensbestellungen] SET eb_archiviert=1 WHERE Year(eb_datum) = '" & year & "'", "AVISO") Then + MsgBox("Archivierung erfolgreich durchgeführt!") + txtarchivieren.Text = "" + loadBestellungen() + End If + End If + End If + + + + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + + End If + End Sub + + Private Sub txtarchivieren_TextChanged(sender As Object, e As EventArgs) Handles txtarchivieren.TextChanged + If txtarchivieren.Text <> "" AndAlso IsNumeric(txtarchivieren.Text) AndAlso txtarchivieren.TextLength = 4 Then + Button3.Enabled = True + End If + End Sub + + + 'Private Sub cbxCurrenyear_CheckedChanged(sender As Object, e As EventArgs) Handles cbxCurrenyear.CheckedChanged ' changeYear() 'End Sub diff --git a/SDL/frmdynMailvorlage.vb b/SDL/frmdynMailvorlage.vb index e11e54dd..358c3ab4 100644 --- a/SDL/frmdynMailvorlage.vb +++ b/SDL/frmdynMailvorlage.vb @@ -38,6 +38,7 @@ Public Class frmdynMailvorlage cbxFirma.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA) cbxFirma.Enabled = editall + btnDelete.Enabled = editall initDGVMailvorlagen(cbxFirma._value,, cbxSpracheSelected._value) @@ -91,7 +92,7 @@ Public Class frmdynMailvorlage .Columns("txt_FIRMA").Width = 150 .Columns("txt_letzteAenderung").HeaderText = "letzte Änderung" .Columns("txt_letzteAenderung").Width = 100 - .Columns("txt_letzteAenderungUser").HeaderText = "User" + .Columns("txt_letzteAenderungUser").HeaderText = "letzte Änderung durch" .Columns("txt_letzteAenderungUser").Width = 75 End With @@ -270,15 +271,25 @@ Public Class frmdynMailvorlage lblWarning.Text = "" Return True - Else + ElseIf cbxSpracheSelected._value = "" Then + If ((dgvMailvorlagen.SelectedRows(0).Cells("txt_sprache").Value Is DBNull.Value Or dgvMailvorlagen.SelectedRows(0).Cells("txt_sprache").Value Is Nothing Or dgvMailvorlagen.SelectedRows(0).Cells("txt_sprache").Value = "") Or initialSave = True) Then 'And initialSave = False ??? - lblWarning.Text = "" - Return True + If setWarning Then + lblWarning.Text = "Bitte Sprache auswählen!" + Else + lblWarning.Text = "" + End If + + Return False + End If + + lblWarning.Text = "" + Return True - End If + End If - Return False + Return True End Function diff --git a/VERAG_PROG_ALLGEMEIN/Classes/Essensbestellung.vb b/VERAG_PROG_ALLGEMEIN/Classes/Essensbestellung.vb index b4146468..34422e96 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/Essensbestellung.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/Essensbestellung.vb @@ -24,6 +24,7 @@ Public Class cEssensbestellung Property eb_gesendet_am As Object = Nothing Property eb_gesendet As Boolean Property eb_firma As Object = Nothing + Property eb_archiviert As Boolean Public hasEntry = False @@ -74,6 +75,7 @@ Public Class cEssensbestellung list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_gesendet", eb_gesendet)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_gesendet_am", eb_gesendet_am)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_firma", eb_firma)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_archiviert", eb_archiviert)) Return list