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" If RECHNUNG.RechnungSprache = "DE" Or FindPOS.LeistungsBez Is Nothing Then FindPOS.LeistungsBez = "Vorlageprovision"
'RECHNUNG.POSITIONEN.Add(FindPOS) 'RECHNUNG.POSITIONEN.Add(FindPOS)
FindPOS.Anzahl = 1 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. '...und der Wert gesetzt.
initSteuerbetraege(RECHNUNG, FindPOS) initSteuerbetraege(RECHNUNG, FindPOS)
@@ -2530,7 +2530,7 @@ Public Class usrCntlFaktAbrechnung
If RECHNUNG.RechnungSprache = "DE" Or FindPOS.LeistungsBez Is Nothing Then FindPOS.LeistungsBez = "Kapitalbereitstellung" If RECHNUNG.RechnungSprache = "DE" Or FindPOS.LeistungsBez Is Nothing Then FindPOS.LeistungsBez = "Kapitalbereitstellung"
'RECHNUNG.POSITIONEN.Add(FindPOS) 'RECHNUNG.POSITIONEN.Add(FindPOS)
FindPOS.Anzahl = 1 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. '...und der Wert gesetzt.
initSteuerbetraege(RECHNUNG, FindPOS) initSteuerbetraege(RECHNUNG, FindPOS)
@@ -2568,7 +2568,7 @@ Public Class usrCntlFaktAbrechnung
For Each POS In RECHNUNG.POSITIONEN 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 = 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 curBGebBetrag = 0
@@ -2656,7 +2656,7 @@ Public Class usrCntlFaktAbrechnung
Dim curBGebMinBetrag = BGebMinBetrag 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 Dim curBGebBetrag As Double = 0
curBGebBetrag = curBGebErrBetrag 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! 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 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 row.Cells("Preis").Value = summeRMCBearb
End If End If
End If End If
@@ -2751,7 +2751,7 @@ Public Class usrCntlFaktAbrechnung
Else Else
If minBetragRMCUsed Then If minBetragRMCUsed Then
If curBearbPreis > curBGebBetrag AndAlso summeRMCBearb > 0 Then If curBearbPreis > curBGebBetrag AndAlso summeRMCBearb > 0 Then
If curBearbPreis <> summeRMCBearb Then row.Cells("Preis").Value = summeRMCBearb If curBearbPreis <> summeRMCBearb Then row.Cells("Preis").Value = summeRMCBearb
@@ -2950,8 +2950,8 @@ Public Class usrCntlFaktAbrechnung
Next Next
' mind??KD ' mind??KD
If BS415_Berechnungbetrag <> 0 Then If BS415_Berechnungbetrag <> 0 Then
If BS415_Berechnungbetrag <0 Then BS415_Berechnungbetrag *= -1 If BS415_Berechnungbetrag < 0 Then BS415_Berechnungbetrag *= -1
BS415= Int(BS415_Berechnungbetrag * KD.Bankspesen + 0.5) BS415 = Int(BS415_Berechnungbetrag * KD.Bankspesen + 0.5)
End If End If
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) Shared Sub setFixeTaxeMin(ByRef RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang, ByRef minBetrag As Double, fixeTaxe As Double)
Dim FixeTaxe_Berechnungbetrag As Double = 0 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 (RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag) >= minBetrag Then Exit Sub
If fixeTaxe <= 0 Then Exit Sub If fixeTaxe <= 0 Then Exit Sub
'Sucht, ob Fixetaxe schon vorhanden ist,... '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... '... sonst wird eine neue Pos eingefügt...
If FixeTaxePOS IsNot Nothing Then If FixeTaxePOS IsNot Nothing Then
'FixeTaxePOS = New VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen 'FixeTaxePOS = New VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen
FixeTaxePOS.LeistungsNr = 441 '441 und nicht 440 laut Brigitte weil Steuerfrei!! FixeTaxePOS.LeistungsNr = 441 '441 und nicht 440 laut Brigitte weil Steuerfrei!!
FixeTaxePOS.LeistungsBez = "Fixe Taxe" FixeTaxePOS.LeistungsBez = "P.P./Fixe Taxe"
FixeTaxePOS.BerechnungsartNr = 9 FixeTaxePOS.BerechnungsartNr = 9
'RECHNUNG.POSITIONEN.Add(FixeTaxePOS) 'RECHNUNG.POSITIONEN.Add(FixeTaxePOS)
'...und der Wert gesetzt. '...und der Wert gesetzt.
@@ -3111,7 +3111,7 @@ Public Class usrCntlFaktAbrechnung
If Kreditaufwendungen_Berechnungbetrag <> 0 Then If Kreditaufwendungen_Berechnungbetrag <> 0 Then
' MsgBox("1: " & Kreditaufwendungen_Berechnungbetrag) ' MsgBox("1: " & Kreditaufwendungen_Berechnungbetrag)
If Kreditaufwendungen_Berechnungbetrag < 0 Then Kreditaufwendungen_Berechnungbetrag *= -1 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
End If End If
@@ -4819,7 +4819,7 @@ Nächste_Textzeile_lesen:
Dim isMWST As Boolean = False Dim isMWST As Boolean = False
Dim kdNr = IIf(RECHNUNG.RechnungsKundenNr > 0, RECHNUNG.RechnungsKundenNr, kdFirmaRechnungAn.KdNr) 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 sumRMC As Double = 0
Dim sumFremdBeleg 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 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 = "" Dim LandISO2 = ""
@@ -4839,8 +4839,18 @@ Nächste_Textzeile_lesen:
LandISO2 = VERAG_PROG_ALLGEMEIN.cProgramFunctions.getISO2LandFromISO1Land(LandBez) LandISO2 = VERAG_PROG_ALLGEMEIN.cProgramFunctions.getISO2LandFromISO1Land(LandBez)
End If 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! 'wenn RMC, dann ebenfalls unterscheiden!

View File

@@ -1,13 +1,9 @@
Imports System.IO Imports System.IO
Imports System.Reflection Imports System.Reflection
Imports System.Windows.Documents Imports System.Windows.Documents
Imports DocumentFormat.OpenXml.Drawing.Diagrams
Imports itextsharp.text.pdf Imports itextsharp.text.pdf
Imports Microsoft.Office.Interop Imports Microsoft.Office.Interop
Imports sun.net.www.protocol
Imports sun.swing
Imports VERAG_PROG_ALLGEMEIN Imports VERAG_PROG_ALLGEMEIN
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
Public Class frmMDM_USTVAntrag 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 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 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 With spedBuch
.Abfertigungsdatum = Today() .Abfertigungsdatum = Today()
@@ -2923,7 +2948,7 @@ Public Class frmMDM_USTVAntrag
.AnzahlSonstiges = 1 .AnzahlSonstiges = 1
.Abfertigungsart = IIf(isEU, 114, 115) .Abfertigungsart = IIf(isEU, 114, 115)
.Abfertigungsanzahl = 1 .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) .VermittlerKundenNr = IIf(kunde.KundenNrZentrale IsNot Nothing, kunde.KundenNrZentrale, kunde.KundenNr)
If .VermittlerKundenNr = 140000 Or .VermittlerKundenNr = 150000 Then 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.Margin = New System.Windows.Forms.Padding(0)
Me.tbcntrMain.Name = "tbcntrMain" Me.tbcntrMain.Name = "tbcntrMain"
Me.tbcntrMain.SelectedIndex = 0 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 Me.tbcntrMain.TabIndex = 3
' '
'tbAllgemein 'tbAllgemein
@@ -383,7 +383,7 @@ Partial Class frmKundenblatt
Me.tbAllgemein.Margin = New System.Windows.Forms.Padding(0) Me.tbAllgemein.Margin = New System.Windows.Forms.Padding(0)
Me.tbAllgemein.Name = "tbAllgemein" Me.tbAllgemein.Name = "tbAllgemein"
Me.tbAllgemein.Padding = New System.Windows.Forms.Padding(3) 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.TabIndex = 0
Me.tbAllgemein.Text = "Allgemein" Me.tbAllgemein.Text = "Allgemein"
' '
@@ -1075,7 +1075,7 @@ Partial Class frmKundenblatt
Me.dgvSperrliste.Name = "dgvSperrliste" Me.dgvSperrliste.Name = "dgvSperrliste"
Me.dgvSperrliste.ReadOnly = True Me.dgvSperrliste.ReadOnly = True
Me.dgvSperrliste.RowHeadersDefaultCellStyle = DataGridViewCellStyle15 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 Me.dgvSperrliste.TabIndex = 23
' '
'PictureBox2 'PictureBox2
@@ -2244,7 +2244,7 @@ Partial Class frmKundenblatt
Me.tbUSTV.Controls.Add(Me.tbcntrUSTV) Me.tbUSTV.Controls.Add(Me.tbcntrUSTV)
Me.tbUSTV.Location = New System.Drawing.Point(4, 25) Me.tbUSTV.Location = New System.Drawing.Point(4, 25)
Me.tbUSTV.Name = "tbUSTV" 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.TabIndex = 12
Me.tbUSTV.Text = "USTV" Me.tbUSTV.Text = "USTV"
Me.tbUSTV.UseVisualStyleBackColor = True Me.tbUSTV.UseVisualStyleBackColor = True
@@ -2258,7 +2258,7 @@ Partial Class frmKundenblatt
Me.tbcntrUSTV.Margin = New System.Windows.Forms.Padding(0) Me.tbcntrUSTV.Margin = New System.Windows.Forms.Padding(0)
Me.tbcntrUSTV.Name = "tbcntrUSTV" Me.tbcntrUSTV.Name = "tbcntrUSTV"
Me.tbcntrUSTV.SelectedIndex = 0 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 Me.tbcntrUSTV.TabIndex = 1
' '
'tbUSTVDokumente 'tbUSTVDokumente
@@ -2271,7 +2271,7 @@ Partial Class frmKundenblatt
Me.tbUSTVDokumente.Controls.Add(Me.scanUSTVVollmachten) Me.tbUSTVDokumente.Controls.Add(Me.scanUSTVVollmachten)
Me.tbUSTVDokumente.Location = New System.Drawing.Point(4, 22) Me.tbUSTVDokumente.Location = New System.Drawing.Point(4, 22)
Me.tbUSTVDokumente.Name = "tbUSTVDokumente" 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.TabIndex = 8
Me.tbUSTVDokumente.Text = "Dokumente" Me.tbUSTVDokumente.Text = "Dokumente"
Me.tbUSTVDokumente.UseVisualStyleBackColor = True Me.tbUSTVDokumente.UseVisualStyleBackColor = True
@@ -2527,7 +2527,7 @@ Partial Class frmKundenblatt
' '
Me.cntxtCntxtMDM.ImageScalingSize = New System.Drawing.Size(24, 24) Me.cntxtCntxtMDM.ImageScalingSize = New System.Drawing.Size(24, 24)
Me.cntxtCntxtMDM.Name = "cntxtCntxtMDM" 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.Size = New System.Drawing.Size(61, 4)
Me.cntxtCntxtMDM.Text = "cntxtMDM" Me.cntxtCntxtMDM.Text = "cntxtMDM"
' '
@@ -2667,7 +2667,7 @@ Partial Class frmKundenblatt
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.AutoScroll = True Me.AutoScroll = True
Me.BackColor = System.Drawing.Color.White 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.lblAbfVerb)
Me.Controls.Add(Me.btnAbfVerb) Me.Controls.Add(Me.btnAbfVerb)
Me.Controls.Add(Me.tbcntrMain) Me.Controls.Add(Me.tbcntrMain)

View File

@@ -218,24 +218,24 @@ Public Class usrcntlFremdrechnungen
'UTA 'UTA
Case "UTA" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") & 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 'PLOSE
Case "PLOSE" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") & 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 'MSE
Case "MSE" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") & 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 'VERAG
Case "VERAG" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") & 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" " 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 'RMC
Case "RMC" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") & 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, "") & 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, ' Die Abfrage ermittelt aus den Rechnungspositonen,
' das Vorkommen (Anzahl Porto/Papiere) pro RechnungsKundenNr ' 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 isSet As Boolean = False
Dim sqlString = "SELECT Dim sqlString = "SELECT
@@ -497,8 +497,8 @@ Public Class usrcntlFakturierung
Rechnungsausgang.Währungscode, Rechnungsausgang.Währungscode,
isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %], isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %],
cast(Rechnungsausgang.Lastschrift as bit) as Lastschrift, 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 = 441 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 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivFT
FROM FROM
Rechnungsausgang Rechnungsausgang
INNER JOIN INNER JOIN
@@ -520,7 +520,7 @@ Public Class usrcntlFakturierung
Rechnungsausgang.[Steuersatz %], Rechnungsausgang.[Steuersatz %],
Rechnungsausgang.Lastschrift Rechnungsausgang.Lastschrift
HAVING 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 ORDER BY
Rechnungsausgang.Firma_ID, Rechnungsausgang.Firma_ID,
Rechnungsausgang.Status, 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 If dtREPOSANZ.Rows.Count > 0 Then