MDM, Rechnungen, Abrechnung

This commit is contained in:
2024-09-27 16:01:54 +02:00
parent ba73d87854
commit 7049e6b3b8
4 changed files with 44 additions and 26 deletions

View File

@@ -279,6 +279,7 @@ Partial Class usrCntlFaktAbrechnung
Me.GutschriftAnVeragToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.VeragAGToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.VeragCSToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.lblOFgesperrt = New System.Windows.Forms.Label()
Me.pnlTop.SuspendLayout()
Me.Panel3.SuspendLayout()
Me.Panel1.SuspendLayout()
@@ -2648,6 +2649,7 @@ Partial Class usrCntlFaktAbrechnung
Me.Panel7.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.Panel7.BackColor = System.Drawing.Color.WhiteSmoke
Me.Panel7.Controls.Add(Me.lblOFgesperrt)
Me.Panel7.Controls.Add(Me.picVK)
Me.Panel7.Controls.Add(Me.Button1)
Me.Panel7.Controls.Add(Me.Button12)
@@ -3931,7 +3933,7 @@ Partial Class usrCntlFaktAbrechnung
'
Me.ContextMenuStrip2.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.GutschriftAusRechnungToolStripMenuItem, Me.SeperateRechnungFürEUSTToolStripMenuItem, Me.GutschriftAnVeragToolStripMenuItem})
Me.ContextMenuStrip2.Name = "ContextMenuStrip2"
Me.ContextMenuStrip2.Size = New System.Drawing.Size(224, 92)
Me.ContextMenuStrip2.Size = New System.Drawing.Size(224, 70)
'
'GutschriftAusRechnungToolStripMenuItem
'
@@ -3955,15 +3957,27 @@ Partial Class usrCntlFaktAbrechnung
'VeragAGToolStripMenuItem
'
Me.VeragAGToolStripMenuItem.Name = "VeragAGToolStripMenuItem"
Me.VeragAGToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.VeragAGToolStripMenuItem.Size = New System.Drawing.Size(122, 22)
Me.VeragAGToolStripMenuItem.Text = "Verag AG"
'
'VeragCSToolStripMenuItem
'
Me.VeragCSToolStripMenuItem.Name = "VeragCSToolStripMenuItem"
Me.VeragCSToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.VeragCSToolStripMenuItem.Size = New System.Drawing.Size(122, 22)
Me.VeragCSToolStripMenuItem.Text = "Verag CS"
'
'lblOFgesperrt
'
Me.lblOFgesperrt.AutoSize = True
Me.lblOFgesperrt.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!, System.Drawing.FontStyle.Bold)
Me.lblOFgesperrt.ForeColor = System.Drawing.Color.Red
Me.lblOFgesperrt.Location = New System.Drawing.Point(8, 1)
Me.lblOFgesperrt.Name = "lblOFgesperrt"
Me.lblOFgesperrt.Size = New System.Drawing.Size(73, 13)
Me.lblOFgesperrt.TabIndex = 46
Me.lblOFgesperrt.Text = "OF gesperrt"
Me.lblOFgesperrt.Visible = False
'
'usrCntlFaktAbrechnung
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -4248,4 +4262,5 @@ Partial Class usrCntlFaktAbrechnung
Friend WithEvents GutschriftAnVeragToolStripMenuItem As ToolStripMenuItem
Friend WithEvents VeragAGToolStripMenuItem As ToolStripMenuItem
Friend WithEvents VeragCSToolStripMenuItem As ToolStripMenuItem
Friend WithEvents lblOFgesperrt As Label
End Class

View File

@@ -394,10 +394,19 @@ Public Class usrCntlFaktAbrechnung
dgvOffertenSperrliste.ClearSelection() : r.Cells("OffertenBez").Selected = True : Exit For
End If
Next
'initDGVOfferteDetailsUebersicht(RECHNUNG.kundenn,RECHNUNG.OffertenNr)
'Dann die Werte eintragen:
' MsgBox("G: " & RECHNUNG.POSITIONEN.Count)
Dim vorzeichen = 1 'If(RECHNUNG.Vorzeichen = "-", -1, 1)
If dgvOffertenSperrliste.SelectedRows.Count > 0 Then
If Not IsDBNull(dgvOffertenSperrliste.SelectedRows(0).Cells("Gesperrt").Value) AndAlso dgvOffertenSperrliste.SelectedRows(0).Cells("Gesperrt").Value AndAlso IsDate(dgvOffertenSperrliste.SelectedRows(0).Cells("Gesperrt_Datum").Value) AndAlso dgvOffertenSperrliste.SelectedRows(0).Cells("Gesperrt_Datum").Value >= RECHNUNG.Abfertigungsdatum Then
dgvOfferteDetailsUebersicht.Rows.Clear()
RECHNUNG.POSITIONEN.Clear()
Exit Sub
End If
End If
'initDGVOfferteDetailsUebersicht(RECHNUNG.kundenn,RECHNUNG.OffertenNr)
'Dann die Werte eintragen:
' MsgBox("G: " & RECHNUNG.POSITIONEN.Count)
Dim vorzeichen = 1 'If(RECHNUNG.Vorzeichen = "-", -1, 1)
For Each POS In RECHNUNG.POSITIONEN
Dim found = False
For Each r As DataGridViewRow In dgvOfferteDetailsUebersicht.Rows
@@ -1120,9 +1129,13 @@ Public Class usrCntlFaktAbrechnung
If dgvOffertenSperrliste.SelectedRows(0).Cells("Gesperrt").Value IsNot DBNull.Value Then
If dgvOffertenSperrliste.SelectedRows(0).Cells("Gesperrt").Value Then
dgvOffertenSperrliste.SelectedRows(0).DefaultCellStyle.SelectionForeColor = Color.Red
Else
dgvOffertenSperrliste.SelectedRows(0).DefaultCellStyle.SelectionForeColor = Color.Black
End If
lblOFgesperrt.Visible = dgvOffertenSperrliste.SelectedRows(0).Cells("Gesperrt").Value
Else
lblOFgesperrt.Visible = False
End If
Else
'.Columns..Columns.Clear()
@@ -1168,7 +1181,7 @@ Public Class usrCntlFaktAbrechnung
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" &
" FROM [Offertenpositionen] INNER JOIN [Leistungen] ON leistungen.LeistungsNr=Offertenpositionen.LeistungsNr " &
" WHERE KundenNr='" & kdNr & "' and OffertenNr='" & OffertenNr & "' ORDER BY LeistungsNr ", "FMZOLL")
@@ -4108,10 +4121,11 @@ Nächste_Textzeile_lesen:
If cboSteuerschlüssel._value IsNot Nothing AndAlso IsNumeric(cboSteuerschlüssel._value) Then
Dim check As Integer = cAllgemein.checkSteuerschluessel(cboFirma._value, RECHNUNG.RechnungsLandKz, RECHNUNG.RechnungsUstIdKz, RECHNUNG.RechnungsUstIdNr, RECHNUNG.RechnungsUstIdGeprüft)
Dim daysCheck As Integer = 31
If check >= 0 Then
If IsNumeric(cboSteuerschlüssel._value) AndAlso CInt(cboSteuerschlüssel._value) <> check Then
Dim text = SQL.getValueTxtBySql("select AuswahlSteuerbezeichnung from Steuertabelle where Steuerschlüssel =" & check, "FMZOLL")
Dim hintUIDPruef As String = IIf((RECHNUNG.RechnungsUstIdGeprüft IsNot Nothing AndAlso CDate(RECHNUNG.RechnungsUstIdGeprüft) < Today.AddDays(-31)), "UID-Prüfung ist älter als 31 Tage!", "")
Dim hintUIDPruef As String = IIf((RECHNUNG.RechnungsUstIdGeprüft IsNot Nothing AndAlso CDate(RECHNUNG.RechnungsUstIdGeprüft) < Today.AddDays(-daysCheck)), "UID-Prüfung ist älter als " & daysCheck & " Tage!", "")
If Not vbYes = MsgBox("Falscher Steuertyp!" & vbNewLine & "Steuerschlüssel " & text & " sollte hinterlegt werden." & vbNewLine & IIf(hintUIDPruef <> "", hintUIDPruef & vbNewLine, "") & "Trotzdem speichern?", vbYesNo) Then
Return False
End If

View File

@@ -2637,26 +2637,9 @@ Public Class frmMDMDatenverarbetiung
Select Case Lieferant
Case "PLOSE" : OffertenNr = 80 : Abfertigungsart = 10 : SPEDBUCH.FilialenNr = 4824
'Dim displayFilter = False
'Dim sqlstr As String = ""
'sqlstr &= " SELECT * "
'sqlstr &= " FROM tblPLOSE_Details INNER JOIN [tblPLOSE_Produktbeschreibung] on plose_ProduktCode=plp_ProductCode "
'sqlstr &= " WHERE 1=1 "
'sqlstr &= " AND plose_Fakturiert=0 "
'sqlstr &= " AND plose_POLSEKundennummer = '" & KdNr & "' "
'sqlstr &= " AND plose_DatumTransaktion between '" & von.ToShortDateString & "' and '" & bis.ToShortDateString & "' "
'' sqlstr &= " group by plose_ProduktCode"
'sqlstr &= " order by plp_Land, plose_DatumTransaktion"
'Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
Case "ASFINAG" : OffertenNr = 11 : Abfertigungsart = 10 : SPEDBUCH.FilialenNr = 4814
Case "UTA" : OffertenNr = 30 : Abfertigungsart = 10 : SPEDBUCH.FilialenNr = 4823
Case "MSE" : OffertenNr = 23 : Abfertigungsart = 10 : SPEDBUCH.FilialenNr = 4821
End Select
SPEDBUCH.AbfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(SPEDBUCH.FilialenNr, Now.Year)

View File

@@ -498,6 +498,8 @@ Public Class cRechnungsausgang
If dgv Is Nothing Then
errMsg = "ERROR: Keine Positionen angegeben!" : Return False
ElseIf dgv.Rows.Count = 0 Then
errMsg = "ERROR: Keine Positionen angegeben!" : Return False
Else
If dgv.Rows.Count > 1 Then
'Prüfung für doppelte Positionen mit PK: Bezeichnung und LeistungNr!
@@ -521,6 +523,8 @@ Public Class cRechnungsausgang
If dgv Is Nothing Then
errMsg = "ERROR: Keine Positionen angegeben!" : Return False
ElseIf dgv.Rows.Count = 0 Then
errMsg = "ERROR: Keine Positionen angegeben!" : Return False
Else
If dgv.Rows.Count > 1 Then
'Prüfung für doppelte Positionen mit PK: Bezeichnung und LeistungNr!
@@ -542,6 +546,8 @@ Public Class cRechnungsausgang
End If
End If
'checkFirmen
Return True