daId von USTVA wird nun in ustva-pos gespeichert, nicht-eingereichte_ustva verbessert.

This commit is contained in:
2025-01-07 11:30:07 +01:00
parent dd218b505c
commit 5133ebc42c
8 changed files with 87 additions and 58 deletions

View File

@@ -73,7 +73,7 @@ Public Class frmMDM_USTVAntrag
If UStVAn_ID <= 0 Then Exit Sub
.SET_SQL("SELECT [UStVAn_ID] ,[UStVPo_ID] ,[UStVPo_ReDat],[UStVPo_ReNr],[UStVPo_Leistungsbezeichnung],[UStVPo_Leistender],leist.[UstV_Leistender_Strasse] + ' ' + leist.[UstV_Leistender_StrasseNr] as [UstV_Leistender_Strasse],leist.[UstV_Leistender_PLZ],leist.[UstV_Leistender_Stadt],leist.[UstV_Leistender_Land],leist.[UstV_Leistender_UstNr],[UStVPo_USteuerbetrag],[UStVPo_Schnittstelle],[UStVPo_SchnittstellenNr],[UStVPo_Umrechnungskurs],[UStVPo_USteuerbetragEUR],[UStVPo_Sachbearbeiter]
.SET_SQL("SELECT [UStVAn_ID] ,[UStVPo_ID] ,[UStVPo_ReDat],[UStVPo_ReNr],[UStVPo_Leistungsbezeichnung],[UStVPo_Leistender],leist.[UstV_Leistender_Strasse] + ' ' + leist.[UstV_Leistender_StrasseNr] as [UstV_Leistender_Strasse],leist.[UstV_Leistender_PLZ],leist.[UstV_Leistender_Stadt],leist.[UstV_Leistender_Land],leist.[UstV_Leistender_UstNr],[UStVPo_USteuerbetrag],[UStVPo_Schnittstelle],[UStVPo_SchnittstellenNr],[UStVPo_Umrechnungskurs],[UStVPo_USteuerbetragEUR],[UStVPo_Sachbearbeiter], [UStVPo_daId]
FROM [tblUStVPositionen]
left join [tblUStVLeistender] as leist on leist.UStV_Leistender = [tblUStVPositionen].[UStVPo_Leistender]
where UStVAn_ID='" & UStVAn_ID & "' ORDER BY UStVPo_ID", "FMZOLL")
@@ -144,6 +144,8 @@ Public Class frmMDM_USTVAntrag
.Columns("UStVPo_Sachbearbeiter").MinimumWidth = 100
.Columns("UStVPo_Sachbearbeiter").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("UStVPo_daId").Visible = False
Dim c As New DataGridViewImageColumn
c.Name = "clmnPDF" : c.HeaderText = "RE"
@@ -158,7 +160,14 @@ Public Class frmMDM_USTVAntrag
For Each r As DataGridViewRow In .Rows
Dim da_id = getDaID(r.Cells("UStVPo_SchnittstellenNr").Value, r.Cells("UStVPo_ReDat").Value, r.Cells("UStVPo_ReNr").Value)
Dim da_id As Integer
If Not IsDBNull(r.Cells("UStVPo_daId").Value) Then
da_id = r.Cells("UStVPo_daId").Value
Else
da_id = getDaID_OLD(r.Cells("UStVPo_SchnittstellenNr").Value, r.Cells("UStVPo_ReDat").Value, r.Cells("UStVPo_ReNr").Value)
End If
If da_id > 0 Then
DirectCast(r.Cells("clmnPDF"), DataGridViewImageCell).Value = My.Resources.pdf
@@ -571,15 +580,10 @@ Public Class frmMDM_USTVAntrag
Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID)
Dim GET_Antraege = MDM_Worker.cPLOSE.GET_Antraege(USTV_ANTRAG.UStVAn_ReDatVon, USTV_ANTRAG.UStVAn_ReDatBis, USTV_ANTRAG.UStVAn_KuNr, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien, MWSTSummenAusBeleg)
If GET_Antraege IsNot Nothing Then
'Return True
For Each ANTRAG In GET_Antraege
Dim sql As New SQL
Dim USTV_POS As New VERAG_PROG_ALLGEMEIN.cUStVPositionen
USTV_POS.UStVAn_ID = USTV_ANTRAG.[UStVAn_ID]
USTV_POS.UStVPo_ID = USTV_ANTRAG.getMaxPosNr
@@ -588,6 +592,13 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_ReNr = ANTRAG.plose_RechnungsNr.ToString
USTV_POS.UStVPo_SchnittstellenNr = bytSchnittstellenNr
If MWSTSummenAusBeleg Then
USTV_POS.UStVPo_daId = ANTRAG.plose_daId
Else
USTV_POS.UStVPo_daId = SQL.getValueTxtBySql("SELECT TOP(1) [plInv_daId] FROM [tblPLOSE_Inv_Data] where plInv_SupplierRechnungsDatum='" & USTV_POS.UStVPo_ReDat & "' and plInv_SupplierRechnungsNr='" & USTV_POS.UStVPo_ReNr & "' and plInv_SupplierCountry='" & Antrag_LandKz & "' AND [plInv_daId] is not null", "FMZOLL")
End If
If Not alreadyExists(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then
USTV_POS.UStVPo_Schnittstelle = True
@@ -599,6 +610,7 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
USTV_POS.UStVPo_Zeitstempel = Now()
USTV_POS.UStVPo_daId = ANTRAG.plose_daId
' Berechnungen
If Not MWSTSummenAusBeleg Then
USTV_POS.UStVPo_USteuerbetragEUR = ANTRAG.plose_MWSTBetragWaehrungAbbuchung 'VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuro(ANTRAG.plose_MWSTBetragWaehrungAbbuchung, USTV_ANTRAG.UStVAn_Währungscode, "EUR")
@@ -656,12 +668,13 @@ Public Class frmMDM_USTVAntrag
If Not alreadyExists(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then
Dim sql As New SQL
USTV_POS.UStVPo_Schnittstelle = True
USTV_POS.UStVPo_Leistender = "VERAG 360 GmbH; 4975 Suben"
USTV_POS.UStVPo_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
USTV_POS.UStVPo_Zeitstempel = Now()
USTV_POS.UStVPo_daId = sql.getValueTxtBySql("SELECT TOP(1) RK_ID FROM Rechnungsausgang where cast(Rechnungsausgang.RechnungsDatum as Date) ='" & USTV_POS.UStVPo_ReDat & "' and Rechnungsausgang.RechnungsNr='" & USTV_POS.UStVPo_ReNr & "' AND FilialenNr = 4814 AND RK_ID is not null", "FMZOLL")
Dim dt_Prod As New DataTable
Dim GET_Positionen = cTrdProduct.GET_PRODUCTS(dt_Prod, USTV_POS.UStVPo_ReDat, USTV_POS.UStVPo_ReNr)
@@ -703,7 +716,7 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_EUR
Dim sql As New SQL
If USTV_POS.INSERT() Then
verarbeitet = sql.doSQL("Update tblTrdinInvoice SET tblTrdinInvoice.UStVAn_ID = NULL WHERE tblTrdinInvoice.Rechnungsdatum = '" & USTV_POS.UStVPo_ReDat & "' And tblTrdinInvoice.Rechnungsnummer = " & USTV_POS.UStVPo_ReNr, "FMZOLL")
If Not verarbeitet Then
@@ -747,6 +760,7 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_ReDat = r.Item("rmc_reDatum")
USTV_POS.UStVPo_ReNr = r.Item("rmc_reNr").ToString
USTV_POS.UStVPo_SchnittstellenNr = bytSchnittstellenNr
USTV_POS.UStVPo_daId = r.Item("rmc_daId")
If Not alreadyExists(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then
@@ -812,6 +826,7 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_ReDat = r.Item("invoice_date")
USTV_POS.UStVPo_ReNr = r.Item("invoice_number") & " - " & kdNr & IIf(Antrag_LandKz = "BE", "/Belgium", "")
USTV_POS.UStVPo_SchnittstellenNr = bytSchnittstellenNr
USTV_POS.UStVPo_daId = r.Item("daId")
If Not alreadyExistsMitLeistungsBez(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then
@@ -877,6 +892,7 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_ReDat = r.Item("Rechnungsdatum")
USTV_POS.UStVPo_ReNr = r.Item("Rechnungsnummer").ToString
USTV_POS.UStVPo_SchnittstellenNr = bytSchnittstellenNr
USTV_POS.UStVPo_daId = r.Item("daId")
If Not alreadyExists(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then
@@ -934,7 +950,7 @@ Public Class frmMDM_USTVAntrag
If GET_Antraege Then
For Each r As DataRow In dt.Rows
Dim sql As New SQL
Dim kdnr = r.Item("Kundennummer")
Dim USTV_POS As New VERAG_PROG_ALLGEMEIN.cUStVPositionen
@@ -944,6 +960,8 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_ReNr = r.Item("Rechnungsnummer").ToString
USTV_POS.UStVPo_SchnittstellenNr = bytSchnittstellenNr
USTV_POS.UStVPo_daId = sql.getValueTxtBySql("SELECT TOP(1) tblIDSInvoicesNew.daId FROM [tblIDSTransactionsNew] INNER JOIN tbl_IDS_Länder ON tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode LEFT JOIN tblIDSInvoicesNew on tblIDSInvoicesNew.CustomerCode = tblIDSTransactionsNew.CustomerCode and tblIDSInvoicesNew.Invoicenumber = Paymentsummarynumber where tblIDSTransactionsNew.[YearMonthDay] ='" & USTV_POS.UStVPo_ReDat & "' AND ISNULL(tblIDSTransactionsNew.[OBONumber], ISNULL(tblIDSTransactionsNew.[VRNumber], tblIDSTransactionsNew.[Paymentsummarynumber])) ='" & USTV_POS.UStVPo_ReNr & "' and tbl_IDS_Länder.Lieferland_ISO2='" & Antrag_LandKz & "' AND tblIDSInvoicesNew.daId is not null", "FMZOLL")
If Not alreadyExists(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then
USTV_POS.UStVPo_Schnittstelle = True
@@ -1438,8 +1456,14 @@ Public Class frmMDM_USTVAntrag
Dim schnnittstellenNr = dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_SchnittstellenNr").Value
Dim ReNr = dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_ReNr").Value
Dim ReDat = dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_ReDat").Value
Dim dsID
Dim dsID = getDaID(schnnittstellenNr, ReDat, ReNr)
If Not IsDBNull(dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_daId").Value) AndAlso IsNumeric(dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_daId").Value) AndAlso dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_daId").Value > 0 Then
dsID = dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_daId").Value
Else
dsID = getDaID_OLD(schnnittstellenNr, ReDat, ReNr)
End If
Select Case schnnittstellenNr
Case 1
@@ -1452,6 +1476,12 @@ Public Class frmMDM_USTVAntrag
Me.Cursor = Cursors.WaitCursor
Dim ds As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(dsID)
'If Not IsDBNull(dgvUSTVPositionen.Rows(e.RowIndex).Cells("UStVPo_daId").Value) Then
' ds.OPEN_SINGLE()
' Exit Sub
'End If
Dim path_src As String = ds.OPEN_SINGLE(False)
If path_src = "" Then Exit Sub
@@ -1524,7 +1554,7 @@ Public Class frmMDM_USTVAntrag
Me.Cursor = Cursors.Default
End Sub
Private Function getDaID(SchnittstellenNr, reDat, reNr)
Private Function getDaID_OLD(SchnittstellenNr, reDat, reNr)
Dim da_id = -1
Select Case If(SchnittstellenNr, -1)
@@ -1549,7 +1579,12 @@ Public Class frmMDM_USTVAntrag
For Each r As DataGridViewRow In dgvUSTVPositionen.Rows
Dim da_id = getDaID(r.Cells("UStVPo_SchnittstellenNr").Value, r.Cells("UStVPo_ReDat").Value, r.Cells("UStVPo_ReNr").Value)
Dim da_id
If Not IsDBNull(r.Cells("UStVPo_daId").Value) Then
da_id = r.Cells("UStVPo_daId").Value
Else
da_id = getDaID_OLD(r.Cells("UStVPo_SchnittstellenNr").Value, r.Cells("UStVPo_ReDat").Value, r.Cells("UStVPo_ReNr").Value)
End If
If da_id > 0 Then DirectCast(r.Cells("clmnPDF"), DataGridViewImageCell).Value = My.Resources.pdf
Next

View File

@@ -1,4 +1,5 @@
Imports System.Windows.Documents
Imports VERAG_PROG_ALLGEMEIN
Public Class frmUSTVoffeneAntraege
@@ -258,72 +259,62 @@ Public Class frmUSTVoffeneAntraege
Dim sqlwhere = ""
If kdnr > 0 Then
sqlwhere &= " and Kundennummer = " & kdnr
sqlwhere &= " and AdressenNr = " & kdnr
End If
With MyDatagridview1
.Columns.Clear()
.Columns.Clear()
'Exit Sub
'MsgBox(.sql)
Dim sqlstring = "Select " & top & " [Kundennummer],Adressen.[Name 1], [Lieferland_ISO2], [Rechnungsdatum], [Abrechnungsnummer], sum([Gesamtbetrag_Brutto_in_Darstellwährung]) as [Gesamtbetrag_Brutto_in_Darstellwährung], sum([Gesamtbetrag_Umsatzsteuer_in_Darstellwährung]) as [Gesamtbetrag_Umsatzsteuer_in_Darstellwährung], daId
Dim sqlstring = "Select " & top & " Adressen.AdressenNr as KdNr,Adressen.[Name 1],[Lieferland_ISO2],Abrechnungsnummer, [Rechnungsdatum] AS Rechnungsdatum, sum([Gesamtbetrag_Brutto_in_Darstellwährung]) as [Gesamtbetrag_Brutto_in_Darstellwährung], sum([Gesamtbetrag_Umsatzsteuer_in_Darstellwährung]) as [Gesamtbetrag_Umsatzsteuer_in_Darstellwährung], daId
FROM [tblUTAImportNew]
INNER JOIN Adressen on Adressen.UTAKundenNr = tblUTAImportNew.Kundennummer
where cast([Rechnungsdatum] As Date) between '" & dat_Sum_Von.Value & "' And '" & dat_Sum_Bis.Value & "' And [tblUTAImportNew].UStVAn_ID is null " & sqlwhere &
" group by Kundennummer,Adressen.[Name 1],[Rechnungsdatum], [Lieferland_ISO2], [Abrechnungsnummer], daId having sum([Gesamtbetrag_Umsatzsteuer_in_Darstellwährung]) <> 0 "
" group by Adressen.AdressenNr,Adressen.[Name 1],Abrechnungsnummer,[Rechnungsdatum], [Lieferland_ISO2], daId having sum([Gesamtbetrag_Umsatzsteuer_in_Darstellwährung]) <> 0 "
.SET_SQL(sqlstring, "FMZOLL")
.LOAD()
If .Columns.Count > 0 Then
.LOAD()
If .Columns.Count > 0 Then
.Columns("Kundennummer").HeaderText = "KdNr"
.Columns("KdNr").HeaderText = "KdNr"
.Columns("Name 1").HeaderText = "Kunde"
.Columns("Lieferland_ISO2").HeaderText = "Land"
.Columns("Rechnungsdatum").HeaderText = "RE-Datum"
.Columns("Abrechnungsnummer").HeaderText = "RE-Nr"
.Columns("Gesamtbetrag_Brutto_in_Darstellwährung").HeaderText = "Gesamtsumme Euro"
.Columns("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung").HeaderText = "MWSt Euro"
.Columns("daId").Visible = False
.Columns("Name 1").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
End If
Dim sumMwSt As Double = 0
.Columns("Lieferland_ISO2").HeaderText = "Land"
.Columns("Rechnungsdatum").HeaderText = "RE-Datum"
.Columns("Abrechnungsnummer").HeaderText = "RE-Nr"
.Columns("Gesamtbetrag_Brutto_in_Darstellwährung").HeaderText = "Gesamtsumme Euro"
.Columns("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung").HeaderText = "MWSt Euro"
.Columns("daId").Visible = False
.Columns("Name 1").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
End If
Dim sumMwSt As Double = 0
Dim c As New DataGridViewImageColumn
c.Name = "clmnPDF" : c.HeaderText = "RE"
' c.Image = Nothing
c.DefaultCellStyle.NullValue = Nothing
c.ImageLayout = DataGridViewImageCellLayout.Zoom
c.Width = 40 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
'c.DefaultCellStyle.Tag = "Therefore anzeigen"
c.Width = 40 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
'c.DefaultCellStyle.Tag = "Therefore anzeigen"
.Columns.Add(c)
For Each r As DataGridViewRow In .Rows
sumMwSt += If(IsNumeric(r.Cells("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung").Value), CDbl(r.Cells("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung").Value), 0)
.Columns.Add(c)
For Each r As DataGridViewRow In .Rows
sumMwSt += If(IsNumeric(r.Cells("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung").Value), CDbl(r.Cells("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung").Value), 0)
If Not IsDBNull(r.Cells("daId").Value) AndAlso r.Cells("daId").Value > 0 Then DirectCast(r.Cells("clmnPDF"), DataGridViewImageCell).Value = My.Resources.pdf
Next
txtAnzahl.Text = .Rows.Count
txtMWST.Text = sumMwSt
End With
Next
txtAnzahl.Text = .Rows.Count
txtMWST.Text = sumMwSt
End With
End Sub
Sub initDgv_IDS(anz As Integer, Optional kdnr As Integer = -1)
Dim top = ""
If anz > 0 Then top = "TOP (" & anz & ")"
Dim sqlwhere = ""
If kdnr > 0 Then
sqlwhere &= " and tblIDSTransactionsNew.KdNrVERAG = " & kdnr
End If
With MyDatagridview1
.Columns.Clear()
'Exit Sub