From fbd500c48302a71ffa6f6d6eb984edc0104f1acb Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Tue, 21 Apr 2026 16:04:38 +0200 Subject: [PATCH 1/3] Spedbuch, etc. --- SDL/Fakturierung/cAutomailversand.vb | 21 +- SDL/Fakturierung/frmAbrechnungsMaske.vb | 8 +- .../Nacherfassung/frmNacherfassungNEU.vb | 2 - .../usrCntlSpeditionsBuchSuche.Designer.vb | 240 ++++++++++-------- .../usrCntlSpeditionsBuchSuche.resx | 6 + .../usrCntlSpeditionsBuchSuche.vb | 12 + VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb | 2 + 7 files changed, 177 insertions(+), 114 deletions(-) diff --git a/SDL/Fakturierung/cAutomailversand.vb b/SDL/Fakturierung/cAutomailversand.vb index 7dac8cd6..b77dda9b 100644 --- a/SDL/Fakturierung/cAutomailversand.vb +++ b/SDL/Fakturierung/cAutomailversand.vb @@ -718,10 +718,24 @@ Public Class cAutomailversand End If End If + Dim cAPIID = -1 + Dim bezAPI As String = "" + + Select Case Sammelrechnungsart + Case 0 + cAPIID = VERAG_PROG_ALLGEMEIN.cAPI_ART.AVISO_OUT_EINZELRECHNUNG + bezAPI = "EINZELRECHNUNG_" & FirmaID + Case 6 + cAPIID = VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_SAMMELRECHNUNG + bezAPI = "MDM_SAMMELRECHNUNG_" & FirmaID + Case Else + cAPIID = VERAG_PROG_ALLGEMEIN.cAPI_ART.AVISO_OUT_SAMMELRECHNUNG + bezAPI = "SAMMELRECHNUNG_" & FirmaID + + End Select - - Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_SAMMELRECHNUNG, "SAMMELRECHNUNG_" & FirmaID,,, row.Item("RechnungsKundenNr"), , , FilialenNr, AbfertigungsNr) + Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, cAPIID, bezAPI,,, row.Item("RechnungsKundenNr"), , , FilialenNr, AbfertigungsNr) API.api_EMail = EMails API.api_EMailCC = EMails_CC @@ -1122,8 +1136,9 @@ Public Class cAutomailversand End Function - Private Function setEmpfaengerMail_ER(SPEDBUCH As cSpeditionsbuch, AD As cAdressen, EMAILTMP As String, EMAILTMPCC As String, EMAILTMPBCC As String, email_receipt As String) + Private Function setEmpfaengerMail_ER(ByRef SPEDBUCH As cSpeditionsbuch, ByRef AD As cAdressen, ByRef EMAILTMP As String, ByRef EMAILTMPCC As String, ByRef EMAILTMPBCC As String, ByRef email_receipt As String) + If SPEDBUCH.FilialenNr = "4801" Or SPEDBUCH.FilialenNr = "4802" Then email_receipt = VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an (ATILLA)") If SPEDBUCH IsNot Nothing Then Dim IMPEXP = (New VERAG_PROG_ALLGEMEIN.SQL).DLookup("isnull(IMEX,'')", "Aviso", "AvisoId='" & SPEDBUCH.AvisoID & "'", "AVISO") diff --git a/SDL/Fakturierung/frmAbrechnungsMaske.vb b/SDL/Fakturierung/frmAbrechnungsMaske.vb index 5c11680b..a2aa7f25 100644 --- a/SDL/Fakturierung/frmAbrechnungsMaske.vb +++ b/SDL/Fakturierung/frmAbrechnungsMaske.vb @@ -1,8 +1,5 @@ Imports System.IO -Imports com.sun.tools.javac.comp Imports Microsoft.Office.Interop -Imports VERAG_PROG_ALLGEMEIN -Imports VERAG_PROG_ALLGEMEIN.TESTJSON Public Class frmAbrechnungsMaske Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL @@ -234,7 +231,6 @@ Public Class frmAbrechnungsMaske End If If .Columns.Contains("AUTO_sent") Then - .Columns("AUTO_sent").HeaderText = "gesen." .Columns("AUTO_sent").Width = 40 If cboRechnungsdruck._value <> "6" Then .Columns("AUTO_sent").Visible = False @@ -330,9 +326,9 @@ Public Class frmAbrechnungsMaske If cboRechnungsdruck._value <> "" Then Select Case cboRechnungsdruck._value Case 6 : sqlstr &= " And isnull(Automailversand,0)=1 " : enableAUTOMAIL_BTN = True - Case 2, 5 : sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' " + Case 2, 5 : sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' And isnull(Automailversand,0)=0" : enableAUTOMAIL_BTN = True Case Else - sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' " : enableAUTOMAIL = False + sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' And isnull(Automailversand,0)=0 " : enableAUTOMAIL = False End Select Else enableAUTOMAIL = False diff --git a/SDL/Speditionsbuch/Nacherfassung/frmNacherfassungNEU.vb b/SDL/Speditionsbuch/Nacherfassung/frmNacherfassungNEU.vb index c8643a5d..78dab95c 100644 --- a/SDL/Speditionsbuch/Nacherfassung/frmNacherfassungNEU.vb +++ b/SDL/Speditionsbuch/Nacherfassung/frmNacherfassungNEU.vb @@ -1,6 +1,4 @@ Imports GrapeCity.ActiveReports -Imports Gemeinsames -Imports System.Web.UI.WebControls.Expressions Imports VERAG_PROG_ALLGEMEIN Public Class frmNacherfassungNEU diff --git a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.Designer.vb b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.Designer.vb index 7dc10fcc..5dec8bf4 100644 --- a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.Designer.vb +++ b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.Designer.vb @@ -23,12 +23,12 @@ Partial Class usrCntlSpeditionsBuchSuche Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container() + Dim DataGridViewCellStyle7 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() + Dim DataGridViewCellStyle8 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() + Dim DataGridViewCellStyle9 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() Dim DataGridViewCellStyle1 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() Dim DataGridViewCellStyle2 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() Dim DataGridViewCellStyle3 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() - Dim DataGridViewCellStyle4 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() - Dim DataGridViewCellStyle5 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() - Dim DataGridViewCellStyle6 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(usrCntlSpeditionsBuchSuche)) Me.TabPage1 = New System.Windows.Forms.TabPage() Me.cntxtCntxtSpeditionsbuch = New System.Windows.Forms.ContextMenuStrip(Me.components) @@ -85,6 +85,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.Button21 = New System.Windows.Forms.Button() Me.btnSpedBuchEinnahmen = New System.Windows.Forms.Button() Me.pnlBerichte = New System.Windows.Forms.Panel() + Me.CheckBox4 = New System.Windows.Forms.CheckBox() Me.cbxDetailbericht = New System.Windows.Forms.CheckBox() Me.MyComboBox2 = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.Button25 = New System.Windows.Forms.Button() @@ -177,6 +178,8 @@ Partial Class usrCntlSpeditionsBuchSuche Me.lblUnterNr = New System.Windows.Forms.Label() Me.lblSachbearbeiter = New System.Windows.Forms.Label() Me.DateTimePicker1 = New System.Windows.Forms.DateTimePicker() + Me.cbxfehlZahlung_SENDUNG = New System.Windows.Forms.CheckBox() + Me.cbxfehlZahlung_AVISOID = New System.Windows.Forms.CheckBox() Me.txtVermerk = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.lblVermerke = New System.Windows.Forms.Label() Me.txtZollstelle = New VERAG_PROG_ALLGEMEIN.MySearchBox() @@ -211,7 +214,6 @@ Partial Class usrCntlSpeditionsBuchSuche Me.Label45 = New System.Windows.Forms.Label() Me.cboFilialeHandling = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.SplitContainer = New System.Windows.Forms.SplitContainer() - Me.CheckBox4 = New System.Windows.Forms.CheckBox() Me.cntxtCntxtSpeditionsbuch.SuspendLayout() Me.pnlRechts.SuspendLayout() CType(Me.DataGridView, System.ComponentModel.ISupportInitialize).BeginInit() @@ -243,7 +245,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.TabPage1.Location = New System.Drawing.Point(4, 25) Me.TabPage1.Name = "TabPage1" Me.TabPage1.Padding = New System.Windows.Forms.Padding(3) - Me.TabPage1.Size = New System.Drawing.Size(1212, 0) + Me.TabPage1.Size = New System.Drawing.Size(1231, 0) Me.TabPage1.TabIndex = 0 Me.TabPage1.Text = "Abfertigungen" Me.TabPage1.UseVisualStyleBackColor = True @@ -421,7 +423,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.cboVersLand._value = "" Me.cboVersLand.DropDownWidth = 300 Me.cboVersLand.FormattingEnabled = True - Me.cboVersLand.Location = New System.Drawing.Point(738, 69) + Me.cboVersLand.Location = New System.Drawing.Point(758, 69) Me.cboVersLand.Name = "cboVersLand" Me.cboVersLand.Size = New System.Drawing.Size(117, 21) Me.cboVersLand.TabIndex = 24 @@ -433,7 +435,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.cboBestLand._value = "" Me.cboBestLand.DropDownWidth = 300 Me.cboBestLand.FormattingEnabled = True - Me.cboBestLand.Location = New System.Drawing.Point(861, 69) + Me.cboBestLand.Location = New System.Drawing.Point(881, 69) Me.cboBestLand.Name = "cboBestLand" Me.cboBestLand.Size = New System.Drawing.Size(118, 21) Me.cboBestLand.TabIndex = 25 @@ -441,7 +443,7 @@ Partial Class usrCntlSpeditionsBuchSuche 'lblBestimmungsland ' Me.lblBestimmungsland.AutoSize = True - Me.lblBestimmungsland.Location = New System.Drawing.Point(858, 55) + Me.lblBestimmungsland.Location = New System.Drawing.Point(878, 55) Me.lblBestimmungsland.Name = "lblBestimmungsland" Me.lblBestimmungsland.Size = New System.Drawing.Size(92, 13) Me.lblBestimmungsland.TabIndex = 20 @@ -485,11 +487,11 @@ Partial Class usrCntlSpeditionsBuchSuche Me.Button11.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Button11.FlatStyle = System.Windows.Forms.FlatStyle.Flat - Me.Button11.Location = New System.Drawing.Point(826, 164) + Me.Button11.Location = New System.Drawing.Point(846, 164) Me.Button11.Margin = New System.Windows.Forms.Padding(0) Me.Button11.MaximumSize = New System.Drawing.Size(100, 26) Me.Button11.Name = "Button11" - Me.Button11.Size = New System.Drawing.Size(22, 0) + Me.Button11.Size = New System.Drawing.Size(41, 0) Me.Button11.TabIndex = 3 Me.Button11.Text = "Keine" Me.Button11.UseVisualStyleBackColor = True @@ -575,9 +577,9 @@ Partial Class usrCntlSpeditionsBuchSuche Me.pnlRechts.Controls.Add(Me.btnKeine) Me.pnlRechts.Controls.Add(Me.lblAbfertigungsarten) Me.pnlRechts.Dock = System.Windows.Forms.DockStyle.Right - Me.pnlRechts.Location = New System.Drawing.Point(986, 0) + Me.pnlRechts.Location = New System.Drawing.Point(1005, 0) Me.pnlRechts.Name = "pnlRechts" - Me.pnlRechts.Size = New System.Drawing.Size(234, 217) + Me.pnlRechts.Size = New System.Drawing.Size(234, 221) Me.pnlRechts.TabIndex = 35 ' 'btnNurAbf @@ -679,36 +681,36 @@ Partial Class usrCntlSpeditionsBuchSuche Me.DataGridView.AllowUserToDeleteRows = False Me.DataGridView.AllowUserToOrderColumns = True Me.DataGridView.AllowUserToResizeRows = False - DataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft - DataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control - DataGridViewCellStyle1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - DataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText - DataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight - DataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText - DataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle1 + DataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft + DataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control + DataGridViewCellStyle7.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + DataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText + DataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight + DataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText + DataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] + Me.DataGridView.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle7 Me.DataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize Me.DataGridView.ContextMenuStrip = Me.cntxtCntxtSpeditionsbuch - DataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft - DataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window - DataGridViewCellStyle2.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - DataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText - DataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight - DataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText - DataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] - Me.DataGridView.DefaultCellStyle = DataGridViewCellStyle2 + DataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft + DataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Window + DataGridViewCellStyle8.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + DataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.ControlText + DataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight + DataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText + DataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] + Me.DataGridView.DefaultCellStyle = DataGridViewCellStyle8 Me.DataGridView.Dock = System.Windows.Forms.DockStyle.Fill Me.DataGridView.Location = New System.Drawing.Point(450, 0) Me.DataGridView.Name = "DataGridView" - DataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft - DataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control - DataGridViewCellStyle3.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - DataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText - DataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight - DataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText - DataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView.RowHeadersDefaultCellStyle = DataGridViewCellStyle3 - Me.DataGridView.Size = New System.Drawing.Size(770, 200) + DataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft + DataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Control + DataGridViewCellStyle9.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + DataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.WindowText + DataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight + DataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.HighlightText + DataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] + Me.DataGridView.RowHeadersDefaultCellStyle = DataGridViewCellStyle9 + Me.DataGridView.Size = New System.Drawing.Size(789, 262) Me.DataGridView.TabIndex = 0 ' 'pnlAnzeige @@ -723,7 +725,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.pnlAnzeige.Dock = System.Windows.Forms.DockStyle.Fill Me.pnlAnzeige.Location = New System.Drawing.Point(0, 0) Me.pnlAnzeige.Name = "pnlAnzeige" - Me.pnlAnzeige.Size = New System.Drawing.Size(1220, 390) + Me.pnlAnzeige.Size = New System.Drawing.Size(1239, 452) Me.pnlAnzeige.TabIndex = 0 ' 'dgvLKW @@ -734,36 +736,36 @@ Partial Class usrCntlSpeditionsBuchSuche Me.dgvLKW.AllowUserToOrderColumns = True Me.dgvLKW.AllowUserToResizeRows = False Me.dgvLKW.BackgroundColor = System.Drawing.Color.WhiteSmoke - DataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft - DataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control - DataGridViewCellStyle4.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - DataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText - DataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight - DataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText - DataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.dgvLKW.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle4 + DataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft + DataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control + DataGridViewCellStyle1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + DataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText + DataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight + DataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText + DataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] + Me.dgvLKW.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle1 Me.dgvLKW.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize Me.dgvLKW.ContextMenuStrip = Me.cntxtCntxtSpeditionsbuch - DataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft - DataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window - DataGridViewCellStyle5.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - DataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.ControlText - DataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight - DataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText - DataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] - Me.dgvLKW.DefaultCellStyle = DataGridViewCellStyle5 + DataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft + DataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window + DataGridViewCellStyle2.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + DataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText + DataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight + DataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText + DataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] + Me.dgvLKW.DefaultCellStyle = DataGridViewCellStyle2 Me.dgvLKW.Dock = System.Windows.Forms.DockStyle.Left Me.dgvLKW.Location = New System.Drawing.Point(0, 0) Me.dgvLKW.Name = "dgvLKW" - DataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft - DataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Control - DataGridViewCellStyle6.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - DataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.WindowText - DataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight - DataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.HighlightText - DataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.dgvLKW.RowHeadersDefaultCellStyle = DataGridViewCellStyle6 - Me.dgvLKW.Size = New System.Drawing.Size(450, 200) + DataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft + DataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control + DataGridViewCellStyle3.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + DataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText + DataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight + DataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText + DataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] + Me.dgvLKW.RowHeadersDefaultCellStyle = DataGridViewCellStyle3 + Me.dgvLKW.Size = New System.Drawing.Size(450, 262) Me.dgvLKW.TabIndex = 35 Me.dgvLKW.Visible = False ' @@ -779,9 +781,9 @@ Partial Class usrCntlSpeditionsBuchSuche Me.pnlOpt.Controls.Add(Me.txtMaxSrch) Me.pnlOpt.Controls.Add(Me.lblErgebnis) Me.pnlOpt.Dock = System.Windows.Forms.DockStyle.Bottom - Me.pnlOpt.Location = New System.Drawing.Point(0, 200) + Me.pnlOpt.Location = New System.Drawing.Point(0, 262) Me.pnlOpt.Name = "pnlOpt" - Me.pnlOpt.Size = New System.Drawing.Size(1220, 190) + Me.pnlOpt.Size = New System.Drawing.Size(1239, 190) Me.pnlOpt.TabIndex = 1 ' 'Panel3 @@ -1097,6 +1099,17 @@ Partial Class usrCntlSpeditionsBuchSuche Me.pnlBerichte.TabIndex = 6 Me.pnlBerichte.Visible = False ' + 'CheckBox4 + ' + Me.CheckBox4.AutoSize = True + Me.CheckBox4.BackColor = System.Drawing.Color.WhiteSmoke + Me.CheckBox4.Location = New System.Drawing.Point(413, 141) + Me.CheckBox4.Name = "CheckBox4" + Me.CheckBox4.Size = New System.Drawing.Size(78, 17) + Me.CheckBox4.TabIndex = 95 + Me.CheckBox4.Text = "Detailb.Full" + Me.CheckBox4.UseVisualStyleBackColor = False + ' 'cbxDetailbericht ' Me.cbxDetailbericht.AutoSize = True @@ -1188,7 +1201,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.KundenauswertungenToolStripMenuItem1}) Me.MenuStrip1.Location = New System.Drawing.Point(322, 156) Me.MenuStrip1.Name = "MenuStrip1" - Me.MenuStrip1.Size = New System.Drawing.Size(283, 27) + Me.MenuStrip1.Size = New System.Drawing.Size(163, 27) Me.MenuStrip1.TabIndex = 89 Me.MenuStrip1.Text = "Kundenauswertungen" ' @@ -1206,14 +1219,14 @@ Partial Class usrCntlSpeditionsBuchSuche ' Me.ToolStripMenuItem2.Image = CType(resources.GetObject("ToolStripMenuItem2.Image"), System.Drawing.Image) Me.ToolStripMenuItem2.Name = "ToolStripMenuItem2" - Me.ToolStripMenuItem2.Size = New System.Drawing.Size(316, 30) + Me.ToolStripMenuItem2.Size = New System.Drawing.Size(308, 24) Me.ToolStripMenuItem2.Text = "Kanadevia (Zeitraum auswählen)" ' 'ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem ' Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Image = CType(resources.GetObject("ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Image"), System.Drawing.Image) Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Name = "ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem" - Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(316, 30) + Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(308, 24) Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Text = "ZF Passau (Zeitraum auswählen)" Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Visible = False ' @@ -1221,14 +1234,14 @@ Partial Class usrCntlSpeditionsBuchSuche ' Me.ZFSteyrZeitraumAuswählenToolStripMenuItem.Image = Global.SDL.My.Resources.Resources.Excel_logo Me.ZFSteyrZeitraumAuswählenToolStripMenuItem.Name = "ZFSteyrZeitraumAuswählenToolStripMenuItem" - Me.ZFSteyrZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(316, 30) + Me.ZFSteyrZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(308, 24) Me.ZFSteyrZeitraumAuswählenToolStripMenuItem.Text = "ZF Steyr (Zeitraum auswählen)" ' 'ZFThyrnauZeitraumAuswählenToolStripMenuItem ' Me.ZFThyrnauZeitraumAuswählenToolStripMenuItem.Image = Global.SDL.My.Resources.Resources.Excel_logo Me.ZFThyrnauZeitraumAuswählenToolStripMenuItem.Name = "ZFThyrnauZeitraumAuswählenToolStripMenuItem" - Me.ZFThyrnauZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(316, 30) + Me.ZFThyrnauZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(308, 24) Me.ZFThyrnauZeitraumAuswählenToolStripMenuItem.Text = "ZF Thyrnau (Zeitraum auswählen)" Me.ZFThyrnauZeitraumAuswählenToolStripMenuItem.Visible = False ' @@ -1236,7 +1249,7 @@ Partial Class usrCntlSpeditionsBuchSuche ' Me.AuswertungDiversZeitraumAuswählenToolStripMenuItem.Image = Global.SDL.My.Resources.Resources.Excel_logo Me.AuswertungDiversZeitraumAuswählenToolStripMenuItem.Name = "AuswertungDiversZeitraumAuswählenToolStripMenuItem" - Me.AuswertungDiversZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(316, 30) + Me.AuswertungDiversZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(308, 24) Me.AuswertungDiversZeitraumAuswählenToolStripMenuItem.Text = "Flender Bocholt (Zeitraum auswählen)" Me.AuswertungDiversZeitraumAuswählenToolStripMenuItem.Visible = False ' @@ -1597,7 +1610,7 @@ Partial Class usrCntlSpeditionsBuchSuche 'lblErgebnis ' Me.lblErgebnis.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.lblErgebnis.Location = New System.Drawing.Point(958, 14) + Me.lblErgebnis.Location = New System.Drawing.Point(977, 14) Me.lblErgebnis.Name = "lblErgebnis" Me.lblErgebnis.Size = New System.Drawing.Size(215, 14) Me.lblErgebnis.TabIndex = 2 @@ -1610,7 +1623,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.Button3.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.Button3.Image = Global.SDL.My.Resources.Resources.plus Me.Button3.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.Button3.Location = New System.Drawing.Point(112, 180) + Me.Button3.Location = New System.Drawing.Point(112, 242) Me.Button3.Margin = New System.Windows.Forms.Padding(0) Me.Button3.Name = "Button3" Me.Button3.Size = New System.Drawing.Size(138, 31) @@ -1661,7 +1674,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.TabPage2.Location = New System.Drawing.Point(4, 25) Me.TabPage2.Name = "TabPage2" Me.TabPage2.Padding = New System.Windows.Forms.Padding(3) - Me.TabPage2.Size = New System.Drawing.Size(1212, 0) + Me.TabPage2.Size = New System.Drawing.Size(1231, 0) Me.TabPage2.TabIndex = 1 Me.TabPage2.Text = "LKWs" Me.TabPage2.UseVisualStyleBackColor = True @@ -1672,10 +1685,10 @@ Partial Class usrCntlSpeditionsBuchSuche Me.tbcntr.Controls.Add(Me.TabPage2) Me.tbcntr.Dock = System.Windows.Forms.DockStyle.Bottom Me.tbcntr.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.tbcntr.Location = New System.Drawing.Point(0, 305) + Me.tbcntr.Location = New System.Drawing.Point(0, 309) Me.tbcntr.Name = "tbcntr" Me.tbcntr.SelectedIndex = 0 - Me.tbcntr.Size = New System.Drawing.Size(1220, 25) + Me.tbcntr.Size = New System.Drawing.Size(1239, 21) Me.tbcntr.TabIndex = 36 ' 'Label29 @@ -1700,7 +1713,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.pnlTop.Dock = System.Windows.Forms.DockStyle.Top Me.pnlTop.Location = New System.Drawing.Point(0, 0) Me.pnlTop.Name = "pnlTop" - Me.pnlTop.Size = New System.Drawing.Size(1220, 48) + Me.pnlTop.Size = New System.Drawing.Size(1239, 48) Me.pnlTop.TabIndex = 2 ' 'Label30 @@ -1988,7 +2001,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.btnSuche.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.btnSuche.Image = Global.SDL.My.Resources.Resources.search Me.btnSuche.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.btnSuche.Location = New System.Drawing.Point(1053, 6) + Me.btnSuche.Location = New System.Drawing.Point(1072, 6) Me.btnSuche.Name = "btnSuche" Me.btnSuche.Size = New System.Drawing.Size(162, 52) Me.btnSuche.TabIndex = 28 @@ -2005,7 +2018,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.pnlSearch.Dock = System.Windows.Forms.DockStyle.Fill Me.pnlSearch.Location = New System.Drawing.Point(0, 0) Me.pnlSearch.Name = "pnlSearch" - Me.pnlSearch.Size = New System.Drawing.Size(1220, 330) + Me.pnlSearch.Size = New System.Drawing.Size(1239, 330) Me.pnlSearch.TabIndex = 0 ' 'SplitContainer1 @@ -2055,6 +2068,8 @@ Partial Class usrCntlSpeditionsBuchSuche ' 'SplitContainer1.Panel2 ' + Me.SplitContainer1.Panel2.Controls.Add(Me.cbxfehlZahlung_SENDUNG) + Me.SplitContainer1.Panel2.Controls.Add(Me.cbxfehlZahlung_AVISOID) Me.SplitContainer1.Panel2.Controls.Add(Me.txtVermerk) Me.SplitContainer1.Panel2.Controls.Add(Me.lblVermerke) Me.SplitContainer1.Panel2.Controls.Add(Me.txtZollstelle) @@ -2106,7 +2121,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.SplitContainer1.Panel2.Controls.Add(Me.lblErfassungsNr) Me.SplitContainer1.Panel2.Controls.Add(Me.cbxOderEmpfanger) Me.SplitContainer1.Panel2.Controls.Add(Me.Panel2) - Me.SplitContainer1.Size = New System.Drawing.Size(1220, 305) + Me.SplitContainer1.Size = New System.Drawing.Size(1239, 309) Me.SplitContainer1.SplitterDistance = 84 Me.SplitContainer1.TabIndex = 0 ' @@ -2258,7 +2273,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.btnDetailsuche.ForeColor = System.Drawing.Color.White Me.btnDetailsuche.Image = Global.SDL.My.Resources.Resources.pfeil_unten Me.btnDetailsuche.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.btnDetailsuche.Location = New System.Drawing.Point(1053, 57) + Me.btnDetailsuche.Location = New System.Drawing.Point(1072, 57) Me.btnDetailsuche.Margin = New System.Windows.Forms.Padding(0) Me.btnDetailsuche.Name = "btnDetailsuche" Me.btnDetailsuche.Padding = New System.Windows.Forms.Padding(0, 0, 10, 0) @@ -2366,6 +2381,34 @@ Partial Class usrCntlSpeditionsBuchSuche Me.DateTimePicker1.Size = New System.Drawing.Size(115, 20) Me.DateTimePicker1.TabIndex = 2 ' + 'cbxfehlZahlung_SENDUNG + ' + Me.cbxfehlZahlung_SENDUNG.AutoSize = True + Me.cbxfehlZahlung_SENDUNG.BackColor = System.Drawing.Color.White + Me.cbxfehlZahlung_SENDUNG.Checked = True + Me.cbxfehlZahlung_SENDUNG.CheckState = System.Windows.Forms.CheckState.Indeterminate + Me.cbxfehlZahlung_SENDUNG.Location = New System.Drawing.Point(568, 200) + Me.cbxfehlZahlung_SENDUNG.Name = "cbxfehlZahlung_SENDUNG" + Me.cbxfehlZahlung_SENDUNG.Size = New System.Drawing.Size(75, 17) + Me.cbxfehlZahlung_SENDUNG.TabIndex = 59 + Me.cbxfehlZahlung_SENDUNG.Text = "fehl. Z. (S)" + Me.cbxfehlZahlung_SENDUNG.ThreeState = True + Me.cbxfehlZahlung_SENDUNG.UseVisualStyleBackColor = False + ' + 'cbxfehlZahlung_AVISOID + ' + Me.cbxfehlZahlung_AVISOID.AutoSize = True + Me.cbxfehlZahlung_AVISOID.BackColor = System.Drawing.Color.White + Me.cbxfehlZahlung_AVISOID.Checked = True + Me.cbxfehlZahlung_AVISOID.CheckState = System.Windows.Forms.CheckState.Indeterminate + Me.cbxfehlZahlung_AVISOID.Location = New System.Drawing.Point(490, 200) + Me.cbxfehlZahlung_AVISOID.Name = "cbxfehlZahlung_AVISOID" + Me.cbxfehlZahlung_AVISOID.Size = New System.Drawing.Size(75, 17) + Me.cbxfehlZahlung_AVISOID.TabIndex = 58 + Me.cbxfehlZahlung_AVISOID.Text = "fehl. Z. (A)" + Me.cbxfehlZahlung_AVISOID.ThreeState = True + Me.cbxfehlZahlung_AVISOID.UseVisualStyleBackColor = False + ' 'txtVermerk ' Me.txtVermerk._DateTimeOnly = False @@ -2413,7 +2456,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.txtZollstelle.INVISIBLE_COLUMNS = Nothing Me.txtZollstelle.key_visible = False Me.txtZollstelle.KEYPARAM = Nothing - Me.txtZollstelle.Location = New System.Drawing.Point(627, 192) + Me.txtZollstelle.Location = New System.Drawing.Point(649, 192) Me.txtZollstelle.MaxLength = 50 Me.txtZollstelle.Name = "txtZollstelle" Me.txtZollstelle.searchActive = True @@ -2446,7 +2489,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.cbxCMR.BackColor = System.Drawing.Color.White Me.cbxCMR.Checked = True Me.cbxCMR.CheckState = System.Windows.Forms.CheckState.Indeterminate - Me.cbxCMR.Location = New System.Drawing.Point(493, 198) + Me.cbxCMR.Location = New System.Drawing.Point(604, 180) Me.cbxCMR.Name = "cbxCMR" Me.cbxCMR.Size = New System.Drawing.Size(50, 17) Me.cbxCMR.TabIndex = 49 @@ -2457,7 +2500,7 @@ Partial Class usrCntlSpeditionsBuchSuche 'Label41 ' Me.Label41.AutoSize = True - Me.Label41.Location = New System.Drawing.Point(624, 93) + Me.Label41.Location = New System.Drawing.Point(644, 93) Me.Label41.Name = "Label41" Me.Label41.Size = New System.Drawing.Size(44, 13) Me.Label41.TabIndex = 48 @@ -2491,7 +2534,7 @@ Partial Class usrCntlSpeditionsBuchSuche ' Me.lstGrenze._value = "" Me.lstGrenze.FormattingEnabled = True - Me.lstGrenze.Location = New System.Drawing.Point(627, 108) + Me.lstGrenze.Location = New System.Drawing.Point(649, 108) Me.lstGrenze.Name = "lstGrenze" Me.lstGrenze.SelectionMode = System.Windows.Forms.SelectionMode.MultiSimple Me.lstGrenze.Size = New System.Drawing.Size(105, 82) @@ -2591,7 +2634,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.cbxFakturiert.BackColor = System.Drawing.Color.White Me.cbxFakturiert.Checked = True Me.cbxFakturiert.CheckState = System.Windows.Forms.CheckState.Indeterminate - Me.cbxFakturiert.Location = New System.Drawing.Point(539, 180) + Me.cbxFakturiert.Location = New System.Drawing.Point(532, 180) Me.cbxFakturiert.Name = "cbxFakturiert" Me.cbxFakturiert.Size = New System.Drawing.Size(70, 17) Me.cbxFakturiert.TabIndex = 32 @@ -2668,7 +2711,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.cbxBar.BackColor = System.Drawing.Color.White Me.cbxBar.Checked = True Me.cbxBar.CheckState = System.Windows.Forms.CheckState.Indeterminate - Me.cbxBar.Location = New System.Drawing.Point(493, 180) + Me.cbxBar.Location = New System.Drawing.Point(490, 180) Me.cbxBar.Name = "cbxBar" Me.cbxBar.Size = New System.Drawing.Size(42, 17) Me.cbxBar.TabIndex = 31 @@ -2818,7 +2861,7 @@ Partial Class usrCntlSpeditionsBuchSuche 'lblVersendungsland ' Me.lblVersendungsland.AutoSize = True - Me.lblVersendungsland.Location = New System.Drawing.Point(735, 55) + Me.lblVersendungsland.Location = New System.Drawing.Point(755, 55) Me.lblVersendungsland.Name = "lblVersendungsland" Me.lblVersendungsland.Size = New System.Drawing.Size(92, 13) Me.lblVersendungsland.TabIndex = 19 @@ -2854,9 +2897,9 @@ Partial Class usrCntlSpeditionsBuchSuche Me.Panel2.Controls.Add(Me.Label45) Me.Panel2.Controls.Add(Me.cboFilialeHandling) Me.Panel2.Controls.Add(Me.Label15) - Me.Panel2.Location = New System.Drawing.Point(735, 93) + Me.Panel2.Location = New System.Drawing.Point(758, 93) Me.Panel2.Name = "Panel2" - Me.Panel2.Size = New System.Drawing.Size(248, 122) + Me.Panel2.Size = New System.Drawing.Size(245, 122) Me.Panel2.TabIndex = 53 ' 'MyComboBox1 @@ -2920,22 +2963,11 @@ Partial Class usrCntlSpeditionsBuchSuche 'SplitContainer.Panel2 ' Me.SplitContainer.Panel2.Controls.Add(Me.pnlAnzeige) - Me.SplitContainer.Size = New System.Drawing.Size(1220, 722) + Me.SplitContainer.Size = New System.Drawing.Size(1239, 784) Me.SplitContainer.SplitterDistance = 330 Me.SplitContainer.SplitterWidth = 2 Me.SplitContainer.TabIndex = 3 ' - 'CheckBox4 - ' - Me.CheckBox4.AutoSize = True - Me.CheckBox4.BackColor = System.Drawing.Color.WhiteSmoke - Me.CheckBox4.Location = New System.Drawing.Point(413, 141) - Me.CheckBox4.Name = "CheckBox4" - Me.CheckBox4.Size = New System.Drawing.Size(78, 17) - Me.CheckBox4.TabIndex = 95 - Me.CheckBox4.Text = "Detailb.Full" - Me.CheckBox4.UseVisualStyleBackColor = False - ' 'usrCntlSpeditionsBuchSuche ' Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None @@ -2943,7 +2975,7 @@ Partial Class usrCntlSpeditionsBuchSuche Me.Controls.Add(Me.SplitContainer) Me.Controls.Add(Me.pnlTop) Me.Name = "usrCntlSpeditionsBuchSuche" - Me.Size = New System.Drawing.Size(1220, 770) + Me.Size = New System.Drawing.Size(1239, 832) Me.cntxtCntxtSpeditionsbuch.ResumeLayout(False) Me.pnlRechts.ResumeLayout(False) Me.pnlRechts.PerformLayout() @@ -3166,4 +3198,6 @@ Partial Class usrCntlSpeditionsBuchSuche Friend WithEvents Button2 As Button Friend WithEvents ToolStripMenuItem2 As ToolStripMenuItem Friend WithEvents CheckBox4 As CheckBox + Friend WithEvents cbxfehlZahlung_AVISOID As CheckBox + Friend WithEvents cbxfehlZahlung_SENDUNG As CheckBox End Class diff --git a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.resx b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.resx index 34a80e24..3e1be91e 100644 --- a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.resx +++ b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.resx @@ -126,6 +126,9 @@ 431, 17 + + 431, 17 + @@ -296,4 +299,7 @@ 546, 17 + + 546, 17 + \ No newline at end of file diff --git a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb index e417bf5a..ed0d1e90 100644 --- a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb +++ b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb @@ -290,6 +290,14 @@ Public Class usrCntlSpeditionsBuchSuche If cbxFakturiert.CheckState = CheckState.Unchecked Then sqlstr &= " AND Fakturiert=0 " If cbxCMR.CheckState = CheckState.Unchecked Then sqlstr &= " AND SB_CMR=0 " + + If cbxfehlZahlung_AVISOID.CheckState = CheckState.Checked Then sqlstr &= " AND NOT EXISTS (select * FROM [Rechnungsausgang] WHERE [Rechnungsausgang].AvisoID=Speditionsbuch.AvisoID) AND NOT EXISTS (select * FROM [tblEABelegnummer] WHERE LKW_id= Speditionsbuch.AvisoID AND storniert=0 and gebuchtstorno=0)" + 'If cbxfehlZahlung_AVISOID.CheckState = CheckState.Unchecked Then sqlstr &= " AND EXISTS (select * FROM [Rechnungsausgang] WHERE [Rechnungsausgang].AvisoID=Speditionsbuch.AvisoID) " + + If cbxfehlZahlung_SENDUNG.CheckState = CheckState.Checked Then sqlstr &= " AND NOT EXISTS (select * FROM [Rechnungsausgang] WHERE [Rechnungsausgang].FilialenNr=Speditionsbuch.FilialenNr and [Rechnungsausgang].AbfertigungsNr=[Speditionsbuch].AbfertigungsNr AND [Rechnungsausgang].[SpeditionsbuchUnterNr]=[Speditionsbuch].UnterNr) AND NOT EXISTS (select * FROM [tblEABelegnummer] WHERE tblEABelegnummer].FilialenNr=[Speditionsbuch].[FilialenNr] and [tblEABelegnummer].AbfertigungsNr=[Speditionsbuch].AbfertigungsNr and [tblEABelegnummer].FilialenNr>0 and [tblEABelegnummer].AbfertigungsNr>0 AND storniert=0 and gebuchtstorno=0) " + 'If cbxfehlZahlung_SENDUNG.CheckState = CheckState.Unchecked Then sqlstr &= " AND EXISTS (select * FROM [Rechnungsausgang] WHERE [Rechnungsausgang].FilialenNr=Speditionsbuch.FilialenNr and [Rechnungsausgang].AbfertigungsNr=[Speditionsbuch].AbfertigungsNr AND [Rechnungsausgang].[SpeditionsbuchUnterNr]=[Speditionsbuch].UnterNr)" + + If cbxEIDR.Visible Then If cbxEIDR.CheckState = CheckState.Checked Then sqlstr &= " AND UK_EIDR_ausstehend=1 " If cbxEIDR.CheckState = CheckState.Unchecked Then sqlstr &= " AND UK_EIDR_ausstehend=0 " @@ -3499,6 +3507,10 @@ Public Class usrCntlSpeditionsBuchSuche End Try Me.Cursor = Cursors.Default End Sub + + Private Sub DataGridView_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) + + End Sub End Class Class cSpeditionsbuchReport diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb b/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb index 96dd23be..cc9c35fc 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb @@ -28,6 +28,8 @@ Public Enum cAPI_ART SDL_OUT_FA = 81 SDL_OUT_SAMMELRECHNUNG = 82 AVISO_IN_CS = 83 + AVISO_OUT_SAMMELRECHNUNG = 84 + AVISO_OUT_EINZELRECHNUNG = 85 End Enum From 63b96fb4909c36bb295343f28a1417e262ac6439 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Thu, 23 Apr 2026 16:00:32 +0200 Subject: [PATCH 2/3] Fiskaltrust, etc. --- SDL/Classes/cFiskaltrustClient.vb | 131 +++++++++--- SDL/Fakturierung/cAutomailversand.vb | 196 ++++++++++++------ SDL/Fakturierung/frmAbrechnungsMaske.vb | 8 +- .../frmFaktSammelRgDrucken.Designer.vb | 5 +- SDL/Fakturierung/frmFaktSammelRgDrucken.vb | 121 +++++------ SDL/Fakturierung/usrCntlFaktAbrechnung.vb | 10 + SDL/kassenbuch/frmBelegNeu.Designer.vb | 5 +- SDL/kassenbuch/frmBelegNeu.vb | 54 +++-- .../usrcntlKundeBearbeitenFull.Designer.vb | 33 ++- SDL/kunden/usrcntlKundeBearbeitenFull.vb | 2 + SDL/mdm/usrCntlMDMAuswertungen.Designer.vb | 4 +- SDL/mdm/usrCntlMDMAuswertungen.vb | 2 +- SDL/mdm/usrcntlFremdrechnungen.vb | 2 +- ...interneEmailbenachrichtigungen.Designer.vb | 186 +++++++++-------- .../frminterneEmailbenachrichtigungen.vb | 36 ++-- VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb | 1 + .../Classes/cKundenErweitert.vb | 2 + .../VERAG_PROG_ALLGEMEIN.vbproj | 1 + 18 files changed, 482 insertions(+), 317 deletions(-) diff --git a/SDL/Classes/cFiskaltrustClient.vb b/SDL/Classes/cFiskaltrustClient.vb index c0eb440e..def3cdde 100644 --- a/SDL/Classes/cFiskaltrustClient.vb +++ b/SDL/Classes/cFiskaltrustClient.vb @@ -1,7 +1,9 @@ Imports System.Net.Http Imports System.Text -Imports Newtonsoft.Json Imports System.Threading +Imports DocumentFormat.OpenXml.Drawing +Imports DocumentFormat.OpenXml.Wordprocessing +Imports Newtonsoft.Json Public Class cFiskaltrustClient @@ -27,17 +29,89 @@ Public Class cFiskaltrustClient Dim payload = BuildPayload(amount, vat, POS) Dim endpoint = GetEndpoint("payment") - Return Await SendAsync(endpoint, payload) + Dim requestContent As StringContent + + If _country = "AT" Then + ' Plaintext + Dim text As String = If(payload?.ToString(), "") + Dim json As String = JsonConvert.SerializeObject(text) + requestContent = New StringContent(json, Encoding.UTF8, "text/plain") + Else + ' JSON Objekt + + Dim json As String = JsonConvert.SerializeObject(payload) + requestContent = New StringContent(json, Encoding.UTF8, "application/json") + End If + + Return Await SendAsync(endpoint, payload, requestContent) + + End Function + Public Async Function SignReceiptAsync_test() As Task(Of String) + + Dim LIST = New List(Of EABelegPositionen) + Dim p = New EABelegPositionen + p.Mandant = "VERA" + p.Niederlassung = "SUB" + p.Benutzer = 74 + p.BelegDat = Now + p.BelegNr = 1 + p.PreislistenNr = 1 + p.PreislistenPos = 1 + p.LeistungsNr = 300 + p.LeistungsBez = "TEST" + p.Preis = 10 + p.Anzahl = 1 + LIST.Add(p) + + Dim payload = BuildPayload(100, 0, LIST) + Dim endpoint = GetEndpoint("payment") + + Dim requestContent As StringContent + + If _country = "AT" Then + ' Plaintext + 'Dim text As String = If(payload?.ToString(), "") + Dim json As String = JsonConvert.SerializeObject(payload) + 'requestContent = New StringContent(json, Encoding.UTF8, "text/plain") + requestContent = New StringContent(json, Encoding.UTF8, "application/json") + Else + ' JSON Objekt + + Dim json As String = JsonConvert.SerializeObject(payload) + requestContent = New StringContent(json, Encoding.UTF8, "application/json") + End If + + + Return Await SendAsync(endpoint, payload, requestContent) End Function Public Async Function Echo() As Task(Of String) - Dim payload = "TEST" + Dim payload = "VERBINDUNGSPRÜFUNG ERFOLGREICH" Dim endpoint = GetEndpoint("test") - Return Await SendAsync(endpoint, payload) + Dim requestContent As StringContent + + If _country = "AT" Then + ' Plaintext + Dim text As String = If(payload?.ToString(), "") + Dim json As String = JsonConvert.SerializeObject(text) + requestContent = New StringContent(json, Encoding.UTF8, "text/plain") + Else + ' JSON Objekt + Dim obj = New With { + .Message = payload + } + + Dim json As String = JsonConvert.SerializeObject(obj) + requestContent = New StringContent(json, Encoding.UTF8, "application/json") + End If + + + + Return Await SendAsync(endpoint, payload, requestContent) End Function @@ -53,18 +127,30 @@ Public Class cFiskaltrustClient .ftReceiptCase = 4919338172267102210 ' Storno } - Return Await SendAsync(GetEndpoint("payment"), payload) + Dim requestContent As StringContent + + + If _country = "AT" Then + ' Plaintext + Dim text As String = If(payload?.ToString(), "") + Dim json As String = JsonConvert.SerializeObject(text) + requestContent = New StringContent(json, Encoding.UTF8, "text/plain") + Else + ' JSON Objekt + + Dim json As String = JsonConvert.SerializeObject(payload) + requestContent = New StringContent(json, Encoding.UTF8, "application/json") + End If + + Return Await SendAsync(GetEndpoint("payment"), payload, requestContent) End Function - ' ================================ - ' CORE HTTP LOGIC (RETRY!) - ' ================================ - Private Async Function SendAsync(endpoint As String, payload As Object) As Task(Of String) + Private Async Function SendAsync(endpoint As String, payload As Object, requestContent As StringContent) As Task(Of String) Dim exToThrow As Exception = Nothing - Dim json As String = JsonConvert.SerializeObject(payload) + Dim url = _baseUrl & endpoint Dim retries As Integer = 3 @@ -78,12 +164,7 @@ Public Class cFiskaltrustClient request.Headers.Add("cashboxid", _cashboxId) request.Headers.Add("accesstoken", _accessToken) - Select Case _country - Case "AT" - request.Content = New StringContent(json, Encoding.UTF8, "text/xml") - Case Else - request.Content = New StringContent(json, Encoding.UTF8, "application/json") - End Select + request.Content = requestContent Dim response = Await _httpClient.SendAsync(request) Dim result = Await response.Content.ReadAsStringAsync() @@ -120,7 +201,7 @@ Public Class cFiskaltrustClient If exToThrow IsNot Nothing Then - Await Task.Delay(1000) ' ✅ jetzt OK + Await Task.Delay(1000) Throw exToThrow End If @@ -129,11 +210,6 @@ Public Class cFiskaltrustClient End Function - - - ' ================================ - ' PAYLOAD BUILDER - ' ================================ Private Function BuildPayload(amount As Double, vat As Double, POS As List(Of EABelegPositionen)) As Object ' ChargeItems Liste vorbereiten @@ -172,9 +248,7 @@ Public Class cFiskaltrustClient End Function - ' ================================ - ' ENDPOINT SWITCH - ' ================================ + Private Function GetEndpoint(type As String) As String If type = "payment" Then @@ -208,14 +282,7 @@ Public Class cFiskaltrustClient End Function - ' ================================ - ' LOGGING (REPLACE IN PROD!) - ' ================================ Private Sub Log(message As String) - ' 👉 Hier anschließen: - ' - Datei - ' - Datenbank - ' - Serilog / NLog Console.WriteLine(message) End Sub diff --git a/SDL/Fakturierung/cAutomailversand.vb b/SDL/Fakturierung/cAutomailversand.vb index b77dda9b..511ba1ad 100644 --- a/SDL/Fakturierung/cAutomailversand.vb +++ b/SDL/Fakturierung/cAutomailversand.vb @@ -1,4 +1,5 @@ Imports System.IO +Imports jdk.nashorn.internal.objects.annotations Imports Microsoft.Office.Interop Imports VERAG_PROG_ALLGEMEIN @@ -19,7 +20,12 @@ Public Class cAutomailversand 'NUR STATUS 2 -> d.b. Rechnungsdatum + RechnungsNr vergeben! - Dim rechnungenMailversand = "SELECT RechnungsNr,RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0) as keineMWST, max(Rechnungsausgang.[RechnungsLandKz]) as RechnungsLandKz, MitgliedslandEU, sum(Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Steuer FROM Rechnungsausgang + Dim rechnungenMailversand = "" + + Select Case SammelrechungArt + Case 6 + + rechnungenMailversand = "SELECT RechnungsNr,RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0) as keineMWST, max(Rechnungsausgang.[RechnungsLandKz]) as RechnungsLandKz, MitgliedslandEU, sum(Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Steuer FROM Rechnungsausgang LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz WHERE Rechnungsausgang.Status IN (2) and Rechnungsausgang.Automailversand_sent is null And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & _Rechnungsdatum.ToShortDateString & "' @@ -27,8 +33,23 @@ Public Class cAutomailversand GROUP BY RechnungsNr, RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0),RechnungsLandKz, MitgliedslandEU ORDER BY RechnungsLandKz, RechnungsKundenNr" + Case Else + + rechnungenMailversand = "SELECT RechnungsNr,RechnungsKundenNr,max(Rechnungsausgang.[RechnungsLandKz]) as RechnungsLandKz, sum(Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Steuer, tblKundenErweitert.kde_SR_IM_EX FROM Rechnungsausgang + LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr + INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz + WHERE Rechnungsausgang.Status IN (2) and Rechnungsausgang.Automailversand_sent is null And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & _Rechnungsdatum.ToShortDateString & "' + and isnull(Rechnungsausgang.Automailversand,0) = 1 and RechnungsNr > 0 " & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & " + GROUP BY RechnungsNr, RechnungsKundenNr,tblKundenErweitert.kde_SR_IM_EX + ORDER BY RechnungsLandKz, RechnungsKundenNr" + + End Select + + + Dim dt As DataTable = sql.loadDgvBySql(rechnungenMailversand, "FMZOLL") Dim MDMKopiedrucken As Boolean = False + Dim IM_EX As Boolean = False For Each row As DataRow In dt.Rows @@ -40,7 +61,8 @@ Public Class cAutomailversand Dim Rechnungsdatum = Nothing Dim ATTACHMENTS As New List(Of cFakt_MailATTach) - If FirmaID = 19 Then + + If FirmaID = 19 AndAlso SammelrechungArt = 6 Then 'AKTUELL IMMER MIT KOPIE MDMKopiedrucken = True @@ -61,79 +83,100 @@ Public Class cAutomailversand 'immer KOPIE weil Ausdruck aktuell noch gesendet! End If - End If - - SR_DT = cFakturierung.GET_SR_SQLDT(FirmaID, SammelrechungArt, _Rechnungsdatum, row.Item("RechnungsKundenNr"),,,,, True) - - Dim AD = New VERAG_PROG_ALLGEMEIN.cAdressen(row.Item("RechnungsKundenNr")) - Dim FISKAL = New cFiskal_Daten(row.Item("RechnungsKundenNr")) - - If RechnungsNr = -1 Then - If SR_DT.Rows.Count > 0 Then - Dim displayView = New DataView(SR_DT, "RechnungsNr is not null", "RechnungsNr", DataViewRowState.CurrentRows) - Dim distinctDT_SR As DataTable = displayView.ToTable(True, "RechnungsNr", "DruckDatumZeit", "Rechnungsdatum") - If distinctDT_SR.Rows.Count = 1 Then - RechnungsNr = distinctDT_SR.Rows(0).Item("RechnungsNr") - DruckDatumZeit = distinctDT_SR.Rows(0).Item("DruckDatumZeit") - Rechnungsdatum = distinctDT_SR.Rows(0).Item("Rechnungsdatum") - BelegartenNr = SR_DT.Rows(0)("BelegartenNr") - For Each r In SR_DT.Rows - steuerbetrag += r("steuerpflichtigerGesamtbetrag") - If BelegartenNr <> r("BelegartenNr") Then BelegartenNr = "70" : Exit For - Next - End If - - End If - End If - - Dim SR As Boolean = True - - Dim MailTo As String = "" - Dim MailtoCC As String = "" - Dim MailtoBCC As String = "" - - - setEmpfaengerMail_SR(SR_DT, AD, MailTo, MailtoCC, MailtoBCC, FirmaID, SammelrechungArt) - - 'im TESTSYSTEM bewusst die Empfänger leeren! - - If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then - MailTo = "" - MailtoCC = "" - MailtoBCC = setAccountToSend(FirmaID) Else - MailtoBCC = setAccountToSend(FirmaID) + + IM_EX = row.Item("kde_SR_IM_EX") + End If + Dim LoopForSR = 1 + If IM_EX Then LoopForSR = 2 + For i = 1 To LoopForSR - If Not (MailTo = "" AndAlso MailtoCC = "" AndAlso MailtoBCC = "") Then + Dim AbfertigungsNr As String = "" - Dim Mailsubject As String = "" - Dim HTMLMail As String = "" + If IM_EX Then + AbfertigungsNr = getAbertigungsNr(i) + End If - Dim listPDFs As New List(Of String) - Dim showError As Boolean = False - setEmailText(row, FirmaID, RechnungsNr, Mailsubject, HTMLMail, SammelrechungArt, dt, BelegartenNr) - If do_SR(row.Item("RechnungsKundenNr"), FirmaID, SammelrechungArt, Rechnungsdatum, RechnungsNr, DruckDatumZeit, MDMKopiedrucken, listPDFs,,,, showError) Then - loadAndSetAnhaenge(SR_DT, ATTACHMENTS, listPDFs) + SR_DT = cFakturierung.GET_SR_SQLDT(FirmaID, SammelrechungArt, _Rechnungsdatum, row.Item("RechnungsKundenNr"),,,, AbfertigungsNr, True) - If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Mailsubject &= " TEST" + If SR_DT.Rows.Count = 0 Then Continue For - If mailoeffnen Then - Dim Mail = createMail(Mailsubject, HTMLMail, ATTACHMENTS, MailTo, MailtoCC, MailtoBCC, FirmaID) - If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum,,,,,,, Mail) Then - Mail.Display() + Dim AD = New VERAG_PROG_ALLGEMEIN.cAdressen(row.Item("RechnungsKundenNr")) + Dim FISKAL = New cFiskal_Daten(row.Item("RechnungsKundenNr")) + + If RechnungsNr = -1 Then + If SR_DT.Rows.Count > 0 Then + Dim displayView = New DataView(SR_DT, "RechnungsNr is not null", "RechnungsNr", DataViewRowState.CurrentRows) + Dim distinctDT_SR As DataTable = displayView.ToTable(True, "RechnungsNr", "DruckDatumZeit", "Rechnungsdatum") + If distinctDT_SR.Rows.Count = 1 Then + RechnungsNr = distinctDT_SR.Rows(0).Item("RechnungsNr") + DruckDatumZeit = distinctDT_SR.Rows(0).Item("DruckDatumZeit") + Rechnungsdatum = distinctDT_SR.Rows(0).Item("Rechnungsdatum") + BelegartenNr = SR_DT.Rows(0)("BelegartenNr") + For Each r In SR_DT.Rows + steuerbetrag += r("steuerpflichtigerGesamtbetrag") + If BelegartenNr <> r("BelegartenNr") Then BelegartenNr = "70" : Exit For + Next End If - Else + End If + End If - Dim TextHTML = "" - TextHTML &= HTMLMail - TextHTML &= cFakturierung.getSignature("DE", FirmaID, True, True,,,,, True) - HTMLMail = "
" & TextHTML & "
" - If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum, ATTACHMENTS, Mailsubject, HTMLMail, MailTo, MailtoCC, MailtoBCC,,, FISKAL) Then + + Dim SR As Boolean = True + + Dim MailTo As String = "" + Dim MailtoCC As String = "" + Dim MailtoBCC As String = "" + + + setEmpfaengerMail_SR(SR_DT, AD, MailTo, MailtoCC, MailtoBCC, FirmaID, SammelrechungArt) + + 'im TESTSYSTEM bewusst die Empfänger leeren! + + If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then + MailTo = "" + MailtoCC = "" + MailtoBCC = setAccountToSend(FirmaID) + Else + MailtoBCC = setAccountToSend(FirmaID) + End If + + + + If Not (MailTo = "" AndAlso MailtoCC = "" AndAlso MailtoBCC = "") Then + + Dim Mailsubject As String = "" + Dim HTMLMail As String = "" + + Dim listPDFs As New List(Of String) + Dim showError As Boolean = False + setEmailText(row, FirmaID, RechnungsNr, Mailsubject, HTMLMail, SammelrechungArt, dt, BelegartenNr) + If do_SR(row.Item("RechnungsKundenNr"), FirmaID, SammelrechungArt, Rechnungsdatum, RechnungsNr, DruckDatumZeit, MDMKopiedrucken, listPDFs,,,, showError, AbfertigungsNr) Then + loadAndSetAnhaenge(SR_DT, ATTACHMENTS, listPDFs) + + If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Mailsubject &= " TEST" + + If mailoeffnen Then + Dim Mail = createMail(Mailsubject, HTMLMail, ATTACHMENTS, MailTo, MailtoCC, MailtoBCC, FirmaID) + If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum,,,,,,, Mail) Then + Mail.Display() + End If + + Else + + Dim TextHTML = "" + TextHTML &= HTMLMail + TextHTML &= cFakturierung.getSignature("DE", FirmaID, True, True,,,,, True) + HTMLMail = "
" & TextHTML & "
" + + If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum, ATTACHMENTS, Mailsubject, HTMLMail, MailTo, MailtoCC, MailtoBCC,,, FISKAL) Then + + End If End If @@ -141,7 +184,7 @@ Public Class cAutomailversand End If - End If + Next Next Catch ex As System.Exception @@ -395,10 +438,12 @@ Public Class cAutomailversand Dim spracheRechnung As String = "EN" 'Defaultsprache + Dim belegtyp As String = If(BelegartenNr = 71, "credit note", "invoice") + Select Case row.Item("RechnungsLandKz") - Case "TR", "RO", "DE", "SRB" : spracheRechnung = row.Item("RechnungsLandKz") - Case "A", "AT", "D", "CH", "DE" : spracheRechnung = "DE" - Case "HR", "SLO", "BIH", "MNE", "MK", "MO" : spracheRechnung = "SRB" + Case "TR", "RO", "DE", "SRB" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "Kredi", "Fatura") + Case "A", "AT", "D", "CH", "DE" : spracheRechnung = "DE" : belegtyp = If(BelegartenNr = 71, "Gutschrift", "Rechnung") + Case "HR", "SLO", "BIH", "MNE", "MK", "MO" : spracheRechnung = "SRB" : belegtyp = If(BelegartenNr = 71, "credit note", "invoice") 'Belegarten auf Englisch! End Select @@ -409,10 +454,12 @@ Public Class cAutomailversand If r IsNot Nothing Then Subject = r.txt_betreff Subject = Subject.Replace("%BelegNr%", txtRgNr) + Subject = Subject.Replace("%Belegtyp%", belegtyp) TextHTML &= r.txt_text If Mailtext <> "" Then TextHTML &= Mailtext TextHTML &= vbNewLine & vbNewLine + TextHTML = TextHTML.Replace("%Belegtyp%", belegtyp) End If End If @@ -423,10 +470,10 @@ Public Class cAutomailversand End Sub - Private Function do_SR(kdNr As Integer, FirmaID As Integer, Sammelrechnungsart As Integer, Rechnungsdatum As Date, lastAktuelle_RgNr As Integer, DruckDatumZeit As Date, Kopie As Boolean, listPDFs As List(Of String), Optional EinzelAnlagen As Boolean = False, Optional Sammelbericht As Boolean = True, Optional saveInThereFore As Boolean = False, Optional showError As Boolean = True) + Private Function do_SR(kdNr As Integer, FirmaID As Integer, Sammelrechnungsart As Integer, Rechnungsdatum As Date, lastAktuelle_RgNr As Integer, DruckDatumZeit As Date, Kopie As Boolean, listPDFs As List(Of String), Optional EinzelAnlagen As Boolean = False, Optional Sammelbericht As Boolean = True, Optional saveInThereFore As Boolean = False, Optional showError As Boolean = True, Optional AbfertigungsArt As String = "") Dim RechnungsNrisSet As Boolean = False - RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(FirmaID, Sammelrechnungsart, Rechnungsdatum, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, kdNr, 4, listPDFs, "", lastAktuelle_RgNr, DruckDatumZeit, , , ,, ,,, True, Kopie, True, saveInThereFore, showError) + RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(FirmaID, Sammelrechnungsart, Rechnungsdatum, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, kdNr, 4, listPDFs, "", lastAktuelle_RgNr, DruckDatumZeit, , , ,, ,, AbfertigungsArt, True, Kopie, True, saveInThereFore, showError) Return RechnungsNrisSet End Function @@ -1211,5 +1258,18 @@ Public Class cAutomailversand End Function + Private Function getAbertigungsNr(counter As Integer) As String + + Dim SQLWhere = "" + + If counter = 1 Then + SQLWhere = "SELECT Abfertigungsart FROM [Abfertigungsarten] Where Typ = 'I'" + Else + SQLWhere = "SELECT Abfertigungsart FROM [Abfertigungsarten] Where Typ = 'E'" + End If + + Return SQLWhere + End Function + End Class diff --git a/SDL/Fakturierung/frmAbrechnungsMaske.vb b/SDL/Fakturierung/frmAbrechnungsMaske.vb index a2aa7f25..91fe031c 100644 --- a/SDL/Fakturierung/frmAbrechnungsMaske.vb +++ b/SDL/Fakturierung/frmAbrechnungsMaske.vb @@ -326,7 +326,8 @@ Public Class frmAbrechnungsMaske If cboRechnungsdruck._value <> "" Then Select Case cboRechnungsdruck._value Case 6 : sqlstr &= " And isnull(Automailversand,0)=1 " : enableAUTOMAIL_BTN = True - Case 2, 5 : sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' And isnull(Automailversand,0)=0" : enableAUTOMAIL_BTN = True + Case 2 : sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' And isnull(Automailversand,0)=0" : enableAUTOMAIL_BTN = True + Case 5 : sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' And isnull(Automailversand,0)=0" : enableAUTOMAIL_BTN = False Case Else sqlstr &= " And Rechnungsdruck='" & cboRechnungsdruck._value & "' And isnull(Automailversand,0)=0 " : enableAUTOMAIL = False End Select @@ -340,6 +341,11 @@ Public Class frmAbrechnungsMaske 'UsrCntlFaktAbrechnung1.cbxAUTOMailversand.Enabled = enableAUTOMAIL btn_doMailAutoversand.Visible = enableAUTOMAIL_BTN AndAlso enableAUTOMAIL + Button11.Visible = Not (enableAUTOMAIL_BTN AndAlso enableAUTOMAIL) + Button7.Visible = Not (enableAUTOMAIL_BTN AndAlso enableAUTOMAIL) + Button8.Visible = Not (enableAUTOMAIL_BTN AndAlso enableAUTOMAIL) + Button9.Visible = Not (enableAUTOMAIL_BTN AndAlso enableAUTOMAIL) + ' sqlstr &= " AND (SteuerpflichtigerGesamtbetrag<>0 OR SteuerfreierGesamtbetrag<>0)" Return sqlstr diff --git a/SDL/Fakturierung/frmFaktSammelRgDrucken.Designer.vb b/SDL/Fakturierung/frmFaktSammelRgDrucken.Designer.vb index f3ffe2a8..73c206bf 100644 --- a/SDL/Fakturierung/frmFaktSammelRgDrucken.Designer.vb +++ b/SDL/Fakturierung/frmFaktSammelRgDrucken.Designer.vb @@ -553,8 +553,9 @@ Partial Class frmFaktSammelRgDrucken Me.MyDatagridview1.AllowUserToDeleteRows = False Me.MyDatagridview1.AllowUserToResizeColumns = False Me.MyDatagridview1.AllowUserToResizeRows = False - Me.MyDatagridview1.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.MyDatagridview1.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.MyDatagridview1.BackgroundColor = System.Drawing.Color.White Me.MyDatagridview1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize Me.MyDatagridview1.Location = New System.Drawing.Point(252, 91) diff --git a/SDL/Fakturierung/frmFaktSammelRgDrucken.vb b/SDL/Fakturierung/frmFaktSammelRgDrucken.vb index 3e476c05..c3ed5c80 100644 --- a/SDL/Fakturierung/frmFaktSammelRgDrucken.vb +++ b/SDL/Fakturierung/frmFaktSammelRgDrucken.vb @@ -67,60 +67,16 @@ Public Class frmFaktSammelRgDrucken Sub initDGV() With MyDatagridview1 - 'Dim whereAbfArt = "" - 'Dim whereMWST = "" - 'Dim abfertigungsarten = getValues() - - 'If Sammelrechung <> 6 AndAlso abfertigungsarten <> "" Then - ' whereAbfArt = " AND (SELECT Abfertigungsart FROM Speditionsbuch WHERE Speditionsbuch.FilialenNr=Rechnungsausgang.FilialenNr and Speditionsbuch.AbfertigungsNr=Rechnungsausgang.AbfertigungsNr and Speditionsbuch.UnterNr=Rechnungsausgang.SpeditionsbuchUnterNr) IN (" & abfertigungsarten & ") " - 'End If - 'If cbxMWST.CheckState.Indeterminate Then - ' whereMWST = "" - 'Else - ' whereMWST = "AND isnull(tblKundenErweitert.kde_keineMWSt,0) = " & IIf(cbxMWST.Checked, "1", "0") - 'End If - - 'If cbxAUTOMail.Checked Or Not cbxAUTOMail.Checked Then - ' whereMWST = " AND isnull(Rechnungsausgang.Automailversand,0) = " & IIf(cbxAUTOMail.Checked, "1", "0") - ' whereAbfArt &= " AND isnull(Rechnungsausgang.Automailversand,0) = " & IIf(cbxAUTOMail.Checked, "1", "0") - 'End If - - 'Dim sqlStr = "" - - 'Select Case Sammelrechung - - ' Case 6 ' Maut Sammelrechnung - - ' sqlStr = " SELECT Rechnungsausgang.RechnungsKundenNr, max(Rechnungsausgang.[RechnungsName 1]) as [RechnungsName 1],0 as AvisoId,max(Rechnungsausgang.[RechnungsLandKz]) as [RechnungsLandKz] , count(*) as Anzahl, SUM(Rechnungsausgang.SteuerfreierGesamtbetrag + Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Summe,sum(Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Steuer, isnull(tblKundenErweitert.kde_keineMWSt,0) as keineMWST - ' ,(SELECT CASE WHEN Rechnungsdruck =0 THEN 'POST' WHEN Rechnungsdruck=1 THEN 'FAX' WHEN Rechnungsdruck=2 THEN 'E-MAIL' ELSE '-' END FROM Adressen WHERE AdressenNr=Rechnungsausgang.RechnungsKundenNr ) as Rechnungsdruck - ' FROM Rechnungsausgang left join tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr - ' WHERE Rechnungsausgang.Status IN (2) And Rechnungsausgang.Firma_ID = '" & cboFirma._value & "' And Rechnungsausgang.Sammelrechnung = 6 And CONVERT(DATE,Rechnungsausgang.Abfertigungsdatum,104) = '" & txtRechnungsdatum._value & "' - ' " & If(cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "' ", "") & " - ' " & whereAbfArt & " " & whereMWST & " - ' GROUP BY RechnungsKundenNr, isnull(tblKundenErweitert.kde_keineMWSt,0) - ' ORDER BY RechnungsLandKz, RechnungsKundenNr " - - ' Case Else - - ' sqlStr = " SELECT Rechnungsausgang.RechnungsKundenNr, max(Rechnungsausgang.[RechnungsName 1]) as [RechnungsName 1]," & If(Sammelrechung = 7, "AvisoId", "0") & " as AvisoId,max(Rechnungsausgang.[RechnungsLandKz]) as [RechnungsLandKz] , count(*) as Anzahl, SUM(Rechnungsausgang.SteuerfreierGesamtbetrag + Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Summe" & If(Sammelrechung = 7, ",max([LKW Kennzeichen]) as LKW", "") & " - ' ,(SELECT CASE WHEN Rechnungsdruck =0 THEN 'POST' WHEN Rechnungsdruck=1 THEN 'FAX' WHEN Rechnungsdruck=2 THEN 'E-MAIL' ELSE '-' END FROM Adressen WHERE AdressenNr=Rechnungsausgang.RechnungsKundenNr ) as Rechnungsdruck - ' FROM Rechnungsausgang - ' WHERE Rechnungsausgang.Status IN (0,2) And Rechnungsausgang.Firma_ID = '" & cboFirma._value & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechung & "' And CONVERT(DATE,Rechnungsausgang.Abfertigungsdatum,104) <= '" & txtZeitraumBis._value & "' - ' " & If(Sammelrechung = 7 And cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "' ", "") & " - ' " & whereAbfArt & " - ' AND Rechnungsausgang.FakturierungsGruppe='" & cboFaktGrp._value & "' - ' GROUP BY RechnungsKundenNr " & If(Sammelrechung = 7, ",AvisoId", "") & " - ' ORDER BY Rechnungsausgang.RechnungsKundenNr " - - 'End Select - Dim whereAbfArt As String = "" Dim whereMWST As String = "" Dim whereAutoMail As String = "" + Dim whereAbfArt As String = "" Dim abfertigungsarten = getValues() + + ' Abfertigungsarten If Sammelrechung <> 6 AndAlso abfertigungsarten <> "" Then whereAbfArt = " AND (SELECT Abfertigungsart @@ -196,6 +152,7 @@ Public Class frmFaktSammelRgDrucken MAX(Rechnungsausgang.[RechnungsName 1]) AS Firma, " & If(Sammelrechung = 7, "AvisoId", "0") & " AS AvisoId, MAX(Rechnungsausgang.[RechnungsLandKz]) AS [RechnungsLandKz], + ISNULL(tblKundenErweitert.kde_SR_IM_EX,0) AS IM_EX, COUNT(*) AS Anzahl, SUM(Rechnungsausgang.SteuerfreierGesamtbetrag + Rechnungsausgang.SteuerpflichtigerGesamtbetrag) AS Summe " & If(Sammelrechung = 7, ", MAX([LKW Kennzeichen]) AS LKW", "") & ", @@ -207,6 +164,8 @@ Public Class frmFaktSammelRgDrucken FROM Adressen WHERE AdressenNr = Rechnungsausgang.RechnungsKundenNr) AS Rechnungsdruck FROM Rechnungsausgang + LEFT JOIN tblKundenErweitert + ON tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr WHERE Rechnungsausgang.Firma_ID = '" & cboFirma._value & "' AND Rechnungsausgang.Sammelrechnung = '" & Sammelrechung & "' @@ -214,18 +173,16 @@ Public Class frmFaktSammelRgDrucken " & whereAbfArt & whereAutoMail & SQLAUTOMAIL_RECHNUNGSDATuM & " AND Rechnungsausgang.FakturierungsGruppe='" & cboFaktGrp._value & "' GROUP BY - RechnungsKundenNr " & If(Sammelrechung = 7, ", AvisoId", "") & " + RechnungsKundenNr,tblKundenErweitert.kde_SR_IM_EX " & If(Sammelrechung = 7, ", AvisoId", "") & " ORDER BY Rechnungsausgang.RechnungsKundenNr" End Select - - 'Rechnungsausgang.Status IN (0,2) --> vormals nur 2 .SET_SQL(sqlStr, "FMZOLL") .LOAD() - .Columns("RechnungsKundenNr").Width = 120 + .Columns("RechnungsKundenNr").Width = 100 .Columns("RechnungsKundenNr").HeaderText = "KundenNr" .Columns("Firma").Width = 200 .Columns("Summe").HeaderText = "Summe" @@ -249,21 +206,11 @@ Public Class frmFaktSammelRgDrucken .Columns("AvisoId").Visible = False End If - If .Columns.Contains("RechnungsLandKz") AndAlso Sammelrechung = 6 Then - .Columns("RechnungsLandKz").Visible = True - End If + If .Columns.Contains("RechnungsLandKz") AndAlso Sammelrechung = 6 Then .Columns("RechnungsLandKz").Visible = True + If .Columns.Contains("keineMWST") Then .Columns("keineMWST").Visible = False + If .Columns.Contains("RENR") Then .Columns("RENR").Visible = False + If .Columns.Contains("Steuer") Then .Columns("Steuer").Visible = False - If .Columns.Contains("keineMWST") Then - .Columns("keineMWST").Visible = False - End If - - If .Columns.Contains("RENR") Then - .Columns("RENR").Visible = False - End If - - If .Columns.Contains("Steuer") Then - .Columns("Steuer").Visible = False - End If .AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill .ClearSelection() @@ -308,7 +255,7 @@ Public Class frmFaktSammelRgDrucken Label5.Visible = True cboFaktGrp.Visible = True - If Not IsDBNull(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) AndAlso (CInt(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) = 19 Or VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_username = "ADMIN" Or VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_username = "DANIEL") Then + If Not IsDBNull(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) AndAlso (CInt(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_firmaFMZoll) = 19) Then FirmaTmp = "VERAG360" RadioButton5.Enabled = True MyListBox1.SetSelected(10, True) @@ -713,7 +660,7 @@ Public Class frmFaktSammelRgDrucken RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(cboFirma._value, Sammelrechung, CDate(txtZeitraumBis.Text), CDate(txtRechnungsdatum.Text), cboPrinter.Text, cbxEinzelAnlagen.Checked, cbxSammelbericht.Checked, getSelectionKdNr, 7, listPDFs, cboSB._value,,, getAvisoIds, cbxEVOLOG.Checked, SonstAnlagen, , cbxTransFerry.Checked, cboFaktGrp._value, abfertigungsarten,,, True) If Not RechnungsNrisSet Then - MsgBox("Fehler bei RechnungsNrErzeugung!") + MsgBox("Fehler bei RechnungsNr-Erzeugung!") End If Me.Enabled = True End If @@ -800,6 +747,21 @@ Public Class frmFaktSammelRgDrucken Dim whereAutoMail As String = "" Dim whereSammelrechnung As String = "" + Dim whereAbfArt As String = "" + Dim abfertigungsarten = getValues() + + + + ' Abfertigungsarten + If Sammelrechung <> 6 AndAlso abfertigungsarten <> "" Then + whereAbfArt = " AND (SELECT Abfertigungsart + FROM Speditionsbuch + WHERE Speditionsbuch.FilialenNr = Rechnungsausgang.FilialenNr + AND Speditionsbuch.AbfertigungsNr = Rechnungsausgang.AbfertigungsNr + AND Speditionsbuch.UnterNr = Rechnungsausgang.SpeditionsbuchUnterNr + ) IN (" & abfertigungsarten & ") " + End If + ' MWST Filter If cbxMWST.CheckState <> CheckState.Indeterminate Then whereMWST = " AND ISNULL(tblKundenErweitert.kde_keineMWSt,0) = " & If(cbxMWST.Checked, "1", "0") @@ -831,7 +793,7 @@ Public Class frmFaktSammelRgDrucken AND Rechnungsausgang.RechnungsLandKz = '" & r.Cells("RechnungsLandKz").Value.ToString.Trim & "' " & whereAutoMail & " " & If(cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "'", "") & " - " & whereMWST + " & whereMWST & whereAbfArt @@ -880,11 +842,20 @@ Public Class frmFaktSammelRgDrucken If IsNumeric(MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value) AndAlso IsNumeric(MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value) AndAlso IsNumeric(MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value) Then Dim dtRE As DataTable Dim SQLString = "" + + 'Dim SQLAUTOMAIL_RECHNUNGSDATuM = "" + + 'If cbxAUTOMail.Checked Then + ' SQLAUTOMAIL_RECHNUNGSDATuM = "AND Rechnungsausgang.Status IN (2) AND CONVERT(DATE, Rechnungsausgang.Rechnungsdatum, 104) = '" & txtRechnungsdatum._value & "'" + 'Else + ' SQLAUTOMAIL_RECHNUNGSDATuM = " AND Rechnungsausgang.Status IN (0,2) AND CONVERT(DATE, Rechnungsausgang.Abfertigungsdatum, 104) <= '" & txtZeitraumBis._value & "'" + 'End If + Select Case Sammelrechung Case 6 - SQLString = "select RK_ID, RechnungsNr, FilialenNr from Rechnungsausgang where RechnungsKundenNr = " & MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value & " AND cast(RechnungsDatum as Date) = '" & txtRechnungsdatum._value & "' AND Sammelrechnung = " & Sammelrechung & " AND ISNULL(Rechnungsausgang.Automailversand,0) = 1 " & IIf(Firma > 0, " AND Firma_ID =" & Firma, "") + SQLString = "select RK_ID, RechnungsNr, FilialenNr, AbfertigungsNr from Rechnungsausgang where RechnungsKundenNr = " & MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value & " AND cast(RechnungsDatum as Date) = '" & txtRechnungsdatum._value & "' AND Sammelrechnung = " & Sammelrechung & " AND ISNULL(Rechnungsausgang.Automailversand,0) = 1 AND Rechnungsausgang.Status IN (2)" & IIf(Firma > 0, " AND Firma_ID =" & Firma, "") Case Else - SQLString = "select RK_ID, RechnungsNr, FilialenNr from Rechnungsausgang where RechnungsKundenNr = " & MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value & " AND cast(Abfertigungsdatum as Date) <= '" & txtRechnungsdatum._value & "' AND Sammelrechnung = " & Sammelrechung & " AND ISNULL(Rechnungsausgang.Automailversand,0) = 1 " & IIf(Firma > 0, " AND Firma_ID =" & Firma, "") + SQLString = "select RK_ID, RechnungsNr, FilialenNr, AbfertigungsNr from Rechnungsausgang where RechnungsKundenNr = " & MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value & " AND cast(Abfertigungsdatum as Date) <= '" & txtRechnungsdatum._value & "' AND Sammelrechnung = " & Sammelrechung & " AND ISNULL(Rechnungsausgang.Automailversand,0) = 1 AND Rechnungsausgang.Status IN (2) " & IIf(Firma > 0, " AND Firma_ID =" & Firma, "") End Select dtRE = (New SQL).loadDgvBySql(SQLString, "FMZOLL") @@ -909,8 +880,16 @@ Public Class frmFaktSammelRgDrucken ContextMenuStrip1.Items.Clear() For Each r As DataRow In dtRE.Rows + Dim re As ToolStripMenuItem + Select Case Sammelrechung + Case 6 + re = New ToolStripMenuItem() With {.Text = r.Item("FilialenNr") & " - " & r.Item("RechnungsNr"), .Name = r.Item("RK_ID"), .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} + + Case Else + re = New ToolStripMenuItem() With {.Text = r.Item("FilialenNr") & " - " & r.Item("AbfertigungsNr"), .Name = r.Item("RK_ID"), .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} + + End Select - Dim re = New ToolStripMenuItem() With {.Text = r.Item("FilialenNr") & " - " & r.Item("RechnungsNr"), .Name = r.Item("RK_ID"), .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} ContextMenuStrip1.Items.Add(re) AddHandler re.Click, AddressOf mnuItem_Clicked diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb index 278fb913..9c45785a 100644 --- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb +++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb @@ -5607,6 +5607,9 @@ mwst: enableAUTOMAIL = True Else enableAUTOMAIL = False + + + End If @@ -5614,6 +5617,13 @@ mwst: End If + If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then + Button8.Enabled = Not enableAUTOMAIL + Button9.Enabled = Not enableAUTOMAIL + Button4.Enabled = Not enableAUTOMAIL + Button16.Enabled = Not enableAUTOMAIL + End If + Return enableAUTOMAIL diff --git a/SDL/kassenbuch/frmBelegNeu.Designer.vb b/SDL/kassenbuch/frmBelegNeu.Designer.vb index 0e6fdd83..ddce91b9 100644 --- a/SDL/kassenbuch/frmBelegNeu.Designer.vb +++ b/SDL/kassenbuch/frmBelegNeu.Designer.vb @@ -1253,9 +1253,9 @@ Partial Class frmBelegNeu Me.Button4.Location = New System.Drawing.Point(120, 38) Me.Button4.Name = "Button4" Me.Button4.Padding = New System.Windows.Forms.Padding(0, 0, 5, 0) - Me.Button4.Size = New System.Drawing.Size(51, 21) + Me.Button4.Size = New System.Drawing.Size(70, 21) Me.Button4.TabIndex = 49 - Me.Button4.Text = "TEST" + Me.Button4.Text = "TEST FT" Me.Button4.TextAlign = System.Drawing.ContentAlignment.MiddleRight Me.Button4.UseVisualStyleBackColor = True Me.Button4.Visible = False @@ -1334,7 +1334,6 @@ Partial Class frmBelegNeu Me.cboKassen._allowedValuesFreiText = Nothing Me.cboKassen._allowFreiText = False Me.cboKassen._value = "" - Me.cboKassen.Enabled = False Me.cboKassen.FormattingEnabled = True Me.cboKassen.Location = New System.Drawing.Point(50, 9) Me.cboKassen.Name = "cboKassen" diff --git a/SDL/kassenbuch/frmBelegNeu.vb b/SDL/kassenbuch/frmBelegNeu.vb index 6d373079..8ca83b40 100644 --- a/SDL/kassenbuch/frmBelegNeu.vb +++ b/SDL/kassenbuch/frmBelegNeu.vb @@ -236,6 +236,13 @@ Public Class frmBelegNeu Button4.Visible = True End If + If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then + cboKassen.Enabled = True + Else + cboKassen.Enabled = False + End If + + AddHandler kdkunde.PropertyChanged, Sub() If kdkunde.KdNr > 0 Then lblKunde_Strasse.Text = kdkunde.KdData_ADRESSEN.Straße @@ -1594,7 +1601,8 @@ Public Class frmBelegNeu Me.Cursor = Cursors.WaitCursor If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then - KASSE.LOAD(6) 'AT-Kasse + KASSE.LOAD(cboKassen._value) + 'KASSE.LOAD(6) 'AT-Kasse 'KASSE.LOAD(12) 'DE-kasse 'Laden der Kasse anhand der Auswahlbox Else @@ -1879,38 +1887,28 @@ Public Class frmBelegNeu Process.Start("https://wiki.verag.ag/de/software/aviso/howtos/Bankomat") End Sub - Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click + Private Async Function Button4_ClickAsync(sender As Object, e As EventArgs) As Task Handles Button4.Click + Try - KASSE.LOAD(cboKassen._value) + KASSE.LOAD(cboKassen._value) + If KASSE.rksv_FT_RestServiceURL <> "" Then + Dim client As New cFiskaltrustClient(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country) + Dim result As String = Await client.Echo() + Dim result2 As String = Await client.SignReceiptAsync_test() + MsgBox(result) + MsgBox(result2) - If KASSE.rksv_FT_RestServiceURL <> "" Then + Else + MsgBox("keine Rest-Service URL hinterlegt!") - Dim client As New cFiskaltrustClient(KASSE.rksv_FT_RestServiceURL, KASSE.rksv_FT_CashboxID, KASSE.rksv_FT_AccessToken, KASSE.rksv_FT_Country) - Dim result = client.Echo() + End If + + Catch ex As Exception + + End Try - Else - MsgBox("keine Rest-Service URL hinterlegt!") - - End If - - - End Sub - - 'Private Sub generatePOSUmbuchung() - ' Dim isUmbuchung = True - ' Dim frmFremdbeleg As New frmFremdbeleg(isUmbuchung) - ' frmFremdbeleg.PERSONAL = PERSONAL - ' frmFremdbeleg.Art = 2 - ' frmFremdbeleg.Show() - ' frmFremdbeleg.cboKonto.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Umbuchung Kassa/Bankomat", "3281")) - ' frmFremdbeleg.cboKonto.changeItem("3281") - ' frmFremdbeleg.txtReferenz.Text = BELEG.BelegNr - ' frmFremdbeleg.txtBetrag._value = Betrag - ' frmFremdbeleg.cbxBelegDrucken.Checked = False - ' frmFremdbeleg.btn.PerformClick() - - 'End Sub + End Function End Class diff --git a/SDL/kunden/usrcntlKundeBearbeitenFull.Designer.vb b/SDL/kunden/usrcntlKundeBearbeitenFull.Designer.vb index f2029ad9..51a10906 100644 --- a/SDL/kunden/usrcntlKundeBearbeitenFull.Designer.vb +++ b/SDL/kunden/usrcntlKundeBearbeitenFull.Designer.vb @@ -105,6 +105,7 @@ Partial Class usrcntlKundeBearbeitenFull Me.tbFiskal = New System.Windows.Forms.TabPage() Me.UsrCntlKundeFiskaldaten1 = New SDL.usrCntlKundeFiskaldaten() Me.tbVerrechnung = New System.Windows.Forms.TabPage() + Me.cbxSammelrechnung_IM_EX = New System.Windows.Forms.CheckBox() Me.pnlKundenUIDveranlagt = New System.Windows.Forms.Panel() Me.Label122 = New System.Windows.Forms.Label() Me.Button5 = New System.Windows.Forms.Button() @@ -1176,6 +1177,7 @@ Partial Class usrcntlKundeBearbeitenFull ' 'tbVerrechnung ' + Me.tbVerrechnung.Controls.Add(Me.cbxSammelrechnung_IM_EX) Me.tbVerrechnung.Controls.Add(Me.pnlKundenUIDveranlagt) Me.tbVerrechnung.Controls.Add(Me.Label117) Me.tbVerrechnung.Controls.Add(Me.Panel2) @@ -1238,6 +1240,16 @@ Partial Class usrcntlKundeBearbeitenFull Me.tbVerrechnung.Text = "Verrechnung" Me.tbVerrechnung.UseVisualStyleBackColor = True ' + 'cbxSammelrechnung_IM_EX + ' + Me.cbxSammelrechnung_IM_EX.AutoSize = True + Me.cbxSammelrechnung_IM_EX.Location = New System.Drawing.Point(417, 175) + Me.cbxSammelrechnung_IM_EX.Name = "cbxSammelrechnung_IM_EX" + Me.cbxSammelrechnung_IM_EX.Size = New System.Drawing.Size(202, 17) + Me.cbxSammelrechnung_IM_EX.TabIndex = 54 + Me.cbxSammelrechnung_IM_EX.Text = "Sammelrechnung IMPORT/EXPORT" + Me.cbxSammelrechnung_IM_EX.UseVisualStyleBackColor = True + ' 'pnlKundenUIDveranlagt ' Me.pnlKundenUIDveranlagt.BackColor = System.Drawing.Color.WhiteSmoke @@ -1690,7 +1702,7 @@ Partial Class usrcntlKundeBearbeitenFull ' Me.Label95.AutoSize = True Me.Label95.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label95.Location = New System.Drawing.Point(414, 135) + Me.Label95.Location = New System.Drawing.Point(414, 112) Me.Label95.Name = "Label95" Me.Label95.Size = New System.Drawing.Size(70, 13) Me.Label95.TabIndex = 38 @@ -1699,7 +1711,7 @@ Partial Class usrcntlKundeBearbeitenFull 'cbxSammelrechnungBerichtLeistungsdetails ' Me.cbxSammelrechnungBerichtLeistungsdetails.AutoSize = True - Me.cbxSammelrechnungBerichtLeistungsdetails.Location = New System.Drawing.Point(417, 178) + Me.cbxSammelrechnungBerichtLeistungsdetails.Location = New System.Drawing.Point(417, 155) Me.cbxSammelrechnungBerichtLeistungsdetails.Name = "cbxSammelrechnungBerichtLeistungsdetails" Me.cbxSammelrechnungBerichtLeistungsdetails.Size = New System.Drawing.Size(225, 17) Me.cbxSammelrechnungBerichtLeistungsdetails.TabIndex = 37 @@ -1751,7 +1763,7 @@ Partial Class usrcntlKundeBearbeitenFull ' Me.cbxAutoFakturierung.AutoSize = True Me.cbxAutoFakturierung.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.cbxAutoFakturierung.Location = New System.Drawing.Point(417, 158) + Me.cbxAutoFakturierung.Location = New System.Drawing.Point(417, 135) Me.cbxAutoFakturierung.Name = "cbxAutoFakturierung" Me.cbxAutoFakturierung.Size = New System.Drawing.Size(118, 17) Me.cbxAutoFakturierung.TabIndex = 31 @@ -1922,7 +1934,7 @@ Partial Class usrcntlKundeBearbeitenFull ' Me.Label49.AutoSize = True Me.Label49.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label49.Location = New System.Drawing.Point(414, 113) + Me.Label49.Location = New System.Drawing.Point(414, 93) Me.Label49.Name = "Label49" Me.Label49.Size = New System.Drawing.Size(54, 13) Me.Label49.TabIndex = 13 @@ -1932,7 +1944,7 @@ Partial Class usrcntlKundeBearbeitenFull ' Me.Label48.AutoSize = True Me.Label48.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label48.Location = New System.Drawing.Point(414, 91) + Me.Label48.Location = New System.Drawing.Point(414, 68) Me.Label48.Name = "Label48" Me.Label48.Size = New System.Drawing.Size(90, 13) Me.Label48.TabIndex = 8 @@ -1942,7 +1954,7 @@ Partial Class usrcntlKundeBearbeitenFull ' Me.Label39.AutoSize = True Me.Label39.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label39.Location = New System.Drawing.Point(414, 69) + Me.Label39.Location = New System.Drawing.Point(414, 49) Me.Label39.Name = "Label39" Me.Label39.Size = New System.Drawing.Size(92, 13) Me.Label39.TabIndex = 3 @@ -2050,7 +2062,7 @@ Partial Class usrcntlKundeBearbeitenFull Me.cboRechnungSprache.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.cboRechnungSprache.ForeColor = System.Drawing.Color.Black Me.cboRechnungSprache.FormattingEnabled = True - Me.cboRechnungSprache.Location = New System.Drawing.Point(527, 132) + Me.cboRechnungSprache.Location = New System.Drawing.Point(527, 109) Me.cboRechnungSprache.Name = "cboRechnungSprache" Me.cboRechnungSprache.Size = New System.Drawing.Size(73, 21) Me.cboRechnungSprache.TabIndex = 39 @@ -2248,7 +2260,7 @@ Partial Class usrcntlKundeBearbeitenFull Me.cboAbf_Waehrung.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.cboAbf_Waehrung.ForeColor = System.Drawing.Color.Black Me.cboAbf_Waehrung.FormattingEnabled = True - Me.cboAbf_Waehrung.Location = New System.Drawing.Point(527, 110) + Me.cboAbf_Waehrung.Location = New System.Drawing.Point(527, 87) Me.cboAbf_Waehrung.Name = "cboAbf_Waehrung" Me.cboAbf_Waehrung.Size = New System.Drawing.Size(47, 21) Me.cboAbf_Waehrung.TabIndex = 14 @@ -2264,7 +2276,7 @@ Partial Class usrcntlKundeBearbeitenFull Me.cboAbf_Steuerschluessel.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.cboAbf_Steuerschluessel.ForeColor = System.Drawing.Color.Black Me.cboAbf_Steuerschluessel.FormattingEnabled = True - Me.cboAbf_Steuerschluessel.Location = New System.Drawing.Point(527, 88) + Me.cboAbf_Steuerschluessel.Location = New System.Drawing.Point(527, 65) Me.cboAbf_Steuerschluessel.Name = "cboAbf_Steuerschluessel" Me.cboAbf_Steuerschluessel.Size = New System.Drawing.Size(105, 21) Me.cboAbf_Steuerschluessel.TabIndex = 9 @@ -2280,7 +2292,7 @@ Partial Class usrcntlKundeBearbeitenFull Me.cboAbf_Sammelrechnung.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.cboAbf_Sammelrechnung.ForeColor = System.Drawing.Color.Black Me.cboAbf_Sammelrechnung.FormattingEnabled = True - Me.cboAbf_Sammelrechnung.Location = New System.Drawing.Point(527, 66) + Me.cboAbf_Sammelrechnung.Location = New System.Drawing.Point(527, 43) Me.cboAbf_Sammelrechnung.Name = "cboAbf_Sammelrechnung" Me.cboAbf_Sammelrechnung.Size = New System.Drawing.Size(105, 21) Me.cboAbf_Sammelrechnung.TabIndex = 4 @@ -6619,4 +6631,5 @@ Partial Class usrcntlKundeBearbeitenFull Friend WithEvents Button5 As Button Friend WithEvents Button6 As Button Friend WithEvents Label122 As Label + Friend WithEvents cbxSammelrechnung_IM_EX As CheckBox End Class diff --git a/SDL/kunden/usrcntlKundeBearbeitenFull.vb b/SDL/kunden/usrcntlKundeBearbeitenFull.vb index 2e9b9ccb..43fecac1 100644 --- a/SDL/kunden/usrcntlKundeBearbeitenFull.vb +++ b/SDL/kunden/usrcntlKundeBearbeitenFull.vb @@ -220,6 +220,7 @@ Public Class usrcntlKundeBearbeitenFull txtKapital.Text = loadValue(KUNDE_ERW.kde_Kapital, "") cbxKapitalWaehrung._value = loadValue(KUNDE_ERW.kde_KapitalWaehrung, "EUR") cbxSammelrechnungBerichtLeistungsdetails.Checked = loadValue(KUNDE_ERW.kde_FakturierungSR_Details, False) + cbxSammelrechnung_IM_EX.Checked = loadValue(KUNDE_ERW.kde_SR_IM_EX, False) cboAbf_Sammelrechnung._value = loadValue(KUNDE.Sammelrechnung, "") txtGruendungsDatum.Text = loadValue(KUNDE_ERW.kde_GruendungsDatum, "") txtHandelsregisterNr.Text = loadValue(KUNDE_ERW.kde_HRNr, "") @@ -675,6 +676,7 @@ Public Class usrcntlKundeBearbeitenFull KUNDE.Sammelrechnung = cboAbf_Sammelrechnung._value KUNDE_ERW.kde_FakturierungSR_Details = cbxSammelrechnungBerichtLeistungsdetails.Checked + KUNDE_ERW.kde_SR_IM_EX = cbxSammelrechnung_IM_EX.Checked KUNDE.EORITIN = isLeerNothing(txtEORI.Text) If IsNumeric(txtEORINL.Text) Then diff --git a/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb b/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb index c7ed5925..b3b1fcf3 100644 --- a/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb +++ b/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb @@ -1607,7 +1607,7 @@ Partial Class usrCntlMDMAuswertungen Me.txtLeistungsNr._ShortDateOnly = False Me.txtLeistungsNr._TimeOnly = False Me.txtLeistungsNr._TimeOnly_Seconds = False - Me.txtLeistungsNr._value = "327" + Me.txtLeistungsNr._value = "373,374" Me.txtLeistungsNr._Waehrung = False Me.txtLeistungsNr._WaehrungZeichen = True Me.txtLeistungsNr.ForeColor = System.Drawing.Color.Black @@ -1618,7 +1618,7 @@ Partial Class usrCntlMDMAuswertungen Me.txtLeistungsNr.Name = "txtLeistungsNr" Me.txtLeistungsNr.Size = New System.Drawing.Size(141, 20) Me.txtLeistungsNr.TabIndex = 15 - Me.txtLeistungsNr.Text = "327" + Me.txtLeistungsNr.Text = "373,374" ' 'txtJahr ' diff --git a/SDL/mdm/usrCntlMDMAuswertungen.vb b/SDL/mdm/usrCntlMDMAuswertungen.vb index ae87fffa..38ef5566 100644 --- a/SDL/mdm/usrCntlMDMAuswertungen.vb +++ b/SDL/mdm/usrCntlMDMAuswertungen.vb @@ -66,7 +66,7 @@ Public Class usrCntlMDMAuswertungen cboQuartal.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" ", " ")) cboQuartal.changeItem(" ") - txtLeistungsNr.Text = "327" + txtLeistungsNr.Text = "373,374" If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Auswertungen_IDS", Me.FindForm) Then tbcntr.TabPages.Remove(tbIDS) diff --git a/SDL/mdm/usrcntlFremdrechnungen.vb b/SDL/mdm/usrcntlFremdrechnungen.vb index 550e3456..3a7da0fe 100644 --- a/SDL/mdm/usrcntlFremdrechnungen.vb +++ b/SDL/mdm/usrcntlFremdrechnungen.vb @@ -1412,7 +1412,7 @@ Public Class usrcntlFremdrechnungen If Mail IsNot Nothing Then - Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_SAMMELRECHNUNG, "MAIL-ORIG-RG",,, kdNr) + Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_RS_ORIGINALRECHNUNGEN, "MAIL_RS-ORIG-RG",,, kdNr) API.api_EMail = Mail.To API.api_EMailCC = Mail.CC diff --git a/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.Designer.vb b/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.Designer.vb index 6e975234..989569e6 100644 --- a/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.Designer.vb +++ b/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.Designer.vb @@ -29,24 +29,25 @@ Partial Class frminterneEmailBenachrichtigungen Me.cntxtOptionen = New System.Windows.Forms.ContextMenuStrip(Me.components) Me.StornoToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() Me.Panel1 = New System.Windows.Forms.Panel() - Me.dgvBenachrichtigungen = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.pnloptions = New System.Windows.Forms.Panel() Me.Label9 = New System.Windows.Forms.Label() - Me.MyTextBox2 = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.Button2 = New System.Windows.Forms.Button() Me.Panel2 = New System.Windows.Forms.Panel() - Me.cboKategorie = New VERAG_PROG_ALLGEMEIN.MyComboBox() - Me.cboFirma = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.Label5 = New System.Windows.Forms.Label() Me.Label1 = New System.Windows.Forms.Label() Me.pnlTop = New System.Windows.Forms.Panel() Me.Label4 = New System.Windows.Forms.Label() + Me.cboOhneEmpf = New System.Windows.Forms.CheckBox() + Me.dgvBenachrichtigungen = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) + Me.MyTextBox2 = New VERAG_PROG_ALLGEMEIN.MyTextBox() + Me.cboKategorie = New VERAG_PROG_ALLGEMEIN.MyComboBox() + Me.cboFirma = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.cntxtOptionen.SuspendLayout() Me.Panel1.SuspendLayout() - CType(Me.dgvBenachrichtigungen, System.ComponentModel.ISupportInitialize).BeginInit() Me.pnloptions.SuspendLayout() Me.Panel2.SuspendLayout() Me.pnlTop.SuspendLayout() + CType(Me.dgvBenachrichtigungen, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'AbgeholtToolStripMenuItem @@ -80,29 +81,6 @@ Partial Class frminterneEmailBenachrichtigungen Me.Panel1.Size = New System.Drawing.Size(1429, 779) Me.Panel1.TabIndex = 4 ' - 'dgvBenachrichtigungen - ' - Me.dgvBenachrichtigungen.AKTUALISIERUNGS_INTERVALL = -1 - Me.dgvBenachrichtigungen.AllowUserToAddRows = False - Me.dgvBenachrichtigungen.AllowUserToDeleteRows = False - Me.dgvBenachrichtigungen.AllowUserToOrderColumns = True - Me.dgvBenachrichtigungen.AllowUserToResizeRows = False - Me.dgvBenachrichtigungen.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize - DataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft - DataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window - DataGridViewCellStyle1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - DataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.ControlText - DataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.GradientInactiveCaption - DataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.ControlText - DataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] - Me.dgvBenachrichtigungen.DefaultCellStyle = DataGridViewCellStyle1 - Me.dgvBenachrichtigungen.Dock = System.Windows.Forms.DockStyle.Fill - Me.dgvBenachrichtigungen.Location = New System.Drawing.Point(0, 115) - Me.dgvBenachrichtigungen.Name = "dgvBenachrichtigungen" - Me.dgvBenachrichtigungen.RowHeadersVisible = False - Me.dgvBenachrichtigungen.Size = New System.Drawing.Size(1429, 604) - Me.dgvBenachrichtigungen.TabIndex = 10 - ' 'pnloptions ' Me.pnloptions.BackColor = System.Drawing.Color.WhiteSmoke @@ -125,33 +103,6 @@ Partial Class frminterneEmailBenachrichtigungen Me.Label9.TabIndex = 7 Me.Label9.Text = "Max:" ' - 'MyTextBox2 - ' - Me.MyTextBox2._DateTimeOnly = False - Me.MyTextBox2._numbersOnly = True - Me.MyTextBox2._numbersOnlyKommastellen = "" - Me.MyTextBox2._numbersOnlyTrennzeichen = True - Me.MyTextBox2._Prozent = False - Me.MyTextBox2._ShortDateNew = False - Me.MyTextBox2._ShortDateOnly = False - Me.MyTextBox2._TimeOnly = False - Me.MyTextBox2._TimeOnly_Seconds = False - Me.MyTextBox2._value = "" - Me.MyTextBox2._Waehrung = False - Me.MyTextBox2._WaehrungZeichen = True - Me.MyTextBox2.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.MyTextBox2.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.MyTextBox2.ForeColor = System.Drawing.Color.Black - Me.MyTextBox2.Location = New System.Drawing.Point(1369, 13) - Me.MyTextBox2.MaxLineLength = -1 - Me.MyTextBox2.MaxLines_Warning = "" - Me.MyTextBox2.MaxLines_Warning_Label = Nothing - Me.MyTextBox2.Name = "MyTextBox2" - Me.MyTextBox2.Size = New System.Drawing.Size(48, 20) - Me.MyTextBox2.TabIndex = 8 - Me.MyTextBox2.Text = "1000" - Me.MyTextBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Right - ' 'Button2 ' Me.Button2.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) @@ -172,6 +123,7 @@ Partial Class frminterneEmailBenachrichtigungen ' Me.Panel2.BackColor = System.Drawing.Color.WhiteSmoke Me.Panel2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.Panel2.Controls.Add(Me.cboOhneEmpf) Me.Panel2.Controls.Add(Me.cboKategorie) Me.Panel2.Controls.Add(Me.cboFirma) Me.Panel2.Controls.Add(Me.Label5) @@ -182,36 +134,6 @@ Partial Class frminterneEmailBenachrichtigungen Me.Panel2.Size = New System.Drawing.Size(1429, 115) Me.Panel2.TabIndex = 11 ' - 'cboKategorie - ' - Me.cboKategorie._allowedValuesFreiText = Nothing - Me.cboKategorie._allowFreiText = False - Me.cboKategorie._value = "" - Me.cboKategorie.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend - Me.cboKategorie.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems - Me.cboKategorie.DropDownWidth = 250 - Me.cboKategorie.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.cboKategorie.FormattingEnabled = True - Me.cboKategorie.Location = New System.Drawing.Point(95, 76) - Me.cboKategorie.Name = "cboKategorie" - Me.cboKategorie.Size = New System.Drawing.Size(143, 24) - Me.cboKategorie.TabIndex = 30 - ' - 'cboFirma - ' - Me.cboFirma._allowedValuesFreiText = Nothing - Me.cboFirma._allowFreiText = False - Me.cboFirma._value = "" - Me.cboFirma.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend - Me.cboFirma.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems - Me.cboFirma.DropDownWidth = 250 - Me.cboFirma.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.cboFirma.FormattingEnabled = True - Me.cboFirma.Location = New System.Drawing.Point(95, 49) - Me.cboFirma.Name = "cboFirma" - Me.cboFirma.Size = New System.Drawing.Size(143, 24) - Me.cboFirma.TabIndex = 26 - ' 'Label5 ' Me.Label5.AutoSize = True @@ -253,6 +175,97 @@ Partial Class frminterneEmailBenachrichtigungen Me.Label4.TabIndex = 0 Me.Label4.Text = "interne E-Mail Benachrichtungen" ' + 'cboOhneEmpf + ' + Me.cboOhneEmpf.AutoSize = True + Me.cboOhneEmpf.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.cboOhneEmpf.Location = New System.Drawing.Point(256, 50) + Me.cboOhneEmpf.Name = "cboOhneEmpf" + Me.cboOhneEmpf.Size = New System.Drawing.Size(118, 17) + Me.cboOhneEmpf.TabIndex = 32 + Me.cboOhneEmpf.Text = "ohne Empfänger" + Me.cboOhneEmpf.UseVisualStyleBackColor = True + ' + 'dgvBenachrichtigungen + ' + Me.dgvBenachrichtigungen.AKTUALISIERUNGS_INTERVALL = -1 + Me.dgvBenachrichtigungen.AllowUserToAddRows = False + Me.dgvBenachrichtigungen.AllowUserToDeleteRows = False + Me.dgvBenachrichtigungen.AllowUserToOrderColumns = True + Me.dgvBenachrichtigungen.AllowUserToResizeRows = False + Me.dgvBenachrichtigungen.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + DataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft + DataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window + DataGridViewCellStyle1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + DataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.ControlText + DataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.GradientInactiveCaption + DataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.ControlText + DataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] + Me.dgvBenachrichtigungen.DefaultCellStyle = DataGridViewCellStyle1 + Me.dgvBenachrichtigungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.dgvBenachrichtigungen.Location = New System.Drawing.Point(0, 115) + Me.dgvBenachrichtigungen.Name = "dgvBenachrichtigungen" + Me.dgvBenachrichtigungen.RowHeadersVisible = False + Me.dgvBenachrichtigungen.Size = New System.Drawing.Size(1429, 604) + Me.dgvBenachrichtigungen.TabIndex = 10 + ' + 'MyTextBox2 + ' + Me.MyTextBox2._DateTimeOnly = False + Me.MyTextBox2._numbersOnly = True + Me.MyTextBox2._numbersOnlyKommastellen = "" + Me.MyTextBox2._numbersOnlyTrennzeichen = True + Me.MyTextBox2._Prozent = False + Me.MyTextBox2._ShortDateNew = False + Me.MyTextBox2._ShortDateOnly = False + Me.MyTextBox2._TimeOnly = False + Me.MyTextBox2._TimeOnly_Seconds = False + Me.MyTextBox2._value = "" + Me.MyTextBox2._Waehrung = False + Me.MyTextBox2._WaehrungZeichen = True + Me.MyTextBox2.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.MyTextBox2.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.MyTextBox2.ForeColor = System.Drawing.Color.Black + Me.MyTextBox2.Location = New System.Drawing.Point(1369, 13) + Me.MyTextBox2.MaxLineLength = -1 + Me.MyTextBox2.MaxLines_Warning = "" + Me.MyTextBox2.MaxLines_Warning_Label = Nothing + Me.MyTextBox2.Name = "MyTextBox2" + Me.MyTextBox2.Size = New System.Drawing.Size(48, 20) + Me.MyTextBox2.TabIndex = 8 + Me.MyTextBox2.Text = "1000" + Me.MyTextBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'cboKategorie + ' + Me.cboKategorie._allowedValuesFreiText = Nothing + Me.cboKategorie._allowFreiText = False + Me.cboKategorie._value = "" + Me.cboKategorie.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.cboKategorie.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.cboKategorie.DropDownWidth = 250 + Me.cboKategorie.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.cboKategorie.FormattingEnabled = True + Me.cboKategorie.Location = New System.Drawing.Point(95, 76) + Me.cboKategorie.Name = "cboKategorie" + Me.cboKategorie.Size = New System.Drawing.Size(143, 24) + Me.cboKategorie.TabIndex = 30 + ' + 'cboFirma + ' + Me.cboFirma._allowedValuesFreiText = Nothing + Me.cboFirma._allowFreiText = False + Me.cboFirma._value = "" + Me.cboFirma.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.cboFirma.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.cboFirma.DropDownWidth = 250 + Me.cboFirma.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.cboFirma.FormattingEnabled = True + Me.cboFirma.Location = New System.Drawing.Point(95, 49) + Me.cboFirma.Name = "cboFirma" + Me.cboFirma.Size = New System.Drawing.Size(143, 24) + Me.cboFirma.TabIndex = 26 + ' 'frminterneEmailBenachrichtigungen ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -267,13 +280,13 @@ Partial Class frminterneEmailBenachrichtigungen Me.Text = "interne E-Mail Benachrichtigungen" Me.cntxtOptionen.ResumeLayout(False) Me.Panel1.ResumeLayout(False) - CType(Me.dgvBenachrichtigungen, System.ComponentModel.ISupportInitialize).EndInit() Me.pnloptions.ResumeLayout(False) Me.pnloptions.PerformLayout() Me.Panel2.ResumeLayout(False) Me.Panel2.PerformLayout() Me.pnlTop.ResumeLayout(False) Me.pnlTop.PerformLayout() + CType(Me.dgvBenachrichtigungen, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) End Sub @@ -294,4 +307,5 @@ Partial Class frminterneEmailBenachrichtigungen Friend WithEvents Label1 As Windows.Forms.Label Friend WithEvents cboFirma As MyComboBox Friend WithEvents Label5 As Windows.Forms.Label + Friend WithEvents cboOhneEmpf As Windows.Forms.CheckBox End Class diff --git a/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.vb b/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.vb index 6ed84701..243c3a7e 100644 --- a/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.vb +++ b/VERAG_PROG_ALLGEMEIN/AuditFlow/frminterneEmailbenachrichtigungen.vb @@ -1,4 +1,5 @@ -Imports System.Windows.Forms +Imports System.Drawing +Imports System.Windows.Forms Public Class frminterneEmailBenachrichtigungen @@ -15,23 +16,20 @@ Public Class frminterneEmailBenachrichtigungen cboFirma.fillWithSQL("SELECT distinct(Firma_Bez) FROM [tblFirma] order by Firma_Bez", False, "FMZOLL", True) cboFirma.changeItem(cAllgemein.FIRMA) - loadDGVPuefungsobjekte() + loadDGVMailbenachrichtigungen() End Sub - Private Sub cboKategorie_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboKategorie.SelectedIndexChanged - loadDGVPuefungsobjekte() + loadDGVMailbenachrichtigungen() End Sub Private Sub cboFirma_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboFirma.SelectedIndexChanged - - loadDGVPuefungsobjekte() - + loadDGVMailbenachrichtigungen() End Sub - Sub loadDGVPuefungsobjekte() + Sub loadDGVMailbenachrichtigungen() Try Me.Cursor = Cursors.WaitCursor @@ -40,7 +38,7 @@ Public Class frminterneEmailBenachrichtigungen Dim sqlstr As String = "" - sqlstr &= " SELECT e.mb_id,e.mb_aktiv,e.mb_object,e.mb_beschreibung,STRING_AGG(m.mit_email, ', ') AS Emails,STRING_AGG(m.mit_nname, ', ') as Mitarbeiter,COUNT(DISTINCT m.mit_email) AS Anzahl,e.mb_firmaID,ISNULL(f.Firma_Bez,'ALLE') AS Firma_Bez + sqlstr &= " SELECT e.mb_id,e.mb_aktiv,e.mb_object,e.mb_beschreibung,STRING_AGG(m.mit_email, ', ') AS Emails,STRING_AGG(m.mit_nname, ', ') as Mitarbeiter,COUNT(DISTINCT m.mit_email) AS Anzahl,e.mb_firmaID,ISNULL(f.Firma_Bez,'ALLE') AS Firma_Bez, MAX(CASE WHEN ISNULL(m.mit_gekuendigt,0) <> 0 THEN 1 ELSE 0 END) AS inaktivMA FROM [tblEMailbenachrichtigungen] e LEFT JOIN [VERAG].[dbo].[tblFirma] f ON e.mb_firmaID = f.Firma_ID @@ -51,8 +49,13 @@ Public Class frminterneEmailBenachrichtigungen WHERE 1 = 1 " With dgvBenachrichtigungen + Dim SQLHAVING As String = "" + If cboOhneEmpf.Checked Then + SQLHAVING &= " HAVING COUNT(DISTINCT m.mit_email) = 0 " + End If - .SET_SQL(sqlstr & getWherePruefungsobjekte() & " GROUP BY e.mb_id,e.mb_aktiv,e.mb_object,mb_beschreibung,e.mb_firmaID,f.Firma_Bez ORDER BY mb_object,f.Firma_Bez ", "ADMIN", getListBenachrichtigungen) + + .SET_SQL(sqlstr & getWherePruefungsobjekte() & " GROUP BY e.mb_id,e.mb_aktiv,e.mb_object,mb_beschreibung,e.mb_firmaID,f.Firma_Bez " & SQLHAVING & " ORDER BY mb_object,f.Firma_Bez ", "ADMIN", getListBenachrichtigungen) .LOAD() showDGVPruefungsobjekte() End With @@ -74,6 +77,7 @@ Public Class frminterneEmailBenachrichtigungen .Columns("mb_id").Visible = False .Columns("mb_firmaID").Visible = False + .Columns("inaktivMA").Visible = False .Columns("mb_object").Width = 200 .Columns("mb_object").HeaderText = "Benachrichtigung" @@ -99,6 +103,12 @@ Public Class frminterneEmailBenachrichtigungen .Columns("mb_aktiv").Width = 40 .Columns("mb_aktiv").HeaderText = "Aktiv" + For Each r As DataGridViewRow In dgvBenachrichtigungen.Rows + If CInt(r.Cells("inaktivMA").Value) > 0 Then + r.Cells("Mitarbeiter").Style.BackColor = Color.IndianRed + End If + Next + End With End Sub @@ -108,6 +118,7 @@ Public Class frminterneEmailBenachrichtigungen If cboFirma._value <> "" Then sqlstr &= " AND Firma_Bez LIKE @Firma_Bez " If cboKategorie._value <> "" Then sqlstr &= " AND mb_object LIKE @mb_object " + Return sqlstr End Function @@ -127,6 +138,7 @@ Public Class frminterneEmailBenachrichtigungen End Sub - - + Private Sub cboOhneEmpf_CheckedChanged(sender As Object, e As EventArgs) Handles cboOhneEmpf.CheckedChanged + loadDGVMailbenachrichtigungen() + End Sub End Class \ No newline at end of file diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb b/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb index cc9c35fc..228e9bc3 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cAPI.vb @@ -30,6 +30,7 @@ Public Enum cAPI_ART AVISO_IN_CS = 83 AVISO_OUT_SAMMELRECHNUNG = 84 AVISO_OUT_EINZELRECHNUNG = 85 + SDL_OUT_RS_ORIGINALRECHNUNGEN = 86 End Enum diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cKundenErweitert.vb b/VERAG_PROG_ALLGEMEIN/Classes/cKundenErweitert.vb index 7fe585a5..36abb187 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cKundenErweitert.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cKundenErweitert.vb @@ -113,6 +113,7 @@ Public Class cKundenErweitert Property kde_CBAM_ApplicationNo As Object = Nothing Property kde_CBAM_CBAMAccountNo As Object = Nothing Property kde_abwToleranzTage As Object = Nothing + Property kde_SR_IM_EX As Boolean = False Dim SQL As New SQL @@ -234,6 +235,7 @@ Public Class cKundenErweitert list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_CBAM_ApplicationNo", kde_CBAM_ApplicationNo)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_CBAM_CBAMAccountNo", kde_CBAM_CBAMAccountNo)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_abwToleranzTage", kde_abwToleranzTage)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("kde_SR_IM_EX", kde_SR_IM_EX)) diff --git a/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj b/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj index a967f473..bb2cb726 100644 --- a/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj +++ b/VERAG_PROG_ALLGEMEIN/VERAG_PROG_ALLGEMEIN.vbproj @@ -953,6 +953,7 @@ usrcntlKdSearch.vb + From 664e43cafe559bb9e5b60fae134b5623a80bec39 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Fri, 24 Apr 2026 17:27:30 +0200 Subject: [PATCH 3/3] =?UTF-8?q?zugpferd=20pr=C3=BCfungstool?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SDL/Fakturierung/cAutomailversand.vb | 50 +++---- SDL/Fakturierung/cFakturierung.vb | 40 +++--- SDL/frmdynMailvorlage.Designer.vb | 2 + SDL/frmdynMailvorlage.vb | 11 +- .../frmKundenUebersichtZollRgDetails.vb | 62 ++++++++- .../DATENSERVER/cDATENSERVER.vb | 123 +++++++++++++++++- 6 files changed, 226 insertions(+), 62 deletions(-) diff --git a/SDL/Fakturierung/cAutomailversand.vb b/SDL/Fakturierung/cAutomailversand.vb index 511ba1ad..8fdbc829 100644 --- a/SDL/Fakturierung/cAutomailversand.vb +++ b/SDL/Fakturierung/cAutomailversand.vb @@ -5,7 +5,7 @@ Imports VERAG_PROG_ALLGEMEIN Public Class cAutomailversand - Sub sendMailSammelrechnung(_Rechnungsdatum As Date, SammelrechungArt As Integer, FirmaID As Integer, Optional KundenNr As Integer = -1, Optional mailoeffnen As Boolean = False) + Sub sendMailSammelrechnung(_Rechnungsdatum As Date, SammelrechungArt As Integer, FirmaID As Integer, Optional KundenNr As Integer = -1, Optional mailoeffnen As Boolean = False, Optional faktGruppe As String = "") Try Dim sql As New VERAG_PROG_ALLGEMEIN.SQL @@ -29,7 +29,7 @@ Public Class cAutomailversand LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz WHERE Rechnungsausgang.Status IN (2) and Rechnungsausgang.Automailversand_sent is null And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & _Rechnungsdatum.ToShortDateString & "' - and isnull(Rechnungsausgang.Automailversand,0) = 1 and RechnungsNr > 0 " & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & " + and isnull(Rechnungsausgang.Automailversand,0) = 1 and Rechnungsausgang.Automailversand_sent = NULL and RechnungsNr > 0 " & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & " GROUP BY RechnungsNr, RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0),RechnungsLandKz, MitgliedslandEU ORDER BY RechnungsLandKz, RechnungsKundenNr" @@ -39,7 +39,7 @@ Public Class cAutomailversand LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz WHERE Rechnungsausgang.Status IN (2) and Rechnungsausgang.Automailversand_sent is null And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & _Rechnungsdatum.ToShortDateString & "' - and isnull(Rechnungsausgang.Automailversand,0) = 1 and RechnungsNr > 0 " & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & " + and isnull(Rechnungsausgang.Automailversand,0) = 1 and Rechnungsausgang.Automailversand_sent = NULL and RechnungsNr > 0 and FakturierungsGruppe = '" & faktGruppe & "'" & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & " GROUP BY RechnungsNr, RechnungsKundenNr,tblKundenErweitert.kde_SR_IM_EX ORDER BY RechnungsLandKz, RechnungsKundenNr" @@ -155,26 +155,31 @@ Public Class cAutomailversand Dim listPDFs As New List(Of String) Dim showError As Boolean = False + + showError = mailoeffnen 'bei MailÖffnen fehler anzeigen! + setEmailText(row, FirmaID, RechnungsNr, Mailsubject, HTMLMail, SammelrechungArt, dt, BelegartenNr) - If do_SR(row.Item("RechnungsKundenNr"), FirmaID, SammelrechungArt, Rechnungsdatum, RechnungsNr, DruckDatumZeit, MDMKopiedrucken, listPDFs,,,, showError, AbfertigungsNr) Then - loadAndSetAnhaenge(SR_DT, ATTACHMENTS, listPDFs) + If do_SR(row.Item("RechnungsKundenNr"), FirmaID, SammelrechungArt, Rechnungsdatum, RechnungsNr, DruckDatumZeit, MDMKopiedrucken, listPDFs,,,, showError, AbfertigungsNr, faktGruppe) Then + loadAndSetAnhaenge(SR_DT, ATTACHMENTS, listPDFs) - If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Mailsubject &= " TEST" + If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Mailsubject &= " TEST" - If mailoeffnen Then - Dim Mail = createMail(Mailsubject, HTMLMail, ATTACHMENTS, MailTo, MailtoCC, MailtoBCC, FirmaID) - If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum,,,,,,, Mail) Then - Mail.Display() - End If + If mailoeffnen Then + Dim Mail = createMail(Mailsubject, HTMLMail, ATTACHMENTS, MailTo, MailtoCC, MailtoBCC, FirmaID) + If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum,,,,,,, Mail) Then + Mail.Display() + End If - Else + Else - Dim TextHTML = "" - TextHTML &= HTMLMail - TextHTML &= cFakturierung.getSignature("DE", FirmaID, True, True,,,,, True) - HTMLMail = "
" & TextHTML & "
" + Dim TextHTML = "" + TextHTML &= HTMLMail + TextHTML &= cFakturierung.getSignature("DE", FirmaID, True, True,,,,, True) + HTMLMail = "
" & TextHTML & "
" - If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum, ATTACHMENTS, Mailsubject, HTMLMail, MailTo, MailtoCC, MailtoBCC,,, FISKAL) Then + If setLog(SR_DT, row, FirmaID, SammelrechungArt, Rechnungsdatum, ATTACHMENTS, Mailsubject, HTMLMail, MailTo, MailtoCC, MailtoBCC,,, FISKAL) Then + + End If End If @@ -182,8 +187,6 @@ Public Class cAutomailversand End If - End If - Next Next @@ -267,7 +270,10 @@ Public Class cAutomailversand Dim HTMLMail As String = "" Dim listPDFs As New List(Of String) - Dim showError As Boolean = False + + 'Dim showError As Boolean = False + 'showError = mailoeffnen 'bei MailÖffnen fehler anzeigen! + setEmailText(r, FirmaID, RECHNUNG.RechnungsNr, Mailsubject, HTMLMail, RECHNUNG.Sammelrechnung, dt, RECHNUNG.BelegartenNr, SPEDBUCH, RECHNUNG) loadAndSetAnhaenge(dt, ATTACHMENTS, listPDFs, RECHNUNG, SPEDBUCH) @@ -470,10 +476,10 @@ Public Class cAutomailversand End Sub - Private Function do_SR(kdNr As Integer, FirmaID As Integer, Sammelrechnungsart As Integer, Rechnungsdatum As Date, lastAktuelle_RgNr As Integer, DruckDatumZeit As Date, Kopie As Boolean, listPDFs As List(Of String), Optional EinzelAnlagen As Boolean = False, Optional Sammelbericht As Boolean = True, Optional saveInThereFore As Boolean = False, Optional showError As Boolean = True, Optional AbfertigungsArt As String = "") + Private Function do_SR(kdNr As Integer, FirmaID As Integer, Sammelrechnungsart As Integer, Rechnungsdatum As Date, lastAktuelle_RgNr As Integer, DruckDatumZeit As Date, Kopie As Boolean, listPDFs As List(Of String), Optional EinzelAnlagen As Boolean = False, Optional Sammelbericht As Boolean = True, Optional saveInThereFore As Boolean = False, Optional showError As Boolean = True, Optional AbfertigungsArt As String = "", Optional faktGruppe As String = "") Dim RechnungsNrisSet As Boolean = False - RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(FirmaID, Sammelrechnungsart, Rechnungsdatum, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, kdNr, 4, listPDFs, "", lastAktuelle_RgNr, DruckDatumZeit, , , ,, ,, AbfertigungsArt, True, Kopie, True, saveInThereFore, showError) + RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(FirmaID, Sammelrechnungsart, Rechnungsdatum, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, kdNr, 4, listPDFs, "", lastAktuelle_RgNr, DruckDatumZeit,,,,,, faktGruppe, AbfertigungsArt, True, Kopie, True, saveInThereFore, showError) Return RechnungsNrisSet End Function diff --git a/SDL/Fakturierung/cFakturierung.vb b/SDL/Fakturierung/cFakturierung.vb index 1fda4478..66f8a5cb 100644 --- a/SDL/Fakturierung/cFakturierung.vb +++ b/SDL/Fakturierung/cFakturierung.vb @@ -1860,34 +1860,20 @@ Public Class cFakturierung Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport rpt.Run(False) p.NeverEmbedFonts = "" - 'p.Version = Section.PdfVersion.PDFA3b - NICHT AUSREICHEND FÜR ZUGFERD! AUSSERDEM WIR PROF-VERSION BENÖTIGT! + 'p.Version = GrapeCity.ActiveReports.Export.Pdf.Section.PdfVersion.PDFA3b '- NICHT AUSREICHEND FÜR ZUGFERD! AUSSERDEM WIR PROF-VERSION BENÖTIGT! + p.Version = GrapeCity.ActiveReports.Export.Pdf.Section.PdfVersion.Pdf17 p.Export(rpt.Document, tmpPath) - '------------------- WEGEN PDF/A3 - - 'Dim srcPdf = tmpPath - 'Dim dstPdf = "pdfa3.pdf" - 'Dim iccPath = "sRGB.icc" - - 'Dim reader As New iText.Kernel.Pdf.PdfReader(srcPdf) - 'Dim writer As New PdfWriter(dstPdf) - - 'Dim iccStream = New FileStream(iccPath, FileMode.Open, FileAccess.Read) - 'Dim icc = ICC_Profile.GetInstance(iccStream) - - 'Dim outputIntent As New PdfOutputIntent("Custom", "", "http://www.color.org", "sRGB IEC61966-2.1", iccStream) - - 'Dim pdf As New iText.Pdfa.PdfADocument(writer, iText.Kernel.Pdf.PdfAConformanceLevel.PDF_A_3B, outputIntent) - - 'pdf.Close() - - '------------------- WEGEN PDF/A3 - Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") If enableZugpferd Then - tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(True, Rechnung,), "ZUGFeRD-invoice.xml") + 'tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(True, Rechnung,), "ZUGFeRD-invoice.xml") + Dim pdfA = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.ConvertToPdfA3(tmpPath) + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addZugferdXML(pdfA, createZUGFeRD(True, Rechnung,)) + + + Else Dim Zugferdpath = createZUGFeRD(True, Rechnung) @@ -2872,7 +2858,9 @@ Public Class cFakturierung Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") If enableZugpferd Then - tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(True, RECHNUNG,), "ZUGFeRD-invoice.xml") + 'tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(True, RECHNUNG,), "ZUGFeRD-invoice.xml") + Dim pdfA = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.ConvertToPdfA3(tmpPath) + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.AddZugferdXml(tmpPath, createZUGFeRD(True, RECHNUNG,)) Else Dim Zugferdpath = createZUGFeRD(True, RECHNUNG) @@ -5365,7 +5353,8 @@ Public Class cFakturierung Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") If enableZugpferd Then - tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, SammelrechnungsDT, , rpt), "ZUGFeRD-invoice.xml") + 'tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, SammelrechnungsDT, , rpt), "ZUGFeRD-invoice.xml") + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.AddZugferdXml(tmpPath, createZUGFeRD(False, Nothing, SammelrechnungsDT, , rpt)) Else Dim Zugferdpath = createZUGFeRD(False, Nothing, SammelrechnungsDT,, rpt) If Zugferdpath IsNot Nothing AndAlso Zugferdpath <> "" Then @@ -6060,7 +6049,8 @@ Public Class cFakturierung Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") If enableZugpferd Then - tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, dt, rpt), "ZUGFeRD-invoice.xml") + 'tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, dt, rpt), "ZUGFeRD-invoice.xml") + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.AddZugferdXml(tmpPath, createZUGFeRD(False, Nothing, dt, rpt)) Else Dim Zugferdpath = createZUGFeRD(False, Nothing, dt, rpt) If Zugferdpath IsNot Nothing AndAlso Zugferdpath <> "" Then diff --git a/SDL/frmdynMailvorlage.Designer.vb b/SDL/frmdynMailvorlage.Designer.vb index 6854819c..554af8e8 100644 --- a/SDL/frmdynMailvorlage.Designer.vb +++ b/SDL/frmdynMailvorlage.Designer.vb @@ -361,6 +361,8 @@ Partial Class frmdynMailvorlagen Me.rtb_Emailtext.Size = New System.Drawing.Size(868, 307) Me.rtb_Emailtext.TabIndex = 22 Me.rtb_Emailtext.Text = "" + Me.rtb_Emailtext.WordWrap = False + Me.rtb_Emailtext.ScrollBars = RichTextBoxScrollBars.Both ' 'cbxFirmaChange ' diff --git a/SDL/frmdynMailvorlage.vb b/SDL/frmdynMailvorlage.vb index 7765b93f..bb3df839 100644 --- a/SDL/frmdynMailvorlage.vb +++ b/SDL/frmdynMailvorlage.vb @@ -291,7 +291,7 @@ Public Class frmdynMailvorlagen txtkonserve = New cTextkonserve(dgvMailvorlagen.SelectedRows(0).Cells("txt_id").Value) - rtb_Emailtext.Text = txtkonserve.txt_text + 'rtb_Emailtext.Text = txtkonserve.txt_text txtBezeichnung.Text = txtkonserve.txt_bezeichnung txtBetreff.Text = txtkonserve.txt_betreff cbxAktiv.Checked = txtkonserve.txt_dynMailvorlage @@ -474,12 +474,11 @@ Public Class frmdynMailvorlagen End Sub - Private Function insertlinebreaks(text As String) As String - - Return text.ToString.Replace(vbLf, "
" & vbLf) - + Private Function InsertLineBreaks(text As String) As String + Return text.Replace(vbCrLf, "
" & vbCrLf) _ + .Replace(vbLf, "
" & vbLf) _ + .Replace(vbCr, "
" & vbCr) End Function - Private Sub cbSendungsvermerk_CheckedChanged(sender As Object, e As EventArgs) Handles cbSendungsvermerk.CheckedChanged txtSendungsvermerk.Visible = cbSendungsvermerk.Checked diff --git a/SDL/kunden/frmKundenUebersichtZollRgDetails.vb b/SDL/kunden/frmKundenUebersichtZollRgDetails.vb index 4bd5d3d1..952020f9 100644 --- a/SDL/kunden/frmKundenUebersichtZollRgDetails.vb +++ b/SDL/kunden/frmKundenUebersichtZollRgDetails.vb @@ -1,6 +1,7 @@  -Imports System.Reflection Imports System.Globalization +Imports System.IO +Imports VERAG_PROG_ALLGEMEIN Public Class frmKundenUebersichtZollRgDetails Dim RK_ID As Integer = -1 @@ -140,7 +141,11 @@ Public Class frmKundenUebersichtZollRgDetails Console.WriteLine(output) Console.WriteLine(err) - If err <> "" Then MsgBox(err) + If err <> "" Then + Dim tmpPath_Report = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("MUSTANG-REPORT", ".pdf", , False) + CreateValidationPdf(err, Path_temp, RK_ID, tmpPath_Report) + If tmpPath_Report <> "" Then Process.Start(tmpPath_Report) + End If End Using @@ -151,4 +156,57 @@ Public Class frmKundenUebersichtZollRgDetails End If End Sub + + Private Function ExtractMustangResult(log As String, Invoice_file As String, RK_ID As Integer) As String + + Dim pdfStatus = If(log.Contains("Parsed PDF:invalid"), "INVALID", "VALID") + Dim xmlStatus = If(log.Contains("XML:valid"), "VALID", "INVALID") + Dim FileInfo As New FileInfo(Invoice_file) + Dim Invoice As New cRechnungsausgang(RK_ID) + + Dim profile As String = "EN16931" + If log.Contains("EN16931") Then profile = "EN16931" + + Dim took As String = "" + Dim m = System.Text.RegularExpressions.Regex.Match(log, "Took:(\d+)ms") + If m.Success Then took = m.Groups(1).Value & " ms" + + Return $"ZUGFeRD VALIDATION RESULT" & vbCrLf & + $"--------------------------------" & vbCrLf & + $"PDF File : {FileInfo.Name}" & vbCrLf & + $"Invoice No : {Invoice.RechnungsNr}" & vbCrLf & + $"PDF Status : {pdfStatus}" & vbCrLf & + $"XML Status : {xmlStatus}" & vbCrLf & + $"Profile : {profile}" & vbCrLf & + $"Duration : {took}" + + End Function + + Public Sub CreateValidationPdf(log As String, Invoice_file As String, RK_ID As Integer, outputPath As String) + + Dim resultText = ExtractMustangResult(log, Invoice_file, RK_ID) + + Using fs As New FileStream(outputPath, FileMode.Create) + Using doc As New itextsharp.text.Document() + Dim writer = itextsharp.text.pdf.PdfWriter.GetInstance(doc, fs) + + doc.Open() + + Dim titleFont = itextsharp.text.FontFactory.GetFont("Arial", 14, itextsharp.text.Font.BOLD) + Dim bodyFont = itextsharp.text.FontFactory.GetFont("Arial", 10) + + doc.Add(New itextsharp.text.Paragraph("ZUGFeRD VALIDATION REPORT", titleFont)) + doc.Add(New itextsharp.text.Paragraph(" ")) + + Dim lines = resultText.Split(vbCrLf) + + For Each line In lines + doc.Add(New itextsharp.text.Paragraph(line, bodyFont)) + Next + doc.Close() + End Using + End Using + + End Sub + End Class \ No newline at end of file diff --git a/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb b/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb index 18b68ba3..083483d1 100644 --- a/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb +++ b/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb @@ -3,9 +3,12 @@ Imports System.Drawing Imports System.Drawing.Printing Imports System.IO Imports System.Net +Imports System.Text Imports System.Text.RegularExpressions Imports System.Windows.Forms +Imports DocumentFormat.OpenXml Imports iTextSharp.text.pdf +Imports Org.apache.pdfbox.pdmodel.graphics.color Imports Spire.Pdf Imports Spire.Pdf.Attachments Imports Spire.Pdf.Print @@ -1393,10 +1396,10 @@ Public Class cFormularManager For Each pdfPath As String In PDFFile - Using doc As New Spire.Pdf.PdfDocument(pdfPath) + Using doc As New Spire.Pdf.PdfDocument(pdfPath) - If doc.Pages.Count = 0 Then Continue For - Dim size = doc.Pages(0).Size + If doc.Pages.Count = 0 Then Continue For + Dim size = doc.Pages(0).Size If size.Width <= 10 OrElse size.Height <= 10 Then Continue For 'zu kleine Seiten überspringen ' --- Druckeinstellungen --- doc.PrintSettings.PrinterName = printerName @@ -1405,9 +1408,9 @@ Public Class cFormularManager doc.PrintSettings.SelectSinglePageLayout(PdfSinglePageScalingMode.FitSize, True) doc.Print() - End Using + End Using - Next + Next Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) @@ -2437,6 +2440,112 @@ Public Class DATENVERVER_OPTIONS End Function + Public Shared Function addZugferdXML(File As String, attPath As String) As String + Dim tempFile As String = File & ".tmp" + + Using reader As New PdfReader(File) + Using fs As New FileStream(tempFile, FileMode.Create) + Using stamper As New PdfStamper(reader, fs) + + Dim xmlBytes = System.IO.File.ReadAllBytes(attPath) + + Dim fileName As String = "factur-x.xml" + + Dim fspec = PdfFileSpecification.FileEmbedded( + stamper.Writer, + fileName, + fileName, + xmlBytes, + "application/xml", + Nothing, + 0 + ) + + fspec.Put(PdfName.AFRELATIONSHIP, New PdfName("Alternative")) + + stamper.Writer.AddFileAttachment("ZUGFeRD", fspec) + + Dim af As New PdfArray() + af.Add(fspec.Reference) + stamper.Writer.ExtraCatalog.Put(PdfName.AFRELATIONSHIP, af) + + + SetZugferdXmp(stamper, fileName) + + End Using + End Using + End Using + + System.IO.File.Delete(File) + System.IO.File.Move(tempFile, File) + + Return File + End Function + + + Public Shared Function ConvertToPdfA3(inputPdf As String) As String + + Dim tempFile As String = inputPdf & ".tmp" + + Dim reader As New PdfReader(inputPdf) + + Using fs As New FileStream(tempFile, FileMode.Create, FileAccess.Write) + Using stamper As New PdfStamper(reader, fs) + + ' ✔ DAS ist in iTextSharp 5 der einzig relevante PDF/A-Baustein + Dim iccPath As String = + "C:\Windows\System32\spool\drivers\color\sRGB Color Space Profile.icm" + + Dim icc = ICC_Profile.GetInstance(File.ReadAllBytes(iccPath)) + + stamper.Writer.SetOutputIntents( + "Custom", + "", + "http://www.color.org", + "sRGB IEC61966-2.1", + icc + ) + + stamper.Writer.PDFXConformance = PdfWriter.PDFX32002 + + End Using + End Using + + reader.Close() + + If File.Exists(inputPdf) Then File.Delete(inputPdf) + File.Move(tempFile, inputPdf) + + Return inputPdf + + End Function + + + Private Shared Sub SetZugferdXmp(stamper As PdfStamper, xmlFileName As String) + + Dim xmp As String = + "" & + "" & + "" & + "" & + "3" & + "B" & + "INVOICE" & + "" & xmlFileName & "" & + "2.1" & + "EN 16931" & + "" & + "" & + "" & + "" + + stamper.XmpMetadata = Encoding.UTF8.GetBytes(xmp) + + + End Sub + Public Shared Function addAttachementToPDF(File As String, attPath As String, Optional renameFile As String = "") As String Try @@ -2496,9 +2605,9 @@ Public Class barcodeToPdf Public width As Integer Public height As Integer Public onpage = 1 - Public rotate As Drawing.RotateFlipType = RotateFlipType.RotateNoneFlipNone + Public rotate As System.Drawing.RotateFlipType = RotateFlipType.RotateNoneFlipNone - Sub New(image As Image, x As Integer, y As Integer, width As Integer, height As Integer, onpage As Integer, rotate As Drawing.RotateFlipType) + Sub New(image As Image, x As Integer, y As Integer, width As Integer, height As Integer, onpage As Integer, rotate As System.Drawing.RotateFlipType) Me.image = image Me.x = x Me.y = y