FAktabr, UstAntrag, etc.

This commit is contained in:
2025-05-05 17:37:02 +02:00
parent 8ce4b675e4
commit 15c81d6254
5 changed files with 58 additions and 15 deletions

View File

@@ -646,9 +646,30 @@ Public Class frmFaktEmail
Mail.Display() Mail.Display()
'------------------------------------------------------------------------------------------ If RECHNUNG.FilialenNr = 4817 And Firma_ID = 19 Then
' STB /FA
send_StbFAMail(RECHNUNG.RechnungsKundenNr, " Rg-Nr.: " & RechnungsNr & abfNr, RECHNUNG.RechnungsNr) Dim SPEDBUCH = New VERAG_PROG_ALLGEMEIN.cSpeditionsbuch(RECHNUNG.FilialenNr, RECHNUNG.AbfertigungsNr, RECHNUNG.UnterNr)
If SPEDBUCH.hasEntry AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115) Then
Dim USTV_ANTRAG As New cUSTVAntrag(RECHNUNG.ErfassungsNr)
Dim ANTR_ERSTATTUNG As New VERAG_PROG_ALLGEMEIN.cUStVErstattungPositionen(USTV_ANTRAG.UStVAn_ID, 1)
If Not ANTR_ERSTATTUNG.hasEntry Then
ANTR_ERSTATTUNG.GutschriftsDatum = RECHNUNG.RechnungsDatum
ANTR_ERSTATTUNG.GutschriftsNr = RECHNUNG.RechnungsNr
ANTR_ERSTATTUNG.UStVEr_Umrechnungskurs = 1
ANTR_ERSTATTUNG.UStVEr_USteuerbetrag = RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag
ANTR_ERSTATTUNG.UStVEr_USteuerbetragEUR = RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag
ANTR_ERSTATTUNG.SAVE()
End If
End If
End If
'------------------------------------------------------------------------------------------
' STB /FA
send_StbFAMail(RECHNUNG.RechnungsKundenNr, " Rg-Nr.: " & RechnungsNr & abfNr, RECHNUNG.RechnungsNr)
'------------------------------------------------------------------------------------------ '------------------------------------------------------------------------------------------
Catch ex As Exception Catch ex As Exception

View File

@@ -1419,13 +1419,31 @@ Public Class usrCntlFaktAbrechnung
POS.Preis = If(r.Cells("Preis").Value Is DBNull.Value, 0, CDbl(r.Cells("Preis").Value.ToString.Replace(".", ""))) POS.Preis = If(r.Cells("Preis").Value Is DBNull.Value, 0, CDbl(r.Cells("Preis").Value.ToString.Replace(".", "")))
POS.Anzahl = If(r.Cells("Anzahl").Value Is DBNull.Value, 0, r.Cells("Anzahl").Value) POS.Anzahl = If(r.Cells("Anzahl").Value Is DBNull.Value, 0, r.Cells("Anzahl").Value)
If SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Then 'MWST-Abrechnung! If SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Or SPEDBUCH.Abfertigungsart = 10 Then 'MWST-Abrechnung! + Kompat. zu FM-Zoll
Dim LeistungsBez = r.Cells("LeistungsBez").Value Dim LeistungsBez = r.Cells("LeistungsBez").Value
If LeistungsBez <> "" AndAlso SPEDBUCH.Packstücke.ToString.StartsWith(LeistungsBez.ToString) Then If LeistungsBez <> "" Then
POS.Anzahl = 1 Dim isMWST As Boolean = False
POS.Preis = SPEDBUCH.Rechnungsbetrag * -1 If SPEDBUCH.Packstücke.ToString.Contains("Mehrwertsteuerrückerstattung") Then
End If Dim LandNr As String = SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung ", "")
LandNr = LandNr.Substring(0, 2).Trim()
Dim LandBez = SQL.getValueTxtBySql("select LandKz from [Länderverzeichnis für die Außenhandelsstatistik] where LandNr = " & LandNr, "FMZOLL")
If LandBez <> "" AndAlso SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung " & LandNr, "MWSt-Rückerstattung " & LandBez).StartsWith(LeistungsBez.ToString) Then isMWST = True
Else
If SPEDBUCH.Packstücke.ToString().StartsWith(LeistungsBez.ToString) Then isMWST = True
End If
If isMWST Then
POS.Anzahl = 1
If POS.Preis = 0 Then
POS.Preis = IIf(SPEDBUCH.Rechnungsbetrag IsNot Nothing, 0, SPEDBUCH.Rechnungsbetrag) * -1
End If
End If
End If
End If End If
If POS.Anzahl = 0 And POS.BerechnungsartNr = 8 And POS.Preis <> 0 Then If POS.Anzahl = 0 And POS.BerechnungsartNr = 8 And POS.Preis <> 0 Then

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben: ' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.3.9.6")> <Assembly: AssemblyVersion("1.3.9.7")>
<Assembly: AssemblyFileVersion("1.3.9.6")> <Assembly: AssemblyFileVersion("1.3.9.7")>

View File

@@ -19,6 +19,7 @@ Public Class frmMDM_USTVAntrag
Dim von, bis As Date Dim von, bis As Date
Dim func As New cMDMFunctionsAllgemein Dim func As New cMDMFunctionsAllgemein
Dim dTLANDEU As New DataTable Dim dTLANDEU As New DataTable
Dim DiffernezbetragEUR As Double
Sub New(UStVAn_ID) Sub New(UStVAn_ID)
@@ -192,7 +193,7 @@ Public Class frmMDM_USTVAntrag
Dim GesamtUSteuerEUR As Double = SQL.DLookup("isnull(sum(UStVPo_USteuerbetragEUR),0)", "tblUStVPositionen", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") Dim GesamtUSteuerEUR As Double = SQL.DLookup("isnull(sum(UStVPo_USteuerbetragEUR),0)", "tblUStVPositionen", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0")
Dim GesamtErstattungEUR As Double = SQL.DLookup("isnull(sum(UStVEr_USteuerbetragEUR),0)", "tblUStVErstattung", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") Dim GesamtErstattungEUR As Double = SQL.DLookup("isnull(sum(UStVEr_USteuerbetragEUR),0)", "tblUStVErstattung", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0")
Dim DiffernezbetragEUR As Double = GesamtUSteuerEUR - GesamtErstattungEUR DiffernezbetragEUR = GesamtUSteuerEUR - GesamtErstattungEUR
Dim GesamtUSteuer As Double = SQL.DLookup("isnull(sum(UStVPo_USteuerbetrag),0)", "tblUStVPositionen", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") Dim GesamtUSteuer As Double = SQL.DLookup("isnull(sum(UStVPo_USteuerbetrag),0)", "tblUStVPositionen", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0")
Dim GesamtErstattung As Double = SQL.DLookup("isnull(sum(UStVEr_USteuerbetrag),0)", "tblUStVErstattung", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") Dim GesamtErstattung As Double = SQL.DLookup("isnull(sum(UStVEr_USteuerbetrag),0)", "tblUStVErstattung", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0")
@@ -2677,7 +2678,7 @@ Public Class frmMDM_USTVAntrag
Exit Sub Exit Sub
End If End If
If USTV_ANTRAG.UStVAn_ErstattungsbetragEUR = 0 Then If DiffernezbetragEUR = 0 Then
If Not vbYes = MsgBox("Der Erstattungsbetrag beträgt 0 EUR." & vbNewLine & "Fortfahren?", vbYesNo) Then Exit Sub If Not vbYes = MsgBox("Der Erstattungsbetrag beträgt 0 EUR." & vbNewLine & "Fortfahren?", vbYesNo) Then Exit Sub
End If End If
@@ -2694,7 +2695,7 @@ Public Class frmMDM_USTVAntrag
.Abfertigungsanzahl = 1 .Abfertigungsanzahl = 1
.Packstücke = "MWSt-Rückerstattung " & Antrag_LandKz & " / " & USTV_ANTRAG.UStVAn_ReDatVon & " - " & USTV_ANTRAG.UStVAn_ReDatBis .Packstücke = "MWSt-Rückerstattung " & Antrag_LandKz & " / " & USTV_ANTRAG.UStVAn_ReDatVon & " - " & USTV_ANTRAG.UStVAn_ReDatBis
.VermittlerKundenNr = USTV_ANTRAG.UStVAn_KuNr .VermittlerKundenNr = USTV_ANTRAG.UStVAn_KuNr
.Rechnungsbetrag = USTV_ANTRAG.UStVAn_ErstattungsbetragEUR * -1 .Rechnungsbetrag = DiffernezbetragEUR * -1
If .SAVE() Then If .SAVE() Then
MsgBox("Sped-Eintrag wurde angelegt") MsgBox("Sped-Eintrag wurde angelegt")
init() init()

View File

@@ -1,7 +1,6 @@
 
Imports System.Data.SqlClient Imports System.Data.SqlClient
Imports System.Reflection Imports System.Reflection
Imports Org.BouncyCastle.Ocsp
Public Class cUSTVAntrag Public Class cUSTVAntrag
@@ -475,6 +474,8 @@ Public Class cUStVErstattungPositionen
Property UStVEr_Zeitstempel As Object = Nothing Property UStVEr_Zeitstempel As Object = Nothing
Property UStVEr_daId As Object = Nothing Property UStVEr_daId As Object = Nothing
Public hasEntry = False
Dim SQL As New SQL Dim SQL As New SQL
@@ -514,6 +515,8 @@ Public Class cUStVErstattungPositionen
Public Sub LOAD(UStVAn_ID, UStVEr_ID) Public Sub LOAD(UStVAn_ID, UStVEr_ID)
Try Try
hasEntry = False
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL() Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT * FROM tblUStVErstattung WHERE UStVAn_ID=@UStVAn_ID AND UStVEr_ID=@UStVEr_ID ", conn) Using cmd As New SqlCommand("SELECT * FROM tblUStVErstattung WHERE UStVAn_ID=@UStVAn_ID AND UStVEr_ID=@UStVEr_ID ", conn)
cmd.Parameters.AddWithValue("@UStVAn_ID", UStVAn_ID) cmd.Parameters.AddWithValue("@UStVAn_ID", UStVAn_ID)
@@ -529,7 +532,7 @@ Public Class cUStVErstattungPositionen
propInfo.SetValue(Me, dr.Item(i.Text)) propInfo.SetValue(Me, dr.Item(i.Text))
End If End If
Next Next
hasEntry = True
End If End If
dr.Close() dr.Close()
End Using End Using