frmFAkt, etc.

This commit is contained in:
2025-01-17 15:56:10 +01:00
parent c3587ba37b
commit cd136faac2
11 changed files with 598 additions and 79 deletions

View File

@@ -1859,6 +1859,7 @@ Public Class frmMDMDatenverarbetiung
End If
Dim con As New OleDbConnection(connectionString)
Dim cmd As New OleDbCommand
Dim var1 As String
@@ -1871,8 +1872,11 @@ Public Class frmMDMDatenverarbetiung
con.Open()
For Each r In dt.Rows
Try
'Zeitstempel
SQL.doSQL("INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Entry Terminal],[Exit Terminal],[Net Amount],[VAT Amount],[Total Amount], [BillingDate]) VALUES ('" &
r(0) & "'," & r(1) & ",'" & r(2) & "','" & r(3) & "','" & r(4) & "','" & r(5).ToString.Replace("'", " ") & "','" & r(6) & "','" & r(7).ToString.Replace("'", " ") & "','" & r(8).ToString.Replace("'", " ") & "'," & CDbl(r(9)).ToString.Replace(",", ".") & "," & CDbl(r(10)).ToString.Replace(",", ".") & "," & CDbl(r(11)).ToString.Replace(",", ".") & ",'" & datPloseAnhang.Text & "')", "FMZOLL")
'Zeitstempel
Dim SQLQuery = "INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Entry Terminal],[Exit Terminal],[Nett Amount],[VAT Amount],[Total Amount]) VALUES (@P1,@P2,@P3,@P4,@P5,@P6,@P7,@P8,@P9,@P10,@P11,@P12) "
' "SELECT * FROM DBParent WHERE P_ID = " & UniqeID & ";"
Using Command As New OleDbCommand(SQLQuery, con)
@@ -1890,10 +1894,11 @@ Public Class frmMDMDatenverarbetiung
Command.Parameters.AddWithValue("@P11", CDbl(r(10)))
Command.Parameters.AddWithValue("@P12", CDbl(r(11)))
Command.ExecuteNonQuery()
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Command.ExecuteNonQuery()
Command.Dispose()
End Using
Catch ex2 As System.Exception
MsgBox("err: " & ex2.Message & ex2.StackTrace)
@@ -2003,6 +2008,10 @@ Public Class frmMDMDatenverarbetiung
Try
'Zeitstempel
SQL.doSQL("INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Net Amount],[VAT Amount],[Total Amount], [BillingDate]) VALUES ('" &
r(0) & "'," & r(1) & ",'" & r(2) & "','" & r(3) & "','" & r(4) & "','" & r(5).ToString.Replace("'", " ") & "','" & r(6) & "'," & CDbl(r(7)).ToString.Replace(",", ".") & "," & CDbl(r(8)).ToString.Replace(",", ".") & "," & CDbl(r(9)).ToString.Replace(",", ".") & ",'" & datPloseAnhang.Text & "')", "FMZOLL")
Dim SQLQuery = "INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Nett Amount],[VAT Amount],[Total Amount]) VALUES (@P1,@P2,@P3,@P4,@P5,@P6,@P7,@P8,@P9,@P10) "
' "SELECT * FROM DBParent WHERE P_ID = " & UniqeID & ";"
Using Command As New OleDbCommand(SQLQuery, con)
@@ -2018,7 +2027,7 @@ Public Class frmMDMDatenverarbetiung
Command.Parameters.AddWithValue("@P9", CDbl(r(8)))
Command.Parameters.AddWithValue("@P10", CDbl(r(9)))
Command.ExecuteNonQuery()
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Command.ExecuteNonQuery()
Command.Dispose()
End Using
@@ -2105,6 +2114,10 @@ Public Class frmMDMDatenverarbetiung
Try
'Zeitstempel
SQL.doSQL("INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Entry Terminal],[Exit Terminal],[Net Amount],[VAT Amount],[Total Amount], [BillingDate]) VALUES ('" &
r(0) & "'," & r(1) & ",'" & r(2) & "','" & r(3) & "','" & r(4) & "','" & r(5).ToString.Replace("'", " ") & "','" & r(6) & "','" & r(7).ToString.Replace("'", " ") & "','" & r(8).ToString.Replace("'", " ") & "'," & CDbl(r(9)).ToString.Replace(",", ".") & "," & CDbl(r(10)).ToString.Replace(",", ".") & "," & CDbl(r(11)).ToString.Replace(",", ".") & ",'" & datPloseAnhang.Text & "')", "FMZOLL")
Dim SQLQuery = "INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Entry Terminal],[Exit Terminal],[Nett Amount],[VAT Amount],[Total Amount]) VALUES (@P1,@P2,@P3,@P4,@P5,@P6,@P7,@P8,@P9,@P10,@P11,@P12) "
' "SELECT * FROM DBParent WHERE P_ID = " & UniqeID & ";"
Using Command As New OleDbCommand(SQLQuery, con)
@@ -2122,7 +2135,8 @@ Public Class frmMDMDatenverarbetiung
Command.Parameters.AddWithValue("@P11", CDbl(r(10)))
Command.Parameters.AddWithValue("@P12", CDbl(r(11)))
Command.ExecuteNonQuery()
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Command.ExecuteNonQuery()
Command.Dispose()
End Using
@@ -2202,6 +2216,11 @@ Public Class frmMDMDatenverarbetiung
Try
'Zeitstempel
SQL.doSQL("INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Entry Terminal],[Exit Terminal],[Net Amount],[VAT Amount],[Total Amount], [BillingDate]) VALUES ('" &
r(0) & "'," & r(1) & ",'" & r(2) & "','" & r(3) & "','" & r(4) & "','" & r(5).ToString.Replace("'", " ") & "','" & r(6) & "','" & r(7).ToString.Replace("'", " ") & "','" & r(8).ToString.Replace("'", " ") & "'," & CDbl(r(9)).ToString.Replace(",", ".") & "," & CDbl(r(10)).ToString.Replace(",", ".") & "," & CDbl(r(11)).ToString.Replace(",", ".") & ",'" & datPloseAnhang.Text & "')", "FMZOLL")
Dim SQLQuery = "INSERT INTO tblMautbericht (Datenquelle,[Customer No],[Licence Plate Number],[Transaction Date],[Transaction Country],[Product description],[Card Number],[Entry Terminal],[Exit Terminal],[Nett Amount],[VAT Amount],[Total Amount]) VALUES (@P1,@P2,@P3,@P4,@P5,@P6,@P7,@P8,@P9,@P10,@P11,@P12) "
' "SELECT * FROM DBParent WHERE P_ID = " & UniqeID & ";"
Using Command As New OleDbCommand(SQLQuery, con)
@@ -2219,7 +2238,7 @@ Public Class frmMDMDatenverarbetiung
Command.Parameters.AddWithValue("@P11", CDbl(r(10)))
Command.Parameters.AddWithValue("@P12", CDbl(r(11)))
Command.ExecuteNonQuery()
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Command.ExecuteNonQuery()
Command.Dispose()
End Using
@@ -2261,6 +2280,7 @@ Public Class frmMDMDatenverarbetiung
Dim reader As OleDbDataReader = Nothing
'FMZOLL-Tabelle
Try
con.Open()
@@ -2268,7 +2288,8 @@ Public Class frmMDMDatenverarbetiung
Dim SQLQuery = "DELETE FROM tblMautbericht WHERE Datenquelle='" & Datenquelle & "' "
Using Command As New OleDbCommand(SQLQuery, con)
Command.ExecuteNonQuery()
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Command.ExecuteNonQuery()
Command.Dispose()
End Using
@@ -2281,7 +2302,7 @@ Public Class frmMDMDatenverarbetiung
con.Close()
Return True
Return SQL.doSQL("DELETE FROM tblMautbericht WHERE Datenquelle='" & Datenquelle & "' AND cast(Billingdate as Date)= '" & datPloseAnhang.Text & "'", "FMZOLL")
Catch ex As System.Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
@@ -4276,6 +4297,7 @@ Public Class frmMDMDatenverarbetiung
End If
If vbYes = MsgBox("Möchten Sie den Vorgang wirklich manuell ausgeführen (wird bei Rechnungserstellung automatisch ausgeführt)", vbYesNoCancel) Then
MautD_Befuellen()
End If
End Sub

View File

@@ -133,6 +133,10 @@ Partial Class usrCntlMDMAuswertungen
Me.TabPage2 = New System.Windows.Forms.TabPage()
Me.Label61 = New System.Windows.Forms.Label()
Me.GroupBox19 = New System.Windows.Forms.GroupBox()
Me.cbxDateMautbericht = New VERAG_PROG_ALLGEMEIN.MyComboBox()
Me.Label69 = New System.Windows.Forms.Label()
Me.Label68 = New System.Windows.Forms.Label()
Me.cbxMautbericht = New VERAG_PROG_ALLGEMEIN.MyComboBox()
Me.Label62 = New System.Windows.Forms.Label()
Me.Button18 = New System.Windows.Forms.Button()
Me.Label44 = New System.Windows.Forms.Label()
@@ -193,6 +197,8 @@ 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.Label70 = New System.Windows.Forms.Label()
Me.Label71 = New System.Windows.Forms.Label()
Me.GroupBox1.SuspendLayout()
Me.GroupBox2.SuspendLayout()
CType(Me.pic, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -1462,7 +1468,7 @@ Partial Class usrCntlMDMAuswertungen
Me.Label61.AutoSize = True
Me.Label61.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label61.ForeColor = System.Drawing.SystemColors.ControlDarkDark
Me.Label61.Location = New System.Drawing.Point(21, 329)
Me.Label61.Location = New System.Drawing.Point(19, 135)
Me.Label61.Name = "Label61"
Me.Label61.Size = New System.Drawing.Size(310, 17)
Me.Label61.TabIndex = 13
@@ -1470,22 +1476,65 @@ Partial Class usrCntlMDMAuswertungen
'
'GroupBox19
'
Me.GroupBox19.Controls.Add(Me.cbxDateMautbericht)
Me.GroupBox19.Controls.Add(Me.Label69)
Me.GroupBox19.Controls.Add(Me.Label68)
Me.GroupBox19.Controls.Add(Me.cbxMautbericht)
Me.GroupBox19.Controls.Add(Me.Label62)
Me.GroupBox19.Controls.Add(Me.Button18)
Me.GroupBox19.Location = New System.Drawing.Point(20, 340)
Me.GroupBox19.Location = New System.Drawing.Point(18, 146)
Me.GroupBox19.Name = "GroupBox19"
Me.GroupBox19.Size = New System.Drawing.Size(697, 82)
Me.GroupBox19.Size = New System.Drawing.Size(697, 107)
Me.GroupBox19.TabIndex = 12
Me.GroupBox19.TabStop = False
'
'cbxDateMautbericht
'
Me.cbxDateMautbericht._allowedValuesFreiText = Nothing
Me.cbxDateMautbericht._allowFreiText = False
Me.cbxDateMautbericht._value = ""
Me.cbxDateMautbericht.FormattingEnabled = True
Me.cbxDateMautbericht.Location = New System.Drawing.Point(312, 12)
Me.cbxDateMautbericht.Name = "cbxDateMautbericht"
Me.cbxDateMautbericht.Size = New System.Drawing.Size(87, 21)
Me.cbxDateMautbericht.TabIndex = 32
'
'Label69
'
Me.Label69.AutoSize = True
Me.Label69.Location = New System.Drawing.Point(142, 19)
Me.Label69.Name = "Label69"
Me.Label69.Size = New System.Drawing.Size(38, 13)
Me.Label69.TabIndex = 31
Me.Label69.Text = "Datum"
'
'Label68
'
Me.Label68.Location = New System.Drawing.Point(142, 57)
Me.Label68.Name = "Label68"
Me.Label68.Size = New System.Drawing.Size(541, 20)
Me.Label68.TabIndex = 30
Me.Label68.Text = "Generiert Mautbericht und hängt sie an den Sammelrechnung an."
'
'cbxMautbericht
'
Me.cbxMautbericht._allowedValuesFreiText = Nothing
Me.cbxMautbericht._allowFreiText = False
Me.cbxMautbericht._value = ""
Me.cbxMautbericht.FormattingEnabled = True
Me.cbxMautbericht.Location = New System.Drawing.Point(312, 33)
Me.cbxMautbericht.Name = "cbxMautbericht"
Me.cbxMautbericht.Size = New System.Drawing.Size(152, 21)
Me.cbxMautbericht.TabIndex = 30
'
'Label62
'
Me.Label62.AutoSize = True
Me.Label62.Location = New System.Drawing.Point(144, 19)
Me.Label62.Location = New System.Drawing.Point(142, 36)
Me.Label62.Name = "Label62"
Me.Label62.Size = New System.Drawing.Size(181, 13)
Me.Label62.Size = New System.Drawing.Size(144, 13)
Me.Label62.TabIndex = 5
Me.Label62.Text = "Mautsummenberichte (als CSV, PDF)"
Me.Label62.Text = "Mautsummenbericht erstellen"
'
'Button18
'
@@ -1503,7 +1552,7 @@ Partial Class usrCntlMDMAuswertungen
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.SystemColors.ControlDarkDark
Me.Label44.Location = New System.Drawing.Point(19, 143)
Me.Label44.Location = New System.Drawing.Point(15, 287)
Me.Label44.Name = "Label44"
Me.Label44.Size = New System.Drawing.Size(436, 17)
Me.Label44.TabIndex = 11
@@ -1511,6 +1560,8 @@ Partial Class usrCntlMDMAuswertungen
'
'GroupBox13
'
Me.GroupBox13.Controls.Add(Me.Label71)
Me.GroupBox13.Controls.Add(Me.Label70)
Me.GroupBox13.Controls.Add(Me.cboSachbearbeiter)
Me.GroupBox13.Controls.Add(Me.Label67)
Me.GroupBox13.Controls.Add(Me.dtRechnungsdatum)
@@ -1520,9 +1571,9 @@ Partial Class usrCntlMDMAuswertungen
Me.GroupBox13.Controls.Add(Me.Label63)
Me.GroupBox13.Controls.Add(Me.Label45)
Me.GroupBox13.Controls.Add(Me.Button14)
Me.GroupBox13.Location = New System.Drawing.Point(18, 154)
Me.GroupBox13.Location = New System.Drawing.Point(14, 298)
Me.GroupBox13.Name = "GroupBox13"
Me.GroupBox13.Size = New System.Drawing.Size(697, 153)
Me.GroupBox13.Size = New System.Drawing.Size(697, 168)
Me.GroupBox13.TabIndex = 10
Me.GroupBox13.TabStop = False
'
@@ -1565,7 +1616,7 @@ Partial Class usrCntlMDMAuswertungen
'
'Label65
'
Me.Label65.Location = New System.Drawing.Point(144, 110)
Me.Label65.Location = New System.Drawing.Point(144, 94)
Me.Label65.Name = "Label65"
Me.Label65.Size = New System.Drawing.Size(541, 17)
Me.Label65.TabIndex = 8
@@ -1573,7 +1624,7 @@ Partial Class usrCntlMDMAuswertungen
'
'Label64
'
Me.Label64.Location = New System.Drawing.Point(144, 93)
Me.Label64.Location = New System.Drawing.Point(144, 77)
Me.Label64.Name = "Label64"
Me.Label64.Size = New System.Drawing.Size(541, 17)
Me.Label64.TabIndex = 7
@@ -1581,7 +1632,7 @@ Partial Class usrCntlMDMAuswertungen
'
'Label63
'
Me.Label63.Location = New System.Drawing.Point(144, 78)
Me.Label63.Location = New System.Drawing.Point(144, 62)
Me.Label63.Name = "Label63"
Me.Label63.Size = New System.Drawing.Size(541, 17)
Me.Label63.TabIndex = 6
@@ -1590,7 +1641,7 @@ Partial Class usrCntlMDMAuswertungen
'
'Label45
'
Me.Label45.Location = New System.Drawing.Point(144, 61)
Me.Label45.Location = New System.Drawing.Point(144, 45)
Me.Label45.Name = "Label45"
Me.Label45.Size = New System.Drawing.Size(541, 17)
Me.Label45.TabIndex = 5
@@ -2102,6 +2153,22 @@ Partial Class usrCntlMDMAuswertungen
Me.pnl.Size = New System.Drawing.Size(1057, 54)
Me.pnl.TabIndex = 26
'
'Label70
'
Me.Label70.Location = New System.Drawing.Point(144, 111)
Me.Label70.Name = "Label70"
Me.Label70.Size = New System.Drawing.Size(541, 17)
Me.Label70.TabIndex = 30
Me.Label70.Text = "5. Hängt Mautgesamtbericht an Sammenrechnungen an."
'
'Label71
'
Me.Label71.Location = New System.Drawing.Point(144, 128)
Me.Label71.Name = "Label71"
Me.Label71.Size = New System.Drawing.Size(541, 17)
Me.Label71.TabIndex = 31
Me.Label71.Text = "6. Druckt Rechnungen"
'
'usrCntlMDMAuswertungen
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -2344,4 +2411,10 @@ Partial Class usrCntlMDMAuswertungen
Friend WithEvents Label66 As Label
Friend WithEvents Label67 As Label
Friend WithEvents cboSachbearbeiter As VERAG_PROG_ALLGEMEIN.MyComboBox
Friend WithEvents Label68 As Label
Friend WithEvents cbxMautbericht As VERAG_PROG_ALLGEMEIN.MyComboBox
Friend WithEvents Label69 As Label
Friend WithEvents cbxDateMautbericht As VERAG_PROG_ALLGEMEIN.MyComboBox
Friend WithEvents Label70 As Label
Friend WithEvents Label71 As Label
End Class

View File

@@ -1,6 +1,5 @@
Imports System.Data.SqlClient
Imports System.IO
Imports java.awt.print
Imports Microsoft.Office.Interop.Outlook
Imports Microsoft.VisualBasic.FileIO
Imports VERAG_PROG_ALLGEMEIN
@@ -8,6 +7,8 @@ Imports VERAG_PROG_ALLGEMEIN
Public Class usrCntlMDMAuswertungen
Dim PathMautberichte = ""
Private Sub btnWord_Click(sender As Object, e As EventArgs) Handles btnWord.Click
If cbxDetails.Checked Then
Dim frmPrintLayout As New frmPrintLayout("AuswertungMWSTOffeneAntraegeMitVorauszahlungDetails")
@@ -53,13 +54,20 @@ Public Class usrCntlMDMAuswertungen
datPLOSEVon.Value = CDate("01." & Now.AddMonths(-1).Month & "." & Now.AddMonths(-1).Year)
datPLOSEBis.Value = CDate("01." & Now.Month & "." & Now.Year).AddDays(-1)
cbxMautbericht.Items.Clear()
cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautsummenbericht", "Gesamtbericht_EXCEL"))
cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautbericht AT DE MSE UTA", "Lieferantenbericht_PDF"))
cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautsummenbericht als CSV-Datei", "Gesamtbericht_CSV"))
cbxDateMautbericht.Items.Clear()
cbxDateMautbericht.fillWithSQL("select distinct(cast(BillingDate as Date)) From tblMautbericht order by cast(BillingDate as Date) desc", False, "FMZOLL")
cboIDSDateType.Items.Clear()
cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Rechnungsdatum", "RGDat"))
cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Leistungsdatum", "LDat"))
cboIDSDateType.changeItem("RGDat")
cboSachbearbeiter.fillWithSQL("select distinct(sachbearbeiter) from Rechnungsausgang where Sammelrechnung=6 and Firma_ID=19", False, "FMZOLL", True)
cboSachbearbeiter.fillWithSQL("select distinct(UPPER(sachbearbeiter)) from Rechnungsausgang where Sammelrechnung=6 and Firma_ID=19", False, "FMZOLL", True)
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Auswertungen_IDS", Me.FindForm) Then
tbcntr.TabPages.Remove(tbIDS)
@@ -68,6 +76,9 @@ Public Class usrCntlMDMAuswertungen
' MyComboBox4.fillWithSQL("SELECT [SDLNr],cast([SDLNr] as varchar(3)) + ' ' + [SDLBez] FROM [Speditionsdienstleistungen] WHERE SDLTypNr<=2 ORDER BY SDLBez", False, "SDL", True)
datLeereOBUVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year)
datLeereOBUbis.Value = Now
PathMautberichte = "C:\Users\d.breimaier\Desktop\MDM\Mautgesamtberichte"
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
@@ -974,10 +985,7 @@ Public Class usrCntlMDMAuswertungen
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim ok As Boolean = True
Dim Sachbearbeiter = cboSachbearbeiter._value
Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text)
If rechnungsdatum > Today() Then
@@ -991,6 +999,21 @@ Public Class usrCntlMDMAuswertungen
Exit Sub
End If
If PathMautberichte = "" OrElse Not Directory.Exists(PathMautberichte) Then
MsgBox("Pfad zu den Mautberichten nicht vorhanden!" & vbNewLine & "Vorang wird abgebrochen!")
Exit Sub
ElseIf Directory.Exists(PathMautberichte) Then
If Directory.GetFiles(PathMautberichte) Is Nothing Then
MsgBox("Pfad " & PathMautberichte & " enthält keine Daten!" & vbNewLine & "Vorang wird abgebrochen!")
Exit Sub
End If
End If
'---------------DONE
' ' Sachbearbeiter im RK eintragen.
'140 Call SysCmd(acSysCmdSetStatus, "Sachbearbeiter im RK eintragen...")
@@ -1033,18 +1056,22 @@ Public Class usrCntlMDMAuswertungen
'410 Set qdf = dbs.CreateQueryDef("")
ok = SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='" & Sachbearbeiter & "' where Sammelrechnung=6 and Firma_ID=19 and Sachbearbeiter<>'" & Sachbearbeiter & "' and Abfertigungsdatum = '" & dtRechnungsdatum.Value & "'", "FMZOLL")
ok = SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='" & Sachbearbeiter & "' where Sammelrechnung=6 and Firma_ID=19 and UPPER([Sachbearbeiter])<>'" & Sachbearbeiter & "' and Abfertigungsdatum = '" & dtRechnungsdatum.Value & "'", "FMZOLL")
Exit Sub
If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Exit Sub
If Not ok Then MsgBox("Fehler") : Exit Sub
Dim dtREGU As DataTable = SQL.loadDgvBySql("SELECT [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, Sum([SteuerpflichtigerGesamtbetrag]+[SteuerfreierGesamtbetrag]) AS Sammelrechnungsbetrag
FROM Rechnungsausgang
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND [Sachbearbeiter] = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
GROUP BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift]", "FMZOLL")
'RECHNUNG ODER GUTSCHRIFT
'Rechnung oder Gutschrift im RK eintragen, abhängig vom Sammelrechnungsbetrag (+/-)
If dtREGU.Rows.Count > 0 Then
For Each r In dtREGU.Rows
@@ -1069,10 +1096,10 @@ Public Class usrCntlMDMAuswertungen
End If
Dim steuersatz As Double = Math.Floor(r("Steuersatz %"))
Dim steuersatz As Double = Math.floor(r("Steuersatz %"))
ok = SQL.doSQL("UPDATE [Rechnungsausgang] SET [BelegartenNr] = " & BelegartenNr & ", [BelegartenKz] = '" & BelegartenKz & "' , [BelegartenBez] = '" & BelegartenBez & "' , [Vorzeichen] = '" & Vorzeichen & "'
WHERE [Firma_ID] = 19 AND [Status] = 0 AND [Sammelrechnung] = 6 AND [Sachbearbeiter] = '" & Sachbearbeiter & "' AND [RechnungsKundenNr] = " & r("RechnungsKundenNr") & " AND [Währungscode] = '" & r("Währungscode") & "' AND [Steuersatz %] = " & steuersatz & " AND [Lastschrift] = " & IIf(r("Lastschrift"), 1, 0) & "AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'", "FMZOLL")
WHERE [Firma_ID] = 19 AND [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter])= '" & Sachbearbeiter & "' AND [RechnungsKundenNr] = " & r("RechnungsKundenNr") & " AND [Währungscode] = '" & r("Währungscode") & "' AND [Steuersatz %] = " & steuersatz & " AND [Lastschrift] = " & IIf(r("Lastschrift"), 1, 0) & "AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'", "FMZOLL")
If Not ok Then MsgBox("Rechnungsdruck wird abgebrochen." & vbCrLf & "Rechnungen/Gutschriften nicht gefunden.") : Exit Sub
@@ -1081,11 +1108,10 @@ Public Class usrCntlMDMAuswertungen
End If
Dim dtSammelrechnungen As New DataTable
'Rechnungstext im RK eintragen
setRechnungstext(Sachbearbeiter, rechnungsdatum)
setRechnungstext(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen)
' Porto/Papiere berechnen.
PortoPapiere(Sachbearbeiter, rechnungsdatum)
@@ -1093,10 +1119,17 @@ Public Class usrCntlMDMAuswertungen
'Berechnet Banküberweisung/Bankspesen.
Bankspesen(Sachbearbeiter, rechnungsdatum)
'Gesamtmautberichte an Sammelrechnung anhängen
'If Not setMautgesamtberichtInRechnung(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) Then
'Exit Sub
'End If
'Druckinformationen
If Not setStatus4(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) Then
MsgBox("Fehler beim Setzen des Status")
Else
MsgBox("Erledigt.")
End If
End Sub
@@ -1128,7 +1161,7 @@ Public Class usrCntlMDMAuswertungen
WHERE
Rechnungsausgang.Status = 0
AND Rechnungsausgang.Sammelrechnung = 6
AND Rechnungsausgang.Sachbearbeiter = '" & Sachbearbeiter & "'
AND UPPER(Rechnungsausgang.Sachbearbeiter) = '" & Sachbearbeiter & "'
AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
GROUP BY
@@ -1184,7 +1217,7 @@ Public Class usrCntlMDMAuswertungen
If intZlr > 0 Then
Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2)
Dim steuersatz As Double = Math.round(r("Steuersatz %"), 2)
Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".")
' Die Abfrage liest in der Tabelle Rechnungsausgang,
@@ -1201,7 +1234,7 @@ Public Class usrCntlMDMAuswertungen
Rechnungsausgang.Firma_ID = " & r("Firma_ID") & "
And Rechnungsausgang.Status = " & r("Status") & "
And Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & "
And Rechnungsausgang.Sachbearbeiter = '" & Sachbearbeiter & "'
And Rechnungsausgang.UPPER(Sachbearbeiter) = '" & Sachbearbeiter & "'
And Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & "
And Rechnungsausgang.BelegartenNr = " & r("BelegartenNr") & "
And Rechnungsausgang.Währungscode = '" & r("Währungscode") & "'
@@ -1234,12 +1267,14 @@ Public Class usrCntlMDMAuswertungen
For Each row In dtREPOSANZ.Rows
intZlr = intZlr - row("Anzahl")
stgesBetr = stgesBetr - row("SteuerpflichtigerBetrag")
stfregesBetr = stfregesBetr - row("SteuerfreierBetrag")
If Not IsDBNull(row("SteuerpflichtigerBetrag")) AndAlso IsNumeric(row("SteuerpflichtigerBetrag")) Then stgesBetr = stgesBetr - CDbl(row("SteuerpflichtigerBetrag"))
If Not IsDBNull(row("SteuerfreierBetrag")) AndAlso IsNumeric(row("SteuerfreierBetrag")) Then stfregesBetr = stfregesBetr - CDbl(row("SteuerfreierBetrag"))
If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, row("LeistungsNr"), row("Steuerpflichtig"), row("LeistungsBez"), row("IndexZkteing")) Then
RECHNUNG.SteuerfreierGesamtbetrag = stfregesBetr
RECHNUNG.SteuerpflichtigerGesamtbetrag = stgesBetr
RECHNUNG.SAVE()
RECHNUNG.SAVE(False)
End If
If intZlr = 0 Then Exit For
@@ -1265,7 +1300,7 @@ Public Class usrCntlMDMAuswertungen
End Function
Private Function setRechnungstext(Sachbearbeiter As String, rechnungsdatum As Date)
Private Function setRechnungstext(Sachbearbeiter As String, rechnungsdatum As Date, ByRef sammelRechnungen As DataTable)
Dim varText As String = ""
Dim varNettozahlungsziel As Integer = 0
@@ -1276,11 +1311,11 @@ Public Class usrCntlMDMAuswertungen
Dim dtSelectedSammelrechnungen As DataTable = (New SQL).loadDgvBySql("SELECT [Firma_ID], [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] = 0 AND [Sammelrechnung] = 6 AND [Sachbearbeiter] = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]", "FMZOLL")
If dtSelectedSammelrechnungen.Rows.Count > 0 Then
sammelRechnungen = dtSelectedSammelrechnungen
For Each rowRE In dtSelectedSammelrechnungen.Rows
Select Case rowRE("BelegartenNr")
@@ -1377,9 +1412,8 @@ Public Class usrCntlMDMAuswertungen
From dbo.Rechnungsausgang
Where Status = 0
And Sammelrechnung = 6
And Sachbearbeiter ='" & Sachbearbeiter & "'
And UPPER([Sachbearbeiter]) ='" & Sachbearbeiter & "'
AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
Group By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift
Order By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift"
@@ -1390,17 +1424,17 @@ Public Class usrCntlMDMAuswertungen
For Each r In dtBB.Rows
'spSelectReDruSchnSumBS415
Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2)
Dim steuersatz As Double = Math.round(r("Steuersatz %"), 2)
Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".")
Dim sum As DataTable = (New SQL).loadDgvBySql("SELECT SUM(dbo.RechnungsausgangPositionen.Preis * dbo.RechnungsausgangPositionen.Anzahl) AS [Summe von Preis]
Dim sum As DataTable = (New SQL).loadDgvBySql("SELECT ISNULL(SUM(dbo.RechnungsausgangPositionen.Preis * dbo.RechnungsausgangPositionen.Anzahl),0) AS [Summe von Preis]
FROM dbo.Rechnungsausgang INNER JOIN
dbo.RechnungsausgangPositionen ON dbo.Rechnungsausgang.RK_ID = dbo.RechnungsausgangPositionen.RK_ID INNER JOIN
dbo.Leistungen ON dbo.RechnungsausgangPositionen.LeistungsNr = dbo.Leistungen.LeistungsNr
WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ")
AND (dbo.Rechnungsausgang.Status = " & r("Status") & ")
AND (dbo.Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & ")
AND (dbo.Rechnungsausgang.Sachbearbeiter = '" & r("Sachbearbeiter") & "')
AND (UPPER(dbo.Rechnungsausgang.[Sachbearbeiter]) = '" & r("Sachbearbeiter") & "')
AND (dbo.Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & ")
AND (dbo.Rechnungsausgang.BelegartenNr =" & r("BelegartenNr") & ")
AND (dbo.Rechnungsausgang.Währungscode = '" & r("Währungscode") & "')
@@ -1429,7 +1463,7 @@ Public Class usrCntlMDMAuswertungen
WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ")
AND (Status = " & r("Status") & ")
AND (Sammelrechnung = " & r("Sammelrechnung") & ")
AND (Sachbearbeiter = '" & r("Sachbearbeiter") & "')
AND (UPPER([Sachbearbeiter]) = '" & r("Sachbearbeiter") & "')
AND (RechnungsKundenNr = " & r("RechnungsKundenNr") & ")
AND (BelegartenNr =" & r("BelegartenNr") & ")
AND (Währungscode = '" & r("Währungscode") & "')
@@ -1443,8 +1477,8 @@ Public Class usrCntlMDMAuswertungen
For Each re In dtRechnung.Rows
Dim steuerpflichtigerGesamtbetrag = re("SteuerpflichtigerGesamtbetrag")
Dim steuerfreiegerGesamtbetrag = re("SteuerfreierGesamtbetrag")
Dim steuerpflichtigerGesamtbetrag As Double = CDbl(re("SteuerpflichtigerGesamtbetrag"))
Dim steuerfreiegerGesamtbetrag As Double = CDbl(re("SteuerfreierGesamtbetrag"))
Dim dt415 As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing],SteuerpflichtigerBetrag, SteuerfreierBetrag, upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 415", "FMZOLL")
@@ -1452,15 +1486,15 @@ Public Class usrCntlMDMAuswertungen
For Each r415 In dt415.Rows
steuerpflichtigerGesamtbetrag -= dt415("SteuerpflichtigerBetrag")
steuerfreiegerGesamtbetrag -= dt415("SteuerfreierBetrag")
If Not IsDBNull(r415("SteuerpflichtigerBetrag")) AndAlso IsNumeric(r415("SteuerpflichtigerBetrag")) Then steuerpflichtigerGesamtbetrag = steuerpflichtigerGesamtbetrag - CDbl(r415("SteuerpflichtigerBetrag"))
If Not IsDBNull(r415("SteuerfreierBetrag")) AndAlso IsNumeric(r415("SteuerfreierBetrag")) Then steuerfreiegerGesamtbetrag = steuerfreiegerGesamtbetrag - CDbl(r415("SteuerfreierBetrag"))
Dim RECHNUNG As New cRechnungsausgang(re("RK_ID"))
If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, r415("LeistungsNr"), r415("Steuerpflichtig"), r415("LeistungsBez"), r415("IndexZkteing")) Then
RECHNUNG.SteuerfreierGesamtbetrag = steuerfreiegerGesamtbetrag
RECHNUNG.SteuerpflichtigerGesamtbetrag = steuerpflichtigerGesamtbetrag
RECHNUNG.SAVE()
RECHNUNG.SAVE(False)
End If
@@ -1494,9 +1528,9 @@ Public Class usrCntlMDMAuswertungen
If sumCurrenRow > 0 Then
preis = Math.Floor(sumCurrenRow * rowBS("Bankspesen %") + 0.5)
preis = Math.floor(sumCurrenRow * rowBS("Bankspesen %") + 0.5)
Else
preis = Math.Floor(0 - sumCurrenRow * rowBS("Bankspesen %") + 0.5)
preis = Math.floor(0 - sumCurrenRow * rowBS("Bankspesen %") + 0.5)
End If
Else
@@ -1515,17 +1549,16 @@ Public Class usrCntlMDMAuswertungen
If NEWPOS.Steuerpflichtig Then
NEWPOS.SteuerpflichtigerBetrag = preis
RECHNUNG.SteuerpflichtigerGesamtbetrag = +preis
RECHNUNG.SteuerpflichtigerGesamtbetrag = RECHNUNG.SteuerpflichtigerGesamtbetrag + preis
Else
NEWPOS.SteuerfreierBetrag = preis
RECHNUNG.SteuerfreierGesamtbetrag = +preis
RECHNUNG.SteuerfreierGesamtbetrag = RECHNUNG.SteuerfreierGesamtbetrag + preis
End If
NEWPOS.Preis = preis
NEWPOS.INSERT(RElastEntry("RK_ID"))
RECHNUNG.SAVE()
If NEWPOS.INSERT(RElastEntry("RK_ID")) Then RECHNUNG.SAVE(False)
@@ -1549,6 +1582,106 @@ Public Class usrCntlMDMAuswertungen
End If
End Function
Private Function setMautgesamtberichtInRechnung(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable)
Try
If dtSammelRechnugen.Rows.Count = 0 Then
MsgBox("Keine Rechnungen für die Anlage der Mautgesamtberichte gefunden!" & vbNewLine & "Vorgang wird abgebrochen.")
Return False
End If
If Directory.Exists(PathMautberichte) Then
For Each f In Directory.GetFiles(PathMautberichte)
If f.Contains("_Maut.csv") Then
Dim FileCSV = New FileInfo(f)
If FileCSV.Name.Length > 10 Then
Dim KundenNr = FileCSV.Name.ToString.Substring(0, 6)
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)
End If
End If
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)
End If
End If
End If
Next
End If
Catch ex As SystemException
End Try
End Function
Private Function AddAttachementToRE(pathFile As String, kdNr As Integer, RECHNUNG As cRechnungsausgang, rechnungsdatum As Date) As Boolean
If Not IO.File.Exists(pathFile) Then Return False
Dim fi As New System.IO.FileInfo(pathFile)
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "GESAMTBERICHT", rechnungsdatum.ToString("ddMMyyyy"), kdNr, "", fi.Name, kdNr)
If Not DS.uploadDataToDATENSERVER(pathFile, fi.Name, fi.Extension,,,, True) Then
MsgBox("Fehler beim Speichern: Datenserver! KDNR:" & kdNr)
Return False
End If
If CInt(DS.da_id) <= 0 Then
MsgBox("Keine DocId!")
Return False
End If
Dim da_id = DS.da_id
Dim destPath = DS.GET_TOP1_PATH
If RECHNUNG IsNot Nothing Then
RECHNUNG.ANHAENGE.Clear()
Dim ANH As New VERAG_PROG_ALLGEMEIN.cRechnungsausgangAnhaenge
ANH.dsId = CInt(DS.da_id)
ANH.Bezeichnung = DS.da_name
RECHNUNG.ANHAENGE.Add(ANH)
Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False)
Else
Return False
End If
End Function
Private Function setStatus4(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable) As Boolean
'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")
Dim reIsSet As Boolean = False
If dtSammelRechnugen.Rows.Count > 0 Then
For Each re In dtSammelRechnugen.Rows
reIsSet = cFakturierung.doSAMMELRechnungsDruck(19, 6, rechnungsdatum, rechnungsdatum, "", False, , re("RechnungsKundenNr"), 7, , , , Today(), , ,,, ,, )
If Not reIsSet Then Return reIsSet
Next
End If
Return reIsSet
End Function
Private Sub Button16_Click(sender As Object, e As EventArgs) Handles btnContractdaten.Click
@@ -1991,8 +2124,274 @@ Public Class usrCntlMDMAuswertungen
End Sub
Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click
If cbxMautbericht._value = "" Then Exit Sub
If cbxDateMautbericht._value = "" Then Exit Sub
Select Case cbxMautbericht._value
'nur intern
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)
'für Kunde an RE anhängen
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]
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
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
For Each csv As DataRow In distinctDT_CSV.Rows
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(";", ", ") & ";"
Next
outFile.WriteLine(clmns)
Next
outFile.Close()
Next
MsgBox("CSV-Berichte wurden unter " & PathMautberichte & "erzeugt.")
Else
MsgBox("Es wurden keine Daten bereitgestellt")
End If
'für Kunde an RE anhängen (Tool Report to Verag Invoice aus FMZOLL)
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]
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
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!
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
End Sub
Private Function createPDFMautbericht(kdnr As Integer, dt As DataTable, anhangsdatum As Date, path As String) As String
Dim rpt As New rptPLOSE_Anhang
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
rpt.DataSource = dt
rpt.txtKunde.Text = kdnr & " " & New VERAG_PROG_ALLGEMEIN.cAdressen(kdnr).FullName
rpt.lblRgDatum.Text = anhangsdatum.ToShortDateString
rpt.GroupHeaderKz.DataField = "LicencePlateNumber"
rpt.txtNettoKzSum.Visible = False
rpt.txtNettoGesSum.Visible = False
rpt.txtNetto.Visible = False
rpt.txtNettoKatSum.Visible = False
rpt.lblNetto.Visible = False
rpt.txtMWSTKzSum.Visible = False
rpt.txtMWSTGEsSum.Visible = False
rpt.txtMWST.Visible = False
rpt.txtMWSTKatSum.Visible = False
rpt.lblMWST.Visible = False
'rpt.lblBrutto.Text = "Total Amount ( EUR )"
'rpt.Label4.Text = bis.ToShortDateString
'rpt.Label2.Text = "UTA-KundenNr:"
rpt.TextBox1.Text = kdnr
' rpt.Label1.Text = " UTA Fleet Management Service"
rpt.lblSummeKennzeichen.Visible = False
rpt.lblService.Visible = False
'rpt.lblSummeKennzeichen.Location = New PointF(rpt.lblSummeKennzeichen.Location.X + 4.5, rpt.lblSummeKennzeichen.Location.Y)
'rpt.lblSumKategorie.Location = New PointF(rpt.lblSumKategorie.Location.X + 4.5, rpt.lblSumKategorie.Location.Y)
'rpt.lblGessumme.Location = New PointF(rpt.lblGessumme.Location.X + 4.5, rpt.lblGessumme.Location.Y)
Dim sumNetto As Double = 0
Dim sumMWST As Double = 0
Dim sumBrutto As Double = 0
Dim sumNettoKat As Double = 0
Dim sumMWSTKat As Double = 0
Dim sumBruttoKat As Double = 0
Dim sumNettoGes As Double = 0
Dim sumMWSTGes As Double = 0
Dim sumBruttoGes As Double = 0
Dim cntKat = 0
Dim cnt = 0
rpt.GroupFooterKat.Visible = False
AddHandler rpt.Detail.Format, Sub()
rpt.txtKunde.Text = sql.isDbnullEmpty(rpt.Fields.Item("Customer No").Value, "")
rpt.txtKunde.Text &= " " & sql.isDbnullEmpty(rpt.Fields.Item("Customer name").Value, "")
rpt.txtProdukt.Text = sql.isDbnullEmpty(rpt.Fields.Item("Product description").Value, "") 'sql.isDbnullEmpty(rpt.Fields.Item("plose_ProduktCode").Value, "") & " - " & sql.isDbnullEmpty(rpt.Fields.Item("plose_Produktbeschreibung").Value, "")
rpt.txtKartennummer.Text = sql.isDbnullEmpty(rpt.Fields.Item("Card number").Value, "")
rpt.txtEingang.Text = sql.isDbnullEmpty(rpt.Fields.Item("Entry Terminal").Value, "")
rpt.txtAusgang.Text = sql.isDbnullEmpty(rpt.Fields.Item("Exit Terminal").Value, "")
rpt.txtLand.Text = sql.isDbnullEmpty(rpt.Fields.Item("Transaction Country").Value, "")
rpt.txtDatum.Text = sql.isDbnullEmpty(rpt.Fields.Item("Transaction date").Value, "")
rpt.txtNetto.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("Net Amount").Value, 2, "")
rpt.txtMWST.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("VAT Amount").Value, 2, "")
rpt.txtBrutto.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("Total Amount").Value, 2, "")
sumNetto += 0 'SQL.isDbnullEmptyDbl(rpt.Fields.Item("plose_NettobetragWaehrungAbbuchung").Value, 4, 0)
sumMWST += 0 'SQL.isDbnullEmptyDbl(rpt.Fields.Item("plose_MWSTBetragWaehrungAbbuchung").Value, 4, 0)
sumBrutto += sql.isDbnullEmptyDbl(rpt.Fields.Item("Total Amount").Value, 4, 0)
cnt += 1
End Sub
AddHandler rpt.GroupHeaderKz.Format, Sub()
rpt.txtKennzeichen.Text = sql.isDbnullEmpty(rpt.Fields.Item("Licence Plate Number").Value, "")
If rpt.txtKennzeichen.Text = "" Then rpt.lblKennzeichen.Visible = False
End Sub
AddHandler rpt.GroupHeaderKat.Format, Sub()
rpt.lblKategorie.Text = "MAUT REPORT"
End Sub
AddHandler rpt.GroupFooterKz.Format, Sub()
rpt.txtNettoKzSum.Text = sumNetto.ToString("N2")
rpt.txtMWSTKzSum.Text = sumMWST.ToString("N2")
rpt.txtBruttoKzSum.Text = sumBrutto.ToString("N2")
sumNettoGes += sumNetto
sumMWSTGes += sumMWST
sumBruttoGes += sumBrutto
sumNetto = 0
sumMWST = 0
sumBrutto = 0
rpt.lblSummeKennzeichen.Text = rpt.lblSummeKennzeichen.Text.Replace("Kennzeichen", sql.isDbnullEmpty(rpt.Fields.Item("Licence Plate Number").Value, ""))
End Sub
AddHandler rpt.GroupFooterKat.Format, Sub()
sumNettoKat += sumNetto
sumMWSTKat += sumMWST
sumBruttoKat += sumBrutto
sumNetto = 0
sumMWST = 0
sumBrutto = 0
rpt.txtNettoKatSum.Text = sumNettoKat.ToString("N2")
rpt.txtMWSTKatSum.Text = sumMWSTKat.ToString("N2")
rpt.txtBruttoKatSum.Text = sumBruttoKat.ToString("N2")
cntKat += 1
End Sub
AddHandler rpt.ReportFooter1.Format, Sub()
'sumNettoGes += sumNettoKat
'sumMWSTGes += sumMWSTKat
'sumBruttoGes += sumBruttoKat
sumNettoKat = 0
sumMWSTKat = 0
sumBruttoKat = 0
sumNetto = 0
sumMWST = 0
sumBrutto = 0
rpt.txtNettoGesSum.Text = sumNettoGes.ToString("N2")
rpt.txtMWSTGEsSum.Text = sumMWSTGes.ToString("N2")
rpt.txtBruttoGesSum.Text = sumBruttoGes.ToString("N2")
'If cntKat <= 1 Then
' rpt.GroupFooterKat.Visible = False
'End If
End Sub
'print.Viewer.LoadDocument(rpt)
'print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
'print.Show()
Dim tmpPath = path & "\" & kdnr & "_Maut.pdf"
Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport
rpt.Run(False)
p.NeverEmbedFonts = ""
p.Export(rpt.Document, tmpPath)
rpt.Dispose()
Return tmpPath
End Function
End Class