diff --git a/SDL/Fakturierung/cAutomailversand.vb b/SDL/Fakturierung/cAutomailversand.vb index 01d9124b..69d510c6 100644 --- a/SDL/Fakturierung/cAutomailversand.vb +++ b/SDL/Fakturierung/cAutomailversand.vb @@ -229,8 +229,15 @@ Public Class cAutomailversand Mail.BCC = MailtoBCC Mail.CC = MailtoCC - For Each a In ATTACHMENTS - Mail.Attachments.Add(a.Pfad, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , a.MailName) + For Each att In ATTACHMENTS + + + If att.Pfad.ToString.ToLower.EndsWith("maut_at.pdf") Or att.Pfad.ToString.ToLower.EndsWith("maut_uta.pdf") Or att.Pfad.ToString.ToLower.EndsWith("maut_mse.pdf") Then + 'diese Anh. nicht mitanfügen! + Else + Mail.Attachments.Add(att.Pfad, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , att.MailName) + End If + Next Return Mail diff --git a/SDL/Fakturierung/frmAbrechnungsMaskeEinzeln.vb b/SDL/Fakturierung/frmAbrechnungsMaskeEinzeln.vb index 6c4e655e..1add94a2 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,23 +45,23 @@ 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") + 'Dim dt As DataTable = SQL.loadDgvBySql("select top(1) FilialenNr, AbfertigungsNr from Rechnungsausgang where RK_ID = " & RK_ID, "FMZOLL") - If dt.Rows.Count > 0 Then + 'If dt.Rows.Count > 0 Then - UsrCntlFaktAbrechnung1.cboFiliale.changeItem(dt.Rows(0).Item("FilialenNr")) - UsrCntlFaktAbrechnung1.txtAbfertigungsnummer.Text = dt.Rows(0).Item("AbfertigungsNr") - UsrCntlFaktAbrechnung1.cboSpedBuchUnterNr.Focus() + UsrCntlFaktAbrechnung1.initRECHNUNG(RK_ID) + + 'End If 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.Designer.vb b/SDL/USTV/frmMDM_USTVAntrag.Designer.vb index c54a3404..c0601e37 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.Designer.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.Designer.vb @@ -27,6 +27,7 @@ Partial Class frmMDM_USTVAntrag Dim DataGridViewCellStyle2 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMDM_USTVAntrag)) Me.pnlBottom = New System.Windows.Forms.Panel() + Me.pb_Beleg = New System.Windows.Forms.PictureBox() Me.Button5 = New System.Windows.Forms.Button() Me.txtSumme = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.Label27 = New System.Windows.Forms.Label() @@ -106,7 +107,9 @@ Partial Class frmMDM_USTVAntrag Me.dgvUSTVPositionen = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.pnlAntragsPosDetails = New System.Windows.Forms.Panel() Me.Panel2 = New System.Windows.Forms.Panel() + Me.UstCntlUSTV_AntragPosition1 = New SDL.ustCntlUSTV_AntragPosition() Me.Panel4 = New System.Windows.Forms.Panel() + Me.cbxKIUploaddelete = New System.Windows.Forms.CheckBox() Me.scanUSTVA = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScan() Me.btnPDFauslesen = New System.Windows.Forms.Button() Me.btnEintragloeschen = New System.Windows.Forms.Button() @@ -115,16 +118,15 @@ Partial Class frmMDM_USTVAntrag Me.Panel3 = New System.Windows.Forms.Panel() Me.dgvErstattungspositionen = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.pnlErstattungsdetails = New System.Windows.Forms.Panel() + Me.UstCntlUSTV_AntragErstattungen1 = New SDL.ustCntlUSTV_ErstattungPosition() Me.Panel1 = New System.Windows.Forms.Panel() Me.Button2 = New System.Windows.Forms.Button() Me.Button3 = New System.Windows.Forms.Button() Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) Me.ContextMenuStrip2 = New System.Windows.Forms.ContextMenuStrip(Me.components) Me.cnS_KIUPLOAD = New System.Windows.Forms.ContextMenuStrip(Me.components) - Me.UstCntlUSTV_AntragPosition1 = New SDL.ustCntlUSTV_AntragPosition() - Me.UstCntlUSTV_AntragErstattungen1 = New SDL.ustCntlUSTV_ErstattungPosition() - Me.cbxKIUploaddelete = New System.Windows.Forms.CheckBox() Me.pnlBottom.SuspendLayout() + CType(Me.pb_Beleg, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.picExcel, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.picPDF, System.ComponentModel.ISupportInitialize).BeginInit() Me.pnlHeader.SuspendLayout() @@ -151,6 +153,7 @@ Partial Class frmMDM_USTVAntrag ' Me.pnlBottom.BackColor = System.Drawing.Color.FromArgb(CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer)) Me.pnlBottom.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.pnlBottom.Controls.Add(Me.pb_Beleg) Me.pnlBottom.Controls.Add(Me.Button5) Me.pnlBottom.Controls.Add(Me.txtSumme) Me.pnlBottom.Controls.Add(Me.Label27) @@ -168,6 +171,17 @@ Partial Class frmMDM_USTVAntrag Me.pnlBottom.Size = New System.Drawing.Size(1454, 100) Me.pnlBottom.TabIndex = 3 ' + 'pb_Beleg + ' + Me.pb_Beleg.Image = Global.SDL.My.Resources.Resources.pdf + Me.pb_Beleg.Location = New System.Drawing.Point(899, 60) + Me.pb_Beleg.Name = "pb_Beleg" + Me.pb_Beleg.Size = New System.Drawing.Size(35, 35) + Me.pb_Beleg.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom + Me.pb_Beleg.TabIndex = 51 + Me.pb_Beleg.TabStop = False + Me.pb_Beleg.Visible = False + ' 'Button5 ' Me.Button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat @@ -1379,6 +1393,14 @@ Partial Class frmMDM_USTVAntrag Me.Panel2.Size = New System.Drawing.Size(1438, 263) Me.Panel2.TabIndex = 1 ' + 'UstCntlUSTV_AntragPosition1 + ' + Me.UstCntlUSTV_AntragPosition1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UstCntlUSTV_AntragPosition1.Location = New System.Drawing.Point(154, 0) + Me.UstCntlUSTV_AntragPosition1.Name = "UstCntlUSTV_AntragPosition1" + Me.UstCntlUSTV_AntragPosition1.Size = New System.Drawing.Size(1282, 261) + Me.UstCntlUSTV_AntragPosition1.TabIndex = 0 + ' 'Panel4 ' Me.Panel4.BackColor = System.Drawing.Color.WhiteSmoke @@ -1394,6 +1416,19 @@ Partial Class frmMDM_USTVAntrag Me.Panel4.Size = New System.Drawing.Size(154, 261) Me.Panel4.TabIndex = 0 ' + 'cbxKIUploaddelete + ' + Me.cbxKIUploaddelete.AutoSize = True + Me.cbxKIUploaddelete.Checked = True + Me.cbxKIUploaddelete.CheckState = System.Windows.Forms.CheckState.Checked + Me.cbxKIUploaddelete.ForeColor = System.Drawing.Color.Black + Me.cbxKIUploaddelete.Location = New System.Drawing.Point(6, 231) + Me.cbxKIUploaddelete.Name = "cbxKIUploaddelete" + Me.cbxKIUploaddelete.Size = New System.Drawing.Size(149, 17) + Me.cbxKIUploaddelete.TabIndex = 51 + Me.cbxKIUploaddelete.Text = "PDF nach KI-Upl. löschen" + Me.cbxKIUploaddelete.UseVisualStyleBackColor = True + ' 'scanUSTVA ' Me.scanUSTVA._ARCHIV = True @@ -1511,6 +1546,14 @@ Partial Class frmMDM_USTVAntrag Me.pnlErstattungsdetails.Size = New System.Drawing.Size(1436, 261) Me.pnlErstattungsdetails.TabIndex = 0 ' + 'UstCntlUSTV_AntragErstattungen1 + ' + Me.UstCntlUSTV_AntragErstattungen1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UstCntlUSTV_AntragErstattungen1.Location = New System.Drawing.Point(154, 0) + Me.UstCntlUSTV_AntragErstattungen1.Name = "UstCntlUSTV_AntragErstattungen1" + Me.UstCntlUSTV_AntragErstattungen1.Size = New System.Drawing.Size(1280, 259) + Me.UstCntlUSTV_AntragErstattungen1.TabIndex = 2 + ' 'Panel1 ' Me.Panel1.BackColor = System.Drawing.Color.WhiteSmoke @@ -1566,35 +1609,6 @@ Partial Class frmMDM_USTVAntrag Me.cnS_KIUPLOAD.Name = "ContextMenuStrip1" Me.cnS_KIUPLOAD.Size = New System.Drawing.Size(61, 4) ' - 'UstCntlUSTV_AntragPosition1 - ' - Me.UstCntlUSTV_AntragPosition1.Dock = System.Windows.Forms.DockStyle.Fill - Me.UstCntlUSTV_AntragPosition1.Location = New System.Drawing.Point(154, 0) - Me.UstCntlUSTV_AntragPosition1.Name = "UstCntlUSTV_AntragPosition1" - Me.UstCntlUSTV_AntragPosition1.Size = New System.Drawing.Size(1282, 261) - Me.UstCntlUSTV_AntragPosition1.TabIndex = 0 - ' - 'UstCntlUSTV_AntragErstattungen1 - ' - Me.UstCntlUSTV_AntragErstattungen1.Dock = System.Windows.Forms.DockStyle.Fill - Me.UstCntlUSTV_AntragErstattungen1.Location = New System.Drawing.Point(154, 0) - Me.UstCntlUSTV_AntragErstattungen1.Name = "UstCntlUSTV_AntragErstattungen1" - Me.UstCntlUSTV_AntragErstattungen1.Size = New System.Drawing.Size(1280, 259) - Me.UstCntlUSTV_AntragErstattungen1.TabIndex = 2 - ' - 'cbxKIUploaddelete - ' - Me.cbxKIUploaddelete.AutoSize = True - Me.cbxKIUploaddelete.Checked = True - Me.cbxKIUploaddelete.CheckState = System.Windows.Forms.CheckState.Checked - Me.cbxKIUploaddelete.ForeColor = System.Drawing.Color.Black - Me.cbxKIUploaddelete.Location = New System.Drawing.Point(6, 231) - Me.cbxKIUploaddelete.Name = "cbxKIUploaddelete" - Me.cbxKIUploaddelete.Size = New System.Drawing.Size(149, 17) - Me.cbxKIUploaddelete.TabIndex = 51 - Me.cbxKIUploaddelete.Text = "PDF nach KI-Upl. löschen" - Me.cbxKIUploaddelete.UseVisualStyleBackColor = True - ' 'frmMDM_USTVAntrag ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -1610,6 +1624,7 @@ Partial Class frmMDM_USTVAntrag Me.Text = "USTV Antrag" Me.pnlBottom.ResumeLayout(False) Me.pnlBottom.PerformLayout() + CType(Me.pb_Beleg, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.picExcel, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.picPDF, System.ComponentModel.ISupportInitialize).EndInit() Me.pnlHeader.ResumeLayout(False) @@ -1738,4 +1753,5 @@ Partial Class frmMDM_USTVAntrag Friend WithEvents scanUSTVA As VERAG_PROG_ALLGEMEIN.usrcntlPDFScan Friend WithEvents cnS_KIUPLOAD As ContextMenuStrip Friend WithEvents cbxKIUploaddelete As CheckBox + Friend WithEvents pb_Beleg As PictureBox End Class diff --git a/SDL/USTV/frmMDM_USTVAntrag.vb b/SDL/USTV/frmMDM_USTVAntrag.vb index a20b70d0..77075e4a 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.vb @@ -1,7 +1,8 @@ Imports System.IO Imports System.Reflection Imports System.Windows.Documents -Imports iTextSharp.text.pdf +Imports com.sun.org.apache.xpath.internal.objects +Imports itextsharp.text.pdf Imports Microsoft.Office.Interop Imports VERAG_PROG_ALLGEMEIN @@ -268,6 +269,14 @@ Public Class frmMDM_USTVAntrag If USTV_ANTRAG.FilialenNr IsNot Nothing AndAlso USTV_ANTRAG.FilialenNr > 0 AndAlso USTV_ANTRAG.AbfertigungsNr IsNot Nothing AndAlso USTV_ANTRAG.AbfertigungsNr > 0 Then Dim spedBuch As New cSpeditionsbuch(USTV_ANTRAG.FilialenNr, USTV_ANTRAG.AbfertigungsNr, 0) If spedBuch.hasEntry Then + + If CInt(SQL.getValueTxtBySql("select COUNT(*) from Rechnungsausgang where FilialenNr = " & USTV_ANTRAG.FilialenNr & " and AbfertigungsNr = " & USTV_ANTRAG.AbfertigungsNr & " and Firma_ID = 19 and DruckDatumZeit is not null", "FMZOLL",,, "0")) > 0 Then + pb_Beleg.Visible = True + Else + pb_Beleg.Visible = False + + End If + Button4.Text = "Sped.-Buch anzeigen" Button5.Visible = True Else @@ -578,6 +587,7 @@ Public Class frmMDM_USTVAntrag If VERAG_PROG_ALLGEMEIN.cAllgemein.AUTO_ABF_NR Then btnAbfertigungsNrVergeben.Visible = True + initScanUSTVA() End Sub @@ -2207,7 +2217,7 @@ Public Class frmMDM_USTVAntrag Select Case MsgBox("Soll eine Nummerierung auf den PDF Dokumenten angegeben werden?", vbYesNoCancel) Case vbYes : nummerierung = True - Case vbNo : nummerierung = True + Case vbNo : nummerierung = False Case Else : Exit Sub End Select @@ -2671,9 +2681,8 @@ Public Class frmMDM_USTVAntrag If Not vbYes = MsgBox("Der Erstattungsbetrag beträgt 0 EUR." & vbNewLine & "Fortfahren?", vbYesNo) Then Exit Sub End If - 'dTLANDEU = (New SQL).loadDgvBySql("select LandKz, MitgliedslandEU from Währungstabelle where LandKz is not null", "FMZOLL") - - 'Dim isEU As Boolean = dTLANDEU.AsEnumerable().Where(Function(res) res.Field(Of String)("LandKz") = Antrag_LandKz).Select(Function(res) res.Field(Of Boolean)("MitgliedslandEU")).FirstOrDefault() + dTLANDEU = (New SQL).loadDgvBySql("select LandKz, MitgliedslandEU from Währungstabelle where LandKz is not null", "FMZOLL") + 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() With spedBuch .Abfertigungsdatum = Today() @@ -2681,9 +2690,9 @@ Public Class frmMDM_USTVAntrag .Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME .ErfassungsNr = USTV_ANTRAG.UStVAn_ID .AnzahlSonstiges = 1 - .Abfertigungsart = 10 + .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,8 +2944,19 @@ 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) - f.Show(Me) + Dim RK_ID As Integer = CInt(SQL.getValueTxtBySql("select top(1) RK_ID from Rechnungsausgang where FilialenNr = " & USTV_ANTRAG.FilialenNr & " and AbfertigungsNr = " & USTV_ANTRAG.AbfertigungsNr & " and Firma_ID = 19", "FMZOLL", ,, "0")) + + If RK_ID > 0 Then + Dim f As New SDL.frmAbrechnungsMaskeEinzeln(RK_ID) + f.Show(Me) + + Else + + Dim f As New SDL.frmAbrechnungsMaskeEinzeln(USTV_ANTRAG.FilialenNr, USTV_ANTRAG.AbfertigungsNr, IIf(USTV_ANTRAG.UStVAn_ErstattungsbetragEUR >= 0, "AG", "AR")) + f.Show(Me) + + End If + End Sub @@ -2969,9 +2989,11 @@ Public Class frmMDM_USTVAntrag cnS_KIUPLOAD.Hide() Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem) - If item IsNot Nothing Then + If item IsNot Nothing AndAlso scanUSTVA IsNot Nothing Then + + Dim daid As Integer = 0 + If scanUSTVA.getDS() IsNot Nothing Then daid = scanUSTVA.getDS().da_id - Dim daid As Integer = scanUSTVA.getDS().da_id If daid > 0 Then @@ -3055,13 +3077,25 @@ Public Class frmMDM_USTVAntrag End Sub + Private Sub pb_Beleg_Click(sender As Object, e As EventArgs) Handles pb_Beleg.Click + Dim RK_ID As Integer = CInt(SQL.getValueTxtBySql("select top(1) RK_ID from Rechnungsausgang where FilialenNr = " & USTV_ANTRAG.FilialenNr & " and AbfertigungsNr = " & USTV_ANTRAG.AbfertigungsNr & " and DruckDatumZeit is not null and Firma_ID = 19", "FMZOLL", ,, "0")) + + If RK_ID > 0 Then + Dim RG_PATH = "" + cFakturierung.doRechnungsDruck_SRorER(RK_ID,, False, 4, RG_PATH,,, True) + Process.Start(RG_PATH) + End If + + End Sub Private Sub initScanUSTVA() If USTV_ANTRAG IsNot Nothing Then scanUSTVA.INIT(USTV_ANTRAG.UStVAn_KuNr, "MDM", "USTVA_KI_" & USTV_ANTRAG.UStVAn_ID) btnPDFauslesen.Enabled = scanUSTVA.getDS().da_id > 0 cbxKIUploaddelete.Enabled = btnPDFauslesen.Enabled + Else + cbxKIUploaddelete.Enabled = False End If diff --git a/SDL/USTV/frmUSTVoffeneAntraege.vb b/SDL/USTV/frmUSTVoffeneAntraege.vb index 5fd41b29..58077fd1 100644 --- a/SDL/USTV/frmUSTVoffeneAntraege.vb +++ b/SDL/USTV/frmUSTVoffeneAntraege.vb @@ -1,8 +1,4 @@ Imports System.Windows.Documents -Imports com.sun.org.apache.bcel.internal.generic -Imports com.sun.org.apache.xpath.internal.objects -Imports DocumentFormat.OpenXml.Drawing.Spreadsheet -Imports VERAG_PROG_ALLGEMEIN Public Class frmUSTVoffeneAntraege @@ -780,7 +776,7 @@ Public Class frmUSTVoffeneAntraege tblIDSTransactionsNew.[YearMonthDay] ) as temp inner join tblKundenErweitert on temp.kdnr = kde_KundenNr inner join [Länderverzeichnis für die Außenhandelsstatistik] on temp.Einreichland=LandKz - left join tblUStVAntrag on UStVAn_KuNr = temp.kdnr and UStVAn_ReDatVon <= temp.Rechnungsdatum and UStVAn_ReDatBis >= temp.Rechnungsdatum and [Länderverzeichnis für die Außenhandelsstatistik].LandNr = UStVAn_LandNr + left join tblUStVAntrag on UStVAn_KuNr = temp.kdnr and UStVAn_ReDatVon <= temp.Rechnungsdatum and UStVAn_ReDatBis >= temp.Rechnungsdatum and [Länderverzeichnis für die Außenhandelsstatistik].LandNr = UStVAn_LandNr and isnull(UStVAn_AntragArt,'MWST') = 'MWST' left JOIN tblSteuernummern On temp.Einreichland = tblSteuernummern.LandKz and KdNr = tblSteuernummern.AdressenNr where 1 = 1 and isnull(kde_keineMWSt,0) = 0 " & sqlwhereLand & sqlwhereSteuerNr & " group by isnull(UStVAn_ID,0) , Lieferant, KdNr, Kundenname,Kundenland, Einreichland, tblSteuernummern.UStV" diff --git a/SDL/USTV/usrCntlUSTV.vb b/SDL/USTV/usrCntlUSTV.vb index 1755da8e..98d25f34 100644 --- a/SDL/USTV/usrCntlUSTV.vb +++ b/SDL/USTV/usrCntlUSTV.vb @@ -611,46 +611,46 @@ Public Class usrCntlUSTV Private Sub mnuItem_Clicked(sender As Object, e As EventArgs) - If dgvUSTV.SelectedRows.Count > 0 Then - ContextMenuStrip1.Hide() + + ContextMenuStrip1.Hide() Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem) - If item IsNot Nothing Then - If item.Name = "excel" Then - excelAuswertung() + If item IsNot Nothing Then + If item.Name = "excel" Then + If dgvUSTV.SelectedRows.Count > 0 Then excelAuswertung() - ElseIf item.Name = "mail" Then - mailmitExcelauswertung() - - ElseIf item.Name = "offeneAntraege" Then - If dgvUSTV.SelectedRows(0) IsNot Nothing AndAlso IsDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value) AndAlso IsDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value) Then - - If dgvUSTV.SelectedRows(0).Cells("UStVAn_KuNr").Value IsNot Nothing AndAlso dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value IsNot Nothing Then - Dim frm As New frmUSTVoffeneAntraege(CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value), CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value), dgvUSTV.SelectedRows(0).Cells("UStVAn_KuNr").Value, IIf(IsDBNull(dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value), "", dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value)) - frm.Show() - - Else - Dim frm As New frmUSTVoffeneAntraege(CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value), CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value)) - frm.cbxAlleoffenen.Checked = True - frm.Show() - - End If + ElseIf item.Name = "mail" Then + If dgvUSTV.SelectedRows.Count > 0 Then mailmitExcelauswertung() + ElseIf item.Name = "offeneAntraege" Then + If dgvUSTV.SelectedRows.Count > 0 AndAlso dgvUSTV.SelectedRows(0) IsNot Nothing AndAlso IsDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value) AndAlso IsDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value) Then + If dgvUSTV.SelectedRows(0).Cells("UStVAn_KuNr").Value IsNot Nothing AndAlso dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value IsNot Nothing Then + Dim frm As New frmUSTVoffeneAntraege(CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value), CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value), dgvUSTV.SelectedRows(0).Cells("UStVAn_KuNr").Value, IIf(IsDBNull(dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value), "", dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value)) + frm.Show() Else - Dim frm As New frmUSTVoffeneAntraege() + Dim frm As New frmUSTVoffeneAntraege(CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value), CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value)) + frm.cbxAlleoffenen.Checked = True frm.Show() + End If + + Else - MsgBox("Funktion nicht implementiert!") + Dim frm As New frmUSTVoffeneAntraege() + frm.Show() End If + Else + MsgBox("Funktion nicht implementiert!") End If + End If + End Sub diff --git a/SDL/USTV/ustCntlUSTV_AntragPosition.vb b/SDL/USTV/ustCntlUSTV_AntragPosition.vb index df49d222..a8177078 100644 --- a/SDL/USTV/ustCntlUSTV_AntragPosition.vb +++ b/SDL/USTV/ustCntlUSTV_AntragPosition.vb @@ -278,8 +278,10 @@ Public Class ustCntlUSTV_AntragPosition txtUIDNr.Text = If(UStV_Leist.UstV_Leistender_UstNr, "") If UStV_Leist.hasEntry Then adressLoadedByLeistender = True + btnLeistenderSave.Visible = False btnDel.Visible = True Else + btnLeistenderSave.Visible = True btnDel.Visible = False End If @@ -559,16 +561,29 @@ Public Class ustCntlUSTV_AntragPosition If sbLeistender.Text <> "" Then If sbLeistender.Text IsNot Nothing AndAlso sbLeistender.Text <> "" Then If IsNumeric(sbLeistender.Text) Then - If UStV_Leist.UStV_LeistenderId <> sbLeistender.Text OrElse UStV_POS.UStVPo_LeistenderId <> sbLeistender.Text Then txtChanged = True + If UStV_Leist IsNot Nothing AndAlso UStV_Leist.UStV_Leistender <> "" AndAlso (UStV_POS.UStVPo_Leistender <> sbLeistender.Text OrElse UStV_POS.UStVPo_LeistenderId <> sbLeistender.Text) Then + 'speichern der Änderung nur, wenn 1. Leistender gelöscht wird. + txtChanged = True + ElseIf UStV_Leist Is Nothing Then + txtChanged = True + End If + UStV_Leist = New VERAG_PROG_ALLGEMEIN.cUStVLeistender(CInt(sbLeistender.Text)) Else - If UStV_Leist.UStV_Leistender <> sbLeistender.Text OrElse UStV_POS.UStVPo_Leistender <> sbLeistender.Text Then txtChanged = True - UStV_Leist = New VERAG_PROG_ALLGEMEIN.cUStVLeistender(sbLeistender.Text) + If UStV_Leist IsNot Nothing AndAlso UStV_Leist.UStV_Leistender <> "" AndAlso (UStV_Leist.UStV_Leistender <> sbLeistender.Text OrElse UStV_POS.UStVPo_Leistender <> sbLeistender.Text) Then + txtChanged = True + ElseIf UStV_Leist Is Nothing Then + txtChanged = True + End If End If + UStV_Leist = New VERAG_PROG_ALLGEMEIN.cUStVLeistender(sbLeistender.Text) loadChangedDSToPanel(UStV_Leist) Else - loadChangedDSToPanel(Nothing, True) + If UStV_POS.UStVPo_Leistender <> "" OrElse UStV_POS.UStVPo_LeistenderId <> 0 Then + loadChangedDSToPanel(Nothing, True) + End If + End If End If 'MsgBox() diff --git a/SDL/USTV/ustCntlUSTV_ErstattungPosition .Designer.vb b/SDL/USTV/ustCntlUSTV_ErstattungPosition .Designer.vb index 6a085ae7..4011f1f8 100644 --- a/SDL/USTV/ustCntlUSTV_ErstattungPosition .Designer.vb +++ b/SDL/USTV/ustCntlUSTV_ErstattungPosition .Designer.vb @@ -63,24 +63,24 @@ Partial Class ustCntlUSTV_ErstattungPosition Me.Panel3 = New System.Windows.Forms.Panel() Me.tbcntr = New System.Windows.Forms.TabControl() Me.tabDok = New System.Windows.Forms.TabPage() - Me.scanSonstiges = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList() + Me.scanSonstigesErst = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList() + Me.tabVZ = New System.Windows.Forms.TabPage() + Me.scanUSTVVollmachten = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList() Me.Panel4 = New System.Windows.Forms.Panel() Me.TabControl1 = New System.Windows.Forms.TabControl() Me.TabPage1 = New System.Windows.Forms.TabPage() Me.UsrcntlPDFScanList1 = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList() Me.scanLieferschein = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScan() - Me.scanUSTVVollmachten = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList() - Me.tabVZ = New System.Windows.Forms.TabPage() Me.Panel2.SuspendLayout() Me.pnl.SuspendLayout() Me.Panel1.SuspendLayout() Me.Panel3.SuspendLayout() Me.tbcntr.SuspendLayout() Me.tabDok.SuspendLayout() + Me.tabVZ.SuspendLayout() Me.Panel4.SuspendLayout() Me.TabControl1.SuspendLayout() Me.TabPage1.SuspendLayout() - Me.tabVZ.SuspendLayout() Me.SuspendLayout() ' 'Label8 @@ -651,7 +651,6 @@ Partial Class ustCntlUSTV_ErstattungPosition Me.Panel3.Name = "Panel3" Me.Panel3.Size = New System.Drawing.Size(264, 235) Me.Panel3.TabIndex = 26 - Me.Panel3.Visible = False ' 'tbcntr ' @@ -666,7 +665,7 @@ Partial Class ustCntlUSTV_ErstattungPosition ' 'tabDok ' - Me.tabDok.Controls.Add(Me.scanSonstiges) + Me.tabDok.Controls.Add(Me.scanSonstigesErst) Me.tabDok.Location = New System.Drawing.Point(4, 22) Me.tabDok.Name = "tabDok" Me.tabDok.Padding = New System.Windows.Forms.Padding(3) @@ -675,26 +674,58 @@ Partial Class ustCntlUSTV_ErstattungPosition Me.tabDok.Text = "Bescheide/Anträge" Me.tabDok.UseVisualStyleBackColor = True ' - 'scanSonstiges + 'scanSonstigesErst ' - Me.scanSonstiges._DATENSERVER_KATEGORIE = "DOKUMENTE" - Me.scanSonstiges._DATENSERVER_ORDNER = "MDM" - Me.scanSonstiges._DATENSERVER_UOrdner1 = "" - Me.scanSonstiges._DATENSERVER_UOrdner2 = "" - Me.scanSonstiges._DATENSERVER_UOrdner3 = "" - Me.scanSonstiges._OPEN_ORIGINAL = False - Me.scanSonstiges._TYPE = "PDF" - Me.scanSonstiges.AllowDrop = True - Me.scanSonstiges.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink - Me.scanSonstiges.BackColor = System.Drawing.Color.White - Me.scanSonstiges.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle - Me.scanSonstiges.Cursor = System.Windows.Forms.Cursors.Hand - Me.scanSonstiges.Dock = System.Windows.Forms.DockStyle.Fill - Me.scanSonstiges.Location = New System.Drawing.Point(3, 3) - Me.scanSonstiges.Margin = New System.Windows.Forms.Padding(0) - Me.scanSonstiges.Name = "scanSonstiges" - Me.scanSonstiges.Size = New System.Drawing.Size(250, 187) - Me.scanSonstiges.TabIndex = 0 + Me.scanSonstigesErst._DATENSERVER_KATEGORIE = "DOKUMENTE" + Me.scanSonstigesErst._DATENSERVER_ORDNER = "MDM" + Me.scanSonstigesErst._DATENSERVER_UOrdner1 = "" + Me.scanSonstigesErst._DATENSERVER_UOrdner2 = "" + Me.scanSonstigesErst._DATENSERVER_UOrdner3 = "" + Me.scanSonstigesErst._OPEN_ORIGINAL = False + Me.scanSonstigesErst._TYPE = "PDF" + Me.scanSonstigesErst.AllowDrop = True + Me.scanSonstigesErst.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink + Me.scanSonstigesErst.BackColor = System.Drawing.Color.White + Me.scanSonstigesErst.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.scanSonstigesErst.Cursor = System.Windows.Forms.Cursors.Hand + Me.scanSonstigesErst.Dock = System.Windows.Forms.DockStyle.Fill + Me.scanSonstigesErst.Location = New System.Drawing.Point(3, 3) + Me.scanSonstigesErst.Margin = New System.Windows.Forms.Padding(0) + Me.scanSonstigesErst.Name = "scanSonstigesErst" + Me.scanSonstigesErst.Size = New System.Drawing.Size(250, 187) + Me.scanSonstigesErst.TabIndex = 0 + ' + 'tabVZ + ' + Me.tabVZ.Controls.Add(Me.scanUSTVVollmachten) + Me.tabVZ.Location = New System.Drawing.Point(4, 22) + Me.tabVZ.Name = "tabVZ" + Me.tabVZ.Padding = New System.Windows.Forms.Padding(3) + Me.tabVZ.Size = New System.Drawing.Size(256, 193) + Me.tabVZ.TabIndex = 2 + Me.tabVZ.Text = "Vorauszahlungen" + Me.tabVZ.UseVisualStyleBackColor = True + ' + 'scanUSTVVollmachten + ' + Me.scanUSTVVollmachten._DATENSERVER_KATEGORIE = "DOKUMENTE" + Me.scanUSTVVollmachten._DATENSERVER_ORDNER = "MDM" + Me.scanUSTVVollmachten._DATENSERVER_UOrdner1 = "" + Me.scanUSTVVollmachten._DATENSERVER_UOrdner2 = "" + Me.scanUSTVVollmachten._DATENSERVER_UOrdner3 = "" + Me.scanUSTVVollmachten._OPEN_ORIGINAL = False + Me.scanUSTVVollmachten._TYPE = "PDF" + Me.scanUSTVVollmachten.AllowDrop = True + Me.scanUSTVVollmachten.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink + Me.scanUSTVVollmachten.BackColor = System.Drawing.Color.White + Me.scanUSTVVollmachten.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.scanUSTVVollmachten.Cursor = System.Windows.Forms.Cursors.Hand + Me.scanUSTVVollmachten.Dock = System.Windows.Forms.DockStyle.Fill + Me.scanUSTVVollmachten.Location = New System.Drawing.Point(3, 3) + Me.scanUSTVVollmachten.Margin = New System.Windows.Forms.Padding(0) + Me.scanUSTVVollmachten.Name = "scanUSTVVollmachten" + Me.scanUSTVVollmachten.Size = New System.Drawing.Size(250, 187) + Me.scanUSTVVollmachten.TabIndex = 1 ' 'Panel4 ' @@ -767,38 +798,6 @@ Partial Class ustCntlUSTV_ErstattungPosition Me.scanLieferschein.TabIndex = 2 Me.scanLieferschein.Visible = False ' - 'scanUSTVVollmachten - ' - Me.scanUSTVVollmachten._DATENSERVER_KATEGORIE = "DOKUMENTE" - Me.scanUSTVVollmachten._DATENSERVER_ORDNER = "MDM" - Me.scanUSTVVollmachten._DATENSERVER_UOrdner1 = "" - Me.scanUSTVVollmachten._DATENSERVER_UOrdner2 = "" - Me.scanUSTVVollmachten._DATENSERVER_UOrdner3 = "" - Me.scanUSTVVollmachten._OPEN_ORIGINAL = False - Me.scanUSTVVollmachten._TYPE = "PDF" - Me.scanUSTVVollmachten.AllowDrop = True - Me.scanUSTVVollmachten.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink - Me.scanUSTVVollmachten.BackColor = System.Drawing.Color.White - Me.scanUSTVVollmachten.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle - Me.scanUSTVVollmachten.Cursor = System.Windows.Forms.Cursors.Hand - Me.scanUSTVVollmachten.Dock = System.Windows.Forms.DockStyle.Fill - Me.scanUSTVVollmachten.Location = New System.Drawing.Point(3, 3) - Me.scanUSTVVollmachten.Margin = New System.Windows.Forms.Padding(0) - Me.scanUSTVVollmachten.Name = "scanUSTVVollmachten" - Me.scanUSTVVollmachten.Size = New System.Drawing.Size(250, 187) - Me.scanUSTVVollmachten.TabIndex = 1 - ' - 'tabVZ - ' - Me.tabVZ.Controls.Add(Me.scanUSTVVollmachten) - Me.tabVZ.Location = New System.Drawing.Point(4, 22) - Me.tabVZ.Name = "tabVZ" - Me.tabVZ.Padding = New System.Windows.Forms.Padding(3) - Me.tabVZ.Size = New System.Drawing.Size(256, 193) - Me.tabVZ.TabIndex = 2 - Me.tabVZ.Text = "Vorauszahlungen" - Me.tabVZ.UseVisualStyleBackColor = True - ' 'ustCntlUSTV_ErstattungPosition ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -816,10 +815,10 @@ Partial Class ustCntlUSTV_ErstattungPosition Me.Panel3.ResumeLayout(False) Me.tbcntr.ResumeLayout(False) Me.tabDok.ResumeLayout(False) + Me.tabVZ.ResumeLayout(False) Me.Panel4.ResumeLayout(False) Me.TabControl1.ResumeLayout(False) Me.TabPage1.ResumeLayout(False) - Me.tabVZ.ResumeLayout(False) Me.ResumeLayout(False) End Sub @@ -863,7 +862,7 @@ Partial Class ustCntlUSTV_ErstattungPosition Friend WithEvents Panel3 As Panel Friend WithEvents tbcntr As TabControl Friend WithEvents tabDok As TabPage - Friend WithEvents scanSonstiges As VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList + Friend WithEvents scanSonstigesErst As VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList Friend WithEvents Panel4 As Panel Friend WithEvents TabControl1 As TabControl Friend WithEvents TabPage1 As TabPage diff --git a/SDL/USTV/ustCntlUSTV_ErstattungPosition .vb b/SDL/USTV/ustCntlUSTV_ErstattungPosition .vb index 6a6c29e5..add5c64e 100644 --- a/SDL/USTV/ustCntlUSTV_ErstattungPosition .vb +++ b/SDL/USTV/ustCntlUSTV_ErstattungPosition .vb @@ -68,6 +68,15 @@ Public Class ustCntlUSTV_ErstattungPosition txtUSTBetragEUR.Text = If(UStV_ERS.UStVEr_USteuerbetragEUR, "") txtBemerkung.Text = If(UStV_ERS.Bemerkung, "") + If UStV_ERS.UStVEr_daId IsNot Nothing AndAlso UStV_ERS.UStVEr_daId > 0 Then + scanSonstigesErst.INIT_daId(UStV_ERS.UStVEr_daId) + Else + scanSonstigesErst.INIT(kdNr, "MDM", "MDM_DATEN", "USTVERS_" & UStV_ERS.UStVAn_ID & "_" & UStV_ERS.UStVEr_ID) + End If + + + + End Sub Sub getValues(ByRef UStV_ERS As cUStVErstattungPositionen, ByRef save As Boolean) @@ -236,8 +245,6 @@ Public Class ustCntlUSTV_ErstattungPosition - - ElseIf sender Is txtBelegDatum Then If txtBelegDatum.Text <> "" Then @@ -270,7 +277,19 @@ Public Class ustCntlUSTV_ErstattungPosition End Sub - Private Sub Panel1_Paint(sender As Object, e As PaintEventArgs) Handles Panel1.Paint - + Private Sub scanSonstiges_FileAdded(id As String, path As String, name As String) Handles scanSonstigesErst.FileAdded + getValues(UStV_ERS, True) + UStV_ERS.UStVEr_daId = id + If UStV_ERS.SAVE() Then + scanSonstigesErst.INIT_daId(UStV_ERS.UStVEr_daId) + RaiseEvent CHANGED(UStV_ERS.UStVEr_ID) + End If End Sub + + Private Sub scanSonstiges_FileDeleted() Handles scanSonstigesErst.FileDeleted + getValues(UStV_ERS, True) + UStV_ERS.UStVEr_daId = Nothing + If UStV_ERS.SAVE() Then RaiseEvent CHANGED(UStV_ERS.UStVEr_ID) + End Sub + End Class diff --git a/SDL/mdm/frmMDMDatenverarbetiung.vb b/SDL/mdm/frmMDMDatenverarbetiung.vb index 85904f1e..01acc623 100644 --- a/SDL/mdm/frmMDMDatenverarbetiung.vb +++ b/SDL/mdm/frmMDMDatenverarbetiung.vb @@ -4060,10 +4060,10 @@ Public Class frmMDMDatenverarbetiung If fehlendeTransactionen > 0 Then pruefData_MSE = False Dim hint As String = "" - 'If fehlendeTransactionen > 500 Then - ' hint = "Transaction-IDs: " - ' 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 + If fehlendeTransactionen > 500 Then + hint = "Bsp. Transaction-ID: " + hint &= SQL.getValueTxtBySql("select top(1) 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 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 diff --git a/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUStVLeistender.vb b/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUStVLeistender.vb index 35f933e6..43af32eb 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUStVLeistender.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUStVLeistender.vb @@ -12,7 +12,7 @@ Public Class cUStVLeistender Property UstV_Leistender_UstNr As Object = Nothing Property UstV_Leistender_Adresse As Boolean Property UStV_LeistenderId As Integer - Property UstV_aktiv As Boolean + Property UstV_aktiv As Boolean = True Public hasEntry = False diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb b/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb index eff94a60..86d807dc 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb @@ -988,13 +988,19 @@ Public Class cMDMFunctionsAllgemein For page As Integer = 1 To pdfReader.NumberOfPages Dim canvas As PdfContentByte = stamper.GetOverContent(page) Dim bf As BaseFont = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.EMBEDDED) - canvas.SetFontAndSize(bf, 16) + canvas.SetFontAndSize(bf, 12) canvas.BeginText() 'The origin (0,0) is at the bottom-left corner of the page and represent coordinates in points!!!!! Dim _height = pdfReader.GetPageSizeWithRotation(page).GetTop(25) 'oberer Rand Dim _width = pdfReader.GetPageSizeWithRotation(page).GetRight(0) / 2 'Mitte + 'Workaround! + If _height > 1500 Then + canvas.SetFontAndSize(bf, 45) + _height -= 70 + End If + canvas.ShowTextAligned(PdfContentByte.ALIGN_CENTER, nummierung, _width, _height, 0) 'canvas.ShowTextAligned(PdfContentByte.ALIGN_CENTER, nummierung, 350, 550, 0) @@ -1097,7 +1103,7 @@ Public Class cMDMFunctionsAllgemein header2 = "VAT NO.: " & USTV_ANTRAG.UStVAn_Steuernummer & " " & "Name/Company: " & AD.Name_1 & " " & AD.Name_2 & " " & "VAT in " & Antrag_LandKz & ": " & SteuerNR End If - Return cProgramFunctions.genExcelFromDT_NEW_(dtNew, {"K1:K" & (dtNew.Rows.Count + 1)},, header1, header2, IIf(USTV_ANTRAG.UStVAn_Währungscode = "EUR", "€", ""), True, "J", True,, openFile) + Return cProgramFunctions.genExcelFromDT_NEW_(dtNew, {"K1:K" & (dtNew.Rows.Count + 1)},, header1, header2, IIf(USTV_ANTRAG.UStVAn_Währungscode = "EUR", "€", ""), True, "J", True, True, openFile) End If diff --git a/VERAG_PROG_ALLGEMEIN/frmScan.Designer.vb b/VERAG_PROG_ALLGEMEIN/frmScan.Designer.vb index c0e7d2ee..0129767f 100644 --- a/VERAG_PROG_ALLGEMEIN/frmScan.Designer.vb +++ b/VERAG_PROG_ALLGEMEIN/frmScan.Designer.vb @@ -1,9 +1,9 @@ - _ + Partial Class frmScan Inherits System.Windows.Forms.Form 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. - _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) Try If disposing AndAlso components IsNot Nothing Then @@ -20,7 +20,7 @@ Partial Class frmScan 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. - _ + Private Sub InitializeComponent() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmScan)) Me.dsViewer = New Dynamsoft.Forms.DSViewer() @@ -56,6 +56,7 @@ Partial Class frmScan Me.tbxCurrentImageIndex = New System.Windows.Forms.Label() Me.tbxTotalImageNum = New System.Windows.Forms.Label() Me.pnl = New System.Windows.Forms.Panel() + Me.cboOrientation = New System.Windows.Forms.ComboBox() Me.cbxAltFormat = New System.Windows.Forms.CheckBox() Me.cboFormat = New System.Windows.Forms.ComboBox() Me.grpFarbe.SuspendLayout() @@ -383,7 +384,7 @@ Partial Class frmScan 'Label3 ' Me.Label3.AutoSize = True - Me.Label3.Location = New System.Drawing.Point(395, 654) + Me.Label3.Location = New System.Drawing.Point(405, 654) Me.Label3.Name = "Label3" Me.Label3.Size = New System.Drawing.Size(31, 13) Me.Label3.TabIndex = 18 @@ -406,7 +407,7 @@ Partial Class frmScan 'Label2 ' Me.Label2.AutoSize = True - Me.Label2.Location = New System.Drawing.Point(436, 654) + Me.Label2.Location = New System.Drawing.Point(446, 654) Me.Label2.Name = "Label2" Me.Label2.Size = New System.Drawing.Size(25, 13) Me.Label2.TabIndex = 17 @@ -415,7 +416,7 @@ Partial Class frmScan 'tbxCurrentImageIndex ' Me.tbxCurrentImageIndex.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.tbxCurrentImageIndex.Location = New System.Drawing.Point(416, 654) + Me.tbxCurrentImageIndex.Location = New System.Drawing.Point(426, 654) Me.tbxCurrentImageIndex.Name = "tbxCurrentImageIndex" Me.tbxCurrentImageIndex.Size = New System.Drawing.Size(28, 13) Me.tbxCurrentImageIndex.TabIndex = 19 @@ -425,7 +426,7 @@ Partial Class frmScan 'tbxTotalImageNum ' Me.tbxTotalImageNum.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.tbxTotalImageNum.Location = New System.Drawing.Point(447, 654) + Me.tbxTotalImageNum.Location = New System.Drawing.Point(457, 654) Me.tbxTotalImageNum.Name = "tbxTotalImageNum" Me.tbxTotalImageNum.Size = New System.Drawing.Size(25, 13) Me.tbxTotalImageNum.TabIndex = 20 @@ -434,6 +435,7 @@ Partial Class frmScan ' 'pnl ' + Me.pnl.Controls.Add(Me.cboOrientation) Me.pnl.Controls.Add(Me.cbxAltFormat) Me.pnl.Controls.Add(Me.cboFormat) Me.pnl.Controls.Add(Me.Label2) @@ -464,6 +466,15 @@ Partial Class frmScan Me.pnl.Size = New System.Drawing.Size(741, 683) Me.pnl.TabIndex = 21 ' + 'cboOrientation + ' + Me.cboOrientation.Enabled = False + Me.cboOrientation.FormattingEnabled = True + Me.cboOrientation.Location = New System.Drawing.Point(639, 565) + Me.cboOrientation.Name = "cboOrientation" + Me.cboOrientation.Size = New System.Drawing.Size(88, 21) + Me.cboOrientation.TabIndex = 23 + ' 'cbxAltFormat ' Me.cbxAltFormat.AutoSize = True @@ -479,9 +490,9 @@ Partial Class frmScan ' Me.cboFormat.Enabled = False Me.cboFormat.FormattingEnabled = True - Me.cboFormat.Location = New System.Drawing.Point(594, 565) + Me.cboFormat.Location = New System.Drawing.Point(575, 565) Me.cboFormat.Name = "cboFormat" - Me.cboFormat.Size = New System.Drawing.Size(133, 21) + Me.cboFormat.Size = New System.Drawing.Size(58, 21) Me.cboFormat.TabIndex = 22 ' 'frmScan @@ -539,4 +550,5 @@ Partial Class frmScan Friend WithEvents pnl As System.Windows.Forms.Panel Friend WithEvents cboFormat As Windows.Forms.ComboBox Friend WithEvents cbxAltFormat As Windows.Forms.CheckBox + Friend WithEvents cboOrientation As Windows.Forms.ComboBox End Class diff --git a/VERAG_PROG_ALLGEMEIN/frmScan.vb b/VERAG_PROG_ALLGEMEIN/frmScan.vb index 6d1e0634..369673dd 100644 --- a/VERAG_PROG_ALLGEMEIN/frmScan.vb +++ b/VERAG_PROG_ALLGEMEIN/frmScan.vb @@ -1,27 +1,22 @@ -Imports System.Collections.Generic -Imports System.ComponentModel -Imports System.Data -Imports System.Drawing -Imports System.Text -Imports System.Windows.Forms +Imports System.Drawing +Imports System.IO Imports System.Runtime.InteropServices - +Imports System.Text Imports System.Threading -'Imports Dynamsoft.Barcode -Imports Dynamsoft.TWAIN +Imports System.Windows.Forms Imports Dynamsoft.Core +Imports Dynamsoft.Core.Annotation +Imports Dynamsoft.Core.Enums 'Imports Dynamsoft.UVC 'Imports Dynamsoft.OCR Imports Dynamsoft.PDF -Imports Dynamsoft.Core.Annotation +Imports Dynamsoft.PDF.Enums +'Imports Dynamsoft.Barcode +Imports Dynamsoft.TWAIN 'Imports Dynamsoft.UVC.Common Imports Dynamsoft.TWAIN.Interface -Imports Dynamsoft.Core.Enums -Imports System.IO -Imports Dynamsoft.TWAIN.Enums -Imports Dynamsoft.DotTwain -Imports ClosedXML.Excel -Imports Dynamsoft.PDF.Enums +Imports Spire.Pdf + 'Aktuell3 @@ -64,25 +59,6 @@ Public Class frmScan init() End Sub - - Public Enum TwainSupportedSizes As UShort - TWSS_NONE = 0 - TWSS_A4 = 1 - TWSS_JISB5 = 2 - TWSS_USLETTER = 3 - TWSS_USLEGAL = 4 - TWSS_A5 = 5 - TWSS_ISOB4 = 6 - TWSS_ISOB6 = 7 - TWSS_USLEDGER = 9 - TWSS_USEXECUTIVE = 10 - TWSS_A3 = 11 - TWSS_B4 = 12 - TWSS_B6 = 13 - TWSS_BUSINESSCARD = 14 - End Enum - - Public Sub OnPostAllTransfers() Implements IAcquireCallback.OnPostAllTransfers Me.Invoke(New CrossThreadOperationControl(AddressOf CallMe)) End Sub @@ -457,6 +433,18 @@ Public Class frmScan .ValueMember = "Value" End With + cboOrientation.Items.Clear() + + Dim itemsOrient = [Enum].GetValues(GetType(PdfPageOrientation)).Cast(Of PdfPageOrientation)().Select(Function(e) New KeyValuePair(Of String, PdfPageOrientation)(e.ToString(), e)).ToList() + + With cboOrientation + .DataSource = itemsOrient + .DisplayMember = "Key" + .ValueMember = "Value" + End With + + + If hasTwainSource Then cboSource.Enabled = True @@ -497,9 +485,13 @@ Public Class frmScan Select Case ART Case "DirectScan" - If cboFormat.SelectedIndex >= 0 Then - Dim selectedPaper As EnumPageSize = CType(cboFormat.SelectedValue, EnumPageSize) - If cbxAltFormat.Checked Then m_PDFCreator.PageSize = selectedPaper + Dim selectedPaper As EnumPageSize = CType(cboFormat.SelectedValue, EnumPageSize) + Dim orient As PdfPageOrientation = CType(cboOrientation.SelectedValue, PdfPageOrientation) + If cbxAltFormat.Checked Then + m_PDFCreator.PageSize = selectedPaper + If orient = PdfPageOrientation.Landscape Then + saveAsLandscape() + End If End If Dim PDF_bytes As Byte() = m_PDFCreator.SaveAsBytes(TryCast(Me, ISave)) @@ -596,10 +588,17 @@ Public Class frmScan If SaveFileDialog.ShowDialog() = DialogResult.OK Then ' Multi page PDF If cboFormat.SelectedIndex >= 0 Then + Dim selectedPaper As EnumPageSize = CType(cboFormat.SelectedValue, EnumPageSize) - If cbxAltFormat.Checked Then m_PDFCreator.PageSize = selectedPaper - End If - m_PDFCreator.Save(TryCast(Me, ISave), SaveFileDialog.FileName) + Dim orient As PdfPageOrientation = CType(cboOrientation.SelectedValue, PdfPageOrientation) + If cbxAltFormat.Checked Then + m_PDFCreator.PageSize = selectedPaper + If orient = PdfPageOrientation.Landscape Then + saveAsLandscape() + End If + End If + End If + m_PDFCreator.Save(TryCast(Me, ISave), SaveFileDialog.FileName) End If End If Else @@ -775,9 +774,13 @@ Public Class frmScan Case "QuickScan" Do startScan() - If cboFormat.SelectedIndex >= 0 Then - Dim selectedPaper As EnumPageSize = CType(cboFormat.SelectedValue, EnumPageSize) - If cbxAltFormat.Checked Then m_PDFCreator.PageSize = selectedPaper + Dim selectedPaper As EnumPageSize = CType(cboFormat.SelectedValue, EnumPageSize) + Dim orient As PdfPageOrientation = CType(cboOrientation.SelectedValue, PdfPageOrientation) + If cbxAltFormat.Checked Then + m_PDFCreator.PageSize = selectedPaper + If orient = PdfPageOrientation.Landscape Then + saveAsLandscape() + End If End If Dim PDF_bytes As Byte() = m_PDFCreator.SaveAsBytes(TryCast(Me, ISave)) Me.fileName = addExtension(tbxSaveFileName.Text) ' DS.LAST_ID @@ -828,7 +831,44 @@ Public Class frmScan Private Sub cbxAltFormat_CheckedChanged(sender As Object, e As EventArgs) Handles cbxAltFormat.CheckedChanged cboFormat.Enabled = cbxAltFormat.Checked + cboOrientation.Enabled = cbxAltFormat.Checked End Sub + + Private Sub saveAsLandscape() + + Dim iImageWidth As Integer = m_ImageCore.ImageBuffer.GetBitmap(m_ImageCore.ImageBuffer.CurrentImageIndexInBuffer).Width + Dim iImageHeight As Integer = m_ImageCore.ImageBuffer.GetBitmap(m_ImageCore.ImageBuffer.CurrentImageIndexInBuffer).Height + 'Dim tempListAnnotation As List(Of AnnotationData) = DirectCast(m_ImageCore.ImageBuffer.GetMetaData(m_ImageCore.ImageBuffer.CurrentImageIndexInBuffer, EnumMetaDataType.enumAnnotation), List(Of AnnotationData)) + 'For Each tempAnnotation As AnnotationData In tempListAnnotation + ' Dim x As Integer = iImageHeight - (tempAnnotation.Location.Y + tempAnnotation.Size.Height) + ' Dim y As Integer = tempAnnotation.Location.X + ' Dim iWidth As Integer = tempAnnotation.Size.Height + ' Dim iHeight As Integer = tempAnnotation.Size.Width + ' Select Case tempAnnotation.AnnotationType + ' 'case AnnotationType.enumLine: + ' Case Dynamsoft.Core.Enums.AnnotationType.enumEllipse, Dynamsoft.Core.Enums.AnnotationType.enumRectangle, Dynamsoft.Core.Enums.AnnotationType.enumText + ' tempAnnotation.StartPoint = New Point(x, y) + ' tempAnnotation.EndPoint = New Point((tempAnnotation.StartPoint.X + iWidth), (tempAnnotation.StartPoint.Y + iHeight)) + ' Exit Select + ' Case Dynamsoft.Core.Enums.AnnotationType.enumLine + ' Dim startPoint As Point = tempAnnotation.StartPoint + ' x = iImageHeight - startPoint.Y + ' y = startPoint.X + ' tempAnnotation.StartPoint = New Point(x, y) + ' Dim endPoint As Point = tempAnnotation.EndPoint + ' x = iImageHeight - endPoint.Y + ' y = endPoint.X + ' tempAnnotation.EndPoint = New Point(x, y) + ' Exit Select + ' End Select + 'Next + + If iImageHeight > iImageWidth Then + m_ImageCore.ImageProcesser.Rotate(m_ImageCore.ImageBuffer.CurrentImageIndexInBuffer, 90, False, EnumInterpolationMethod.BestQuality) + End If + + End Sub + End Class