Merge branch 'newMaster2024' of https://git.it.verag.ag/edv/SDL into newMaster2024
This commit is contained in:
@@ -28,6 +28,7 @@ Public Class cKassenbuch
|
||||
Property rksv_BelegId As Object = Nothing
|
||||
Property rksv_aktiv As Boolean = False
|
||||
Property durchfuehrender_Benutzer As Integer = -1
|
||||
Property Trdin As Boolean = False
|
||||
|
||||
Dim SQL As New SQL
|
||||
|
||||
@@ -104,6 +105,7 @@ Public Class cKassenbuch
|
||||
Me.rksv_BelegId = cSqlDb.checkNullReturnValue(dr.Item("rksv_BelegId"), Nothing)
|
||||
Me.rksv_aktiv = cSqlDb.checkNullReturnValue(dr.Item("rksv_aktiv"), False)
|
||||
Me.durchfuehrender_Benutzer = cSqlDb.checkNullInteger(dr.Item("durchfuehrender_Benutzer"))
|
||||
Me.Trdin = cSqlDb.checkNullReturnValue(dr.Item("Trdin"), False)
|
||||
|
||||
|
||||
|
||||
@@ -150,6 +152,7 @@ Public Class cKassenbuch
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("rksv_BelegId", rksv_BelegId))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("rksv_aktiv", rksv_aktiv))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("durchfuehrender_Benutzer", durchfuehrender_Benutzer))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Trdin", Trdin))
|
||||
|
||||
Return list
|
||||
End Function
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
Imports System.IO
|
||||
Imports com.sun.tools.doclets.internal.toolkit.util
|
||||
Imports Microsoft.Office.Interop
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
@@ -12,7 +11,7 @@ Public Class cAutomailversand
|
||||
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
|
||||
LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr
|
||||
INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz
|
||||
WHERE Rechnungsausgang.Status IN (2) And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Abfertigungsdatum,104) = '" & Sammelrechnungsdatum.ToShortDateString & "'
|
||||
WHERE Rechnungsausgang.Status IN (2) And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & SammelrechungArt & "' And CONVERT(DATE,Rechnungsausgang.Rechnungsdatum,104) = '" & Sammelrechnungsdatum.ToShortDateString & "'
|
||||
and isnull(Rechnungsausgang.Automailversand,0) = 1 and RechnungsNr > 0 " & IIf(KundenNr > 0, " AND RechnungsKundenNr = " & KundenNr, "") & "
|
||||
GROUP BY RechnungsNr, RechnungsKundenNr,isnull(tblKundenErweitert.kde_keineMWSt,0),RechnungsLandKz, MitgliedslandEU
|
||||
ORDER BY RechnungsLandKz, RechnungsKundenNr"
|
||||
@@ -22,35 +21,41 @@ Public Class cAutomailversand
|
||||
|
||||
|
||||
For Each row As DataRow In dt.Rows
|
||||
|
||||
Dim BelegartenNr = "70"
|
||||
Dim steuerbetrag As Double = 0
|
||||
Dim SR_DT As DataTable = Nothing
|
||||
Dim RechnungsNr As Integer = -1
|
||||
Dim DruckDatumZeit As DateTime
|
||||
Dim Rechnungsdatum = Nothing
|
||||
Dim ATTACHMENTS As New List(Of cFakt_MailATTach)
|
||||
|
||||
'AKTUELL IMMER MIT KOPIE
|
||||
MDMKopiedrucken = True
|
||||
Dim isEU As Boolean = row.Item("MitgliedslandEU")
|
||||
If FirmaID = 19 Then
|
||||
|
||||
If isEU Then
|
||||
If row.Item("keineMWST") Then
|
||||
'1. Schritt: kein MWST Kunde -> ORIGINAL-RE per Mail!
|
||||
MDMKopiedrucken = Not row.Item("keineMWST")
|
||||
'AKTUELL IMMER MIT KOPIE
|
||||
MDMKopiedrucken = True
|
||||
Dim isEU As Boolean = row.Item("MitgliedslandEU")
|
||||
|
||||
If isEU Then
|
||||
If row.Item("keineMWST") Then
|
||||
'1. Schritt: kein MWST Kunde -> ORIGINAL-RE per Mail!
|
||||
MDMKopiedrucken = Not row.Item("keineMWST")
|
||||
End If
|
||||
|
||||
'2. Schritt: MWST Kunde -> wenn kein MWST-BEtrag ->Original sonst Kopie per Mail!
|
||||
If MDMKopiedrucken Then
|
||||
MDMKopiedrucken = CDbl(row.Item("Steuer")) <> 0
|
||||
End If
|
||||
|
||||
Else
|
||||
'immer KOPIE weil Ausdruck aktuell noch gesendet!
|
||||
End If
|
||||
|
||||
'2. Schritt: MWST Kunde -> wenn kein MWST-BEtrag ->Original sonst Kopie per Mail!
|
||||
If MDMKopiedrucken Then
|
||||
MDMKopiedrucken = CDbl(row.Item("Steuer")) <> 0
|
||||
End If
|
||||
|
||||
Else
|
||||
'immer KOPIE weil Ausdruck aktuell noch gesendet!
|
||||
End If
|
||||
|
||||
SR_DT = cFakturierung.GET_SR_SQLDT(FirmaID, SammelrechungArt, Sammelrechnungsdatum, row.Item("RechnungsKundenNr"),, , , , True)
|
||||
SR_DT = cFakturierung.GET_SR_SQLDT(FirmaID, SammelrechungArt, Sammelrechnungsdatum, 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
|
||||
@@ -60,12 +65,16 @@ Public Class cAutomailversand
|
||||
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 = ""
|
||||
@@ -101,13 +110,14 @@ Public Class cAutomailversand
|
||||
|
||||
End If
|
||||
|
||||
'im TESTSYSTEM bewusst die Empfänger leeren!
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
MailTo = ""
|
||||
MailtoCC = ""
|
||||
MailtoBCC = "mmdabrechnung@verag.ag"
|
||||
|
||||
MailtoBCC = setAccountToSend(FirmaID)
|
||||
Else
|
||||
MailtoBCC = "mmdabrechnung@verag.ag"
|
||||
MailtoBCC = setAccountToSend(FirmaID)
|
||||
End If
|
||||
|
||||
|
||||
@@ -119,8 +129,8 @@ Public Class cAutomailversand
|
||||
|
||||
Dim listPDFs As New List(Of String)
|
||||
Dim showError As Boolean = False
|
||||
setEmailText(row, FirmaID, RechnungsNr, Mailsubject, HTMLMail)
|
||||
If doRechnung(row.Item("RechnungsKundenNr"), FirmaID, SammelrechungArt, Rechnungsdatum, RechnungsNr, DruckDatumZeit, MDMKopiedrucken, listPDFs,,,, showError) Then
|
||||
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)
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Mailsubject &= " TEST"
|
||||
@@ -156,51 +166,99 @@ Public Class cAutomailversand
|
||||
End Sub
|
||||
|
||||
|
||||
Sub sendMailEinzelrechnung(Rechnungsdatum As Date, RechungArt As Integer, FirmaID As Integer, Optional KundenNr As Integer = -1, Optional mailoeffnen As Boolean = False)
|
||||
Sub sendMailEinzelrechnungen(Rechnungsdatum As Date, FirmaID As Integer, Optional Sachbearbeiter As String = "", Optional KundenNr As Integer = -1, Optional mailoeffnen As Boolean = False)
|
||||
|
||||
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
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
|
||||
LEFT JOIN tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr
|
||||
INNER JOIN Währungstabelle on LandKz = Rechnungsausgang.RechnungsLandKz
|
||||
WHERE Rechnungsausgang.Status IN (2) And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And 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,isnull(tblKundenErweitert.kde_keineMWSt,0),RechnungsLandKz, MitgliedslandEU
|
||||
ORDER BY RechnungsLandKz, RechnungsKundenNr"
|
||||
|
||||
Dim dt As DataTable = sql.loadDgvBySql(rechnungenMailversand, "FMZOLL")
|
||||
Try
|
||||
|
||||
For Each r In dt.Rows
|
||||
|
||||
Dim MailTo As String = ""
|
||||
Dim MailtoCC As String = ""
|
||||
Dim MailtoBCC As String = ""
|
||||
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
MailTo = ""
|
||||
MailtoCC = ""
|
||||
MailtoBCC = setAccountToSend(FirmaID)
|
||||
Else
|
||||
MailtoBCC = setAccountToSend(FirmaID)
|
||||
End If
|
||||
|
||||
|
||||
Next
|
||||
|
||||
Catch ex As System.Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL,,,,,,)
|
||||
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub setEmailText(row As DataRow, Firma_ID As Integer, RechnungsNr As Integer, ByRef Subject As String, ByRef TextHTML As String)
|
||||
Private Sub setEmailText(row As DataRow, Firma_ID As Integer, RechnungsNr As Integer, ByRef Subject As String, ByRef TextHTML As String, ByRef SammelrechungArt As Integer, dt As DataTable, ByRef BelegartenNr As Integer)
|
||||
|
||||
Dim txtRgNr As String = IIf(RechnungsNr < 0, -1, RechnungsNr)
|
||||
Dim Mailtext As String
|
||||
|
||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
Dim listOfTextconserven As cTextkonserve_LIST = New cTextkonserve_LIST(4, "", Firma_ID)
|
||||
|
||||
Dim spracheRechnung As String = "EN" 'Defaultsprache
|
||||
If SammelrechungArt <> 6 Then
|
||||
|
||||
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"
|
||||
End Select
|
||||
Subject = "VERAG Sammel-Rechnung"
|
||||
TextHTML &= getSammelRgTExt(getSelectionLandKz(dt), Firma_ID)
|
||||
|
||||
|
||||
If listOfTextconserven.LIST.Any(Function(c) c.txt_sprache = spracheRechnung) Then
|
||||
|
||||
Else
|
||||
|
||||
|
||||
Dim r As cTextkonserve = listOfTextconserven.LIST.Find(Function(c) c.txt_sprache = spracheRechnung)
|
||||
If r IsNot Nothing Then
|
||||
Subject = r.txt_betreff
|
||||
Subject = Subject.Replace("%BelegNr%", txtRgNr)
|
||||
TextHTML &= r.txt_text
|
||||
If Mailtext <> "" Then TextHTML &= Mailtext
|
||||
TextHTML &= vbNewLine & vbNewLine
|
||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
Dim listOfTextconserven As cTextkonserve_LIST = New cTextkonserve_LIST(4, "", Firma_ID)
|
||||
|
||||
Dim spracheRechnung As String = "EN" 'Defaultsprache
|
||||
|
||||
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"
|
||||
End Select
|
||||
|
||||
|
||||
If listOfTextconserven.LIST.Any(Function(c) c.txt_sprache = spracheRechnung) Then
|
||||
|
||||
|
||||
Dim r As cTextkonserve = listOfTextconserven.LIST.Find(Function(c) c.txt_sprache = spracheRechnung)
|
||||
If r IsNot Nothing Then
|
||||
Subject = r.txt_betreff
|
||||
Subject = Subject.Replace("%BelegNr%", txtRgNr)
|
||||
TextHTML &= r.txt_text
|
||||
If Mailtext <> "" Then TextHTML &= Mailtext
|
||||
TextHTML &= vbNewLine & vbNewLine
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Function doRechnung(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)
|
||||
|
||||
Dim RechnungsNrisSet As Boolean = False
|
||||
RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(19, 6, Rechnungsdatum, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, kdNr, 4, listPDFs, "", lastAktuelle_RgNr, DruckDatumZeit, , , ,, ,,, True, Kopie,, saveInThereFore, showError)
|
||||
RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(FirmaID, Sammelrechnungsart, Rechnungsdatum, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, kdNr, 4, listPDFs, "", lastAktuelle_RgNr, DruckDatumZeit, , , ,, ,,, True, Kopie, True, saveInThereFore, showError)
|
||||
|
||||
Return RechnungsNrisSet
|
||||
End Function
|
||||
@@ -315,6 +373,9 @@ Public Class cAutomailversand
|
||||
|
||||
Private Function setLog(SR_DT As DataTable, row As DataRow, FirmaID As Integer, Sammelrechnungsart As Integer, Rechnungsdatum As Date, Optional ATTACHMENTS As List(Of cFakt_MailATTach) = Nothing, Optional Mailsubject As String = "", Optional Mailhtml As String = "", Optional MailTo As String = "", Optional MailtoCC As String = "", Optional MailtoBCC As String = "", Optional Mail As Microsoft.Office.Interop.Outlook.MailItem = Nothing) As Boolean
|
||||
|
||||
|
||||
Dim accountToSend = setAccountToSend(FirmaID)
|
||||
|
||||
Dim mailcreated As Boolean = False
|
||||
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
@@ -329,14 +390,14 @@ Public Class cAutomailversand
|
||||
If Mail IsNot Nothing Then
|
||||
EMails = Mail.To
|
||||
EMails_CC = Mail.CC
|
||||
EMails_BCC = Mail.BCC
|
||||
EMails_BCC = accountToSend 'Mail.BCC
|
||||
EMail_subject = Mail.Subject
|
||||
EMail_HTML = Mail.Body
|
||||
AttCount = Mail.Attachments.Count
|
||||
Else
|
||||
EMails = MailTo
|
||||
EMails_CC = MailtoCC
|
||||
EMails_BCC = MailtoBCC
|
||||
EMails_BCC = accountToSend 'MailtoBCC
|
||||
EMail_subject = Mailsubject
|
||||
EMail_HTML = Mailhtml
|
||||
AttCount = ATTACHMENTS.Count
|
||||
@@ -356,7 +417,7 @@ Public Class cAutomailversand
|
||||
|
||||
|
||||
|
||||
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-MDM",,, 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, VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_SAMMELRECHNUNG, "SAMMELRECHNUNG_" & FirmaID,,, row.Item("RechnungsKundenNr"), , , FilialenNr, AbfertigungsNr)
|
||||
|
||||
API.api_EMail = EMails
|
||||
API.api_EMailCC = EMails_CC
|
||||
@@ -383,7 +444,7 @@ Public Class cAutomailversand
|
||||
Next
|
||||
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, EMail_subject, EMail_HTML, "mmdabrechnung@verag.ag", False, False, EMails_CC, EMails_BCC, attachList,, IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "d.breimaier@verag.ag", "mmdabrechnung@verag.ag")) Then
|
||||
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, EMail_subject, EMail_HTML, accountToSend, False, False, EMails_CC, EMails_BCC, attachList,, IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "d.breimaier@verag.ag", accountToSend)) Then
|
||||
API.UPDTAE_OK()
|
||||
mailcreated = True
|
||||
Else
|
||||
@@ -402,5 +463,130 @@ Public Class cAutomailversand
|
||||
|
||||
Return mailcreated
|
||||
|
||||
End Function
|
||||
|
||||
Function getSammelRgTExt(RechnungsLandKz, FIRMA_ID) As String
|
||||
|
||||
If RechnungsLandKz = "" Then
|
||||
|
||||
getSammelRgTExt = "Sehr geehrte Damen und Herren,<br>"
|
||||
getSammelRgTExt &= "Dear Ladies and Gentlemen,<br>"
|
||||
getSammelRgTExt &= "Sayin Bayanlar ve Baylar,<br>"
|
||||
getSammelRgTExt &= "<br>"
|
||||
getSammelRgTExt &= "im Anhang senden wir Ihnen die o.g. Rechnung.<br>"
|
||||
getSammelRgTExt &= "attached we send you the invoice mentioned above.<br>"
|
||||
getSammelRgTExt &= "ekte baslikta yazan faturayi bulabilirsinz.<br>"
|
||||
getSammelRgTExt &= "<br>"
|
||||
getSammelRgTExt &= "<br><br><br>Mit freundlichen Grüßen / Best regards / Saygilarimizla<br><br>VERAG Spedition AG<br><br>" & cFakturierung.getSignature(RechnungsLandKz, FIRMA_ID)
|
||||
Return "<div style=""font-family:Calibri, Arial"">" & getSammelRgTExt & "</div>"
|
||||
End If
|
||||
|
||||
|
||||
|
||||
getSammelRgTExt = "<div style=""font-family:Calibri, Arial"">" & getSammelRgTExt & "</div>"
|
||||
End Function
|
||||
|
||||
Function getSelectionLandKz(dt As DataTable) As String
|
||||
getSelectionLandKz = ""
|
||||
If dt.Rows.Count > 0 Then
|
||||
|
||||
If dt.Rows.Count > 0 Then
|
||||
|
||||
For Each r As DataRow In dt.Rows
|
||||
|
||||
If Not IsDBNull(r("RechnungsLandKz")) Then
|
||||
|
||||
Dim landKz As String = r("RechnungsLandKz").ToString()
|
||||
|
||||
If getSelectionLandKz = "" Then
|
||||
getSelectionLandKz = landKz
|
||||
ElseIf getSelectionLandKz <> landKz Then
|
||||
Return ""
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Private Function setAccountToSend(FIRMA_ID) As String
|
||||
Dim accountToSend = ""
|
||||
|
||||
Select Case FIRMA_ID
|
||||
|
||||
Case 24
|
||||
accountToSend = SDL.cFakturierung.getDefaultMail("AMBAR",, True)
|
||||
Case 19
|
||||
accountToSend = "mmdabrechnung@verag.ag" 'bewusst falsch geschrieben!!!!
|
||||
Case 7
|
||||
accountToSend = "rechnung@atilla-spedition.com"
|
||||
Case Else
|
||||
accountToSend = "rechnungsversand@verag.ag"
|
||||
End Select
|
||||
|
||||
Return accountToSend
|
||||
End Function
|
||||
|
||||
Function addRgData_ZF_Passau(RechnungsLandKz As String, RECHNUNG As cRechnungsausgang, SPEDBUCH As cSpeditionsbuch) As String ' NUR EINZELRECHNUNG
|
||||
addRgData_ZF_Passau = vbNewLine & vbNewLine
|
||||
Dim ZOLLANMELDUNG As New DAKOSY_Worker.cZollsysteme_Aktenbeschriftung
|
||||
|
||||
Select Case RechnungsLandKz
|
||||
Case "TR"
|
||||
addRgData_ZF_Passau &= "Sender: " & RECHNUNG.AbsenderName_1 & ", " & If(RECHNUNG.AbsenderOrt, "") & vbNewLine
|
||||
If ZOLLANMELDUNG.getDataByBezugsnummer(RECHNUNG.FilialenNr & "/" & RECHNUNG.AbfertigungsNr, SPEDBUCH.Abfertigungsart, "", SPEDBUCH.Grenzstelle, SPEDBUCH.Zollsystem_Land) Then
|
||||
addRgData_ZF_Passau &= "Invoice-No.: " & ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine) & vbNewLine
|
||||
addRgData_ZF_Passau &= "Invoice-Total: " & ZOLLANMELDUNG.Rechnungspreis & vbNewLine
|
||||
End If
|
||||
Case "A", "AT", "D", "DE", "CH"
|
||||
addRgData_ZF_Passau &= "Absender: " & RECHNUNG.AbsenderName_1 & ", " & If(RECHNUNG.AbsenderOrt, "") & vbNewLine
|
||||
If ZOLLANMELDUNG.getDataByBezugsnummer(RECHNUNG.FilialenNr & "/" & RECHNUNG.AbfertigungsNr, SPEDBUCH.Abfertigungsart, "", SPEDBUCH.Grenzstelle, SPEDBUCH.Zollsystem_Land) Then
|
||||
addRgData_ZF_Passau &= "Handelsrechnungs-Nr.: " & ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine) & vbNewLine
|
||||
addRgData_ZF_Passau &= "Handelsrechnungs-Betrag: " & ZOLLANMELDUNG.Rechnungspreis & vbNewLine
|
||||
End If
|
||||
Case Else
|
||||
addRgData_ZF_Passau &= "Sender: " & RECHNUNG.AbsenderName_1 & ", " & If(RECHNUNG.AbsenderOrt, "") & vbNewLine
|
||||
If ZOLLANMELDUNG.getDataByBezugsnummer(RECHNUNG.FilialenNr & "/" & RECHNUNG.AbfertigungsNr, SPEDBUCH.Abfertigungsart, "", SPEDBUCH.Grenzstelle, SPEDBUCH.Zollsystem_Land) Then
|
||||
addRgData_ZF_Passau &= "Invoice-No.: " & ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine) & vbNewLine
|
||||
addRgData_ZF_Passau &= "Invoice-Total: " & ZOLLANMELDUNG.Rechnungspreis & vbNewLine
|
||||
End If
|
||||
End Select
|
||||
|
||||
' addRgData_ZF_Passau = RichTextBox.Text.Replace("Mit freundlichen Grüßen", "")
|
||||
|
||||
|
||||
End Function
|
||||
Function addRgData_Parsan(RechnungsLandKz As String, RECHNUNG As cRechnungsausgang, SPEDBUCH As cSpeditionsbuch) As String 'NUR EINZELRECHNUNG
|
||||
addRgData_Parsan = vbNewLine & vbNewLine
|
||||
Dim ZOLLANMELDUNG As New DAKOSY_Worker.cZollsysteme_Aktenbeschriftung
|
||||
|
||||
Select Case RechnungsLandKz
|
||||
Case "TR"
|
||||
' addRgData_Parsan &= "Sender: " & RECHNUNG.AbsenderName_1 & ", " & If(RECHNUNG.AbsenderOrt, "") & vbNewLine
|
||||
If ZOLLANMELDUNG.getDataByBezugsnummer(RECHNUNG.FilialenNr & "/" & RECHNUNG.AbfertigungsNr, SPEDBUCH.Abfertigungsart, "", SPEDBUCH.Grenzstelle, SPEDBUCH.Zollsystem_Land) Then
|
||||
addRgData_Parsan &= "Invoice-No.: " & ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine) & vbNewLine
|
||||
addRgData_Parsan &= "Invoice-Total: " & ZOLLANMELDUNG.Rechnungspreis & vbNewLine
|
||||
End If
|
||||
Case "A", "AT", "D", "DE", "CH"
|
||||
' addRgData_Parsan &= "Absender: " & RECHNUNG.AbsenderName_1 & ", " & If(RECHNUNG.AbsenderOrt, "") & vbNewLine
|
||||
If ZOLLANMELDUNG.getDataByBezugsnummer(RECHNUNG.FilialenNr & "/" & RECHNUNG.AbfertigungsNr, SPEDBUCH.Abfertigungsart, "", SPEDBUCH.Grenzstelle, SPEDBUCH.Zollsystem_Land) Then
|
||||
addRgData_Parsan &= "Handelsrechnungs-Nr.: " & ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine) & vbNewLine
|
||||
addRgData_Parsan &= "Handelsrechnungs-Betrag: " & ZOLLANMELDUNG.Rechnungspreis & vbNewLine
|
||||
End If
|
||||
Case Else
|
||||
'addRgData_Parsan &= "Sender: " & RECHNUNG.AbsenderName_1 & ", " & If(RECHNUNG.AbsenderOrt, "") & vbNewLine
|
||||
If ZOLLANMELDUNG.getDataByBezugsnummer(RECHNUNG.FilialenNr & "/" & RECHNUNG.AbfertigungsNr, SPEDBUCH.Abfertigungsart, "", SPEDBUCH.Grenzstelle, SPEDBUCH.Zollsystem_Land) Then
|
||||
addRgData_Parsan &= "Invoice-No.: " & ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine) & vbNewLine
|
||||
addRgData_Parsan &= "Invoice-Total: " & ZOLLANMELDUNG.Rechnungspreis & vbNewLine
|
||||
End If
|
||||
End Select
|
||||
|
||||
|
||||
|
||||
End Function
|
||||
End Class
|
||||
|
||||
@@ -4348,12 +4348,8 @@ Public Class cFakturierung
|
||||
' If FilialeTmp < 0 Then FilialeTmp = RG.FilialenNr 'erstes Mal
|
||||
If FIRMATmp < 0 Then FIRMATmp = RG.Firma_ID 'erstes Mal
|
||||
If kdTmp <> RG.RechnungsKundenNr Or FIRMATmp <> RG.Firma_ID Then 'Or FilialeTmp <> RG.FilialenNr
|
||||
|
||||
' KEIN doSAMMELRechnungsDruck_Abschnitt!!!!
|
||||
If Not MDMRENrvoarhanden Then Aktuelle_RgNr = getNewRgNr(Firma_ID, Buchungsjahr)
|
||||
|
||||
|
||||
|
||||
End If
|
||||
kdTmp = RG.RechnungsKundenNr
|
||||
FilialeTmp = RG.FilialenNr
|
||||
@@ -4363,12 +4359,16 @@ Public Class cFakturierung
|
||||
' If FilialeTmp < 0 Then FilialeTmp = RG.FilialenNr 'erstes Mal
|
||||
If FIRMATmp < 0 Then FIRMATmp = RG.Firma_ID 'erstes Mal
|
||||
If kdTmp <> RG.RechnungsKundenNr Or FIRMATmp <> RG.Firma_ID Then 'Or FilialeTmp <> RG.FilialenNr
|
||||
Dim path = ""
|
||||
doSAMMELRechnungsDruck_Abschnitt(Aktuelle_RgNr, Firma_ID, Buchungsjahr, DruckdatumUhrzeit, PrinterName, AnlageEinzelRg, Sammelrechnungsbericht, RechnungsdruckArt, path,, SB, AnlageExcelEvolog, SonstAnlagen, VorschauID, AnlageExcelTransferry360, FakturierungsGruppe, Abfertigungsart,,,,,,, saveInThereFore)
|
||||
Aktuelle_RgNr = getNewRgNr(Firma_ID, Buchungsjahr)
|
||||
If path <> "" Then listPDFs.Add(path)
|
||||
If Not setAutoMailversand Then
|
||||
Dim path = ""
|
||||
doSAMMELRechnungsDruck_Abschnitt(Aktuelle_RgNr, Firma_ID, Buchungsjahr, DruckdatumUhrzeit, PrinterName, AnlageEinzelRg, Sammelrechnungsbericht, RechnungsdruckArt, path,, SB, AnlageExcelEvolog, SonstAnlagen, VorschauID, AnlageExcelTransferry360, FakturierungsGruppe, Abfertigungsart,,,,,,, saveInThereFore)
|
||||
Aktuelle_RgNr = getNewRgNr(Firma_ID, Buchungsjahr)
|
||||
If path <> "" Then listPDFs.Add(path)
|
||||
Else
|
||||
If Not MDMRENrvoarhanden Then Aktuelle_RgNr = getNewRgNr(Firma_ID, Buchungsjahr)
|
||||
End If
|
||||
End If
|
||||
kdTmp = RG.RechnungsKundenNr
|
||||
kdTmp = RG.RechnungsKundenNr
|
||||
FilialeTmp = RG.FilialenNr
|
||||
FIRMATmp = RG.Firma_ID
|
||||
End Select
|
||||
@@ -4377,8 +4377,8 @@ Public Class cFakturierung
|
||||
RG.[VorschauID] = VorschauID
|
||||
Else
|
||||
|
||||
If SammelrechungArt = 6 Then
|
||||
If RechnungsdruckArt = 7 Then 'RechnungsdruckArt = 7 ist die Erstellung per MDM-Sammelabrechnung!
|
||||
If SammelrechungArt = 6 Or (setAutoMailversand And SammelrechungArt <> 6) Then
|
||||
If RechnungsdruckArt = 7 Then 'RechnungsdruckArt = 7 ist die Erstellung per MDM-Sammelabrechnung bzw. der Sammelrechnung für Mailversand!!
|
||||
RG.[Status] = 2 'Bei MDM Abrechnung; Druck später!!
|
||||
RG.Automailversand = setAutoMailversand
|
||||
Else
|
||||
@@ -4413,7 +4413,9 @@ Public Class cFakturierung
|
||||
'Letzter Abschnitt:
|
||||
If found Then
|
||||
Dim path = ""
|
||||
If Not (SammelrechungArt = 6 And RechnungsdruckArt = 7) Then doSAMMELRechnungsDruck_Abschnitt(Aktuelle_RgNr, Firma_ID, Buchungsjahr, DruckdatumUhrzeit, PrinterName, AnlageEinzelRg, Sammelrechnungsbericht, RechnungsdruckArt, path,, SB, AnlageExcelEvolog, SonstAnlagen, VorschauID, AnlageExcelTransferry360, FakturierungsGruppe, Abfertigungsart,,, MDMREkopie,,,, saveInThereFore)
|
||||
If Not (SammelrechungArt = 6 And RechnungsdruckArt = 7) Then
|
||||
doSAMMELRechnungsDruck_Abschnitt(Aktuelle_RgNr, Firma_ID, Buchungsjahr, DruckdatumUhrzeit, PrinterName, AnlageEinzelRg, Sammelrechnungsbericht, RechnungsdruckArt, path,, SB, AnlageExcelEvolog, SonstAnlagen, VorschauID, AnlageExcelTransferry360, FakturierungsGruppe, Abfertigungsart,,, MDMREkopie,,,, saveInThereFore)
|
||||
End If
|
||||
If path <> "" Then listPDFs.Add(path)
|
||||
End If
|
||||
lastAktuelle_RgNr = Aktuelle_RgNr
|
||||
@@ -4874,7 +4876,7 @@ Public Class cFakturierung
|
||||
RG_Bezeichnung = "Provisionsabrechnung_" & Now.ToString("yyyyMMdd_HHmmss") & ".pdf"
|
||||
End If
|
||||
|
||||
If isMDMRechnungsdruck Then
|
||||
If isMDMRechnungsdruck AndAlso FIRMA.Firma_ID = 19 Then
|
||||
rpt = SammelRechnungAnlagenDruck_MDM(ROW, isMDMRechnungsdruck, dt, FIRMA, Rechnugnsdruck, KD_RG, RechnungsNr, VorschauID, Sammelrechnungskopie, RG_Bezeichnung, SammelrechnungsDT, tmpPath)
|
||||
Else
|
||||
rpt = SammelRechnungAnlagenDruck(ROW, isMDMRechnungsdruck, dt, FIRMA, Rechnugnsdruck, KD_RG, RechnungsNr, VorschauID, Sammelrechnungskopie, RG_Bezeichnung, SammelrechnungsDT, tmpPath)
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
Imports Microsoft.Office.Interop
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
|
||||
|
||||
Public Class frmFaktEmail
|
||||
|
||||
Dim RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang
|
||||
@@ -78,23 +76,8 @@ Public Class frmFaktEmail
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
Private Sub frmFaktEmail_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
'Select Case RECHNUNG.RechnungsLandKz
|
||||
' Case "TR"
|
||||
' txtSubject.Text = "Rechnung Nr. " & RECHNUNG.RechnungsNr
|
||||
' TextHTML = "Sayin Bayanlar ve Baylar,<br><br>ekte baslikta yazan faturayi bulabilirsinz."
|
||||
' TextHTML &= "<br><br><br>Saygilarimizla<br><br>" & cFakturierung.getSignature(RECHNUNG)
|
||||
' Case "A", "AT", "D", "DE", "CH"
|
||||
' txtSubject.Text = "Rechnung Nr. " & RECHNUNG.RechnungsNr
|
||||
' TextHTML = "Sehr geehrte Damen und Herren,<br><br>im Anhang senden wir Ihnen die o.g. Rechnung."
|
||||
' TextHTML &= "<br><br><br>Mit freundlichen Grüßen<br><br>" & cFakturierung.getSignature(RECHNUNG)
|
||||
' Case Else
|
||||
' txtSubject.Text = "Rechnung Nr. " & RECHNUNG.RechnungsNr
|
||||
' TextHTML = "Sehr geehrte Damen und Herren,<br><br>attached we send you the invoice mentioned above."
|
||||
' TextHTML &= "<br><br><br>Best regards<br><br>" & cFakturierung.getSignature(RECHNUNG)
|
||||
'End Select
|
||||
|
||||
|
||||
cboFaStb_Sprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE", "DE"))
|
||||
cboFaStb_Sprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("EN", "EN"))
|
||||
@@ -546,7 +529,7 @@ Public Class frmFaktEmail
|
||||
Mail = outl.CreateItem(0)
|
||||
Mail.Subject = txtSubject.Text
|
||||
|
||||
If Firma_ID = 24 OrElse Firma_ID = 19 Then
|
||||
If Firma_ID = 24 OrElse Firma_ID = 19 OrElse Firma_ID = 1 OrElse Firma_ID = 7 Then
|
||||
Try
|
||||
Dim oAccount As Outlook.Account
|
||||
Dim accountToSent = ""
|
||||
@@ -554,109 +537,113 @@ Public Class frmFaktEmail
|
||||
Select Case Firma_ID
|
||||
Case 24
|
||||
accountToSent = SDL.cFakturierung.getDefaultMail("AMBAR",, True)
|
||||
Case Else
|
||||
Case 19
|
||||
accountToSent = "mmdabrechnung@verag.ag" 'bewusst falsch geschrieben!!!!
|
||||
Case 7
|
||||
accountToSent = "rechnung@atilla-spedition.com"
|
||||
Case Else
|
||||
accountToSent = "rechnungsversand@verag.ag"
|
||||
End Select
|
||||
|
||||
If accountToSent <> "" Then
|
||||
If outl.Session.Accounts.Count > 0 Then
|
||||
For Each oAccount In outl.Session.Accounts
|
||||
If oAccount.SmtpAddress.ToLower = accountToSent.ToLower Then
|
||||
Mail.SendUsingAccount = oAccount
|
||||
Exit For
|
||||
If outl.Session.Accounts.Count > 0 Then
|
||||
For Each oAccount In outl.Session.Accounts
|
||||
If oAccount.SmtpAddress.ToLower = accountToSent.ToLower Then
|
||||
Mail.SendUsingAccount = oAccount
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Fehler beim Ermitteln des Mail-Accounts." & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Fehler beim Ermitteln des Mail-Accounts." & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
|
||||
End If
|
||||
|
||||
'Mail-Adressen eintragen
|
||||
'-----------------------------------------------------------------
|
||||
For Each r In dgvEmail.Rows
|
||||
If r.cells(0).value <> "" Then Mail.To &= r.cells(0).value & ";"
|
||||
Next
|
||||
For Each r In dgvEmailCC.Rows
|
||||
If r.cells(0).value <> "" Then Mail.CC &= r.cells(0).value & ";"
|
||||
Next
|
||||
For Each r In dgvEmailBCC.Rows
|
||||
If r.cells(0).value <> "" Then Mail.BCC &= r.cells(0).value & ";"
|
||||
Next
|
||||
'Mail-Adressen eintragen
|
||||
'-----------------------------------------------------------------
|
||||
For Each r In dgvEmail.Rows
|
||||
If r.cells(0).value <> "" Then Mail.To &= r.cells(0).value & ";"
|
||||
Next
|
||||
For Each r In dgvEmailCC.Rows
|
||||
If r.cells(0).value <> "" Then Mail.CC &= r.cells(0).value & ";"
|
||||
Next
|
||||
For Each r In dgvEmailBCC.Rows
|
||||
If r.cells(0).value <> "" Then Mail.BCC &= r.cells(0).value & ";"
|
||||
Next
|
||||
|
||||
|
||||
RichTextBox.Text = RichTextBox.Text.Replace("%RgNr%", lastAktuelle_RgNr)
|
||||
txtSubject.Text = txtSubject.Text.Replace("%RgNr%", lastAktuelle_RgNr)
|
||||
RichTextBox.Text = RichTextBox.Text.Replace("%RgNr%", lastAktuelle_RgNr)
|
||||
txtSubject.Text = txtSubject.Text.Replace("%RgNr%", lastAktuelle_RgNr)
|
||||
|
||||
|
||||
Dim TextHTML = "<div style=""font-family:Calibri, Arial"">" & RichTextBox.Text.Replace(ControlChars.Lf, "<br>") & cFakturierung.getSignature(AD.LandKz, Firma_ID,,,, additionalLine,, IIf(Firma_ID = "24", True, False)) & "</div>"
|
||||
Dim TextHTML = "<div style=""font-family:Calibri, Arial"">" & RichTextBox.Text.Replace(ControlChars.Lf, "<br>") & cFakturierung.getSignature(AD.LandKz, Firma_ID,,,, additionalLine,, IIf(Firma_ID = "24", True, False)) & "</div>"
|
||||
|
||||
Mail.HTMLBody = TextHTML
|
||||
Mail.Subject = txtSubject.Text
|
||||
Mail.HTMLBody = TextHTML
|
||||
Mail.Subject = txtSubject.Text
|
||||
|
||||
ATTACHMENTS.Clear()
|
||||
'-----------------------------------------------------------------
|
||||
'Rechnungen anfügen
|
||||
'-----------------------------------------------------------------
|
||||
For Each l In listPDFs
|
||||
' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
ATTACHMENTS.Clear()
|
||||
'-----------------------------------------------------------------
|
||||
'Rechnungen anfügen
|
||||
'-----------------------------------------------------------------
|
||||
For Each l In listPDFs
|
||||
' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
|
||||
|
||||
|
||||
Next
|
||||
For Each l In SonstAnlagen
|
||||
' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
Next
|
||||
For Each l In SonstAnlagen
|
||||
' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
|
||||
Next
|
||||
addAttachments(Mail, lastAktuelle_RgNr, cbxMergeRg.Checked)
|
||||
Next
|
||||
addAttachments(Mail, lastAktuelle_RgNr, cbxMergeRg.Checked)
|
||||
|
||||
'-----------------------------------------------------------------
|
||||
'Steuerbescheid/VDB anfügen
|
||||
'-----------------------------------------------------------------
|
||||
getAnhaenge()
|
||||
'For Each l In listPDFs
|
||||
' ' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
' ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
'Next
|
||||
'-----------------------------------------------------------------
|
||||
'Steuerbescheid/VDB anfügen
|
||||
'-----------------------------------------------------------------
|
||||
getAnhaenge()
|
||||
'For Each l In listPDFs
|
||||
' ' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
' ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
'Next
|
||||
|
||||
'Rechnungsanhänge anfügen
|
||||
'-----------------------------------------------------------------
|
||||
If SR_DT IsNot Nothing AndAlso SR_DT.Rows.Count > 0 Then
|
||||
For Each r In SR_DT.Rows
|
||||
Dim RG_ANH = VERAG_PROG_ALLGEMEIN.cRechnungsausgang.LOAD_ANHAENGE_LIST(r("RK_ID"))
|
||||
If RG_ANH IsNot Nothing Then
|
||||
For Each ANH In RG_ANH
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId), ANH.Bezeichnung))
|
||||
'Rechnungsanhänge anfügen
|
||||
'-----------------------------------------------------------------
|
||||
If SR_DT IsNot Nothing AndAlso SR_DT.Rows.Count > 0 Then
|
||||
For Each r In SR_DT.Rows
|
||||
Dim RG_ANH = VERAG_PROG_ALLGEMEIN.cRechnungsausgang.LOAD_ANHAENGE_LIST(r("RK_ID"))
|
||||
If RG_ANH IsNot Nothing Then
|
||||
For Each ANH In RG_ANH
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId), ANH.Bezeichnung))
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
'-----------------------------------------------------------------
|
||||
'-----------------------------------------------------------------
|
||||
|
||||
|
||||
addAttachments(Mail, lastAktuelle_RgNr, cbxMergePDF.Checked)
|
||||
addAttachments(Mail, lastAktuelle_RgNr, cbxMergePDF.Checked)
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "AMBAR" Then
|
||||
Try
|
||||
Mail.SentOnBehalfOfName = "buchhaltung@ambarlog.com"
|
||||
Catch ex2 As Exception
|
||||
MsgBox(ex2.Message)
|
||||
End Try
|
||||
End If
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "AMBAR" Then
|
||||
Try
|
||||
Mail.SentOnBehalfOfName = "buchhaltung@ambarlog.com"
|
||||
Catch ex2 As Exception
|
||||
MsgBox(ex2.Message)
|
||||
End Try
|
||||
End If
|
||||
|
||||
Mail.Display()
|
||||
'------------------------------------------------------------------------------------------
|
||||
' STB /FA SR: ABFRAGE FISKAL-VZ
|
||||
If isFiskal Then
|
||||
send_StbFAMail(AD.AdressenNr, " Rg-Nr.: " & lastAktuelle_RgNr, lastAktuelle_RgNr)
|
||||
End If
|
||||
Mail.Display()
|
||||
'------------------------------------------------------------------------------------------
|
||||
' STB /FA SR: ABFRAGE FISKAL-VZ
|
||||
If isFiskal Then
|
||||
send_StbFAMail(AD.AdressenNr, " Rg-Nr.: " & lastAktuelle_RgNr, lastAktuelle_RgNr)
|
||||
End If
|
||||
'------------------------------------------------------------------------------------------
|
||||
|
||||
End If
|
||||
@@ -692,8 +679,11 @@ Public Class frmFaktEmail
|
||||
accountToSent = SDL.cFakturierung.getDefaultMail("AMBAR",, True)
|
||||
Case 19
|
||||
accountToSent = "mmdabrechnung@verag.ag" 'bewusst falsch geschrieben!!!!
|
||||
Case 7
|
||||
accountToSent = "rechnung@atilla-spedition.com"
|
||||
Case Else
|
||||
accountToSent = "rechnungsversand@verag.ag"
|
||||
|
||||
End Select
|
||||
|
||||
|
||||
|
||||
@@ -401,7 +401,7 @@ Partial Class frmFaktSammelRgDrucken
|
||||
'cbxAUTOMail
|
||||
'
|
||||
Me.cbxAUTOMail.AutoSize = True
|
||||
Me.cbxAUTOMail.Location = New System.Drawing.Point(555, 44)
|
||||
Me.cbxAUTOMail.Location = New System.Drawing.Point(532, 66)
|
||||
Me.cbxAUTOMail.Name = "cbxAUTOMail"
|
||||
Me.cbxAUTOMail.Size = New System.Drawing.Size(116, 17)
|
||||
Me.cbxAUTOMail.TabIndex = 30
|
||||
|
||||
@@ -58,6 +58,8 @@ Public Class frmFaktSammelRgDrucken
|
||||
Case 7 : txtZeitraumBis.Text = Now.ToShortDateString : lblSB.Visible = True : cboSB.Visible = True : cboSB.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME)
|
||||
End Select
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then cbxAUTOMail.Visible = True : pnlAUTOMailversand.Visible = True
|
||||
|
||||
initDGV()
|
||||
|
||||
End Sub
|
||||
@@ -65,53 +67,153 @@ Public Class frmFaktSammelRgDrucken
|
||||
|
||||
Sub initDGV()
|
||||
With MyDatagridview1
|
||||
Dim whereAbfArt = ""
|
||||
Dim whereMWST = ""
|
||||
'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 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
|
||||
If cbxMWST.CheckState.Indeterminate Then
|
||||
whereMWST = ""
|
||||
Else
|
||||
whereMWST = "AND isnull(tblKundenErweitert.kde_keineMWSt,0) = " & IIf(cbxMWST.Checked, "1", "0")
|
||||
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 cbxAUTOMail.Checked Or Not cbxAUTOMail.Checked Then
|
||||
whereMWST = " AND isnull(Rechnungsausgang.Automailversand,0) = " & IIf(cbxAUTOMail.Checked, "1", "0")
|
||||
' MWST
|
||||
If Not cbxMWST.CheckState = CheckState.Indeterminate Then
|
||||
whereMWST = " AND ISNULL(tblKundenErweitert.kde_keineMWSt,0) = " & If(cbxMWST.Checked, "1", "0")
|
||||
End If
|
||||
|
||||
Dim sqlStr = ""
|
||||
whereAutoMail = " AND ISNULL(Rechnungsausgang.Automailversand,0) = " & If(cbxAUTOMail.Checked, "1", "0")
|
||||
|
||||
Dim sqlStr As String = ""
|
||||
|
||||
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 "
|
||||
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 = 2
|
||||
AND Rechnungsausgang.Firma_ID = '" & cboFirma._value & "'
|
||||
AND Rechnungsausgang.Sammelrechnung = " & Sammelrechung & "
|
||||
AND CONVERT(DATE, Rechnungsausgang.Abfertigungsdatum, 104) = '" & txtRechnungsdatum._value & "'
|
||||
" & If(cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "'", "") & "
|
||||
" & whereAbfArt & whereMWST & whereAutoMail & "
|
||||
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 "
|
||||
sqlStr = "
|
||||
SELECT
|
||||
min(Rechnungsausgang.RechnungsNr) as RENR,
|
||||
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 AndAlso cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "'", "") & "
|
||||
" & whereAbfArt & whereAutoMail & "
|
||||
AND Rechnungsausgang.FakturierungsGruppe='" & cboFaktGrp._value & "'
|
||||
GROUP BY
|
||||
RechnungsKundenNr " & If(Sammelrechung = 7, ", AvisoId", "") & "
|
||||
ORDER BY
|
||||
Rechnungsausgang.RechnungsKundenNr"
|
||||
|
||||
End Select
|
||||
|
||||
|
||||
|
||||
'Rechnungsausgang.Status IN (0,2) --> vormals nur 2
|
||||
.SET_SQL(sqlStr, "FMZOLL")
|
||||
.LOAD()
|
||||
@@ -137,8 +239,12 @@ Public Class frmFaktSammelRgDrucken
|
||||
.Columns("RechnungsLandKz").Visible = True
|
||||
End If
|
||||
|
||||
If .Columns.Contains("keineMWST") Then
|
||||
.Columns("keineMWST").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
|
||||
@@ -558,21 +664,73 @@ Public Class frmFaktSammelRgDrucken
|
||||
|
||||
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
||||
If MyDatagridview1.SelectedRows.Count > 0 Then
|
||||
|
||||
If vbYes = MsgBox("Möchten Sie alle markieren Rechnungen den automatischen Emailversand aktivieren?" & vbNewLine & "Die Rechnungen werden automatisch im Nachtlauf per EMail verschickt!", vbYesNoCancel) Then
|
||||
|
||||
setMailversand(True, 19, 6, 2)
|
||||
Dim noRENRExisting As Boolean = False
|
||||
|
||||
If MyDatagridview1.Columns.Contains("RENR") Then
|
||||
noRENRExisting = MyDatagridview1.SelectedRows.Cast(Of DataGridViewRow)().Any(Function(r) r.Cells("RENR").Value Is Nothing OrElse IsDBNull(r.Cells("RENR").Value))
|
||||
|
||||
If noRENRExisting Then
|
||||
|
||||
If cboFirma._value = "" Then MsgBox("Bitte Firma angeben!") : Exit Sub
|
||||
If txtZeitraumBis.Text = "" Then MsgBox("Bitte Zeitraum-Bis angeben!") : Exit Sub
|
||||
If txtRechnungsdatum.Text = "" Then MsgBox("Bitte Rechnungsdatum angeben!") : Exit Sub
|
||||
|
||||
If vbYes = MsgBox("Es wird eine Belegsnummer vergeben, die Belege gelten somit als gedruckt und können nicht mehr bearbeitet werden.", vbYesNoCancel) Then
|
||||
|
||||
For Each r In MyDatagridview1.SelectedRows.Cast(Of DataGridViewRow)().Where(Function(x) x.Cells("RENR").Value Is Nothing OrElse IsDBNull(x.Cells("RENR").Value))
|
||||
|
||||
If IsDate(txtRechnungsdatum.Text) AndAlso IsDate(txtZeitraumBis.Text) AndAlso Not IsDBNull(r.Cells("RechnungsLandKz").Value) AndAlso Not IsDBNull(r.Cells("RechnungsKundenNr").Value) AndAlso IsNumeric(r.Cells("RechnungsKundenNr").Value) Then
|
||||
|
||||
|
||||
Me.Enabled = False
|
||||
Me.Cursor = Cursors.WaitCursor
|
||||
Dim listPDFs As New List(Of String)
|
||||
Dim SonstAnlagen As New List(Of String)
|
||||
Dim RechnungsNrisSet As Boolean = False
|
||||
|
||||
Dim abfertigungsarten = getValues()
|
||||
|
||||
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!")
|
||||
End If
|
||||
Me.Enabled = True
|
||||
End If
|
||||
|
||||
Next
|
||||
Me.Enabled = True
|
||||
Me.Cursor = Cursors.Default
|
||||
|
||||
|
||||
Else
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
setMailversand_ALL(True, Firma, Sammelrechung, 2)
|
||||
Me.Enabled = True
|
||||
Me.Cursor = Cursors.Default
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
||||
If MyDatagridview1.SelectedRows.Count > 0 Then
|
||||
If vbYes = MsgBox("Möchten Sie für alle markieren Rechnungen den automatischen Emailversand deaktiveren?" & vbNewLine & "Die Rechnungen müssen dann manuell per Mail verschickt werden!", vbYesNoCancel) Then
|
||||
|
||||
setMailversand(False, 19, 6, 2)
|
||||
'setMailversand(false, Firma, Sammelrechung, 2)
|
||||
setMailversand_ALL(False, Firma, Sammelrechung, 2)
|
||||
|
||||
End If
|
||||
End If
|
||||
@@ -593,6 +751,7 @@ Public Class frmFaktSammelRgDrucken
|
||||
For Each r As DataGridViewRow In MyDatagridview1.SelectedRows
|
||||
|
||||
If IsDate(txtRechnungsdatum.Text) AndAlso r.Cells("RechnungsLandKz").Value <> "" AndAlso IsNumeric(r.Cells("RechnungsKundenNr").Value) Then
|
||||
|
||||
If (New SQL).doSQL("UPDATE Rechnungsausgang set Automailversand = " & mailversandString &
|
||||
" from Rechnungsausgang left join tblKundenErweitert on tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr where Rechnungsausgang.Status In (" & Status & ") And Rechnungsausgang.Firma_ID = '" & FirmaID & "' And Rechnungsausgang.Sammelrechnung = '" & Sammelrechnung & "' And CONVERT(DATE,Rechnungsausgang.Abfertigungsdatum,104) = '" &
|
||||
CDate(txtRechnungsdatum.Text).ToShortDateString & "' and RechnungsKundenNr = " & r.Cells("RechnungsKundenNr").Value & " and RechnungsLandKz = '" & r.Cells("RechnungsLandKz").Value & " ' and isnull(Automailversand, 0) <> " & mailversandString &
|
||||
@@ -609,6 +768,60 @@ Public Class frmFaktSammelRgDrucken
|
||||
|
||||
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Private Function setMailversand_ALL(Mailversand As Boolean, FirmaID As Integer, Sammelrechnung As Integer, Status As Integer) As Boolean
|
||||
|
||||
Dim count As Integer = 0
|
||||
Dim mailversandString As String = If(Mailversand, "1", "0")
|
||||
|
||||
Dim whereMWST As String = ""
|
||||
Dim whereAutoMail As String = ""
|
||||
|
||||
' MWST Filter
|
||||
If cbxMWST.CheckState <> CheckState.Indeterminate Then
|
||||
whereMWST = " AND ISNULL(tblKundenErweitert.kde_keineMWSt,0) = " & If(cbxMWST.Checked, "1", "0")
|
||||
End If
|
||||
|
||||
' Automail Filter (nur ändern wenn unterschiedlich)
|
||||
whereAutoMail = " AND ISNULL(Rechnungsausgang.Automailversand,0) <> " & mailversandString
|
||||
|
||||
For Each r As DataGridViewRow In MyDatagridview1.SelectedRows
|
||||
|
||||
Dim sql As String = ""
|
||||
|
||||
If IsDate(txtRechnungsdatum.Text) AndAlso Not IsDBNull(r.Cells("RechnungsLandKz").Value) AndAlso Not IsDBNull(r.Cells("RechnungsKundenNr").Value) AndAlso IsNumeric(r.Cells("RechnungsKundenNr").Value) Then
|
||||
|
||||
sql = "UPDATE Rechnungsausgang SET Automailversand = " & mailversandString & " FROM Rechnungsausgang LEFT JOIN tblKundenErweitert ON tblKundenErweitert.kde_KundenNr = Rechnungsausgang.RechnungsKundenNr
|
||||
WHERE
|
||||
Rechnungsausgang.Status IN (" & Status & ")
|
||||
AND Rechnungsausgang.Firma_ID = '" & FirmaID & "'
|
||||
AND Rechnungsausgang.Sammelrechnung = '" & Sammelrechnung & "'
|
||||
AND CONVERT(DATE, Rechnungsausgang.Rechnungsdatum, 104) = '" & CDate(txtRechnungsdatum.Text).ToShortDateString & "'
|
||||
AND Rechnungsausgang.RechnungsKundenNr = " & r.Cells("RechnungsKundenNr").Value & "
|
||||
AND Rechnungsausgang.RechnungsLandKz = '" & r.Cells("RechnungsLandKz").Value.ToString.Trim & "'
|
||||
" & whereAutoMail & "
|
||||
" & If(cboSB._value <> "", " AND Rechnungsausgang.Sachbearbeiter='" & cboSB._value & "'", "") & "
|
||||
" & whereMWST
|
||||
|
||||
End If
|
||||
|
||||
If (New SQL).doSQL(sql, "FMZOLL") Then
|
||||
count += 1
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
If count <> MyDatagridview1.SelectedRows.Count Then
|
||||
MsgBox("ACHTUNG" & vbNewLine &
|
||||
"Der automatische Mailversand wurde nur bei " & count & " Rechnungen " &
|
||||
If(Mailversand, "aktiviert!", "deaktiviert!") & vbNewLine &
|
||||
"Markiert waren " & MyDatagridview1.SelectedRows.Count & " Rechnungen!")
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Private Sub cbxAUTOMail_CheckedChanged(sender As Object, e As EventArgs) Handles cbxAUTOMail.CheckedChanged
|
||||
@@ -638,7 +851,7 @@ 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 = (New SQL).loadDgvBySql("select RK_ID, RechnungsNr, FilialenNr from Rechnungsausgang where RechnungsKundenNr = " & MyDatagridview1.SelectedRows(0).Cells("RechnungsKundenNr").Value & " AND cast(RechnungsDatum as Date) = '" & txtRechnungsdatum._value & "' AND Sammelrechnung = 6" & IIf(Firma > 0, " AND Firma_ID =" & Firma, ""), "FMZOLL")
|
||||
Dim dtRE As DataTable = (New SQL).loadDgvBySql("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 & IIf(Firma > 0, " AND Firma_ID =" & Firma, ""), "FMZOLL")
|
||||
|
||||
If dtRE.Rows.Count > 0 Then
|
||||
Dim RK_ID As String = ""
|
||||
@@ -696,11 +909,11 @@ Public Class frmFaktSammelRgDrucken
|
||||
|
||||
If MyDatagridview1.SelectedRows.Count > 0 Then
|
||||
|
||||
If Not vbYes = MsgBox("Möchten Sie für alle markieren Rechnungen den automatischen Emailversand JETZT durchführen?" & vbNewLine & "Ansonten werden sie im Nachtlauf automatisch versendet!", vbYesNoCancel) Then Exit Sub
|
||||
If Not vbYes = MsgBox("Möchten Sie für alle markieren Rechnungen den automatischen Emailversand JETZT durchführen?" & vbNewLine & "Ansonsten werden sie im Nachtlauf automatisch versendet!", vbYesNoCancel) Then Exit Sub
|
||||
|
||||
Dim fun As New cAutomailversand
|
||||
For Each r In MyDatagridview1.SelectedRows
|
||||
fun.sendMailSammelrechnung(CDate(txtRechnungsdatum.Text), 6, 19, r.Cells("RechnungsKundenNr").Value, cbxMailoeffnen.Checked)
|
||||
fun.sendMailSammelrechnung(CDate(txtRechnungsdatum.Text), Sammelrechung, Firma, r.Cells("RechnungsKundenNr").Value, cbxMailoeffnen.Checked)
|
||||
Next
|
||||
|
||||
initDGV()
|
||||
|
||||
14
SDL/Fakturierung/usrCntlFaktAbrechnung.Designer.vb
generated
14
SDL/Fakturierung/usrCntlFaktAbrechnung.Designer.vb
generated
@@ -288,6 +288,7 @@ Partial Class usrCntlFaktAbrechnung
|
||||
Me.GutschriftAnVeragToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.VeragAGToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.VeragCSToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.cbxAUTOMailversand = New System.Windows.Forms.CheckBox()
|
||||
Me.pnlTop.SuspendLayout()
|
||||
Me.Panel3.SuspendLayout()
|
||||
Me.Panel1.SuspendLayout()
|
||||
@@ -804,6 +805,7 @@ Partial Class usrCntlFaktAbrechnung
|
||||
'Panel1
|
||||
'
|
||||
Me.Panel1.AutoScroll = True
|
||||
Me.Panel1.Controls.Add(Me.cbxAUTOMailversand)
|
||||
Me.Panel1.Controls.Add(Me.Button17)
|
||||
Me.Panel1.Controls.Add(Me.txtTextZZ)
|
||||
Me.Panel1.Controls.Add(Me.dgvAnhaenge)
|
||||
@@ -4057,6 +4059,17 @@ Partial Class usrCntlFaktAbrechnung
|
||||
Me.VeragCSToolStripMenuItem.Size = New System.Drawing.Size(122, 22)
|
||||
Me.VeragCSToolStripMenuItem.Text = "Verag CS"
|
||||
'
|
||||
'cbxAUTOMailversand
|
||||
'
|
||||
Me.cbxAUTOMailversand.AutoSize = True
|
||||
Me.cbxAUTOMailversand.Location = New System.Drawing.Point(697, 142)
|
||||
Me.cbxAUTOMailversand.Name = "cbxAUTOMailversand"
|
||||
Me.cbxAUTOMailversand.Size = New System.Drawing.Size(116, 17)
|
||||
Me.cbxAUTOMailversand.TabIndex = 241
|
||||
Me.cbxAUTOMailversand.Text = "AUTO Mailversand"
|
||||
Me.cbxAUTOMailversand.UseVisualStyleBackColor = True
|
||||
Me.cbxAUTOMailversand.Visible = False
|
||||
'
|
||||
'usrCntlFaktAbrechnung
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
@@ -4351,4 +4364,5 @@ Partial Class usrCntlFaktAbrechnung
|
||||
Friend WithEvents cboVorauskasse As VERAG_PROG_ALLGEMEIN.MyComboBox
|
||||
Friend WithEvents cboRgArt As VERAG_PROG_ALLGEMEIN.MyComboBox
|
||||
Friend WithEvents Label57 As Label
|
||||
Friend WithEvents cbxAUTOMailversand As CheckBox
|
||||
End Class
|
||||
|
||||
@@ -142,6 +142,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
Label40.Visible = False
|
||||
sbLeistung._value = ""
|
||||
cbxOriginalPrint.Checked = False
|
||||
cbxAUTOMailversand.Checked = False
|
||||
|
||||
If RK_ID_TMP > 0 Then
|
||||
RECHNUNG = New VERAG_PROG_ALLGEMEIN.cRechnungsausgang(RK_ID_TMP)
|
||||
@@ -302,6 +303,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
|
||||
txtErfassungsnummer.Text = If(RECHNUNG.ErfassungsNr, "")
|
||||
cboRechnungNotiz.Text = If(RECHNUNG.Notiz, "")
|
||||
cbxAUTOMailversand.Checked = RECHNUNG.Automailversand
|
||||
|
||||
initRgArt()
|
||||
cboRgArt._value = RECHNUNG.Rechnungsart
|
||||
@@ -544,6 +546,10 @@ Public Class usrCntlFaktAbrechnung
|
||||
FirmaTmp = "VERAG360"
|
||||
End If
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
cbxAUTOMailversand.Visible = True
|
||||
End If
|
||||
|
||||
cboVorauskasse.Items.Clear()
|
||||
cboVorauskasse.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEIN", 0))
|
||||
cboVorauskasse.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("JA", 1))
|
||||
@@ -2496,6 +2502,8 @@ Public Class usrCntlFaktAbrechnung
|
||||
|
||||
RECHNUNG.KdAuftragsNr = cProgramFunctions.isLeerNothing(txtKdAuftragsNr.Text)
|
||||
|
||||
RECHNUNG.Automailversand = cbxAUTOMailversand.Checked
|
||||
|
||||
If RECHNUNG.Abfertigungsdatum < CDate("01.01.2000") Then RECHNUNG.Abfertigungsdatum = Now
|
||||
|
||||
If dgvOffertenSperrliste.SelectedRows.Count > 0 Then RECHNUNG.OffertenNr = dgvOffertenSperrliste.SelectedRows(0).Cells("OffertenNr").Value 'Wenn mehrfachauswahl möcglich-> Ändern
|
||||
|
||||
@@ -544,7 +544,7 @@ Public Class frmMDM_USTVAntrag
|
||||
Antrag_LandKz = SQL.DLookup("LandKz", "[Länderverzeichnis für die Außenhandelsstatistik]", "Landnr='" & USTV_ANTRAG.UStVAn_LandNr & "'", "FMZOLL")
|
||||
setValue(USTV_ANTRAG)
|
||||
|
||||
If CInt(USTV_ANTRAG.UStVAn_KuNr) >= 150000 AndAlso CInt(USTV_ANTRAG.UStVAn_KuNr) < 160000 Then
|
||||
If (CInt(USTV_ANTRAG.UStVAn_KuNr) >= 150000 AndAlso CInt(USTV_ANTRAG.UStVAn_KuNr) < 160000) Or (CInt(USTV_ANTRAG.UStVAn_KuNr) >= 180000 AndAlso CInt(USTV_ANTRAG.UStVAn_KuNr) < 190000) Then
|
||||
btnRMCQuartal.Visible = True
|
||||
Else
|
||||
btnRMCQuartal.Visible = False
|
||||
@@ -4088,20 +4088,26 @@ Public Class frmMDM_USTVAntrag
|
||||
|
||||
Private Sub btnRMCQuartal_Click(sender As Object, e As EventArgs) Handles btnRMCQuartal.Click
|
||||
|
||||
Dim rmc As cRMC
|
||||
|
||||
Dim nurUnter50EurAnzeigen As Boolean = True
|
||||
Dim input = InputBox("Bitte geben Sie das gewünschte Quartal ein:", "RMC Quartalsgebühren")
|
||||
If input <> "" AndAlso IsNumeric(input) AndAlso CInt(input) < 5 AndAlso CInt(input) > 0 Then
|
||||
|
||||
Select Case MsgBox("Sollen nur Anträge angezeigt werden, deren Bearbeitung pro Quartal unter 50EUR liegt?", vbYesNo)
|
||||
Case vbYes : nurUnter50EurAnzeigen = True
|
||||
Case vbNo : nurUnter50EurAnzeigen = False
|
||||
End Select
|
||||
Dim rmc As cRMC
|
||||
|
||||
Dim nurUnter50EurAnzeigen As Boolean = True
|
||||
|
||||
Select Case MsgBox("Sollen nur Anträge angezeigt werden, deren Bearbeitung pro Quartal unter 50EUR liegt?", vbYesNo)
|
||||
Case vbYes : nurUnter50EurAnzeigen = True
|
||||
Case vbNo : nurUnter50EurAnzeigen = False
|
||||
End Select
|
||||
|
||||
Dim dt = rmc.getRMCQuartalsAbrechnungen(SQL, CInt(input), Now.Year, "373, 374", USTV_ANTRAG, Antrag_LandKz, nurUnter50EurAnzeigen)
|
||||
If dt.Rows.Count > 0 Then
|
||||
cProgramFunctions.genExcelFromDT_NEW(dt)
|
||||
Else
|
||||
MsgBox("keine Daten für ausgewählten Zeitraum")
|
||||
End If
|
||||
|
||||
Dim dt = rmc.getRMCQuartalsAbrechnungen(SQL, 1, Now.Year, "327", USTV_ANTRAG, Antrag_LandKz, nurUnter50EurAnzeigen)
|
||||
If dt.Rows.Count > 0 Then
|
||||
cProgramFunctions.genExcelFromDT_NEW(dt)
|
||||
Else
|
||||
MsgBox("keine Daten für ausgewählten Zeitraum")
|
||||
End If
|
||||
|
||||
|
||||
|
||||
@@ -230,6 +230,7 @@ Public Class frmDakosyStammreferenzVerwalten
|
||||
cboNL.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEU", "NEU"))
|
||||
cboNL.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NKD", "NKD"))
|
||||
cboNL.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DTB", "DTB"))
|
||||
cboNL.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBWO", "AMBWO"))
|
||||
cboNL.changeItem("")
|
||||
|
||||
Case "IMEX"
|
||||
|
||||
99
SDL/kassenbuch/frmNacherfassungLeihgeld.Designer.vb
generated
99
SDL/kassenbuch/frmNacherfassungLeihgeld.Designer.vb
generated
@@ -50,14 +50,15 @@ Partial Class frmNacherfassungLeihgeld
|
||||
Me.Label11 = New System.Windows.Forms.Label()
|
||||
Me.cbxProvisionAuftraggeber = New System.Windows.Forms.CheckBox()
|
||||
Me.Panel1 = New System.Windows.Forms.Panel()
|
||||
Me.cbxProvinMAKassa = New System.Windows.Forms.CheckBox()
|
||||
Me.txtAuftrProvision = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.cboProvisionBetrag = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.cboProvisionStaffel = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.txtProvisionProzent = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.cboProvisionStaffelArt = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.Panel2 = New System.Windows.Forms.Panel()
|
||||
Me.cboPrinter = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.cboPrinterProvisionBeleg = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.cboProvisionStaffel = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.txtProvisionProzent = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.cboProvisionStaffelArt = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.Label44 = New System.Windows.Forms.Label()
|
||||
Me.txtOpLeihgeld = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.txtKdAuftragsnummer = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
@@ -71,7 +72,6 @@ Partial Class frmNacherfassungLeihgeld
|
||||
Me.txtFahrer = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.cbxOP_sofort_buchen = New System.Windows.Forms.CheckBox()
|
||||
Me.lblGesperrt = New System.Windows.Forms.Label()
|
||||
Me.cbxProvinMAKassa = New System.Windows.Forms.CheckBox()
|
||||
Me.pnl.SuspendLayout()
|
||||
Me.Panel1.SuspendLayout()
|
||||
Me.Panel2.SuspendLayout()
|
||||
@@ -409,6 +409,17 @@ Partial Class frmNacherfassungLeihgeld
|
||||
Me.Panel1.Size = New System.Drawing.Size(441, 147)
|
||||
Me.Panel1.TabIndex = 20
|
||||
'
|
||||
'cbxProvinMAKassa
|
||||
'
|
||||
Me.cbxProvinMAKassa.AutoSize = True
|
||||
Me.cbxProvinMAKassa.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.cbxProvinMAKassa.Location = New System.Drawing.Point(21, 31)
|
||||
Me.cbxProvinMAKassa.Name = "cbxProvinMAKassa"
|
||||
Me.cbxProvinMAKassa.Size = New System.Drawing.Size(138, 17)
|
||||
Me.cbxProvinMAKassa.TabIndex = 22
|
||||
Me.cbxProvinMAKassa.Text = "in Mitarbeiter-Kassa"
|
||||
Me.cbxProvinMAKassa.UseVisualStyleBackColor = True
|
||||
'
|
||||
'txtAuftrProvision
|
||||
'
|
||||
Me.txtAuftrProvision._DateTimeOnly = False
|
||||
@@ -457,6 +468,40 @@ Partial Class frmNacherfassungLeihgeld
|
||||
Me.cboProvisionBetrag.Size = New System.Drawing.Size(124, 26)
|
||||
Me.cboProvisionBetrag.TabIndex = 8
|
||||
'
|
||||
'Panel2
|
||||
'
|
||||
Me.Panel2.Controls.Add(Me.Label6)
|
||||
Me.Panel2.Controls.Add(Me.Label7)
|
||||
Me.Panel2.Controls.Add(Me.cboPrinter)
|
||||
Me.Panel2.Controls.Add(Me.cboPrinterProvisionBeleg)
|
||||
Me.Panel2.Location = New System.Drawing.Point(210, 83)
|
||||
Me.Panel2.Name = "Panel2"
|
||||
Me.Panel2.Size = New System.Drawing.Size(228, 59)
|
||||
Me.Panel2.TabIndex = 21
|
||||
'
|
||||
'cboPrinter
|
||||
'
|
||||
Me.cboPrinter._allowedValuesFreiText = Nothing
|
||||
Me.cboPrinter._allowFreiText = False
|
||||
Me.cboPrinter._value = ""
|
||||
Me.cboPrinter.FormattingEnabled = True
|
||||
Me.cboPrinter.Location = New System.Drawing.Point(83, 6)
|
||||
Me.cboPrinter.Name = "cboPrinter"
|
||||
Me.cboPrinter.Size = New System.Drawing.Size(131, 21)
|
||||
Me.cboPrinter.TabIndex = 1
|
||||
'
|
||||
'cboPrinterProvisionBeleg
|
||||
'
|
||||
Me.cboPrinterProvisionBeleg._allowedValuesFreiText = Nothing
|
||||
Me.cboPrinterProvisionBeleg._allowFreiText = False
|
||||
Me.cboPrinterProvisionBeleg._value = ""
|
||||
Me.cboPrinterProvisionBeleg.Enabled = False
|
||||
Me.cboPrinterProvisionBeleg.FormattingEnabled = True
|
||||
Me.cboPrinterProvisionBeleg.Location = New System.Drawing.Point(83, 30)
|
||||
Me.cboPrinterProvisionBeleg.Name = "cboPrinterProvisionBeleg"
|
||||
Me.cboPrinterProvisionBeleg.Size = New System.Drawing.Size(131, 21)
|
||||
Me.cboPrinterProvisionBeleg.TabIndex = 3
|
||||
'
|
||||
'cboProvisionStaffel
|
||||
'
|
||||
Me.cboProvisionStaffel._allowedValuesFreiText = Nothing
|
||||
@@ -505,40 +550,6 @@ Partial Class frmNacherfassungLeihgeld
|
||||
Me.cboProvisionStaffelArt.Size = New System.Drawing.Size(156, 21)
|
||||
Me.cboProvisionStaffelArt.TabIndex = 3
|
||||
'
|
||||
'Panel2
|
||||
'
|
||||
Me.Panel2.Controls.Add(Me.Label6)
|
||||
Me.Panel2.Controls.Add(Me.Label7)
|
||||
Me.Panel2.Controls.Add(Me.cboPrinter)
|
||||
Me.Panel2.Controls.Add(Me.cboPrinterProvisionBeleg)
|
||||
Me.Panel2.Location = New System.Drawing.Point(210, 83)
|
||||
Me.Panel2.Name = "Panel2"
|
||||
Me.Panel2.Size = New System.Drawing.Size(228, 59)
|
||||
Me.Panel2.TabIndex = 21
|
||||
'
|
||||
'cboPrinter
|
||||
'
|
||||
Me.cboPrinter._allowedValuesFreiText = Nothing
|
||||
Me.cboPrinter._allowFreiText = False
|
||||
Me.cboPrinter._value = ""
|
||||
Me.cboPrinter.FormattingEnabled = True
|
||||
Me.cboPrinter.Location = New System.Drawing.Point(83, 6)
|
||||
Me.cboPrinter.Name = "cboPrinter"
|
||||
Me.cboPrinter.Size = New System.Drawing.Size(131, 21)
|
||||
Me.cboPrinter.TabIndex = 1
|
||||
'
|
||||
'cboPrinterProvisionBeleg
|
||||
'
|
||||
Me.cboPrinterProvisionBeleg._allowedValuesFreiText = Nothing
|
||||
Me.cboPrinterProvisionBeleg._allowFreiText = False
|
||||
Me.cboPrinterProvisionBeleg._value = ""
|
||||
Me.cboPrinterProvisionBeleg.Enabled = False
|
||||
Me.cboPrinterProvisionBeleg.FormattingEnabled = True
|
||||
Me.cboPrinterProvisionBeleg.Location = New System.Drawing.Point(83, 30)
|
||||
Me.cboPrinterProvisionBeleg.Name = "cboPrinterProvisionBeleg"
|
||||
Me.cboPrinterProvisionBeleg.Size = New System.Drawing.Size(131, 21)
|
||||
Me.cboPrinterProvisionBeleg.TabIndex = 3
|
||||
'
|
||||
'Label44
|
||||
'
|
||||
Me.Label44.AutoSize = True
|
||||
@@ -810,6 +821,7 @@ Partial Class frmNacherfassungLeihgeld
|
||||
'cbxOP_sofort_buchen
|
||||
'
|
||||
Me.cbxOP_sofort_buchen.AutoSize = True
|
||||
Me.cbxOP_sofort_buchen.Enabled = False
|
||||
Me.cbxOP_sofort_buchen.Location = New System.Drawing.Point(291, 290)
|
||||
Me.cbxOP_sofort_buchen.Name = "cbxOP_sofort_buchen"
|
||||
Me.cbxOP_sofort_buchen.Size = New System.Drawing.Size(145, 17)
|
||||
@@ -829,17 +841,6 @@ Partial Class frmNacherfassungLeihgeld
|
||||
Me.lblGesperrt.Text = "gesperrt!"
|
||||
Me.lblGesperrt.Visible = False
|
||||
'
|
||||
'cbxProvinMAKassa
|
||||
'
|
||||
Me.cbxProvinMAKassa.AutoSize = True
|
||||
Me.cbxProvinMAKassa.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.cbxProvinMAKassa.Location = New System.Drawing.Point(21, 31)
|
||||
Me.cbxProvinMAKassa.Name = "cbxProvinMAKassa"
|
||||
Me.cbxProvinMAKassa.Size = New System.Drawing.Size(138, 17)
|
||||
Me.cbxProvinMAKassa.TabIndex = 22
|
||||
Me.cbxProvinMAKassa.Text = "in Mitarbeiter-Kassa"
|
||||
Me.cbxProvinMAKassa.UseVisualStyleBackColor = True
|
||||
'
|
||||
'frmNacherfassungLeihgeld
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
|
||||
@@ -523,10 +523,20 @@ Public Class frmNacherfassungLeihgeld
|
||||
RG.FilialenNr = SPEDBUCH.FilialenNr
|
||||
RG.Abfertigungsdatum = SPEDBUCH.Abfertigungsdatum
|
||||
RG.Sammelrechnung = 0
|
||||
RG.BelegartenKz = "AR"
|
||||
RG.BelegartenNr = 70
|
||||
RG.BelegartenBez = "Rechnung"
|
||||
RG.Vorzeichen = "+"
|
||||
|
||||
If summeBRUTTO >= 0 Then
|
||||
|
||||
RG.BelegartenNr = 70
|
||||
RG.BelegartenKz = "AR"
|
||||
RG.BelegartenBez = "Rechnung"
|
||||
RG.Vorzeichen = "+"
|
||||
|
||||
Else
|
||||
RG.BelegartenNr = 71
|
||||
RG.BelegartenKz = "AG"
|
||||
RG.BelegartenBez = "Gutschrift"
|
||||
RG.Vorzeichen = "-"
|
||||
End If
|
||||
|
||||
RG.VermittlerKundenNr = AD.AdressenNr
|
||||
RG.VermittlerLandKz = AD.LandKz
|
||||
|
||||
@@ -17,12 +17,13 @@ Public Class cAufschubKonten
|
||||
Property brgakto_gs_ust As Object = Nothing
|
||||
Property brgakto_gs_aktSaldo As Decimal
|
||||
Property brgakto_gs_ATR As Boolean = False
|
||||
Property brgakto_firmaID As Object = Nothing
|
||||
|
||||
Public hasEntry = False
|
||||
|
||||
Dim SQL As New SQL
|
||||
|
||||
Sub New(brgakto_id)
|
||||
Sub New(brgakto_id As Integer)
|
||||
Me.brgakto_id = brgakto_id
|
||||
LOAD()
|
||||
End Sub
|
||||
@@ -33,6 +34,14 @@ Public Class cAufschubKonten
|
||||
brgakto_betrag = getReferenzbetrag(Today)
|
||||
End Sub
|
||||
|
||||
|
||||
Sub New(brgakto_gs_standort As String, brgakto_firmaID As Integer)
|
||||
Me.brgakto_gs_standort = brgakto_gs_standort
|
||||
Me.brgakto_firmaID = brgakto_firmaID
|
||||
LOADStandort(brgakto_firmaID)
|
||||
brgakto_betrag = getReferenzbetrag(Today)
|
||||
End Sub
|
||||
|
||||
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("brgakto_id", brgakto_id,, True))
|
||||
@@ -47,6 +56,7 @@ Public Class cAufschubKonten
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("brgakto_gs_ust", brgakto_gs_ust))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("brgakto_gs_ATR", brgakto_gs_ATR))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("brgakto_gs_aktSaldo", brgakto_gs_aktSaldo))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("brgakto_firmaID", brgakto_firmaID))
|
||||
|
||||
|
||||
Return list
|
||||
@@ -95,16 +105,16 @@ Public Class cAufschubKonten
|
||||
End Sub
|
||||
|
||||
|
||||
Public Sub LOADStandort()
|
||||
|
||||
Public Sub LOADStandort(Optional firma As Integer = 0)
|
||||
|
||||
Try
|
||||
hasEntry = False
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionADMIN()
|
||||
|
||||
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblBrgAufschubKonten WHERE brgakto_gs_standort=@brgakto_gs_standort ", conn)
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblBrgAufschubKonten WHERE brgakto_gs_standort=@brgakto_gs_standort " & IIf(firma <> 0, " AND brgakto_firma=@brgakto_firma", ""), conn)
|
||||
cmd.Parameters.AddWithValue("@brgakto_gs_standort", brgakto_gs_standort)
|
||||
If firma <> 0 Then cmd.Parameters.AddWithValue("@brgakto_firmaID", brgakto_firmaID)
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
For Each li In getParameterList()
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Reflection
|
||||
Imports com.sun.org.apache.xpath.internal.operations
|
||||
|
||||
Public Class cTrdInvoice
|
||||
|
||||
@@ -35,7 +36,8 @@ Public Class cTrdInvoice
|
||||
Property Firma_ID As Object = Nothing
|
||||
Property UStVAn_ID As Object = Nothing
|
||||
Property VZ As Integer
|
||||
|
||||
Property BV As Object = Nothing
|
||||
Property Source As Object = Nothing
|
||||
Property hasEntry As Boolean = False
|
||||
|
||||
|
||||
@@ -45,21 +47,22 @@ Public Class cTrdInvoice
|
||||
|
||||
End Sub
|
||||
|
||||
Sub New(Rechnungsdatum, Rechnungsnummer)
|
||||
Sub New(Rechnungsdatum, Rechnungsnummer, Source)
|
||||
Me.Rechnungsnummer = Rechnungsnummer
|
||||
Me.Rechnungsdatum = Rechnungsdatum
|
||||
Me.Source = Source
|
||||
LOAD()
|
||||
End Sub
|
||||
|
||||
Sub New(Rechnungsdatum, Rechnungsnummer, Buchungsjahr)
|
||||
Sub New(Rechnungsdatum, Rechnungsnummer, Buchungsjahr, Source)
|
||||
Me.Rechnungsnummer = Buchungsjahr.ToString.Substring(2, 2) & Rechnungsnummer
|
||||
Me.Rechnungsdatum = Rechnungsdatum
|
||||
Me.Source = Source
|
||||
LOAD()
|
||||
End Sub
|
||||
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsdatum", Rechnungsdatum))
|
||||
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsnummer", Rechnungsnummer))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Speditionsbuch", Speditionsbuch))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNr", FilialenNr))
|
||||
@@ -91,6 +94,8 @@ Public Class cTrdInvoice
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Firma_ID", Firma_ID))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVAn_ID", UStVAn_ID))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VZ", VZ))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BV", BV))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Source", Source))
|
||||
|
||||
|
||||
Return list
|
||||
@@ -116,9 +121,10 @@ Public Class cTrdInvoice
|
||||
Public Sub LOAD()
|
||||
Try
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblTrdinInvoice WHERE Rechnungsnummer=@Rechnungsnummer and Rechnungsdatum=@Rechnungsdatum ", conn)
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblTrdinInvoice WHERE Rechnungsnummer=@Rechnungsnummer and Rechnungsdatum=@Rechnungsdatum and Source=@Source ", conn)
|
||||
cmd.Parameters.AddWithValue("@Rechnungsnummer", Rechnungsnummer)
|
||||
cmd.Parameters.AddWithValue("@Rechnungsdatum", Rechnungsdatum)
|
||||
cmd.Parameters.AddWithValue("@Source", Source)
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
hasEntry = True
|
||||
@@ -229,7 +235,6 @@ Public Class cTrdProduct
|
||||
|
||||
Property Rechnungsdatum As Date
|
||||
Property Rechnungsnummer As Integer
|
||||
|
||||
Property Leistungsnummer As Integer
|
||||
Property Leistungsbezeichnung As String
|
||||
Property Steuerpflichtig As Boolean
|
||||
@@ -241,6 +246,7 @@ Public Class cTrdProduct
|
||||
Property Sachkonto As Object = Nothing
|
||||
Property Buchungstext As Object = Nothing
|
||||
Property VZBetrag As Object = Nothing
|
||||
Property Source As Object = Nothing
|
||||
|
||||
|
||||
Dim SQL As New SQL
|
||||
@@ -254,7 +260,6 @@ Public Class cTrdProduct
|
||||
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsdatum", Rechnungsdatum))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsnummer", Rechnungsnummer))
|
||||
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Leistungsnummer", Leistungsnummer))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Leistungsbezeichnung", Leistungsbezeichnung))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Steuerpflichtig", Steuerpflichtig))
|
||||
@@ -266,6 +271,7 @@ Public Class cTrdProduct
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Sachkonto", Sachkonto))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Buchungstext", Buchungstext))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VZBetrag", VZBetrag))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Source", Source))
|
||||
|
||||
Return list
|
||||
End Function
|
||||
@@ -406,7 +412,17 @@ Class TrdInvoice_FUNCTIONS
|
||||
Dim WährungsdifferenzSteuerpflichtigerBetrag As Double
|
||||
Dim WährungsdifferenzSteuerfreierBetrag As Integer
|
||||
|
||||
Dim dt As DataTable = SQL.loadDgvBySql(getSQLString_SELECTForTrdInvoice(Firma, Buchungsjahr), "FMZOLL", 9800)
|
||||
Dim dt As DataTable
|
||||
|
||||
If Not Firma = 7 Then
|
||||
|
||||
dt = SQL.loadDgvBySql(getSQLString_SELECTForTrdInvoice(Firma, Buchungsjahr, True), "FMZOLL", 9800)
|
||||
|
||||
Else
|
||||
|
||||
dt = SQL.loadDgvBySql(getSQLString_SELECTForTrdInvoice(Firma, Buchungsjahr, False) & " UNION ALL " & getSQLString_SELECTForTrdInvoice_Barverkauf("VERA", "SUA", 5033, Buchungsjahr, True), "FMZOLL", 9800) 'Nur Leigheldkonto!
|
||||
|
||||
End If
|
||||
|
||||
Dim dtVZ As DataTable
|
||||
|
||||
@@ -416,9 +432,9 @@ Class TrdInvoice_FUNCTIONS
|
||||
For Each ROW In dt.Rows
|
||||
Dim TRD_INVOICE As VERAG_PROG_ALLGEMEIN.cTrdInvoice
|
||||
If Buchungsjahr > 2000 Then
|
||||
TRD_INVOICE = New VERAG_PROG_ALLGEMEIN.cTrdInvoice(ROW("RK_RechnungsDatum"), ROW("RK_RechnungsNr"), Buchungsjahr) 'nur UNISPED!!!!
|
||||
TRD_INVOICE = New VERAG_PROG_ALLGEMEIN.cTrdInvoice(ROW("RK_RechnungsDatum"), ROW("RK_RechnungsNr"), Buchungsjahr, ROW("Source")) 'nur UNISPED!!!!
|
||||
Else
|
||||
TRD_INVOICE = New VERAG_PROG_ALLGEMEIN.cTrdInvoice(ROW("RK_RechnungsDatum"), ROW("RK_RechnungsNr"))
|
||||
TRD_INVOICE = New VERAG_PROG_ALLGEMEIN.cTrdInvoice(ROW("RK_RechnungsDatum"), ROW("RK_RechnungsNr"), ROW("Source"))
|
||||
End If
|
||||
|
||||
|
||||
@@ -433,25 +449,21 @@ Class TrdInvoice_FUNCTIONS
|
||||
TRD_INVOICE.SteuerfreierBetragLokal = ROW("RK_SteuerfreierBetrag")
|
||||
TRD_INVOICE.SteuerbetragLokal = ROW("RK_Steuerbetrag")
|
||||
TRD_INVOICE.RechnungsbetragLokal = ROW("RK_Rechnungsbetrag")
|
||||
|
||||
TRD_INVOICE.SteuerpflichtigerBetragFremd = 0
|
||||
TRD_INVOICE.SteuerfreierBetragFremd = 0
|
||||
TRD_INVOICE.SteuerbetragFremd = 0
|
||||
TRD_INVOICE.RechnungsbetragFremd = 0
|
||||
|
||||
TRD_INVOICE.WährungFremd = Nothing
|
||||
Else
|
||||
TRD_INVOICE.SteuerpflichtigerBetragFremd = ROW("RK_SteuerpflichtigerBetrag")
|
||||
TRD_INVOICE.SteuerfreierBetragFremd = ROW("RK_SteuerfreierBetrag")
|
||||
TRD_INVOICE.SteuerbetragFremd = ROW("RK_Steuerbetrag")
|
||||
TRD_INVOICE.RechnungsbetragFremd = ROW("RK_Rechnungsbetrag")
|
||||
|
||||
TRD_INVOICE.SteuerpflichtigerBetragLokal = VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuro(ROW("RK_SteuerpflichtigerBetrag"), ROW("RK_Währungscode"), LOKALWÄHRUNG)
|
||||
TRD_INVOICE.SteuerfreierBetragLokal = VERAG_PROG_ALLGEMEIN.cProgramFunctions.fktEuro(ROW("RK_SteuerfreierBetrag"), ROW("RK_Währungscode"), LOKALWÄHRUNG)
|
||||
TRD_INVOICE.SteuerbetragLokal = CDbl(TRD_INVOICE.SteuerpflichtigerBetragLokal * ROW("RK_SteuersatzProzent") * 100) / 100
|
||||
TRD_INVOICE.RechnungsbetragLokal = TRD_INVOICE.SteuerpflichtigerBetragLokal + TRD_INVOICE.SteuerfreierBetragLokal + TRD_INVOICE.SteuerbetragLokal
|
||||
' Basis zur Feststellung von Rundungsdifferenzen schaffen.
|
||||
|
||||
TRD_INVOICE.SteuerpflichtigerBetragLokal = 0
|
||||
TRD_INVOICE.SteuerfreierBetragLokal = 0
|
||||
TRD_INVOICE.SteuerbetragLokal = 0
|
||||
@@ -485,6 +497,16 @@ Class TrdInvoice_FUNCTIONS
|
||||
TRD_INVOICE.Abgleich_op_debitor = 0
|
||||
TRD_INVOICE.Nettozahlungsziel = ROW("RK_Nettozahlungsziel")
|
||||
TRD_INVOICE.Firma_ID = ROW("RK_Firma_ID")
|
||||
TRD_INVOICE.BV = 0
|
||||
TRD_INVOICE.Source = ROW("Source")
|
||||
|
||||
If TRD_INVOICE.FilialenNr = 4813 AndAlso TRD_INVOICE.Firma_ID = 7 Then
|
||||
TRD_INVOICE.BV = 1
|
||||
End If
|
||||
|
||||
If TRD_INVOICE.Source = "KB" AndAlso Not TRD_INVOICE.BV = 1 Then
|
||||
TRD_INVOICE.BV = 1
|
||||
End If
|
||||
|
||||
If dtVZ IsNot Nothing AndAlso dtVZ.Rows.Count > 0 Then
|
||||
For Each VZ_ROW In dtVZ.Rows
|
||||
@@ -503,18 +525,32 @@ Class TrdInvoice_FUNCTIONS
|
||||
' Buchungstext &= " / nicht verzinsen"
|
||||
ElseIf Buchungstext <> "" AndAlso Buchungstext.Contains("Zahlungen") Then
|
||||
Buchungstext = Buchungstext.Replace("Zahlungen", "Zinsen")
|
||||
End If
|
||||
|
||||
If TRD_INVOICE.Source = "KB" Then
|
||||
Select Case TRD_INVOICE.BelegartenNr
|
||||
Case "30" : Buchungstext &= " Ausgabe-LG"
|
||||
Case "31" : Buchungstext &= " Einnahme-LG"
|
||||
End Select
|
||||
|
||||
End If
|
||||
|
||||
If TRD_INVOICE.SAVE Then
|
||||
If TrdinSchreibenProduct(TRD_INVOICE.Rechnungsdatum, ROW("RK_RechnungsNr"), TRD_INVOICE.Rechnungsnummer, RK_Währungscode, ROW("RK_RechnungsLandKz"), Buchungstext, TRD_INVOICE.Firma_ID, lngSatzzähler, WährungsdifferenzSteuerpflichtigerBetrag, WährungsdifferenzSteuerfreierBetrag, Buchungsjahr, TRD_INVOICE.VZ) Then
|
||||
'UPDATE rechnugnsausgang
|
||||
Dim firmaTmpsql = If(Firma > 0, " AND Firma_ID= '" & Firma & "' ", "")
|
||||
Dim buchungsjahrTmpsql = If(Buchungsjahr > 0, " AND Buchungsjahr= '" & Buchungsjahr & "' ", "")
|
||||
SQL.doSQL("UPDATE [Rechnungsausgang] SET [Trdin] = 1 WHERE convert(date,[RechnungsDatum] ,104) = '" & TRD_INVOICE.Rechnungsdatum.ToShortDateString & "' AND RechnungsNr = " & ROW("RK_RechnungsNr") & firmaTmpsql & buchungsjahrTmpsql, "FMZOLL")
|
||||
If TRD_INVOICE.Source = "RE" Then
|
||||
If TrdinSchreibenProduct(TRD_INVOICE.Rechnungsdatum, ROW("RK_RechnungsNr"), TRD_INVOICE.Rechnungsnummer, RK_Währungscode, ROW("RK_RechnungsLandKz"), Buchungstext, TRD_INVOICE.Firma_ID, lngSatzzähler, WährungsdifferenzSteuerpflichtigerBetrag, WährungsdifferenzSteuerfreierBetrag, Buchungsjahr, TRD_INVOICE.VZ, False) Then
|
||||
Dim firmaTmpsql = If(Firma > 0, " AND Firma_ID= '" & Firma & "' ", "")
|
||||
Dim buchungsjahrTmpsql = If(Buchungsjahr > 0, " AND Buchungsjahr= '" & Buchungsjahr & "' ", "")
|
||||
SQL.doSQL("UPDATE [Rechnungsausgang] SET [Trdin] = 1 WHERE convert(date,[RechnungsDatum] ,104) = '" & TRD_INVOICE.Rechnungsdatum.ToShortDateString & "' AND RechnungsNr = " & ROW("RK_RechnungsNr") & firmaTmpsql & buchungsjahrTmpsql, "FMZOLL")
|
||||
End If
|
||||
ElseIf TRD_INVOICE.Source = "KB" Then
|
||||
If TrdinSchreibenProduct(TRD_INVOICE.Rechnungsdatum, ROW("RK_RechnungsNr"), TRD_INVOICE.Rechnungsnummer, RK_Währungscode, ROW("RK_RechnungsLandKz"), Buchungstext, TRD_INVOICE.Firma_ID, lngSatzzähler, WährungsdifferenzSteuerpflichtigerBetrag, WährungsdifferenzSteuerfreierBetrag, Buchungsjahr, TRD_INVOICE.VZ, True) Then
|
||||
SQL.doSQL("UPDATE [tblKassenbuch] SET [Trdin] = 1 WHERE tblKassenbuch.Mandant='VERA' and tblKassenbuch.Niederlassung='SUA' And Konto=5033 AND convert(date,[BelegDat] ,104) = '" & TRD_INVOICE.Rechnungsdatum.ToShortDateString & "' AND rksv_BelegId = " & ROW("RK_RechnungsNr"), "FMZOLL")
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
Return True
|
||||
|
||||
@@ -533,12 +569,21 @@ Class TrdInvoice_FUNCTIONS
|
||||
|
||||
|
||||
|
||||
Shared Function TrdinSchreibenProduct(RechnungsDatum, RK_RechnungsNr, TRD_RechnungsNr, RK_Währungscode, RK_RechnungsLandKz, RK_Buchungstext, RK_Firma_ID, ByRef lngSatzzähler, ByRef WährungsdifferenzSteuerpflichtigerBetrag, ByRef WährungsdifferenzSteuerfreierBetrag, Buchungsjahr, isVZ) As Boolean
|
||||
Shared Function TrdinSchreibenProduct(RechnungsDatum, RK_RechnungsNr, TRD_RechnungsNr, RK_Währungscode, RK_RechnungsLandKz, RK_Buchungstext, RK_Firma_ID, ByRef lngSatzzähler, ByRef WährungsdifferenzSteuerpflichtigerBetrag, ByRef WährungsdifferenzSteuerfreierBetrag, Buchungsjahr, isVZ, isBV) As Boolean
|
||||
Try
|
||||
|
||||
Dim LOKALWÄHRUNG = "EUR"
|
||||
|
||||
Dim dt As DataTable = SQL.loadDgvBySql(getSQLString_SELECTForTrdProduct(RechnungsDatum, RK_RechnungsNr, RK_Firma_ID, Buchungsjahr), "FMZOLL")
|
||||
Dim dt As DataTable
|
||||
|
||||
If isBV Then
|
||||
dt = SQL.loadDgvBySql(getSQLString_SELECTForTrdProduct_Barverkauf(RechnungsDatum, RK_RechnungsNr, RK_Firma_ID, Buchungsjahr), "FMZOLL")
|
||||
Else
|
||||
dt = SQL.loadDgvBySql(getSQLString_SELECTForTrdProduct(RechnungsDatum, RK_RechnungsNr, RK_Firma_ID, Buchungsjahr), "FMZOLL")
|
||||
End If
|
||||
|
||||
|
||||
|
||||
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
|
||||
For Each ROW In dt.Rows
|
||||
Dim TRD_PRODUCT As New VERAG_PROG_ALLGEMEIN.cTrdProduct()
|
||||
@@ -576,7 +621,6 @@ Class TrdInvoice_FUNCTIONS
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
TRD_PRODUCT.Leistungsnummer = ROW("RP_LeistungsNr")
|
||||
TRD_PRODUCT.Leistungsbezeichnung = ROW("RP_LeistungsBez")
|
||||
TRD_PRODUCT.Steuerpflichtig = ROW("RP_Steuerpflichtig")
|
||||
@@ -584,6 +628,17 @@ Class TrdInvoice_FUNCTIONS
|
||||
TRD_PRODUCT.Sachkonto = getSachkonto(RK_Firma_ID, ROW("RP_LeistungsNr"), RK_RechnungsLandKz, ROW("RP_Steuerpflichtig"), ROW("AufschubkontoNr"))
|
||||
TRD_PRODUCT.Buchungstext = RK_Buchungstext
|
||||
|
||||
If TRD_PRODUCT.Buchungstext.ToString.Contains("Pos. ") Then
|
||||
TRD_PRODUCT.Buchungstext = TRD_PRODUCT.Buchungstext.ToString.Replace("Pos. ", "")
|
||||
End If
|
||||
|
||||
If TRD_PRODUCT.Buchungstext IsNot Nothing AndAlso TRD_PRODUCT.Buchungstext.Length > 35 Then
|
||||
TRD_PRODUCT.Buchungstext = TRD_PRODUCT.Buchungstext.ToString.Replace("Pos. ", "")
|
||||
TRD_PRODUCT.Buchungstext = TRD_PRODUCT.Buchungstext.Substring(0, Math.Min(35, TRD_PRODUCT.Buchungstext.Length))
|
||||
End If
|
||||
|
||||
|
||||
|
||||
If isVZ > 0 Then
|
||||
Select Case ROW("RP_LeistungsNr")
|
||||
Case "123", "124", "125", "126", "128", "117", "118", "119"
|
||||
@@ -596,7 +651,11 @@ Class TrdInvoice_FUNCTIONS
|
||||
End If
|
||||
|
||||
|
||||
|
||||
If isBV Then
|
||||
TRD_PRODUCT.Source = "KB"
|
||||
Else
|
||||
TRD_PRODUCT.Source = "RE"
|
||||
End If
|
||||
|
||||
TRD_PRODUCT.SAVE()
|
||||
Next
|
||||
@@ -706,7 +765,7 @@ Class TrdInvoice_FUNCTIONS
|
||||
getSachkonto = CInt(getSachkonto)
|
||||
End Function
|
||||
|
||||
Shared Function getSQLString_SELECTForTrdInvoice(Optional Firma As Integer = -1, Optional Buchungsjahr As Integer = -1)
|
||||
Shared Function getSQLString_SELECTForTrdInvoice(Optional Firma As Integer = -1, Optional Buchungsjahr As Integer = -1, Optional WithOrderClause As Boolean = True)
|
||||
getSQLString_SELECTForTrdInvoice = "SELECT Rechnungsausgang.RechnungsDatum AS RK_RechnungsDatum, Rechnungsausgang.RechnungsNr AS RK_RechnungsNr, min(Rechnungsausgang.Abfertigungsdatum) AS RK_Abfertigungsdatum, min(Rechnungsausgang.FilialenNr) AS RK_FilialenNr,
|
||||
min(Rechnungsausgang.AbfertigungsNr) AS RK_AbfertigungsNr, min(Rechnungsausgang.UnterNr) AS RK_UnterNr, min(Rechnungsausgang.BelegartenNr) AS RK_BelegartenNr,
|
||||
case when min(Firma_ID)=19 and min(Rechnungsausgang.FilialenNr) = 8001 and min(Rechnungsausgang.OffertenNr) = 95 then
|
||||
@@ -720,14 +779,46 @@ Class TrdInvoice_FUNCTIONS
|
||||
Sum(RechnungsausgangPositionen.SteuerfreierBetrag) AS RK_SteuerfreierBetrag
|
||||
, (Sum(RechnungsausgangPositionen.SteuerpflichtigerBetrag)*min(Rechnungsausgang.[Steuersatz %])*100)/100 AS RK_Steuerbetrag,
|
||||
Sum(RechnungsausgangPositionen.SteuerpflichtigerBetrag)+Sum(RechnungsausgangPositionen.SteuerfreierBetrag)+((Sum(RechnungsausgangPositionen.SteuerpflichtigerBetrag)*min(Rechnungsausgang.[Steuersatz %])*100)/100) AS RK_Rechnungsbetrag,
|
||||
Count(1) AS RK_Satzzähler, '' as VZ
|
||||
Count(1) AS RK_Satzzähler, '' as VZ, 0 as BV, 'RE' as Source
|
||||
FROM Rechnungsausgang INNER JOIN RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID
|
||||
WHERE (((Rechnungsausgang.RechnungsDatum) Is Not Null) AND ((Rechnungsausgang.RechnungsNr) Is Not Null) AND ((Rechnungsausgang.Trdin)=0)) " & If(Firma > 0, " and Firma_ID=" & Firma, "") & If(Buchungsjahr > 0, " and Buchungsjahr=" & Buchungsjahr, "") & "
|
||||
GROUP BY Rechnungsausgang.RechnungsDatum, Rechnungsausgang.RechnungsNr
|
||||
ORDER BY Rechnungsausgang.RechnungsDatum, Rechnungsausgang.RechnungsNr, min(Rechnungsausgang.Abfertigungsdatum), min(Rechnungsausgang.FilialenNr), min(Rechnungsausgang.AbfertigungsNr), min(Rechnungsausgang.UnterNr);"
|
||||
GROUP BY Rechnungsausgang.RechnungsDatum, Rechnungsausgang.RechnungsNr"
|
||||
|
||||
If WithOrderClause Then
|
||||
getSQLString_SELECTForTrdInvoice &= " ORDER BY Rechnungsausgang.RechnungsDatum, Rechnungsausgang.RechnungsNr, min(Rechnungsausgang.Abfertigungsdatum), min(Rechnungsausgang.FilialenNr), min(Rechnungsausgang.AbfertigungsNr), min(Rechnungsausgang.UnterNr);"
|
||||
End If
|
||||
'" & If(Firma = 4, " and Rechnungsausgang.RechnungsNr='23800029'", "") & "
|
||||
End Function
|
||||
|
||||
Shared Function getSQLString_SELECTForTrdInvoice_Barverkauf(Mandant As String, Niederlassung As String, Konto As Integer, Optional Buchungsjahr As Integer = -1, Optional WithOrderClause As Boolean = True) 'NUR LEIHGELD-KASE ATILLA!
|
||||
getSQLString_SELECTForTrdInvoice_Barverkauf = " select
|
||||
max(tblKassenbuch.BelegDat) as RK_RechnungsDatum,max(tblKassenbuch.rksv_BelegId) as RK_RechnungsNr,max(tblKassenbuch.BelegDat) AS RK_Abfertigungsdatum, min([tblEABelegnummer].FilialenNr) as RK_FilialenNr, min([tblEABelegnummer].AbfertigungsNr) AS RK_AbfertigungsNr, 0 AS RK_UnterNr,
|
||||
case when SUM(soll) > 0 then
|
||||
'31' --Einnahme
|
||||
else
|
||||
'30' -- Ausgabe
|
||||
end as RK_BelegartenNr,
|
||||
ISNULL(MIN(Buchungstext), '') + ' ' +ISNULL(MIN([LKW Kennzeichen]), '') + ' ' +ISNULL(MIN(Fahrer), '') AS RK_Buchungstext,
|
||||
case when SUM(soll) > 0 then
|
||||
MIN(KundenNr)
|
||||
else
|
||||
2700
|
||||
end as RK_KundenNrZentrale,
|
||||
0 AS RK_RechnungsKundenNr, 'AT' AS RK_RechnungsLandKz, '' AS RK_RechnungsUstIdKz,
|
||||
''AS RK_RechnungsUstIdNr, 0 AS RK_Lastschrift, 0 AS RK_Steuerschlüssel, 0 AS RK_SteuersatzProzent, 'EUR' AS RK_Währungscode,
|
||||
0 AS RK_Nettozahlungsziel, 7 as Firma_ID,0 AS RK_SteuerpflichtigerBetrag, (SUM(soll) + SUM(haben)) AS RK_SteuerfreierBetrag,
|
||||
0 AS RK_Steuerbetrag, (SUM(soll) + SUM(haben)) AS RK_Rechnungsbetrag,Count(1) AS RK_Satzzähler,'' as VZ,1 as BV,'KB' as Source
|
||||
FROM [tblKassenbuch]
|
||||
inner join [tblEABelegnummer] on [tblEABelegnummer].Mandant=tblKassenbuch.Mandant AND [tblEABelegnummer].Niederlassung=tblKassenbuch.Niederlassung AND [tblEABelegnummer].Benutzer=tblKassenbuch.Benutzer AND [tblEABelegnummer].BelegDat=tblKassenbuch.BelegDat AND [tblEABelegnummer].BelegNr=tblKassenbuch.BelegNr
|
||||
WHERE tblKassenbuch.Mandant='" & Mandant & "' and tblKassenbuch.Niederlassung='" & Niederlassung & "' And Konto= " & Konto & " and Trdin = 0 " & If(Buchungsjahr > 0, " and Year(cast(Buchungsdatum as date)) =" & Buchungsjahr, "") & "
|
||||
group by tblKassenbuch.rksv_BelegId, KundenNr HAVING case when SUM(soll) > 0 then MIN(KundenNr) else 2700 end > 0"
|
||||
|
||||
If WithOrderClause Then
|
||||
getSQLString_SELECTForTrdInvoice_Barverkauf &= " ORDER BY Rechnungsausgang.RechnungsDatum, Rechnungsausgang.RechnungsNr, min(Rechnungsausgang.Abfertigungsdatum), min(Rechnungsausgang.FilialenNr), min(Rechnungsausgang.AbfertigungsNr), min(Rechnungsausgang.UnterNr);"
|
||||
End If
|
||||
|
||||
End Function
|
||||
|
||||
Shared Function getSQLString_SELECT_VZ(Optional Firma As Integer = -1, Optional Buchungsjahr As Integer = -1)
|
||||
getSQLString_SELECT_VZ = "SELECT Rechnungsausgang.RechnungsDatum AS RK_RechnungsDatum, Rechnungsausgang.RechnungsNr AS RK_RechnungsNr, min(Rechnungsausgang.Abfertigungsdatum) AS RK_Abfertigungsdatum, min(Rechnungsausgang.FilialenNr) AS RK_FilialenNr,
|
||||
min(Rechnungsausgang.AbfertigungsNr) AS RK_AbfertigungsNr, min(Rechnungsausgang.UnterNr) AS RK_UnterNr, min(Rechnungsausgang.BelegartenNr) AS RK_BelegartenNr,max(CONVERT(int,isnull(tblUStVPositionen.UStVPo_VZ,0))) as VZ, MAX(isnull(tblUStVPositionen.UStVAn_ID,0)) as AntragsID
|
||||
@@ -749,4 +840,42 @@ Class TrdInvoice_FUNCTIONS
|
||||
HAVING (((Rechnungsausgang.RechnungsDatum)='" & RechnungsDatum.ToShortDateString & "') AND ((Rechnungsausgang.RechnungsNr)=" & RechnungsNr & ")) " & If(Firma > 0, " and Rechnungsausgang.Firma_ID=" & Firma, "") & If(Buchungsjahr > 0, " and Rechnungsausgang.Buchungsjahr=" & Buchungsjahr, "") & "
|
||||
ORDER BY Rechnungsausgang.RechnungsDatum, Rechnungsausgang.RechnungsNr, RechnungsausgangPositionen.LeistungsNr, RechnungsausgangPositionen.LeistungsBez, RechnungsausgangPositionen.Steuerpflichtig;"
|
||||
End Function
|
||||
|
||||
Shared Function getSQLString_SELECTForTrdProduct_Barverkauf(RechnungsDatum As Date, RechnungsNr As Integer, Optional Firma As Integer = -1, Optional Buchungsjahr As Integer = -1)
|
||||
getSQLString_SELECTForTrdProduct_Barverkauf = " select max(tblKassenbuch.BelegDat) as RK_RechnungsDatum,max(tblKassenbuch.rksv_BelegId) as RK_RechnungsNr,max(tblKassenbuch.BelegDat) AS RK_Abfertigungsdatum, min([tblEABelegnummer].FilialenNr) as RK_FilialenNr, min([tblEABelegnummer].AbfertigungsNr) AS RK_AbfertigungsNr, 0 AS RK_UnterNr,
|
||||
case when SUM(soll) > 0 then
|
||||
'Einnahme-LG'
|
||||
else
|
||||
'Ausgabe-LG'
|
||||
end as RP_LeistungsBez,
|
||||
0 as RP_Steuerpflichtig,
|
||||
min(Buchungstext) as RK_Buchungstext,
|
||||
110 as RP_LeistungsNr,
|
||||
0 AS RK_KundenNrZentrale,
|
||||
0 AS RK_RechnungsKundenNr,
|
||||
'AT' AS RK_RechnungsLandKz,
|
||||
'' AS RK_RechnungsUstIdKz,
|
||||
''AS RK_RechnungsUstIdNr,
|
||||
0 AS RK_Lastschrift,
|
||||
0 AS RK_Steuerschlüssel,
|
||||
0 AS RK_SteuersatzProzent,
|
||||
'EUR' AS RK_Währungscode,
|
||||
0 AS RK_Nettozahlungsziel,
|
||||
7 as Firma_ID,
|
||||
0 AS RP_SteuerpflichtigerBetrag,
|
||||
(SUM(soll) + SUM(haben)) AS RP_SteuerfreierBetrag,
|
||||
0 AS RK_Steuerbetrag,
|
||||
(SUM(soll) + SUM(haben)) AS RK_Rechnungsbetrag,
|
||||
Count(1) AS RP_Satzzähler,
|
||||
'' as VZ,
|
||||
1 as BV,
|
||||
'KB' as Source,
|
||||
'' as RP_Belegdaten,
|
||||
'' as AufschubkontoNr
|
||||
FROM [tblKassenbuch]
|
||||
inner join [tblEABelegnummer] on [tblEABelegnummer].Mandant=tblKassenbuch.Mandant AND [tblEABelegnummer].Niederlassung=tblKassenbuch.Niederlassung AND [tblEABelegnummer].Benutzer=tblKassenbuch.Benutzer AND [tblEABelegnummer].BelegDat=tblKassenbuch.BelegDat AND [tblEABelegnummer].BelegNr=tblKassenbuch.BelegNr
|
||||
where tblKassenbuch.Mandant='VERA' and tblKassenbuch.Niederlassung='SUA' And Konto=5033
|
||||
group by tblKassenbuch.rksv_BelegId
|
||||
HAVING max(tblKassenbuch.BelegDat)='" & RechnungsDatum.ToShortDateString & "' AND tblKassenbuch.rksv_BelegId=" & RechnungsNr
|
||||
End Function
|
||||
End Class
|
||||
@@ -1,5 +1,6 @@
|
||||
Imports System.Text.RegularExpressions
|
||||
Imports sun.util.resources.cldr.ve
|
||||
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
|
||||
|
||||
Public Class cSyska_Interface
|
||||
Shared SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
@@ -129,7 +130,7 @@ Public Class cSyska_Interface
|
||||
'DATEIPFAD für Stammdaten
|
||||
'-------------------------------------------------------------------------------------------
|
||||
Dim pathArchivKD = "\\datenarchiv\Datenarchiv\SYSKA\" & FIRMA.Firma_ID & "\" & Now.Year & "\" & Now.Date.ToShortDateString & "\Archiv\"
|
||||
Dim pathKD = "\\syncluster01.verag.ost.dmn\F\BUCHHALTUNG\FIBU\Syska\" & FIRMA.Firma_ID & "\"
|
||||
Dim pathKD = "\\syncluster01.verag.ost.dmn\F\FIBU\Syska\" & FIRMA.Firma_ID & "\"
|
||||
'pathKD = pathArchivKD 'TEST
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
@@ -295,7 +296,7 @@ Public Class cSyska_Interface
|
||||
'DATEIPFAD für Buchungsdaten
|
||||
'-------------------------------------------------------------------------------------------
|
||||
Dim pathArchiv = "\\datenarchiv\Datenarchiv\SYSKA\" & FIRMA.Firma_ID & "\" & Now.Year & "\" & Now.Date.ToShortDateString & "\Archiv\"
|
||||
Dim path = "\\fmzoll\f\FMZoll\FiBu\Syska\" & FIRMA.Firma_ID & "\"
|
||||
Dim path = "\\syncluster01.verag.ost.dmn\F\FIBU\Syska\" & FIRMA.Firma_ID & "\"
|
||||
'pathKD = pathArchivKD 'TEST
|
||||
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
@@ -314,89 +315,27 @@ Public Class cSyska_Interface
|
||||
'----------------- Buchungssätze -----------------
|
||||
If True Then 'boolBuchungen Then
|
||||
If WdhDateiname = "" AndAlso Not ambargubuchungen Then TrdInvoice_FUNCTIONS.TrdinSchreiben(FIRMA.Firma_ID) 'Lädt die Daten aus der Tabelle Rechnungsausgang in die Tabelle trdInvoice (nur für 20 = IMEX )
|
||||
Dim dt_Buchungen As DataTable = getBuchungen(FIRMA.Firma_ID, WdhDateiname, ambargubuchungen, ambarKreditor)
|
||||
Dim dt_Buchungen_ALL As DataTable = getBuchungen(FIRMA.Firma_ID, WdhDateiname, ambargubuchungen, ambarKreditor)
|
||||
' MsgBox(WdhDateiname & " - " & dt_Buchungen.Rows.Count)
|
||||
If dt_Buchungen IsNot Nothing AndAlso dt_Buchungen.Rows.Count > 0 Then
|
||||
If dt_Buchungen_ALL IsNot Nothing AndAlso dt_Buchungen_ALL.Rows.Count > 0 Then
|
||||
|
||||
Dim ROWS_BV = dt_Buchungen_ALL.AsEnumerable().Where(Function(r) r.Field(Of Boolean)("BV") = True)
|
||||
Dim ROWS_not_BV = dt_Buchungen_ALL.AsEnumerable().Where(Function(r) r.Field(Of Boolean)("BV") = False)
|
||||
|
||||
Dim dt_Buchungen_BV As DataTable = If(ROWS_BV.Any(), ROWS_BV.CopyToDataTable(), dt_Buchungen_ALL.Clone())
|
||||
Dim dt_Buchungen As DataTable = If(ROWS_not_BV.Any(), ROWS_not_BV.CopyToDataTable(), dt_Buchungen_ALL.Clone())
|
||||
|
||||
|
||||
Try
|
||||
Dim file As System.IO.StreamWriter
|
||||
Dim Dateiname = IIf(ambargubuchungen, "GS_AMBAR_" & ambarKreditor & "_", "AVISO_BUBE_") & Now.ToString("ddMMyyyy_HHmm") & ".txt"
|
||||
file = My.Computer.FileSystem.OpenTextFileWriter(path & Dateiname, True, System.Text.Encoding.GetEncoding("iso-8859-15"))
|
||||
|
||||
' initKDNr(dt_Buchungen)
|
||||
Dim SummeBuchungen As Double = 0
|
||||
'file.WriteLine(genBuchungenBeginn()) 'not needed
|
||||
For Each r In dt_Buchungen.Rows
|
||||
|
||||
Dim curDifferenzbetrag As Double = 0
|
||||
If r("WährungFremd") Is DBNull.Value Then
|
||||
curDifferenzbetrag = Math.Round(If(r("RechnungsbetragLokal") < 0, 0 - r("RechnungsbetragLokal"), r("RechnungsbetragLokal")), 2)
|
||||
Else
|
||||
curDifferenzbetrag = Math.Round(If(r("RechnungsbetragFremd") < 0, 0 - r("RechnungsbetragFremd"), r("RechnungsbetragFremd")), 2)
|
||||
End If
|
||||
|
||||
If r("BelegartenNr") = 70 Or ambargubuchungen And r("BelegartenNr") = 71 Then 'RECHNUNG ---> Immer am Anfang
|
||||
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, FIRMA, ambargubuchungen))
|
||||
End If
|
||||
Dim dt_BuchungenZeilen As DataTable
|
||||
|
||||
If Not ambargubuchungen Then
|
||||
dt_BuchungenZeilen = getBuchungenZeilen(FIRMA.Firma_ID, r("Rechnungsnummer"), r("Rechnungsdatum"), WdhDateiname)
|
||||
Else
|
||||
dt_BuchungenZeilen = getBuchungenZeilenAMBAR(r("Rechnungsnummer"), r("Rechnungsdatum"), WdhDateiname)
|
||||
End If
|
||||
|
||||
If dt_BuchungenZeilen IsNot Nothing AndAlso dt_BuchungenZeilen.Rows.Count > 0 Then
|
||||
For Each rz In dt_BuchungenZeilen.Rows
|
||||
file.WriteLine(genBuchungsZeile(rz, SummeBuchungen, Geschaeftsjahr, FIRMA, curDifferenzbetrag, ambargubuchungen, r("Buchungstext"))) ' BuchungsZeilen...
|
||||
Next
|
||||
End If
|
||||
If curDifferenzbetrag <> 0 Then 'Differenz --> Ausgelich auf Diff.Konto
|
||||
file.WriteLine(genBuchungsZeileDiffBetrag(r, SummeBuchungen, Geschaeftsjahr, FIRMA, curDifferenzbetrag))
|
||||
End If
|
||||
If r("BelegartenNr") = 71 And Not ambargubuchungen Then 'GUTSCHRIFT ---> Immer am Schluss
|
||||
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, FIRMA, ambargubuchungen))
|
||||
End If
|
||||
Next
|
||||
|
||||
For Each r In dt_Buchungen.Rows
|
||||
If r("VZ") = 1 Then
|
||||
file.WriteLine(genBuchungsZeileVZ(r, SummeBuchungen, Geschaeftsjahr, FIRMA, ambargubuchungen))
|
||||
End If
|
||||
Next
|
||||
' file.WriteLine(genBuchungenEnd(SummeBuchungen))
|
||||
bool_DatenVorhanden = True
|
||||
|
||||
'Update Filename TrdIn 'NOCH NICHT!!!! -->JETZT DOCH!!!
|
||||
Dim varDateiname As String = IIf(ambargubuchungen, "AmbDateiname", "TrdinDateiname")
|
||||
Dim whereAmbarBuchungen As String = ""
|
||||
|
||||
If ambargubuchungen And ambarKreditor = "AG" Then
|
||||
whereAmbarBuchungen = "AND RechnungsKundenNr = 3013401 and RechnungsUstIdNr = 'U53187000' And BelegartenNr = 71"
|
||||
ElseIf ambargubuchungen And ambarKreditor = "CS" Then
|
||||
whereAmbarBuchungen = "AND RechnungsKundenNr = 3017683 and RechnungsUstIdNr = 'U68374109' And BelegartenNr = 71"
|
||||
'2 Dateien Belege betreffend BV und andere Belege
|
||||
|
||||
If dt_Buchungen.Rows.Count > 0 Then
|
||||
createBuchungszeilen(dt_Buchungen, ambargubuchungen, FIRMA, WdhDateiname, Geschaeftsjahr, path, pathArchiv, ambarKreditor, bool_DatenVorhanden, OpenFile, False)
|
||||
End If
|
||||
If dt_Buchungen_BV.Rows.Count > 0 Then
|
||||
createBuchungszeilen(dt_Buchungen_BV, ambargubuchungen, FIRMA, WdhDateiname, Geschaeftsjahr, path, pathArchiv, ambarKreditor, bool_DatenVorhanden, OpenFile, True)
|
||||
End If
|
||||
|
||||
If WdhDateiname = "" Then
|
||||
SQL.doSQL("update [tblTrdinInvoice] Set " & varDateiname & "='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & FIRMA.Firma_ID & " AND " & varDateiname & " is null " & whereAmbarBuchungen, "FMZOLL")
|
||||
Else
|
||||
SQL.doSQL("update [tblTrdinInvoice] Set " & varDateiname & "='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & FIRMA.Firma_ID & " AND " & varDateiname & " ='" & WdhDateiname & "' " & whereAmbarBuchungen, "FMZOLL")
|
||||
End If
|
||||
|
||||
file.Close()
|
||||
|
||||
'In Archiv sichern
|
||||
If pathArchiv <> "" Then
|
||||
If Not System.IO.Directory.Exists(pathArchiv) Then System.IO.Directory.CreateDirectory(pathArchiv)
|
||||
If path <> pathArchiv Then System.IO.File.Copy(path & Dateiname, pathArchiv & Dateiname)
|
||||
End If
|
||||
|
||||
If bool_DatenVorhanden Then
|
||||
If OpenFile Then Process.Start(path & Dateiname)
|
||||
Else
|
||||
System.IO.File.Delete(path & Dateiname)
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
|
||||
@@ -414,6 +353,89 @@ Public Class cSyska_Interface
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Private Shared Function createBuchungszeilen(dt As DataTable, ambargubuchungen As Boolean, firma As cFirmen, WdhDateiname As String, Geschaeftsjahr As Integer, path As String, pathArchiv As String, ambarKreditor As String, bool_DatenVorhanden As Boolean, OpenFile As Boolean, onlyBarverkauf As Boolean)
|
||||
|
||||
Dim file As System.IO.StreamWriter
|
||||
Dim Dateiname = IIf(ambargubuchungen, "GS_AMBAR_" & ambarKreditor & "_", "AVISO_BUBE_") & IIf(onlyBarverkauf, "BV_", "") & Now.ToString("ddMMyyyy_HHmm") & ".txt"
|
||||
file = My.Computer.FileSystem.OpenTextFileWriter(path & Dateiname, True, System.Text.Encoding.GetEncoding("iso-8859-15"))
|
||||
|
||||
Dim SummeBuchungen As Double = 0
|
||||
|
||||
|
||||
For Each r In dt.Rows
|
||||
|
||||
Dim curDifferenzbetrag As Double = 0
|
||||
If r("WährungFremd") Is DBNull.Value Then
|
||||
curDifferenzbetrag = Math.Round(If(r("RechnungsbetragLokal") < 0, 0 - r("RechnungsbetragLokal"), r("RechnungsbetragLokal")), 2)
|
||||
Else
|
||||
curDifferenzbetrag = Math.Round(If(r("RechnungsbetragFremd") < 0, 0 - r("RechnungsbetragFremd"), r("RechnungsbetragFremd")), 2)
|
||||
End If
|
||||
|
||||
If (r("BelegartenNr") = 70 Or ambargubuchungen And r("BelegartenNr") = 71) Then 'RECHNUNG ---> Immer am Anfang
|
||||
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, firma, ambargubuchungen))
|
||||
End If
|
||||
Dim dt_BuchungenZeilen As DataTable
|
||||
|
||||
If Not ambargubuchungen Then
|
||||
dt_BuchungenZeilen = getBuchungenZeilen(firma.Firma_ID, r("Rechnungsnummer"), r("Rechnungsdatum"), r("Source"), WdhDateiname)
|
||||
Else
|
||||
dt_BuchungenZeilen = getBuchungenZeilenAMBAR(r("Rechnungsnummer"), r("Rechnungsdatum"), r("Source"), WdhDateiname)
|
||||
End If
|
||||
|
||||
If dt_BuchungenZeilen IsNot Nothing AndAlso dt_BuchungenZeilen.Rows.Count > 0 Then
|
||||
For Each rz In dt_BuchungenZeilen.Rows
|
||||
file.WriteLine(genBuchungsZeile(rz, SummeBuchungen, Geschaeftsjahr, firma, curDifferenzbetrag, ambargubuchungen, r("Buchungstext"))) ' BuchungsZeilen...
|
||||
Next
|
||||
End If
|
||||
If curDifferenzbetrag <> 0 AndAlso Not (r("BelegartenNr") = 31 Or r("BelegartenNr") = 30) Then 'Differenz --> Ausgelich auf Diff.Konto -> nicht bei EINZAHLUNGEN/AUSZAHLUNGEN
|
||||
file.WriteLine(genBuchungsZeileDiffBetrag(r, SummeBuchungen, Geschaeftsjahr, firma, curDifferenzbetrag))
|
||||
End If
|
||||
If (r("BelegartenNr") = 71 Or r("BelegartenNr") = 31 Or r("BelegartenNr") = 30) And Not ambargubuchungen Then 'GUTSCHRIFT|EINNAHNE|AUSGABE ---> Immer am Schluss
|
||||
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, firma, ambargubuchungen))
|
||||
End If
|
||||
Next
|
||||
|
||||
For Each r In dt.Rows
|
||||
If r("VZ") = 1 Then
|
||||
file.WriteLine(genBuchungsZeileVZ(r, SummeBuchungen, Geschaeftsjahr, firma, ambargubuchungen))
|
||||
End If
|
||||
Next
|
||||
|
||||
|
||||
bool_DatenVorhanden = True
|
||||
|
||||
Dim varDateiname As String = IIf(ambargubuchungen, "AmbDateiname", "TrdinDateiname")
|
||||
Dim whereAmbarBuchungen As String = ""
|
||||
|
||||
If ambargubuchungen And ambarKreditor = "AG" Then
|
||||
whereAmbarBuchungen = "AND RechnungsKundenNr = 3013401 and RechnungsUstIdNr = 'U53187000' And BelegartenNr = 71"
|
||||
ElseIf ambargubuchungen And ambarKreditor = "CS" Then
|
||||
whereAmbarBuchungen = "AND RechnungsKundenNr = 3017683 and RechnungsUstIdNr = 'U68374109' And BelegartenNr = 71"
|
||||
|
||||
End If
|
||||
|
||||
If WdhDateiname = "" Then
|
||||
SQL.doSQL("update [tblTrdinInvoice] Set " & varDateiname & "='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & firma.Firma_ID & " AND " & varDateiname & " is null and isnull(BV, 0) = " & IIf(onlyBarverkauf, "1", "0") & whereAmbarBuchungen, "FMZOLL")
|
||||
Else
|
||||
SQL.doSQL("update [tblTrdinInvoice] Set " & varDateiname & "='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & firma.Firma_ID & " AND " & varDateiname & " ='" & WdhDateiname & "' and isnull(BV, 0) = " & IIf(onlyBarverkauf, "1", "0") & whereAmbarBuchungen, "FMZOLL")
|
||||
End If
|
||||
|
||||
file.Close()
|
||||
|
||||
If pathArchiv <> "" Then
|
||||
If Not System.IO.Directory.Exists(pathArchiv) Then System.IO.Directory.CreateDirectory(pathArchiv)
|
||||
If path <> pathArchiv Then System.IO.File.Copy(path & Dateiname, pathArchiv & Dateiname)
|
||||
End If
|
||||
|
||||
If bool_DatenVorhanden Then
|
||||
If OpenFile Then Process.Start(path & Dateiname)
|
||||
Else
|
||||
System.IO.File.Delete(path & Dateiname)
|
||||
End If
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
'Public Shared Function genDatensatz_BuchungenTEST(ByRef Firma_ID As Integer, Optional OpenFile As Boolean = False) As Boolean ' Optional OpenFile = False, Optional boolKunden = True, Optional boolBuchungen = True ) As Boolean
|
||||
' Try
|
||||
' Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(Firma_ID)
|
||||
@@ -549,11 +571,11 @@ Public Class cSyska_Interface
|
||||
,min(WährungFremd) as WährungFremd,min(SteuerbetragFremd) as SteuerbetragFremd,min(RechnungsbetragFremd) as RechnungsbetragFremd,min(TrdinDateiname) as TrdinDateiname,min(Abgleich_op_debitor+0) as Abgleich_op_debitor
|
||||
,min(Nettozahlungsziel) as Nettozahlungsziel,min(Firma_ID) as Firma_ID,min(UStVAn_ID) as UStVAn_ID /*,Leistungsnummer,Leistungsbezeichnung,Steuerpflichtig*/,sum(PROD.SteuerpflichtigerBetragLokal) as SteuerpflichtigerBetragLokal
|
||||
,sum(PROD.SteuerfreierBetragLokal) as SteuerfreierBetragLokal,sum(PROD.SteuerpflichtigerBetragFremd) as SteuerpflichtigerBetragFremd,sum(PROD.SteuerfreierBetragFremd) as SteuerfreierBetragFremd,min(Belegdaten) as Belegdaten
|
||||
,min(Sachkonto) as Sachkonto,min(Buchungstext) as Buchungstext,Sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal]) As BetragLokal, Sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd]) As BetragFremd, MAX(VZ) as VZ, SUM(isnull(PROD.VZBetrag,0)) as VZBetrag
|
||||
,min(Sachkonto) as Sachkonto,min(Buchungstext) as Buchungstext,Sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal]) As BetragLokal, Sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd]) As BetragFremd, MAX(VZ) as VZ, SUM(isnull(PROD.VZBetrag,0)) as VZBetrag, IVO.BV, IVO.Source
|
||||
|
||||
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum=PROD.Rechnungsdatum
|
||||
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum=PROD.Rechnungsdatum and IVO.Source = PROD.Source
|
||||
" & where & "
|
||||
group by Firma_id, IVO.Rechnungsnummer,IVO.rechnungsdatum/*,Leistungsnummer,Leistungsbezeichnung,Steuerpflichtig*/
|
||||
group by Firma_id, IVO.Rechnungsnummer,IVO.rechnungsdatum, IVO.BV, IVO.Source/*,Leistungsnummer,Leistungsbezeichnung,Steuerpflichtig*/
|
||||
ORDER BY IVO.Rechnungsdatum, IVO.Rechnungsnummer "
|
||||
' --and IVO.Rechnungsnummer=19400002
|
||||
Return SQL.loadDgvBySql(sqlStr, "FMZOLL", 9800)
|
||||
@@ -597,32 +619,32 @@ Public Class cSyska_Interface
|
||||
|
||||
'End Function
|
||||
|
||||
Shared Function getBuchungenZeilen(Firma_ID As Integer, Rechnungsnummer As Integer, Rechnungsdatum As Date, Optional WdhDateiname As String = "") As DataTable
|
||||
Shared Function getBuchungenZeilen(Firma_ID As Integer, Rechnungsnummer As Integer, Rechnungsdatum As Date, Source As String, Optional WdhDateiname As String = "") As DataTable
|
||||
|
||||
|
||||
Dim sqlStr = " SELECT Sachkonto,IVO.Rechnungsdatum Rechnungsdatum,IVO.Rechnungsnummer Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,steuerpflichtig,[Steuersatz %] Steuersatz,BelegartenNr,
|
||||
WährungFremd, WährungLokal,sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal])BetragLokal,
|
||||
sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd])BetragFremd ,sum(RechnungsbetragLokal) RechnungsbetragLokal,sum(RechnungsbetragFremd) RechnungsbetragFremd
|
||||
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum = PROD.Rechnungsdatum
|
||||
WHERE Firma_ID ='" & Firma_ID & "' AND IVO.Rechnungsnummer ='" & Rechnungsnummer & "' AND cast(IVO.Rechnungsdatum as date) ='" & Rechnungsdatum.ToShortDateString & "' AND " & If(WdhDateiname = "", " TrdinDateiname Is Null ", " TrdinDateiname ='" & WdhDateiname & "' ") & "
|
||||
GROUP BY Sachkonto,IVO.Rechnungsdatum,IVO.Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,steuerpflichtig,[Steuersatz %] ,BelegartenNr,WährungFremd,WährungLokal
|
||||
ORDER BY Rechnungsdatum, Rechnungsnummer "
|
||||
sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd])BetragFremd ,sum(RechnungsbetragLokal) RechnungsbetragLokal,sum(RechnungsbetragFremd) RechnungsbetragFremd, IVO.Source
|
||||
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum = PROD.Rechnungsdatum and IVO.Source = PROD.Source
|
||||
WHERE Firma_ID ='" & Firma_ID & "' AND IVO.Source = '" & Source & "' AND IVO.Rechnungsnummer ='" & Rechnungsnummer & "' AND cast(IVO.Rechnungsdatum as date) ='" & Rechnungsdatum.ToShortDateString & "' AND " & If(WdhDateiname = "", " TrdinDateiname Is Null ", " TrdinDateiname ='" & WdhDateiname & "' ") & "
|
||||
GROUP BY Sachkonto,IVO.Rechnungsdatum,IVO.Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,steuerpflichtig,[Steuersatz %] ,BelegartenNr,WährungFremd,WährungLokal, IVO.Source
|
||||
ORDER BY Rechnungsdatum, Rechnungsnummer, IVO.Source "
|
||||
' --and IVO.Rechnungsnummer=19400002
|
||||
Return SQL.loadDgvBySql(sqlStr, "FMZOLL", 9800)
|
||||
|
||||
End Function
|
||||
|
||||
Shared Function getBuchungenZeilenAMBAR(Rechnungsnummer As Integer, Rechnungsdatum As Date, Optional WdhDateiname As String = "") As DataTable
|
||||
Shared Function getBuchungenZeilenAMBAR(Rechnungsnummer As Integer, Rechnungsdatum As Date, Source As String, Optional WdhDateiname As String = "") As DataTable
|
||||
|
||||
|
||||
Dim sqlStr = " SELECT isnull(le.SachkontoEUSteuerfrei,'0000') as Sachkonto ,IVO.Rechnungsdatum Rechnungsdatum,IVO.Rechnungsnummer Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,PROD.steuerpflichtig,[Steuersatz %] Steuersatz,BelegartenNr,
|
||||
WährungFremd, WährungLokal,sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal])BetragLokal,
|
||||
sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd])BetragFremd ,sum(RechnungsbetragLokal) RechnungsbetragLokal,sum(RechnungsbetragFremd) RechnungsbetragFremd
|
||||
FROM VERAG.dbo.tblTrdinInvoice as IVO
|
||||
left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum = PROD.Rechnungsdatum
|
||||
left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum = PROD.Rechnungsdatum and IVO.Source = PROD.Source
|
||||
left join [Leistungen] as le on le.LeistungsNr = PROD.Leistungsnummer
|
||||
WHERE Firma_ID ='24' AND IVO.Rechnungsnummer ='" & Rechnungsnummer & "' AND cast(IVO.Rechnungsdatum as date) ='" & Rechnungsdatum.ToShortDateString & "' AND " & If(WdhDateiname = "", " AmbDateiname Is Null ", " AmbDateiname ='" & WdhDateiname & "' ") & "
|
||||
GROUP BY le.SachkontoEUSteuerfrei ,IVO.Rechnungsdatum,IVO.Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,PROD.steuerpflichtig,[Steuersatz %] ,BelegartenNr,WährungFremd,WährungLokal
|
||||
WHERE Firma_ID ='24' AND IVO.Source = '" & Source & "' AND IVO.Rechnungsnummer ='" & Rechnungsnummer & "' AND cast(IVO.Rechnungsdatum as date) ='" & Rechnungsdatum.ToShortDateString & "' AND " & If(WdhDateiname = "", " AmbDateiname Is Null ", " AmbDateiname ='" & WdhDateiname & "' ") & "
|
||||
GROUP BY le.SachkontoEUSteuerfrei ,IVO.Rechnungsdatum,IVO.Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,PROD.steuerpflichtig,[Steuersatz %] ,BelegartenNr,WährungFremd,WährungLokal, IVO.Source
|
||||
ORDER BY Rechnungsdatum, Rechnungsnummer "
|
||||
' --and IVO.Rechnungsnummer=19400002
|
||||
Return SQL.loadDgvBySql(sqlStr, "FMZOLL", 9800)
|
||||
@@ -735,6 +757,79 @@ Public Class cSyska_Interface
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
ElseIf row("BelegartenNr") = 31 Then 'Einnahme
|
||||
|
||||
Dim FiBuWährung = ""
|
||||
Dim FiBuSollkontonummer = "0"
|
||||
Dim FiBuHabenkontonummer = row("KundenNrZentrale")
|
||||
Dim FiBuBruttobetrag As Double
|
||||
|
||||
If row("WährungFremd") Is DBNull.Value Then
|
||||
FiBuWährung = row("WährungLokal")
|
||||
FiBuBruttobetrag = (CDbl(row("RechnungsbetragLokal")))
|
||||
Else
|
||||
FiBuWährung = row("WährungFremd")
|
||||
FiBuBruttobetrag = (CDbl(row("RechnungsbetragFremd")))
|
||||
End If
|
||||
|
||||
Dim FiBuEigenbruttobetrag = CDbl(row("RechnungsbetragLokal"))
|
||||
|
||||
genBuchungsZeileSum = "L" & vbTab
|
||||
genBuchungsZeileSum &= CDate(row("Rechnungsdatum")).ToString("dd.MM.yyyy") & vbTab
|
||||
genBuchungsZeileSum &= FormatStringSYS(row("Rechnungsnummer")) & vbTab
|
||||
|
||||
genBuchungsZeileSum &= FiBuSollkontonummer & vbTab
|
||||
genBuchungsZeileSum &= FiBuHabenkontonummer & vbTab
|
||||
|
||||
genBuchungsZeileSum &= IIf(row("Buchungstext") <> "" AndAlso row("Buchungstext").ToString.Contains("Zinsen"), row("Buchungstext") & vbTab, row("FilialenNr") & "/" & row("AbfertigungsNr") & "/" & CDbl(row("UnterNr")).ToString("00") & vbTab)
|
||||
|
||||
genBuchungsZeileSum &= Format(CDbl(FiBuBruttobetrag), fmt) & vbTab
|
||||
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuersatz
|
||||
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuerbetrag
|
||||
genBuchungsZeileSum &= FiBuWährung & vbTab
|
||||
genBuchungsZeileSum &= Format(CDbl(FiBuEigenbruttobetrag), fmt) & vbTab
|
||||
|
||||
|
||||
ElseIf row("BelegartenNr") = 30 Then 'Ausgabe
|
||||
|
||||
Dim FiBuSollkontonummer = "0"
|
||||
Dim FiBuHabenkontonummer = row("KundenNrZentrale") '2700
|
||||
|
||||
Dim Bruttobetrag As Double
|
||||
Dim FiBuWährung = ""
|
||||
|
||||
If row("WährungFremd") Is DBNull.Value Then
|
||||
Bruttobetrag = row("RechnungsbetragLokal") 'Bruttobetrag
|
||||
Else
|
||||
Bruttobetrag = row("RechnungsbetragFremd") 'Bruttobetrag
|
||||
End If
|
||||
If row("WährungFremd") Is DBNull.Value Then
|
||||
FiBuWährung = row("WährungLokal")
|
||||
Else
|
||||
FiBuWährung = row("WährungFremd")
|
||||
End If
|
||||
|
||||
Dim FiBuEigenbruttobetrag = row("RechnungsbetragLokal")
|
||||
|
||||
genBuchungsZeileSum = "L" & vbTab
|
||||
genBuchungsZeileSum &= CDate(row("Rechnungsdatum")).ToString("dd.MM.yyyy") & vbTab
|
||||
genBuchungsZeileSum &= FormatStringSYS(row("Rechnungsnummer")) & vbTab
|
||||
|
||||
genBuchungsZeileSum &= FiBuSollkontonummer & vbTab
|
||||
genBuchungsZeileSum &= FiBuHabenkontonummer & vbTab
|
||||
'genBuchungsZeileSum &= row("FilialenNr") & "/" & row("AbfertigungsNr") & "/" & CDbl(row("UnterNr")).ToString("00") & vbTab
|
||||
genBuchungsZeileSum &= IIf(row("Buchungstext") <> "" AndAlso row("Buchungstext").ToString.Contains("Zinsen"), row("Buchungstext") & vbTab, row("FilialenNr") & "/" & row("AbfertigungsNr") & "/" & CDbl(row("UnterNr")).ToString("00") & vbTab)
|
||||
|
||||
genBuchungsZeileSum &= Format(CDbl(Bruttobetrag), fmt) & vbTab
|
||||
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuersatz
|
||||
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuerbetrag
|
||||
genBuchungsZeileSum &= FiBuWährung & vbTab
|
||||
genBuchungsZeileSum &= Format(CDbl(FiBuEigenbruttobetrag), fmt) & vbTab
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
@@ -752,11 +847,11 @@ Public Class cSyska_Interface
|
||||
Dim FiBuSteuerbetrag As String
|
||||
Dim FiBuSollkontonummer As Integer
|
||||
Dim FiBuHabenkontonummer As Integer
|
||||
|
||||
Dim FiBuWährung = "EUR"
|
||||
|
||||
Select Case row("BelegartenNr")
|
||||
Case 70 'Rechnung
|
||||
|
||||
Case 70 'Rechnung
|
||||
FiBuSollkontonummer = "0"
|
||||
FiBuHabenkontonummer = If(row("Sachkonto") IsNot DBNull.Value AndAlso IsNumeric(row("Sachkonto")), row("Sachkonto"), 0)
|
||||
If row("WährungFremd") Is DBNull.Value Then
|
||||
@@ -784,6 +879,28 @@ Public Class cSyska_Interface
|
||||
|
||||
End If
|
||||
|
||||
Case 31 'Einnahme
|
||||
|
||||
FiBuSollkontonummer = 2700 'If(row("Sachkonto") IsNot DBNull.Value AndAlso IsNumeric(row("Sachkonto")), row("Sachkonto"), 0)
|
||||
FiBuHabenkontonummer = "0"
|
||||
If row("WährungFremd") Is DBNull.Value Then
|
||||
curNettobetrag = row("BetragLokal")
|
||||
Else
|
||||
curNettobetrag = row("BetragFremd")
|
||||
End If
|
||||
|
||||
Case 30 'Ausgabe
|
||||
|
||||
FiBuSollkontonummer = If(row("Sachkonto") IsNot DBNull.Value AndAlso IsNumeric(row("Sachkonto")), row("Sachkonto"), 0)
|
||||
FiBuHabenkontonummer = "0"
|
||||
If row("WährungFremd") Is DBNull.Value Then
|
||||
curNettobetrag = row("BetragLokal")
|
||||
Else
|
||||
curNettobetrag = row("BetragFremd")
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End Select
|
||||
|
||||
If CBool(row("steuerpflichtig")) Then
|
||||
@@ -935,6 +1052,14 @@ Public Class cSyska_Interface
|
||||
Case 71 'Gutschrift
|
||||
FiBuSollkontonummer = "8490"
|
||||
FiBuHabenkontonummer = "0"
|
||||
|
||||
Case 31 'Einnahme
|
||||
FiBuSollkontonummer = "8490"
|
||||
FiBuHabenkontonummer = "0"
|
||||
Case 30 'Ausgabe
|
||||
FiBuSollkontonummer = "8490"
|
||||
FiBuHabenkontonummer = "0"
|
||||
|
||||
End Select
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Reflection
|
||||
Imports Spire.Pdf
|
||||
|
||||
Public Class cGesamtsicherheitsReferenz
|
||||
|
||||
@@ -14,6 +13,7 @@ Public Class cGesamtsicherheitsReferenz
|
||||
Property gsr_Saldo As Object = Nothing
|
||||
Property gsr_ATR As Boolean = False
|
||||
Property gsr_standort As Object = Nothing
|
||||
Property gsr_firma As Object = Nothing
|
||||
|
||||
Public hasEntry = False
|
||||
|
||||
@@ -23,11 +23,23 @@ Public Class cGesamtsicherheitsReferenz
|
||||
|
||||
End Sub
|
||||
|
||||
Sub New(_gsr_standort)
|
||||
|
||||
Sub New(gsr_id As Integer)
|
||||
gsr_id = gsr_id
|
||||
LOADID()
|
||||
End Sub
|
||||
|
||||
Sub New(_gsr_standort As String)
|
||||
gsr_standort = _gsr_standort
|
||||
LOAD()
|
||||
End Sub
|
||||
|
||||
Sub New(_gsr_standort As String, _gsr_firma As String)
|
||||
gsr_standort = _gsr_standort
|
||||
gsr_firma = _gsr_firma
|
||||
LOAD(_gsr_firma)
|
||||
End Sub
|
||||
|
||||
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("gsr_standort", gsr_standort,, True))
|
||||
@@ -56,7 +68,7 @@ Public Class cGesamtsicherheitsReferenz
|
||||
Return SQL.doSQLVarList(sqlstr, "AVISO", , list)
|
||||
End Function
|
||||
|
||||
Public Sub LOAD()
|
||||
Public Sub LOAD(Optional Firma As String = "")
|
||||
|
||||
|
||||
Try
|
||||
@@ -64,8 +76,41 @@ Public Class cGesamtsicherheitsReferenz
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionAVISO()
|
||||
|
||||
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblGesamtsicherheitReferenz WHERE gsr_Standort=@gsr_standort ", conn)
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblGesamtsicherheitReferenz WHERE gsr_Standort=@gsr_standort " & IIf(Firma <> "", "AND gsr_firma=@gsr_firma", ""), conn)
|
||||
cmd.Parameters.AddWithValue("@gsr_standort", gsr_standort)
|
||||
If Firma <> "" Then cmd.Parameters.AddWithValue("@gsr_firma", gsr_firma)
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
For Each li In getParameterList()
|
||||
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
|
||||
|
||||
If dr.Item(li.Text) Is DBNull.Value Then
|
||||
propInfo.SetValue(Me, Nothing)
|
||||
Else
|
||||
propInfo.SetValue(Me, dr.Item(li.Text))
|
||||
End If
|
||||
Next
|
||||
hasEntry = True
|
||||
End If
|
||||
dr.Close()
|
||||
End Using
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
|
||||
Public Sub LOADID(Optional Firma As String = "")
|
||||
|
||||
|
||||
Try
|
||||
hasEntry = False
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionAVISO()
|
||||
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblGesamtsicherheitReferenz WHERE gsr_id=@gsr_id ", conn)
|
||||
cmd.Parameters.AddWithValue("@gsr_id", gsr_id)
|
||||
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
For Each li In getParameterList()
|
||||
|
||||
Reference in New Issue
Block a user