diff --git a/SDL/Fakturierung/frmAbrechnungsMaskeEinzeln.vb b/SDL/Fakturierung/frmAbrechnungsMaskeEinzeln.vb index 6c4e655e..7fb8fd60 100644 --- a/SDL/Fakturierung/frmAbrechnungsMaskeEinzeln.vb +++ b/SDL/Fakturierung/frmAbrechnungsMaskeEinzeln.vb @@ -3,13 +3,16 @@ Dim FilialenNr As Integer = -1 Dim AbfertigungsNr As Integer = -1 Dim RK_ID As Integer = -1 - Sub New(FilialenNr, AbfertigungsNr) + Dim BelegKZ As String = "AR" + + Sub New(FilialenNr, AbfertigungsNr, Optional BelegKZ = "AR") ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() 'MsgBox(FilialenNr) If FilialenNr IsNot Nothing AndAlso IsNumeric(FilialenNr) Then Me.FilialenNr = FilialenNr If AbfertigungsNr IsNot Nothing AndAlso IsNumeric(AbfertigungsNr) Then Me.AbfertigungsNr = AbfertigungsNr + If BelegKZ IsNot Nothing AndAlso BelegKZ <> "" Then Me.BelegKZ = BelegKZ ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. End Sub @@ -42,6 +45,12 @@ UsrCntlFaktAbrechnung1.txtAbfertigungsnummer.Text = AbfertigungsNr UsrCntlFaktAbrechnung1.cboSpedBuchUnterNr.Focus() + Select Case BelegKZ + Case "AR" : UsrCntlFaktAbrechnung1.cboRgGS.SelectedIndex = 0 + Case "AG" : UsrCntlFaktAbrechnung1.cboRgGS.SelectedIndex = 1 + End Select + + ElseIf RK_ID > 0 Then Dim dt As DataTable = SQL.loadDgvBySql("select top(1) FilialenNr, AbfertigungsNr from Rechnungsausgang where RK_ID = " & RK_ID, "FMZOLL") @@ -54,10 +63,6 @@ End If - - - - End If End Sub diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb index ead59bda..2eb57392 100644 --- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb +++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb @@ -1,6 +1,7 @@  Imports System.IO Imports System.Web.UI.WebControls.Expressions +Imports Chilkat Imports VERAG_PROG_ALLGEMEIN Public Class usrCntlFaktAbrechnung @@ -1418,6 +1419,14 @@ Public Class usrCntlFaktAbrechnung 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) + If SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Then 'MWST-Abrechnung! + Dim LeistungsBez = r.Cells("LeistungsBez").Value + If LeistungsBez <> "" AndAlso SPEDBUCH.Packstücke.ToString.StartsWith(LeistungsBez.ToString) Then + POS.Anzahl = 1 + POS.Preis = SPEDBUCH.Rechnungsbetrag * -1 + End If + + End If If POS.Anzahl = 0 And POS.BerechnungsartNr = 8 And POS.Preis <> 0 Then POS.Preis = 0 'Wenn Anzahl =0 bei Berart 8, dann Preis auch 0 @@ -1466,7 +1475,7 @@ Public Class usrCntlFaktAbrechnung ' Try : If (r.Cells("BerechnungsartNr").Value = 8) And r.Cells("Anzahl").Value > 1 Then r.Cells("Anzahl").Value = 1 ' Catch ex As Exception : End Try - Try : r.Cells("Preis").ReadOnly = (r.Cells("BerechnungsartNr").Value = 8) + Try : r.Cells("Preis").ReadOnly = (IIf(SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115, False, r.Cells("BerechnungsartNr").Value = 8)) Catch ex As Exception : End Try 'End If @@ -1736,7 +1745,7 @@ Public Class usrCntlFaktAbrechnung 'Anhänge aus USTVA -> SPED-BUCH + Excel Pos-Liste If SPEDBUCH IsNot Nothing Then If FIRMA IsNot Nothing Then - If FIRMA.Firma_ID = 19 And SPEDBUCH.Abfertigungsart = 10 AndAlso SPEDBUCH.ErfassungsNr > 0 Then + If FIRMA.Firma_ID = 19 AndAlso SPEDBUCH.ErfassungsNr > 0 AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115) Then Dim func As New cMDMFunctionsAllgemein() Dim dt = SQL.loadDgvBySql("SELECT UStVPo_daId, UStVPo_ID,UStVPo_SchnittstellenNr, UStVPo_ReNr, UStVPo_ReDat FROM tblUStVPositionen where UStVAn_ID='" & SPEDBUCH.ErfassungsNr & "' AND UStVPo_SchnittstellenNr <> 1 order by UStVPo_ID", "FMZOLL") @@ -1770,16 +1779,15 @@ Public Class usrCntlFaktAbrechnung Next End If - Dim pfadExcel As String = func.generateExcelPosList(USTV, "", "", "", False) 'soll immer alle POS bekommen! laut Lidya! 28.04.2025 - If pfadExcel <> "" Then + If pfadExcel <> "" Then - Dim FI As New FileInfo(pfadExcel) - Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "POS_LISTE", "", "", FI.Name, USTV.UStVAn_KuNr, False) + Dim FI As New FileInfo(pfadExcel) + Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "POS_LISTE", "", "", SPEDBUCH.AbfertigungsNr & FI.Extension, USTV.UStVAn_KuNr, False) DS.uploadDataToDATENSERVER(pfadExcel, FI.Name, FI.Extension,,,, True) .Rows.Add(0, "POS-LIST", DS.da_name, DS.da_id, DS.da_id) + End If End If - End If End If End If @@ -2240,14 +2248,6 @@ Public Class usrCntlFaktAbrechnung End Function - - - - - - - - Private Sub przBerechneRAPos(ByRef strProzedur As String) loaded = False Dim boolFehler As Boolean diff --git a/SDL/USTV/frmMDM_USTVAntrag.vb b/SDL/USTV/frmMDM_USTVAntrag.vb index 59fe9ddb..20349a7f 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.vb @@ -2683,7 +2683,7 @@ Public Class frmMDM_USTVAntrag .AnzahlSonstiges = 1 .Abfertigungsart = IIf(isEU, 114, 115) .Abfertigungsanzahl = 1 - .Packstücke = "Mehrwertsteuerrü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 .Rechnungsbetrag = USTV_ANTRAG.UStVAn_ErstattungsbetragEUR * -1 If .SAVE() Then @@ -2935,7 +2935,7 @@ Public Class frmMDM_USTVAntrag If IsDBNull(USTV_ANTRAG.FilialenNr) OrElse USTV_ANTRAG.FilialenNr Is Nothing OrElse USTV_ANTRAG.FilialenNr = 0 Then MsgBox("Für das Speditionsbuch muss die Filiale eingegeben werden.") : Exit Sub If IsDBNull(USTV_ANTRAG.AbfertigungsNr) OrElse USTV_ANTRAG.AbfertigungsNr Is Nothing OrElse USTV_ANTRAG.AbfertigungsNr <= 0 Then MsgBox("Für das Speditionsbuch muss die Abfertigungs-Nr eingegeben werden.") : Exit Sub - Dim f As New SDL.frmAbrechnungsMaskeEinzeln(USTV_ANTRAG.FilialenNr, USTV_ANTRAG.AbfertigungsNr) + Dim f As New SDL.frmAbrechnungsMaskeEinzeln(USTV_ANTRAG.FilialenNr, USTV_ANTRAG.AbfertigungsNr, IIf(USTV_ANTRAG.UStVAn_ErstattungsbetragEUR >= 0, "AG", "AR")) f.Show(Me) End Sub