From fde2dce69e3327f48eab96a80df65013f24ec9fe Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Fri, 26 Sep 2025 17:14:08 +0200 Subject: [PATCH] timas, Rechnungausgang, etc. --- SDL/frmMain.vb | 30 +++- .../Classes/cRechnungsausgang.vb | 2 +- .../Schnittstellen/TIMAS/cTimasAPI.vb | 2 +- .../VERAG_PROG_ALLGEMEIN.vbproj | 9 ++ .../frmTimasabfrage.Designer.vb | 142 ++++++++++++++++++ VERAG_PROG_ALLGEMEIN/frmTimasabfrage.resx | 120 +++++++++++++++ VERAG_PROG_ALLGEMEIN/frmTimasabfrage.vb | 38 +++++ 7 files changed, 335 insertions(+), 8 deletions(-) create mode 100644 VERAG_PROG_ALLGEMEIN/frmTimasabfrage.Designer.vb create mode 100644 VERAG_PROG_ALLGEMEIN/frmTimasabfrage.resx create mode 100644 VERAG_PROG_ALLGEMEIN/frmTimasabfrage.vb diff --git a/SDL/frmMain.vb b/SDL/frmMain.vb index 108de584..70a95bca 100644 --- a/SDL/frmMain.vb +++ b/SDL/frmMain.vb @@ -151,23 +151,41 @@ Public Class frmMain Dim isEndpointRunning As Boolean = True timas.getTimeEntries(cAllgemein.MITARBEITER.mit_timasId, infoMessage, timeEntryExisting,, isEndpointRunning) If Not timeEntryExisting AndAlso isEndpointRunning Then - Dim a As MsgBoxResult = MsgBox("Für " & VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME & " wurde heute noch keine Zeit erfasst" & vbNewLine & Now.ToString() & " als Startzeit erfassen?", vbYesNo) - If a = vbYes Then + Dim frm As New frmTimasabfrage(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER) + frm.TopMost = True + frm.ShowDialog() + + If frm.DialogResult = DialogResult.OK Then If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_timasMehrereFirmen Then Dim f As New frmZEButtons("in", VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_timasFirmen) f.ShowDialog() - f.BringToFront() + f.TopMost = True Else Dim info - timas.setTimeEntry(cAllgemein.MITARBEITER, Now, info, "in", IIf(cAllgemein.MITARBEITER.mit_homeoffice, 3, 0)) + timas.setTimeEntry(cAllgemein.MITARBEITER, Now, info, "in", frm.cboTyp._value) MsgBox(info) End If - Else - End If + 'Dim a As MsgBoxResult = MsgBox("Für " & VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME & " wurde heute noch keine Zeit erfasst" & vbNewLine & Now.ToString() & " als Startzeit erfassen?", vbYesNo) + 'If a = vbYes Then + + ' If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_timasMehrereFirmen Then + ' Dim f As New frmZEButtons("in", VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_timasFirmen) + ' f.ShowDialog() + ' f.BringToFront() + ' Else + ' Dim info + ' timas.setTimeEntry(cAllgemein.MITARBEITER, Now, info, "in", IIf(cAllgemein.MITARBEITER.mit_homeoffice, 3, 0)) + ' MsgBox(info) + ' End If + + 'Else + + 'End If + End If End If diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb b/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb index da6ad4d4..cc3a2a59 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb @@ -557,7 +557,7 @@ Public Class cRechnungsausgang If FIRMA.Firma_ID = 19 Then Select Case Me.BelegartenKz - Case "AR" : If (Me.SteuerfreierGesamtbetrag + Me.SteuerpflichtigerGesamtbetrag) > 0 Then errMsg = "ERROR: Vorzeichenfehler!" : Return False + Case "AR" : If (Me.SteuerfreierGesamtbetrag + Me.SteuerpflichtigerGesamtbetrag) < 0 Then errMsg = "ERROR: Vorzeichenfehler!" : Return False Case "AG" : If (Me.SteuerfreierGesamtbetrag + Me.SteuerpflichtigerGesamtbetrag) < 0 Then errMsg = "ERROR: Vorzeichenfehler!" : Return False End Select End If diff --git a/VERAG_PROG_ALLGEMEIN/Schnittstellen/TIMAS/cTimasAPI.vb b/VERAG_PROG_ALLGEMEIN/Schnittstellen/TIMAS/cTimasAPI.vb index b0f3516a..4a01cfe5 100644 --- a/VERAG_PROG_ALLGEMEIN/Schnittstellen/TIMAS/cTimasAPI.vb +++ b/VERAG_PROG_ALLGEMEIN/Schnittstellen/TIMAS/cTimasAPI.vb @@ -934,7 +934,7 @@ Public Class cTimasAPI Select Case inout Case "in" - entryType = "KOMMT" + entryType = "KOMMT" & IIf(art = 0, "(Büro)", "") & IIf(art = 3, "(Homeoffice)", "") Case "out" entryType = "GEHT" diff --git a/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj b/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj index c59c1cdb..d31def16 100644 --- a/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj +++ b/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj @@ -386,6 +386,12 @@ + + frmTimasabfrage.vb + + + Form + frmDatumsabfrage.vb @@ -808,6 +814,9 @@ frmVorlagenUpload.vb + + frmTimasabfrage.vb + frmDatumsabfrage.vb diff --git a/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.Designer.vb b/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.Designer.vb new file mode 100644 index 00000000..d66262d8 --- /dev/null +++ b/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.Designer.vb @@ -0,0 +1,142 @@ +Imports System.Windows.Forms + + +Partial Class frmTimasabfrage + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Me.MyPanel1 = New VERAG_PROG_ALLGEMEIN.MyPanel(Me.components) + Me.Button1 = New System.Windows.Forms.Button() + Me.cboTyp = New VERAG_PROG_ALLGEMEIN.MyComboBox() + Me.btnClose = New System.Windows.Forms.Button() + Me.btn = New System.Windows.Forms.Button() + Me.Label1 = New System.Windows.Forms.Label() + Me.MyPanel1.SuspendLayout() + Me.SuspendLayout() + ' + 'MyPanel1 + ' + Me.MyPanel1.BackColor = System.Drawing.Color.White + Me.MyPanel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.MyPanel1.Controls.Add(Me.Button1) + Me.MyPanel1.Controls.Add(Me.cboTyp) + Me.MyPanel1.Controls.Add(Me.btnClose) + Me.MyPanel1.Controls.Add(Me.btn) + Me.MyPanel1.Controls.Add(Me.Label1) + Me.MyPanel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.MyPanel1.Location = New System.Drawing.Point(0, 0) + Me.MyPanel1.Name = "MyPanel1" + Me.MyPanel1.Size = New System.Drawing.Size(264, 84) + Me.MyPanel1.TabIndex = 3 + ' + 'Button1 + ' + Me.Button1.DialogResult = System.Windows.Forms.DialogResult.OK + Me.Button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.Button1.Font = New System.Drawing.Font("Microsoft Sans Serif", 7.0!) + Me.Button1.Location = New System.Drawing.Point(6, 52) + Me.Button1.Margin = New System.Windows.Forms.Padding(0) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(57, 22) + Me.Button1.TabIndex = 7 + Me.Button1.Text = "OK" + Me.Button1.UseVisualStyleBackColor = True + ' + 'cboTyp + ' + Me.cboTyp._allowedValuesFreiText = Nothing + Me.cboTyp._allowFreiText = False + Me.cboTyp._value = "" + Me.cboTyp.BackColor = System.Drawing.Color.FromArgb(CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer)) + Me.cboTyp.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.cboTyp.DropDownWidth = 224 + Me.cboTyp.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.cboTyp.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.cboTyp.FormattingEnabled = True + Me.cboTyp.Items.AddRange(New Object() {"", "100000-199999: XXXXXX", "200000-299999: XXXXXX", "300000-399999: XXXXXX", "400000-499999: XXXXXX", "500000-599999: XXXXXX", "600000-699999: XXXXXX", "700000-799999: XXXXXX", "800000-899999: XXXXXX", "900000-999999: XXXXXX"}) + Me.cboTyp.Location = New System.Drawing.Point(79, 23) + Me.cboTyp.Name = "cboTyp" + Me.cboTyp.Size = New System.Drawing.Size(84, 28) + Me.cboTyp.TabIndex = 4 + ' + 'btnClose + ' + Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnClose.BackColor = System.Drawing.Color.Red + Me.btnClose.FlatAppearance.BorderColor = System.Drawing.Color.White + Me.btnClose.FlatAppearance.BorderSize = 0 + Me.btnClose.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnClose.Font = New System.Drawing.Font("Microsoft Sans Serif", 7.0!, System.Drawing.FontStyle.Bold) + Me.btnClose.ForeColor = System.Drawing.Color.White + Me.btnClose.Location = New System.Drawing.Point(231, 0) + Me.btnClose.Name = "btnClose" + Me.btnClose.RightToLeft = System.Windows.Forms.RightToLeft.Yes + Me.btnClose.Size = New System.Drawing.Size(31, 20) + Me.btnClose.TabIndex = 5 + Me.btnClose.Text = "X" + Me.btnClose.UseVisualStyleBackColor = False + ' + 'btn + ' + Me.btn.DialogResult = System.Windows.Forms.DialogResult.Cancel + Me.btn.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btn.Font = New System.Drawing.Font("Microsoft Sans Serif", 7.0!) + Me.btn.Location = New System.Drawing.Point(178, 52) + Me.btn.Margin = New System.Windows.Forms.Padding(0) + Me.btn.Name = "btn" + Me.btn.Size = New System.Drawing.Size(76, 22) + Me.btn.TabIndex = 2 + Me.btn.Text = "Abbrechen" + Me.btn.UseVisualStyleBackColor = True + ' + 'Label1 + ' + Me.Label1.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label1.ForeColor = System.Drawing.SystemColors.ControlText + Me.Label1.Location = New System.Drawing.Point(3, 2) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(222, 18) + Me.Label1.TabIndex = 6 + ' + 'frmTimasabfrage + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(264, 84) + Me.Controls.Add(Me.MyPanel1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None + Me.Name = "frmTimasabfrage" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "frmDatumsabfrage" + Me.MyPanel1.ResumeLayout(False) + Me.ResumeLayout(False) + + End Sub + + Friend WithEvents MyPanel1 As VERAG_PROG_ALLGEMEIN.MyPanel + Friend WithEvents btnClose As Button + Friend WithEvents btn As Button + Friend WithEvents Label1 As Label + Public WithEvents cboTyp As VERAG_PROG_ALLGEMEIN.MyComboBox + Friend WithEvents Button1 As Button +End Class diff --git a/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.resx b/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.resx new file mode 100644 index 00000000..1af7de15 --- /dev/null +++ b/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.vb b/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.vb new file mode 100644 index 00000000..7663d745 --- /dev/null +++ b/VERAG_PROG_ALLGEMEIN/frmTimasabfrage.vb @@ -0,0 +1,38 @@ +Public Class frmTimasabfrage + Dim mit As VERAG_PROG_ALLGEMEIN.cMitarbeiter + Public Datum As Date = CDate(Now.ToShortDateString) + + Sub New() + ' Dieser Aufruf ist für den Designer erforderlich. + InitializeComponent() + End Sub + + Sub New(mit_ As cMitarbeiter) + ' Dieser Aufruf ist für den Designer erforderlich. + InitializeComponent() + mit = mit_ + End Sub + + + + + Private Sub frmTimasabfrage(sender As Object, e As EventArgs) Handles Me.Load + + cboTyp.Items.Clear() + cboTyp.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Büro", "0")) + cboTyp.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Homeoffice", "3")) + + If mit IsNot Nothing Then + Label1.Text = "Zeit erfassen für: " & mit.mit_nname & " " & mit.mit_vname + If mit.mit_homeoffice Then + cboTyp.changeItem("Homeoffice") + Else + cboTyp.changeItem("Büro") + End If + End If + + + + End Sub + +End Class \ No newline at end of file