Mitarbeiter-Überstundensaldo, etc.

This commit is contained in:
2026-10-12 17:08:07 +02:00
parent 016e1ecb1f
commit b69e058dff
8 changed files with 311 additions and 68 deletions

View File

@@ -6158,17 +6158,31 @@ weiter:
Dim fehlendeRechnungen As New DataTable
Dim datumString = ""
Dim von As Date
Dim bis As Date
If txtUTADate.Text = "" AndAlso txtUTAYear.Text <> "" Then
datumString = txtUTAYear.Text
fehlendeRechnungen = (New SQL).loadDgvBySql(" SELECT A.AdressenNr, A.[Name 1], U.Abrechnungsnummer AS Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,CAST(U.Rechnungsdatum AS date) AS Rechnungsdatum,A.LandKz FROM tblUTAImportNew U INNER JOIN Adressen A ON A.UTAKundenNr = U.Kundennummer WHERE U.daId IS NULL AND YEAR(U.Rechnungsdatum) = '" & datumString & "' AND NOT (A.LandKz = 'RO' AND U.Lieferland = 'ROM') GROUP BY A.AdressenNr, A.[Name 1], U.Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,U.Rechnungsdatum,A.LandKz", "FMZOLL")
'fehlendeRechnungen = (New SQL).loadDgvBySql(" SELECT A.AdressenNr, A.[Name 1], U.Abrechnungsnummer AS Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,CAST(U.Rechnungsdatum AS date) AS Rechnungsdatum,A.LandKz FROM tblUTAImportNew U INNER JOIN Adressen A ON A.UTAKundenNr = U.Kundennummer WHERE U.daId IS NULL AND YEAR(U.Rechnungsdatum) = '" & datumString & "' AND NOT (A.LandKz = 'RO' AND U.Lieferland = 'ROM') GROUP BY A.AdressenNr, A.[Name 1], U.Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,U.Rechnungsdatum,A.LandKz", "FMZOLL")
von = New Date(datumString, 1, 1)
bis = New Date(datumString, 12, 31)
ElseIf txtUTADate.Text <> "" AndAlso IsDate(txtUTADate.Text) Then
datumString = txtUTADate.Text
fehlendeRechnungen = (New SQL).loadDgvBySql("SELECT A.AdressenNr, A.[Name 1], U.Abrechnungsnummer AS Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,CAST(U.Rechnungsdatum AS date) AS Rechnungsdatum,A.LandKz FROM tblUTAImportNew U INNER JOIN Adressen A ON A.UTAKundenNr = U.Kundennummer WHERE U.daId IS NULL AND CAST(U.Rechnungsdatum AS date) = '" & datumString & "' AND NOT (A.LandKz = 'RO' AND U.Lieferland = 'ROM') GROUP BY A.AdressenNr, A.[Name 1], U.Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,U.Rechnungsdatum,A.LandKz", "FMZOLL")
'fehlendeRechnungen = (New SQL).loadDgvBySql("SELECT A.AdressenNr, A.[Name 1], U.Abrechnungsnummer AS Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,CAST(U.Rechnungsdatum AS date) AS Rechnungsdatum,A.LandKz FROM tblUTAImportNew U INNER JOIN Adressen A ON A.UTAKundenNr = U.Kundennummer WHERE U.daId IS NULL AND CAST(U.Rechnungsdatum AS date) = '" & datumString & "' AND NOT (A.LandKz = 'RO' AND U.Lieferland = 'ROM') GROUP BY A.AdressenNr, A.[Name 1], U.Abrechnungsnummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,U.Rechnungsdatum,A.LandKz", "FMZOLL")
von = New Date(datumString)
bis = New Date(datumString)
End If
Dim uta As New cUTA
uta.checkPDFInvoices(von, bis, ,,, True, fehlendeRechnungen)
If fehlendeRechnungen.Rows.Count > 0 Then
If vbYes = MsgBox("Details der " & fehlendeRechnungen.Rows.Count & " fehlenden Rechnungszuweisungen anzeigen?", vbYesNo) Then
@@ -6388,21 +6402,31 @@ weiter:
Dim datumString = ""
Dim SQLWhere As String = ""
Dim von As Date
Dim bis As Date
If txtUTADate.Text = "" AndAlso txtUTAYear.Text <> "" Then
datumString = txtUTAYear.Text
SQLWhere = "And YEAR(U.Rechnungsdatum) = '" & datumString & "'"
von = New Date("01.01." & txtUTAYear.Text)
bis = New Date("31.12." & txtUTAYear.Text)
ElseIf txtUTADate.Text <> "" AndAlso IsDate(txtUTADate.Text) Then
datumString = txtUTADate.Text
SQLWhere = "And CAST(U.Rechnungsdatum AS date) = '" & datumString & "'"
von = New Date(datumString)
bis = New Date(datumString)
End If
Dim uta As New cUTA
Dim dtRechnnungsdaten As New DataTable
Dim fehlendePDFzuRE As String = " SELECT U.Abrechnungsnummer AS Abrechnungsnummer,U.Kundennummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,CAST(U.Rechnungsdatum AS date) AS Rechnungsdatum,A.LandKz FROM tblUTAImportNew U INNER JOIN Adressen A ON A.UTAKundenNr = U.Kundennummer WHERE U.daId IS NULL " & SQLWhere & " AND NOT (A.LandKz = 'RO' AND U.Lieferland = 'ROM') GROUP BY U.Abrechnungsnummer,U.Kundennummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,U.Rechnungsdatum,A.LandKz "
uta.checkPDFInvoices(von, bis, ,,, True, dtRechnnungsdaten)
'Dim fehlendePDFzuRE As String = " SELECT U.Abrechnungsnummer AS Abrechnungsnummer,U.Kundennummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,CAST(U.Rechnungsdatum AS date) AS Rechnungsdatum,A.LandKz FROM tblUTAImportNew U INNER JOIN Adressen A ON A.UTAKundenNr = U.Kundennummer WHERE U.daId IS NULL " & SQLWhere & " AND NOT (A.LandKz = 'RO' AND U.Lieferland = 'ROM') GROUP BY U.Abrechnungsnummer,U.Kundennummer,U.Rechnungsnummer_pro_Lieferland,U.Lieferland,U.Rechnungsdatum,A.LandKz "
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim dtRechnnungsdaten As DataTable = SQL.loadDgvBySql(fehlendePDFzuRE, "FMZOLL")
'Dim dtRechnnungsdaten As DataTable = SQL.loadDgvBySql(fehlendePDFzuRE, "FMZOLL")
Dim counter As Integer = 0
@@ -6419,12 +6443,12 @@ weiter:
Dim daId As Integer = 0
daId = CInt(SQL.getValueTxtBySql("Select top(1) isnull(da_id,0) FROM tblDatenarchiv WHERE da_KundenNr = 0 And da_kategorie = 'MDM' AND da_ordner='MDM_DATEN' AND da_uOrdner1= 'UTA' AND da_uOrdner2= '" & utaYear & "' AND da_name like '%ZUGFERD.pdf' AND da_name like '%" & r.Item("Kundennummer") & "_" & r.Item("Abrechnungsnummer") & "_" & r.Item("Rechnungsnummer_pro_Lieferland") & "%'", "FMZOLL",,, 0))
daId = CInt(SQL.getValueTxtBySql("Select top(1) isnull(da_id,0) FROM tblDatenarchiv WHERE da_KundenNr = 0 And da_kategorie = 'MDM' AND da_ordner='MDM_DATEN' AND da_uOrdner1= 'UTA' AND da_uOrdner2= '" & utaYear & "' AND da_name like '%ZUGFERD.pdf' AND da_name like '%" & r.Item("UTAKundenNr") & "_" & r.Item("Abrechnungsnummer") & "_" & r.Item("Rechnungsnummer_pro_Lieferland") & "%'", "FMZOLL",,, 0))
If daId > 0 Then
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(daId)
Dim Path As String = DS.GET_TOP1_PATH()
If Path <> "" And System.IO.File.Exists(Path) Then
SQL.doSQL("Update [tblUTAImportNew] SET [daId]='" & DS.da_id & "', daIdgesetztDatum = getdate() where [Rechnungsnummer_pro_Lieferland] = '" & r.Item("Rechnungsnummer_pro_Lieferland") & "' AND cast(Rechnungsdatum as Date) = '" & utaDate & "' AND Kundennummer =" & r.Item("Kundennummer") & " and Abrechnungsnummer =" & r.Item("Abrechnungsnummer") & " and daId is null", "FMZOLL")
SQL.doSQL("Update [tblUTAImportNew] SET [daId]='" & DS.da_id & "', daIdgesetztDatum = getdate() where [Rechnungsnummer_pro_Lieferland] = '" & r.Item("Rechnungsnummer_pro_Lieferland") & "' AND cast(Rechnungsdatum as Date) = '" & utaDate & "' AND Kundennummer =" & r.Item("UTAKundenNr") & " and Abrechnungsnummer =" & r.Item("Abrechnungsnummer") & " and daId is null", "FMZOLL")
counter += 1
End If
End If
@@ -6599,6 +6623,10 @@ weiter:
MsgBox(counter & " von " & dtRechnnungsdaten.Rows.Count & " IDS- Rechnungsdaten gesetzt!")
Else
MsgBox("keine fehlenden Rechnungen vorhanden!")
End If
@@ -8207,7 +8235,7 @@ repeatRequest:
Dim DateString = " CONVERT(DATE, GETDATE())"
Dim top As String = ""
If InvoicesUntilYesterday Then
top = " top(250) "
top = " top(2500) "
DateString = "CONVERT(DATE, DATEADD(DAY, -1, GETDATE()))"
End If