FaktMail, MDM-Vollmachten, MDM-Auswertung

This commit is contained in:
2025-01-14 18:21:58 +01:00
parent 8616ce1735
commit 481ab094de
17 changed files with 989 additions and 147 deletions

View File

@@ -1861,6 +1861,43 @@ Public Class cFakturierung
desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - RECHNUNG.SteuerfreierGesamtbetrag), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S))
End If
Select Case FIRMA.Firma_ID
Case 21, 22, 23 '"UNISPED"
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
Case 26 'VERAG-UNISPED"
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
Case 24 'AMBAR"
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
desc.AddCreditorFinancialAccount("TR90 0006 2001 6040 0009 0804 66", "TGBATRISXXX",,, "Garanti Bank Türkei Euro Konto")
Case 20 '"IMEX"
If RECHNUNG.RechnungsLandKz = "TR" Then
desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "",,, "Garanti Bank")
Else
If hasVK(RECHNUNG) Then
desc.AddCreditorFinancialAccount("AT35 4480 0365 7822 0002", "VBOEATWWOOE",,, "Volksbank Oberösterreich AG")
Else
If hasEUSTZOLL(RECHNUNG.RechnungsNr) Then
desc.AddCreditorFinancialAccount("AT62 4480 0365 7822 0001", "VBOEATWWOOE", )
Else
desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "VBOEATWWOOE", ,, "Volksbank Oberösterreich AG")
End If
End If
End If
Case Else 'VERAG,ATILLA
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
End Select
Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RECHNUNG.RechnungsNr, ".xml", True, False)
Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write)
@@ -2073,6 +2110,47 @@ Public Class cFakturierung
desc.AddTradePaymentTerms(rpt.Label2.Text, zahlungszieldatum)
Select Case FIRMA.Firma_ID
Case 21, 22, 23 '"UNISPED"
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
Case 26 'VERAG-UNISPED"
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
Case 24 'AMBAR"
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
desc.AddCreditorFinancialAccount("TR90 0006 2001 6040 0009 0804 66", "TGBATRISXXX",,, "Garanti Bank Türkei Euro Konto")
Case 20 '"IMEX"
If RechnungsLandKz = "TR" Then
desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "",,, "Garanti Bank")
Else
If hasVK(RechnungsNr, ROW("Buchungsjahr")) Then
desc.AddCreditorFinancialAccount("AT35 4480 0365 7822 0002", "VBOEATWWOOE",,, "Volksbank Oberösterreich AG")
Else
If hasEUSTZOLL(RechnungsNr) Then
desc.AddCreditorFinancialAccount("AT62 4480 0365 7822 0001", "VBOEATWWOOE", )
Else
desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "VBOEATWWOOE", ,, "Volksbank Oberösterreich AG")
End If
End If
End If
Case Else 'VERAG,ATILLA
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1)
desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2)
End Select
Dim isReverseCharge = IIf(getReverseChargeSumme(FIRMA, ROW("RechnungsLandKz"), ROW("RechnungsNr"), ROW("RechnungsDatum"), "") > 0, True, False)
@@ -3603,7 +3681,7 @@ Public Class cFakturierung
Dim rpt As New rptSammelRechnungDruck(ROW("RechnungSprache"))
Dim firmaID = ROW("Firma_ID")
firmaID.ToString.Replace("15", "19")
'firmaID.ToString.Replace("15", "19")
Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(firmaID)
Dim KD_RG As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr"))
@@ -3688,6 +3766,7 @@ Public Class cFakturierung
Case 4 : rpt.picVERAG.Image = My.Resources.Verag_AG_Logo : rpt.Picture1.Image = Nothing
Case 7 : rpt.picVERAG.Image = My.Resources.Atilla_big_med : rpt.Picture1.Image = Nothing
Case 11 : rpt.picVERAG.Image = My.Resources.Verag_Customs_Service_GMBH_Logo : rpt.Picture1.Image = My.Resources.aeo_CS
Case 19 : rpt.picVERAG.Image = My.Resources.VERAG_360 : rpt.Picture1.Image = Nothing
Case 20 : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Picture1.Image = My.Resources.aeo_AT_imex
Case 21 : rpt.picVERAG.Image = My.Resources.Unisped_logo : rpt.Picture1.Image = My.Resources.unisped_aeo_AT
Case 22 : rpt.picVERAG.Image = My.Resources.Unisped_DE_logo : rpt.Picture1.Image = My.Resources.unisped_aeo_DE

View File

@@ -75,12 +75,13 @@ Partial Class frmFaktEmail
Me.cboPrinter = New VERAG_PROG_ALLGEMEIN.MyComboBox()
Me.cbxRgKopieDrucken = New System.Windows.Forms.CheckBox()
Me.dgvAnhaenge = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components)
Me.Label7 = New System.Windows.Forms.Label()
Me.optAnhSel = New System.Windows.Forms.DataGridViewCheckBoxColumn()
Me.DataGridViewTextBoxColumn3 = New System.Windows.Forms.DataGridViewTextBoxColumn()
Me.clmnBezeichnung = New System.Windows.Forms.DataGridViewTextBoxColumn()
Me.clmnDsId = New System.Windows.Forms.DataGridViewTextBoxColumn()
Me.clmnAnhId = New System.Windows.Forms.DataGridViewTextBoxColumn()
Me.Label7 = New System.Windows.Forms.Label()
Me.Button5 = New System.Windows.Forms.Button()
CType(Me.dgvEmailBCC, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.dgvEmailCC, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.dgvEmail, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -612,15 +613,6 @@ Partial Class frmFaktEmail
Me.dgvAnhaenge.TabIndex = 91
Me.dgvAnhaenge.TabStop = False
'
'Label7
'
Me.Label7.AutoSize = True
Me.Label7.Location = New System.Drawing.Point(8, 656)
Me.Label7.Name = "Label7"
Me.Label7.Size = New System.Drawing.Size(53, 13)
Me.Label7.TabIndex = 92
Me.Label7.Text = "Anhänge:"
'
'optAnhSel
'
Me.optAnhSel.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None
@@ -676,12 +668,33 @@ Partial Class frmFaktEmail
Me.clmnAnhId.Visible = False
Me.clmnAnhId.Width = 150
'
'Label7
'
Me.Label7.AutoSize = True
Me.Label7.Location = New System.Drawing.Point(8, 656)
Me.Label7.Name = "Label7"
Me.Label7.Size = New System.Drawing.Size(53, 13)
Me.Label7.TabIndex = 92
Me.Label7.Text = "Anhänge:"
'
'Button5
'
Me.Button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button5.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
Me.Button5.Location = New System.Drawing.Point(15, 281)
Me.Button5.Name = "Button5"
Me.Button5.Size = New System.Drawing.Size(46, 21)
Me.Button5.TabIndex = 93
Me.Button5.Text = "RO"
Me.Button5.UseVisualStyleBackColor = True
'
'frmFaktEmail
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.BackColor = System.Drawing.Color.WhiteSmoke
Me.ClientSize = New System.Drawing.Size(750, 850)
Me.Controls.Add(Me.Button5)
Me.Controls.Add(Me.Label7)
Me.Controls.Add(Me.dgvAnhaenge)
Me.Controls.Add(Me.cbxRgKopieDrucken)
@@ -785,4 +798,5 @@ Partial Class frmFaktEmail
Friend WithEvents clmnBezeichnung As DataGridViewTextBoxColumn
Friend WithEvents clmnDsId As DataGridViewTextBoxColumn
Friend WithEvents clmnAnhId As DataGridViewTextBoxColumn
Friend WithEvents Button5 As Button
End Class

View File

@@ -119,6 +119,12 @@ Public Class frmFaktEmail
cbxStbMitt.Enabled = True : cbxStbMitt.Checked = True
cbxVBD.Enabled = True : cbxVBD.Checked = True
cbxOriginalPrint.Visible = False
If SammelrechungArt = 6 Then
cbxMergePDF.Checked = False
cbxMergePDF.Enabled = False
Else
cbxMergePDF.Enabled = True
End If
Else
setMailText(RECHNUNG.RechnungsLandKz)
@@ -254,6 +260,7 @@ Public Class frmFaktEmail
Dim TextHTML = ""
If SammelrechungArt <> 6 Then
Select Case RechnungsLandKz
Case "TR"
txtSubject.Text = If(BelegartenNr = 71, "Kredi Nr. ", "Fatura Nr. ") & txtRgNr
@@ -271,6 +278,29 @@ Public Class frmFaktEmail
TextHTML &= TextHTMLADD
TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & ""
End Select
Else
Select Case RechnungsLandKz
Case "TR"
txtSubject.Text = If(BelegartenNr = 71, "Kredi Nr. ", "Fatura Nr. ") & txtRgNr
TextHTML = "Sayin yetkili," & vbNewLine & vbNewLine & "ekte baslikta yazan faturayi bulabilirsinz."
TextHTML &= TextHTMLADD
TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Saygilarimizla" & vbNewLine & vbNewLine & ""
Case "A", "AT", "D", "DE", "CH"
txtSubject.Text = If(BelegartenNr = 71, "Gutschrift Nr. ", "Rechnung Nr. ") & txtRgNr
TextHTML = "Sehr geehrte Damen und Herren" & vbNewLine & vbNewLine & "im Anhang senden wir Ihnen die o.g. " & If(BelegartenNr = 71, "Gutschrift(en).", "Rechnung(en).")
TextHTML &= TextHTMLADD
TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Mit freundlichen Grüßen" & vbNewLine & vbNewLine & ""
Case Else
txtSubject.Text = If(BelegartenNr = 71, "Credit No. ", "Invoice No. ") & txtRgNr
TextHTML = "Dear Sir or Madam," & vbNewLine & vbNewLine & "attached we send you the invoice mentioned above."
TextHTML &= TextHTMLADD
TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & ""
End Select
End If
RichTextBox.Text = TextHTML
@@ -880,11 +910,30 @@ Public Class frmFaktEmail
.Rows.Clear()
.Enabled = True
If SR Then
If SR AndAlso SammelrechungArt <> 6 Then
.Enabled = False
Exit Sub
End If
If SammelrechungArt = 6 AndAlso RECHNUNG Is Nothing Then
For Each r In SR_DT.Rows
Dim RG As New VERAG_PROG_ALLGEMEIN.cRechnungsausgang(r("RK_ID"))
If RG IsNot Nothing Then
RG.LOAD_ANHAENGE()
For Each RG_AH In RG.ANHAENGE
.Rows.Add(0, "", RG_AH.Bezeichnung, RG_AH.dsId, RG_AH.anhId)
Next
End If
Next
Else
RECHNUNG.LOAD_ANHAENGE()
If RECHNUNG IsNot Nothing AndAlso RECHNUNG.ANHAENGE IsNot Nothing Then
@@ -897,10 +946,13 @@ Public Class frmFaktEmail
'-----------------------------
End If
End If
End With
dgvAnhaenge.ClearSelection()
End Sub
End Class

View File

@@ -64,7 +64,7 @@ Public Class frmFaktSammelRgDrucken
Dim sqlStr = " SELECT Rechnungsausgang.RechnungsKundenNr, max(Rechnungsausgang.[RechnungsName 1]) as [RechnungsName 1]," & If(Sammelrechung = 7, "AvisoId", "0") & " as AvisoId,max(Rechnungsausgang.[RechnungsLandKz]) as [RechnungsLandKz] , count(*) as Anzahl, SUM(Rechnungsausgang.SteuerfreierGesamtbetrag + Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Summe" & If(Sammelrechung = 7, ",max([LKW Kennzeichen]) as LKW", "") & "
,(SELECT CASE WHEN Rechnungsdruck =0 THEN 'POST' WHEN Rechnungsdruck=1 THEN 'FAX' WHEN Rechnungsdruck=2 THEN 'E-MAIL' ELSE '-' END FROM Adressen WHERE AdressenNr=Rechnungsausgang.RechnungsKundenNr ) as Rechnungsdruck
FROM Rechnungsausgang
WHERE Rechnungsausgang.Status IN (0,2) And Rechnungsausgang.Firma_ID = '" & IIf(Sammelrechung = 6, "15", cboFirma._value) & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechung & "' And CONVERT(DATE,Rechnungsausgang.Abfertigungsdatum,104) <= '" & txtZeitraumBis._value & "'
WHERE Rechnungsausgang.Status IN (0,2) And Rechnungsausgang.Firma_ID = '" & cboFirma._value & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechung & "' And CONVERT(DATE,Rechnungsausgang.Abfertigungsdatum,104) <= '" & txtZeitraumBis._value & "'
" & If(Sammelrechung = 7 And cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "' ", "") & "
" & whereAbfArt & "
AND Rechnungsausgang.FakturierungsGruppe='" & cboFaktGrp._value & "'
@@ -285,7 +285,7 @@ Public Class frmFaktSammelRgDrucken
Dim listPDFs As New List(Of String)
Dim SonstAnlagen As New List(Of String)
Dim RechnungsNrisSet As Boolean = False
RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(IIf(Sammelrechung = 6, 15, cboFirma._value), Sammelrechung, CDate(txtZeitraumBis.Text), CDate(txtRechnungsdatum.Text), cboPrinter.Text, cbxEinzelAnlagen.Checked, cbxSammelbericht.Checked, getSelectionKdNr, If(ausgabeArt = 1, -1, 4), listPDFs, cboSB._value,,, getAvisoIds, cbxEVOLOG.Checked, SonstAnlagen, vorschau, cbxTransFerry.Checked, cboFaktGrp._value, cboAbfertigungsart._value)
RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(cboFirma._value, Sammelrechung, CDate(txtZeitraumBis.Text), CDate(txtRechnungsdatum.Text), cboPrinter.Text, cbxEinzelAnlagen.Checked, cbxSammelbericht.Checked, getSelectionKdNr, If(ausgabeArt = 1, -1, 4), listPDFs, cboSB._value,,, getAvisoIds, cbxEVOLOG.Checked, SonstAnlagen, vorschau, cbxTransFerry.Checked, cboFaktGrp._value, cboAbfertigungsart._value)
'-------------- für PDF-Sammel-Rechnung --------------

View File

@@ -2098,18 +2098,27 @@ Public Class FormularManagerNEU
Case "c_bic" : odoc.FormFields(fieldName).Range.Text = IIf(Not isKundeDE, FIRMA.Firma_BIC1.Replace("BIC:", ""), FIRMA_DE.Firma_BIC1.Replace("BIC:", ""))
Case "place_date" : odoc.FormFields(fieldName).Range.Text = IIf(usrCntl.cbxPrintDateAndCity.Checked, usrCntl.txtOrt.Text & ", " & IIf(IsDate(usrCntl.datDatum.Text), usrCntl.datDatum.Text, ""), "")
Case "bank" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_anschrift")), dtKundenBank.Rows(0).Item("bnk_anschrift"), "")
Case "iban" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_iban")), dtKundenBank.Rows(0).Item("bnk_iban"), "")
Case "bic" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_bic")), dtKundenBank.Rows(0).Item("bnk_bic"), "")
Case "name1" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1, usrCntl.txtFirma.Text, "")
End Select
Next
If dtKundenBank.Rows.Count > 0 Then
For Each item In odoc.FormFields
Dim fieldName = item.Name.ToLower().Trim()
Select Case fieldName
Case "bank" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_anschrift") AndAlso dtKundenBank.Rows(0).Item("bnk_anschrift") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_anschrift"), "")
Case "iban" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_iban") AndAlso dtKundenBank.Rows(0).Item("bnk_iban") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_iban"), "")
Case "bic" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_bic") AndAlso dtKundenBank.Rows(0).Item("bnk_bic") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_bic"), "")
Case "name1" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1, usrCntl.txtFirma.Text, "")
End Select
Next
End If
For Each s As Microsoft.Office.Interop.Word.Section In odoc.Sections
For Each header As Microsoft.Office.Interop.Word.HeaderFooter In s.Headers
For Each img_word As Microsoft.Office.Interop.Word.Shape In header.Shapes

View File

@@ -5,13 +5,13 @@ 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 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 org.BouncyCastle.Pqc.Crypto
Imports sun.swing
Imports VERAG_PROG_ALLGEMEIN
@@ -610,13 +610,13 @@ 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")
'USTV_POS.UStVPo_Umrechnungskurs = VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuroKurs(ANTRAG.plose_WaehrungAbbuchung, ANTRAG.plose_RechnungsDatum)
USTV_POS.UStVPo_USteuerbetragEUR = ANTRAG.plose_MWSTBetragWaehrungAbbuchung
USTV_POS.UStVPo_Umrechnungskurs = ANTRAG.plose_MWSTBetrag / ANTRAG.plose_MWSTBetragWaehrungAbbuchung
USTV_POS.UStVPo_USteuerbetrag = ANTRAG.plose_MWSTBetrag
' 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
@@ -642,12 +642,12 @@ Public Class frmMDM_USTVAntrag
End If
If (UST_org > 0 AndAlso UST_org <> UST_EUR) Then
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
If UST_org <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org
@@ -657,12 +657,15 @@ Public Class frmMDM_USTVAntrag
End If
USTV_POS.INSERT()
If USTV_POS.INSERT() Then
MDM_Worker.cPLOSE.UPDATE_ARCHIV(USTV_ANTRAG.UStVAn_ReDatVon, USTV_ANTRAG.UStVAn_ReDatBis, USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_ID, USTV_POS.UStVPo_ReNr, True)
End If
End If
Next
'Einträge als archivert setzen ' vormals wichtig
MDM_Worker.cPLOSE.UPDATE_ARCHIV(USTV_ANTRAG.UStVAn_ReDatVon, USTV_ANTRAG.UStVAn_ReDatBis, USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_ID)
'MDM_Worker.cPLOSE.UPDATE_ARCHIV(USTV_ANTRAG.UStVAn_ReDatVon, USTV_ANTRAG.UStVAn_ReDatBis, USTV_ANTRAG.UStVAn_KuNr, USTV_ANTRAG.UStVAn_ID)
End If
Return True
@@ -773,6 +776,7 @@ Public Class frmMDM_USTVAntrag
Shared Function loadUSTVFrom_RMC(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean
Try
Dim bytSchnittstellenNr = 7
Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID)
@@ -816,7 +820,7 @@ Public Class frmMDM_USTVAntrag
End If
If CDbl(r.Item("rmc_betragMWST")) > 0 Then
If CDbl(r.Item("rmc_betragMWST")) <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = Math.Round((r.Item("rmc_betragMWST") / umrechKurs), 2)
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = r.Item("rmc_betragMWST")
@@ -874,7 +878,7 @@ Public Class frmMDM_USTVAntrag
Dim UST_EUR = CDbl(r.Item("UST_EUR"))
Dim UST_org = CDbl(r.Item("UST"))
If (UST_EUR > 0 AndAlso UST_org > 0 AndAlso UST_org <> UST_EUR) Then
If (UST_EUR <> 0 AndAlso UST_org <> 0 AndAlso UST_org <> UST_EUR) Then
'umrechKurs = UST_org / UST_EUR
@@ -882,7 +886,7 @@ Public Class frmMDM_USTVAntrag
End If
If UST_org > 0 Then
If UST_org <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR 'Math.Round((UST_org / umrechKurs), 2)
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org
@@ -943,14 +947,14 @@ Public Class frmMDM_USTVAntrag
Dim UST_EUR = CDbl(r.Item("Umsatzsteuerbetrag_in_Darstellwährung")) 'ist immer EUR
If (UST_org > 0 AndAlso UST_org <> UST_EUR) Then
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
If UST_org <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org
@@ -1016,12 +1020,12 @@ Public Class frmMDM_USTVAntrag
UST_org = Math.Round(kurs.EXCHANGE_EURTOCUR(UST_EUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
End If
If (UST_org > 0 AndAlso UST_org <> UST_EUR) Then
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
If UST_org <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org
@@ -1311,7 +1315,7 @@ Public Class frmMDM_USTVAntrag
From [tblPLOSE_Details] INNER Join Adressen On PLOSEKundenNr=plose_POLSEKundennummer
INNER Join [tblPLOSE_Produktbeschreibung] ON [plp_ProductCode]=[plose_ProduktCode]
WHERE cast(plose_RechnungsDatum As Date) = '" & UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_ReDat & "' And AdressenNr=" & USTV_ANTRAG.UStVAn_KuNr & " AND plose_RechnungsNr = '" & UstCntlUSTV_AntragPosition1.UStV_POS.UStVPo_ReNr & "'
And plose_LieferantCode IN (0,1,7) "
And plose_LieferantCode IN (0,1,7,9) "
If Not test Then updated = SQL.doSQL(sqlText, "FMZOLL")
@@ -1521,11 +1525,11 @@ Public Class frmMDM_USTVAntrag
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 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))
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
@@ -1536,7 +1540,7 @@ Public Class frmMDM_USTVAntrag
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
Dim impPage As itextsharp.text.pdf.PdfImportedPage = Nothing
If (currentpagetext.Contains(searchtext)) Then
@@ -1549,7 +1553,7 @@ Public Class frmMDM_USTVAntrag
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)))
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

View File

@@ -133,7 +133,7 @@ Public Class frmUSTVoffeneAntraege
Dim sqlwhere = ""
If kdnr > 0 Then
sqlwhere &= " and rmc_kdNr = " & kdnr
sqlwhere &= " and Adressen.AdressenNr = " & kdnr
End If
@@ -142,6 +142,7 @@ Public Class frmUSTVoffeneAntraege
'Exit Sub
'MsgBox(.sql)
Dim sqlstring = "Select " & top & " [rmc_kdNr], [rmc_kdName], [rmc_landKZ], [rmc_reDatum], [rmc_reNr], [rmc_waehrung], [rmc_betragMWST],rmc_daid as daId FROM [tblRMCImport]
INNER JOIN Adressen on WölflKundenNr=[rmc_kdNr]
where cast(rmc_reDatum As Date) between '" & dat_Sum_Von.Value & "' And '" & dat_Sum_Bis.Value & "' And rmc_archiv <> 1 " & sqlwhere &
"group by rmc_reDatum, rmc_kdNr,[rmc_kdName], [rmc_landKZ],[rmc_reNr], [rmc_waehrung], [rmc_betragMWST], rmc_daid having [rmc_betragMWST] <> 0"
@@ -477,7 +478,7 @@ End With
sqlwhereIDS &= " and AdressenNr = " & kdnr 'sqlwhereIDS &= " and tblIDSTransactionsNew.KdNrVERAG = " & kdnr
sqlwhereUTA &= " and AdressenNr = " & kdnr
sqlwhereVERAG &= " and AdressenNr = " & kdnr
sqlwhereRMC &= " and rmc_kdNr = " & kdnr
sqlwhereRMC &= " and Adressen.AdressenNr = " & kdnr
sqlwhereMSE &= " and partner_customer_number = " & kdnr
End If
@@ -522,7 +523,7 @@ End With
Select " & top & "
'RMC' as Lieferant,
[rmc_kdNr] as KdNr,
Adressen.AdressenNr as KdNr,
Adressen.[Name 1] as Kundenname,
Adressen.LandKz as Kundenland,
[rmc_landKZ] as Einreichland,
@@ -532,7 +533,7 @@ End With
INNER JOIN Adressen on WölflKundenNr= [rmc_kdNr]
where cast(rmc_reDatum As Date) between '" & dat_Sum_Von.Value & "' And '" & dat_Sum_Bis.Value & "'
And UStVAn_ID is null " & sqlwhereRMC & "
group by rmc_reDatum, rmc_kdNr,Adressen.[Name 1],Adressen.LandKz, [rmc_landKZ],[rmc_reNr], [rmc_betragMWST]
group by Adressen.AdressenNr,Adressen.[Name 1],Adressen.LandKz, [rmc_landKZ],[rmc_reNr], rmc_reDatum, [rmc_betragMWST]
having [rmc_betragMWST] <> 0
UNION ALL

View File

@@ -1,14 +1,8 @@
Imports System.Data.OleDb
Imports System.IO
Imports Challenge
Imports com.sun.org.glassfish.external.probe.provider.annotations
Imports GrapeCity.ActiveReports.Export.Pdf.Section.Signing
Imports itextsharp.text.pdf
Imports MDM_Worker
Imports sun.swing
Imports TAlex.WPF.Helpers
Imports VERAG_PROG_ALLGEMEIN
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
Public Class frmMDMDatenverarbetiung
@@ -3180,7 +3174,7 @@ Public Class frmMDMDatenverarbetiung
End Select
Dim GJ = Now.Year
If IsDate(abrechnugsdatum) Then GJ = cRKSV.getGJ(abrechnugsdatum, 15)
If IsDate(abrechnugsdatum) Then GJ = cRKSV.getGJ(abrechnugsdatum, 19)
SPEDBUCH.AbfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(SPEDBUCH.FilialenNr, GJ)
SPEDBUCH.NewUNTER_NR()
@@ -3366,7 +3360,7 @@ Public Class frmMDMDatenverarbetiung
'End Function
Function gen_RECHNUNG_BySPEDBUCH(KdNr As String, SPEDBUCH As VERAG_PROG_ALLGEMEIN.cSpeditionsbuch, Lieferant As String, Optional PLOSEKundenNr As String = "", Optional von As Date = Nothing, Optional bis As Date = Nothing, Optional RE As cRechnungsausgang = Nothing)
Function gen_RECHNUNG_BySPEDBUCH(KdNr As String, SPEDBUCH As VERAG_PROG_ALLGEMEIN.cSpeditionsbuch, Lieferant As String, Optional PLOSEKundenNr As String = "", Optional von As Date = Nothing, Optional bis As Date = Nothing, Optional ByRef RE As cRechnungsausgang = Nothing)
Try
If KdNr = "" Then Return False
@@ -3388,6 +3382,8 @@ Public Class frmMDMDatenverarbetiung
End Select
RG.Firma_ID = 19 'RG.Firma_ID = 15
RG.FilialenNr = SPEDBUCH.FilialenNr
RG.AbfertigungsNr = SPEDBUCH.AbfertigungsNr
RG.SpeditionsbuchUnterNr = SPEDBUCH.UnterNr
@@ -3432,18 +3428,16 @@ Public Class frmMDMDatenverarbetiung
RG.Kreditaufwendungen_Proz = KD.Kreditaufwendungen
RG.RechnungSprache = "DE"
RG.Anlage_2 = ""
RG.Anlage_3 = ""
RG.Anlage_4 = ""
RG.Anlage_5 = ""
RG.Anlage_6 = ""
RG.Text = ""
RG.EMailRechnungstext = Nothing ' ""
RG.Firma_ID = 15
RG.Nettozahlungsziel = KD.Zahlungsziel
RG.SteuerpflichtigerGesamtbetrag = 0
@@ -3452,14 +3446,14 @@ Public Class frmMDMDatenverarbetiung
RG.[Vorkosten] = 0
RG.[Erlös] = 0
RG.[Buchungsjahr] = 0
'RG.[Buchungsjahr] = 0
RG.[Währungscode] = "EUR"
RG.ReErfZeitstempel = Now
RG.Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
RG.Buchungsjahr = cRKSV.getGJ(RG.RechnungsDatum, RG.Firma_ID)
'RG.Buchungsjahr = cRKSV.getGJ(RG.RechnungsDatum, RG.Firma_ID)
Dim sqlstr As String = ""
Dim useNettogesamtbetrag As Boolean = False
@@ -4089,7 +4083,6 @@ Public Class frmMDMDatenverarbetiung
MsgBox("Es sind " & nichtAufAbgerechnetGesetzteTransactionen & " Transaktionen in der Datenbank, die noch nicht auf VERRECHNET gesetzt sind!" & vbNewLine & "Diese Transaktionen (von Rechnung " & DateTimePicker2.Text & ") müssen aktualisiert werden. (bitte an Administrator wenden)." & IIf(hint <> "", vbNewLine & hint, ""))
End If
'das muss die letzte Prüfung sein, da uU eine Transaktion fehlen kann!
Dim fehlendeTransactionen As Integer = 0
@@ -4098,10 +4091,10 @@ Public Class frmMDMDatenverarbetiung
If fehlendeTransactionen > 0 Then
pruefData_MSE = False
Dim hint As String = ""
If fehlendeTransactionen > 500 Then
hint = "Batch-Nr: "
hint &= SQL.getValueTxtBySql("select distinct(trans.batch_seq_nr) FROM [VERAG].[dbo].[tblMSESettlements] as settle INNER JOIN [VERAG].[dbo].[tblMSETransactions] as trans on trans.transaction_id = settle.transaction_id where [invoice_date] = '" & DateTimePicker2.Text & "' AND trans.[transaction_id] not in (select [transaction_id] from [VERAG].[dbo].[tblMSETransactions]) ", "FMZOLL")
End If
'If fehlendeTransactionen > 500 Then
' hint = "Transaction-IDs: "
' hint &= SQL.getValueTxtBySql("select top(10) transaction_id FROM [VERAG].[dbo].[tblMSESettlements] where [invoice_date] = '" & DateTimePicker2.Text & "' AND [transaction_id] not in (select [transaction_id] from [VERAG].[dbo].[tblMSETransactions]) ", "FMZOLL")
'End If
MsgBox("Es fehlen " & fehlendeTransactionen & " Transaktionen in der Datenbank!" & vbNewLine & "Diese Transaktionen (von Rechnung " & DateTimePicker2.Text & ") müssen nachgeladen werden (bitte an Administrator wenden)." & IIf(hint <> "", vbNewLine & hint, ""))
End If
@@ -4154,8 +4147,6 @@ Public Class frmMDMDatenverarbetiung
Return False
End If
End If
Dim OBONumberOderVRNumberfehlern As Integer = 0
@@ -4854,7 +4845,7 @@ RabattBerechnen:
ANH.dsId = CInt(DS.da_id)
ANH.Bezeichnung = DS.da_name
RECHNUNG.ANHAENGE.Add(ANH)
Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID)
Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False)
Else
Return False
End If

View File

@@ -131,8 +131,19 @@ Partial Class usrCntlMDMAuswertungen
Me.Label59 = New System.Windows.Forms.Label()
Me.Button17 = New System.Windows.Forms.Button()
Me.TabPage2 = New System.Windows.Forms.TabPage()
Me.Label61 = New System.Windows.Forms.Label()
Me.GroupBox19 = New System.Windows.Forms.GroupBox()
Me.Label62 = New System.Windows.Forms.Label()
Me.Button18 = New System.Windows.Forms.Button()
Me.Label44 = New System.Windows.Forms.Label()
Me.GroupBox13 = New System.Windows.Forms.GroupBox()
Me.cboSachbearbeiter = New VERAG_PROG_ALLGEMEIN.MyComboBox()
Me.Label67 = New System.Windows.Forms.Label()
Me.dtRechnungsdatum = New System.Windows.Forms.DateTimePicker()
Me.Label66 = New System.Windows.Forms.Label()
Me.Label65 = New System.Windows.Forms.Label()
Me.Label64 = New System.Windows.Forms.Label()
Me.Label63 = New System.Windows.Forms.Label()
Me.Label45 = New System.Windows.Forms.Label()
Me.Button14 = New System.Windows.Forms.Button()
Me.Label35 = New System.Windows.Forms.Label()
@@ -203,6 +214,7 @@ Partial Class usrCntlMDMAuswertungen
Me.tbIDS.SuspendLayout()
Me.GroupBox18.SuspendLayout()
Me.TabPage2.SuspendLayout()
Me.GroupBox19.SuspendLayout()
Me.GroupBox13.SuspendLayout()
Me.GroupBox10.SuspendLayout()
Me.tbPLOSE.SuspendLayout()
@@ -1431,6 +1443,8 @@ Partial Class usrCntlMDMAuswertungen
'
'TabPage2
'
Me.TabPage2.Controls.Add(Me.Label61)
Me.TabPage2.Controls.Add(Me.GroupBox19)
Me.TabPage2.Controls.Add(Me.Label44)
Me.TabPage2.Controls.Add(Me.GroupBox13)
Me.TabPage2.Controls.Add(Me.Label35)
@@ -1443,6 +1457,47 @@ Partial Class usrCntlMDMAuswertungen
Me.TabPage2.Text = "Organisation"
Me.TabPage2.UseVisualStyleBackColor = True
'
'Label61
'
Me.Label61.AutoSize = True
Me.Label61.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label61.ForeColor = System.Drawing.SystemColors.ControlDarkDark
Me.Label61.Location = New System.Drawing.Point(21, 329)
Me.Label61.Name = "Label61"
Me.Label61.Size = New System.Drawing.Size(310, 17)
Me.Label61.TabIndex = 13
Me.Label61.Text = "MDM Sammelabrechnung - Mautberichte"
'
'GroupBox19
'
Me.GroupBox19.Controls.Add(Me.Label62)
Me.GroupBox19.Controls.Add(Me.Button18)
Me.GroupBox19.Location = New System.Drawing.Point(20, 340)
Me.GroupBox19.Name = "GroupBox19"
Me.GroupBox19.Size = New System.Drawing.Size(697, 82)
Me.GroupBox19.TabIndex = 12
Me.GroupBox19.TabStop = False
'
'Label62
'
Me.Label62.AutoSize = True
Me.Label62.Location = New System.Drawing.Point(144, 19)
Me.Label62.Name = "Label62"
Me.Label62.Size = New System.Drawing.Size(181, 13)
Me.Label62.TabIndex = 5
Me.Label62.Text = "Mautsummenberichte (als CSV, PDF)"
'
'Button18
'
Me.Button18.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button18.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
Me.Button18.Location = New System.Drawing.Point(6, 19)
Me.Button18.Name = "Button18"
Me.Button18.Size = New System.Drawing.Size(121, 46)
Me.Button18.TabIndex = 4
Me.Button18.Text = "Mautbericht"
Me.Button18.UseVisualStyleBackColor = True
'
'Label44
'
Me.Label44.AutoSize = True
@@ -1450,35 +1505,103 @@ Partial Class usrCntlMDMAuswertungen
Me.Label44.ForeColor = System.Drawing.SystemColors.ControlDarkDark
Me.Label44.Location = New System.Drawing.Point(19, 143)
Me.Label44.Name = "Label44"
Me.Label44.Size = New System.Drawing.Size(408, 17)
Me.Label44.Size = New System.Drawing.Size(436, 17)
Me.Label44.TabIndex = 11
Me.Label44.Text = "MDM Sammelabrechnung - Sachbearbeiter = Kriegner"
Me.Label44.Text = "MDM Sammelabrechnung - MDM Sammelrechnung (Art=6)"
'
'GroupBox13
'
Me.GroupBox13.Controls.Add(Me.cboSachbearbeiter)
Me.GroupBox13.Controls.Add(Me.Label67)
Me.GroupBox13.Controls.Add(Me.dtRechnungsdatum)
Me.GroupBox13.Controls.Add(Me.Label66)
Me.GroupBox13.Controls.Add(Me.Label65)
Me.GroupBox13.Controls.Add(Me.Label64)
Me.GroupBox13.Controls.Add(Me.Label63)
Me.GroupBox13.Controls.Add(Me.Label45)
Me.GroupBox13.Controls.Add(Me.Button14)
Me.GroupBox13.Location = New System.Drawing.Point(18, 154)
Me.GroupBox13.Name = "GroupBox13"
Me.GroupBox13.Size = New System.Drawing.Size(697, 82)
Me.GroupBox13.Size = New System.Drawing.Size(697, 153)
Me.GroupBox13.TabIndex = 10
Me.GroupBox13.TabStop = False
'
'cboSachbearbeiter
'
Me.cboSachbearbeiter._allowedValuesFreiText = Nothing
Me.cboSachbearbeiter._allowFreiText = False
Me.cboSachbearbeiter._value = ""
Me.cboSachbearbeiter.FormattingEnabled = True
Me.cboSachbearbeiter.Location = New System.Drawing.Point(385, 18)
Me.cboSachbearbeiter.Name = "cboSachbearbeiter"
Me.cboSachbearbeiter.Size = New System.Drawing.Size(152, 21)
Me.cboSachbearbeiter.TabIndex = 29
'
'Label67
'
Me.Label67.AutoSize = True
Me.Label67.Location = New System.Drawing.Point(297, 26)
Me.Label67.Name = "Label67"
Me.Label67.Size = New System.Drawing.Size(82, 13)
Me.Label67.TabIndex = 28
Me.Label67.Text = "Sachbearbeiter:"
'
'dtRechnungsdatum
'
Me.dtRechnungsdatum.Format = System.Windows.Forms.DateTimePickerFormat.[Short]
Me.dtRechnungsdatum.Location = New System.Drawing.Point(147, 19)
Me.dtRechnungsdatum.Name = "dtRechnungsdatum"
Me.dtRechnungsdatum.Size = New System.Drawing.Size(103, 20)
Me.dtRechnungsdatum.TabIndex = 26
'
'Label66
'
Me.Label66.AutoSize = True
Me.Label66.Location = New System.Drawing.Point(6, 25)
Me.Label66.Name = "Label66"
Me.Label66.Size = New System.Drawing.Size(94, 13)
Me.Label66.TabIndex = 27
Me.Label66.Text = "Rechnungsdatum:"
'
'Label65
'
Me.Label65.Location = New System.Drawing.Point(144, 110)
Me.Label65.Name = "Label65"
Me.Label65.Size = New System.Drawing.Size(541, 17)
Me.Label65.TabIndex = 8
Me.Label65.Text = "4. Porto/Papiere und Banküberweisung/Bankspesen berechnen"
'
'Label64
'
Me.Label64.Location = New System.Drawing.Point(144, 93)
Me.Label64.Name = "Label64"
Me.Label64.Size = New System.Drawing.Size(541, 17)
Me.Label64.TabIndex = 7
Me.Label64.Text = "3. Rechnungstext im RK eintragen"
'
'Label63
'
Me.Label63.Location = New System.Drawing.Point(144, 78)
Me.Label63.Name = "Label63"
Me.Label63.Size = New System.Drawing.Size(541, 17)
Me.Label63.TabIndex = 6
Me.Label63.Text = "2. Rechnung oder Gutschrift im RK eintragen, abhängig vom Sammelrechnungsbetrag (" &
"+/-)"
'
'Label45
'
Me.Label45.AutoSize = True
Me.Label45.Location = New System.Drawing.Point(144, 19)
Me.Label45.Location = New System.Drawing.Point(144, 61)
Me.Label45.Name = "Label45"
Me.Label45.Size = New System.Drawing.Size(407, 26)
Me.Label45.Size = New System.Drawing.Size(541, 17)
Me.Label45.TabIndex = 5
Me.Label45.Text = "Bei MDM Sammelrechnung (Art=6) werden alle Einträge auf ""KRIEGNER"" geändert, " & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "da" &
"mit die FMZOLL Abrechnung die entsprechnde Zuweisung findet." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10)
Me.Label45.Text = "1. Einträge auf Sachbearbeiter ändern, damit die FMZOLL Abrechnung die entsprechn" &
"de Zuweisung findet." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10)
'
'Button14
'
Me.Button14.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button14.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer))
Me.Button14.Location = New System.Drawing.Point(6, 19)
Me.Button14.Location = New System.Drawing.Point(9, 60)
Me.Button14.Name = "Button14"
Me.Button14.Size = New System.Drawing.Size(121, 49)
Me.Button14.TabIndex = 4
@@ -2023,6 +2146,8 @@ Partial Class usrCntlMDMAuswertungen
Me.GroupBox18.PerformLayout()
Me.TabPage2.ResumeLayout(False)
Me.TabPage2.PerformLayout()
Me.GroupBox19.ResumeLayout(False)
Me.GroupBox19.PerformLayout()
Me.GroupBox13.ResumeLayout(False)
Me.GroupBox13.PerformLayout()
Me.GroupBox10.ResumeLayout(False)
@@ -2208,4 +2333,15 @@ Partial Class usrCntlMDMAuswertungen
Friend WithEvents TextBox2 As TextBox
Friend WithEvents Label59 As Label
Friend WithEvents Button17 As Button
Friend WithEvents Label61 As Label
Friend WithEvents GroupBox19 As GroupBox
Friend WithEvents Label62 As Label
Friend WithEvents Button18 As Button
Friend WithEvents Label63 As Label
Friend WithEvents Label64 As Label
Friend WithEvents Label65 As Label
Friend WithEvents dtRechnungsdatum As DateTimePicker
Friend WithEvents Label66 As Label
Friend WithEvents Label67 As Label
Friend WithEvents cboSachbearbeiter As VERAG_PROG_ALLGEMEIN.MyComboBox
End Class

View File

@@ -1,13 +1,9 @@
Imports Microsoft.Office.Interop.Outlook
Imports Microsoft.Office.Interop
Imports Microsoft.VisualBasic.FileIO
Imports System.Data.SqlClient
Imports System.Reflection
Imports VERAG_PROG_ALLGEMEIN
Imports System.Security.Cryptography.Xml
Imports System.Data.SqlClient
Imports System.IO
Imports Tamir.SharpSsh.jsch
Imports sun.swing
Imports Microsoft.Office.Interop.Outlook
Imports Microsoft.VisualBasic.FileIO
Imports VERAG_PROG_ALLGEMEIN
Public Class usrCntlMDMAuswertungen
@@ -62,6 +58,8 @@ Public Class usrCntlMDMAuswertungen
cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Leistungsdatum", "LDat"))
cboIDSDateType.changeItem("RGDat")
cboSachbearbeiter.fillWithSQL("select distinct(sachbearbeiter) from Rechnungsausgang where Sammelrechnung=6 and Firma_ID=19", False, "FMZOLL", True)
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Auswertungen_IDS", Me.FindForm) Then
tbcntr.TabPages.Remove(tbIDS)
End If
@@ -974,9 +972,549 @@ Public Class usrCntlMDMAuswertungen
Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
If SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='KRIEGNER' where Sammelrechnung=6 and Firma_ID=19 and Sachbearbeiter<>'KRIEGNER' and Abfertigungsdatum> DATEADD(month,-3, GETDATE())", "FMZOLL") Then
MsgBox("Update erfolgreich.")
Dim ok As Boolean = True
Dim Sachbearbeiter = cboSachbearbeiter._value
Dim varText As String = ""
Dim varNettozahlungsziel As Integer = 0
Dim strFälligkeitsdatum As String
Dim strZahlbar As String
Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text)
If rechnungsdatum > Today() Then
MsgBox("Rechnungsdatum liegt in der Zukunft, nicht möglich")
Exit Sub
End If
If Sachbearbeiter = "" Then
MsgBox("Sachbearbeiter auswählen!")
Exit Sub
End If
'---------------DONE
' ' Sachbearbeiter im RK eintragen.
'140 Call SysCmd(acSysCmdSetStatus, "Sachbearbeiter im RK eintragen...")
'150 Call ReDruSchnSachbearbeiter
'Update [Rechnungsausgang] SET [Sachbearbeiter] = @Sachbearbeiter WHERE([Firma_ID] = 1 Or [Firma_ID] = 15) And [Status] = 0 And [Sammelrechnung] = 6 And [Sachbearbeiter] <> @Sachbearbeiter And (SteuerpflichtigerGesamtbetrag <> 0 Or SteuerfreierGesamtbetrag <> 0);
'---------------DONE
' ' Firma_ID im RK eintragen.
'180 Call SysCmd(acSysCmdSetStatus, "Firma_ID im RK eintragen...")
'190 Call ReDruSchnFirma_ID
'Update [Rechnungsausgang] SET [Firma_ID] = @Firma_ID WHERE [Firma_ID] <> @Firma_ID And [Status] = 0 And [Sammelrechnung] = 6 And [Sachbearbeiter] = @Sachbearbeiter And (SteuerpflichtigerGesamtbetrag <> 0 Or SteuerfreierGesamtbetrag <> 0);
' ' Rechnung oder Gutschrift im RK eintragen.
'220 Call SysCmd(acSysCmdSetStatus, "Re/Gu im RK eintragen...")
'230 Call ReDruSumReGu
'---------------DONE
' ' Rechnungstext im RK eintragen.
'260 Call SysCmd(acSysCmdSetStatus, "Text im RK eintragen...")
'270 Call Rechnungstext
'---------------DONE
' ' Porto/Papiere berechnen.
'300 Call SysCmd(acSysCmdSetStatus, "Porto/Papiere berechnen...")
'310 Call ReDruSchnPP
'---------------DONE
' ' Banküberweisung/Bankspesen berechnen
'340 Call SysCmd(acSysCmdSetStatus, "Banküberweisung/Bankspesen berechnen...")
'350 Call ReDruSchnBB
' ' Druckinformationen im RK eintragen----- ALTER..........
'380 Call SysCmd(acSysCmdSetStatus, "Druckinformationen im RK eintragen...")
'390 varDatumZeit = Now 'Druckdatum/Uhrzeit merken.
' ' Parameter übergeben: Firma_ID, Status, Sammelrechnung, Sachbearbeiter, Buchungsjahr, Rechnungsdatum, DruckDatumZeit.
'400 strParameter = ParameterBereitstellen(Me![Firma_ID], 0, 6, Me![fldSachbearbeiter], Year(Me!fldRechnungsDatum), Me![fldRechnungsDatum], varDatumZeit)
'410 Set qdf = dbs.CreateQueryDef("")
ok = SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='" & Sachbearbeiter & "' where Sammelrechnung=6 and Firma_ID=19 and Sachbearbeiter<>'" & Sachbearbeiter & "' and Abfertigungsdatum = '" & dtRechnungsdatum.Value & "'", "FMZOLL")
Exit Sub
If Not ok Then MsgBox("Fehler") : Exit Sub
Dim dtREGU As DataTable = SQL.loadDgvBySql("SELECT [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, Sum([SteuerpflichtigerGesamtbetrag]+[SteuerfreierGesamtbetrag]) AS Sammelrechnungsbetrag
FROM Rechnungsausgang
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND [Sachbearbeiter] = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
GROUP BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift]", "FMZOLL")
'RECHNUNG ODER GUTSCHRIFT
If dtREGU.Rows.Count > 0 Then
For Each r In dtREGU.Rows
Dim BelegartenNr As Integer
Dim BelegartenKz As String
Dim BelegartenBez As String
Dim Vorzeichen As String
If r("Sammelrechnungsbetrag") >= 0 Then
BelegartenNr = 70
BelegartenKz = "AR"
BelegartenBez = "Rechnung"
Vorzeichen = "+"
Else
BelegartenNr = 71
BelegartenKz = "AG"
BelegartenBez = "Gutschrift"
Vorzeichen = "-"
End If
Dim steuersatz As Double = Math.Floor(r("Steuersatz %"))
ok = SQL.doSQL("UPDATE [Rechnungsausgang] SET [BelegartenNr] = " & BelegartenNr & ", [BelegartenKz] = '" & BelegartenKz & "' , [BelegartenBez] = '" & BelegartenBez & "' , [Vorzeichen] = '" & Vorzeichen & "'
WHERE [Firma_ID] = 19 AND [Status] = 0 AND [Sammelrechnung] = 6 AND [Sachbearbeiter] = '" & Sachbearbeiter & "' AND [RechnungsKundenNr] = " & r("RechnungsKundenNr") & " AND [Währungscode] = '" & r("Währungscode") & "' AND [Steuersatz %] = " & steuersatz & " AND [Lastschrift] = " & IIf(r("Lastschrift"), 1, 0) & "AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'", "FMZOLL")
If Not ok Then MsgBox("Rechnungsdruck wird abgebrochen." & vbCrLf & "Rechnungen/Gutschriften nicht gefunden.") : Exit Sub
Next
End If
Dim dtReText As DataTable = SQL.loadDgvBySql("SELECT [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, [RK_ID], [BelegartenNr],cast([Vorkasse] as bit) as Vorkasse, [Nettozahlungsziel], [OffertenNr], [RechnungsLandKz], [Text]
FROM Rechnungsausgang
WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND [Sachbearbeiter] = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]", "FMZOLL")
'Rechnungstext im RK eintragen
If dtReText.Rows.Count > 0 Then
For Each r In dtReText.Rows
Select Case r("BelegartenNr")
Case 70 'RECHNUNG
If Not r("Vorkasse") Then
If r("Lastschrift") Then
varText = varText & "Der Rechnungsbetrag wurde durch erteilten Abbuchungsauftrag eingezogen." & vbCrLf
Else
If Not IsDBNull(r("RechnungsKundenNr")) Then
'Zahlungsziel aus Kundenstamm.
Dim ZZ = SQL.getValueTxtBySql("SELECT Kunden.Zahlungsziel from Kunden WHERE Kunden.KundenNr=" & r("RechnungsKundenNr") & " AND Kunden.Zahlungsziel Is Not Null", "FMZOLL")
If ZZ <> "" AndAlso IsNumeric(ZZ) Then
varNettozahlungsziel = ZZ
strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy")
End If
End If
'Zahlungsziel aus Offertenstamm.
If strFälligkeitsdatum = "" Then
If Not IsDBNull(r("OffertenNr")) Then
Dim ZZOffert = SQL.getValueTxtBySql("SELECT Offertenstamm.Zahlungsziel FROM Offertenstamm WHERE Offertenstamm.OffertenNr = " & r("OffertenNr") & " AND Offertenstamm.Zahlungsziel IS NOT NULL", "FMZOLL")
If ZZOffert <> "" AndAlso IsNumeric(ZZOffert) Then
varNettozahlungsziel = ZZOffert
strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy")
End If
End If
End If
'Zahlungsziel ermitteln.
If strFälligkeitsdatum = "" Then
If Not IsDBNull(r("RK_ID")) Then
'Zahlungsziel bei Kreditaufwendungen.
Dim ZZRKID = SQL.getValueTxtBySql("Select Case [Preis], [Anzahl] From [RechnungsausgangPositionen] Where [RK_ID] = " & r("RK_ID") & " And [LeistungsNr] = 750 And [BerechnungsartNr] = 9", "FMZOLL")
If ZZRKID <> "" Then
strZahlbar = "Zahlbar innerhalb 10 Tagen abzüglich Pos. 750; ab 10 Tagen netto fällig."
Else
varNettozahlungsziel = 25
strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy")
End If
End If
End If
'Fälligkeitstext in Landessprache
If strFälligkeitsdatum <> "" Then strZahlbar = "Rechnung zahlbar spätestens bis " & strFälligkeitsdatum & "!"
If Not IsDBNull(r("RechnungsLandKz")) Then
Dim ZZRLandKZ = SQL.getValueTxtBySql("SELECT tblZahlungszieltexte.Text FROM tblZahlungszieltexte WHERE tblZahlungszieltexte.LandKz='" & r("RechnungsLandKz") & "' AND tblZahlungszieltexte.Text Is Not Null", "FMZOLL")
If ZZRLandKZ <> "" Then
strZahlbar = ZZRLandKZ & " " & strFälligkeitsdatum & "!"
End If
End If
varText &= strZahlbar & vbCrLf
End If
End If
' Text bei Zoll oder EUSt drucken
Dim Zoll = SQL.getValueTxtBySql("Select LeistungsNr From dbo.RechnungsausgangPositionen Where RK_ID = " & r("RK_ID") & " And LeistungsNr In (10, 60, 70)", "FMZOLL")
If Not IsDBNull(Zoll) AndAlso Zoll <> "" Then
varText = varText & "Alle Zollbelege bitte sofort auf Richtigkeit prüfen da Einspruch gemäß § 355 AO nur 1 Monat nach Datum des Zollbescheides möglich." & vbCrLf
End If
Case 71 'GUTSCHRIFT
If r("Lastschrift") Then
varText = varText & "Der Gutschriftsbetrag wurde mit erteilten Abbuchungsauftrag verrechnet." & vbCrLf
End If
End Select
ok = SQL.doSQL("Update [Rechnungsausgang] Set [Text] = '" & varText & "', [Nettozahlungsziel] = " & varNettozahlungsziel & " WHERE [RK_ID] = " & r("RK_ID"), "FMZOLL")
If Not ok Then MsgBox("Fehler") : Exit Sub
varText = ""
varNettozahlungsziel = 0
strFälligkeitsdatum = ""
Next
End If
' Die Abfrage ermittelt aus den Rechnungspositonen,
' das Vorkommen (Anzahl Porto/Papiere) pro RechnungsKundenNr
' Status=0, Sammelrechnung=6, LeistungsNr=440.
Dim sqlString = "SELECT
Rechnungsausgang.Firma_ID,
Rechnungsausgang.Status,
Rechnungsausgang.Sammelrechnung,
Rechnungsausgang.Sachbearbeiter,
Rechnungsausgang.RechnungsKundenNr,
Rechnungsausgang.BelegartenNr,
Rechnungsausgang.Währungscode,
isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %],
cast(Rechnungsausgang.Lastschrift as bit) as Lastschrift,
SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) AS AnzahlPP,
SUM(CASE WHEN LeistungsNr = 440 THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivPP
FROM
Rechnungsausgang
INNER JOIN
RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID
WHERE
Rechnungsausgang.Status = 0
AND Rechnungsausgang.Sammelrechnung = 6
AND Rechnungsausgang.Sachbearbeiter = '" & Sachbearbeiter & "'
AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
GROUP BY
Rechnungsausgang.Firma_ID,
Rechnungsausgang.Status,
Rechnungsausgang.Sammelrechnung,
Rechnungsausgang.Sachbearbeiter,
Rechnungsausgang.RechnungsKundenNr,
Rechnungsausgang.BelegartenNr,
Rechnungsausgang.Währungscode,
Rechnungsausgang.[Steuersatz %],
Rechnungsausgang.Lastschrift
HAVING
SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) > 0
ORDER BY
Rechnungsausgang.Firma_ID,
Rechnungsausgang.Status,
Rechnungsausgang.Sammelrechnung,
Rechnungsausgang.Sachbearbeiter,
Rechnungsausgang.RechnungsKundenNr,
Rechnungsausgang.BelegartenNr,
Rechnungsausgang.Währungscode,
Rechnungsausgang.[Steuersatz %],
Rechnungsausgang.Lastschrift"
Dim dtPP As DataTable = SQL.loadDgvBySql(sqlString, "FMZOLL")
If dtPP.Rows.Count > 0 Then
For Each r In dtPP.Rows
Dim intZlr As Integer = 0
' Bei BetragExclusivPP kleiner als 150€ wird 1x P.P. verrechnet, bei grösser/gleich 150€ wird kein P.P. verrechnet.
' Zähler auf die Anzahl der P.P. Löschungen einstellen.
If Not IsDBNull(r("BetragExclusivPP")) AndAlso r("BetragExclusivPP") > 0 Then
If r("BetragExclusivPP") < 150 Then
intZlr = r("AnzahlPP") - 1
Else
intZlr = r("AnzahlPP")
End If
Else
If (0 - r("BetragExclusivPP")) < 150 Then
intZlr = r("AnzahlPP") - 1
Else
intZlr = r("AnzahlPP") - 1
End If
End If
If intZlr > 0 Then
Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2)
Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".")
' Die Abfrage liest in der Tabelle Rechnungsausgang,
' passend zu den durch die vorherige Abfrage bereitgestellten Parametern.
Dim sqlStringRechnungen As String = "Select DISTINCT
Rechnungsausgang.OffertenNr,
Rechnungsausgang.RK_ID,
Rechnungsausgang.SteuerpflichtigerGesamtbetrag,
Rechnungsausgang.SteuerfreierGesamtbetrag,
Rechnungsausgang.upsize_ts
FROM Rechnungsausgang
WHERE
Rechnungsausgang.Firma_ID = " & r("Firma_ID") & "
And Rechnungsausgang.Status = " & r("Status") & "
And Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & "
And Rechnungsausgang.Sachbearbeiter = '" & Sachbearbeiter & "'
And Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & "
And Rechnungsausgang.BelegartenNr = " & r("BelegartenNr") & "
And Rechnungsausgang.Währungscode = '" & r("Währungscode") & "'
And Rechnungsausgang.[Steuersatz %] = " & SteuersatzString & "
And Rechnungsausgang.Lastschrift = " & IIf(r("Lastschrift"), 1, 0) & "
AND cast(Rechnungsausgang.Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
ORDER by
Rechnungsausgang.OffertenNr"
Dim dtRechnungen As DataTable = SQL.loadDgvBySql(sqlStringRechnungen, "FMZOLL")
If dtRechnungen.Rows.Count > 0 Then
For Each re In dtRechnungen.Rows
Dim dtREPOSANZ As DataTable = SQL.loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing], Anzahl, SteuerpflichtigerBetrag, SteuerfreierBetrag,upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 440", "FMZOLL")
If dtREPOSANZ.Rows.Count > 0 Then
Dim stgesBetr = re("SteuerpflichtigerGesamtbetrag")
Dim stfregesBetr = re("SteuerfreierGesamtbetrag")
Dim RECHNUNG As New cRechnungsausgang(re("RK_ID"))
For Each row In dtREPOSANZ.Rows
intZlr = intZlr - row("Anzahl")
stgesBetr = stgesBetr - row("SteuerpflichtigerBetrag")
stfregesBetr = stfregesBetr - row("SteuerfreierBetrag")
If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, row("LeistungsNr"), row("Steuerpflichtig"), row("LeistungsBez"), row("IndexZkteing")) Then
RECHNUNG.SteuerfreierGesamtbetrag = stfregesBetr
RECHNUNG.SteuerpflichtigerGesamtbetrag = stgesBetr
RECHNUNG.SAVE()
End If
If intZlr = 0 Then Exit For
Next
End If
Next
End If
End If
Next
End If
'Berechnet Banküberweisung/Bankspesen.
Dim sqlBB = " Select Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift
From dbo.Rechnungsausgang
Where Status = 0
And Sammelrechnung = 6
And Sachbearbeiter ='" & Sachbearbeiter & "'
AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'
Group By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift
Order By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift"
Dim dtBB As DataTable = SQL.loadDgvBySql(sqlBB, "FMZOLL")
If dtBB.Rows.Count > 0 Then
For Each r In dtBB.Rows
'spSelectReDruSchnSumBS415
Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2)
Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".")
Dim sum As DataTable = SQL.loadDgvBySql("SELECT SUM(dbo.RechnungsausgangPositionen.Preis * dbo.RechnungsausgangPositionen.Anzahl) AS [Summe von Preis]
FROM dbo.Rechnungsausgang INNER JOIN
dbo.RechnungsausgangPositionen ON dbo.Rechnungsausgang.RK_ID = dbo.RechnungsausgangPositionen.RK_ID INNER JOIN
dbo.Leistungen ON dbo.RechnungsausgangPositionen.LeistungsNr = dbo.Leistungen.LeistungsNr
WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ")
AND (dbo.Rechnungsausgang.Status = " & r("Status") & ")
AND (dbo.Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & ")
AND (dbo.Rechnungsausgang.Sachbearbeiter = '" & r("Sachbearbeiter") & "')
AND (dbo.Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & ")
AND (dbo.Rechnungsausgang.BelegartenNr =" & r("BelegartenNr") & ")
AND (dbo.Rechnungsausgang.Währungscode = '" & r("Währungscode") & "')
AND (dbo.Rechnungsausgang.[Steuersatz %] =" & SteuersatzString & ")
AND (dbo.Rechnungsausgang.Lastschrift =" & IIf(r("Lastschrift"), 1, 0) & ")
AND (dbo.Leistungen.BS415 = 1)", "FMZOLL",)
If sum.Rows.Count > 0 Then
For Each rowsum In sum.Rows
Dim sumCurrenRow As Double = rowsum("Summe von Preis")
If sumCurrenRow <> 0 Then
Dim dtBankspesen As DataTable = SQL.loadDgvBySql("SELECT KundenNr, [Bankspesen %], [Bankspesen Mindestbetrag] FROM dbo.Kunden where KundenNr = " & r("RechnungsKundenNr"), "FMZOLL")
If dtBankspesen.Rows.Count > 0 Then
For Each rowBS In dtBankspesen.Rows
If rowBS("Bankspesen %") = 0 And rowBS("Bankspesen Mindestbetrag") = 0 Then
Else
Dim query As String = "SELECT DISTINCT OffertenNr, RK_ID, SteuerpflichtigerGesamtbetrag, SteuerfreierGesamtbetrag, upsize_ts FROM Rechnungsausgang
WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ")
AND (Status = " & r("Status") & ")
AND (Sammelrechnung = " & r("Sammelrechnung") & ")
AND (Sachbearbeiter = '" & r("Sachbearbeiter") & "')
AND (RechnungsKundenNr = " & r("RechnungsKundenNr") & ")
AND (BelegartenNr =" & r("BelegartenNr") & ")
AND (Währungscode = '" & r("Währungscode") & "')
AND ([Steuersatz %] =" & SteuersatzString & ")
AND (Lastschrift =" & IIf(r("Lastschrift"), 1, 0) & ")
ORDER BY OffertenNr"
Dim dtRechnung As DataTable = SQL.loadDgvBySql(query, "FMZOLL")
If dtRechnung.Rows.Count > 0 Then
For Each re In dtRechnung.Rows
Dim steuerpflichtigerGesamtbetrag = re("SteuerpflichtigerGesamtbetrag")
Dim steuerfreiegerGesamtbetrag = re("SteuerfreierGesamtbetrag")
Dim dt415 As DataTable = SQL.loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing],SteuerpflichtigerBetrag, SteuerfreierBetrag, upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 415", "FMZOLL")
If dt415.Rows.Count > 0 Then
For Each r415 In dt415.Rows
steuerpflichtigerGesamtbetrag -= dt415("SteuerpflichtigerBetrag")
steuerfreiegerGesamtbetrag -= dt415("SteuerfreierBetrag")
Dim RECHNUNG As New cRechnungsausgang(re("RK_ID"))
If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, r415("LeistungsNr"), r415("Steuerpflichtig"), r415("LeistungsBez"), r415("IndexZkteing")) Then
RECHNUNG.SteuerfreierGesamtbetrag = steuerfreiegerGesamtbetrag
RECHNUNG.SteuerpflichtigerGesamtbetrag = steuerpflichtigerGesamtbetrag
RECHNUNG.SAVE()
End If
Next
End If
Next
If sumCurrenRow > 0 Then
Dim RElastEntry As DataRow = dtRechnung.Rows(dtRechnung.Rows.Count - 1)
Dim NEWPOS As New cRechnungsausgangPositionen(RElastEntry("RK_ID"))
NEWPOS.Anzahl = 1
NEWPOS.LeistungsNr = 415
If steuersatz = 0 Then
NEWPOS.Steuerpflichtig = False
Else
NEWPOS.Steuerpflichtig = SQL.DLookup("Steuerpflichtig", "Leistungen", "LeistungsNr= 415", "FMZOLL")
End If
NEWPOS.LeistungsBez = "Überweisungs/Bankspesen"
Dim preis As Double = 0
If rowBS("Bankspesen %") > 0 Then
If sumCurrenRow > 0 Then
preis = Math.Floor(sumCurrenRow * rowBS("Bankspesen %") + 0.5)
Else
preis = Math.Floor(0 - sumCurrenRow * rowBS("Bankspesen %") + 0.5)
End If
Else
preis = 0
End If
If preis < rowBS("Bankspesen Mindestbetrag") Then
preis = rowBS("Bankspesen Mindestbetrag")
End If
If sumCurrenRow < 0 Then
preis = 0 - preis
End If
Dim RECHNUNG As New cRechnungsausgang(RElastEntry("RK_ID"))
If NEWPOS.Steuerpflichtig Then
NEWPOS.SteuerpflichtigerBetrag = preis
RECHNUNG.SteuerpflichtigerGesamtbetrag = +preis
Else
NEWPOS.SteuerfreierBetrag = preis
RECHNUNG.SteuerfreierGesamtbetrag = +preis
End If
NEWPOS.Preis = preis
NEWPOS.INSERT(RElastEntry("RK_ID"))
RECHNUNG.SAVE()
End If
End If
End If
Next
End If
End If
Next
End If
Next
End If
End Sub
Private Sub Button16_Click(sender As Object, e As EventArgs) Handles btnContractdaten.Click
@@ -986,7 +1524,7 @@ Public Class usrCntlMDMAuswertungen
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim frm As New Form
Dim dgv As New DataGridView()
Dim dt As DataTable = SQL.loadDgvBySql("SELECT dbo.CLFBody.PKHistory,
Dim dt As DataTable = SQL.loadDgvBySql("Select dbo.CLFBody.PKHistory,
dbo.CLFBody.PKFileName,
dbo.CLFBody.PKLine,
dbo.CLFBody.RecordType,
@@ -1389,11 +1927,10 @@ Public Class usrCntlMDMAuswertungen
Dim cnt = 1
For Each r As DataRow In Table.Rows
For Each r As DataRow In table.Rows
If cnt Mod 10 = 0 Then
txtIDSEinarbeitung.Text = cnt & " / " & Table.Rows.Count
Dim proz As Double = (cnt / Table.Rows.Count) * 100
txtIDSEinarbeitung.Text = cnt & " / " & table.Rows.Count
Dim proz As Double = (cnt / table.Rows.Count) * 100
ProgressBar.Value = proz
lblProz.Text = proz.ToString("N2") & " %"
GroupBox7.Refresh()
@@ -1402,7 +1939,7 @@ Public Class usrCntlMDMAuswertungen
cnt += 1
Next
ProgressBar.Value = 100
txtIDSEinarbeitung.Text = Table.Rows.Count & " / " & Table.Rows.Count
txtIDSEinarbeitung.Text = table.Rows.Count & " / " & table.Rows.Count
lblProz.Text = "100.00 %"
End If
@@ -1419,6 +1956,10 @@ Public Class usrCntlMDMAuswertungen
Private Sub UsrCntlMSE_KonvertCSV1_Load(sender As Object, e As EventArgs) Handles UsrCntlMSE_KonvertCSV1.Load
End Sub
Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click
End Sub
End Class

View File

@@ -60,7 +60,7 @@ Public Class usrcntlFremdrechnungen
btnSDL_MautMSE.Visible = True 'dt.Select("SDLNr=208").Count > 0
btnSDL_FREJUS.Visible = False ' dt.Select("SDLNr=207").Count > 0
btnSDL_RMC.Visible = True
btnSDL_Alle.Visible = False
btnSDL_Alle.Visible = True
'End If
SplitContainer1.Panel2Collapsed = False

View File

@@ -327,7 +327,7 @@ Public Class cIDS
End Function
Public Shared Function GET_Antraege_IDS(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Optional Archiv As Object = Nothing) As Boolean
Public Shared Function GET_Antraege_IDS(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Optional Archiv As Boolean = False) As Boolean
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -349,8 +349,8 @@ Public Class cIDS
AND tblIDSTransactionsNew.KdNrVERAG = @AdressenNr
AND tbl_IDS_Länder.[Lieferland_ISO2] = @LandKZ
AND tblIDSTransactionsNew.[VATAmount] <> 0
AND isnull(UStVAn_ID,0) " & IIf(Archiv IsNot Nothing AndAlso Archiv, " <> 0 ", " = 0 ") &
"GROUP BY
" & IIf(Archiv, " ", " AND isnull(UStVAn_ID,0) = 0 ") & "
GROUP BY
tblIDSTransactionsNew.KdNrVERAG,
tblIDSTransactionsNew.[YearMonthDay],
ISNULL(tblIDSTransactionsNew.[OBONumber],
@@ -365,7 +365,6 @@ Public Class cIDS
cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader()
dt.Load(dr)

View File

@@ -159,7 +159,7 @@ Public Class cRMC
End Function
Public Shared Function GET_Antraege_RMC(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Optional Archiv As Object = Nothing) As Boolean
Public Shared Function GET_Antraege_RMC(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Optional Archiv As Boolean = False) As Boolean
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -168,7 +168,7 @@ Public Class cRMC
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 ", "") & "
AND rmc_landKZ ='" & LandKZ & "'" & IIf(Not Archiv, " And rmc_archiv = 0 ", "") & "
group by rmc_reDatum,rmc_kdNr,[rmc_reNr],[rmc_waehrung], rmc_daId
having sum([rmc_betragMWST])>0
order by rmc_reDatum", conn)
@@ -176,7 +176,6 @@ Public Class cRMC
cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader()
dt.Load(dr)

View File

@@ -1,6 +1,7 @@
Imports System.Data.SqlClient
Imports System.Reflection
Imports System.Windows.Forms
Imports com.sun.org.apache.xpath.internal.operations
'Imports DocumentFormat.OpenXml.Drawing.Charts
'Imports DocumentFormat.OpenXml.Spreadsheet
@@ -563,14 +564,28 @@ Public Class cRechnungsausgang
End If
Return True
End Function
Public Function SAVE_ANHAENGE(RK_ID) As Boolean
If DELETE_ANHAENGE() Then ' zuerst Einträge löschen...
'ORDER_ANHAENGE() ' ... dann ordnen ...
Public Function SAVE_ANHAENGE(RK_ID As Integer, Optional delete As Boolean = True) As Boolean
Select Case delete
Case 1
If DELETE_ANHAENGE() Then
For Each p In ANHAENGE
If Not p.INSERT(RK_ID) Then Return False ' ... dann insert
If Not p.INSERT(RK_ID) Then Return False
Next
Else : Return False
Else
Return False
End If
Case Else
For Each p In ANHAENGE
If Not p.INSERT(RK_ID) Then Return False
Next
End Select
Return True
End Function
@@ -666,6 +681,11 @@ Public Class cRechnungsausgang
Return SQL.doSQL(sqlstr, "FMZOLL")
End Function
Public Function DELETE_POSITIONEN(RK_ID As Integer, LeistungsNr As Integer, Steuerpflichtig As Boolean, LeistungsBez As String, IndexZkteingang As Integer) As Boolean 'obj As Object, tablename As String, where As String) As Boolean
Dim sqlstr = " DELETE FROM [RechnungsausgangPositionen] WHERE RK_ID=" & RK_ID & " AND LeistungsNr = " & LeistungsNr & " and LeistungsBez = '" & LeistungsBez & "' And IndexZkteing = " & IndexZkteingang & " AND Steuerpflichtig =" & IIf(Steuerpflichtig, 1, 0)
Return SQL.doSQL(sqlstr, "FMZOLL")
End Function
Public Function DELETE_ANHAENGE() As Boolean 'obj As Object, tablename As String, where As String) As Boolean
Dim sqlstr = " DELETE FROM [RechnungsausgangAnhaenge] WHERE RK_ID=" & Me.RK_ID
Return SQL.doSQL(sqlstr, "FMZOLL")

View File

@@ -187,7 +187,7 @@ Public Class cTrdInvoice
End Function
Public Shared Function GET_RECHNUNGEN(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, Optional Archiv As Object = Nothing) As Boolean
Public Shared Function GET_RECHNUNGEN(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, Optional Archiv As Boolean = False) As Boolean
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -195,13 +195,12 @@ Public Class cTrdInvoice
Using cmd As New SqlCommand(" SELECT tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer, tblTrdinInvoice.SteuerbetragLokal, tblTrdinInvoice.UStVAn_ID
FROM tblTrdinInvoice
WHERE tblTrdinInvoice.Rechnungsdatum Between @von And @bis AND tblTrdinInvoice.SteuerbetragLokal<>0 AND tblTrdinInvoice.RechnungsKundenNr=@AdressenNr AND tblTrdinInvoice.WährungLokal='EUR' AND isnull(tblTrdinInvoice.UStVAn_ID,0) = " & IIf(Archiv IsNot Nothing AndAlso Archiv, 1, 0) & "
WHERE tblTrdinInvoice.Rechnungsdatum Between @von And @bis AND tblTrdinInvoice.SteuerbetragLokal<>0 AND tblTrdinInvoice.RechnungsKundenNr=@AdressenNr AND tblTrdinInvoice.WährungLokal='EUR'" & IIf(Archiv, " ", " AND isnull(tblTrdinInvoice.UStVAn_ID,0) = 0 ") & "
ORDER BY tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer", conn)
cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader()
dt.Load(dr)

View File

@@ -1342,7 +1342,7 @@ Public Class cUTA
End Function
Public Shared Function GET_Antraege_UTA(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Wahrungscode As String, Optional Archiv As Object = Nothing) As Boolean
Public Shared Function GET_Antraege_UTA(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Wahrungscode As String, Optional Archiv As Object = Nothing) As Boolean '
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -1352,14 +1352,13 @@ Public Class cUTA
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, 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) & " )
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 " & IIf(Archiv, " ", " AND isnull(tblUTAImportNew.UStVAn_ID,0) = 0 ") & " )
GROUP BY [tblUTAImportNew].Rechnungsdatum, [tblUTAImportNew].Rechnungsnummer_pro_Lieferland, Lieferlandwährung_ISO ,Darstellwährung_ISO,Adressen.AdressenNr,[tblUTAImportNew].Kundennummer, daId
HAVING (((Sum([Gesamtbetrag_Brutto_in_Lieferlandwährung]-[Gesamtbetrag_Netto_in_Lieferlandwährung]))<>0));", conn)
cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader()
dt.Load(dr)

View File

@@ -1359,7 +1359,7 @@ Public Class cMSEAPI
End Sub
Public Shared Function GET_Antraege_MSE(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Wahrungscode As String, Optional Archiv As Object = Nothing) As Boolean
Public Shared Function GET_Antraege_MSE(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Wahrungscode As String, Optional Archiv As Boolean = False) As Boolean
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -1370,14 +1370,13 @@ Public Class cMSEAPI
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) & "
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 & "'" & IIf(Archiv, " ", " AND isnull(UStVAn_ID,0) = 0 ") & "
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)
cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader()
dt.Load(dr)