diff --git a/SDL/Fakturierung/cFakturierung.vb b/SDL/Fakturierung/cFakturierung.vb index 82ef5cbf..ce563e62 100644 --- a/SDL/Fakturierung/cFakturierung.vb +++ b/SDL/Fakturierung/cFakturierung.vb @@ -1687,9 +1687,10 @@ Public Class cFakturierung End If End If If RECHNUNG.ANHAENGE.Count > 0 Then - If (RECHNUNG.[DruckDatumZeit] Is Nothing OrElse vbYes = MsgBox("Anhänge drucken?", vbYesNoCancel)) Then - printRGAnhaenge(RECHNUNG) - End If + 'wird nicht mehr benötigt! TicketNr: 953 + 'If (RECHNUNG.[DruckDatumZeit] Is Nothing OrElse vbYes = MsgBox("Anhänge drucken?", vbYesNoCancel)) Then + ' printRGAnhaenge(RECHNUNG) + 'End If End If End If diff --git a/SDL/USTV/frmMDM_USTVAntrag.vb b/SDL/USTV/frmMDM_USTVAntrag.vb index f23e8795..87cd2666 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.vb @@ -1,12 +1,18 @@  +Imports System.IO Imports System.Reflection +Imports System.Windows.Documents +Imports com.sun.org.apache.xml.internal.resolver Imports com.sun.tools.internal.ws.wsdl.framework Imports DocumentFormat.OpenXml.Office2010.Drawing.Charts +Imports itextsharp.text.pdf +Imports itextsharp.text.pdf.parser Imports java.text.Normalizer Imports jdk.nashorn.internal.objects.annotations 'Imports DocumentFormat.OpenXml.Drawing.Charts Imports Microsoft.Office.Interop Imports org.BouncyCastle.Pqc.Crypto +Imports sun.swing Imports VERAG_PROG_ALLGEMEIN Public Class frmMDM_USTVAntrag @@ -67,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") @@ -138,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" @@ -152,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 @@ -455,7 +470,7 @@ Public Class frmMDM_USTVAntrag AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked End If - If False Then 'wenn INFO von PLOSE WÄHRUNGSCODE IN INV_DATA, dann freischalten + If USTV_ANTRAG.UStVAn_ReDatVon.year >= 2025 Then 'wenn INFO von PLOSE WÄHRUNGSCODE IN INV_DATA, dann freischalten If Not ContextMenuStrip2.Items.ContainsKey("ploseneu") Then Dim plose = New ToolStripMenuItem() With {.Text = "Plose NEUE LOGIK", .Name = "ploseneu", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} ContextMenuStrip2.Items.Add(plose) @@ -536,7 +551,7 @@ Public Class frmMDM_USTVAntrag Shared Function alreadyExists(USTVAn_KuNr As Integer, UStVAn_LandNr As String, USTV_POS As VERAG_PROG_ALLGEMEIN.cUStVPositionen) As Boolean Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL - Dim cnt = SQL.getValueTxtBySql(" SELECT count(*) FROM [tblUStVAntrag] inner join [tblUStVPositionen] on tblUStVAntrag.UStVAn_ID= [tblUStVPositionen].UStVAn_ID + Dim cnt = SQL.getValueTxtBySql(" Select count(*) FROM [tblUStVAntrag] inner join [tblUStVPositionen] On tblUStVAntrag.UStVAn_ID= [tblUStVPositionen].UStVAn_ID WHERE USTVAn_KuNr='" & USTVAn_KuNr & "' AND UStVPo_SchnittstellenNr='" & USTV_POS.UStVPo_SchnittstellenNr & "' AND UStVPo_ReNr = '" & USTV_POS.UStVPo_ReNr & "' AND UStVPo_ReDat='" & USTV_POS.UStVPo_ReDat & "' AND UStVAn_LandNr='" & UStVAn_LandNr & "'", "FMZOLL") Return (cnt > 0) End Function @@ -565,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 @@ -584,6 +594,12 @@ Public Class frmMDM_USTVAntrag If Not alreadyExists(USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_LandNr, USTV_POS) Then + If MWSTSummenAusBeleg AndAlso ANTRAG.plose_daId IsNot Nothing 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 + USTV_POS.UStVPo_Schnittstelle = True USTV_POS.UStVPo_Leistungsbezeichnung = "Maut" USTV_POS.UStVPo_Leistender = ANTRAG.plose_Lieferant @@ -593,6 +609,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") @@ -602,10 +619,44 @@ Public Class frmMDM_USTVAntrag ' MsgBox(ANTRAG.plose_Lieferant & " - " & ANTRAG.plose_RechnungsDatum & " - " & ANTRAG.plose_RechnungsNr & " :::::::::: " & CDbl(ANTRAG.plose_MWSTBetrag).ToString("C2")) Else 'TODO - hier Umrechnungslogik von FRMDW und EUR und EUR/FRMDWR für Belegsebene + Dim umrechKurs As Double = 1 + + If USTV_ANTRAG.UStVAn_Währungscode = ANTRAG.plose_WaehrungAbbuchung Then + USTV_POS.UStVPo_USteuerbetragEUR = ANTRAG.plose_MWSTBetragWaehrungAbbuchung + USTV_POS.UStVPo_Umrechnungskurs = ANTRAG.plose_MWSTBetrag / ANTRAG.plose_MWSTBetragWaehrungAbbuchung + USTV_POS.UStVPo_USteuerbetrag = ANTRAG.plose_MWSTBetrag + + Else + Dim kurs As New cEZB_Waehrungskurse(USTV_ANTRAG.UStVAn_Währungscode) + Dim UST_EUR = ANTRAG.plose_MWSTBetrag + Dim UST_org = ANTRAG.plose_MWSTBetrag + + If USTV_ANTRAG.UStVAn_Währungscode <> "EUR" AndAlso ANTRAG.plose_WaehrungAbbuchung = "EUR" Then + + UST_org = Math.Round(kurs.EXCHANGE_EURTOCUR(UST_EUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2) + + ElseIf USTV_ANTRAG.UStVAn_Währungscode = "EUR" AndAlso ANTRAG.plose_WaehrungAbbuchung <> "EUR" Then + + UST_EUR = Math.Round(kurs.EXCHANGE_CURTOEUR(UST_org, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2) + + End If + + + If (UST_org > 0 AndAlso UST_org <> UST_EUR) Then + umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100 + End If + + + If UST_org > 0 Then + USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR + USTV_POS.UStVPo_Umrechnungskurs = umrechKurs + USTV_POS.UStVPo_USteuerbetrag = UST_org + End If + + End If + End If - - USTV_POS.INSERT() End If Next @@ -647,15 +698,14 @@ Public Class frmMDM_USTVAntrag USTV_POS.UStVPo_SchnittstellenNr = bytSchnittstellenNr - - 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) @@ -697,7 +747,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 @@ -741,6 +791,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 @@ -806,6 +857,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 @@ -871,6 +923,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 @@ -928,7 +981,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 @@ -938,6 +991,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 @@ -1432,45 +1487,105 @@ 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 - If dsID > 0 Then Me.Cursor = Cursors.WaitCursor cFakturierung.doRechnungsDruck_SRorER(dsID,, False, 3) End If - Case Else + Case 8 + 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 + + Try + + Dim fi As New System.IO.DirectoryInfo(path_src) + Dim pdfReader As itextsharp.text.pdf.PdfReader = New itextsharp.text.pdf.PdfReader(path_src) + + Dim TMP_Path_New = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(fi.Name, fi.Extension,, True, "IDS-Rechnungen") + Dim srcDoc As New itextsharp.text.Document() + Dim PdfCopyProvider As New itextsharp.text.pdf.PdfCopy(srcDoc, New FileStream(TMP_Path_New, System.IO.FileMode.Create)) + PdfCopyProvider.SetFullCompression() + srcDoc.Open() + PdfReader.unethicalreading = True + Dim pages As New List(Of Integer)() + + For page As Integer = 1 To pdfReader.NumberOfPages + + Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy() + Dim currentpagetext As String = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy) + Dim searchtext As String = ReNr + Dim impPage As itextsharp.text.pdf.PdfImportedPage = Nothing + + If (currentpagetext.Contains(searchtext)) Then + + If page > pdfReader.NumberOfPages Then + MsgBox("Seitenanzahl überschritten!") + srcDoc.Close() : pdfReader.Close() + Exit Sub + End If + Try + + impPage = PdfCopyProvider.GetImportedPage(pdfReader, page) + ' ----- Ermitteln der Seitenauflösung und setzen für die neue Seite + PdfCopyProvider.SetPageSize(New itextsharp.text.Rectangle(0.0F, 0.0F, impPage.Width, impPage.Height, pdfReader.GetPageRotation(page))) + ' ----- PDF Seite in das neue Dokument einfügen + If impPage IsNot Nothing Then PdfCopyProvider.AddPage(impPage) + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + + + End If + + Next + + srcDoc.Close() + pdfReader.Close() + + If IO.File.Exists(TMP_Path_New) Then + Process.Start(TMP_Path_New) + End If + + + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + Case Else If dsID > 0 Then Me.Cursor = Cursors.WaitCursor Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(dsID) DS.OPEN_SINGLE() End If - End Select - - End If - - - Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) Me.Cursor = Cursors.Default End Try - 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) @@ -1496,7 +1611,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 diff --git a/SDL/USTV/frmUSTVoffeneAntraege.vb b/SDL/USTV/frmUSTVoffeneAntraege.vb index 8e8506e7..80928abe 100644 --- a/SDL/USTV/frmUSTVoffeneAntraege.vb +++ b/SDL/USTV/frmUSTVoffeneAntraege.vb @@ -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 diff --git a/SDL/USTV/usrCntlUSTV.vb b/SDL/USTV/usrCntlUSTV.vb index 5b26c10f..576c1256 100644 --- a/SDL/USTV/usrCntlUSTV.vb +++ b/SDL/USTV/usrCntlUSTV.vb @@ -366,12 +366,13 @@ Public Class usrCntlUSTV ContextMenuStrip2.Items.Add(plose) AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked End If - - If False Then 'wenn INFO von PLOSE WÄHRUNGSCODE IN INV_DATA, dann freischalten - If Not ContextMenuStrip2.Items.ContainsKey("ploseneu") Then - Dim plose = New ToolStripMenuItem() With {.Text = "Plose-NEUE LOGIK", .Name = "ploseneu", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} - ContextMenuStrip2.Items.Add(plose) - AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked + If IsDate(dgvUSTV.CurrentRow.Cells("UStVAn_ReDatVon").Value) Then + If DirectCast(dgvUSTV.CurrentRow.Cells("UStVAn_ReDatVon").Value, Date).Year >= 2025 Then 'wenn INFO von PLOSE WÄHRUNGSCODE IN INV_DATA, dann freischalten + If Not ContextMenuStrip2.Items.ContainsKey("ploseneu") Then + Dim plose = New ToolStripMenuItem() With {.Text = "Plose-NEUE LOGIK", .Name = "ploseneu", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} + ContextMenuStrip2.Items.Add(plose) + AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked + End If End If End If diff --git a/SDL/USTV/ustCntlUSTV_AntragPosition.vb b/SDL/USTV/ustCntlUSTV_AntragPosition.vb index a44ce7fe..78d48e84 100644 --- a/SDL/USTV/ustCntlUSTV_AntragPosition.vb +++ b/SDL/USTV/ustCntlUSTV_AntragPosition.vb @@ -115,14 +115,14 @@ Public Class ustCntlUSTV_AntragPosition save = False End If If txtUmrechnungskurs._value <> "" Then - UStV_POS.UStVPo_Umrechnungskurs = txtUmrechnungskurs._value + UStV_POS.UStVPo_Umrechnungskurs = txtUmrechnungskurs._value.Replace(",", ".") Else save = False End If UStV_POS.UStVPo_Schnittstelle = cbxAPI.Checked - UStV_POS.UStVPo_SchnittstellenNr = IIf(cboSchnittstellennr.SelectedItem Is Nothing, cboSchnittstellennr.SelectedItem, -1) + UStV_POS.UStVPo_SchnittstellenNr = IIf(cboSchnittstellennr.SelectedItem IsNot Nothing, cboSchnittstellennr._value, -1) End Sub @@ -141,7 +141,8 @@ Public Class ustCntlUSTV_AntragPosition gridAktiv = False txtUSTBetragEUR._value = "" If IsNumeric(txtUSTBetrag._value) AndAlso IsNumeric(txtUmrechnungskurs._value) Then - txtUSTBetragEUR._value = txtUSTBetrag._value * txtUmrechnungskurs._value + txtUSTBetragEUR.Text = Math.Floor((txtUSTBetrag._value / txtUmrechnungskurs._value) * 100 + 0.5) / 100 + 'txtUSTBetragEUR._value = txtUSTBetrag._value * txtUmrechnungskurs._value End If gridAktiv = gridAktivTMP End Sub diff --git a/SDL/kassenbuch/frmBelegNeu.Designer.vb b/SDL/kassenbuch/frmBelegNeu.Designer.vb index a85cb33f..b194cfd7 100644 --- a/SDL/kassenbuch/frmBelegNeu.Designer.vb +++ b/SDL/kassenbuch/frmBelegNeu.Designer.vb @@ -71,6 +71,8 @@ Partial Class frmBelegNeu Me.btnAusgabebeleg = New System.Windows.Forms.Button() Me.lblErrPos = New System.Windows.Forms.Label() Me.pnlData = New System.Windows.Forms.Panel() + Me.Label28 = New System.Windows.Forms.Label() + Me.lblZahlungsmittel = New System.Windows.Forms.Label() Me.txtzuKassieren = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.Label22 = New System.Windows.Forms.Label() Me.cbxSplittung = New System.Windows.Forms.CheckBox() @@ -98,6 +100,7 @@ Partial Class frmBelegNeu Me.Label1 = New System.Windows.Forms.Label() Me.kdkunde = New VERAG_PROG_ALLGEMEIN.KdSearchBox() Me.pnlOPt = New System.Windows.Forms.Panel() + Me.LinkLabel1 = New System.Windows.Forms.LinkLabel() Me.cboPrinter = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.cbxBelegOffnen = New System.Windows.Forms.CheckBox() Me.lblStorno = New System.Windows.Forms.Label() @@ -141,8 +144,6 @@ Partial Class frmBelegNeu Me.DataGridViewTextBoxColumn9 = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.FlowLayoutPanel2 = New System.Windows.Forms.FlowLayoutPanel() Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) - Me.Label28 = New System.Windows.Forms.Label() - Me.lblZahlungsmittel = New System.Windows.Forms.Label() CType(Me.dgvBelegPos, System.ComponentModel.ISupportInitialize).BeginInit() Me.pnl.SuspendLayout() Me.pnlData.SuspendLayout() @@ -435,7 +436,7 @@ Partial Class frmBelegNeu Me.btnPrint.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.btnPrint.ForeColor = System.Drawing.Color.Black Me.btnPrint.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.btnPrint.Location = New System.Drawing.Point(71, 29) + Me.btnPrint.Location = New System.Drawing.Point(71, 27) Me.btnPrint.Name = "btnPrint" Me.btnPrint.Padding = New System.Windows.Forms.Padding(0, 0, 5, 0) Me.btnPrint.Size = New System.Drawing.Size(73, 59) @@ -689,6 +690,28 @@ Partial Class frmBelegNeu Me.pnlData.Size = New System.Drawing.Size(624, 212) Me.pnlData.TabIndex = 5 ' + 'Label28 + ' + Me.Label28.AutoSize = True + Me.Label28.BackColor = System.Drawing.Color.Transparent + Me.Label28.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label28.Location = New System.Drawing.Point(406, 38) + Me.Label28.Name = "Label28" + Me.Label28.Size = New System.Drawing.Size(78, 13) + Me.Label28.TabIndex = 46 + Me.Label28.Text = "Zahlungsmittel:" + ' + 'lblZahlungsmittel + ' + Me.lblZahlungsmittel.AutoSize = True + Me.lblZahlungsmittel.BackColor = System.Drawing.Color.Transparent + Me.lblZahlungsmittel.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblZahlungsmittel.Location = New System.Drawing.Point(494, 35) + Me.lblZahlungsmittel.Name = "lblZahlungsmittel" + Me.lblZahlungsmittel.Size = New System.Drawing.Size(14, 17) + Me.lblZahlungsmittel.TabIndex = 47 + Me.lblZahlungsmittel.Text = "-" + ' 'txtzuKassieren ' Me.txtzuKassieren._DateTimeOnly = False @@ -1183,6 +1206,7 @@ Partial Class frmBelegNeu ' 'pnlOPt ' + Me.pnlOPt.Controls.Add(Me.LinkLabel1) Me.pnlOPt.Controls.Add(Me.cboPrinter) Me.pnlOPt.Controls.Add(Me.cbxBelegOffnen) Me.pnlOPt.Controls.Add(Me.lblStorno) @@ -1204,6 +1228,17 @@ Partial Class frmBelegNeu Me.pnlOPt.Size = New System.Drawing.Size(624, 92) Me.pnlOPt.TabIndex = 6 ' + 'LinkLabel1 + ' + Me.LinkLabel1.AutoSize = True + Me.LinkLabel1.Font = New System.Drawing.Font("Microsoft Sans Serif", 6.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.LinkLabel1.Location = New System.Drawing.Point(476, 0) + Me.LinkLabel1.Name = "LinkLabel1" + Me.LinkLabel1.Size = New System.Drawing.Size(126, 9) + Me.LinkLabel1.TabIndex = 16 + Me.LinkLabel1.TabStop = True + Me.LinkLabel1.Text = "Fragen zum POS-Terminal?" + ' 'cboPrinter ' Me.cboPrinter._allowedValuesFreiText = Nothing @@ -1371,18 +1406,18 @@ Partial Class frmBelegNeu Me.Panel1.Controls.Add(Me.btnPOS) Me.Panel1.Controls.Add(Me.btnPrint) Me.Panel1.Controls.Add(Me.Button3) - Me.Panel1.Location = New System.Drawing.Point(475, 3) + Me.Panel1.Location = New System.Drawing.Point(475, 9) Me.Panel1.Name = "Panel1" - Me.Panel1.Size = New System.Drawing.Size(145, 89) + Me.Panel1.Size = New System.Drawing.Size(145, 83) Me.Panel1.TabIndex = 13 ' 'Label27 ' Me.Label27.Cursor = System.Windows.Forms.Cursors.Default Me.Label27.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label27.Location = New System.Drawing.Point(3, 14) + Me.Label27.Location = New System.Drawing.Point(2, 12) Me.Label27.Name = "Label27" - Me.Label27.Size = New System.Drawing.Size(135, 13) + Me.Label27.Size = New System.Drawing.Size(136, 15) Me.Label27.TabIndex = 6 Me.Label27.Text = "Beleg drucken" Me.Label27.TextAlign = System.Drawing.ContentAlignment.TopCenter @@ -1391,9 +1426,9 @@ Partial Class frmBelegNeu ' Me.Label26.Cursor = System.Windows.Forms.Cursors.Default Me.Label26.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle)) - Me.Label26.Location = New System.Drawing.Point(3, 1) + Me.Label26.Location = New System.Drawing.Point(3, -1) Me.Label26.Name = "Label26" - Me.Label26.Size = New System.Drawing.Size(137, 20) + Me.Label26.Size = New System.Drawing.Size(137, 17) Me.Label26.TabIndex = 17 Me.Label26.Text = "Zahlung" Me.Label26.TextAlign = System.Drawing.ContentAlignment.TopCenter @@ -1405,7 +1440,7 @@ Partial Class frmBelegNeu Me.btnPOS.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.btnPOS.ForeColor = System.Drawing.Color.Black Me.btnPOS.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.btnPOS.Location = New System.Drawing.Point(-1, 29) + Me.btnPOS.Location = New System.Drawing.Point(-1, 27) Me.btnPOS.Name = "btnPOS" Me.btnPOS.Padding = New System.Windows.Forms.Padding(0, 0, 5, 0) Me.btnPOS.Size = New System.Drawing.Size(73, 59) @@ -1712,28 +1747,6 @@ Partial Class frmBelegNeu Me.ContextMenuStrip1.Name = "ContextMenuStrip1" Me.ContextMenuStrip1.Size = New System.Drawing.Size(61, 4) ' - 'Label28 - ' - Me.Label28.AutoSize = True - Me.Label28.BackColor = System.Drawing.Color.Transparent - Me.Label28.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label28.Location = New System.Drawing.Point(406, 38) - Me.Label28.Name = "Label28" - Me.Label28.Size = New System.Drawing.Size(78, 13) - Me.Label28.TabIndex = 46 - Me.Label28.Text = "Zahlungsmittel:" - ' - 'lblZahlungsmittel - ' - Me.lblZahlungsmittel.AutoSize = True - Me.lblZahlungsmittel.BackColor = System.Drawing.Color.Transparent - Me.lblZahlungsmittel.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblZahlungsmittel.Location = New System.Drawing.Point(494, 35) - Me.lblZahlungsmittel.Name = "lblZahlungsmittel" - Me.lblZahlungsmittel.Size = New System.Drawing.Size(14, 17) - Me.lblZahlungsmittel.TabIndex = 47 - Me.lblZahlungsmittel.Text = "-" - ' 'frmBelegNeu ' Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!) @@ -1881,4 +1894,5 @@ Partial Class frmBelegNeu Friend WithEvents Label26 As Label Friend WithEvents Label28 As Label Friend WithEvents lblZahlungsmittel As Label + Friend WithEvents LinkLabel1 As LinkLabel End Class diff --git a/SDL/kassenbuch/frmBelegNeu.vb b/SDL/kassenbuch/frmBelegNeu.vb index be01df9e..0849607d 100644 --- a/SDL/kassenbuch/frmBelegNeu.vb +++ b/SDL/kassenbuch/frmBelegNeu.vb @@ -1740,6 +1740,10 @@ Public Class frmBelegNeu End Sub + Private Sub LinkLabel1_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked + Process.Start("https://wiki.verag.ag/de/software/aviso/howtos/Bankomat") + End Sub + 'Private Sub generatePOSUmbuchung() ' Dim isUmbuchung = True ' Dim frmFremdbeleg As New frmFremdbeleg(isUmbuchung) diff --git a/SDL/kassenbuch/frmKassenbuch.vb b/SDL/kassenbuch/frmKassenbuch.vb index 7747d402..5bac0dac 100644 --- a/SDL/kassenbuch/frmKassenbuch.vb +++ b/SDL/kassenbuch/frmKassenbuch.vb @@ -1,5 +1,4 @@ -Imports DocumentFormat.OpenXml.Drawing -Imports SDL.RKSVServer +Imports SDL.RKSVServer Public Class frmKassenbuch Dim SQL As New SQL @@ -630,6 +629,8 @@ Public Class frmKassenbuch print.Text = "Kassenbuch" Dim rpt As New rptKassenbuchKontenBericht + rpt.PageSettings.PaperKind = GrapeCity.ActiveReports.Printing.PaperKind.A4 + Dim frmVonBis As New frmKasseBerichtVonBis If frmVonBis.ShowDialog(Me) <> Windows.Forms.DialogResult.OK Then Exit Sub diff --git a/SDL/mdm/usrcntlFremdrechnungen.vb b/SDL/mdm/usrcntlFremdrechnungen.vb index 81e9d33e..515d1fc3 100644 --- a/SDL/mdm/usrcntlFremdrechnungen.vb +++ b/SDL/mdm/usrcntlFremdrechnungen.vb @@ -310,13 +310,13 @@ Public Class usrcntlFremdrechnungen 'IDS Case 100 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & - " [YearMonthDay] as Rechnungsdatum,[Invoicenumber] as Rechnungsnummer,[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM tblIDSInvoicesNew WHERE [CustomerCode] = (SELECT TOP 1 [CustomerCode] FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE [KdNrVERAG]=" & kdNr & " AND KdNrAlt =0 ORDER BY Zeitstempel DESC) order by [YearMonthDay], [Invoicenumber]" + " [YearMonthDay] as Rechnungsdatum,[Invoicenumber] as Rechnungsnummer,[daId],[TransactionVolume] as Transaktionsmenge,[AmminclVAT] as Bruttobetrag,[TotalNetAmount] as Nettobetrag,[VATAmount] as MWSt, cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM tblIDSInvoicesNew WHERE [CustomerCode] = (SELECT TOP 1 [CustomerCode] FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE [KdNrVERAG]=" & kdNr & " AND KdNrAlt =0 ORDER BY Zeitstempel DESC) order by [YearMonthDay], [Invoicenumber]" 'UTA Case 212 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & - " [Rechnungsdatum],[Abrechnungsnummer] as Rechnungsnummer,Kundennummer,[daId],[Lieferland_ISO2] as Land, 'RE' as Art, cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM [VERAG].[dbo].[tblUTAImportNew] where Kundennummer = " & kdNr & " group by [Abrechnungsnummer],[Rechnungsdatum],Kundennummer,[daId],[Lieferland_ISO2]" + " [Rechnungsdatum],[Abrechnungsnummer] as Rechnungsnummer,Kundennummer,[daId],[Lieferland_ISO2] as Land, 'RE' as Art, cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM [VERAG].[dbo].[tblUTAImportNew] inner join adressen on Kundennummer = UTAKundenNr where AdressenNr = " & kdNr & " group by [Abrechnungsnummer],[Rechnungsdatum],Kundennummer,[daId],[Lieferland_ISO2]" - SQL_STR &= " UNION ALL SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & " [Datum], [RechnungsNr],[KundenNr],[daId],'',[DocumentTyp], cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM [VERAG].[dbo].[tblUTADocuments] where KundenNr = " & kdNr + SQL_STR &= " UNION ALL SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & " [Datum], [RechnungsNr],[KundenNr],[daId],'',[DocumentTyp], cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM [VERAG].[dbo].[tblUTADocuments]inner join adressen on KundenNr = UTAKundenNr where AdressenNr = " & kdNr 'PLOSE Case 214 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & diff --git a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben DE.dotx b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben DE.dotx index 7dd7bfaf..f8eb5042 100644 Binary files a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben DE.dotx and b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben DE.dotx differ diff --git a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben RO.dotx b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben RO.dotx index 98fb2b90..ae0be813 100644 Binary files a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben RO.dotx and b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben RO.dotx differ diff --git a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben TR.dotx b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben TR.dotx index 1c7860d5..c1ce4168 100644 Binary files a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben TR.dotx and b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben TR.dotx differ diff --git a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben YU.dotx b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben YU.dotx index 9ef6d406..0651f0f5 100644 Binary files a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben YU.dotx and b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben YU.dotx differ diff --git a/SDL/seriendruck/usrCntlSeriendruck.vb b/SDL/seriendruck/usrCntlSeriendruck.vb index 4d80fc6b..2cd2819f 100644 --- a/SDL/seriendruck/usrCntlSeriendruck.vb +++ b/SDL/seriendruck/usrCntlSeriendruck.vb @@ -35,10 +35,12 @@ Public Class usrCntlSeriendruck Dim bericht As cErstasttungsschreiben = berichteSQL.getErstatung(txtErstattungAbfNrFiliale_neu.Text, txtErstattungAbfNr_neu.Text, txtErstattungAbfUnterNr_neu.Text) Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(19) + Dim FIRMA_DE As New VERAG_PROG_ALLGEMEIN.cFirmen(2) 'Dim ADRESSE = New VERAG_PROG_ALLGEMEIN.cAdressen(bericht.) If FIRMA IsNot Nothing Then - WordDoc.FormFields("txtAdresseZeileFirma").Range.Text = FIRMA.Firma_Bez + ", " + FIRMA.Firma_Ort + WordDoc.FormFields("txtAdresseZeileFirma").Range.Text = FIRMA.Firma_Bez + ", " + FIRMA.Firma_Ort + ", " + FIRMA.Firma_Straße + WordDoc.FormFields("txtAdresseZeileFirm1").Range.Text = FIRMA_DE.Firma_Bez + ", " + FIRMA_DE.Firma_Ort + ", " + FIRMA_DE.Firma_Straße End If diff --git a/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb b/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb index e2b372d9..6cf64d42 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb @@ -300,6 +300,7 @@ Public Class cUStVPositionen Property UStVPo_USteuerbetragEUR As Object = Nothing ' MONEY NULL, Property UStVPo_Sachbearbeiter As Object = Nothing ' NVARCHAR(15) NULL, Property UStVPo_Zeitstempel As Object = Nothing ' DATETIME Default (getdate()) NULL, + Property UStVPo_daId As Object = Nothing Dim SQL As New SQL @@ -391,6 +392,7 @@ Public Class cUStVPositionen list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVPo_USteuerbetragEUR", UStVPo_USteuerbetragEUR)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVPo_Sachbearbeiter", UStVPo_Sachbearbeiter)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVPo_Zeitstempel", UStVPo_Zeitstempel)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVPo_daId", UStVPo_daId)) Return list End Function diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cIDS.vb b/VERAG_PROG_ALLGEMEIN/Classes/cIDS.vb index f7368c18..3394f4c0 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cIDS.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cIDS.vb @@ -354,7 +354,7 @@ Public Class cIDS tblIDSTransactionsNew.KdNrVERAG, tblIDSTransactionsNew.[YearMonthDay], ISNULL(tblIDSTransactionsNew.[OBONumber], - ISNULL(tblIDSTransactionsNew.[VRNumber], tblIDSTransactionsNew.[Paymentsummarynumber])) + ISNULL(tblIDSTransactionsNew.[VRNumber], tblIDSTransactionsNew.[Paymentsummarynumber])) ORDER BY tblIDSTransactionsNew.KdNrVERAG, tblIDSTransactionsNew.[YearMonthDay], diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cRMC.vb b/VERAG_PROG_ALLGEMEIN/Classes/cRMC.vb index d988ceec..6acde783 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cRMC.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cRMC.vb @@ -165,11 +165,11 @@ Public Class cRMC Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL() - Using cmd As New SqlCommand(" SELECT rmc_reDatum,rmc_kdNr,[rmc_reNr],sum([rmc_betragNetto])[rmc_betragNetto],sum([rmc_betragMWST])[rmc_betragMWST] ,sum([rmc_betragBrutto] )[rmc_betragBrutto], [rmc_waehrung], sum([rmc_euroBrutto])[rmc_euroBrutto] FROM [tblRMCImport] + Using cmd As New SqlCommand(" SELECT rmc_reDatum,rmc_kdNr,[rmc_reNr],sum([rmc_betragNetto])[rmc_betragNetto],sum([rmc_betragMWST])[rmc_betragMWST] ,sum([rmc_betragBrutto] )[rmc_betragBrutto], [rmc_waehrung], sum([rmc_euroBrutto])[rmc_euroBrutto], rmc_daId FROM [tblRMCImport] INNER JOIN Adressen as adr on rmc_kdNr=adr.[WölflKundenNr] where cast(rmc_reDatum as date) between @von and @bis and AdressenNr=@AdressenNr AND rmc_landKZ ='" & LandKZ & "'" & If(Archiv, " And rmc_archiv =@Archiv ", "") & " - group by rmc_reDatum,rmc_kdNr,[rmc_reNr],[rmc_waehrung] + group by rmc_reDatum,rmc_kdNr,[rmc_reNr],[rmc_waehrung], rmc_daId having sum([rmc_betragMWST])>0 order by rmc_reDatum", conn) diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cTrdInvoice.vb b/VERAG_PROG_ALLGEMEIN/Classes/cTrdInvoice.vb index 8c0058bb..0982ce50 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cTrdInvoice.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cTrdInvoice.vb @@ -186,6 +186,7 @@ Public Class cTrdInvoice Return SQL.doSQL(sqlstr, "FMZOLL") End Function + Public Shared Function GET_RECHNUNGEN(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer) As Boolean Try Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb b/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb index dc047385..0ba73034 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb @@ -1350,10 +1350,10 @@ Public Class cUTA Using cmd As New SqlCommand("SELECT [tblUTAImportNew].Rechnungsdatum, [tblUTAImportNew].Rechnungsnummer_pro_Lieferland AS Rechnungsnummer,Adressen.AdressenNr as Kundennummer, Sum([Gesamtbetrag_Brutto_in_Lieferlandwährung]-[Gesamtbetrag_Netto_in_Lieferlandwährung]) AS Umsatzsteuerbetrag_in_Lieferlandwährung, Lieferlandwährung_ISO, - Sum([Gesamtbetrag_Brutto_in_Darstellwährung]-[Gesamtbetrag_Netto_in_Darstellwährung]) AS Umsatzsteuerbetrag_in_Darstellwährung, Darstellwährung_ISO + Sum([Gesamtbetrag_Brutto_in_Darstellwährung]-[Gesamtbetrag_Netto_in_Darstellwährung]) AS Umsatzsteuerbetrag_in_Darstellwährung, Darstellwährung_ISO, daId FROM [tblUTAImportNew] INNER JOIN Adressen ON [tblUTAImportNew].Kundennummer = Adressen.UTAKundenNr WHERE ([tblUTAImportNew].Rechnungsdatum Between '" & von.ToShortDateString & "' And '" & bis.ToShortDateString & "' AND [tblUTAImportNew].Lieferland_ISO2='" & LandKZ & "' AND [tblUTAImportNew].Lieferlandwährung_ISO='" & Wahrungscode & "' AND Adressen.AdressenNr=" & KundenNr & " AND charged = 1 AND isnull(tblUTAImportNew.UStVAn_ID,0) = " & IIf(Archiv IsNot Nothing AndAlso Archiv, 1, 0) & " ) - GROUP BY [tblUTAImportNew].Rechnungsdatum, [tblUTAImportNew].Rechnungsnummer_pro_Lieferland, Lieferlandwährung_ISO ,Darstellwährung_ISO,Adressen.AdressenNr + GROUP BY [tblUTAImportNew].Rechnungsdatum, [tblUTAImportNew].Rechnungsnummer_pro_Lieferland, Lieferlandwährung_ISO ,Darstellwährung_ISO,Adressen.AdressenNr, daId HAVING (((Sum([Gesamtbetrag_Brutto_in_Lieferlandwährung]-[Gesamtbetrag_Netto_in_Lieferlandwährung]))<>0));", conn) cmd.Parameters.AddWithValue("@von", von) diff --git a/VERAG_PROG_ALLGEMEIN/Schnittstellen/MSE/cMSEAPI.vb b/VERAG_PROG_ALLGEMEIN/Schnittstellen/MSE/cMSEAPI.vb index 8047fca0..95c248f2 100644 --- a/VERAG_PROG_ALLGEMEIN/Schnittstellen/MSE/cMSEAPI.vb +++ b/VERAG_PROG_ALLGEMEIN/Schnittstellen/MSE/cMSEAPI.vb @@ -1365,13 +1365,13 @@ Public Class cMSEAPI Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL() - Using cmd As New SqlCommand("select * from ( select cust.[customer_id],bills.invoice_date, bills.invoice_number, bills.specification_page_name, trans.original_currency ,sum(USteuer_EUR) as UST_EUR, sum(original_vat_amount) as UST + Using cmd As New SqlCommand("select * from ( select cust.[customer_id],bills.invoice_date, bills.invoice_number, bills.specification_page_name, trans.original_currency ,sum(USteuer_EUR) as UST_EUR, sum(original_vat_amount) as UST, inv.daId as daId FROM [VERAG].[dbo].[tblMSESettlements] as bills left join [VERAG].[dbo].[tblMSETransactions] as trans on bills.[transaction_id] = trans.[transaction_id] left join [VERAG].[dbo].[tblMSECustomers] as cust on cust.partner_customer_number = trans.partner_haulier_id left join [VERAG].[dbo].[tblMSEInvoices] as inv on inv.customer_number = cust.customer_id and bills.invoice_date = inv.invoice_date and inv.country = trans.transaction_country where bills.invoice_date Between '" & von & "' And '" & bis & "'and trans.charged = 1 and cust.[partner_customer_number] = " & KundenNr & " and trans.transaction_country = '" & LandKZ & "' and trans.original_currency = '" & Wahrungscode & "' AND isnull(UStVAn_ID,0) = " & IIf(Archiv IsNot Nothing AndAlso Archiv, 1, 0) & " - group by bills.invoice_date, bills.invoice_number, cust.[customer_id], bills.specification_page_name, trans.original_currency) as temp + group by bills.invoice_date, bills.invoice_number, cust.[customer_id], bills.specification_page_name, trans.original_currency, inv.daId) as temp where temp.UST <> 0", conn) cmd.Parameters.AddWithValue("@von", von)