MDM Offertenprüfung für IDS
This commit is contained in:
@@ -4143,15 +4143,32 @@ Public Class frmMDMDatenverarbetiung
|
||||
End If
|
||||
|
||||
|
||||
Dim sqlStringfehlendeLeistungsNr = "select count(*) from (SELECT Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG FROM Leistungen INNER Join tbl_IDS_Länder On Leistungen.LeistungsNr = tbl_IDS_Länder.LeistungsNr INNER Join tblIDSTransactionsNew On tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode Left JOIN Offertenpositionen on Offertenpositionen.KundenNr IN (select tblIDSTransactionsNew.KdNrVERAG from tblIDSTransactionsNew where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & DateTimePicker2.Text & "') and Leistungen.LeistungsNr = Offertenpositionen.LeistungsNr and Leistungen.LeistungsBez = Offertenpositionen.LeistungsBez and ( Offertenpositionen.OffertenNr=17 or Offertenpositionen.OffertenNr=21) where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & DateTimePicker2.Text & "' and Offertenpositionen.LeistungsNr is null Group by Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG ) as t1" 'Verag360 und VeragAG
|
||||
Dim dt As DataTable = SQL.loadDgvBySql("Select distinct(tblIDSTransactionsNew.KdNrVERAG) from tblIDSTransactionsNew where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & DateTimePicker2.Text & "'", "FMZOLL")
|
||||
|
||||
If dt.Rows.Count > 0 Then
|
||||
Dim counter As Integer = 0
|
||||
For Each r In dt.Rows
|
||||
Dim kundenNr = r.Item("KdNrVERAG")
|
||||
If Not IsDBNull(kundenNr) AndAlso kundenNr > 0 Then
|
||||
Dim sqlStringfehlendeLeistungsNr = " select count(*) from (SELECT Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG, Offertenpositionen.LeistungsNr as LeistungsNr2, Offertenpositionen.LeistungsBez as LeistungsBez2 FROM Leistungen INNER Join tbl_IDS_Länder On Leistungen.LeistungsNr = tbl_IDS_Länder.LeistungsNr INNER Join tblIDSTransactionsNew On tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode Left JOIN Offertenpositionen on Offertenpositionen.KundenNr = " & kundenNr & " and Leistungen.LeistungsNr = Offertenpositionen.LeistungsNr and Leistungen.LeistungsBez = Offertenpositionen.LeistungsBez
|
||||
and ( Offertenpositionen.OffertenNr=17 or Offertenpositionen.OffertenNr=21) where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & DateTimePicker2.Text & "' and tblIDSTransactionsNew.KdNrVERAG = " & kundenNr & " and
|
||||
Offertenpositionen.LeistungsNr is null Group by Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG, Offertenpositionen.LeistungsNr, Offertenpositionen.LeistungsBez ) as t1"
|
||||
Dim fehlendeLeistungsNr As Integer = CInt((New SQL).getValueTxtBySql(sqlStringfehlendeLeistungsNr, "FMZOLL"))
|
||||
If fehlendeLeistungsNr > 0 Then counter += fehlendeLeistungsNr
|
||||
End If
|
||||
|
||||
Next
|
||||
If counter > 0 Then
|
||||
MsgBox("Bei " & counter & " Leistungen fehlt die Offertenzuweisung !" & vbNewLine & "Diese Offerten (von Rechnungsdatum " & DateTimePicker2.Text & ") müssen nachgetragen werden.")
|
||||
Return False
|
||||
End If
|
||||
|
||||
|
||||
|
||||
Dim fehlendeLeistungsNr As Integer = CInt((New SQL).getValueTxtBySql(sqlStringfehlendeLeistungsNr, "FMZOLL"))
|
||||
If fehlendeLeistungsNr > 0 Then
|
||||
pruefData_IDS = False
|
||||
MsgBox("Bei " & fehlendeLeistungsNr & " Leistungen fehlt die Offertenzuweisung !" & vbNewLine & "Diese Offerten (von Rechnungsdatum " & DateTimePicker2.Text & ") müssen nachgetragen werden.")
|
||||
Return False
|
||||
End If
|
||||
|
||||
|
||||
|
||||
Dim OBONumberOderVRNumberfehlern As Integer = 0
|
||||
|
||||
OBONumberOderVRNumberfehlern = CInt((New SQL).getValueTxtBySql("select count(*) from [tblIDSTransactionsNew] WHERE cast(YearMonthDay as Date) = '" & DateTimePicker2.Text & "' AND tblIDSTransactionsNew.[UStVAn_ID] is null AND [VRNumber] is null AND [OBONumber] is null", "FMZOLL"))
|
||||
|
||||
@@ -525,7 +525,7 @@ Public Class usrCntlMDMDatenverarbeitungAuswertungen_divers
|
||||
|
||||
|
||||
Sub genIDSBericht(art As String)
|
||||
|
||||
Dim dtOfferten As New DataTable
|
||||
Dim sqlstr = ""
|
||||
|
||||
Select Case art
|
||||
@@ -603,11 +603,51 @@ Public Class usrCntlMDMDatenverarbeitungAuswertungen_divers
|
||||
|
||||
Case "OFFERTEN"
|
||||
|
||||
sqlstr = "select Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG FROM Leistungen
|
||||
INNER Join tbl_IDS_Länder On Leistungen.LeistungsNr = tbl_IDS_Länder.LeistungsNr
|
||||
INNER Join tblIDSTransactionsNew On tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode
|
||||
Left JOIN Offertenpositionen on Offertenpositionen.KundenNr IN (select tblIDSTransactionsNew.KdNrVERAG from tblIDSTransactionsNew where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & MAIN.DateTimePicker2.Text & "') and Leistungen.LeistungsNr = Offertenpositionen.LeistungsNr and Leistungen.LeistungsBez = Offertenpositionen.LeistungsBez and ( Offertenpositionen.OffertenNr=17 or Offertenpositionen.OffertenNr=21)
|
||||
where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & MAIN.DateTimePicker2.Text & "' and Offertenpositionen.LeistungsNr is null Group by Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG"
|
||||
Dim dtKunden = SQL.loadDgvBySql("Select distinct(tblIDSTransactionsNew.KdNrVERAG) from tblIDSTransactionsNew where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & MAIN.DateTimePicker2.Text & "'", "FMZOLL")
|
||||
|
||||
If dtKunden.Rows.Count > 0 Then
|
||||
|
||||
For Each r In dtKunden.Rows
|
||||
|
||||
Dim kundenNr = r.Item("KdNrVERAG")
|
||||
If Not IsDBNull(kundenNr) AndAlso kundenNr > 0 Then
|
||||
|
||||
Dim sqlStringfehlendeLeistungsNr = " select * from (SELECT Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG FROM Leistungen INNER Join tbl_IDS_Länder On Leistungen.LeistungsNr = tbl_IDS_Länder.LeistungsNr INNER Join tblIDSTransactionsNew On tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode Left JOIN Offertenpositionen on Offertenpositionen.KundenNr = " & kundenNr & " and Leistungen.LeistungsNr = Offertenpositionen.LeistungsNr and Leistungen.LeistungsBez = Offertenpositionen.LeistungsBez and ( Offertenpositionen.OffertenNr=17 or Offertenpositionen.OffertenNr=21) where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & MAIN.DateTimePicker2.Text & "' and tblIDSTransactionsNew.KdNrVERAG = " & kundenNr & " and Offertenpositionen.LeistungsNr is null Group by Leistungen.LeistungsNr, Leistungen.LeistungsBez,tblIDSTransactionsNew.KdNrVERAG) as t1" 'Verag360 und VeragAG
|
||||
|
||||
Dim dtResult As New DataTable
|
||||
dtResult = SQL.loadDgvBySql(sqlStringfehlendeLeistungsNr, "FMZOLL")
|
||||
|
||||
|
||||
If dtOfferten IsNot Nothing Then
|
||||
If Not dtOfferten.Columns.Contains("KdNrVERAG") Then
|
||||
dtOfferten.Columns.Add("KdNrVERAG", GetType(String))
|
||||
dtOfferten.Columns.Add("LeistungsNr", GetType(Integer))
|
||||
dtOfferten.Columns.Add("LeistungsBez", GetType(String))
|
||||
|
||||
End If
|
||||
|
||||
For Each offert In dtResult.Rows
|
||||
|
||||
Dim ro As DataRow = dtOfferten.NewRow
|
||||
ro("KdNrVERAG") = offert.Item("KdNrVERAG")
|
||||
ro("LeistungsNr") = offert.Item("LeistungsNr")
|
||||
ro("LeistungsBez") = offert.Item("LeistungsBez")
|
||||
|
||||
dtOfferten.Rows.Add(ro)
|
||||
|
||||
Next
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Case Else
|
||||
MsgBox("Auswertungsart nicht definiert!")
|
||||
@@ -615,7 +655,15 @@ Public Class usrCntlMDMDatenverarbeitungAuswertungen_divers
|
||||
|
||||
End Select
|
||||
|
||||
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
|
||||
Dim dt As DataTable
|
||||
|
||||
If art = "OFFERTEN" Then
|
||||
|
||||
dt = dtOfferten
|
||||
Else
|
||||
dt = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
|
||||
End If
|
||||
|
||||
Dim print As New frmPrintLayout
|
||||
print.Text = "IDS"
|
||||
If dt Is Nothing OrElse dt.Rows.Count = 0 Then
|
||||
|
||||
Reference in New Issue
Block a user