Fakt, antragpos.

This commit is contained in:
2025-01-28 10:19:07 +01:00
parent 604c116b5a
commit 5e4b0604ce
4 changed files with 230 additions and 96 deletions

View File

@@ -1,4 +1,7 @@

Imports System.Web.Configuration
Imports System.Web.UI.WebControls.Expressions
Imports com.sun.imageio.plugins
Imports VERAG_PROG_ALLGEMEIN
Public Class usrCntlFaktAbrechnung
@@ -406,10 +409,10 @@ Public Class usrCntlFaktAbrechnung
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)
'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
@@ -528,6 +531,15 @@ Public Class usrCntlFaktAbrechnung
End If
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("FAKTURIERUNG_VERAGIMEX", "SDL") Then
FirmaTmp = "VERAGIMEX"
End If
If Not IsDBNull(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) AndAlso CInt(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) = 19 Then
FirmaTmp = "VERAG360"
End If
cboVorauskasse.Items.Clear()
cboVorauskasse.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEIN", 0))
cboVorauskasse.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("JA", 1))
@@ -539,7 +551,7 @@ Public Class usrCntlFaktAbrechnung
cboSammelrechnung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("3 monatlich", 3))
cboSammelrechnung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("4 Dekade", 4))
cboSammelrechnung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("5 wöchentlich", 5))
' cboSammelrechnung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("6 Maut/Diesel", 6))
If FirmaTmp = "VERAG360" Then cboSammelrechnung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("6 Maut/Diesel", 6))
cboSammelrechnung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("7 pro LKW", 7))
cboSammelrechnung.changeItem(0)
@@ -554,15 +566,6 @@ Public Class usrCntlFaktAbrechnung
Dim whereFirma = ""
Dim firstEmpty = False
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("FAKTURIERUNG_VERAGIMEX", "SDL") Then
FirmaTmp = "VERAGIMEX"
End If
If Not IsDBNull(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) AndAlso CInt(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) = 19 Then
FirmaTmp = "VERAG360"
End If
'If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
'FirmaTmp = "AMBAR"
'End If
@@ -596,11 +599,12 @@ Public Class usrCntlFaktAbrechnung
Else
whereFirma = " AND FIRMENGRUPPE IN ('VERAG360') " : pnlDocs.Visible = True
End If
End Select
cboFirma.fillWithSQL("SELECT [Firma_ID],[Firma_Bez] FROM [tblFirma] WHERE Firma_ID NOT IN(3) " & whereFirma & " ORDER BY Firma_ID ", True, "FMZOLL", firstEmpty)
cboFirma.SelectedIndex = 0
cboFirma.SelectedIndex = 0
If VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE <> "" And Not VERAG_PROG_ALLGEMEIN.cAllgemein.isCLUSTER And FirmaTmp <> "VERAGIMEX" Then
@@ -1828,6 +1832,8 @@ Public Class usrCntlFaktAbrechnung
pnlTop.BackColor = Color.Teal
Case 20 : pic.BackgroundImage = My.Resources.IMEX_LOGO_simple
pnlTop.BackColor = Color.FromArgb(250, 120, 0) : errCOlor = Color.DarkRed
Case 19 : pic.BackgroundImage = My.Resources.VERAG_360
pnlTop.BackColor = Color.FromArgb(250, 120, 0) : errCOlor = Color.LightBlue
'UNISPED:
Case 21 : pic.BackgroundImage = My.Resources.Unisped_logo
@@ -1883,6 +1889,33 @@ Public Class usrCntlFaktAbrechnung
End If
initRg_Anhaenhe_Default(RECHNUNG, SPEDBUCH)
If Not cboFirma._value = 19 Then
If cboSammelrechnung.Items.Count > 7 Then
For iIndex = 0 To cboSammelrechnung.Items.Count - 1
If cboSammelrechnung.Items(iIndex).value = 6 Then
cboSammelrechnung.Items.RemoveAt(iIndex)
Exit For
End If
Next
End If
Else
If cboSammelrechnung.Items.Count < 8 Then
cboSammelrechnung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("6 Maut/Diesel", 6))
End If
End If
End Sub

View File

@@ -193,10 +193,12 @@ Public Class ustCntlUSTV_AntragPosition
ElseIf sender Is txtUSTBetragEUR Then
If IsNumeric(txtUSTBetragEUR._value) AndAlso IsNumeric(txtUmrechnungskurs._value) Then
txtUSTBetrag.Text = Math.Floor((txtUSTBetragEUR._value * txtUmrechnungskurs._value) * 100 + 0.5) / 100
'values_changed()
End If
'so herum nicht umrechnen!!!!
'If IsNumeric(txtUSTBetragEUR._value) AndAlso IsNumeric(txtUmrechnungskurs._value) Then
' txtUSTBetrag.Text = Math.Floor((txtUSTBetragEUR._value * txtUmrechnungskurs._value) * 100 + 0.5) / 100
' 'values_changed()
'End If
End If

View File

@@ -75,6 +75,7 @@ Partial Class usrcntlFakturierung
Me.Label63 = New System.Windows.Forms.Label()
Me.Label45 = New System.Windows.Forms.Label()
Me.Button14 = New System.Windows.Forms.Button()
Me.Button1 = New System.Windows.Forms.Button()
Me.GroupBox1.SuspendLayout()
Me.GBMautberichte.SuspendLayout()
CType(Me.MyDatagridview1, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -294,7 +295,7 @@ Partial Class usrcntlFakturierung
Me.Label44.AutoSize = True
Me.Label44.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label44.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
Me.Label44.Location = New System.Drawing.Point(11, 329)
Me.Label44.Location = New System.Drawing.Point(11, 340)
Me.Label44.Name = "Label44"
Me.Label44.Size = New System.Drawing.Size(436, 17)
Me.Label44.TabIndex = 15
@@ -302,6 +303,7 @@ Partial Class usrcntlFakturierung
'
'GBSammelrechnung
'
Me.GBSammelrechnung.Controls.Add(Me.Button1)
Me.GBSammelrechnung.Controls.Add(Me.PictureBox6)
Me.GBSammelrechnung.Controls.Add(Me.PictureBox5)
Me.GBSammelrechnung.Controls.Add(Me.PictureBox4)
@@ -333,7 +335,7 @@ Partial Class usrcntlFakturierung
Me.GBSammelrechnung.Controls.Add(Me.Label45)
Me.GBSammelrechnung.Controls.Add(Me.Button14)
Me.GBSammelrechnung.Enabled = False
Me.GBSammelrechnung.Location = New System.Drawing.Point(10, 340)
Me.GBSammelrechnung.Location = New System.Drawing.Point(10, 351)
Me.GBSammelrechnung.Name = "GBSammelrechnung"
Me.GBSammelrechnung.Size = New System.Drawing.Size(697, 393)
Me.GBSammelrechnung.TabIndex = 14
@@ -343,7 +345,7 @@ Partial Class usrcntlFakturierung
'
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(151, 149)
Me.PictureBox6.Location = New System.Drawing.Point(232, 151)
Me.PictureBox6.Name = "PictureBox6"
Me.PictureBox6.Size = New System.Drawing.Size(14, 14)
Me.PictureBox6.TabIndex = 105
@@ -354,7 +356,7 @@ Partial Class usrcntlFakturierung
'
Me.PictureBox5.BackgroundImage = CType(resources.GetObject("PictureBox5.BackgroundImage"), System.Drawing.Image)
Me.PictureBox5.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
Me.PictureBox5.Location = New System.Drawing.Point(151, 132)
Me.PictureBox5.Location = New System.Drawing.Point(232, 134)
Me.PictureBox5.Name = "PictureBox5"
Me.PictureBox5.Size = New System.Drawing.Size(14, 14)
Me.PictureBox5.TabIndex = 104
@@ -365,7 +367,7 @@ Partial Class usrcntlFakturierung
'
Me.PictureBox4.BackgroundImage = CType(resources.GetObject("PictureBox4.BackgroundImage"), System.Drawing.Image)
Me.PictureBox4.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
Me.PictureBox4.Location = New System.Drawing.Point(151, 115)
Me.PictureBox4.Location = New System.Drawing.Point(232, 117)
Me.PictureBox4.Name = "PictureBox4"
Me.PictureBox4.Size = New System.Drawing.Size(14, 14)
Me.PictureBox4.TabIndex = 103
@@ -376,7 +378,7 @@ Partial Class usrcntlFakturierung
'
Me.PictureBox3.BackgroundImage = CType(resources.GetObject("PictureBox3.BackgroundImage"), System.Drawing.Image)
Me.PictureBox3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
Me.PictureBox3.Location = New System.Drawing.Point(151, 98)
Me.PictureBox3.Location = New System.Drawing.Point(232, 100)
Me.PictureBox3.Name = "PictureBox3"
Me.PictureBox3.Size = New System.Drawing.Size(14, 14)
Me.PictureBox3.TabIndex = 102
@@ -387,7 +389,7 @@ Partial Class usrcntlFakturierung
'
Me.PictureBox2.BackgroundImage = CType(resources.GetObject("PictureBox2.BackgroundImage"), System.Drawing.Image)
Me.PictureBox2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
Me.PictureBox2.Location = New System.Drawing.Point(151, 81)
Me.PictureBox2.Location = New System.Drawing.Point(232, 83)
Me.PictureBox2.Name = "PictureBox2"
Me.PictureBox2.Size = New System.Drawing.Size(14, 14)
Me.PictureBox2.TabIndex = 101
@@ -398,7 +400,7 @@ Partial Class usrcntlFakturierung
'
Me.PictureBox1.BackgroundImage = Global.SDL.My.Resources.Resources.ok
Me.PictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
Me.PictureBox1.Location = New System.Drawing.Point(151, 67)
Me.PictureBox1.Location = New System.Drawing.Point(232, 69)
Me.PictureBox1.Name = "PictureBox1"
Me.PictureBox1.Size = New System.Drawing.Size(14, 14)
Me.PictureBox1.TabIndex = 95
@@ -407,9 +409,9 @@ Partial Class usrcntlFakturierung
'
'Label4
'
Me.Label4.Location = New System.Drawing.Point(171, 132)
Me.Label4.Location = New System.Drawing.Point(252, 134)
Me.Label4.Name = "Label4"
Me.Label4.Size = New System.Drawing.Size(541, 17)
Me.Label4.Size = New System.Drawing.Size(440, 17)
Me.Label4.TabIndex = 100
Me.Label4.Text = "5. Banküberweisung/Bankspesen berechnen"
'
@@ -453,7 +455,7 @@ Partial Class usrcntlFakturierung
'
Me.Button20.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button20.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
Me.Button20.Location = New System.Drawing.Point(10, 28)
Me.Button20.Location = New System.Drawing.Point(147, 12)
Me.Button20.Name = "Button20"
Me.Button20.Size = New System.Drawing.Size(121, 49)
Me.Button20.TabIndex = 43
@@ -566,9 +568,9 @@ Partial Class usrcntlFakturierung
'
'Label70
'
Me.Label70.Location = New System.Drawing.Point(171, 149)
Me.Label70.Location = New System.Drawing.Point(252, 151)
Me.Label70.Name = "Label70"
Me.Label70.Size = New System.Drawing.Size(498, 17)
Me.Label70.Size = New System.Drawing.Size(429, 14)
Me.Label70.TabIndex = 30
Me.Label70.Text = "6. Hängt Mautgesamtbericht an Sammenrechnungen an."
'
@@ -578,7 +580,7 @@ Partial Class usrcntlFakturierung
Me.cboSachbearbeiter._allowFreiText = False
Me.cboSachbearbeiter._value = ""
Me.cboSachbearbeiter.FormattingEnabled = True
Me.cboSachbearbeiter.Location = New System.Drawing.Point(243, 36)
Me.cboSachbearbeiter.Location = New System.Drawing.Point(529, 38)
Me.cboSachbearbeiter.Name = "cboSachbearbeiter"
Me.cboSachbearbeiter.Size = New System.Drawing.Size(152, 21)
Me.cboSachbearbeiter.TabIndex = 29
@@ -586,7 +588,7 @@ Partial Class usrcntlFakturierung
'Label67
'
Me.Label67.AutoSize = True
Me.Label67.Location = New System.Drawing.Point(148, 36)
Me.Label67.Location = New System.Drawing.Point(434, 38)
Me.Label67.Name = "Label67"
Me.Label67.Size = New System.Drawing.Size(82, 13)
Me.Label67.TabIndex = 28
@@ -595,7 +597,7 @@ Partial Class usrcntlFakturierung
'dtRechnungsdatum
'
Me.dtRechnungsdatum.Format = System.Windows.Forms.DateTimePickerFormat.[Short]
Me.dtRechnungsdatum.Location = New System.Drawing.Point(292, 10)
Me.dtRechnungsdatum.Location = New System.Drawing.Point(578, 12)
Me.dtRechnungsdatum.Name = "dtRechnungsdatum"
Me.dtRechnungsdatum.Size = New System.Drawing.Size(103, 20)
Me.dtRechnungsdatum.TabIndex = 26
@@ -603,7 +605,7 @@ Partial Class usrcntlFakturierung
'Label66
'
Me.Label66.AutoSize = True
Me.Label66.Location = New System.Drawing.Point(148, 16)
Me.Label66.Location = New System.Drawing.Point(434, 18)
Me.Label66.Name = "Label66"
Me.Label66.Size = New System.Drawing.Size(94, 13)
Me.Label66.TabIndex = 27
@@ -611,34 +613,34 @@ Partial Class usrcntlFakturierung
'
'Label65
'
Me.Label65.Location = New System.Drawing.Point(171, 115)
Me.Label65.Location = New System.Drawing.Point(252, 117)
Me.Label65.Name = "Label65"
Me.Label65.Size = New System.Drawing.Size(541, 17)
Me.Label65.Size = New System.Drawing.Size(440, 17)
Me.Label65.TabIndex = 8
Me.Label65.Text = "4. Porto/Papiere berechnen"
'
'Label64
'
Me.Label64.Location = New System.Drawing.Point(171, 98)
Me.Label64.Location = New System.Drawing.Point(252, 100)
Me.Label64.Name = "Label64"
Me.Label64.Size = New System.Drawing.Size(541, 17)
Me.Label64.Size = New System.Drawing.Size(440, 17)
Me.Label64.TabIndex = 7
Me.Label64.Text = "3. Rechnungstext im RK eintragen"
'
'Label63
'
Me.Label63.Location = New System.Drawing.Point(171, 81)
Me.Label63.Location = New System.Drawing.Point(252, 83)
Me.Label63.Name = "Label63"
Me.Label63.Size = New System.Drawing.Size(541, 17)
Me.Label63.Size = New System.Drawing.Size(440, 17)
Me.Label63.TabIndex = 6
Me.Label63.Text = "2. Rechnung oder Gutschrift im RK eintragen, abhängig vom Sammelrechnungsbetrag (" &
"+/-)"
'
'Label45
'
Me.Label45.Location = New System.Drawing.Point(171, 64)
Me.Label45.Location = New System.Drawing.Point(252, 66)
Me.Label45.Name = "Label45"
Me.Label45.Size = New System.Drawing.Size(530, 17)
Me.Label45.Size = New System.Drawing.Size(224, 17)
Me.Label45.TabIndex = 5
Me.Label45.Text = "1. Einträge auf Sachbearbeiter ändern."
'
@@ -646,13 +648,24 @@ Partial Class usrcntlFakturierung
'
Me.Button14.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button14.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
Me.Button14.Location = New System.Drawing.Point(10, 94)
Me.Button14.Location = New System.Drawing.Point(10, 85)
Me.Button14.Name = "Button14"
Me.Button14.Size = New System.Drawing.Size(121, 49)
Me.Button14.TabIndex = 4
Me.Button14.Text = "Rechnungspos. berechnen"
Me.Button14.UseVisualStyleBackColor = True
'
'Button1
'
Me.Button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button1.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
Me.Button1.Location = New System.Drawing.Point(10, 12)
Me.Button1.Name = "Button1"
Me.Button1.Size = New System.Drawing.Size(121, 49)
Me.Button1.TabIndex = 106
Me.Button1.Text = "Mautanh. prüfen"
Me.Button1.UseVisualStyleBackColor = True
'
'usrcntlFakturierung
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -733,4 +746,5 @@ Partial Class usrcntlFakturierung
Friend WithEvents PictureBox4 As PictureBox
Friend WithEvents PictureBox3 As PictureBox
Friend WithEvents PictureBox2 As PictureBox
Friend WithEvents Button1 As Button
End Class

View File

@@ -93,7 +93,7 @@ Public Class usrcntlFakturierung
If rechnungenMitGesamtmautanhant <> "" Then
If vbYes = MsgBox("Möchten Sie die " & rechnungenMitGesamtmautanhant & " Gesamtmautberichte (PDF und CSV) aus den Rechnungen vom entfernen?" & vbNewLine & "Die Mautberichte können erneut über 'Durchfüren' and die Rechnung gehängt werden.", vbYesNoCancel) Then
If vbYes = MsgBox("Möchten Sie die " & rechnungenMitGesamtmautanhant & " Gesamtmautberichte (PDF und CSV) aus den Rechnungen vom entfernen?" & vbNewLine & "Die Mautberichte können erneut über 'Durchfüren' and die Rechnung gehängt werden." & vbNewLine & "Nur bei Rechnungen mit Status 0 möglich!", vbYesNoCancel) Then
deleted = (New SQL).doSQL("delete from RechnungsausgangAnhaenge where RechnungsausgangAnhaenge.RK_ID IN (SELECT Rechnungsausgang.RK_ID
FROM Rechnungsausgang
@@ -112,6 +112,8 @@ Public Class usrcntlFakturierung
Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click
Label70.Text = "6. Hängt Mautgesamtbericht an Sammenrechnungen an."
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim ok As Boolean = True
@@ -151,6 +153,32 @@ Public Class usrcntlFakturierung
End If
Dim rechnungenMitGesamtmautanhantCSV As String = (New SQL).getValueTxtBySqlVarList("SELECT COUNT(*) FROM Rechnungsausgang
inner join RechnungsausgangAnhaenge on Rechnungsausgang.RK_ID = RechnungsausgangAnhaenge.RK_ID
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv')
group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], RechnungsausgangAnhaenge.Bezeichnung ", "FMZOLL",, 0)
Dim rechnungenMitGesamtmautanhantPDF As String = (New SQL).getValueTxtBySqlVarList("SELECT COUNT(*) FROM Rechnungsausgang
inner join RechnungsausgangAnhaenge on Rechnungsausgang.RK_ID = RechnungsausgangAnhaenge.RK_ID
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.pdf')
group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], RechnungsausgangAnhaenge.Bezeichnung ", "FMZOLL",, 0)
If rechnungenMitGesamtmautanhantPDF <> "" Then
MsgBox("Bei " & rechnungenMitGesamtmautanhantPDF & " Rechnungen befindet sich noch eine PDF-Gesamtmaut" & vbNewLine & "Diesen bitte vorher entfernen über MAUTBERICHTE ENTFERNEN " & vbNewLine & "Vorang wird abgebrochen!")
Exit Sub
End If
If rechnungenMitGesamtmautanhantCSV <> "" Then
MsgBox("Bei " & rechnungenMitGesamtmautanhantCSV & " Rechnungen befindet sich noch eine CSV-Gesamtmaut" & vbNewLine & "Diesen bitte vorher entfernen über MAUTBERICHTE ENTFERNEN " & vbNewLine & "Vorang wird abgebrochen!")
Exit Sub
End If
'---------------DONE
' ' Sachbearbeiter im RK eintragen.
'140 Call SysCmd(acSysCmdSetStatus, "Sachbearbeiter im RK eintragen...")
@@ -754,6 +782,8 @@ Public Class usrcntlFakturierung
Private Function setMautgesamtberichtInRechnung(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable)
Try
Dim counterPDF As Integer = 0
Dim counterCSV As Integer = 0
Dim attachmentIsSet As Boolean = False
If dtSammelRechnugen.Rows.Count = 0 Then
@@ -771,6 +801,7 @@ Public Class usrcntlFakturierung
Dim RK_ID As Integer = dtSammelRechnugen.AsEnumerable().Where(Function(r) r.Field(Of Integer)("RechnungsKundenNr") = KundenNr).Select(Function(r) r.Field(Of Integer)("RK_ID")).FirstOrDefault()
Dim RECHNUNG As New cRechnungsausgang(RK_ID)
attachmentIsSet = AddAttachementToRE(FileCSV.FullName, KundenNr, RECHNUNG, rechnungsdatum)
If attachmentIsSet Then counterCSV = counterCSV + 1
End If
End If
@@ -784,6 +815,7 @@ Public Class usrcntlFakturierung
Dim RK_ID As Integer = dtSammelRechnugen.AsEnumerable().Where(Function(r) r.Field(Of Integer)("RechnungsKundenNr") = CInt(KundenNr)).Select(Function(r) r.Field(Of Integer)("RK_ID")).FirstOrDefault()
Dim RECHNUNG As New cRechnungsausgang(RK_ID)
attachmentIsSet = AddAttachementToRE(FilePDF.FullName, KundenNr, RECHNUNG, rechnungsdatum)
If attachmentIsSet Then counterPDF = counterPDF + 1
End If
End If
End If
@@ -791,12 +823,14 @@ Public Class usrcntlFakturierung
End If
Label70.Text = "6. Hängt Mautgesamtbericht an Sammenrechnungen an." & " CSV: " & counterCSV & " PDF: " & counterPDF
Return attachmentIsSet
Catch ex As SystemException
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Label70.Text = "6. Hängt Mautgesamtbericht an Sammenrechnungen an."
Return False
End Function
@@ -936,58 +970,70 @@ Public Class usrcntlFakturierung
If dtSelectedSammelrechnungen.Rows.Count > 0 Then
If cbxVorschau.Checked Then
Dim nurNICHTEUKunden As Boolean = False
If rbAlleKunden.Checked Then
If vbYes = MsgBox("Sollen nur die Rechnungen der NICHT-EU Kunden gedruckt werden?", vbYesNoCancel) Then nurNICHTEUKunden = True
End If
For Each rowRE In dtSelectedSammelrechnungen.Rows
For Each rowRE In dtSelectedSammelrechnungen.Rows
Dim path = ""
Dim path = ""
cFakturierung.doSAMMELRechnungsDruck_Abschnitt(rowRE("RechnungsNr"), rowRE("Firma_ID"), rowRE("Buchungsjahr"), rowRE("DruckDatumZeit"), "", True, True, 7, path,, , , , , , , )
cFakturierung.doSAMMELRechnungsDruck_Abschnitt(rowRE("RechnungsNr"), rowRE("Firma_ID"), rowRE("Buchungsjahr"), rowRE("DruckDatumZeit"), "", True, True, 7, path,, , , , , , , )
If path <> "" Then listPDFs.Add(path)
If True Then 'cnt Mod 10 = 0 Then
txtPloseAnh_Einarbeitung.Text = cnt & " / " & dtSelectedSammelrechnungen.Rows.Count
Dim proz As Double = (cnt / dtSelectedSammelrechnungen.Rows.Count) * 100
pbPloseAnh_Proz.Value = proz
lblPloseAnh_Proz.Text = proz.ToString("N2") & " %"
'GroupBox12.Refresh()
My.Application.DoEvents()
End If
cnt += 1
Next
If listPDFs.Count > 0 Then
Dim pathPDF = listPDFs(0).ToString
If listPDFs.Count > 1 Then
Dim pathPDFMerge = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("MDM_Sammelrechnung.pdf", ".pdf", False, False)
If Not FormularManagerNEU.MergePdfFiles(listPDFs, pathPDFMerge) Then
Exit Sub
MsgBox("Fehler beim Zusammenführen der PDFs.")
If path <> "" Then
If nurNICHTEUKunden Then
'TODO-> nur nicht EU-Kunden zu Path
listPDFs.Add(path)
Else
listPDFs.Add(path)
End If
End If
pbPloseAnh_Proz.Value = 100
txtPloseAnh_Einarbeitung.Text = dtSelectedSammelrechnungen.Rows.Count & " / " & dtSelectedSammelrechnungen.Rows.Count
lblPloseAnh_Proz.Text = "100.00 %"
Process.Start(pathPDF)
If True Then 'cnt Mod 10 = 0 Then
txtPloseAnh_Einarbeitung.Text = cnt & " / " & dtSelectedSammelrechnungen.Rows.Count
Dim proz As Double = (cnt / dtSelectedSammelrechnungen.Rows.Count) * 100
pbPloseAnh_Proz.Value = proz
lblPloseAnh_Proz.Text = proz.ToString("N2") & " %"
'GroupBox12.Refresh()
My.Application.DoEvents()
End If
cnt += 1
Else
MsgBox("Datei von " & rechnungsdatum.ToShortDateString & " konnte nicht erstellt werden!")
Next
If listPDFs.Count > 0 Then
Dim pathPDF = listPDFs(0).ToString
If listPDFs.Count > 1 Then
Dim pathPDFMerge = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("MDM_Sammelrechnung.pdf", ".pdf", False, False)
If Not FormularManagerNEU.MergePdfFiles(listPDFs, pathPDFMerge) Then
Exit Sub
MsgBox("Fehler beim Zusammenführen der PDFs.")
End If
End If
pbPloseAnh_Proz.Value = 100
txtPloseAnh_Einarbeitung.Text = dtSelectedSammelrechnungen.Rows.Count & " / " & dtSelectedSammelrechnungen.Rows.Count
lblPloseAnh_Proz.Text = "100.00 %"
Process.Start(pathPDF)
Else
MsgBox("Datei von " & rechnungsdatum.ToShortDateString & " konnte nicht erstellt werden!")
End If
End If
End If
If cbxRechnungsjournaldrucken.Checked Then
Dim dtRechnungsjournal As DataTable = (New SQL).loadDgvBySql("SELECT
If cbxRechnungsjournaldrucken.Checked Then
Dim dtRechnungsjournal As DataTable = (New SQL).loadDgvBySql("SELECT
Rechnungsausgang.Währungscode,
Rechnungsausgang.RechnungsLandKz,
Rechnungsausgang.RechnungsNr,
@@ -1025,12 +1071,12 @@ Public Class usrcntlFakturierung
Rechnungsausgang.RechnungsLandKz,
Rechnungsausgang.RechnungsNr", "FMZOLL")
cProgramFunctions.genExcelFromDT_NEW(dtRechnungsjournal, {"J1:J" & (dtRechnungsjournal.Rows.Count + 1), "K1:K" & (dtRechnungsjournal.Rows.Count + 1), "L1:L" & (dtRechnungsjournal.Rows.Count + 1)},, "RECHNUNGSJOURNAL VOM" & rechnungsdatum.ToShortDateString,,, True)
End If
cProgramFunctions.genExcelFromDT_NEW(dtRechnungsjournal, {"J1:J" & (dtRechnungsjournal.Rows.Count + 1), "K1:K" & (dtRechnungsjournal.Rows.Count + 1), "L1:L" & (dtRechnungsjournal.Rows.Count + 1)},, "RECHNUNGSJOURNAL VOM" & rechnungsdatum.ToShortDateString,,, True)
End If
If cbxAbfVerbotdrucken.Checked Then
If cbxAbfVerbotdrucken.Checked Then
Dim dtEbfertigungsverbot As DataTable = (New SQL).loadDgvBySql("SELECT
Dim dtEbfertigungsverbot As DataTable = (New SQL).loadDgvBySql("SELECT
Rechnungsausgang.Buchungsjahr,
Rechnungsausgang.Währungscode,
Rechnungsausgang.RechnungsNr,
@@ -1068,14 +1114,14 @@ Public Class usrcntlFakturierung
Rechnungsausgang.Währungscode,
Rechnungsausgang.RechnungsNr;", "FMZOLL")
cProgramFunctions.genExcelFromDT_NEW(dtEbfertigungsverbot, {"I1:I" & (dtEbfertigungsverbot.Rows.Count + 1), "J1:J" & (dtEbfertigungsverbot.Rows.Count + 1), "K1:K" & (dtEbfertigungsverbot.Rows.Count + 1)},, "RECHNUNGEN VOM " & rechnungsdatum.ToShortDateString & " MIT ABFERTIGUNGSVERBOT",,, True)
End If
cProgramFunctions.genExcelFromDT_NEW(dtEbfertigungsverbot, {"I1:I" & (dtEbfertigungsverbot.Rows.Count + 1), "J1:J" & (dtEbfertigungsverbot.Rows.Count + 1), "K1:K" & (dtEbfertigungsverbot.Rows.Count + 1)},, "RECHNUNGEN VOM " & rechnungsdatum.ToShortDateString & " MIT ABFERTIGUNGSVERBOT",,, True)
End If
Else
Else
MsgBox("Keine Sammelrechnung zum " & rechnungsdatum.ToShortDateString & " von " & Sachbearbeiter & " vorhanden!")
MsgBox("Keine Sammelrechnung zum " & rechnungsdatum.ToShortDateString & " von " & Sachbearbeiter & " vorhanden!")
End If
End Sub
@@ -1098,6 +1144,8 @@ Public Class usrcntlFakturierung
'für Kunde an RE anhängen
Case "Gesamtbericht_CSV"
Dim AnzahlCSV_Berichte As Integer = CInt((New SQL).getValueTxtBySql("SELECT count(distinct(tblMautbericht.[Customer No])) FROM Adressen INNER JOIN tblMautbericht ON Adressen.AdressenNr = tblMautbericht.[Customer No] WHERE Adressen.ExportMautberichtCSV=1 AND cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'", "FMZOLL"))
Dim dtBerichtkunden_CSV As DataTable = (New SQL).loadDgvBySql("SELECT [Customer No], [Licence Plate Number], [Transaction Country], [Transaction date], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal], tblMautbericht.[Net Amount], tblMautbericht.[VAT Amount], tblMautbericht.[Total Amount]
FROM Adressen
INNER JOIN tblMautbericht ON Adressen.AdressenNr = tblMautbericht.[Customer No]
@@ -1139,8 +1187,8 @@ Public Class usrcntlFakturierung
outFile.Close()
If True Then 'cnt Mod 10 = 0 Then
TextBox1.Text = cnt & " / " & dtBerichtkunden_CSV.Rows.Count
Dim proz As Double = (cnt / dtBerichtkunden_CSV.Rows.Count) * 100
TextBox1.Text = cnt & " / " & AnzahlCSV_Berichte
Dim proz As Double = (cnt / AnzahlCSV_Berichte) * 100
pbMautAnh_Proz.Value = proz
lblMautAnh_Proz.Text = proz.ToString("N2") & " %"
'GroupBox12.Refresh()
@@ -1151,7 +1199,7 @@ Public Class usrcntlFakturierung
Next
pbMautAnh_Proz.Value = 100
TextBox1.Text = dtBerichtkunden_CSV.Rows.Count & " / " & dtBerichtkunden_CSV.Rows.Count
TextBox1.Text = AnzahlCSV_Berichte & " / " & AnzahlCSV_Berichte
lblMautAnh_Proz.Text = "100.00 %"
@@ -1165,6 +1213,8 @@ Public Class usrcntlFakturierung
'für Kunde an RE anhängen (Tool Report to Verag Invoice aus FMZOLL)
Case "Lieferantenbericht_PDF"
Dim AnzahlPDF_Berichte As Integer = CInt((New SQL).getValueTxtBySql("SELECT count(distinct(tblMautbericht.[Customer No])) FROM tblMautbericht WHERE cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'", "FMZOLL"))
Dim dtBerichtkunden_PDF As DataTable = (New SQL).loadDgvBySql("SELECT tblMautbericht.[Customer No], Adressen.Ordnungsbegriff AS [Customer name], tblMautbericht.[Licence Plate Number], tblMautbericht.[Transaction date], tblMautbericht.[Transaction Country], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal], Sum(tblMautbericht.[Net Amount]) AS [Net Amount], Sum(tblMautbericht.[VAT Amount]) AS [VAT Amount], Sum(tblMautbericht.[Total Amount]) AS [Total Amount]
FROM tblMautbericht INNER JOIN Adressen ON tblMautbericht.[Customer No] = Adressen.AdressenNr
WHERE cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'
@@ -1201,8 +1251,8 @@ Public Class usrcntlFakturierung
If True Then 'cnt Mod 10 = 0 Then
TextBox1.Text = cnt & " / " & dtBerichtkunden_PDF.Rows.Count
Dim proz As Double = (cnt / dtBerichtkunden_PDF.Rows.Count) * 100
TextBox1.Text = cnt & " / " & AnzahlPDF_Berichte
Dim proz As Double = (cnt / AnzahlPDF_Berichte) * 100
pbMautAnh_Proz.Value = proz
lblMautAnh_Proz.Text = proz.ToString("N2") & " %"
'GroupBox12.Refresh()
@@ -1213,7 +1263,7 @@ Public Class usrcntlFakturierung
Next
pbMautAnh_Proz.Value = 100
TextBox1.Text = dtBerichtkunden_PDF.Rows.Count & " / " & dtBerichtkunden_PDF.Rows.Count
TextBox1.Text = AnzahlPDF_Berichte & " / " & AnzahlPDF_Berichte
lblMautAnh_Proz.Text = "100.00 %"
MsgBox("PDF-Berichte wurden unter " & PathMautberichte & "erzeugt.")
@@ -1442,4 +1492,39 @@ Public Class usrcntlFakturierung
Dim f As New SDL.frmRechnungenSuche
f.Show(Me)
End Sub
Private Sub Button1_Click_2(sender As Object, e As EventArgs) Handles Button1.Click
Dim Sachbearbeiter = cboSachbearbeiter._value
Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text)
Dim deleted As Boolean = False
If rechnungsdatum > Today() Then
MsgBox("Rechnungsdatum liegt in der Zukunft, nicht möglich")
Exit Sub
End If
If Sachbearbeiter = "" Then
MsgBox("Sachbearbeiter auswählen!")
Exit Sub
End If
Dim rechnungenMitGesamtmautanhantCSV As String = (New SQL).getValueTxtBySqlVarList("SELECT COUNT(*) FROM Rechnungsausgang
inner join RechnungsausgangAnhaenge on Rechnungsausgang.RK_ID = RechnungsausgangAnhaenge.RK_ID
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv')
group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], RechnungsausgangAnhaenge.Bezeichnung ", "FMZOLL",, 0)
Dim rechnungenMitGesamtmautanhantPDF As String = (New SQL).getValueTxtBySqlVarList("SELECT COUNT(*) FROM Rechnungsausgang
inner join RechnungsausgangAnhaenge on Rechnungsausgang.RK_ID = RechnungsausgangAnhaenge.RK_ID
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.pdf')
group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], RechnungsausgangAnhaenge.Bezeichnung ", "FMZOLL",, 0)
MsgBox("Anzahl CSV-Anhänge: " & rechnungenMitGesamtmautanhantCSV & vbNewLine & "Anzahl PDF-Anhänge: " & rechnungenMitGesamtmautanhantPDF)
End Sub
End Class