From 493c8d5c5f03e34c1a60432c17798d238af60847 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 18 Jun 2025 11:50:35 +0200 Subject: [PATCH] fix Sammelrechnug --- SDL/Fakturierung/frmFaktEmail.vb | 6 +- SDL/Fakturierung/usrCntlFaktAbrechnung.vb | 8 +-- SDL/My Project/AssemblyInfo.vb | 4 +- SDL/mdm/frmMDMDatenverarbetiung.vb | 2 +- .../usrCntlFakturierung.Designer.vb | 61 ++++++++++++------- SDL/seriendruck/usrCntlFakturierung.vb | 24 +++++--- 6 files changed, 62 insertions(+), 43 deletions(-) diff --git a/SDL/Fakturierung/frmFaktEmail.vb b/SDL/Fakturierung/frmFaktEmail.vb index 117d749e..1c996495 100644 --- a/SDL/Fakturierung/frmFaktEmail.vb +++ b/SDL/Fakturierung/frmFaktEmail.vb @@ -329,7 +329,7 @@ Public Class frmFaktEmail Dim TextHTML = "" If SammelrechungArt <> 6 Then - If RECHNUNG.Firma_ID <> 19 Then + If Firma_ID <> 19 Then Select Case RechnungsLandKz Case "TR" @@ -352,7 +352,7 @@ Public Class frmFaktEmail Else Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL - Dim listOfTextconserven As cTextkonserve_LIST = New cTextkonserve_LIST(1, "", RECHNUNG.Firma_ID) + Dim listOfTextconserven As cTextkonserve_LIST = New cTextkonserve_LIST(1, "", Firma_ID) Dim mailText As String = "" Dim spracheRechnung As String = "EN" 'Defaultsprache @@ -379,7 +379,7 @@ Public Class frmFaktEmail Dim KUNDE_ERW As New cKundenErweitert(KdNr) - If RECHNUNG.FilialenNr = 4817 And RECHNUNG.Firma_ID = 19 AndAlso RECHNUNG.ErfassungsNr IsNot Nothing Then + If RECHNUNG.FilialenNr = 4817 And Firma_ID = 19 AndAlso RECHNUNG.ErfassungsNr IsNot Nothing Then Dim SPEDBUCH = New VERAG_PROG_ALLGEMEIN.cSpeditionsbuch(RECHNUNG.FilialenNr, RECHNUNG.AbfertigungsNr, RECHNUNG.UnterNr) If SPEDBUCH.hasEntry AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115) Then Dim USTV_ANTRAG As New cUSTVAntrag(RECHNUNG.ErfassungsNr) diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb index f0d3a53f..0a14c57a 100644 --- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb +++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb @@ -3052,21 +3052,19 @@ Public Class usrCntlFaktAbrechnung End Sub Shared Sub setFixeTaxeMin(ByRef RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang, ByRef minBetrag As Double, fixeTaxe As Double) Dim FixeTaxe_Berechnungbetrag As Double = 0 - ' Bei Leistungs-Nr 440 und Berechnungs-Code-Nr 9 wird Fixe Taxe berechnet. - - If Not leistungExistsInPos(RECHNUNG, 440, 9) Then Exit Sub 'Schauen, ob die Leistung in den Positionen vorhanden ist + If Not leistungExistsInPos(RECHNUNG, 441, 9) Then Exit Sub 'Schauen, ob die Leistung in den Positionen vorhanden ist If (RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag) >= minBetrag Then Exit Sub If fixeTaxe <= 0 Then Exit Sub 'Sucht, ob Fixetaxe schon vorhanden ist,... - Dim FixeTaxePOS = RECHNUNG.POSITIONEN.Find(Function(x) x.LeistungsNr = 440 And x.LeistungsBez = "Fixe Taxe" And x.BerechnungsartNr = 9) + Dim FixeTaxePOS = RECHNUNG.POSITIONEN.Find(Function(x) x.LeistungsNr = 441 And x.LeistungsBez = "Fixe Taxe" And x.BerechnungsartNr = 9) '... sonst wird eine neue Pos eingefügt... If FixeTaxePOS Is Nothing Then FixeTaxePOS = New VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen - FixeTaxePOS.LeistungsNr = 440 + FixeTaxePOS.LeistungsNr = 441 '441 und nicht 440 laut Brigitte weil Steuerfrei!! FixeTaxePOS.LeistungsBez = "Fixe Taxe" FixeTaxePOS.BerechnungsartNr = 9 RECHNUNG.POSITIONEN.Add(FixeTaxePOS) diff --git a/SDL/My Project/AssemblyInfo.vb b/SDL/My Project/AssemblyInfo.vb index afa80f5c..42ead457 100644 --- a/SDL/My Project/AssemblyInfo.vb +++ b/SDL/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/SDL/mdm/frmMDMDatenverarbetiung.vb b/SDL/mdm/frmMDMDatenverarbetiung.vb index f862739b..8c7bad99 100644 --- a/SDL/mdm/frmMDMDatenverarbetiung.vb +++ b/SDL/mdm/frmMDMDatenverarbetiung.vb @@ -3621,7 +3621,7 @@ Public Class frmMDMDatenverarbetiung Call usrCntlFaktAbrechnung.przFixeTaxe(RG) ' Fixe Taxe errechnen Call usrCntlFaktAbrechnung.przPP(RG) ' Porto/Papiere errechnen Call usrCntlFaktAbrechnung.przBS415(RG) ' Bankspesen errechnen - Call usrCntlFaktAbrechnung.setFixeTaxeMin(RG, 500, 20) ' Fixe Taxe errechnen + Call usrCntlFaktAbrechnung.setFixeTaxeMin(RG, 500, 20) ' Fixe Taxe 441 errechnen RE = RG diff --git a/SDL/seriendruck/usrCntlFakturierung.Designer.vb b/SDL/seriendruck/usrCntlFakturierung.Designer.vb index 3a0d79a5..f2d543ae 100644 --- a/SDL/seriendruck/usrCntlFakturierung.Designer.vb +++ b/SDL/seriendruck/usrCntlFakturierung.Designer.vb @@ -46,6 +46,9 @@ Partial Class usrcntlFakturierung Me.Button18 = New System.Windows.Forms.Button() Me.Label44 = New System.Windows.Forms.Label() Me.GBSammelrechnung = New System.Windows.Forms.GroupBox() + Me.btnFixeTaxe = New System.Windows.Forms.Button() + Me.Label11 = New System.Windows.Forms.Label() + Me.PictureBox6 = New System.Windows.Forms.PictureBox() Me.lblAnzRE = New System.Windows.Forms.Label() Me.Label10 = New System.Windows.Forms.Label() Me.Label9 = New System.Windows.Forms.Label() @@ -96,12 +99,11 @@ Partial Class usrcntlFakturierung Me.btnRePos = New System.Windows.Forms.Button() Me.Validation1 = New SDL.EORI.validation() Me.btnWikiStatusmails = New System.Windows.Forms.Button() - Me.PictureBox6 = New System.Windows.Forms.PictureBox() - Me.Label11 = New System.Windows.Forms.Label() Me.GroupBox1.SuspendLayout() Me.GBMautberichte.SuspendLayout() CType(Me.MyDatagridview1, System.ComponentModel.ISupportInitialize).BeginInit() Me.GBSammelrechnung.SuspendLayout() + CType(Me.PictureBox6, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBox10, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBox9, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBox8, System.ComponentModel.ISupportInitialize).BeginInit() @@ -111,7 +113,6 @@ Partial Class usrcntlFakturierung CType(Me.PictureBox3, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.PictureBox6, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'GroupBox1 @@ -342,6 +343,7 @@ Partial Class usrcntlFakturierung ' 'GBSammelrechnung ' + Me.GBSammelrechnung.Controls.Add(Me.btnFixeTaxe) Me.GBSammelrechnung.Controls.Add(Me.Label11) Me.GBSammelrechnung.Controls.Add(Me.PictureBox6) Me.GBSammelrechnung.Controls.Add(Me.lblAnzRE) @@ -399,6 +401,37 @@ Partial Class usrcntlFakturierung Me.GBSammelrechnung.TabIndex = 14 Me.GBSammelrechnung.TabStop = False ' + 'btnFixeTaxe + ' + Me.btnFixeTaxe.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnFixeTaxe.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.btnFixeTaxe.Location = New System.Drawing.Point(744, 185) + Me.btnFixeTaxe.Name = "btnFixeTaxe" + Me.btnFixeTaxe.Size = New System.Drawing.Size(107, 32) + Me.btnFixeTaxe.TabIndex = 126 + Me.btnFixeTaxe.Text = "FT berechnen" + Me.btnFixeTaxe.UseVisualStyleBackColor = True + Me.btnFixeTaxe.Visible = False + ' + 'Label11 + ' + Me.Label11.Location = New System.Drawing.Point(168, 156) + Me.Label11.Name = "Label11" + Me.Label11.Size = New System.Drawing.Size(440, 17) + Me.Label11.TabIndex = 125 + Me.Label11.Text = "6. Fixe Taxe 20€ (bei Belegsumme < 500) berechnen" + ' + 'PictureBox6 + ' + Me.PictureBox6.BackgroundImage = CType(resources.GetObject("PictureBox6.BackgroundImage"), System.Drawing.Image) + Me.PictureBox6.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox6.Location = New System.Drawing.Point(148, 157) + Me.PictureBox6.Name = "PictureBox6" + Me.PictureBox6.Size = New System.Drawing.Size(14, 14) + Me.PictureBox6.TabIndex = 124 + Me.PictureBox6.TabStop = False + Me.PictureBox6.Visible = False + ' 'lblAnzRE ' Me.lblAnzRE.AutoSize = True @@ -909,25 +942,6 @@ Partial Class usrcntlFakturierung Me.btnWikiStatusmails.TabIndex = 72 Me.btnWikiStatusmails.UseVisualStyleBackColor = True ' - 'PictureBox6 - ' - Me.PictureBox6.BackgroundImage = CType(resources.GetObject("PictureBox6.BackgroundImage"), System.Drawing.Image) - Me.PictureBox6.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom - Me.PictureBox6.Location = New System.Drawing.Point(148, 157) - Me.PictureBox6.Name = "PictureBox6" - Me.PictureBox6.Size = New System.Drawing.Size(14, 14) - Me.PictureBox6.TabIndex = 124 - Me.PictureBox6.TabStop = False - Me.PictureBox6.Visible = False - ' - 'Label11 - ' - Me.Label11.Location = New System.Drawing.Point(168, 156) - Me.Label11.Name = "Label11" - Me.Label11.Size = New System.Drawing.Size(440, 17) - Me.Label11.TabIndex = 125 - Me.Label11.Text = "6. Fixe Taxe" - ' 'usrcntlFakturierung ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -948,6 +962,7 @@ Partial Class usrcntlFakturierung CType(Me.MyDatagridview1, System.ComponentModel.ISupportInitialize).EndInit() Me.GBSammelrechnung.ResumeLayout(False) Me.GBSammelrechnung.PerformLayout() + CType(Me.PictureBox6, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBox10, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBox9, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBox8, System.ComponentModel.ISupportInitialize).EndInit() @@ -957,7 +972,6 @@ Partial Class usrcntlFakturierung CType(Me.PictureBox3, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.PictureBox6, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) Me.PerformLayout() @@ -1036,4 +1050,5 @@ Partial Class usrcntlFakturierung Friend WithEvents Label10 As Label Friend WithEvents Label11 As Label Friend WithEvents PictureBox6 As PictureBox + Friend WithEvents btnFixeTaxe As Button End Class diff --git a/SDL/seriendruck/usrCntlFakturierung.vb b/SDL/seriendruck/usrCntlFakturierung.vb index df796bb7..3617f02a 100644 --- a/SDL/seriendruck/usrCntlFakturierung.vb +++ b/SDL/seriendruck/usrCntlFakturierung.vb @@ -325,8 +325,8 @@ Public Class usrcntlFakturierung Rechnungsausgang.Währungscode, isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %], cast(Rechnungsausgang.Lastschrift as bit) as Lastschrift, - SUM(CASE WHEN LeistungsNr = 440 and LeistungsBez <> 'Fixe Taxe' THEN Anzahl ELSE 0 END) AS AnzahlPP, - SUM(CASE WHEN LeistungsNr = 440 and LeistungsBez = 'Fixe Taxe' THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivPP + SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) AS AnzahlPP, + SUM(CASE WHEN LeistungsNr = 440 THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivPP FROM Rechnungsausgang INNER JOIN @@ -348,7 +348,7 @@ Public Class usrcntlFakturierung Rechnungsausgang.[Steuersatz %], Rechnungsausgang.Lastschrift HAVING - SUM(CASE WHEN LeistungsNr = 440 and LeistungsBez <> 'Fixe Taxe' THEN Anzahl ELSE 0 END) > 0 + SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) > 0 ORDER BY Rechnungsausgang.Firma_ID, Rechnungsausgang.Status, @@ -426,7 +426,7 @@ Public Class usrcntlFakturierung - Dim dtREPOSANZ As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing], Anzahl, SteuerpflichtigerBetrag, SteuerfreierBetrag,upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 440 and And RechnungsausgangPositionen.LeistungsBez <> 'Fixe Taxe'", "FMZOLL") + Dim dtREPOSANZ As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing], Anzahl, SteuerpflichtigerBetrag, SteuerfreierBetrag,upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 440", "FMZOLL") If dtREPOSANZ.Rows.Count > 0 Then @@ -497,8 +497,8 @@ Public Class usrcntlFakturierung Rechnungsausgang.Währungscode, isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %], cast(Rechnungsausgang.Lastschrift as bit) as Lastschrift, - SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) AS AnzahlFT, - SUM(CASE WHEN LeistungsNr = 440 THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivFT + SUM(CASE WHEN LeistungsNr = 441 THEN Anzahl ELSE 0 END) AS AnzahlFT, + SUM(CASE WHEN LeistungsNr = 441 THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivFT FROM Rechnungsausgang INNER JOIN @@ -520,7 +520,7 @@ Public Class usrcntlFakturierung Rechnungsausgang.[Steuersatz %], Rechnungsausgang.Lastschrift HAVING - SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) > 0 + SUM(CASE WHEN LeistungsNr = 441 THEN Anzahl ELSE 0 END) > 0 ORDER BY Rechnungsausgang.Firma_ID, Rechnungsausgang.Status, @@ -598,7 +598,7 @@ Public Class usrcntlFakturierung - Dim dtREPOSANZ As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing], Anzahl, SteuerpflichtigerBetrag, SteuerfreierBetrag,upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 440 and RechnungsausgangPositionen.LeistungsBez= 'Fixe Taxe'", "FMZOLL") + Dim dtREPOSANZ As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing], Anzahl, SteuerpflichtigerBetrag, SteuerfreierBetrag,upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 441", "FMZOLL") If dtREPOSANZ.Rows.Count > 0 Then @@ -1920,7 +1920,7 @@ Public Class usrcntlFakturierung End Sub - Private Sub Button2_Click_1(sender As Object, e As EventArgs) Handles Button2.Click, Button3.Click, btnREJdruck.Click, btnAbfdruck.Click + Private Sub Button2_Click_1(sender As Object, e As EventArgs) Handles Button2.Click, Button3.Click, btnREJdruck.Click, btnAbfdruck.Click, btnFixeTaxe.Click Dim Sachbearbeiter = cboSachbearbeiter._value Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text) @@ -1970,6 +1970,10 @@ Public Class usrcntlFakturierung AbfVerbotExcel(Sachbearbeiter, rechnungsdatum, kdNr) + Case "btnFixeTaxe" + + showPic(FixeTaxe(Sachbearbeiter, rechnungsdatum, kdNr), PictureBox6) + End Select @@ -2183,4 +2187,6 @@ Public Class usrcntlFakturierung Dim webAddress As String = "https://wiki.verag.ag/software/sdl/sammelrechnung" Process.Start(webAddress) End Sub + + End Class