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)) desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - RECHNUNG.SteuerfreierGesamtbetrag), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S))
End If 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 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) Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write)
@@ -2073,6 +2110,47 @@ Public Class cFakturierung
desc.AddTradePaymentTerms(rpt.Label2.Text, zahlungszieldatum) 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) 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 rpt As New rptSammelRechnungDruck(ROW("RechnungSprache"))
Dim firmaID = ROW("Firma_ID") 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 FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(firmaID)
Dim KD_RG As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr")) 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 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 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 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 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 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 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.cboPrinter = New VERAG_PROG_ALLGEMEIN.MyComboBox()
Me.cbxRgKopieDrucken = New System.Windows.Forms.CheckBox() Me.cbxRgKopieDrucken = New System.Windows.Forms.CheckBox()
Me.dgvAnhaenge = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.dgvAnhaenge = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components)
Me.Label7 = New System.Windows.Forms.Label()
Me.optAnhSel = New System.Windows.Forms.DataGridViewCheckBoxColumn() Me.optAnhSel = New System.Windows.Forms.DataGridViewCheckBoxColumn()
Me.DataGridViewTextBoxColumn3 = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.DataGridViewTextBoxColumn3 = New System.Windows.Forms.DataGridViewTextBoxColumn()
Me.clmnBezeichnung = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.clmnBezeichnung = New System.Windows.Forms.DataGridViewTextBoxColumn()
Me.clmnDsId = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.clmnDsId = New System.Windows.Forms.DataGridViewTextBoxColumn()
Me.clmnAnhId = 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.dgvEmailBCC, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.dgvEmailCC, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.dgvEmailCC, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.dgvEmail, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.dgvEmail, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -612,15 +613,6 @@ Partial Class frmFaktEmail
Me.dgvAnhaenge.TabIndex = 91 Me.dgvAnhaenge.TabIndex = 91
Me.dgvAnhaenge.TabStop = False 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 'optAnhSel
' '
Me.optAnhSel.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None Me.optAnhSel.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None
@@ -676,12 +668,33 @@ Partial Class frmFaktEmail
Me.clmnAnhId.Visible = False Me.clmnAnhId.Visible = False
Me.clmnAnhId.Width = 150 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 'frmFaktEmail
' '
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.BackColor = System.Drawing.Color.WhiteSmoke Me.BackColor = System.Drawing.Color.WhiteSmoke
Me.ClientSize = New System.Drawing.Size(750, 850) Me.ClientSize = New System.Drawing.Size(750, 850)
Me.Controls.Add(Me.Button5)
Me.Controls.Add(Me.Label7) Me.Controls.Add(Me.Label7)
Me.Controls.Add(Me.dgvAnhaenge) Me.Controls.Add(Me.dgvAnhaenge)
Me.Controls.Add(Me.cbxRgKopieDrucken) Me.Controls.Add(Me.cbxRgKopieDrucken)
@@ -785,4 +798,5 @@ Partial Class frmFaktEmail
Friend WithEvents clmnBezeichnung As DataGridViewTextBoxColumn Friend WithEvents clmnBezeichnung As DataGridViewTextBoxColumn
Friend WithEvents clmnDsId As DataGridViewTextBoxColumn Friend WithEvents clmnDsId As DataGridViewTextBoxColumn
Friend WithEvents clmnAnhId As DataGridViewTextBoxColumn Friend WithEvents clmnAnhId As DataGridViewTextBoxColumn
Friend WithEvents Button5 As Button
End Class End Class

View File

@@ -119,6 +119,12 @@ Public Class frmFaktEmail
cbxStbMitt.Enabled = True : cbxStbMitt.Checked = True cbxStbMitt.Enabled = True : cbxStbMitt.Checked = True
cbxVBD.Enabled = True : cbxVBD.Checked = True cbxVBD.Enabled = True : cbxVBD.Checked = True
cbxOriginalPrint.Visible = False cbxOriginalPrint.Visible = False
If SammelrechungArt = 6 Then
cbxMergePDF.Checked = False
cbxMergePDF.Enabled = False
Else
cbxMergePDF.Enabled = True
End If
Else Else
setMailText(RECHNUNG.RechnungsLandKz) setMailText(RECHNUNG.RechnungsLandKz)
@@ -254,6 +260,7 @@ Public Class frmFaktEmail
Dim TextHTML = "" Dim TextHTML = ""
If SammelrechungArt <> 6 Then
Select Case RechnungsLandKz Select Case RechnungsLandKz
Case "TR" Case "TR"
txtSubject.Text = If(BelegartenNr = 71, "Kredi Nr. ", "Fatura Nr. ") & txtRgNr txtSubject.Text = If(BelegartenNr = 71, "Kredi Nr. ", "Fatura Nr. ") & txtRgNr
@@ -271,6 +278,29 @@ Public Class frmFaktEmail
TextHTML &= TextHTMLADD TextHTML &= TextHTMLADD
TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & "" TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & ""
End Select 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 RichTextBox.Text = TextHTML
@@ -880,11 +910,30 @@ Public Class frmFaktEmail
.Rows.Clear() .Rows.Clear()
.Enabled = True .Enabled = True
If SR Then If SR AndAlso SammelrechungArt <> 6 Then
.Enabled = False .Enabled = False
Exit Sub Exit Sub
End If 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() RECHNUNG.LOAD_ANHAENGE()
If RECHNUNG IsNot Nothing AndAlso RECHNUNG.ANHAENGE IsNot Nothing Then If RECHNUNG IsNot Nothing AndAlso RECHNUNG.ANHAENGE IsNot Nothing Then
@@ -897,10 +946,13 @@ Public Class frmFaktEmail
'----------------------------- '-----------------------------
End If End If
End If
End With End With
dgvAnhaenge.ClearSelection() dgvAnhaenge.ClearSelection()
End Sub End Sub
End Class 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", "") & " 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 ,(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 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 & "' ", "") & " " & If(Sammelrechung = 7 And cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "' ", "") & "
" & whereAbfArt & " " & whereAbfArt & "
AND Rechnungsausgang.FakturierungsGruppe='" & cboFaktGrp._value & "' AND Rechnungsausgang.FakturierungsGruppe='" & cboFaktGrp._value & "'
@@ -285,7 +285,7 @@ Public Class frmFaktSammelRgDrucken
Dim listPDFs As New List(Of String) Dim listPDFs As New List(Of String)
Dim SonstAnlagen As New List(Of String) Dim SonstAnlagen As New List(Of String)
Dim RechnungsNrisSet As Boolean = False 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 -------------- '-------------- 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 "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 "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 End Select
Next 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 s As Microsoft.Office.Interop.Word.Section In odoc.Sections
For Each header As Microsoft.Office.Interop.Word.HeaderFooter In s.Headers 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 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.org.apache.xml.internal.resolver
Imports com.sun.tools.internal.ws.wsdl.framework Imports com.sun.tools.internal.ws.wsdl.framework
Imports DocumentFormat.OpenXml.Office2010.Drawing.Charts Imports DocumentFormat.OpenXml.Office2010.Drawing.Charts
Imports iTextSharp.text.pdf Imports itextsharp.text.pdf
Imports iTextSharp.text.pdf.parser Imports itextsharp.text.pdf.parser
Imports java.text.Normalizer Imports java.text.Normalizer
Imports jdk.nashorn.internal.objects.annotations Imports jdk.nashorn.internal.objects.annotations
'Imports DocumentFormat.OpenXml.Drawing.Charts 'Imports DocumentFormat.OpenXml.Drawing.Charts
Imports Microsoft.Office.Interop Imports Microsoft.Office.Interop
Imports Org.BouncyCastle.Pqc.Crypto Imports org.BouncyCastle.Pqc.Crypto
Imports sun.swing Imports sun.swing
Imports VERAG_PROG_ALLGEMEIN Imports VERAG_PROG_ALLGEMEIN
@@ -610,13 +610,13 @@ Public Class frmMDM_USTVAntrag
USTV_POS.UStVPo_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME USTV_POS.UStVPo_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
USTV_POS.UStVPo_Zeitstempel = Now() USTV_POS.UStVPo_Zeitstempel = Now()
USTV_POS.UStVPo_daId = ANTRAG.plose_daId USTV_POS.UStVPo_daId = ANTRAG.plose_daId
' Berechnungen ' Berechnungen
If Not MWSTSummenAusBeleg Then 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_USteuerbetragEUR = ANTRAG.plose_MWSTBetragWaehrungAbbuchung
'USTV_POS.UStVPo_Umrechnungskurs = VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuroKurs(ANTRAG.plose_WaehrungAbbuchung, ANTRAG.plose_RechnungsDatum)
USTV_POS.UStVPo_Umrechnungskurs = ANTRAG.plose_MWSTBetrag / ANTRAG.plose_MWSTBetragWaehrungAbbuchung USTV_POS.UStVPo_Umrechnungskurs = ANTRAG.plose_MWSTBetrag / ANTRAG.plose_MWSTBetragWaehrungAbbuchung
USTV_POS.UStVPo_USteuerbetrag = ANTRAG.plose_MWSTBetrag USTV_POS.UStVPo_USteuerbetrag = ANTRAG.plose_MWSTBetrag
' MsgBox(ANTRAG.plose_Lieferant & " - " & ANTRAG.plose_RechnungsDatum & " - " & ANTRAG.plose_RechnungsNr & " :::::::::: " & CDbl(ANTRAG.plose_MWSTBetrag).ToString("C2"))
Else Else
'TODO - hier Umrechnungslogik von FRMDW und EUR und EUR/FRMDWR für Belegsebene 'TODO - hier Umrechnungslogik von FRMDW und EUR und EUR/FRMDWR für Belegsebene
Dim umrechKurs As Double = 1 Dim umrechKurs As Double = 1
@@ -642,12 +642,12 @@ Public Class frmMDM_USTVAntrag
End If 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 umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
End If End If
If UST_org > 0 Then If UST_org <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org USTV_POS.UStVPo_USteuerbetrag = UST_org
@@ -657,12 +657,15 @@ Public Class frmMDM_USTVAntrag
End If 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
End If
Next Next
'Einträge als archivert setzen ' vormals wichtig '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 End If
Return True Return True
@@ -773,6 +776,7 @@ Public Class frmMDM_USTVAntrag
Shared Function loadUSTVFrom_RMC(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean Shared Function loadUSTVFrom_RMC(UStVAn_ID, Antrag_LandKz, ArchivierteEintracheNochmalsEinarbetien) As Boolean
Try Try
Dim bytSchnittstellenNr = 7 Dim bytSchnittstellenNr = 7
Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID) Dim USTV_ANTRAG As New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(UStVAn_ID)
@@ -816,7 +820,7 @@ Public Class frmMDM_USTVAntrag
End If 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_USteuerbetragEUR = Math.Round((r.Item("rmc_betragMWST") / umrechKurs), 2)
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = r.Item("rmc_betragMWST") 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_EUR = CDbl(r.Item("UST_EUR"))
Dim UST_org = CDbl(r.Item("UST")) 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 'umrechKurs = UST_org / UST_EUR
@@ -882,7 +886,7 @@ Public Class frmMDM_USTVAntrag
End If 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_USteuerbetragEUR = UST_EUR 'Math.Round((UST_org / umrechKurs), 2)
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org 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 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 umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
End If End If
If UST_org > 0 Then If UST_org <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org 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) UST_org = Math.Round(kurs.EXCHANGE_EURTOCUR(UST_EUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(USTV_POS.UStVPo_ReDat)), 2)
End If 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 umrechKurs = Math.Floor((UST_org / UST_EUR * 100 + 0.5)) / 100
End If End If
If UST_org > 0 Then If UST_org <> 0 Then
USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR USTV_POS.UStVPo_USteuerbetragEUR = UST_EUR
USTV_POS.UStVPo_Umrechnungskurs = umrechKurs USTV_POS.UStVPo_Umrechnungskurs = umrechKurs
USTV_POS.UStVPo_USteuerbetrag = UST_org USTV_POS.UStVPo_USteuerbetrag = UST_org
@@ -1311,7 +1315,7 @@ Public Class frmMDM_USTVAntrag
From [tblPLOSE_Details] INNER Join Adressen On PLOSEKundenNr=plose_POLSEKundennummer From [tblPLOSE_Details] INNER Join Adressen On PLOSEKundenNr=plose_POLSEKundennummer
INNER Join [tblPLOSE_Produktbeschreibung] ON [plp_ProductCode]=[plose_ProduktCode] 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 & "' 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") If Not test Then updated = SQL.doSQL(sqlText, "FMZOLL")
@@ -1521,11 +1525,11 @@ Public Class frmMDM_USTVAntrag
Try Try
Dim fi As New System.IO.DirectoryInfo(path_src) 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 TMP_Path_New = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(fi.Name, fi.Extension,, True, "IDS-Rechnungen")
Dim srcDoc As New iTextSharp.text.Document() 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 PdfCopyProvider As New itextsharp.text.pdf.PdfCopy(srcDoc, New FileStream(TMP_Path_New, System.IO.FileMode.Create))
PdfCopyProvider.SetFullCompression() PdfCopyProvider.SetFullCompression()
srcDoc.Open() srcDoc.Open()
PdfReader.unethicalreading = True PdfReader.unethicalreading = True
@@ -1536,7 +1540,7 @@ Public Class frmMDM_USTVAntrag
Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy() Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()
Dim currentpagetext As String = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy) Dim currentpagetext As String = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy)
Dim searchtext As String = ReNr 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 If (currentpagetext.Contains(searchtext)) Then
@@ -1549,7 +1553,7 @@ Public Class frmMDM_USTVAntrag
impPage = PdfCopyProvider.GetImportedPage(pdfReader, page) impPage = PdfCopyProvider.GetImportedPage(pdfReader, page)
' ----- Ermitteln der Seitenauflösung und setzen für die neue Seite ' ----- 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 ' ----- PDF Seite in das neue Dokument einfügen
If impPage IsNot Nothing Then PdfCopyProvider.AddPage(impPage) If impPage IsNot Nothing Then PdfCopyProvider.AddPage(impPage)
Catch ex As Exception Catch ex As Exception

View File

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

View File

@@ -1,14 +1,8 @@
Imports System.Data.OleDb Imports System.Data.OleDb
Imports System.IO 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 itextsharp.text.pdf
Imports MDM_Worker Imports MDM_Worker
Imports sun.swing
Imports TAlex.WPF.Helpers
Imports VERAG_PROG_ALLGEMEIN Imports VERAG_PROG_ALLGEMEIN
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
Public Class frmMDMDatenverarbetiung Public Class frmMDMDatenverarbetiung
@@ -3180,7 +3174,7 @@ Public Class frmMDMDatenverarbetiung
End Select End Select
Dim GJ = Now.Year 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.AbfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(SPEDBUCH.FilialenNr, GJ)
SPEDBUCH.NewUNTER_NR() SPEDBUCH.NewUNTER_NR()
@@ -3366,7 +3360,7 @@ Public Class frmMDMDatenverarbetiung
'End Function '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 Try
If KdNr = "" Then Return False If KdNr = "" Then Return False
@@ -3388,6 +3382,8 @@ Public Class frmMDMDatenverarbetiung
End Select End Select
RG.Firma_ID = 19 'RG.Firma_ID = 15
RG.FilialenNr = SPEDBUCH.FilialenNr RG.FilialenNr = SPEDBUCH.FilialenNr
RG.AbfertigungsNr = SPEDBUCH.AbfertigungsNr RG.AbfertigungsNr = SPEDBUCH.AbfertigungsNr
RG.SpeditionsbuchUnterNr = SPEDBUCH.UnterNr RG.SpeditionsbuchUnterNr = SPEDBUCH.UnterNr
@@ -3432,18 +3428,16 @@ Public Class frmMDMDatenverarbetiung
RG.Kreditaufwendungen_Proz = KD.Kreditaufwendungen RG.Kreditaufwendungen_Proz = KD.Kreditaufwendungen
RG.RechnungSprache = "DE" RG.RechnungSprache = "DE"
RG.Anlage_2 = "" RG.Anlage_2 = ""
RG.Anlage_3 = "" RG.Anlage_3 = ""
RG.Anlage_4 = "" RG.Anlage_4 = ""
RG.Anlage_5 = "" RG.Anlage_5 = ""
RG.Anlage_6 = "" RG.Anlage_6 = ""
RG.Text = "" RG.Text = ""
RG.EMailRechnungstext = Nothing ' "" RG.EMailRechnungstext = Nothing ' ""
RG.Firma_ID = 15
RG.Nettozahlungsziel = KD.Zahlungsziel RG.Nettozahlungsziel = KD.Zahlungsziel
RG.SteuerpflichtigerGesamtbetrag = 0 RG.SteuerpflichtigerGesamtbetrag = 0
@@ -3452,14 +3446,14 @@ Public Class frmMDMDatenverarbetiung
RG.[Vorkosten] = 0 RG.[Vorkosten] = 0
RG.[Erlös] = 0 RG.[Erlös] = 0
RG.[Buchungsjahr] = 0 'RG.[Buchungsjahr] = 0
RG.[Währungscode] = "EUR" RG.[Währungscode] = "EUR"
RG.ReErfZeitstempel = Now RG.ReErfZeitstempel = Now
RG.Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME 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 sqlstr As String = ""
Dim useNettogesamtbetrag As Boolean = False 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, "")) 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 End If
'das muss die letzte Prüfung sein, da uU eine Transaktion fehlen kann! 'das muss die letzte Prüfung sein, da uU eine Transaktion fehlen kann!
Dim fehlendeTransactionen As Integer = 0 Dim fehlendeTransactionen As Integer = 0
@@ -4098,10 +4091,10 @@ Public Class frmMDMDatenverarbetiung
If fehlendeTransactionen > 0 Then If fehlendeTransactionen > 0 Then
pruefData_MSE = False pruefData_MSE = False
Dim hint As String = "" Dim hint As String = ""
If fehlendeTransactionen > 500 Then 'If fehlendeTransactionen > 500 Then
hint = "Batch-Nr: " ' hint = "Transaction-IDs: "
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") ' 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 '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, "")) 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 End If
@@ -4154,8 +4147,6 @@ Public Class frmMDMDatenverarbetiung
Return False Return False
End If End If
End If End If
Dim OBONumberOderVRNumberfehlern As Integer = 0 Dim OBONumberOderVRNumberfehlern As Integer = 0
@@ -4854,7 +4845,7 @@ RabattBerechnen:
ANH.dsId = CInt(DS.da_id) ANH.dsId = CInt(DS.da_id)
ANH.Bezeichnung = DS.da_name ANH.Bezeichnung = DS.da_name
RECHNUNG.ANHAENGE.Add(ANH) RECHNUNG.ANHAENGE.Add(ANH)
Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID) Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False)
Else Else
Return False Return False
End If End If

View File

@@ -131,8 +131,19 @@ Partial Class usrCntlMDMAuswertungen
Me.Label59 = New System.Windows.Forms.Label() Me.Label59 = New System.Windows.Forms.Label()
Me.Button17 = New System.Windows.Forms.Button() Me.Button17 = New System.Windows.Forms.Button()
Me.TabPage2 = New System.Windows.Forms.TabPage() 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.Label44 = New System.Windows.Forms.Label()
Me.GroupBox13 = New System.Windows.Forms.GroupBox() 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.Label45 = New System.Windows.Forms.Label()
Me.Button14 = New System.Windows.Forms.Button() Me.Button14 = New System.Windows.Forms.Button()
Me.Label35 = New System.Windows.Forms.Label() Me.Label35 = New System.Windows.Forms.Label()
@@ -203,6 +214,7 @@ Partial Class usrCntlMDMAuswertungen
Me.tbIDS.SuspendLayout() Me.tbIDS.SuspendLayout()
Me.GroupBox18.SuspendLayout() Me.GroupBox18.SuspendLayout()
Me.TabPage2.SuspendLayout() Me.TabPage2.SuspendLayout()
Me.GroupBox19.SuspendLayout()
Me.GroupBox13.SuspendLayout() Me.GroupBox13.SuspendLayout()
Me.GroupBox10.SuspendLayout() Me.GroupBox10.SuspendLayout()
Me.tbPLOSE.SuspendLayout() Me.tbPLOSE.SuspendLayout()
@@ -1431,6 +1443,8 @@ Partial Class usrCntlMDMAuswertungen
' '
'TabPage2 'TabPage2
' '
Me.TabPage2.Controls.Add(Me.Label61)
Me.TabPage2.Controls.Add(Me.GroupBox19)
Me.TabPage2.Controls.Add(Me.Label44) Me.TabPage2.Controls.Add(Me.Label44)
Me.TabPage2.Controls.Add(Me.GroupBox13) Me.TabPage2.Controls.Add(Me.GroupBox13)
Me.TabPage2.Controls.Add(Me.Label35) Me.TabPage2.Controls.Add(Me.Label35)
@@ -1443,6 +1457,47 @@ Partial Class usrCntlMDMAuswertungen
Me.TabPage2.Text = "Organisation" Me.TabPage2.Text = "Organisation"
Me.TabPage2.UseVisualStyleBackColor = True 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 'Label44
' '
Me.Label44.AutoSize = True Me.Label44.AutoSize = True
@@ -1450,35 +1505,103 @@ Partial Class usrCntlMDMAuswertungen
Me.Label44.ForeColor = System.Drawing.SystemColors.ControlDarkDark Me.Label44.ForeColor = System.Drawing.SystemColors.ControlDarkDark
Me.Label44.Location = New System.Drawing.Point(19, 143) Me.Label44.Location = New System.Drawing.Point(19, 143)
Me.Label44.Name = "Label44" 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.TabIndex = 11
Me.Label44.Text = "MDM Sammelabrechnung - Sachbearbeiter = Kriegner" Me.Label44.Text = "MDM Sammelabrechnung - MDM Sammelrechnung (Art=6)"
' '
'GroupBox13 '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.Label45)
Me.GroupBox13.Controls.Add(Me.Button14) Me.GroupBox13.Controls.Add(Me.Button14)
Me.GroupBox13.Location = New System.Drawing.Point(18, 154) Me.GroupBox13.Location = New System.Drawing.Point(18, 154)
Me.GroupBox13.Name = "GroupBox13" 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.TabIndex = 10
Me.GroupBox13.TabStop = False 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 'Label45
' '
Me.Label45.AutoSize = True Me.Label45.Location = New System.Drawing.Point(144, 61)
Me.Label45.Location = New System.Drawing.Point(144, 19)
Me.Label45.Name = "Label45" 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.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" & Me.Label45.Text = "1. Einträge auf Sachbearbeiter ändern, damit die FMZOLL Abrechnung die entsprechn" &
"mit die FMZOLL Abrechnung die entsprechnde Zuweisung findet." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) "de Zuweisung findet." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10)
' '
'Button14 'Button14
' '
Me.Button14.FlatStyle = System.Windows.Forms.FlatStyle.Flat 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.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.Name = "Button14"
Me.Button14.Size = New System.Drawing.Size(121, 49) Me.Button14.Size = New System.Drawing.Size(121, 49)
Me.Button14.TabIndex = 4 Me.Button14.TabIndex = 4
@@ -2023,6 +2146,8 @@ Partial Class usrCntlMDMAuswertungen
Me.GroupBox18.PerformLayout() Me.GroupBox18.PerformLayout()
Me.TabPage2.ResumeLayout(False) Me.TabPage2.ResumeLayout(False)
Me.TabPage2.PerformLayout() Me.TabPage2.PerformLayout()
Me.GroupBox19.ResumeLayout(False)
Me.GroupBox19.PerformLayout()
Me.GroupBox13.ResumeLayout(False) Me.GroupBox13.ResumeLayout(False)
Me.GroupBox13.PerformLayout() Me.GroupBox13.PerformLayout()
Me.GroupBox10.ResumeLayout(False) Me.GroupBox10.ResumeLayout(False)
@@ -2208,4 +2333,15 @@ Partial Class usrCntlMDMAuswertungen
Friend WithEvents TextBox2 As TextBox Friend WithEvents TextBox2 As TextBox
Friend WithEvents Label59 As Label Friend WithEvents Label59 As Label
Friend WithEvents Button17 As Button 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 End Class

View File

@@ -1,13 +1,9 @@
Imports Microsoft.Office.Interop.Outlook Imports System.Data.SqlClient
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.IO Imports System.IO
Imports Tamir.SharpSsh.jsch Imports Microsoft.Office.Interop.Outlook
Imports sun.swing Imports Microsoft.VisualBasic.FileIO
Imports VERAG_PROG_ALLGEMEIN
Public Class usrCntlMDMAuswertungen Public Class usrCntlMDMAuswertungen
@@ -62,6 +58,8 @@ Public Class usrCntlMDMAuswertungen
cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Leistungsdatum", "LDat")) cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Leistungsdatum", "LDat"))
cboIDSDateType.changeItem("RGDat") 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 If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Auswertungen_IDS", Me.FindForm) Then
tbcntr.TabPages.Remove(tbIDS) tbcntr.TabPages.Remove(tbIDS)
End If End If
@@ -974,9 +972,549 @@ Public Class usrCntlMDMAuswertungen
Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL 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 Dim ok As Boolean = True
MsgBox("Update erfolgreich.")
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 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 End Sub
Private Sub Button16_Click(sender As Object, e As EventArgs) Handles btnContractdaten.Click 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 SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim frm As New Form Dim frm As New Form
Dim dgv As New DataGridView() 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.PKFileName,
dbo.CLFBody.PKLine, dbo.CLFBody.PKLine,
dbo.CLFBody.RecordType, dbo.CLFBody.RecordType,
@@ -1389,11 +1927,10 @@ Public Class usrCntlMDMAuswertungen
Dim cnt = 1 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 If cnt Mod 10 = 0 Then
txtIDSEinarbeitung.Text = cnt & " / " & Table.Rows.Count txtIDSEinarbeitung.Text = cnt & " / " & table.Rows.Count
Dim proz As Double = (cnt / Table.Rows.Count) * 100 Dim proz As Double = (cnt / table.Rows.Count) * 100
ProgressBar.Value = proz ProgressBar.Value = proz
lblProz.Text = proz.ToString("N2") & " %" lblProz.Text = proz.ToString("N2") & " %"
GroupBox7.Refresh() GroupBox7.Refresh()
@@ -1402,7 +1939,7 @@ Public Class usrCntlMDMAuswertungen
cnt += 1 cnt += 1
Next Next
ProgressBar.Value = 100 ProgressBar.Value = 100
txtIDSEinarbeitung.Text = Table.Rows.Count & " / " & Table.Rows.Count txtIDSEinarbeitung.Text = table.Rows.Count & " / " & table.Rows.Count
lblProz.Text = "100.00 %" lblProz.Text = "100.00 %"
End If End If
@@ -1419,6 +1956,10 @@ Public Class usrCntlMDMAuswertungen
Private Sub UsrCntlMSE_KonvertCSV1_Load(sender As Object, e As EventArgs) Handles UsrCntlMSE_KonvertCSV1.Load Private Sub UsrCntlMSE_KonvertCSV1_Load(sender As Object, e As EventArgs) Handles UsrCntlMSE_KonvertCSV1.Load
End Sub End Sub
Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click
End Sub
End Class End Class

View File

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

View File

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

View File

@@ -159,7 +159,7 @@ Public Class cRMC
End Function 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 Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL 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] 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] INNER JOIN Adressen as adr on rmc_kdNr=adr.[WölflKundenNr]
where cast(rmc_reDatum as date) between @von and @bis and AdressenNr=@AdressenNr 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 group by rmc_reDatum,rmc_kdNr,[rmc_reNr],[rmc_waehrung], rmc_daId
having sum([rmc_betragMWST])>0 having sum([rmc_betragMWST])>0
order by rmc_reDatum", conn) order by rmc_reDatum", conn)
@@ -176,7 +176,6 @@ Public Class cRMC
cmd.Parameters.AddWithValue("@von", von) cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis) cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr) cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader() Dim dr = cmd.ExecuteReader()
dt.Load(dr) dt.Load(dr)

View File

@@ -1,6 +1,7 @@
Imports System.Data.SqlClient Imports System.Data.SqlClient
Imports System.Reflection Imports System.Reflection
Imports System.Windows.Forms Imports System.Windows.Forms
Imports com.sun.org.apache.xpath.internal.operations
'Imports DocumentFormat.OpenXml.Drawing.Charts 'Imports DocumentFormat.OpenXml.Drawing.Charts
'Imports DocumentFormat.OpenXml.Spreadsheet 'Imports DocumentFormat.OpenXml.Spreadsheet
@@ -563,14 +564,28 @@ Public Class cRechnungsausgang
End If End If
Return True Return True
End Function End Function
Public Function SAVE_ANHAENGE(RK_ID) As Boolean Public Function SAVE_ANHAENGE(RK_ID As Integer, Optional delete As Boolean = True) As Boolean
If DELETE_ANHAENGE() Then ' zuerst Einträge löschen...
'ORDER_ANHAENGE() ' ... dann ordnen ... Select Case delete
Case 1
If DELETE_ANHAENGE() Then
For Each p In ANHAENGE 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 Next
Else : Return False Else
Return False
End If End If
Case Else
For Each p In ANHAENGE
If Not p.INSERT(RK_ID) Then Return False
Next
End Select
Return True Return True
End Function End Function
@@ -666,6 +681,11 @@ Public Class cRechnungsausgang
Return SQL.doSQL(sqlstr, "FMZOLL") Return SQL.doSQL(sqlstr, "FMZOLL")
End Function 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 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 Dim sqlstr = " DELETE FROM [RechnungsausgangAnhaenge] WHERE RK_ID=" & Me.RK_ID
Return SQL.doSQL(sqlstr, "FMZOLL") Return SQL.doSQL(sqlstr, "FMZOLL")

View File

@@ -187,7 +187,7 @@ Public Class cTrdInvoice
End Function 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 Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL 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 Using cmd As New SqlCommand(" SELECT tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer, tblTrdinInvoice.SteuerbetragLokal, tblTrdinInvoice.UStVAn_ID
FROM tblTrdinInvoice 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) ORDER BY tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer", conn)
cmd.Parameters.AddWithValue("@von", von) cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis) cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr) cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader() Dim dr = cmd.ExecuteReader()
dt.Load(dr) dt.Load(dr)

View File

@@ -1342,7 +1342,7 @@ Public Class cUTA
End Function 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 Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL 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_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 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 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 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) HAVING (((Sum([Gesamtbetrag_Brutto_in_Lieferlandwährung]-[Gesamtbetrag_Netto_in_Lieferlandwährung]))<>0));", conn)
cmd.Parameters.AddWithValue("@von", von) cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis) cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr) cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader() Dim dr = cmd.ExecuteReader()
dt.Load(dr) dt.Load(dr)

View File

@@ -1359,7 +1359,7 @@ Public Class cMSEAPI
End Sub 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 Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL 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].[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].[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 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 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) where temp.UST <> 0", conn)
cmd.Parameters.AddWithValue("@von", von) cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis) cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr) cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
If Archiv IsNot Nothing Then cmd.Parameters.AddWithValue("@Archiv", If(Archiv, 1, 0))
Dim dr = cmd.ExecuteReader() Dim dr = cmd.ExecuteReader()
dt.Load(dr) dt.Load(dr)