ustva, abrechungen für MÖST inkl übersetzungen

This commit is contained in:
2025-06-23 11:58:58 +02:00
parent 4502470ef7
commit ab52a76284
5 changed files with 73 additions and 38 deletions

View File

@@ -2485,7 +2485,7 @@ Public Class usrCntlFaktAbrechnung
If RECHNUNG.RechnungSprache = "DE" Or FindPOS.LeistungsBez Is Nothing Then FindPOS.LeistungsBez = "Vorlageprovision"
'RECHNUNG.POSITIONEN.Add(FindPOS)
FindPOS.Anzahl = 1
FindPOS.Preis = Math.Round(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz), 2) 'Int(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz) * 10 + 0.5) / 10
FindPOS.Preis = Math.round(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz), 2) 'Int(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz) * 10 + 0.5) / 10
'...und der Wert gesetzt.
initSteuerbetraege(RECHNUNG, FindPOS)
@@ -2530,7 +2530,7 @@ Public Class usrCntlFaktAbrechnung
If RECHNUNG.RechnungSprache = "DE" Or FindPOS.LeistungsBez Is Nothing Then FindPOS.LeistungsBez = "Kapitalbereitstellung"
'RECHNUNG.POSITIONEN.Add(FindPOS)
FindPOS.Anzahl = 1
FindPOS.Preis = Math.Round(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz), 2) ' Int(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz) * 10 + 0.5) / 10
FindPOS.Preis = Math.round(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz), 2) ' Int(Vorlageprovision_Berechnungbetrag * (RECHNUNG.Vorlageprovision_Proz) * 10 + 0.5) / 10
'...und der Wert gesetzt.
initSteuerbetraege(RECHNUNG, FindPOS)
@@ -2568,7 +2568,7 @@ Public Class usrCntlFaktAbrechnung
For Each POS In RECHNUNG.POSITIONEN
' Dim BGebErrBetrag As Double = Int(If(If(POS.BGebBgl, 0), If(POS.Preis, 0) * If(POS.Anzahl, 0)) * If(POS.BGebProzent, 0) * 10 + 0.5) / 10
Dim BGebErrBetrag As Double = Math.Round(If(POS.BGebBgl IsNot Nothing, POS.BGebBgl, getNumeric(POS.Preis) * getNumeric(POS.Anzahl)) * getNumeric(POS.BGebProzent), 2) 'Int(If(POS.BGebBgl IsNot Nothing, POS.BGebBgl, getNumeric(POS.Preis) * getNumeric(POS.Anzahl)) * getNumeric(POS.BGebProzent) * 10 + 0.5) / 10
Dim BGebErrBetrag As Double = Math.round(If(POS.BGebBgl IsNot Nothing, POS.BGebBgl, getNumeric(POS.Preis) * getNumeric(POS.Anzahl)) * getNumeric(POS.BGebProzent), 2) 'Int(If(POS.BGebBgl IsNot Nothing, POS.BGebBgl, getNumeric(POS.Preis) * getNumeric(POS.Anzahl)) * getNumeric(POS.BGebProzent) * 10 + 0.5) / 10
curBGebBetrag = 0
@@ -2656,7 +2656,7 @@ Public Class usrCntlFaktAbrechnung
Dim curBGebMinBetrag = BGebMinBetrag
Dim curBGebErrBetrag As Double = Math.Round(BGebBgl * BGebProzent, 1)
Dim curBGebErrBetrag As Double = Math.round(BGebBgl * BGebProzent, 1)
Dim curBGebBetrag As Double = 0
curBGebBetrag = curBGebErrBetrag
@@ -2740,7 +2740,7 @@ Public Class usrCntlFaktAbrechnung
ElseIf curBearbPreis <> curBGebBetrag * 2 AndAlso summeRMCBearb <> curBearbPreis AndAlso (minBetragRMCUsed OrElse isRMC OrElse isFREMD) AndAlso summeRMCBearb > curBGebMinBetrag Then 'wenn RMCPOS und Summe der berechneten Bearb > Mindestbetrag --> berechnetBearb verrechnet!
If summeRMCBearb <> row.Cells("Preis").Value Then
If Math.Abs(row.Cells("Preis").Value - summeRMCBearb) > 0.5 Then 'Rundungsdifferenzen ignorieren (weil sonst Deadloop)
If Math.abs(row.Cells("Preis").Value - summeRMCBearb) > 0.5 Then 'Rundungsdifferenzen ignorieren (weil sonst Deadloop)
row.Cells("Preis").Value = summeRMCBearb
End If
End If
@@ -2751,7 +2751,7 @@ Public Class usrCntlFaktAbrechnung
Else
If minBetragRMCUsed Then
If minBetragRMCUsed Then
If curBearbPreis > curBGebBetrag AndAlso summeRMCBearb > 0 Then
If curBearbPreis <> summeRMCBearb Then row.Cells("Preis").Value = summeRMCBearb
@@ -2950,8 +2950,8 @@ Public Class usrCntlFaktAbrechnung
Next
' mind??KD
If BS415_Berechnungbetrag <> 0 Then
If BS415_Berechnungbetrag <0 Then BS415_Berechnungbetrag *= -1
BS415= Int(BS415_Berechnungbetrag * KD.Bankspesen + 0.5)
If BS415_Berechnungbetrag < 0 Then BS415_Berechnungbetrag *= -1
BS415 = Int(BS415_Berechnungbetrag * KD.Bankspesen + 0.5)
End If
End If
@@ -3054,19 +3054,19 @@ Public Class usrCntlFaktAbrechnung
Shared Sub setFixeTaxeMin(ByRef RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang, ByRef minBetrag As Double, fixeTaxe As Double)
Dim FixeTaxe_Berechnungbetrag As Double = 0
If Not leistungExistsInPos(RECHNUNG, 441, 9) Then Exit Sub 'Schauen, ob die Leistung in den Positionen vorhanden ist
If Not leistungExistsInPos(RECHNUNG, 441, 1) Then Exit Sub 'Schauen, ob die Leistung in den Positionen vorhanden ist
If (RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag) >= minBetrag Then Exit Sub
If fixeTaxe <= 0 Then Exit Sub
'Sucht, ob Fixetaxe schon vorhanden ist,...
Dim FixeTaxePOS = RECHNUNG.POSITIONEN.Find(Function(x) x.LeistungsNr = 441 And x.BerechnungsartNr = 9)
Dim FixeTaxePOS = RECHNUNG.POSITIONEN.Find(Function(x) x.LeistungsNr = 441 And x.BerechnungsartNr = 1)
'... sonst wird eine neue Pos eingefügt...
If FixeTaxePOS IsNot Nothing Then
'FixeTaxePOS = New VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen
FixeTaxePOS.LeistungsNr = 441 '441 und nicht 440 laut Brigitte weil Steuerfrei!!
FixeTaxePOS.LeistungsBez = "Fixe Taxe"
FixeTaxePOS.LeistungsBez = "P.P./Fixe Taxe"
FixeTaxePOS.BerechnungsartNr = 9
'RECHNUNG.POSITIONEN.Add(FixeTaxePOS)
'...und der Wert gesetzt.
@@ -3111,7 +3111,7 @@ Public Class usrCntlFaktAbrechnung
If Kreditaufwendungen_Berechnungbetrag <> 0 Then
' MsgBox("1: " & Kreditaufwendungen_Berechnungbetrag)
If Kreditaufwendungen_Berechnungbetrag < 0 Then Kreditaufwendungen_Berechnungbetrag *= -1
Kreditaufwendungen = Math.Round(Kreditaufwendungen_Berechnungbetrag * KD.Kreditaufwendungen, 2) '(Int(Kreditaufwendungen_Berechnungbetrag * KD.Kreditaufwendungen) * 10 + 0.5) / 10
Kreditaufwendungen = Math.round(Kreditaufwendungen_Berechnungbetrag * KD.Kreditaufwendungen, 2) '(Int(Kreditaufwendungen_Berechnungbetrag * KD.Kreditaufwendungen) * 10 + 0.5) / 10
End If
End If
@@ -4819,7 +4819,7 @@ Nächste_Textzeile_lesen:
Dim isMWST As Boolean = False
Dim kdNr = IIf(RECHNUNG.RechnungsKundenNr > 0, RECHNUNG.RechnungsKundenNr, kdFirmaRechnungAn.KdNr)
Dim isRMCKunde = IIf(kdNr = 150000 AndAlso antrag.UStVAn_AntragArt = "MWST", True, False)
Dim isRMCKunde = IIf(kdNr = 150000 AndAlso (antrag.UStVAn_AntragArt = "MWST" Or antrag.UStVAn_AntragArt = "MOEST"), True, False)
Dim sumRMC As Double = 0
Dim sumFremdBeleg As Double = 0
@@ -4827,7 +4827,7 @@ Nächste_Textzeile_lesen:
If antrag IsNot Nothing AndAlso LandBez <> "" AndAlso antrag.UStVAn_AntragArt <> "" Then
If antrag.UStVAn_AntragArt <> "MWST" Then isRMCKunde = False
If (antrag.UStVAn_AntragArt <> "MWST" Or antrag.UStVAn_AntragArt <> "MOEST") Then isRMCKunde = False
Dim LandISO2 = ""
@@ -4839,8 +4839,18 @@ Nächste_Textzeile_lesen:
LandISO2 = VERAG_PROG_ALLGEMEIN.cProgramFunctions.getISO2LandFromISO1Land(LandBez)
End If
'wegen Übersetzungslogik in RE-POS
Dim USTV_EN = antrag.UStVAn_AntragArt.ToString.ToLower.Replace("mwst", "vat")
Dim MÖST_EN = antrag.UStVAn_AntragArt.ToString.ToLower.Replace("moest", "excise")
Dim MÖST_DE = antrag.UStVAn_AntragArt.ToString.ToLower.Replace("oe", "ö")
Dim USTV_RO = antrag.UStVAn_AntragArt.ToString.ToLower.Replace("mwst", "rambursare tva")
Dim MÖST_RO = antrag.UStVAn_AntragArt.ToString.ToLower.Replace("moest", "rambursare acciza")
If OFFERT_LAND = LandISO2 AndAlso OFFERT_LeistungsBez.ToString.ToLower.StartsWith(antrag.UStVAn_AntragArt.ToString.ToLower) Then
If OFFERT_LAND = "HR" Then
'MsgBox("Test1")
End If
If OFFERT_LAND = LandISO2 AndAlso (OFFERT_LeistungsBez.ToString.ToLower.StartsWith(antrag.UStVAn_AntragArt.ToString.ToLower) Or OFFERT_LeistungsBez.ToString.ToLower.StartsWith(USTV_EN) Or OFFERT_LeistungsBez.ToString.ToLower.StartsWith(MÖST_EN) Or OFFERT_LeistungsBez.ToString.ToLower.StartsWith(MÖST_DE) Or OFFERT_LeistungsBez.ToString.ToLower.StartsWith(USTV_RO) Or OFFERT_LeistungsBez.ToString.ToLower.StartsWith(MÖST_RO)) Then
'wenn RMC, dann ebenfalls unterscheiden!

View File

@@ -1,13 +1,9 @@
Imports System.IO
Imports System.Reflection
Imports System.Windows.Documents
Imports DocumentFormat.OpenXml.Drawing.Diagrams
Imports itextsharp.text.pdf
Imports Microsoft.Office.Interop
Imports sun.net.www.protocol
Imports sun.swing
Imports VERAG_PROG_ALLGEMEIN
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
Public Class frmMDM_USTVAntrag
@@ -2914,6 +2910,35 @@ Public Class frmMDM_USTVAntrag
Dim isEU As Boolean = dTLANDEU.AsEnumerable().Where(Function(res) res.Field(Of String)("LandKz") = USTV_ANTRAG.UStVAn_LandKz).Select(Function(res) res.Field(Of Boolean)("MitgliedslandEU")).FirstOrDefault()
Dim kunde As New cKunde(USTV_ANTRAG.UStVAn_KuNr)
Dim kunde_erw As New cKundenErweitert(USTV_ANTRAG.UStVAn_KuNr)
Dim BezAntrag = USTV_ANTRAG.UStVAn_AntragArt & "-Rückerstattung "
If kunde_erw IsNot Nothing Then
If USTV_ANTRAG.UStVAn_AntragArt = "MÖST" Then
Select Case kunde_erw.kde_Fakturierung_Sprache
Case "EN" : BezAntrag = "Excise duty "
Case "RO" : BezAntrag = "Rambursare acciza "
End Select
Else
Select Case kunde_erw.kde_Fakturierung_Sprache
Case "EN" : BezAntrag = "VAT refund "
Case "RO" : BezAntrag = "Rambursare TVA "
End Select
End If
End If
With spedBuch
.Abfertigungsdatum = Today()
@@ -2923,7 +2948,7 @@ Public Class frmMDM_USTVAntrag
.AnzahlSonstiges = 1
.Abfertigungsart = IIf(isEU, 114, 115)
.Abfertigungsanzahl = 1
.Packstücke = USTV_ANTRAG.UStVAn_AntragArt & "-Rückerstattung " & Antrag_LandKz & " / " & USTV_ANTRAG.UStVAn_ReDatVon & " - " & USTV_ANTRAG.UStVAn_ReDatBis
.Packstücke = BezAntrag & Antrag_LandKz & " / " & USTV_ANTRAG.UStVAn_ReDatVon & " - " & USTV_ANTRAG.UStVAn_ReDatBis
.VermittlerKundenNr = IIf(kunde.KundenNrZentrale IsNot Nothing, kunde.KundenNrZentrale, kunde.KundenNr)
If .VermittlerKundenNr = 140000 Or .VermittlerKundenNr = 150000 Then

View File

@@ -342,7 +342,7 @@ Partial Class frmKundenblatt
Me.tbcntrMain.Margin = New System.Windows.Forms.Padding(0)
Me.tbcntrMain.Name = "tbcntrMain"
Me.tbcntrMain.SelectedIndex = 0
Me.tbcntrMain.Size = New System.Drawing.Size(1652, 1198)
Me.tbcntrMain.Size = New System.Drawing.Size(1652, 1215)
Me.tbcntrMain.TabIndex = 3
'
'tbAllgemein
@@ -383,7 +383,7 @@ Partial Class frmKundenblatt
Me.tbAllgemein.Margin = New System.Windows.Forms.Padding(0)
Me.tbAllgemein.Name = "tbAllgemein"
Me.tbAllgemein.Padding = New System.Windows.Forms.Padding(3)
Me.tbAllgemein.Size = New System.Drawing.Size(1644, 1169)
Me.tbAllgemein.Size = New System.Drawing.Size(1644, 1186)
Me.tbAllgemein.TabIndex = 0
Me.tbAllgemein.Text = "Allgemein"
'
@@ -1075,7 +1075,7 @@ Partial Class frmKundenblatt
Me.dgvSperrliste.Name = "dgvSperrliste"
Me.dgvSperrliste.ReadOnly = True
Me.dgvSperrliste.RowHeadersDefaultCellStyle = DataGridViewCellStyle15
Me.dgvSperrliste.Size = New System.Drawing.Size(446, 1126)
Me.dgvSperrliste.Size = New System.Drawing.Size(446, 1143)
Me.dgvSperrliste.TabIndex = 23
'
'PictureBox2
@@ -2244,7 +2244,7 @@ Partial Class frmKundenblatt
Me.tbUSTV.Controls.Add(Me.tbcntrUSTV)
Me.tbUSTV.Location = New System.Drawing.Point(4, 25)
Me.tbUSTV.Name = "tbUSTV"
Me.tbUSTV.Size = New System.Drawing.Size(1644, 1169)
Me.tbUSTV.Size = New System.Drawing.Size(1644, 1186)
Me.tbUSTV.TabIndex = 12
Me.tbUSTV.Text = "USTV"
Me.tbUSTV.UseVisualStyleBackColor = True
@@ -2258,7 +2258,7 @@ Partial Class frmKundenblatt
Me.tbcntrUSTV.Margin = New System.Windows.Forms.Padding(0)
Me.tbcntrUSTV.Name = "tbcntrUSTV"
Me.tbcntrUSTV.SelectedIndex = 0
Me.tbcntrUSTV.Size = New System.Drawing.Size(1644, 1169)
Me.tbcntrUSTV.Size = New System.Drawing.Size(1644, 1186)
Me.tbcntrUSTV.TabIndex = 1
'
'tbUSTVDokumente
@@ -2271,7 +2271,7 @@ Partial Class frmKundenblatt
Me.tbUSTVDokumente.Controls.Add(Me.scanUSTVVollmachten)
Me.tbUSTVDokumente.Location = New System.Drawing.Point(4, 22)
Me.tbUSTVDokumente.Name = "tbUSTVDokumente"
Me.tbUSTVDokumente.Size = New System.Drawing.Size(1636, 1143)
Me.tbUSTVDokumente.Size = New System.Drawing.Size(1636, 1160)
Me.tbUSTVDokumente.TabIndex = 8
Me.tbUSTVDokumente.Text = "Dokumente"
Me.tbUSTVDokumente.UseVisualStyleBackColor = True
@@ -2527,7 +2527,7 @@ Partial Class frmKundenblatt
'
Me.cntxtCntxtMDM.ImageScalingSize = New System.Drawing.Size(24, 24)
Me.cntxtCntxtMDM.Name = "cntxtCntxtMDM"
Me.cntxtCntxtMDM.OwnerItem = Me.ToolStripMenuItem8
Me.cntxtCntxtMDM.OwnerItem = Me.ToolStripMenuItem4
Me.cntxtCntxtMDM.Size = New System.Drawing.Size(61, 4)
Me.cntxtCntxtMDM.Text = "cntxtMDM"
'
@@ -2667,7 +2667,7 @@ Partial Class frmKundenblatt
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.AutoScroll = True
Me.BackColor = System.Drawing.Color.White
Me.ClientSize = New System.Drawing.Size(1595, 1327)
Me.ClientSize = New System.Drawing.Size(1595, 1344)
Me.Controls.Add(Me.lblAbfVerb)
Me.Controls.Add(Me.btnAbfVerb)
Me.Controls.Add(Me.tbcntrMain)

View File

@@ -218,24 +218,24 @@ Public Class usrcntlFremdrechnungen
'UTA
Case "UTA" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") &
" Adressen.AdressenNr, Adressen.[Name 1], [Rechnungsdatum],[Rechnungsnummer_pro_Lieferland] as Rechnungsnummer,Kundennummer,SUM(Gesamtbetrag_Brutto_in_Darstellwährung) as Bruttobetrag,SUM(Gesamtbetrag_Netto_in_Darstellwährung) as Nettobetrag, SUM(Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) as MWSt,[daId],[Lieferland_ISO2] as Land, 'RE' as Art, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblUTAImportNew] inner join adressen on Kundennummer = UTAKundenNr where 1 = 1 " & IIf(kdNr > 0, " AND [AdressenNr]=" & kdNr, "") & " AND [Rechnungsdatum] " & setSQLWhere(SDLNrTmp, "Lieferland_ISO2") & " group by Adressen.AdressenNr, Adressen.[Name 1],[Rechnungsnummer_pro_Lieferland],[Rechnungsdatum],Kundennummer,[daId],[Lieferland_ISO2]"
" Adressen.AdressenNr, Adressen.[Name 1], [Rechnungsdatum],[Rechnungsnummer_pro_Lieferland] as Rechnungsnummer,Kundennummer,SUM(Gesamtbetrag_Brutto_in_Darstellwährung) as Bruttobetrag,SUM(Gesamtbetrag_Netto_in_Darstellwährung) as Nettobetrag, SUM(Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) as MWSt,[daId],[Lieferland_ISO2] as Land, 'RE' as Art, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden, cast(archiv as bit) as archiv FROM [VERAG].[dbo].[tblUTAImportNew] inner join adressen on Kundennummer = UTAKundenNr where 1 = 1 " & IIf(kdNr > 0, " AND [AdressenNr]=" & kdNr, "") & " AND [Rechnungsdatum] " & setSQLWhere(SDLNrTmp, "Lieferland_ISO2") & " group by Adressen.AdressenNr, Adressen.[Name 1],[Rechnungsnummer_pro_Lieferland],[Rechnungsdatum],Kundennummer,[daId],[Lieferland_ISO2], archiv"
SQL_STR &= " UNION ALL SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") & " Adressen.AdressenNr, Adressen.[Name 1],[Datum], [RechnungsNr],[KundenNr],0,0,0,[daId],'',[DocumentTyp], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblUTADocuments] inner join adressen on KundenNr = UTAKundenNr where 1 = 1 " & IIf(kdNr > 0, " AND [AdressenNr]=" & kdNr, "") & " and [Datum] " & setSQLWhere("_", "") & " order by Rechnungsdatum desc"
SQL_STR &= " UNION ALL SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") & " Adressen.AdressenNr, Adressen.[Name 1],[Datum], [RechnungsNr],[KundenNr],0,0,0,[daId],'',[DocumentTyp], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden, cast(0 as bit) as archiv FROM [VERAG].[dbo].[tblUTADocuments] inner join adressen on KundenNr = UTAKundenNr where 1 = 1 " & IIf(kdNr > 0, " AND [AdressenNr]=" & kdNr, "") & " and [Datum] " & setSQLWhere("_", "") & " order by Rechnungsdatum desc"
'PLOSE
Case "PLOSE" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") &
" Adressen.AdressenNr, Adressen.[Name 1],[plInv_SupplierRechnungsDatum] as Rechnungsdatum, [plInv_SupplierRechnungsNr] as Rechnungsnummer,[plInv_PLOSEKundennummer] as Kundennummer,[plInv_Nettobetrag] as Nettobetrag,[plInv_MWSTBetrag] as MWST,[plInv_Bruttobetrag] as Bruttobetrag,[plInv_daId] as daId, [plInv_SupplierCountry] as Land, cast(case when [plInv_daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblPLOSE_Inv_Data inner join Adressen on Adressen.PLOSEKundenNr = plInv_PLOSEKundennummer where 1 = 1 " & IIf(kdNr > 0, " AND Adressen.AdressenNr=" & kdNr, "") & " and [plInv_SupplierRechnungsDatum] " & setSQLWhere(SDLNrTmp, "plInv_SupplierCountry") & " Order by plInv_SupplierRechnungsDatum desc, [plInv_SupplierRechnungsNr]"
" Adressen.AdressenNr, Adressen.[Name 1],[plInv_SupplierRechnungsDatum] as Rechnungsdatum, [plInv_SupplierRechnungsNr] as Rechnungsnummer,[plInv_PLOSEKundennummer] as Kundennummer,[plInv_Nettobetrag] as Nettobetrag,[plInv_MWSTBetrag] as MWST,[plInv_Bruttobetrag] as Bruttobetrag,[plInv_daId] as daId, [plInv_SupplierCountry] as Land, cast(case when [plInv_daId] is not null then 1 else 0 end as bit) as PDFvorhanden, plInv_Archiv as archiv FROM tblPLOSE_Inv_Data inner join Adressen on Adressen.PLOSEKundenNr = plInv_PLOSEKundennummer where 1 = 1 " & IIf(kdNr > 0, " AND Adressen.AdressenNr=" & kdNr, "") & " and [plInv_SupplierRechnungsDatum] " & setSQLWhere(SDLNrTmp, "plInv_SupplierCountry") & " Order by plInv_SupplierRechnungsDatum desc, [plInv_SupplierRechnungsNr]"
'MSE
Case "MSE" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") &
" partner_customer_number as AdressenNr, customer_name as [Name 1], [invoice_date] as Rechnungsdatum, [invoice_id] as Rechnungsnummer/*,[invoice_nr]*/,[customer_number] as Kundennummer, daId, [total_amount_euro] as Brutto_EUR ,[total_vat_amount_euro] as MWST,[country] as Land, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblMSEInvoices inner join tblMSECustomers on customer_id = [customer_number] where 1 = 1 " & IIf(kdNr > 0, " AND [partner_customer_number]=" & kdNr, "") & " and [invoice_date] " & setSQLWhere(SDLNrTmp, "country") & " order by invoice_date desc, invoice_id"
" partner_customer_number as AdressenNr, customer_name as [Name 1], [invoice_date] as Rechnungsdatum, [invoice_id] as Rechnungsnummer/*,[invoice_nr]*/,[customer_number] as Kundennummer, daId, [total_amount_euro] as Brutto_EUR ,[total_vat_amount_euro] as MWST,[country] as Land, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden, archiv FROM tblMSEInvoices inner join tblMSECustomers on customer_id = [customer_number] where 1 = 1 " & IIf(kdNr > 0, " AND [partner_customer_number]=" & kdNr, "") & " and [invoice_date] " & setSQLWhere(SDLNrTmp, "country") & " order by invoice_date desc, invoice_id"
'VERAG
Case "VERAG" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") &
" Adressen.AdressenNr, Adressen.[Name 1], tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer , tblTrdinInvoice.SteuerbetragLokal, 1 as daId, cast(1 as bit) as PDFvorhanden FROM tblTrdinInvoice inner join Adressen on KundenNrZentrale = AdressenNr WHERE 1 = 1 " & IIf(kdNr > 0, " AND tblTrdinInvoice.RechnungsKundenNr=" & kdNr, "") & " AND tblTrdinInvoice.FilialenNr = 4814 and tblTrdinInvoice.Rechnungsdatum " & setSQLWhere(SDLNrTmp, "'AT'") & " ORDER BY tblTrdinInvoice.Rechnungsdatum desc, tblTrdinInvoice.Rechnungsnummer"
'RMC
Case "RMC" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") &
"Adressen.AdressenNr, Adressen.[Name 1],[rmc_reDatum] as Rechnungsdatum,[rmc_reNr] as Rechnungsnummer,rmc_kdNr as Kundennummer,[rmc_betragNetto] as Nettobetrag,[rmc_betragBrutto] as Bruttobetrag,[rmc_waehrung] as Währung ,[rmc_euroBrutto] as Brutto_EUR,[rmc_daId] as daId,[rmc_betragMWST] as MWST,rmc_landKZ as Land, cast(case when [rmc_daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblRMCImport] inner join Adressen on Adressen.WölflKundenNr = rmc_kdNr where 1 = 1 " & IIf(kdNr > 0, " AND AdressenNr=" & kdNr, "") & " and [rmc_reDatum] " & setSQLWhere(SDLNrTmp, "rmc_landKZ") & " order by rmc_reDatum desc, rmc_reNr"
"Adressen.AdressenNr, Adressen.[Name 1],[rmc_reDatum] as Rechnungsdatum,[rmc_reNr] as Rechnungsnummer,rmc_kdNr as Kundennummer,[rmc_betragNetto] as Nettobetrag,[rmc_betragBrutto] as Bruttobetrag,[rmc_waehrung] as Währung ,[rmc_euroBrutto] as Brutto_EUR,[rmc_daId] as daId,[rmc_betragMWST] as MWST,rmc_landKZ as Land, cast(case when [rmc_daId] is not null then 1 else 0 end as bit) as PDFvorhanden, rmc_archiv as archiv FROM [VERAG].[dbo].[tblRMCImport] inner join Adressen on Adressen.WölflKundenNr = rmc_kdNr where 1 = 1 " & IIf(kdNr > 0, " AND AdressenNr=" & kdNr, "") & " and [rmc_reDatum] " & setSQLWhere(SDLNrTmp, "rmc_landKZ") & " order by rmc_reDatum desc, rmc_reNr"
Case "ALLE" : Dim anzahl As Integer = anzahlTop / 6 : SQL_STR = " select * from (SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") &
"

View File

@@ -484,7 +484,7 @@ Public Class usrcntlFakturierung
' Die Abfrage ermittelt aus den Rechnungspositonen,
' das Vorkommen (Anzahl Porto/Papiere) pro RechnungsKundenNr
' Status=0, Sammelrechnung=6, LeistungsNr=440.
' Status=0, Sammelrechnung=6, LeistungsNr=441.
Dim isSet As Boolean = False
Dim sqlString = "SELECT
@@ -497,8 +497,8 @@ Public Class usrcntlFakturierung
Rechnungsausgang.Währungscode,
isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %],
cast(Rechnungsausgang.Lastschrift as bit) as Lastschrift,
SUM(CASE WHEN LeistungsNr = 440 and LeistungsBez = 'Fixe Taxe' THEN Anzahl ELSE 0 END) AS AnzahlFT,
SUM(CASE WHEN LeistungsNr = 440 and LeistungsBez = 'Fixe Taxe' THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivFT
SUM(CASE WHEN LeistungsNr = 441 THEN Anzahl ELSE 0 END) AS AnzahlFT,
SUM(CASE WHEN LeistungsNr = 441 THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivFT
FROM
Rechnungsausgang
INNER JOIN
@@ -520,7 +520,7 @@ Public Class usrcntlFakturierung
Rechnungsausgang.[Steuersatz %],
Rechnungsausgang.Lastschrift
HAVING
SUM(CASE WHEN LeistungsNr = 440 and LeistungsBez = 'Fixe Taxe' THEN Anzahl ELSE 0 END) > 0
SUM(CASE WHEN LeistungsNr = 441 THEN Anzahl ELSE 0 END) > 0
ORDER BY
Rechnungsausgang.Firma_ID,
Rechnungsausgang.Status,
@@ -599,7 +599,7 @@ Public Class usrcntlFakturierung
Dim dtREPOSANZ As DataTable = (New 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 and LeistungsBez = 'Fixe Taxe'", "FMZOLL")
Dim dtREPOSANZ As DataTable = (New 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 = 441", "FMZOLL")
If dtREPOSANZ.Rows.Count > 0 Then