Abrechnungslogik Sammelrechnungen MDM
This commit is contained in:
@@ -1234,7 +1234,7 @@ Public Class frmMDMDatenverarbetiung
|
||||
|
||||
For Each csv As DataRow In distinctDT_CSV.Rows
|
||||
|
||||
Dim dt_CSV_selected = SQL.loadDgvBySql_Param("SELECT * FROM tblUTAImportNew where [Rechnungsdatum] = '" & DateTimePicker2.Text & "' and Kundennummer = " & csv.Item("Customer ID"), "FMZOLL")
|
||||
Dim dt_CSV_selected = SQL.loadDgvBySql_Param("SELECT * FROM tblUTAImportNew where [Rechnungsdatum] = '" & DateTimePicker2.Text & "' and Kundennummer = " & csv.Item("Customer ID"), "FMZOLL")
|
||||
dt_CSV_selected.ParentRelations.Clear()
|
||||
dt_CSV_selected.ChildRelations.Clear()
|
||||
dt_CSV_selected.Constraints.Clear()
|
||||
@@ -1305,7 +1305,7 @@ Public Class frmMDMDatenverarbetiung
|
||||
End If
|
||||
If Not Directory.Exists(dirAnhang) Then Directory.CreateDirectory(dirAnhang)
|
||||
For Each f In Directory.GetFiles(dir)
|
||||
File.Copy(f, dirAnhang & (New FileInfo(f)).Name)
|
||||
File.Copy(f, dirAnhang & (New FileInfo(f)).Name, True)
|
||||
Next
|
||||
pbPloseAnh_Proz.Value = 100
|
||||
txtPloseAnh_Einarbeitung.Text = dt_Main.Rows.Count & " / " & dt_Main.Rows.Count
|
||||
@@ -1457,7 +1457,7 @@ Public Class frmMDMDatenverarbetiung
|
||||
End If
|
||||
|
||||
For Each f In Directory.GetFiles(dir)
|
||||
File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name)
|
||||
File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name, True)
|
||||
Next
|
||||
|
||||
'IN FMZOLL / DB MautD einfügen --> Mautbericht
|
||||
@@ -1603,7 +1603,7 @@ Public Class frmMDMDatenverarbetiung
|
||||
End If
|
||||
|
||||
For Each f In Directory.GetFiles(dir)
|
||||
File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name)
|
||||
File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name, True)
|
||||
Next
|
||||
|
||||
pbPloseAnh_Proz.Value = 100
|
||||
@@ -4061,6 +4061,7 @@ Public Class frmMDMDatenverarbetiung
|
||||
sum(trans.transaction_gross_amount) As [Summe Transaction Amount ( EUR )],
|
||||
sum(trans.msts_fee_amount) As [Summe Admin Fee Amount ( EUR )],
|
||||
sum(trans.msts_fee_amount) As [Summe Fees And Costs Amount ( EUR )],
|
||||
|
||||
sum(trans.msts_vat_amount) As [Summe VAT Amount ( EUR )],
|
||||
sum(trans.transaction_gross_amount) As [Summe Total Amount ( EUR )]
|
||||
From [VERAG].[dbo].[tblMSESettlements] as bills
|
||||
|
||||
152
SDL/mdm/usrCntlMDMAuswertungen.Designer.vb
generated
152
SDL/mdm/usrCntlMDMAuswertungen.Designer.vb
generated
@@ -141,6 +141,15 @@ Partial Class usrCntlMDMAuswertungen
|
||||
Me.Button18 = New System.Windows.Forms.Button()
|
||||
Me.Label44 = New System.Windows.Forms.Label()
|
||||
Me.GroupBox13 = New System.Windows.Forms.GroupBox()
|
||||
Me.Button20 = New System.Windows.Forms.Button()
|
||||
Me.Label72 = New System.Windows.Forms.Label()
|
||||
Me.KdSearchBox3 = New VERAG_PROG_ALLGEMEIN.KdSearchBox()
|
||||
Me.rbkunde = New System.Windows.Forms.RadioButton()
|
||||
Me.rbAlleKunden = New System.Windows.Forms.RadioButton()
|
||||
Me.txtPloseAnh_Einarbeitung = New System.Windows.Forms.TextBox()
|
||||
Me.Label71 = New System.Windows.Forms.Label()
|
||||
Me.pbPloseAnh_Proz = New System.Windows.Forms.ProgressBar()
|
||||
Me.lblPloseAnh_Proz = New System.Windows.Forms.Label()
|
||||
Me.Button19 = New System.Windows.Forms.Button()
|
||||
Me.Label70 = New System.Windows.Forms.Label()
|
||||
Me.cboSachbearbeiter = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
@@ -199,6 +208,7 @@ Partial Class usrCntlMDMAuswertungen
|
||||
Me.btnContractdaten = New System.Windows.Forms.Button()
|
||||
Me.Button15 = New System.Windows.Forms.Button()
|
||||
Me.pnl = New System.Windows.Forms.Panel()
|
||||
Me.lblAnzahlMautberichte = New System.Windows.Forms.Label()
|
||||
Me.GroupBox1.SuspendLayout()
|
||||
Me.GroupBox2.SuspendLayout()
|
||||
CType(Me.pic, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
@@ -1476,6 +1486,7 @@ Partial Class usrCntlMDMAuswertungen
|
||||
'
|
||||
'GroupBox19
|
||||
'
|
||||
Me.GroupBox19.Controls.Add(Me.lblAnzahlMautberichte)
|
||||
Me.GroupBox19.Controls.Add(Me.cbxDateMautbericht)
|
||||
Me.GroupBox19.Controls.Add(Me.Label69)
|
||||
Me.GroupBox19.Controls.Add(Me.Label68)
|
||||
@@ -1512,7 +1523,7 @@ Partial Class usrCntlMDMAuswertungen
|
||||
'
|
||||
Me.Label68.Location = New System.Drawing.Point(142, 57)
|
||||
Me.Label68.Name = "Label68"
|
||||
Me.Label68.Size = New System.Drawing.Size(541, 20)
|
||||
Me.Label68.Size = New System.Drawing.Size(333, 20)
|
||||
Me.Label68.TabIndex = 30
|
||||
Me.Label68.Text = "Generiert Mautbericht und hängt sie an den Sammelrechnungen an."
|
||||
'
|
||||
@@ -1561,6 +1572,15 @@ Partial Class usrCntlMDMAuswertungen
|
||||
'
|
||||
'GroupBox13
|
||||
'
|
||||
Me.GroupBox13.Controls.Add(Me.Button20)
|
||||
Me.GroupBox13.Controls.Add(Me.Label72)
|
||||
Me.GroupBox13.Controls.Add(Me.KdSearchBox3)
|
||||
Me.GroupBox13.Controls.Add(Me.rbkunde)
|
||||
Me.GroupBox13.Controls.Add(Me.rbAlleKunden)
|
||||
Me.GroupBox13.Controls.Add(Me.txtPloseAnh_Einarbeitung)
|
||||
Me.GroupBox13.Controls.Add(Me.Label71)
|
||||
Me.GroupBox13.Controls.Add(Me.pbPloseAnh_Proz)
|
||||
Me.GroupBox13.Controls.Add(Me.lblPloseAnh_Proz)
|
||||
Me.GroupBox13.Controls.Add(Me.Button19)
|
||||
Me.GroupBox13.Controls.Add(Me.Label70)
|
||||
Me.GroupBox13.Controls.Add(Me.cboSachbearbeiter)
|
||||
@@ -1574,19 +1594,123 @@ Partial Class usrCntlMDMAuswertungen
|
||||
Me.GroupBox13.Controls.Add(Me.Button14)
|
||||
Me.GroupBox13.Location = New System.Drawing.Point(14, 298)
|
||||
Me.GroupBox13.Name = "GroupBox13"
|
||||
Me.GroupBox13.Size = New System.Drawing.Size(697, 168)
|
||||
Me.GroupBox13.Size = New System.Drawing.Size(697, 278)
|
||||
Me.GroupBox13.TabIndex = 10
|
||||
Me.GroupBox13.TabStop = False
|
||||
'
|
||||
'Button20
|
||||
'
|
||||
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.Name = "Button20"
|
||||
Me.Button20.Size = New System.Drawing.Size(121, 49)
|
||||
Me.Button20.TabIndex = 43
|
||||
Me.Button20.Text = "Mautanh. löschen"
|
||||
Me.Button20.UseVisualStyleBackColor = True
|
||||
'
|
||||
'Label72
|
||||
'
|
||||
Me.Label72.Location = New System.Drawing.Point(97, 226)
|
||||
Me.Label72.Name = "Label72"
|
||||
Me.Label72.Size = New System.Drawing.Size(541, 17)
|
||||
Me.Label72.TabIndex = 42
|
||||
Me.Label72.Text = "* bei der Vorschau wird bereits eine RE-NR erzeugt und kann nicht mehr geändert w" &
|
||||
"erden."
|
||||
'
|
||||
'KdSearchBox3
|
||||
'
|
||||
Me.KdSearchBox3._AlleFirmenCLUSTER = False
|
||||
Me.KdSearchBox3._AllowSetValue = True
|
||||
Me.KdSearchBox3._autoSizeGross = False
|
||||
Me.KdSearchBox3._display_Name1 = False
|
||||
Me.KdSearchBox3._displayAVISO_Email = False
|
||||
Me.KdSearchBox3._displayFullName = False
|
||||
Me.KdSearchBox3._displayWoelflKd = False
|
||||
Me.KdSearchBox3._hideIfListEmpty = True
|
||||
Me.KdSearchBox3._loadKdData = False
|
||||
Me.KdSearchBox3._searchName1 = True
|
||||
Me.KdSearchBox3._UseFIRMA = ""
|
||||
Me.KdSearchBox3._ValueKdAndName = True
|
||||
Me.KdSearchBox3.dgvpos = "LEFT"
|
||||
Me.KdSearchBox3.KdName = ""
|
||||
Me.KdSearchBox3.KdNr = "-1"
|
||||
Me.KdSearchBox3.kdNrField = Nothing
|
||||
Me.KdSearchBox3.KdNrNullInt = Nothing
|
||||
Me.KdSearchBox3.Location = New System.Drawing.Point(88, 248)
|
||||
Me.KdSearchBox3.Name = "KdSearchBox3"
|
||||
Me.KdSearchBox3.nurAktive = True
|
||||
Me.KdSearchBox3.searchActive = True
|
||||
Me.KdSearchBox3.Size = New System.Drawing.Size(350, 20)
|
||||
Me.KdSearchBox3.TabIndex = 41
|
||||
Me.KdSearchBox3.TIMER_SEARCH = True
|
||||
Me.KdSearchBox3.usrcntl = Nothing
|
||||
'
|
||||
'rbkunde
|
||||
'
|
||||
Me.rbkunde.AutoSize = True
|
||||
Me.rbkunde.Location = New System.Drawing.Point(10, 249)
|
||||
Me.rbkunde.Name = "rbkunde"
|
||||
Me.rbkunde.Size = New System.Drawing.Size(59, 17)
|
||||
Me.rbkunde.TabIndex = 40
|
||||
Me.rbkunde.Text = "Kunde:"
|
||||
Me.rbkunde.UseVisualStyleBackColor = True
|
||||
'
|
||||
'rbAlleKunden
|
||||
'
|
||||
Me.rbAlleKunden.AutoSize = True
|
||||
Me.rbAlleKunden.Checked = True
|
||||
Me.rbAlleKunden.Location = New System.Drawing.Point(10, 226)
|
||||
Me.rbAlleKunden.Name = "rbAlleKunden"
|
||||
Me.rbAlleKunden.Size = New System.Drawing.Size(81, 17)
|
||||
Me.rbAlleKunden.TabIndex = 39
|
||||
Me.rbAlleKunden.TabStop = True
|
||||
Me.rbAlleKunden.Text = "alle Kunden"
|
||||
Me.rbAlleKunden.UseVisualStyleBackColor = True
|
||||
'
|
||||
'txtPloseAnh_Einarbeitung
|
||||
'
|
||||
Me.txtPloseAnh_Einarbeitung.BackColor = System.Drawing.Color.White
|
||||
Me.txtPloseAnh_Einarbeitung.BorderStyle = System.Windows.Forms.BorderStyle.None
|
||||
Me.txtPloseAnh_Einarbeitung.Location = New System.Drawing.Point(216, 186)
|
||||
Me.txtPloseAnh_Einarbeitung.Name = "txtPloseAnh_Einarbeitung"
|
||||
Me.txtPloseAnh_Einarbeitung.Size = New System.Drawing.Size(106, 13)
|
||||
Me.txtPloseAnh_Einarbeitung.TabIndex = 38
|
||||
'
|
||||
'Label71
|
||||
'
|
||||
Me.Label71.AutoSize = True
|
||||
Me.Label71.Location = New System.Drawing.Point(151, 186)
|
||||
Me.Label71.Name = "Label71"
|
||||
Me.Label71.Size = New System.Drawing.Size(56, 13)
|
||||
Me.Label71.TabIndex = 35
|
||||
Me.Label71.Text = "Fortschritt:"
|
||||
'
|
||||
'pbPloseAnh_Proz
|
||||
'
|
||||
Me.pbPloseAnh_Proz.Location = New System.Drawing.Point(154, 157)
|
||||
Me.pbPloseAnh_Proz.Name = "pbPloseAnh_Proz"
|
||||
Me.pbPloseAnh_Proz.Size = New System.Drawing.Size(283, 23)
|
||||
Me.pbPloseAnh_Proz.TabIndex = 36
|
||||
'
|
||||
'lblPloseAnh_Proz
|
||||
'
|
||||
Me.lblPloseAnh_Proz.Location = New System.Drawing.Point(368, 186)
|
||||
Me.lblPloseAnh_Proz.Name = "lblPloseAnh_Proz"
|
||||
Me.lblPloseAnh_Proz.Size = New System.Drawing.Size(69, 13)
|
||||
Me.lblPloseAnh_Proz.TabIndex = 37
|
||||
Me.lblPloseAnh_Proz.Text = "0%"
|
||||
Me.lblPloseAnh_Proz.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'Button19
|
||||
'
|
||||
Me.Button19.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
||||
Me.Button19.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
|
||||
Me.Button19.Location = New System.Drawing.Point(6, 91)
|
||||
Me.Button19.Location = New System.Drawing.Point(10, 157)
|
||||
Me.Button19.Name = "Button19"
|
||||
Me.Button19.Size = New System.Drawing.Size(121, 49)
|
||||
Me.Button19.TabIndex = 32
|
||||
Me.Button19.Text = "Vorschau"
|
||||
Me.Button19.Text = "Vorschau*"
|
||||
Me.Button19.UseVisualStyleBackColor = True
|
||||
'
|
||||
'Label70
|
||||
@@ -1672,7 +1796,7 @@ Partial Class usrCntlMDMAuswertungen
|
||||
'
|
||||
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, 21)
|
||||
Me.Button14.Location = New System.Drawing.Point(10, 94)
|
||||
Me.Button14.Name = "Button14"
|
||||
Me.Button14.Size = New System.Drawing.Size(121, 49)
|
||||
Me.Button14.TabIndex = 4
|
||||
@@ -2173,6 +2297,14 @@ Partial Class usrCntlMDMAuswertungen
|
||||
Me.pnl.Size = New System.Drawing.Size(1057, 54)
|
||||
Me.pnl.TabIndex = 26
|
||||
'
|
||||
'lblAnzahlMautberichte
|
||||
'
|
||||
Me.lblAnzahlMautberichte.AutoSize = True
|
||||
Me.lblAnzahlMautberichte.Location = New System.Drawing.Point(481, 57)
|
||||
Me.lblAnzahlMautberichte.Name = "lblAnzahlMautberichte"
|
||||
Me.lblAnzahlMautberichte.Size = New System.Drawing.Size(0, 13)
|
||||
Me.lblAnzahlMautberichte.TabIndex = 33
|
||||
'
|
||||
'usrCntlMDMAuswertungen
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
@@ -2421,4 +2553,14 @@ Partial Class usrCntlMDMAuswertungen
|
||||
Friend WithEvents cbxDateMautbericht As VERAG_PROG_ALLGEMEIN.MyComboBox
|
||||
Friend WithEvents Label70 As Label
|
||||
Friend WithEvents Button19 As Button
|
||||
Friend WithEvents Label71 As Label
|
||||
Friend WithEvents pbPloseAnh_Proz As ProgressBar
|
||||
Friend WithEvents lblPloseAnh_Proz As Label
|
||||
Friend WithEvents txtPloseAnh_Einarbeitung As TextBox
|
||||
Friend WithEvents KdSearchBox3 As VERAG_PROG_ALLGEMEIN.KdSearchBox
|
||||
Friend WithEvents rbkunde As RadioButton
|
||||
Friend WithEvents rbAlleKunden As RadioButton
|
||||
Friend WithEvents Label72 As Label
|
||||
Friend WithEvents Button20 As Button
|
||||
Friend WithEvents lblAnzahlMautberichte As Label
|
||||
End Class
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.DirectoryServices.ActiveDirectory
|
||||
Imports System.IO
|
||||
Imports com.sun.org.apache.bcel.internal.generic
|
||||
Imports com.sun.tools.internal.ws.wsdl.framework
|
||||
Imports java.awt.geom
|
||||
Imports javax.print.attribute.standard
|
||||
Imports Microsoft.Office.Interop.Outlook
|
||||
Imports Microsoft.VisualBasic.FileIO
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
@@ -39,6 +43,7 @@ Public Class usrCntlMDMAuswertungen
|
||||
datUeberfaelligeBestVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year)
|
||||
datUeberfaelligeBestBis.Value = Now
|
||||
kdUeberfaelligeBest.initKdBox(Me.FindForm)
|
||||
KdSearchBox3.initKdBox(Me.FindForm)
|
||||
|
||||
|
||||
KdSearchBox1.initKdBox(Me.FindForm)
|
||||
@@ -78,7 +83,17 @@ Public Class usrCntlMDMAuswertungen
|
||||
datLeereOBUVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year)
|
||||
datLeereOBUbis.Value = Now
|
||||
|
||||
PathMautberichte = "C:\Users\d.breimaier\Desktop\MDM\Mautgesamtberichte"
|
||||
PathMautberichte = (New SQL).getValueTxtBySql("SELECT TOP 1 [Param_value] FROM [tblPartnersystem_Paramter] WHERE Param_system='GESAMTMAUT' AND [Param_name]='ANLAGE_PFAD' AND Param_testsystem = " & IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, 1, 0), "FMZOLL")
|
||||
|
||||
Dim count = 0
|
||||
If Directory.Exists(PathMautberichte) Then
|
||||
If Directory.GetFiles(PathMautberichte) IsNot Nothing Then
|
||||
For Each f In Directory.GetFiles(PathMautberichte)
|
||||
If f.ToString.ToLower.EndsWith("_Maut.csv") Or f.ToString.ToLower.EndsWith("_Maut.pdf") Then count += 1
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
lblAnzahlMautberichte.Text = count & "x Mautberichte"
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -989,6 +1004,8 @@ Public Class usrCntlMDMAuswertungen
|
||||
Dim Sachbearbeiter = cboSachbearbeiter._value
|
||||
Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text)
|
||||
|
||||
|
||||
|
||||
If rechnungsdatum > Today() Then
|
||||
MsgBox("Rechnungsdatum liegt in der Zukunft, nicht möglich")
|
||||
Exit Sub
|
||||
@@ -1059,7 +1076,7 @@ Public Class usrCntlMDMAuswertungen
|
||||
|
||||
ok = SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='" & Sachbearbeiter & "' where Sammelrechnung=6 and Firma_ID=19 and UPPER([Sachbearbeiter])<>'" & Sachbearbeiter & "' and Abfertigungsdatum = '" & dtRechnungsdatum.Value & "'", "FMZOLL")
|
||||
|
||||
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Exit Sub
|
||||
'If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Exit Sub
|
||||
|
||||
|
||||
If Not ok Then MsgBox("Fehler") : Exit Sub
|
||||
@@ -1125,8 +1142,8 @@ Public Class usrCntlMDMAuswertungen
|
||||
|
||||
'Gesamtmautberichte an Sammelrechnung anhängen
|
||||
If Not setMautgesamtberichtInRechnung(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) Then
|
||||
MsgBox("Fehler beim Setzen der Gesamtmautberichte")
|
||||
Exit Sub
|
||||
'MsgBox("Fehler beim Setzen der Gesamtmautberichte")
|
||||
'Exit Sub
|
||||
End If
|
||||
|
||||
'Druckinformationen
|
||||
@@ -1589,7 +1606,7 @@ Public Class usrCntlMDMAuswertungen
|
||||
Private Function setMautgesamtberichtInRechnung(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable)
|
||||
Try
|
||||
|
||||
|
||||
Dim attachmentIsSet As Boolean = False
|
||||
If dtSammelRechnugen.Rows.Count = 0 Then
|
||||
MsgBox("Keine Rechnungen für die Anlage der Mautgesamtberichte gefunden!" & vbNewLine & "Vorgang wird abgebrochen.")
|
||||
Return False
|
||||
@@ -1604,20 +1621,20 @@ Public Class usrCntlMDMAuswertungen
|
||||
If IsNumeric(KundenNr) Then
|
||||
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)
|
||||
AddAttachementToRE(FileCSV.FullName, KundenNr, RECHNUNG, rechnungsdatum)
|
||||
attachmentIsSet = AddAttachementToRE(FileCSV.FullName, KundenNr, RECHNUNG, rechnungsdatum)
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
ElseIf f.Contains("Maut.pdf") Then
|
||||
ElseIf f.Contains("_Maut.pdf") Then
|
||||
Dim FilePDF = New FileInfo(f)
|
||||
If FilePDF.Name.Length > 10 Then
|
||||
Dim KundenNr = FilePDF.Name.ToString.Substring(0, 6)
|
||||
If IsNumeric(KundenNr) Then
|
||||
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)
|
||||
AddAttachementToRE(FilePDF.FullName, KundenNr, RECHNUNG, rechnungsdatum)
|
||||
attachmentIsSet = AddAttachementToRE(FilePDF.FullName, KundenNr, RECHNUNG, rechnungsdatum)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
@@ -1625,6 +1642,8 @@ Public Class usrCntlMDMAuswertungen
|
||||
|
||||
End If
|
||||
|
||||
Return attachmentIsSet
|
||||
|
||||
Catch ex As SystemException
|
||||
|
||||
End Try
|
||||
@@ -1633,7 +1652,7 @@ Public Class usrCntlMDMAuswertungen
|
||||
|
||||
Private Function AddAttachementToRE(pathFile As String, kdNr As Integer, RECHNUNG As cRechnungsausgang, rechnungsdatum As Date) As Boolean
|
||||
|
||||
'TODO: Prüfung, damit anhänge nicht doppelt eingearbeitet werden!
|
||||
'TODO: Prüfung, damit anhänge nicht doppelt eingearbeitet werden! -> ist DBteschnisch unterbunden mit PrimaryKey-Einschränkung!!!
|
||||
|
||||
If Not IO.File.Exists(pathFile) Then Return False
|
||||
|
||||
@@ -1657,7 +1676,7 @@ Public Class usrCntlMDMAuswertungen
|
||||
ANH.dsId = CInt(DS.da_id)
|
||||
ANH.Bezeichnung = DS.da_name
|
||||
RECHNUNG.ANHAENGE.Add(ANH)
|
||||
Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False)
|
||||
Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False, False)
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
@@ -1666,6 +1685,7 @@ Public Class usrCntlMDMAuswertungen
|
||||
|
||||
Private Function setStatus4(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable) As Boolean
|
||||
|
||||
Dim cnt = 0
|
||||
'strParameter = ParameterBereitstellen(Me![Firma_ID], 0, 6, Me![fldSachbearbeiter], Year(Me!fldRechnungsDatum), Me![fldRechnungsDatum], varDatumZeit)
|
||||
|
||||
'Return (New SQL).doSQL("UPDATE [Rechnungsausgang] SET [Status] = 4 WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'", "FMZOLL")
|
||||
@@ -1677,11 +1697,24 @@ Public Class usrCntlMDMAuswertungen
|
||||
|
||||
If Not reIsSet Then Return reIsSet
|
||||
|
||||
If True Then 'cnt Mod 10 = 0 Then
|
||||
txtPloseAnh_Einarbeitung.Text = cnt & " / " & dtSammelRechnugen.Rows.Count
|
||||
Dim proz As Double = (cnt / dtSammelRechnugen.Rows.Count) * 100
|
||||
pbPloseAnh_Proz.Value = proz
|
||||
lblPloseAnh_Proz.Text = proz.ToString("N2") & " %"
|
||||
'GroupBox12.Refresh()
|
||||
My.Application.DoEvents()
|
||||
End If
|
||||
cnt += 1
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
|
||||
pbPloseAnh_Proz.Value = 100
|
||||
txtPloseAnh_Einarbeitung.Text = dtSammelRechnugen.Rows.Count & " / " & dtSammelRechnugen.Rows.Count
|
||||
lblPloseAnh_Proz.Text = "100.00 %"
|
||||
|
||||
Return reIsSet
|
||||
|
||||
|
||||
@@ -2130,110 +2163,128 @@ Public Class usrCntlMDMAuswertungen
|
||||
If cbxMautbericht._value = "" Then Exit Sub
|
||||
If cbxDateMautbericht._value = "" Then Exit Sub
|
||||
|
||||
Try
|
||||
|
||||
|
||||
Select Case cbxMautbericht._value
|
||||
|
||||
|
||||
Select Case cbxMautbericht._value
|
||||
'nur intern
|
||||
Case "Gesamtbericht_EXCEL"
|
||||
Case "Gesamtbericht_EXCEL"
|
||||
|
||||
Dim dtGesamtbericht As DataTable = (New SQL).loadDgvBySql("SELECT tblMautbericht.[Customer No], Adressen.Ordnungsbegriff AS [Customer name], tblMautbericht.[Net Amount], tblMautbericht.[VAT Amount], tblMautbericht.[Total Amount] From tblMautbericht INNER Join Adressen On tblMautbericht.[Customer No] = Adressen.AdressenNr Where cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'", "FMZOLL")
|
||||
cProgramFunctions.genExcelFromDT_NEW(dtGesamtbericht, {"C1:C" & (dtGesamtbericht.Rows.Count + 1), "D1:D" & (dtGesamtbericht.Rows.Count + 1), "E1:E" & (dtGesamtbericht.Rows.Count + 1)},,,,, True)
|
||||
Dim dtGesamtbericht As DataTable = (New SQL).loadDgvBySql("SELECT tblMautbericht.[Customer No], Adressen.Ordnungsbegriff AS [Customer name], tblMautbericht.[Net Amount], tblMautbericht.[VAT Amount], tblMautbericht.[Total Amount] From tblMautbericht INNER Join Adressen On tblMautbericht.[Customer No] = Adressen.AdressenNr Where cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'", "FMZOLL")
|
||||
cProgramFunctions.genExcelFromDT_NEW(dtGesamtbericht, {"C1:C" & (dtGesamtbericht.Rows.Count + 1), "D1:D" & (dtGesamtbericht.Rows.Count + 1), "E1:E" & (dtGesamtbericht.Rows.Count + 1)},,,,, True)
|
||||
|
||||
'für Kunde an RE anhängen
|
||||
Case "Gesamtbericht_CSV"
|
||||
Case "Gesamtbericht_CSV"
|
||||
|
||||
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]
|
||||
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]
|
||||
WHERE Adressen.ExportMautberichtCSV=1 AND cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'
|
||||
ORDER BY tblMautbericht.[Customer No], tblMautbericht.[Licence Plate Number], tblMautbericht.[Transaction Country], tblMautbericht.[Transaction date], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal]", "FMZOLL")
|
||||
If dtBerichtkunden_CSV.Rows.Count > 0 Then
|
||||
If dtBerichtkunden_CSV.Rows.Count > 0 Then
|
||||
|
||||
Dim displayView = New DataView(dtBerichtkunden_CSV, "", "Customer No", DataViewRowState.CurrentRows)
|
||||
Dim distinctDT_CSV As DataTable = displayView.ToTable(True, "Customer No")
|
||||
Dim displayView = New DataView(dtBerichtkunden_CSV, "", "Customer No", DataViewRowState.CurrentRows)
|
||||
Dim distinctDT_CSV As DataTable = displayView.ToTable(True, "Customer No")
|
||||
|
||||
|
||||
'wenn bereits CSV-Datei im Ordner dann löschen!
|
||||
If Directory.GetFiles(PathMautberichte) IsNot Nothing Then
|
||||
For Each f In Directory.GetFiles(PathMautberichte)
|
||||
If f.ToString.ToLower.EndsWith(".csv") Then File.Delete(f)
|
||||
Next
|
||||
End If
|
||||
'wenn bereits CSV-Datei im Ordner dann löschen!
|
||||
If Directory.GetFiles(PathMautberichte) IsNot Nothing Then
|
||||
For Each f In Directory.GetFiles(PathMautberichte)
|
||||
If f.ToString.ToLower.EndsWith(".csv") Then File.Delete(f)
|
||||
Next
|
||||
End If
|
||||
|
||||
For Each csv As DataRow In distinctDT_CSV.Rows
|
||||
For Each csv As DataRow In distinctDT_CSV.Rows
|
||||
|
||||
|
||||
|
||||
Dim dt_CSV_selected = dtBerichtkunden_CSV.Select("[Customer No] ='" & csv.Item(0) & "'").CopyToDataTable
|
||||
Dim dt_CSV_selected = dtBerichtkunden_CSV.Select("[Customer No] ='" & csv.Item(0) & "'").CopyToDataTable
|
||||
|
||||
Dim fn As String = PathMautberichte & "\" & csv.Item("Customer No") & "_Maut.csv"
|
||||
Dim outFile As System.IO.StreamWriter = My.Computer.FileSystem.OpenTextFileWriter(fn, False)
|
||||
Dim clmns As String = ""
|
||||
For i = 0 To dt_CSV_selected.Columns.Count - 1
|
||||
clmns &= dt_CSV_selected.Columns(i).ColumnName.ToString().Replace(";", ", ") & ";"
|
||||
Next
|
||||
outFile.WriteLine(clmns)
|
||||
For i = 0 To dt_CSV_selected.Rows.Count - 1
|
||||
clmns = ""
|
||||
For j = 0 To dt_CSV_selected.Columns.Count - 1
|
||||
clmns &= dt_CSV_selected.Rows(i)(j).ToString.Replace(";", ", ") & ";"
|
||||
Dim fn As String = PathMautberichte & "\" & csv.Item("Customer No") & "_Maut.csv"
|
||||
Dim outFile As System.IO.StreamWriter = My.Computer.FileSystem.OpenTextFileWriter(fn, False)
|
||||
Dim clmns As String = ""
|
||||
For i = 0 To dt_CSV_selected.Columns.Count - 1
|
||||
clmns &= dt_CSV_selected.Columns(i).ColumnName.ToString().Replace(";", ", ") & ";"
|
||||
Next
|
||||
outFile.WriteLine(clmns)
|
||||
For i = 0 To dt_CSV_selected.Rows.Count - 1
|
||||
clmns = ""
|
||||
For j = 0 To dt_CSV_selected.Columns.Count - 1
|
||||
clmns &= dt_CSV_selected.Rows(i)(j).ToString.Replace(";", ", ") & ";"
|
||||
Next
|
||||
outFile.WriteLine(clmns)
|
||||
Next
|
||||
outFile.Close()
|
||||
|
||||
Next
|
||||
outFile.Close()
|
||||
|
||||
Next
|
||||
|
||||
|
||||
MsgBox("CSV-Berichte wurden unter " & PathMautberichte & "erzeugt.")
|
||||
Else
|
||||
MsgBox("Es wurden keine Daten bereitgestellt")
|
||||
MsgBox("CSV-Berichte wurden unter " & PathMautberichte & "erzeugt.")
|
||||
Else
|
||||
MsgBox("Es wurden keine Daten bereitgestellt")
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
'für Kunde an RE anhängen (Tool Report to Verag Invoice aus FMZOLL)
|
||||
Case "Lieferantenbericht_PDF"
|
||||
Case "Lieferantenbericht_PDF"
|
||||
|
||||
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]
|
||||
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 & "'
|
||||
GROUP BY tblMautbericht.[Customer No], Adressen.Ordnungsbegriff, tblMautbericht.[Licence Plate Number], tblMautbericht.[Transaction date], tblMautbericht.[Transaction Country], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal] ", "FMZOLL")
|
||||
|
||||
If dtBerichtkunden_PDF.Rows.Count = 0 Then
|
||||
MsgBox("Es wurden keine Daten bereitgestellt")
|
||||
Exit Sub
|
||||
End If
|
||||
If dtBerichtkunden_PDF.Rows.Count = 0 Then
|
||||
MsgBox("Es wurden keine Daten bereitgestellt")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim displayView = New DataView(dtBerichtkunden_PDF, "", "Customer No", DataViewRowState.CurrentRows)
|
||||
Dim distinctDT_PDF As DataTable = displayView.ToTable(True, "Customer No")
|
||||
Dim displayView = New DataView(dtBerichtkunden_PDF, "", "Customer No", DataViewRowState.CurrentRows)
|
||||
Dim distinctDT_PDF As DataTable = displayView.ToTable(True, "Customer No")
|
||||
|
||||
'wenn bereits PDF-Datei im Ordner dann löschen!
|
||||
'wenn bereits PDF-Datei im Ordner dann löschen!
|
||||
If Directory.GetFiles(PathMautberichte) IsNot Nothing Then
|
||||
For Each f In Directory.GetFiles(PathMautberichte)
|
||||
If f.ToString.ToLower.EndsWith(".pdf") Then File.Delete(f)
|
||||
Next
|
||||
End If
|
||||
|
||||
If distinctDT_PDF.Rows.Count > 1 Then
|
||||
For Each pdf As DataRow In distinctDT_PDF.Rows
|
||||
|
||||
Dim dt_PDF_selected = dtBerichtkunden_PDF.Select("[Customer No] ='" & pdf.Item(0) & "'").CopyToDataTable
|
||||
|
||||
createPDFMautbericht(pdf.Item(0), dt_PDF_selected, cbxDateMautbericht._value, PathMautberichte)
|
||||
|
||||
Next
|
||||
|
||||
MsgBox("PDF-Berichte wurden unter " & PathMautberichte & "erzeugt.")
|
||||
|
||||
Else
|
||||
MsgBox("Es wurden keine Daten bereitgestellt")
|
||||
|
||||
End If
|
||||
|
||||
|
||||
End Select
|
||||
|
||||
|
||||
Dim count = 0
|
||||
If Directory.Exists(PathMautberichte) Then
|
||||
If Directory.GetFiles(PathMautberichte) IsNot Nothing Then
|
||||
For Each f In Directory.GetFiles(PathMautberichte)
|
||||
If f.ToString.ToLower.EndsWith(".pdf") Then File.Delete(f)
|
||||
If f.ToString.ToLower.EndsWith("_Maut.csv") Or f.ToString.ToLower.EndsWith("_Maut.pdf") Then count += 1
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
lblAnzahlMautberichte.Text = count & "x Mautberichte"
|
||||
|
||||
If distinctDT_PDF.Rows.Count > 1 Then
|
||||
For Each pdf As DataRow In distinctDT_PDF.Rows
|
||||
|
||||
Dim dt_PDF_selected = dtBerichtkunden_PDF.Select("[Customer No] ='" & pdf.Item(0) & "'").CopyToDataTable
|
||||
|
||||
createPDFMautbericht(pdf.Item(0), dt_PDF_selected, cbxDateMautbericht._value, PathMautberichte)
|
||||
|
||||
Next
|
||||
|
||||
MsgBox("PDF-Berichte wurden unter " & PathMautberichte & "erzeugt.")
|
||||
|
||||
Else
|
||||
MsgBox("Es wurden keine Daten bereitgestellt")
|
||||
|
||||
End If
|
||||
|
||||
|
||||
End Select
|
||||
Catch ex As System.Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -2412,34 +2463,138 @@ Public Class usrCntlMDMAuswertungen
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim cnt = 0
|
||||
Dim kdnr As Integer = -1
|
||||
|
||||
If rbkunde.Checked Then
|
||||
If KdSearchBox3.KdNr > 0 Then
|
||||
kdnr = KdSearchBox3.KdNr
|
||||
Else
|
||||
MsgBox("Kunde auswählen!")
|
||||
Exit Sub
|
||||
End If
|
||||
End If
|
||||
|
||||
If Not vbYes = MsgBox("Möchten Sie die Vorschau der Rechnugnen erstellen?" & vbNewLine & "Es wird eine Rechnungsnummer vergeben, die Rechnungen gelten somit als gedruckt und können nicht mehr bearbeitet werden.", vbYesNoCancel) Then Exit Sub
|
||||
|
||||
Dim listPDFs As New List(Of String)
|
||||
|
||||
Dim dtSelectedSammelrechnungen As DataTable = (New SQL).loadDgvBySql("SELECT [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, [RK_ID], [BelegartenNr],cast([Vorkasse] as bit) as Vorkasse, [Nettozahlungsziel], [OffertenNr], [RechnungsLandKz], [Text]
|
||||
FROM Rechnungsausgang
|
||||
WHERE [Status] = 2 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null
|
||||
ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]", "FMZOLL")
|
||||
'Dim SQLString = "SELECT [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, [RK_ID], [BelegartenNr],cast([Vorkasse] as bit) as Vorkasse, [Nettozahlungsziel], [OffertenNr], [RechnungsLandKz], [Text]
|
||||
' FROM Rechnungsausgang
|
||||
' WHERE [Status] = 2 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null " & IIf(kdnr > 0, " AND RechnungsKundenNr = " & kdnr, "") & "
|
||||
' ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]"
|
||||
|
||||
|
||||
|
||||
Dim SQLString = "SELECT [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status]
|
||||
FROM Rechnungsausgang
|
||||
WHERE [Status] = 2 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null " & IIf(kdnr > 0, " AND RechnungsKundenNr = " & kdnr, "") & "
|
||||
group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status]
|
||||
ORDER BY [Firma_ID], [Status], RechnungsNr"
|
||||
|
||||
Dim dtSelectedSammelrechnungen As DataTable = (New SQL).loadDgvBySql(SQLString, "FMZOLL")
|
||||
|
||||
If dtSelectedSammelrechnungen.Rows.Count > 0 Then
|
||||
|
||||
For Each rowRE In dtSelectedSammelrechnungen.Rows
|
||||
|
||||
Dim 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 > 1 Then
|
||||
Dim pathPDF = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("MDM_Sammelrechnung.pdf", ".pdf", False, False)
|
||||
If FormularManagerNEU.MergePdfFiles(listPDFs, pathPDF) Then
|
||||
Process.Start(pathPDF)
|
||||
Else
|
||||
MsgBox("Fehler beim zusammenführen der PDFs.")
|
||||
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
|
||||
|
||||
Else
|
||||
|
||||
MsgBox("Keine Sammelrechnung zum " & rechnungsdatum.ToShortDateString & " von " & Sachbearbeiter & " vorhanden!")
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub KdSearchBox3_TextChanged(sender As Object, e As EventArgs) Handles KdSearchBox3.TextChanged
|
||||
rbkunde.Checked = True
|
||||
End Sub
|
||||
|
||||
Private Sub Button20_Click_1(sender As Object, e As EventArgs) Handles Button20.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 rechnungenMitGesamtmautanhant 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' or RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv')
|
||||
group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], RechnungsausgangAnhaenge.Bezeichnung ", "FMZOLL",, 0)
|
||||
|
||||
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
|
||||
|
||||
deleted = (New SQL).doSQL("delete from RechnungsausgangAnhaenge where RechnungsausgangAnhaenge.RK_ID IN (SELECT Rechnungsausgang.RK_ID
|
||||
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' or RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv')) and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.pdf' or RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv')", "FMZOLL")
|
||||
|
||||
If deleted Then MsgBox("Anhänge wurden gelöscht")
|
||||
|
||||
End If
|
||||
Else
|
||||
MsgBox("In den Rechnungen vom " & rechnungsdatum & " sind keine Gesamtmautberichte angehängt!")
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
|
||||
Reference in New Issue
Block a user