Automail, Ustva, etc.

This commit is contained in:
2026-08-06 14:32:42 +02:00
parent 078c378fd5
commit 7730dbd671
10 changed files with 265 additions and 128 deletions

View File

@@ -134,7 +134,7 @@ Public Class cAutomailversand
Dim MailtoBCC As String = ""
setEmpfaengerMail_SR(SR_DT, AD, MailTo, MailtoCC, MailtoBCC, FirmaID, SammelrechungArt)
setandcheckEmpfaengerMail_SR(SR_DT, AD, MailTo, MailtoCC, MailtoBCC, FirmaID, SammelrechungArt)
'im TESTSYSTEM bewusst die Empfänger leeren!
@@ -279,7 +279,7 @@ Public Class cAutomailversand
FISKAL = New cFiskal_Daten(r.Item("RechnungsKundenNr"))
setEmpfaengerMail_ER(SPEDBUCH, AD, MailTo, MailtoCC, MailtoBCC, "")
setAndCheckEmpfaengerMail_ER(SPEDBUCH, AD, MailTo, MailtoCC, MailtoBCC, "")
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
@@ -1747,7 +1747,7 @@ Public Class cAutomailversand
End Function
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)
Public Shared Function setAndCheckEmpfaengerMail_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) As String
If SPEDBUCH.FilialenNr = "4801" Or SPEDBUCH.FilialenNr = "4802" Then email_receipt = VERAG_PROG_ALLGEMEIN.cKundenKontakte.getMailAdress(AD.AdressenNr, "Rechnung an (ATILLA)")
@@ -1787,9 +1787,16 @@ Public Class cAutomailversand
End If
If EMAILTMP = "" Then
If AD.E_Mail IsNot Nothing AndAlso AD.E_Mail <> "" Then EMAILTMP &= AD.E_Mail & ";"
If AD.E_Mail2 IsNot Nothing AndAlso AD.E_Mail2 <> "" Then EMAILTMP &= AD.E_Mail2 & ";"
End If
Return EMAILTMP & EMAILTMPCC
End Function
Private Function setEmpfaengerMail_SR(ByRef SR_DT As DataTable, ByRef AD As cAdressen, ByRef EMAILTMP As String, ByRef EMAILTMPCC As String, ByRef EMAILTMPBCC As String, ByRef FirmaID As Integer, ByRef SammelrechungArt As String)
Public Shared Function setandcheckEmpfaengerMail_SR(ByRef SR_DT As DataTable, ByRef AD As cAdressen, ByRef EMAILTMP As String, ByRef EMAILTMPCC As String, ByRef EMAILTMPBCC As String, ByRef FirmaID As Integer, ByRef SammelrechungArt As String) As String
If SammelrechungArt <> 6 Then
@@ -1820,6 +1827,16 @@ Public Class cAutomailversand
End If
If EMAILTMP = "" And EMAILTMPCC = "" And EMAILTMPBCC = "" Then
If AD.E_Mail IsNot Nothing AndAlso AD.E_Mail <> "" Then EMAILTMP &= AD.E_Mail & ";"
If AD.E_Mail2 IsNot Nothing AndAlso AD.E_Mail2 <> "" Then EMAILTMP &= AD.E_Mail2 & ";"
End If
Return EMAILTMP & EMAILTMPCC
End Function
Private Function getAbertigungsNr(counter As Integer) As String

View File

@@ -23,6 +23,16 @@ Public Class frmAbrechnungHandling
dgvHandling.DataSource = dt
End If
For Each col As DataGridViewColumn In dgvHandling.Columns
If col.ValueType Is GetType(Double) Then
With col.DefaultCellStyle
.Alignment = DataGridViewContentAlignment.MiddleRight
.Format = "N2"
End With
End If
Next
Me.Text = title
End Sub

View File

@@ -676,6 +676,18 @@ Public Class frmFaktSammelRgDrucken
Dim abfertigungsarten = getValues()
Dim func As New cAutomailversand
For Each r In MyDatagridview1.SelectedRows.Cast(Of DataGridViewRow)().Where(Function(x) x.Cells("RENR").Value Is Nothing OrElse IsDBNull(x.Cells("RENR").Value))
Dim ADR As New cAdressen(r.Cells("RechnungsKundenNr").Value)
If func.setandcheckEmpfaengerMail_SR(Nothing, ADR, "", "", "", Firma, Sammelrechung) = "" Then
MsgBox("Bei Kunde " & r.Cells("RechnungsKundenNr").Value & " fehlt der Email-Empfänger!" & vbNewLine & "Vorgang wird abgebrochen")
Exit Sub
End If
Next
For Each r In MyDatagridview1.SelectedRows.Cast(Of DataGridViewRow)().Where(Function(x) x.Cells("RENR").Value Is Nothing OrElse IsDBNull(x.Cells("RENR").Value))
Me.Enabled = False
Me.Cursor = Cursors.WaitCursor

View File

@@ -3484,6 +3484,12 @@ Public Class usrCntlFaktAbrechnung
If cbxAUTOMailversand.Checked AndAlso (Not RECHNUNG.Automailversand Or RECHNUNG.RechnungsDatum Is Nothing) Then
If cAutomailversand.automRechnungsversand_aktivieren(showMessageBox, RECHNUNG.Sammelrechnung = 0) Then
Dim fun As New cAutomailversand
Dim AD As VERAG_PROG_ALLGEMEIN.cAdressen = kdFirmaRechnungAn.KdData_ADRESSEN
If fun.setAndCheckEmpfaengerMail_ER(SPEDBUCH, AD, "", "", "", "") = "" Then
MsgBox("Bei diesem Kunden ist kein EMail-Empfänger hinterlegt!" & vbNewLine & "Automailversand kann nicht gesetzt werden.") : Exit Sub
End If
If RECHNUNG.RechnungsDatum Is Nothing Then
'LAUT AUSSAGE VON VERR. IMMER HEUTIGES DATUM!

View File

@@ -3337,7 +3337,7 @@ Public Class frmMDM_USTVAntrag
If UStVAn_ID <= 0 Then Exit Sub
.SET_SQL("SELECT [UStVAn_ID] ,[UStVEr_ID],[UStVEr_USteuerbetragEUR],[Belegdatum],[Belegnummer],[GutschriftsDatum],[GutschriftsNr],UStVEr_VZ,UStVEr_RZVZ,UStVEr_Bank,[Berufungsdatum],[Berufungshöhe],[Berufungsgrund],[Bemerkung],[UStVEr_Umrechnungskurs],[UStVEr_USteuerbetrag],[UStVEr_Sachbearbeiter],[UStVEr_Zeitstempel]
.SET_SQL("SELECT [UStVAn_ID] ,[UStVEr_ID],[UStVEr_USteuerbetragEUR],[Belegdatum],[Belegnummer],[GutschriftsDatum],[GutschriftsNr],UStVEr_VZ,UStVEr_RZVZ,UStVEr_Bank,UStVEr_Differenz,[Berufungsdatum],[Berufungshöhe],[Berufungsgrund],[Bemerkung],[UStVEr_Umrechnungskurs],[UStVEr_USteuerbetrag],[UStVEr_Sachbearbeiter],[UStVEr_Zeitstempel]
FROM [tblUStVErstattung]
where UStVAn_ID=" & UStVAn_ID & " ORDER BY UStVEr_ID", "FMZOLL")
.LOAD()
@@ -3362,8 +3362,8 @@ Public Class frmMDM_USTVAntrag
.Columns("GutschriftsDatum").HeaderText = "GS-Datum"
.Columns("GutschriftsNr").HeaderText = "GS-Nr"
.Columns("GutschriftsDatum").Width = 80
.Columns("GutschriftsNr").Width = 130
.Columns("GutschriftsDatum").Width = 70
.Columns("GutschriftsNr").Width = 100
.Columns("Berufungsdatum").HeaderText = "BE-Datum"
@@ -3373,8 +3373,21 @@ Public Class frmMDM_USTVAntrag
.Columns("UStVEr_VZ").HeaderText = "VZ"
.Columns("UStVEr_RZVZ").HeaderText = "RZVZ"
.Columns("UStVEr_Bank").HeaderText = "Bank"
.Columns("UStVEr_Differenz").HeaderText = "Diff,"
.Columns("Berufungsdatum").Width = 80
.Columns("UStVEr_VZ").DefaultCellStyle.Format = "N2"
.Columns("UStVEr_VZ").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVEr_RZVZ").DefaultCellStyle.Format = "N2"
.Columns("UStVEr_RZVZ").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVEr_Bank").DefaultCellStyle.Format = "N2"
.Columns("UStVEr_Bank").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVEr_Differenz").DefaultCellStyle.Format = "N2"
.Columns("UStVEr_Differenz").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("Berufungsdatum").Width = 70
.Columns("Berufungshöhe").Width = 80
.Columns("Berufungsgrund").Width = 100
.Columns("Bemerkung").Width = 200

View File

@@ -1834,7 +1834,12 @@ Public Class usrCntlUSTV
Dim dt = SQL.loadDgvBySql(sqlStr, "FMZOLL")
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
cProgramFunctions.genExcelFromDT_NEW(dt, ,, "MWST-Eingang " & Today.ToShortDateString,,, True,,,,,, {"L1:Q" & (dt.Rows.Count + 1)}, {"D", "E", "I", "J", "M", "O", "N", "Q", "R", "S"})
Dim formeln As New Dictionary(Of String, String) From {
{"U", "=T{0}-P{0}"},
{"AB", "=W{0}-T{0}"}
}
cProgramFunctions.genExcelFromDT_NEW(dt, ,, "MWST Eingänge " & Today.ToShortDateString,,, True,,,,,, {"L1:AB" & (dt.Rows.Count + 1)}, {"D", "E", "I", "J", "M", "O", "N", "Q", "R", "S"}, formeln)
Else
@@ -1874,13 +1879,13 @@ Public Class usrCntlUSTV
dt.Columns.Add("AntragID", GetType(String))
dt.Columns.Add("BetragEUR", GetType(Double))
dt.Columns.Add("Bank", GetType(String))
dt.Columns.Add("Bank", GetType(Double))
dt.Columns.Add("BelegNr", GetType(String))
dt.Columns.Add("GS", GetType(String))
dt.Columns.Add("VZ", GetType(String))
dt.Columns.Add("VZ", GetType(Double))
dt.Columns.Add("RZVZ", GetType(String))
dt.Columns.Add("Info", GetType(String))
dt.Columns.Add("Diff", GetType(String))
dt.Columns.Add("Diff", GetType(Double))
dt.Columns.Add("3470", GetType(String))
End If
@@ -1960,20 +1965,20 @@ Public Class usrCntlUSTV
Dim USTAV_ID As String =
getTrimedString(Convert.ToString(Blatt.Cells(row, headerMap("ID")).Value), 6)
Dim BetragEUR As String =
Convert.ToString(Blatt.Cells(row, headerMap("DifferenzbetragEUR")).Value)
Dim BetragEUR As Double =
Convert.ToDouble(Blatt.Cells(row, headerMap("DifferenzbetragEUR")).Value)
Dim BelNr As String =
getTrimedString(Convert.ToString(Blatt.Cells(row, headerMap("BelNr")).Value), 6)
Dim Bank As String =
Convert.ToString(Blatt.Cells(row, headerMap("BANK")).Value)
Dim Bank As Double =
Convert.ToDouble(Blatt.Cells(row, headerMap("BANK")).Value)
Dim GS As String =
Convert.ToString(Blatt.Cells(row, headerMap("GS")).Value)
Dim VZ As String =
Convert.ToString(Blatt.Cells(row, headerMap("VZ")).Value)
Dim VZ As Double =
Convert.ToDouble(Blatt.Cells(row, headerMap("VZ")).Value)
Dim RZVZ As String =
Convert.ToString(Blatt.Cells(row, headerMap("RZVZ")).Value)
@@ -1984,14 +1989,14 @@ Public Class usrCntlUSTV
Dim _3470 As String =
Convert.ToString(Blatt.Cells(row, headerMap("3470")).Value)
Dim _Diff As String =
Convert.ToString(Blatt.Cells(row, headerMap("Diff")).Value)
Dim _Diff As Double =
Convert.ToDouble(Blatt.Cells(row, headerMap("Diff")).Value)
If String.IsNullOrWhiteSpace(USTAV_ID) Then
Continue For
End If
If IsNumeric(USTAV_ID) AndAlso Bank <> "" AndAlso IsNumeric(Bank) Then
If IsNumeric(USTAV_ID) AndAlso IsNumeric(Bank) AndAlso IsNumeric(BetragEUR) Then
Dim R As DataRow = dt.NewRow
@@ -2004,6 +2009,7 @@ Public Class usrCntlUSTV
R("RZVZ") = RZVZ
R("Info") = INFO
R("Diff") = _Diff
R("3470") = _3470
dt.Rows.Add(R)
@@ -2038,104 +2044,109 @@ Public Class usrCntlUSTV
Using frm As New frmAbrechnungHandling(dt, Nothing, "Import " & dt.Rows.Count & " Erstattungspositionen")
With frm
.btnPreisliste.Visible = False
.dgvHandling.RowHeadersVisible = False
.Button2.Text = "Importieren"
frm.btnPreisliste.Visible = False
frm.Button2.Text = "Importieren"
End With
frm.ShowDialog()
If frm.DialogResult = DialogResult.OK Then
For Each r As DataRow In dt.Rows
If frm.ShowDialog() = DialogResult.OK Then
Dim BelegNr = r.Item("BelegNr")
Dim USTV_ANTRAG = New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(r.Item("AntragID"))
If USTV_ANTRAG.hasEntry Then
For Each r As DataRow In dt.Rows
Dim BelegNr = r.Item("BelegNr")
Dim USTV_ANTRAG = New VERAG_PROG_ALLGEMEIN.cUSTVAntrag(r.Item("AntragID"))
If USTV_ANTRAG.hasEntry Then
Select Case r.Item("3470").ToString.ToLower
Case "ja"
If Not USTV_ANTRAG.UStVAn_3470 Then
USTV_ANTRAG.UStVAn_3470 = True
End If
End Select
Dim UStV_ERS = New VERAG_PROG_ALLGEMEIN.cUStVErstattungPositionen(Belegdatum, BelegNr, fd.FileName)
If Not UStV_ERS.hasEntry Then
UStV_ERS.UStVEr_ID = USTV_ANTRAG.getMaxPosNrErst()
UStV_ERS.UStVEr_interneNr = USTV_ANTRAG.getMaxinternePosNrErst()
UStV_ERS.UStVAn_ID = USTV_ANTRAG.UStVAn_ID
UStV_ERS.Belegnummer = BelegNr
UStV_ERS.UStVEr_USteuerbetragEUR = r.Item("BetragEUR")
UStV_ERS.UStVEr_Importfilename = fd.SafeFileName
UStV_ERS.UStVEr_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
UStV_ERS.UStVEr_Zeitstempel = Now
If USTV_ANTRAG.UStVAn_Währungscode <> "EUR" Then
Dim kurs As New cEZB_Waehrungskurse(USTV_ANTRAG.UStVAn_Währungscode)
UStV_ERS.UStVEr_USteuerbetrag = System.Math.Round(kurs.EXCHANGE_EURTOCUR(UStV_ERS.UStVEr_USteuerbetragEUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(Belegdatum)), 2)
UStV_ERS.UStVEr_Umrechnungskurs = Math.floor((CDbl(UStV_ERS.UStVEr_USteuerbetrag) / CDbl(UStV_ERS.UStVEr_USteuerbetragEUR) * 100 + 0.5)) / 100
Else
UStV_ERS.UStVEr_USteuerbetrag = r.Item("BetragEUR")
UStV_ERS.UStVEr_Umrechnungskurs = 1
End If
Dim Bemerkung As String = ""
If Not String.IsNullOrWhiteSpace(r.Item("VZ")) AndAlso IsNumeric(r.Item("VZ")) AndAlso Not IsDBNull(r.Item("VZ")) Then
Bemerkung &= "VZ: " & CDbl(r.Item("VZ")).ToString("N2") & " " & USTV_ANTRAG.UStVAn_Währungscode
UStV_ERS.UStVEr_VZ = CDbl(r.Item("VZ"))
If USTV_ANTRAG.UStVAn_VZBetrag Is Nothing OrElse IsNothing(USTV_ANTRAG.UStVAn_VZBetrag) Then
USTV_ANTRAG.UStVAn_VZBetrag = UStV_ERS.UStVEr_VZ
End If
End If
If Not String.IsNullOrWhiteSpace(r.Item("Bank")) AndAlso IsNumeric(r.Item("Bank")) AndAlso Not IsDBNull(r.Item("Bank")) Then
Bemerkung &= ", a.K. : " & CDbl(r.Item("Bank")).ToString("N2") & " " & USTV_ANTRAG.UStVAn_Währungscode
UStV_ERS.UStVEr_Bank = CDbl(r.Item("Bank"))
End If
If Not String.IsNullOrWhiteSpace(r.Item("Diff")) AndAlso IsNumeric(r.Item("Diff")) AndAlso Not IsDBNull(r.Item("Diff")) Then
Bemerkung &= ", Diff: " & CDbl(r.Item("Diff")).ToString("N2")
End If
If Bemerkung <> "" Then
UStV_ERS.Bemerkung = Bemerkung
End If
If Not String.IsNullOrWhiteSpace(r.Item("RZVZ")) AndAlso IsNumeric(r.Item("RZVZ")) AndAlso Not IsDBNull(r.Item("RZVZ")) Then
UStV_ERS.UStVEr_RZVZ = CDbl(r.Item("RZVZ")).ToString("N2")
If USTV_ANTRAG.UStVAn_RZBetragVZ Is Nothing OrElse IsDBNull(USTV_ANTRAG.UStVAn_RZBetragVZ) Then
USTV_ANTRAG.UStVAn_RZBetragVZ = UStV_ERS.UStVEr_RZVZ
End If
End If
If UStV_ERS.SAVE() Then
USTV_ANTRAG.UStVAn_MWSTEingang_offen = True
USTV_ANTRAG.SAVE()
counter += 1
End If
If r.Item("3470").ToString.ToLower = "ja" Then
USTV_ANTRAG.UStVAn_3470 = True
End If
End If
Next
Dim UStV_ERS = New VERAG_PROG_ALLGEMEIN.cUStVErstattungPositionen(Belegdatum, BelegNr, fd.FileName)
If Not UStV_ERS.hasEntry Then
importiert = True
MsgBox(counter & " von " & dt.Rows.Count & " erfolgreich importiert!")
UStV_ERS.UStVEr_ID = USTV_ANTRAG.getMaxPosNrErst()
UStV_ERS.UStVEr_interneNr = USTV_ANTRAG.getMaxinternePosNrErst()
UStV_ERS.UStVAn_ID = USTV_ANTRAG.UStVAn_ID
UStV_ERS.Belegnummer = BelegNr
UStV_ERS.UStVEr_USteuerbetragEUR = r.Item("BetragEUR")
UStV_ERS.UStVEr_Importfilename = fd.SafeFileName
UStV_ERS.UStVEr_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
UStV_ERS.UStVEr_Zeitstempel = Now
End If
If USTV_ANTRAG.UStVAn_Währungscode <> "EUR" Then
Dim kurs As New cEZB_Waehrungskurse(USTV_ANTRAG.UStVAn_Währungscode)
UStV_ERS.UStVEr_USteuerbetrag = System.Math.Round(kurs.EXCHANGE_EURTOCUR(UStV_ERS.UStVEr_USteuerbetragEUR, USTV_ANTRAG.UStVAn_Währungscode, CDate(Belegdatum)), 2)
UStV_ERS.UStVEr_Umrechnungskurs = Math.floor((CDbl(UStV_ERS.UStVEr_USteuerbetrag) / CDbl(UStV_ERS.UStVEr_USteuerbetragEUR) * 100 + 0.5)) / 100
Else
UStV_ERS.UStVEr_USteuerbetrag = r.Item("BetragEUR")
UStV_ERS.UStVEr_Umrechnungskurs = 1
End If
Dim Bemerkung As String = ""
If Not String.IsNullOrWhiteSpace(r.Item("VZ")) AndAlso IsNumeric(r.Item("VZ")) AndAlso Not IsDBNull(r.Item("VZ")) AndAlso CDbl(r.Item("VZ")) <> 0 Then
Bemerkung &= "VZ: " & CDbl(r.Item("VZ")).ToString("N2") & " " & USTV_ANTRAG.UStVAn_Währungscode
UStV_ERS.UStVEr_VZ = CDbl(r.Item("VZ"))
If USTV_ANTRAG.UStVAn_VZBetrag Is Nothing OrElse IsNothing(USTV_ANTRAG.UStVAn_VZBetrag) Then
USTV_ANTRAG.UStVAn_VZBetrag = UStV_ERS.UStVEr_VZ
End If
End If
If Not String.IsNullOrWhiteSpace(r.Item("Bank")) AndAlso IsNumeric(r.Item("Bank")) AndAlso Not IsDBNull(r.Item("Bank")) AndAlso CDbl(r.Item("Bank")) <> 0 Then
Bemerkung &= ", a.K. : " & CDbl(r.Item("Bank")).ToString("N2") & " " & USTV_ANTRAG.UStVAn_Währungscode
UStV_ERS.UStVEr_Bank = CDbl(r.Item("Bank"))
End If
If Not String.IsNullOrWhiteSpace(r.Item("Diff")) AndAlso IsNumeric(r.Item("Diff")) AndAlso Not IsDBNull(r.Item("Diff")) AndAlso CDbl(r.Item("Diff")) <> 0 Then
Bemerkung &= ", Diff: " & CDbl(r.Item("Diff")).ToString("N2")
UStV_ERS.UStVEr_Differenz = CDbl(r.Item("Diff"))
End If
If Not String.IsNullOrWhiteSpace(r.Item("RZVZ")) AndAlso IsNumeric(r.Item("RZVZ")) AndAlso Not IsDBNull(r.Item("RZVZ")) AndAlso CDbl(r.Item("RZVZ")) <> 0 Then
UStV_ERS.UStVEr_RZVZ = CDbl(r.Item("RZVZ")).ToString("N2")
If USTV_ANTRAG.UStVAn_RZBetragVZ Is Nothing OrElse IsDBNull(USTV_ANTRAG.UStVAn_RZBetragVZ) Then
USTV_ANTRAG.UStVAn_RZBetragVZ = UStV_ERS.UStVEr_RZVZ
End If
End If
If Bemerkung <> "" Then
If Bemerkung.StartsWith(", ") Then
Bemerkung = Bemerkung.Remove(0, 2)
End If
UStV_ERS.Bemerkung = Bemerkung
End If
If UStV_ERS.SAVE() Then
USTV_ANTRAG.UStVAn_MWSTEingang_offen = True
USTV_ANTRAG.SAVE()
counter += 1
End If
End If
End If
Next
importiert = True
MsgBox(counter & " von " & dt.Rows.Count & " erfolgreich importiert!")
End If
End Using

View File

@@ -42,6 +42,8 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.lblAenderungsdatum = New System.Windows.Forms.Label()
Me.lblSachbearbeiter = New System.Windows.Forms.Label()
Me.pnl = New System.Windows.Forms.Panel()
Me.Label22 = New System.Windows.Forms.Label()
Me.txtDiff = New VERAG_PROG_ALLGEMEIN.MyTextBox()
Me.txtRZVZ = New VERAG_PROG_ALLGEMEIN.MyTextBox()
Me.Label21 = New System.Windows.Forms.Label()
Me.txtVZ = New VERAG_PROG_ALLGEMEIN.MyTextBox()
@@ -279,6 +281,8 @@ Partial Class ustCntlUSTV_ErstattungPosition
'pnl
'
Me.pnl.BackColor = System.Drawing.Color.White
Me.pnl.Controls.Add(Me.Label22)
Me.pnl.Controls.Add(Me.txtDiff)
Me.pnl.Controls.Add(Me.txtRZVZ)
Me.pnl.Controls.Add(Me.Label21)
Me.pnl.Controls.Add(Me.txtVZ)
@@ -322,12 +326,47 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.pnl.Size = New System.Drawing.Size(1307, 235)
Me.pnl.TabIndex = 1
'
'Label22
'
Me.Label22.AutoSize = True
Me.Label22.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.5!)
Me.Label22.Location = New System.Drawing.Point(807, 188)
Me.Label22.Name = "Label22"
Me.Label22.Size = New System.Drawing.Size(56, 15)
Me.Label22.TabIndex = 42
Me.Label22.Text = "Differenz"
'
'txtDiff
'
Me.txtDiff._DateTimeOnly = False
Me.txtDiff._numbersOnly = True
Me.txtDiff._numbersOnlyKommastellen = "2"
Me.txtDiff._numbersOnlyTrennzeichen = True
Me.txtDiff._Prozent = False
Me.txtDiff._ShortDateNew = False
Me.txtDiff._ShortDateOnly = False
Me.txtDiff._TimeOnly = False
Me.txtDiff._TimeOnly_Seconds = False
Me.txtDiff._value = ""
Me.txtDiff._Waehrung = True
Me.txtDiff._WaehrungZeichen = False
Me.txtDiff.ForeColor = System.Drawing.Color.Red
Me.txtDiff.Location = New System.Drawing.Point(810, 204)
Me.txtDiff.MaxLength = 15
Me.txtDiff.MaxLineLength = -1
Me.txtDiff.MaxLines_Warning = ""
Me.txtDiff.MaxLines_Warning_Label = Nothing
Me.txtDiff.Name = "txtDiff"
Me.txtDiff.Size = New System.Drawing.Size(99, 20)
Me.txtDiff.TabIndex = 41
Me.txtDiff.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'txtRZVZ
'
Me.txtRZVZ._DateTimeOnly = False
Me.txtRZVZ._numbersOnly = False
Me.txtRZVZ._numbersOnlyKommastellen = ""
Me.txtRZVZ._numbersOnlyTrennzeichen = False
Me.txtRZVZ._numbersOnly = True
Me.txtRZVZ._numbersOnlyKommastellen = "2"
Me.txtRZVZ._numbersOnlyTrennzeichen = True
Me.txtRZVZ._Prozent = False
Me.txtRZVZ._ShortDateNew = False
Me.txtRZVZ._ShortDateOnly = False
@@ -345,6 +384,7 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.txtRZVZ.Name = "txtRZVZ"
Me.txtRZVZ.Size = New System.Drawing.Size(105, 20)
Me.txtRZVZ.TabIndex = 40
Me.txtRZVZ.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'Label21
'
@@ -359,9 +399,9 @@ Partial Class ustCntlUSTV_ErstattungPosition
'txtVZ
'
Me.txtVZ._DateTimeOnly = False
Me.txtVZ._numbersOnly = False
Me.txtVZ._numbersOnlyKommastellen = ""
Me.txtVZ._numbersOnlyTrennzeichen = False
Me.txtVZ._numbersOnly = True
Me.txtVZ._numbersOnlyKommastellen = "2"
Me.txtVZ._numbersOnlyTrennzeichen = True
Me.txtVZ._Prozent = False
Me.txtVZ._ShortDateNew = False
Me.txtVZ._ShortDateOnly = False
@@ -379,6 +419,7 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.txtVZ.Name = "txtVZ"
Me.txtVZ.Size = New System.Drawing.Size(105, 20)
Me.txtVZ.TabIndex = 38
Me.txtVZ.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'Label20
'
@@ -393,9 +434,9 @@ Partial Class ustCntlUSTV_ErstattungPosition
'txtBank
'
Me.txtBank._DateTimeOnly = False
Me.txtBank._numbersOnly = False
Me.txtBank._numbersOnlyKommastellen = ""
Me.txtBank._numbersOnlyTrennzeichen = False
Me.txtBank._numbersOnly = True
Me.txtBank._numbersOnlyKommastellen = "2"
Me.txtBank._numbersOnlyTrennzeichen = True
Me.txtBank._Prozent = False
Me.txtBank._ShortDateNew = False
Me.txtBank._ShortDateOnly = False
@@ -405,7 +446,7 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.txtBank._Waehrung = True
Me.txtBank._WaehrungZeichen = False
Me.txtBank.ForeColor = System.Drawing.Color.Red
Me.txtBank.Location = New System.Drawing.Point(468, 203)
Me.txtBank.Location = New System.Drawing.Point(468, 204)
Me.txtBank.MaxLength = 15
Me.txtBank.MaxLineLength = -1
Me.txtBank.MaxLines_Warning = ""
@@ -413,6 +454,7 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.txtBank.Name = "txtBank"
Me.txtBank.Size = New System.Drawing.Size(105, 20)
Me.txtBank.TabIndex = 36
Me.txtBank.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'Label17
'
@@ -676,9 +718,9 @@ Partial Class ustCntlUSTV_ErstattungPosition
'txtUSTBetragEUR
'
Me.txtUSTBetragEUR._DateTimeOnly = False
Me.txtUSTBetragEUR._numbersOnly = False
Me.txtUSTBetragEUR._numbersOnlyKommastellen = ""
Me.txtUSTBetragEUR._numbersOnlyTrennzeichen = False
Me.txtUSTBetragEUR._numbersOnly = True
Me.txtUSTBetragEUR._numbersOnlyKommastellen = "2"
Me.txtUSTBetragEUR._numbersOnlyTrennzeichen = True
Me.txtUSTBetragEUR._Prozent = False
Me.txtUSTBetragEUR._ShortDateNew = False
Me.txtUSTBetragEUR._ShortDateOnly = False
@@ -696,6 +738,7 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.txtUSTBetragEUR.Name = "txtUSTBetragEUR"
Me.txtUSTBetragEUR.Size = New System.Drawing.Size(154, 20)
Me.txtUSTBetragEUR.TabIndex = 7
Me.txtUSTBetragEUR.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'txtUmrechnungskurs
'
@@ -720,13 +763,14 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.txtUmrechnungskurs.Name = "txtUmrechnungskurs"
Me.txtUmrechnungskurs.Size = New System.Drawing.Size(108, 20)
Me.txtUmrechnungskurs.TabIndex = 6
Me.txtUmrechnungskurs.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'txtUSTBetrag
'
Me.txtUSTBetrag._DateTimeOnly = False
Me.txtUSTBetrag._numbersOnly = False
Me.txtUSTBetrag._numbersOnlyKommastellen = ""
Me.txtUSTBetrag._numbersOnlyTrennzeichen = False
Me.txtUSTBetrag._numbersOnly = True
Me.txtUSTBetrag._numbersOnlyKommastellen = "2"
Me.txtUSTBetrag._numbersOnlyTrennzeichen = True
Me.txtUSTBetrag._Prozent = False
Me.txtUSTBetrag._ShortDateNew = False
Me.txtUSTBetrag._ShortDateOnly = False
@@ -744,6 +788,7 @@ Partial Class ustCntlUSTV_ErstattungPosition
Me.txtUSTBetrag.Name = "txtUSTBetrag"
Me.txtUSTBetrag.Size = New System.Drawing.Size(154, 20)
Me.txtUSTBetrag.TabIndex = 5
Me.txtUSTBetrag.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'Panel1
'
@@ -990,4 +1035,6 @@ Partial Class ustCntlUSTV_ErstattungPosition
Friend WithEvents Label21 As Label
Friend WithEvents txtVZ As VERAG_PROG_ALLGEMEIN.MyTextBox
Friend WithEvents Label20 As Label
Friend WithEvents Label22 As Label
Friend WithEvents txtDiff As VERAG_PROG_ALLGEMEIN.MyTextBox
End Class

View File

@@ -40,6 +40,7 @@ Public Class ustCntlUSTV_ErstattungPosition
txtVZ._value = 0
txtRZVZ._value = 0
txtBank._value = 0
txtDiff._value = 0
End Sub
@@ -63,6 +64,7 @@ Public Class ustCntlUSTV_ErstattungPosition
txtVZ._value = If(UStV_ERS.UStVEr_VZ, "")
txtRZVZ._value = If(UStV_ERS.UStVEr_RZVZ, "")
txtBank._value = If(UStV_ERS.UStVEr_Bank, "")
txtDiff._value = If(UStV_ERS.UStVEr_Differenz, "")
lblSachbearbeiter.Text = If(UStV_ERS.UStVEr_Sachbearbeiter, "")
@@ -111,6 +113,8 @@ Public Class ustCntlUSTV_ErstattungPosition
UStV_ERS.UStVEr_RZVZ = cProgramFunctions.isLeerNothingDbl(txtRZVZ.Text)
UStV_ERS.UStVEr_VZ = cProgramFunctions.isLeerNothingDbl(txtVZ.Text)
UStV_ERS.UStVEr_Bank = cProgramFunctions.isLeerNothingDbl(txtBank.Text)
UStV_ERS.UStVEr_Bank = cProgramFunctions.isLeerNothingDbl(txtBank.Text)
UStV_ERS.UStVEr_Differenz = cProgramFunctions.isLeerNothingDbl(txtDiff.Text)

View File

@@ -1232,7 +1232,7 @@ Public Class cProgramFunctions
Return ""
End Function
Public Shared Function genExcelFromDT_NEW(dt As DataTable, Optional rangeAsWaehrung() As String = Nothing, Optional ShowAutoFilter As Boolean = True, Optional HeaderTxt As String = "", Optional HeaderTxt2 As String = "", Optional waehrungsZeichen As String = "", Optional fitCellsToContent As Boolean = False, Optional mergeHeadersToCell As Char = "", Optional Landscape As Boolean = False, Optional fitToOnePage As Boolean = False, Optional openFile As Boolean = True, Optional fitWideToOnePage As Boolean = False, Optional rangeAsBuchhaltung() As String = Nothing, Optional hideRange() As String = Nothing) As String
Public Shared Function genExcelFromDT_NEW(dt As DataTable, Optional rangeAsWaehrung() As String = Nothing, Optional ShowAutoFilter As Boolean = True, Optional HeaderTxt As String = "", Optional HeaderTxt2 As String = "", Optional waehrungsZeichen As String = "", Optional fitCellsToContent As Boolean = False, Optional mergeHeadersToCell As Char = "", Optional Landscape As Boolean = False, Optional fitToOnePage As Boolean = False, Optional openFile As Boolean = True, Optional fitWideToOnePage As Boolean = False, Optional rangeAsBuchhaltung() As String = Nothing, Optional hideRange() As String = Nothing, Optional formeln As Dictionary(Of String, String) = Nothing) As String
Try
Dim sPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\SDL\tmp\" ' My.Computer.FileSystem.GetTempFileName
@@ -1277,6 +1277,23 @@ Public Class cProgramFunctions
Next
End If
If formeln.Count > 0 Then
For row As Integer = 2 To dt.Rows.Count + 1
For Each formel In formeln
Dim col = formel.Key
Dim expr = formel.Value.Replace("{0}", row.ToString())
wb.Worksheets(0).Cell($"{col}{row}").FormulaA1 = expr
Next
Next
End If
If HeaderTxt <> "" Then
wb.Worksheets(0).FirstRow.InsertRowsAbove(2)
wb.Worksheets(0).Range("A1").Value = HeaderTxt
@@ -1304,10 +1321,8 @@ Public Class cProgramFunctions
End If
'If fitCellsToContent Then
' wb.Worksheets(0).Columns().AdjustToContents()
' ' wb.Worksheets(0).Rows().AdjustToContents() ' weglassen
'End If
If fitCellsToContent Then
Dim ws = wb.Worksheets(0)
For i As Integer = 0 To dt.Columns.Count - 1

View File

@@ -587,6 +587,7 @@ Public Class cUStVErstattungPositionen
Property UStVEr_VZ As Object = Nothing
Property UStVEr_RZVZ As Object = Nothing
Property UStVEr_Bank As Object = Nothing
Property UStVEr_Differenz As Object = Nothing
Public hasEntry = False
@@ -617,6 +618,7 @@ Public Class cUStVErstattungPositionen
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_VZ", UStVEr_VZ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_RZVZ", UStVEr_RZVZ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_Bank", UStVEr_Bank))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_Differenz", UStVEr_Differenz))
Return list
End Function