UTA, RMC Bugfix im Umrechnung Währungskurs

This commit is contained in:
2024-06-06 11:58:47 +02:00
parent 2ac6eed7ae
commit 2766308a94
11 changed files with 474 additions and 165 deletions

View File

@@ -33,7 +33,7 @@ Public Class frmMDMDatenverarbetiung
Select Case LIEFERANT
Case "PLOSE" : genSummenbericht_PLOSE()
Case "ASFINAG" : genSummenbericht_ASFINAG()
Case "UTA" : MsgBox("Nicht verfügbar!") : Exit Sub
Case "UTA" : genSummenbericht_UTA()
Case "IDS" : MsgBox("Nicht verfügbar!") : Exit Sub
Case "MSE" : MsgBox("Nicht verfügbar!") : Exit Sub
Case Else : MsgBox("Nicht verfügbar!")
@@ -51,7 +51,7 @@ Public Class frmMDMDatenverarbetiung
Select Case LIEFERANT
Case "PLOSE" : pruef = pruefData_PLOSE()
Case "ASFINAG" : pruef = pruefData_ASFINAG()
Case "UTA" : MsgBox("Nicht verfügbar!") : Exit Sub
Case "UTA" : pruef = pruefData_UTA()
Case "IDS" : MsgBox("Nicht verfügbar!") : Exit Sub
Case "MSE" : MsgBox("Nicht verfügbar!") : Exit Sub
Case Else : MsgBox("Nicht verfügbar!") : Exit Sub
@@ -353,6 +353,92 @@ Public Class frmMDMDatenverarbetiung
print.Show()
End Sub
Sub genSummenbericht_UTA()
Dim displayFilter = False
Dim sqlstr As String = ""
sqlstr &= "SELECT Kundennummer, KundenNr, [Name 1], LandKz, Ort, Lieferland, Kartennummer, Sum(Gesamtbetrag_Netto_in_Darstellwährung) AS SummevonGesamtbetrag_Netto_in_Darstellwährung, Sum(Gesamtbetrag_Brutto_in_Darstellwährung) AS SummevonGesamtbetrag_Brutto_in_Darstellwährung from (
SELECT Adressen.AdressenNr, Adressen.[Name 1], Adressen.LandKz, Adressen.Ort, Adressen.UTAExportCSV, Adressen.Rechnungsdruck, Offertenpositionen.KundenNr, Offertenpositionen.OffertenNr, Offertenpositionen.LeistungsNr, Offertenpositionen.LeistungsBez, tblUTAFakturierwarenarten.Warenart, tblUTAImport.*
FROM tblUTAFakturierwarenarten
INNER JOIN (((Adressen INNER JOIN tblUTAImport ON Adressen.UTAKundenNr = tblUTAImport.Kundennummer) INNER JOIN Offertenpositionen ON Adressen.AdressenNr = Offertenpositionen.KundenNr) INNER JOIN tblUTALeistungen ON (tblUTALeistungen.VERAG_LeistungsNr = Offertenpositionen.LeistungsNr)
AND (tblUTALeistungen.VERAG_OffertenNr = Offertenpositionen.OffertenNr) AND (tblUTAImport.Lieferland = tblUTALeistungen.Lieferland) AND (tblUTAImport.Fakturierwarenart = tblUTALeistungen.Fakturierwarenart)) ON tblUTAFakturierwarenarten.Fakturierwarenart = tblUTALeistungen.Fakturierwarenart) as temp
GROUP BY Kundennummer, KundenNr, [Name 1], LandKz, Ort, Lieferland, Kartennummer"
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
'DataGridView.DataSource = dt
Dim print As New frmPrintLayout
print.Text = "uta"
Dim rpt As New rptASFINAG_TransaktionenSumary
rpt.DataSource = dt
'If cbxProdukt.Checked Then
' rpt.GroupHeader2.DataField = "prod_descr"
'Else
' rpt.GroupHeader2.Visible = False
' rpt.GroupFooter2.Visible = False
'End If
Dim sum = 0
rpt.lblUeberschrift.Text = "UTA Summenbericht " & CDate(Now.ToShortDateString)
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim sumNetto As Double = 0
Dim sumMWST As Double = 0
Dim sumBrutto As Double = 0
Dim sumperKdNrNetto As Double = 0
Dim sumperKdNrMWST As Double = 0
Dim sumperKdNrBrutto As Double = 0
AddHandler rpt.Detail.Format, Sub()
rpt.lblKundennr.Text = SQL.isDbnullEmpty(rpt.Fields.Item("KundenNr").Value, "")
rpt.lblName1.Text = SQL.isDbnullEmpty(rpt.Fields.Item("Name 1").Value, "")
rpt.lblKartennr.Text = SQL.isDbnullEmpty(rpt.Fields.Item("Kartennummer").Value, "") & " - " & SQL.isDbnullEmpty(rpt.Fields.Item("Lieferland").Value, "")
rpt.lblNetto.Text = SQL.isDbnullEmptyDbl(rpt.Fields.Item("SummevonGesamtbetrag_Netto_in_Darstellwährung").Value, 2, "")
rpt.lblMWST.Text = SQL.isDbnullEmptyDbl(CDbl(rpt.Fields.Item("SummevonGesamtbetrag_Brutto_in_Darstellwährung").Value) - CDbl(rpt.Fields.Item("SummevonGesamtbetrag_Netto_in_Darstellwährung").Value), 2, "")
rpt.lblBrutto.Text = SQL.isDbnullEmptyDbl(rpt.Fields.Item("SummevonGesamtbetrag_Brutto_in_Darstellwährung").Value, 2, "")
rpt.lblSumNet.Text = SQL.isDbnullEmptyDbl(rpt.Fields.Item("SummevonGesamtbetrag_Netto_in_Darstellwährung").Value, 2, "")
rpt.lblSumVat.Text = SQL.isDbnullEmptyDbl(CDbl(rpt.Fields.Item("SummevonGesamtbetrag_Brutto_in_Darstellwährung").Value) - CDbl(rpt.Fields.Item("SummevonGesamtbetrag_Netto_in_Darstellwährung").Value), 2, "")
rpt.lblSumBrt.Text = SQL.isDbnullEmptyDbl(rpt.Fields.Item("SummevonGesamtbetrag_Brutto_in_Darstellwährung").Value, 2, "")
sumNetto += SQL.isDbnullEmptyDbl(rpt.Fields.Item("SummevonGesamtbetrag_Netto_in_Darstellwährung").Value, 4, 0)
sumMWST += SQL.isDbnullEmptyDbl(CDbl(rpt.Fields.Item("SummevonGesamtbetrag_Brutto_in_Darstellwährung").Value) - CDbl(rpt.Fields.Item("SummevonGesamtbetrag_Netto_in_Darstellwährung").Value), 4, 0)
sumBrutto += SQL.isDbnullEmptyDbl(rpt.Fields.Item("SummevonGesamtbetrag_Brutto_in_Darstellwährung").Value, 4, 0)
End Sub
AddHandler rpt.ReportFooter1.Format, Sub()
rpt.lblSumNetto.Text = sumNetto.ToString("N2")
rpt.lblSumMwst.Text = sumMWST.ToString("N2")
rpt.lblSumBrutto.Text = sumBrutto.ToString("N2")
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End Sub
Sub initDgv_PLOSE()
@@ -440,7 +526,7 @@ Public Class frmMDMDatenverarbetiung
Sub initDgv_UTA()
With MyDatagridview1
.Columns.Clear()
Exit Sub
'Exit Sub
'MsgBox(.sql)
.SET_SQL(" SELECT Adressen.AdressenNr, Adressen.[Name 1], Adressen.LandKz, Adressen.Ort,Offertenpositionen.OffertenNr, Offertenpositionen.LeistungsNr, Offertenpositionen.LeistungsBez, tblUTAFakturierwarenarten.Warenart, tblUTAImport.Fakturierwarenart
@@ -453,15 +539,10 @@ Public Class frmMDMDatenverarbetiung
'MsgBox(.GET_SQL())
If .Columns.Count > 0 Then
'.Columns("plose_POLSEKundennummer").HeaderText = "PLOSE KdNr"
'.Columns("plose_ProduktCode").HeaderText = "ProduktCode"
'.Columns("plose_Produktbeschreibung").HeaderText = "Beschreibung"
'.Columns("plose_Produktbeschreibung").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
'.Columns("plose_Menge").HeaderText = "Menge"
'.Columns("plose_Preis").HeaderText = "Preis"
'.Columns("plose_NettobetragWaehrungAbbuchung").HeaderText = "Netto"
'.Columns("plose_MWSTBetragWaehrungAbbuchung").HeaderText = "MWST"
'.Columns("plose_BruttobetragWaehrungAbbuchung").HeaderText = "Brutto"
.Columns("AdressenNr").HeaderText = "KdNr"
.Columns("Name 1").HeaderText = "Kunde"
.Columns("LandKz").HeaderText = "Land"
.Columns("Name 1").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
'.Columns("VERAGLeistungsNr").ReadOnly = False
'.Columns("VERAGKdNr").ReadOnly = False
@@ -597,15 +678,15 @@ Public Class frmMDMDatenverarbetiung
Case "PLOSE"
Panel4.Visible = True
pnlAsfinag.Visible = False
Dim c As New usrCntlMDMDatenverarbeitungAuswertungen_PLOSE(Me)
Dim c As New usrCntlMDMDatenverarbeitungAuswertungen_divers(Me, Me.LIEFERANT)
Panel3.Controls.Add(c)
c.Dock = DockStyle.Fill
Case "UTA"
Panel4.Visible = False
pnlAsfinag.Visible = False
'Dim c As New usrCntlMDMDatenverarbeitungAuswertungen_UTA(Me)
'Panel3.Controls.Add(c)
'c.Dock = DockStyle.Fill
Dim c As New usrCntlMDMDatenverarbeitungAuswertungen_divers(Me, Me.LIEFERANT)
Panel3.Controls.Add(c)
c.Dock = DockStyle.Fill
Case "ASFINAG"
cbxASFINAGAbgerechnet.Visible = True
cbxBelegeerstellt.Visible = True
@@ -2520,6 +2601,51 @@ Public Class frmMDMDatenverarbetiung
End Try
End Function
Function pruefData_UTA() As Boolean
pruefData_UTA = True
Try
Dim dtUTAKundennummern As DataTable = SQL.loadDgvBySql("SELECT Distinct(tblUTAImport.Kundennummer)
FROM tblUTAImport LEFT JOIN Adressen ON tblUTAImport.Kundennummer = Adressen.UTAKundenNr
GROUP BY tblUTAImport.Kundennummer, Adressen.UTAKundenNr
HAVING (((Adressen.UTAKundenNr) Is Null))", "FMZOLL")
If dtUTAKundennummern.Rows.Count > 0 Then
pruefData_UTA = False
If dtUTAKundennummern.Rows.Count = 1 AndAlso dtUTAKundennummern.Rows(0).Item("Kundennummer").Value = "868070" Then pruefData_UTA = True 'ist VERAG -> OK
End If
Dim dtUTAFakturierwarenarten As DataTable = SQL.loadDgvBySql("SELECT tblUTAImport.Fakturierwarenart, tblUTAImport.Lieferland
FROM tblUTAImport LEFT JOIN tblUTALeistungen ON (tblUTAImport.Fakturierwarenart = tblUTALeistungen.Fakturierwarenart) AND (tblUTAImport.Lieferland = tblUTALeistungen.Lieferland)
GROUP BY tblUTAImport.Fakturierwarenart, tblUTAImport.Lieferland, tblUTALeistungen.Fakturierwarenart, tblUTALeistungen.Lieferland
HAVING (((tblUTALeistungen.Fakturierwarenart) Is Null) AND ((tblUTALeistungen.Lieferland) Is Null))", "FMZOLL")
If dtUTAFakturierwarenarten.Rows.Count > 0 Then
pruefData_UTA = False
End If
Dim dtUTAOffertenPositionen As DataTable = SQL.loadDgvBySql("SELECT * FROM vwUTA_PrüfungInkonsistenzVERAGOffertenpositionen2", "FMZOLL")
If dtUTAOffertenPositionen.Rows.Count > 0 Then
pruefData_UTA = False
End If
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
pruefData_UTA = False
End Try
End Function
Function pruefData_PLOSE_old() As Boolean
pruefData_PLOSE_old = True
Try