Esensbestellungen, MDM Datenverarbeitung, UID pruefung

This commit is contained in:
2023-12-15 16:46:33 +01:00
parent fd7942711c
commit ed0823fbe4
5 changed files with 135 additions and 102 deletions

View File

@@ -585,8 +585,10 @@ Public Class UsrCntlessensbestellungen
Private Sub initCBOFields() Private Sub initCBOFields()
cbxMitarbeiter.DropDownWidth = 200
cbxMenu.fillWithSQL("SELECT Distinct Top 50 (REPLACE(MenuTitel,'Wochenkarte ','')) + ' - ' + Convert(varchar, Year(MenuDateVon)), MenuDateVon from tblEBMenu order by MenuDateVon desc", True, "AVISO", True) '/ where MenuDateVon >= GETDATE() cbxMenu.fillWithSQL("SELECT Distinct Top 50 (REPLACE(MenuTitel,'Wochenkarte ','')) + ' - ' + Convert(varchar, Year(MenuDateVon)), MenuDateVon from tblEBMenu order by MenuDateVon desc", True, "AVISO", True) '/ where MenuDateVon >= GETDATE()
cbxMitarbeiter.fillWithSQL("SELECT [mit_id], ([mit_vname] + ' ' + [mit_nname]) as name FROM [tblMitarbeiter] where [mit_ChatBenutzer] = 1 AND [mit_pseudoUser] = 0 AND [mit_gekuendigt] = 0 AND mit_niederlassung = 'SUB' AND ((CAse when mit_firma = 'ALL' Then mit_FirmaHaupt else mit_firma END ) = 'VERAG' Or mit_firma = 'UNISPED' OR mit_firma = 'IMEX' OR mit_firma = 'FRONTOFFICE') Or mit_id = 144 order by name ", False, "ADMIN", True) cbxMitarbeiter.fillWithSQL("SELECT [mit_id], ([mit_vname] + ' ' + [mit_nname]) + ' (' + mit_firma +')' as name FROM [tblMitarbeiter] where [mit_ChatBenutzer] = 1 AND [mit_pseudoUser] = 0 AND [mit_gekuendigt] = 0 AND mit_niederlassung = 'SUB' AND ((CAse when mit_firma = 'ALL' Then mit_FirmaHaupt else mit_firma END ) = 'VERAG' Or mit_firma = 'UNISPED' OR mit_firma = 'IMEX' OR mit_firma = 'FRONTOFFICE') Or mit_id = 144 order by name ", False, "ADMIN", True)
cbxAbteilung.fillWithSQL("SELECT [abt_kuerzel], [abt_bezeichnung] from [tblAbteilungen] ", False, "ADMIN", True,, "") cbxAbteilung.fillWithSQL("SELECT [abt_kuerzel], [abt_bezeichnung] from [tblAbteilungen] ", False, "ADMIN", True,, "")
cbxGebäude.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Frontoffice", "Frontoffice")) cbxGebäude.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Frontoffice", "Frontoffice"))

View File

@@ -25,7 +25,8 @@ Partial Class frmMDMDatenverarbetiung
Me.components = New System.ComponentModel.Container() Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMDMDatenverarbetiung)) Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMDMDatenverarbetiung))
Me.pnl = New System.Windows.Forms.Panel() Me.pnl = New System.Windows.Forms.Panel()
Me.cbxASFINAGNichtAbgerechnet = New System.Windows.Forms.CheckBox() Me.cbxBelegeerstellt = New System.Windows.Forms.CheckBox()
Me.cbxASFINAGAbgerechnet = New System.Windows.Forms.CheckBox()
Me.cbxTestdaten = New System.Windows.Forms.CheckBox() Me.cbxTestdaten = New System.Windows.Forms.CheckBox()
Me.Panel4 = New System.Windows.Forms.Panel() Me.Panel4 = New System.Windows.Forms.Panel()
Me.Label46 = New System.Windows.Forms.Label() Me.Label46 = New System.Windows.Forms.Label()
@@ -57,7 +58,7 @@ Partial Class frmMDMDatenverarbetiung
Me.Panel2 = New System.Windows.Forms.Panel() Me.Panel2 = New System.Windows.Forms.Panel()
Me.Label43 = New System.Windows.Forms.Label() Me.Label43 = New System.Windows.Forms.Label()
Me.datPloseAnhang = New System.Windows.Forms.DateTimePicker() Me.datPloseAnhang = New System.Windows.Forms.DateTimePicker()
Me.Button4 = New System.Windows.Forms.Button() Me.btnREerstellen = New System.Windows.Forms.Button()
Me.Label44 = New System.Windows.Forms.Label() Me.Label44 = New System.Windows.Forms.Label()
Me.txtPloseAnh_Einarbeitung = New System.Windows.Forms.TextBox() Me.txtPloseAnh_Einarbeitung = New System.Windows.Forms.TextBox()
Me.pbPloseAnh_Proz = New System.Windows.Forms.ProgressBar() Me.pbPloseAnh_Proz = New System.Windows.Forms.ProgressBar()
@@ -83,7 +84,8 @@ Partial Class frmMDMDatenverarbetiung
' '
'pnl 'pnl
' '
Me.pnl.Controls.Add(Me.cbxASFINAGNichtAbgerechnet) Me.pnl.Controls.Add(Me.cbxBelegeerstellt)
Me.pnl.Controls.Add(Me.cbxASFINAGAbgerechnet)
Me.pnl.Controls.Add(Me.cbxTestdaten) Me.pnl.Controls.Add(Me.cbxTestdaten)
Me.pnl.Controls.Add(Me.Panel4) Me.pnl.Controls.Add(Me.Panel4)
Me.pnl.Controls.Add(Me.FlowLayoutPanel) Me.pnl.Controls.Add(Me.FlowLayoutPanel)
@@ -97,24 +99,35 @@ Partial Class frmMDMDatenverarbetiung
Me.pnl.Size = New System.Drawing.Size(1163, 100) Me.pnl.Size = New System.Drawing.Size(1163, 100)
Me.pnl.TabIndex = 1 Me.pnl.TabIndex = 1
' '
'cbxASFINAGNichtAbgerechnet 'cbxBelegeerstellt
' '
Me.cbxASFINAGNichtAbgerechnet.AutoSize = True Me.cbxBelegeerstellt.AutoSize = True
Me.cbxASFINAGNichtAbgerechnet.Checked = True Me.cbxBelegeerstellt.Checked = True
Me.cbxASFINAGNichtAbgerechnet.CheckState = System.Windows.Forms.CheckState.Checked Me.cbxBelegeerstellt.CheckState = System.Windows.Forms.CheckState.Checked
Me.cbxASFINAGNichtAbgerechnet.Location = New System.Drawing.Point(784, 75) Me.cbxBelegeerstellt.Location = New System.Drawing.Point(654, 75)
Me.cbxASFINAGNichtAbgerechnet.Name = "cbxASFINAGNichtAbgerechnet" Me.cbxBelegeerstellt.Name = "cbxBelegeerstellt"
Me.cbxASFINAGNichtAbgerechnet.Size = New System.Drawing.Size(112, 17) Me.cbxBelegeerstellt.Size = New System.Drawing.Size(86, 17)
Me.cbxASFINAGNichtAbgerechnet.TabIndex = 52 Me.cbxBelegeerstellt.TabIndex = 53
Me.cbxASFINAGNichtAbgerechnet.Text = "nicht abgerechnet" Me.cbxBelegeerstellt.Text = "Belge erstellt"
Me.cbxASFINAGNichtAbgerechnet.UseVisualStyleBackColor = True Me.cbxBelegeerstellt.UseVisualStyleBackColor = True
Me.cbxASFINAGNichtAbgerechnet.Visible = False Me.cbxBelegeerstellt.Visible = False
'
'cbxASFINAGAbgerechnet
'
Me.cbxASFINAGAbgerechnet.AutoSize = True
Me.cbxASFINAGAbgerechnet.Checked = True
Me.cbxASFINAGAbgerechnet.CheckState = System.Windows.Forms.CheckState.Checked
Me.cbxASFINAGAbgerechnet.Location = New System.Drawing.Point(746, 75)
Me.cbxASFINAGAbgerechnet.Name = "cbxASFINAGAbgerechnet"
Me.cbxASFINAGAbgerechnet.Size = New System.Drawing.Size(144, 17)
Me.cbxASFINAGAbgerechnet.TabIndex = 52
Me.cbxASFINAGAbgerechnet.Text = "Abrechnungsdat. gesetzt"
Me.cbxASFINAGAbgerechnet.UseVisualStyleBackColor = True
Me.cbxASFINAGAbgerechnet.Visible = False
' '
'cbxTestdaten 'cbxTestdaten
' '
Me.cbxTestdaten.AutoSize = True Me.cbxTestdaten.AutoSize = True
Me.cbxTestdaten.Checked = True
Me.cbxTestdaten.CheckState = System.Windows.Forms.CheckState.Checked
Me.cbxTestdaten.Location = New System.Drawing.Point(905, 75) Me.cbxTestdaten.Location = New System.Drawing.Point(905, 75)
Me.cbxTestdaten.Name = "cbxTestdaten" Me.cbxTestdaten.Name = "cbxTestdaten"
Me.cbxTestdaten.Size = New System.Drawing.Size(74, 17) Me.cbxTestdaten.Size = New System.Drawing.Size(74, 17)
@@ -435,7 +448,7 @@ Partial Class frmMDMDatenverarbetiung
' '
Me.Panel2.Controls.Add(Me.Label43) Me.Panel2.Controls.Add(Me.Label43)
Me.Panel2.Controls.Add(Me.datPloseAnhang) Me.Panel2.Controls.Add(Me.datPloseAnhang)
Me.Panel2.Controls.Add(Me.Button4) Me.Panel2.Controls.Add(Me.btnREerstellen)
Me.Panel2.Controls.Add(Me.Label44) Me.Panel2.Controls.Add(Me.Label44)
Me.Panel2.Controls.Add(Me.txtPloseAnh_Einarbeitung) Me.Panel2.Controls.Add(Me.txtPloseAnh_Einarbeitung)
Me.Panel2.Controls.Add(Me.pbPloseAnh_Proz) Me.Panel2.Controls.Add(Me.pbPloseAnh_Proz)
@@ -463,15 +476,15 @@ Partial Class frmMDMDatenverarbetiung
Me.datPloseAnhang.Size = New System.Drawing.Size(103, 20) Me.datPloseAnhang.Size = New System.Drawing.Size(103, 20)
Me.datPloseAnhang.TabIndex = 39 Me.datPloseAnhang.TabIndex = 39
' '
'Button4 'btnREerstellen
' '
Me.Button4.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.btnREerstellen.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button4.Location = New System.Drawing.Point(6, 40) Me.btnREerstellen.Location = New System.Drawing.Point(6, 40)
Me.Button4.Name = "Button4" Me.btnREerstellen.Name = "btnREerstellen"
Me.Button4.Size = New System.Drawing.Size(283, 23) Me.btnREerstellen.Size = New System.Drawing.Size(283, 23)
Me.Button4.TabIndex = 30 Me.btnREerstellen.TabIndex = 30
Me.Button4.Text = "Rechnungen / Anhänge erstellen" Me.btnREerstellen.Text = "Rechnungen / Anhänge erstellen"
Me.Button4.UseVisualStyleBackColor = True Me.btnREerstellen.UseVisualStyleBackColor = True
' '
'Label44 'Label44
' '
@@ -657,7 +670,7 @@ Partial Class frmMDMDatenverarbetiung
Friend WithEvents FlowLayoutPanel As FlowLayoutPanel Friend WithEvents FlowLayoutPanel As FlowLayoutPanel
Friend WithEvents btn As Button Friend WithEvents btn As Button
Friend WithEvents btnDatenLaden As Button Friend WithEvents btnDatenLaden As Button
Friend WithEvents Button4 As Button Friend WithEvents btnREerstellen As Button
Friend WithEvents Button3 As Button Friend WithEvents Button3 As Button
Friend WithEvents Button2 As Button Friend WithEvents Button2 As Button
Friend WithEvents txtAnzahl As VERAG_PROG_ALLGEMEIN.MyTextBox Friend WithEvents txtAnzahl As VERAG_PROG_ALLGEMEIN.MyTextBox
@@ -689,5 +702,6 @@ Partial Class frmMDMDatenverarbetiung
Friend WithEvents bntDatumsetzen As Button Friend WithEvents bntDatumsetzen As Button
Friend WithEvents bntDatumzuruecksetzen As Button Friend WithEvents bntDatumzuruecksetzen As Button
Friend WithEvents cbxTestdaten As CheckBox Friend WithEvents cbxTestdaten As CheckBox
Friend WithEvents cbxASFINAGNichtAbgerechnet As CheckBox Friend WithEvents cbxASFINAGAbgerechnet As CheckBox
Friend WithEvents cbxBelegeerstellt As CheckBox
End Class End Class

View File

@@ -75,12 +75,12 @@ Public Class frmMDMDatenverarbetiung
btnDatenLaden.Text = "Daten laden" btnDatenLaden.Text = "Daten laden"
Case "UTA" : initDgv_UTA() Case "UTA" : initDgv_UTA()
btnDatenLaden.Text = "Daten laden" btnDatenLaden.Text = "Daten laden"
Case "ASFINAG" : initDgv_ASFINAG(Not cbxASFINAGNichtAbgerechnet.Checked) Case "ASFINAG" : initDgv_ASFINAG(cbxASFINAGAbgerechnet.Checked, cbxBelegeerstellt.Checked)
btnDatenLaden.Text = "Mautdaten einlesen" btnDatenLaden.Text = "Daten laden"
End Select End Select
End Sub End Sub
Private Sub Button4_Click_1(sender As Object, e As EventArgs) Handles Button4.Click Private Sub btnREerstellen_Click_1(sender As Object, e As EventArgs) Handles btnREerstellen.Click
Dim errorTmp = False Dim errorTmp = False
Select Case LIEFERANT Select Case LIEFERANT
Case "PLOSE" Case "PLOSE"
@@ -97,16 +97,19 @@ Public Class frmMDMDatenverarbetiung
End If End If
Case "ASFINAG" Case "ASFINAG"
cbxASFINAGNichtAbgerechnet.Checked = False 'cbxASFINAGAbgerechnet.Checked = False
'cbxBelegeerstellt.Checked = False
Dim abrechnungsDatum As DateTime = Now()
MsgBox("Funktion nicht implementiert")
Exit Sub
genRGAtt_ASFINAG()
'MsgBox("Funktion nicht implementiert")
'Exit Sub
If datum = Nothing Then
datum = SQL.getValueTxtBySql("select top (1) Abrechnungsdatum from Abrechnungsdatum", "ASFINAG")
End If
genRGAtt_ASFINAG(abrechnungsDatum, datum)
initDgv_ASFINAG(cbxASFINAGAbgerechnet.Checked, cbxBelegeerstellt.Checked)
End Select End Select
End Sub End Sub
@@ -257,8 +260,6 @@ Public Class frmMDMDatenverarbetiung
group by Adressen.AdressenNr,Adressen.[Name 1], contractPartner,CardNumber group by Adressen.AdressenNr,Adressen.[Name 1], contractPartner,CardNumber
order by Adressen.AdressenNr" order by Adressen.AdressenNr"
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "ASFINAG") Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "ASFINAG")
'DataGridView.DataSource = dt 'DataGridView.DataSource = dt
@@ -506,15 +507,16 @@ Public Class frmMDMDatenverarbetiung
End Sub End Sub
Sub initDgv_ASFINAG(abgerechnet As Boolean) Sub initDgv_ASFINAG(abgerechnet As Boolean, belegeErstellt As Boolean)
'datum = CDate(SQL.getValueTxtBySql("SELECT Abrechnungsdatum FROM Abrechnungsdatum", "ASFINAG")) 'datum = CDate(SQL.getValueTxtBySql("SELECT Abrechnungsdatum FROM Abrechnungsdatum", "ASFINAG"))
Dim sqlString = "AND (TTRBody.abrechnungsdatum " & IIf(abgerechnet, "is not null)", "is null)") Dim sqlString = " AND (TTRBody.abrechnungsdatum " & IIf(abgerechnet, "is not null)", "is null)")
sqlString &= "AND (TTRBody.belegerstellungsdatum " & IIf(belegeErstellt, "is not null)", "is null)")
With MyDatagridview1 With MyDatagridview1
.Columns.Clear() .Columns.Clear()
'MsgBox(.sql) 'MsgBox(.sql)
.SET_SQL(" SELECT dbo.TTRBody.OBUID,dbo.TTRBody.CardNumber,dbo.TTRBody.receiptNumber,dbo.TTRBody.VATAmount,dbo.TTRBody.amountInclVAT,dbo.TTRBody.abrechnungsdatum, dbo.tblWarenarten.WarenartDE, dbo.CLFArchiv.vehicleLicensePlate .SET_SQL(" SELECT dbo.TTRBody.OBUID,dbo.TTRBody.CardNumber,dbo.TTRBody.receiptNumber,dbo.TTRBody.VATAmount,dbo.TTRBody.amountInclVAT,dbo.TTRBody.abrechnungsdatum,dbo.TTRBody.belegerstellungsdatum, dbo.tblWarenarten.WarenartDE, dbo.CLFArchiv.vehicleLicensePlate
FROM dbo.CLFArchiv FROM dbo.CLFArchiv
RIGHT OUTER JOIN dbo.TTRBody ON dbo.CLFArchiv.OBUID = dbo.TTRBody.OBUID RIGHT OUTER JOIN dbo.TTRBody ON dbo.CLFArchiv.OBUID = dbo.TTRBody.OBUID
LEFT OUTER JOIN dbo.tblWarenarten ON dbo.TTRBody.ProductCode = dbo.tblWarenarten.ProductCode LEFT OUTER JOIN dbo.tblWarenarten ON dbo.TTRBody.ProductCode = dbo.tblWarenarten.ProductCode
@@ -530,6 +532,7 @@ Public Class frmMDMDatenverarbetiung
.Columns("OBUID").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill .Columns("OBUID").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("CardNumber").HeaderText = "Kartennummer" .Columns("CardNumber").HeaderText = "Kartennummer"
.Columns("abrechnungsdatum").HeaderText = "Abrechnungsdatum" .Columns("abrechnungsdatum").HeaderText = "Abrechnungsdatum"
.Columns("belegerstellungsdatum").HeaderText = "Belegerstellung am"
.Columns("receiptNumber").HeaderText = "Rechnungsnummer" .Columns("receiptNumber").HeaderText = "Rechnungsnummer"
.Columns("VATAmount").HeaderText = "MWST" .Columns("VATAmount").HeaderText = "MWST"
.Columns("amountInclVAT").HeaderText = "Brutto" .Columns("amountInclVAT").HeaderText = "Brutto"
@@ -572,7 +575,8 @@ Public Class frmMDMDatenverarbetiung
End If End If
Next Next
cbxASFINAGNichtAbgerechnet.Visible = False cbxASFINAGAbgerechnet.Visible = False
cbxBelegeerstellt.Visible = False
cbxTestdaten.Visible = False cbxTestdaten.Visible = False
Select Case Me.LIEFERANT Select Case Me.LIEFERANT
@@ -589,11 +593,12 @@ Public Class frmMDMDatenverarbetiung
'Panel3.Controls.Add(c) 'Panel3.Controls.Add(c)
'c.Dock = DockStyle.Fill 'c.Dock = DockStyle.Fill
Case "ASFINAG" Case "ASFINAG"
cbxASFINAGNichtAbgerechnet.Visible = True cbxASFINAGAbgerechnet.Visible = True
cbxBelegeerstellt.Visible = True
cbxTestdaten.Visible = True cbxTestdaten.Visible = True
Panel4.Visible = False Panel4.Visible = False
pnlAsfinag.Visible = True pnlAsfinag.Visible = True
Exit Sub
End Select End Select
init() init()
@@ -750,14 +755,14 @@ Public Class frmMDMDatenverarbetiung
End Function End Function
Function genRGAtt_ASFINAG() As Boolean Function genRGAtt_ASFINAG(belegerstellungsdatum As DateTime, abrechnungsdatum As Date) As Boolean
If cbxASFINAGNichtAbgerechnet.Checked = True Then If cbxASFINAGAbgerechnet.Checked = True Then
MsgBox("Bitte abgerechnete Daten auswählen!") MsgBox("Bitte abgerechnete Daten auswählen!")
Return False Return False
End If End If
Dim dt_Main As DataTable = SQL.loadDgvBySql_Param("SELECT Maut.*,Adressen.AdressenNr FROM (SELECT Kreditkarten.KartenNr AS Kartennummer, Adressen.AdressenNr AS KundenNr FROM Adressen INNER JOIN Kreditkarten ON Adressen.AdressenNr = Kreditkarten.AdressenNr) as KUK INNER JOIN [tblAsfinagMaut] as Maut ON KUK.Kartennummer = Maut.cardnumber INNER JOIN Adressen ON KUK.KundenNr = Adressen.AdressenNr", "FMZOLL") Dim dt_Main As DataTable = SQL.loadDgvBySql_Param("SELECT KundenNr, cardnumber FROM (SELECT Kreditkarten.KartenNr AS Kartennummer, Adressen.AdressenNr AS KundenNr FROM Adressen INNER JOIN Kreditkarten ON Adressen.AdressenNr = Kreditkarten.AdressenNr) as KUK INNER JOIN [tblAsfinagMaut] as Maut ON KUK.Kartennummer = Maut.cardnumber INNER JOIN Adressen ON KUK.KundenNr = Adressen.AdressenNr where Maut.receiptCreated = 0 Group by KundenNr, cardnumber ", "FMZOLL")
If dt_Main Is Nothing OrElse dt_Main.Rows.Count = 0 Then If dt_Main Is Nothing OrElse dt_Main.Rows.Count = 0 Then
MsgBox("Keine Daten!") MsgBox("Keine Daten!")
@@ -779,10 +784,11 @@ Public Class frmMDMDatenverarbetiung
Dim cnt = 0 Dim cnt = 0
Dim dv_main = New DataView(dt_Main, "", "AdressenNr", DataViewRowState.CurrentRows) Dim displayViewKunden = New DataView(dt_Main, "", "KundenNr", DataViewRowState.CurrentRows)
Dim dt_main_distinctKunden As DataTable = dv_main.ToTable(True, "AdressenNr") Dim distinctDT_distKunden As DataTable = displayViewKunden.ToTable(True, "KundenNr")
If vbYes = MsgBox("Es wurden " & MyDatagridview1.Rows.Count & " Abrechnungen von " & dt_main_distinctKunden.Rows.Count & " Kunden gefunden " & vbNewLine & " Möchten Sie die Anhänge erstellen?", vbYesNoCancel) Then
If vbYes = MsgBox("Es wurden " & MyDatagridview1.Rows.Count & " Transaktionen von " & dt_Main.Rows.Count & " Kunden gefunden " & vbNewLine & " Möchten Sie die Anhänge erstellen?", vbYesNoCancel) Then
Dim dir = "C:\Users\d.breimaier\Desktop\Asfinag\Mautberichte" '"F:\FMZoll\Maut\AT\Anlagen\SDL" Dim dir = "C:\Users\d.breimaier\Desktop\Asfinag\Mautberichte" '"F:\FMZoll\Maut\AT\Anlagen\SDL"
If Directory.Exists(dir) Then dir &= "_" & Now.ToShortTimeString.Replace(":", "") If Directory.Exists(dir) Then dir &= "_" & Now.ToShortTimeString.Replace(":", "")
@@ -836,11 +842,20 @@ Public Class frmMDMDatenverarbetiung
For Each R_ASFINAG In dt_Main.Rows For Each R_ASFINAG In distinctDT_distKunden.Rows
Dim SPEDBUCH As VERAG_PROG_ALLGEMEIN.cSpeditionsbuch = Nothing Dim SPEDBUCH As VERAG_PROG_ALLGEMEIN.cSpeditionsbuch = Nothing
Dim verarbOK = True Dim verarbOK = True
If Not genASFINAG_SPEDBUCH_ByKdNr(R_ASFINAG("AdressenNr"), SPEDBUCH) Then verarbOK = False If Not genASFINAG_SPEDBUCH_ByKdNr(R_ASFINAG("KundenNr"), SPEDBUCH) Then verarbOK = False
If Not genASFINAG_RECHNUNG_BySPEDBUCH(R_ASFINAG("AdressenNr"), SPEDBUCH, dat_Sum_Von.Value, dat_Sum_Bis.Value) Then verarbOK = False If Not genASFINAG_RECHNUNG_BySPEDBUCH(R_ASFINAG("KundenNr"), SPEDBUCH, dat_Sum_Von.Value, dat_Sum_Bis.Value) Then verarbOK = False
If verarbOK Then
SQL.doSQL("UPDATE dbo.TTRBody SET belegerstellungsdatum = '" & belegerstellungsdatum & "' WHERE (PKHistory = 0) AND (PKFileName LIKE N'" & checkifTestfiles() & ".%') AND (FileCreationDate <= '" & belegerstellungsdatum & "') AND (abrechnungsdatum = '" & abrechnungsdatum & "')", "ASFINAG")
Dim results As DataRow() = dt_Main.Select("KundenNr ='" & R_ASFINAG("KundenNr") & "'")
For Each r As DataRow In results
SQL.doSQL("UPDATE [tblAsfinagMaut] SET receiptCreated = 1 WHERE cardnumber = " & r.Item("cardnumber") & "", "FMZOLL")
Next
End If
If True Then 'cnt Mod 10 = 0 Then If True Then 'cnt Mod 10 = 0 Then
txtPloseAnh_Einarbeitung.Text = cnt & " / " & dt_Main.Rows.Count txtPloseAnh_Einarbeitung.Text = cnt & " / " & dt_Main.Rows.Count
@@ -1930,31 +1945,11 @@ Public Class frmMDMDatenverarbetiung
RG.Buchungsjahr = cRKSV.getGJ(RG.RechnungsDatum) RG.Buchungsjahr = cRKSV.getGJ(RG.RechnungsDatum)
Dim sqlstr_mitMWSt As String = "SELECT '135' as leistungsNr, [contractPartner] as ProductCode, sum([netAmount]) as netamount ,sum([VATamount]) as Vatamount ,sum([totalAmount]) as amountInclVAT FROM Kreditkarten INNER JOIN tblAsfinagMaut ON Kreditkarten.KartenNr = tblAsfinagMaut.cardnumber Where Kreditkarten.AdressenNr= '" & KD.KundenNr & "' and tblAsfinagMaut.VATamount <> 0 Group by [contractPartner]" Dim sqlstr As String = "SELECT '135' as leistungsNr, [contractPartner] as ProductCode, sum([netAmount]) as netamount ,sum([VATamount]) as Vatamount ,sum([totalAmount]) as amountInclVAT FROM Kreditkarten INNER JOIN tblAsfinagMaut ON Kreditkarten.KartenNr = tblAsfinagMaut.cardnumber Where Kreditkarten.AdressenNr= '" & KD.KundenNr & "' and tblAsfinagMaut.VATamount <> 0 Group by [contractPartner]
UNION
Dim sqlstr_ohneMWSt As String = "SELECT '153' as leistungsNr, [contractPartner] as ProductCode, sum([netAmount]) as netamount ,sum([VATamount]) as Vatamount ,sum([totalAmount]) as amountInclVAT FROM Kreditkarten INNER JOIN tblAsfinagMaut ON Kreditkarten.KartenNr = tblAsfinagMaut.cardnumber Where Kreditkarten.AdressenNr= '" & KD.KundenNr & "' and tblAsfinagMaut.VATamount = 0 Group by [contractPartner]" SELECT '153' as leistungsNr, [contractPartner] as ProductCode, sum([netAmount]) as netamount ,sum([VATamount]) as Vatamount ,sum([totalAmount]) as amountInclVAT FROM Kreditkarten INNER JOIN tblAsfinagMaut ON Kreditkarten.KartenNr = tblAsfinagMaut.cardnumber Where Kreditkarten.AdressenNr= '" & KD.KundenNr & "' and tblAsfinagMaut.VATamount = 0 Group by [contractPartner]"
Dim dt_mitMwSt As DataTable = SQL.loadDgvBySql_Param(sqlstr_mitMWSt, "FMZOLL")
Dim dt_ohneMwsT As DataTable = SQL.loadDgvBySql_Param(sqlstr_ohneMWSt, "FMZOLL")
Dim dt As New DataTable
If (dt_mitMwSt IsNot Nothing AndAlso dt_mitMwSt.Rows.Count > 0) And (dt_ohneMwsT IsNot Nothing AndAlso dt_ohneMwsT.Rows.Count > 0) Then
dt_mitMwSt.Merge(dt_ohneMwsT, False, MissingSchemaAction.Add)
dt = dt_mitMwSt.Copy
ElseIf dt_ohneMwsT IsNot Nothing AndAlso dt_ohneMwsT.Rows.Count > 0 Then
dt = dt_ohneMwsT.Copy
Else
dt = dt_mitMwSt.Copy
End If
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
For Each r In dt.Rows For Each r In dt.Rows
@@ -2419,7 +2414,7 @@ Public Class frmMDMDatenverarbetiung
If count > 0 Then If count > 0 Then
lblProzPruef.Text = CInt(cnt / count * 100) & " %" '100 lblProzPruef.Text = CInt(cnt / count * 100) & " %" '100
Else Else
cbxASFINAGNichtAbgerechnet.Checked = False cbxASFINAGAbgerechnet.Checked = True
End If End If
Catch ex As Exception Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace) MsgBox(ex.Message & ex.StackTrace)
@@ -2610,12 +2605,12 @@ Public Class frmMDMDatenverarbetiung
Private Function setFakturiert_ASFINAG() As Boolean Private Function setFakturiert_ASFINAG() As Boolean
'Abrechnungsdatum setzen 'Abrechnungsdatum setzen
If cbxASFINAGNichtAbgerechnet.Checked = False Then If cbxASFINAGAbgerechnet.Checked = False Then
cbxASFINAGNichtAbgerechnet.Checked = True cbxASFINAGAbgerechnet.Checked = True
End If End If
If MyDatagridview1.Rows.Count = 0 Then If MyDatagridview1.Rows.Count = 0 Then
MsgBox("keine Daten zum Abrechnen vorhanden!") MsgBox("Keine Daten zum Abrechnen vorhanden!")
Return False Return False
End If End If
@@ -2625,9 +2620,9 @@ Public Class frmMDMDatenverarbetiung
datum = f.Datum datum = f.Datum
SQL.doSQL("DELETE FROM tblAsfinagMaut", "FMZOLL") SQL.doSQL("DELETE FROM tblAsfinagMaut", "FMZOLL")
If SQL.doSQL("Update Abrechnungsdatum SET Abrechnungsdatum = '" & f.Datum.ToShortDateString & "'", "ASFINAG") Then If SQL.doSQL("Update Abrechnungsdatum SET Abrechnungsdatum = '" & f.Datum.ToShortDateString & "'", "ASFINAG") Then
If SQL.doSQL("UPDATE dbo.TTRBody SET Abrechnungsdatum = '" & f.Datum.ToShortDateString & "' WHERE (PKHistory = 0) AND (PKFileName LIKE N'" & checkifTestfiles() & ".%') AND (FileCreationDate <= '" & f.Datum.ToShortDateString & "') AND (abrechnungsdatum IS NULL)", "ASFINAG") Then If SQL.doSQL("UPDATE dbo.TTRBody SET Abrechnungsdatum = '" & f.Datum.ToShortDateString & "' WHERE (PKHistory = 0) AND (PKFileName LIKE N'" & checkifTestfiles() & ".%') AND (FileCreationDate <= '" & f.Datum.ToShortDateString & "') AND abrechnungsdatum IS NULL AND belegerstellungsdatum IS NULL", "ASFINAG") Then
Dim dt As DataTable = SQL.loadDgvBySql("Select dbo.TTRBody.OBUID, dbo.TTRBody.CardNumber, dbo.TTRBody.receiptNumber, dbo.TTRBody.VATAmount, dbo.TTRBody.amountInclVAT, dbo.TTRBody.DeliveryDate,dbo.TTRBody.abrechnungsdatum, dbo.tblWarenarten.WarenartDE, dbo.CLFArchiv.vehicleLicensePlate, dbo.TTRBody.InfoField, dbo.TTRBody.ProductCode, dbo.TTRBody.Town Dim dt As DataTable = SQL.loadDgvBySql("Select dbo.TTRBody.OBUID, dbo.TTRBody.CardNumber, dbo.TTRBody.receiptNumber, dbo.TTRBody.VATAmount, dbo.TTRBody.amountInclVAT, dbo.TTRBody.DeliveryDate,dbo.TTRBody.abrechnungsdatum,dbo.TTRBody.belegerstellungsdatum, dbo.tblWarenarten.WarenartDE, dbo.CLFArchiv.vehicleLicensePlate, dbo.TTRBody.InfoField, dbo.TTRBody.ProductCode, dbo.TTRBody.Town
From dbo.CLFArchiv From dbo.CLFArchiv
RIGHT OUTER Join dbo.TTRBody ON dbo.CLFArchiv.OBUID = dbo.TTRBody.OBUID RIGHT OUTER Join dbo.TTRBody ON dbo.CLFArchiv.OBUID = dbo.TTRBody.OBUID
LEFT OUTER Join dbo.tblWarenarten ON dbo.TTRBody.ProductCode = dbo.tblWarenarten.ProductCode LEFT OUTER Join dbo.tblWarenarten ON dbo.TTRBody.ProductCode = dbo.tblWarenarten.ProductCode
@@ -2648,13 +2643,14 @@ Public Class frmMDMDatenverarbetiung
maut.totalAmount = CDbl(row.Item("amountInclVAT")) maut.totalAmount = CDbl(row.Item("amountInclVAT"))
maut.additionalData = row.Item("Town") 'wird nicht mehr verwendet???? maut.additionalData = row.Item("Town") 'wird nicht mehr verwendet????
maut.receiptnumber = row.Item("receiptNumber") maut.receiptnumber = row.Item("receiptNumber")
maut.receiptCreated = IIf(IsDBNull(row.Item("belegerstellungsdatum")), False, True)
maut.SAVE() maut.SAVE()
Next Next
MsgBox("Abrechnungsdatum gesetzt!") MsgBox("Abrechnungsdatum gesetzt!")
End If End If
End If End If
cbxASFINAGNichtAbgerechnet.Checked = False cbxASFINAGAbgerechnet.Checked = True
'initDgv_ASFINAG(Not cbxASFINAGNichtAbgerechnet.Checked) 'initDgv_ASFINAG(Not cbxASFINAGNichtAbgerechnet.Checked)
End If End If
@@ -2663,8 +2659,8 @@ Public Class frmMDMDatenverarbetiung
Private Sub Button10_Click(sender As Object, e As EventArgs) Handles bntDatumzuruecksetzen.Click Private Sub Button10_Click(sender As Object, e As EventArgs) Handles bntDatumzuruecksetzen.Click
If cbxASFINAGNichtAbgerechnet.Checked = True Then If cbxASFINAGAbgerechnet.Checked = True Then
cbxASFINAGNichtAbgerechnet.Checked = False cbxASFINAGAbgerechnet.Checked = False
End If End If
If MyDatagridview1.Rows.Count = 0 Then If MyDatagridview1.Rows.Count = 0 Then
@@ -2674,12 +2670,12 @@ Public Class frmMDMDatenverarbetiung
Dim datumDel = CDate(SQL.getValueTxtBySql("Select Abrechnungsdatum FROM Abrechnungsdatum", "ASFINAG")) Dim datumDel = CDate(SQL.getValueTxtBySql("Select Abrechnungsdatum FROM Abrechnungsdatum", "ASFINAG"))
If MsgBox("Möchten Sie das Abrechnungsdatum vom " & datumDel.ToShortDateString & " zurücksetzen?", vbYesNoCancel) = MsgBoxResult.Yes Then If MsgBox("Möchten Sie das Abrechnungsdatum vom " & datumDel.ToShortDateString & " zurücksetzen?" & vbNewLine & "Nur für Transaktionen möglich, zu denen es noch keine Rechnung erstellt wurde!", vbYesNoCancel) = MsgBoxResult.Yes Then
If SQL.doSQL("UPDATE dbo.TTRBody Set Abrechnungsdatum = NULL WHERE Abrechnungsdatum = '" & datumDel & "' AND (PKHistory = 0) AND (PKFileName LIKE '%" & checkifTestfiles() & ".%')", "ASFINAG") Then If SQL.doSQL("UPDATE dbo.TTRBody Set Abrechnungsdatum = NULL WHERE Abrechnungsdatum = '" & datumDel & "' AND (PKHistory = 0) AND (PKFileName LIKE '%" & checkifTestfiles() & ".%') AND belegerstellungsdatum IS NULL", "ASFINAG") Then
If SQL.doSQL("DELETE FROM tblAsfinagMaut", "FMZOLL") Then If SQL.doSQL("DELETE FROM tblAsfinagMaut", "FMZOLL") Then
MsgBox("Abrechnungsdatum zurückgesetzt!") MsgBox("Abrechnungsdatum zurückgesetzt!")
End If End If
cbxASFINAGNichtAbgerechnet.Checked = True cbxASFINAGAbgerechnet.Checked = True
'initDgv_ASFINAG(cbxASFINAGNichtAbgerechnet.Checked) 'initDgv_ASFINAG(cbxASFINAGNichtAbgerechnet.Checked)
End If End If
@@ -2700,11 +2696,29 @@ Public Class frmMDMDatenverarbetiung
End Function End Function
Private Sub cbxASFINAGNichtAbgerechnet_CheckedChanged(sender As Object, e As EventArgs) Handles cbxASFINAGNichtAbgerechnet.CheckedChanged Private Sub cbxASFINAGabgerechnet_CheckedChanged(sender As Object, e As EventArgs) Handles cbxASFINAGAbgerechnet.CheckedChanged
If Me.LIEFERANT = "ASFINAG" Then initDgv_ASFINAG(Not cbxASFINAGNichtAbgerechnet.Checked) If Me.LIEFERANT = "ASFINAG" Then
If Not cbxASFINAGAbgerechnet.Checked Then cbxBelegeerstellt.Checked = False
initDgv_ASFINAG(cbxASFINAGAbgerechnet.Checked, cbxBelegeerstellt.Checked)
End If
End Sub End Sub
Private Sub bntDatumsetzen_Click(sender As Object, e As EventArgs) Handles bntDatumsetzen.Click Private Sub bntDatumsetzen_Click(sender As Object, e As EventArgs) Handles bntDatumsetzen.Click
setFakturiert_ASFINAG() setFakturiert_ASFINAG()
End Sub End Sub
Private Sub cbxBelegeerstellt_CheckedChanged(sender As Object, e As EventArgs) Handles cbxBelegeerstellt.CheckedChanged
If cbxBelegeerstellt.Checked Then
btnREerstellen.Enabled = False
bntDatumsetzen.Enabled = False
bntDatumzuruecksetzen.Enabled = False
Else
btnREerstellen.Enabled = True
bntDatumsetzen.Enabled = True
bntDatumzuruecksetzen.Enabled = True
End If
End Sub
End Class End Class

View File

@@ -12,6 +12,7 @@ Public Class cAsfinagMaut
Property totalAmount As Object = Nothing Property totalAmount As Object = Nothing
Property additionalData As Object = Nothing Property additionalData As Object = Nothing
Property receiptnumber As Object = Nothing Property receiptnumber As Object = Nothing
Property receiptCreated As Boolean = False
Public hasEntry = False Public hasEntry = False
@@ -32,6 +33,7 @@ Public Class cAsfinagMaut
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("totalAmount", totalAmount)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("totalAmount", totalAmount))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("additionalData", additionalData)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("additionalData", additionalData))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("receiptnumber", receiptnumber)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("receiptnumber", receiptnumber))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("receiptCreated", receiptCreated))
Return list Return list
End Function End Function

View File

@@ -232,23 +232,24 @@ Public Class cUIDPruefung
For Each row As DataRow In dt.Select("UstIdnr = '" & r("UstIdnr") & "' AND UstIdKz ='" & r("UstIdKz") & "'") For Each row As DataRow In dt.Select("UstIdnr = '" & r("UstIdnr") & "' AND UstIdKz ='" & r("UstIdKz") & "'")
row("Ergebnis") = r("Ergebnis") row("Ergebnis") = r("Ergebnis")
Next Next
' Bei ungültig soll er einzeln durchgehen! Besprochen mit A.Stockenhuber
Else Else
r("Ergebnis") = "UNGÜLTIG" r("Ergebnis") = "UNGÜLTIG"
For Each row As DataRow In dt.Select("UstIdnr = '" & r("UstIdnr") & "' AND UstIdKz ='" & r("UstIdKz") & "'") ' For Each row As DataRow In dt.Select("UstIdnr = '" & r("UstIdnr") & "' AND UstIdKz ='" & r("UstIdKz") & "'")
row("Ergebnis") = r("Ergebnis") ' row("Ergebnis") = r("Ergebnis")
Next ' Next
End If End If
Else Else
r("Ergebnis") = "ERROR" r("Ergebnis") = "ERROR"
r("Error-Code") = errorCode.ToString() r("Error-Code") = errorCode.ToString()
r("Error-Text") = FO.GetCodeText(errorCode) r("Error-Text") = FO.GetCodeText(errorCode)
For Each row As DataRow In dt.Select("UstIdnr = '" & r("UstIdnr") & "' AND UstIdKz ='" & r("UstIdKz") & "'") ' Bei ERROR soll er ebenfalls einzeln durchgehen! Besprochen mit A.Stockenhuber
row("Ergebnis") = r("Ergebnis") 'For Each row As DataRow In dt.Select("UstIdnr = '" & r("UstIdnr") & "' AND UstIdKz ='" & r("UstIdKz") & "'")
row("Error-Code") = r("Error-Code") ' row("Ergebnis") = r("Ergebnis")
row("Error-Text") = r("Error-Text") ' row("Error-Code") = r("Error-Code")
Next ' row("Error-Text") = r("Error-Text")
'Next
End If End If