Prüfung bei Rechnungsdruck ob ReNr in DB gespeichert wurde, ansonsten abbruch!
This commit is contained in:
@@ -1315,7 +1315,7 @@ Public Class cFakturierung
|
||||
Return False
|
||||
End If
|
||||
Else
|
||||
MsgBox("Fehler: Kein Rechnugsempfänger gefunden!")
|
||||
MsgBox("Fehler: Kein Rechnungsempfänger gefunden!")
|
||||
Return False
|
||||
End If
|
||||
Else
|
||||
@@ -1325,6 +1325,10 @@ Public Class cFakturierung
|
||||
End If
|
||||
End If
|
||||
|
||||
If Not RECHNUNG.checkRechnungsNrIsSet() Then
|
||||
MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen")
|
||||
Return False
|
||||
End If
|
||||
|
||||
'Rechnugnsdruck = Individuell für deise Rechnung, wird optional mitgegeben
|
||||
' Dim RG_Bezeichnung = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "_Rechnung_" & If(RECHNUNG.RechnungsNr, "") & ".pdf"
|
||||
@@ -1450,7 +1454,7 @@ Public Class cFakturierung
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler bim Öffnen des Mail-Programmes. PDF wird geladen!")
|
||||
MsgBox("Fehler beim Öffnen des Mail-Programmes. PDF wird geladen!")
|
||||
Process.Start(tmpPath)
|
||||
End Try
|
||||
rpt.Dispose()
|
||||
@@ -2065,7 +2069,14 @@ Public Class cFakturierung
|
||||
End If
|
||||
RG.SAVE()
|
||||
|
||||
found = True
|
||||
|
||||
If Not RG.checkRechnungsNrIsSet() Then
|
||||
MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen")
|
||||
Return False
|
||||
Else
|
||||
found = True
|
||||
End If
|
||||
|
||||
End If
|
||||
Next
|
||||
|
||||
@@ -2076,6 +2087,7 @@ Public Class cFakturierung
|
||||
If path <> "" Then listPDFs.Add(path)
|
||||
End If
|
||||
lastAktuelle_RgNr = Aktuelle_RgNr
|
||||
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message & ex.StackTrace)
|
||||
End Try
|
||||
|
||||
@@ -275,9 +275,10 @@ Public Class frmFaktEmail
|
||||
Dim lastAktuelle_RgNr As Integer = -1
|
||||
'Rechnung erstellen:
|
||||
'-----------------------------------------------------------------
|
||||
Dim RechnungsNrisSet As Boolean = False
|
||||
Dim AD As New VERAG_PROG_ALLGEMEIN.cAdressen(KdNr)
|
||||
If RechnungsNr <= 0 Then
|
||||
cFakturierung.doSAMMELRechnungsDruck(Firma_ID, SammelrechungArt, DatumBis, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, KdNr, 4, listPDFs, SB, lastAktuelle_RgNr, DruckDatumZeit, AvisoIds, cbxExcelEvolog.Checked, SonstAnlagen,, cbxTransFerry.Checked, FakturierungsGruppe, Abfertigungsart)
|
||||
RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(Firma_ID, SammelrechungArt, DatumBis, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, KdNr, 4, listPDFs, SB, lastAktuelle_RgNr, DruckDatumZeit, AvisoIds, cbxExcelEvolog.Checked, SonstAnlagen,, cbxTransFerry.Checked, FakturierungsGruppe, Abfertigungsart)
|
||||
RechnungsNr = lastAktuelle_RgNr
|
||||
Else
|
||||
Dim path = ""
|
||||
@@ -287,6 +288,9 @@ Public Class frmFaktEmail
|
||||
listPDFs.Add(path)
|
||||
End If
|
||||
|
||||
If Not RechnungsNrisSet Then 'Abbruch bei fehlender RE-Nr
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If cbxRgKopieDrucken.Checked Then
|
||||
'KOPIE DRUCK
|
||||
@@ -299,83 +303,83 @@ Public Class frmFaktEmail
|
||||
End If
|
||||
|
||||
Dim outl As New Outlook.Application
|
||||
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
|
||||
Mail = outl.CreateItem(0)
|
||||
Mail.Subject = txtSubject.Text
|
||||
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
|
||||
Mail = outl.CreateItem(0)
|
||||
Mail.Subject = txtSubject.Text
|
||||
|
||||
|
||||
'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)
|
||||
|
||||
|
||||
Dim TextHTML = "<div style=""font-family:Calibri, Arial"">" & RichTextBox.Text.Replace(ControlChars.Lf, "<br>") & cFakturierung.getSignature(AD.LandKz, Firma_ID,,,, additionalLine) & "</div>"
|
||||
|
||||
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.Add(New cFakt_MailATTach(l, ""))
|
||||
Next
|
||||
For Each l In SonstAnlagen
|
||||
' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
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
|
||||
|
||||
'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
|
||||
'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)
|
||||
|
||||
|
||||
Dim TextHTML = "<div style=""font-family:Calibri, Arial"">" & RichTextBox.Text.Replace(ControlChars.Lf, "<br>") & cFakturierung.getSignature(AD.LandKz, Firma_ID,,,, additionalLine) & "</div>"
|
||||
|
||||
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.Add(New cFakt_MailATTach(l, ""))
|
||||
Next
|
||||
For Each l In SonstAnlagen
|
||||
' Mail.Attachments.Add(l, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
|
||||
ATTACHMENTS.Add(New cFakt_MailATTach(l, ""))
|
||||
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
|
||||
|
||||
'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
|
||||
'-----------------------------------------------------------------
|
||||
|
||||
|
||||
addAttachments(Mail, lastAktuelle_RgNr, cbxMergePDF.Checked)
|
||||
|
||||
|
||||
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
|
||||
'-----------------------------------------------------------------
|
||||
|
||||
|
||||
addAttachments(Mail, lastAktuelle_RgNr, cbxMergePDF.Checked)
|
||||
|
||||
|
||||
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
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler beim Öffnen des Mail-Programmes." & ex.Message & ex.StackTrace)
|
||||
'Process.Start(a)
|
||||
@@ -390,6 +394,8 @@ Public Class frmFaktEmail
|
||||
If RECHNUNG.Status <> 0 OrElse vbYes = MsgBox("Möchten Sie das PDF als Mail-Anhang erstellen?" & vbNewLine & "Es wird eine Rechnungsnummer vergeben, die Rechnung gilt somit als gedruckt und kann nicht mehr bearbeitet werden.", vbYesNoCancel) Then
|
||||
abfNr = " Pos-Nr.: " & RECHNUNG.FilialenNr & "-" & RECHNUNG.AbfertigungsNr & "-" & RECHNUNG.SpeditionsbuchUnterNr
|
||||
|
||||
|
||||
|
||||
Try
|
||||
Dim outl As New Outlook.Application
|
||||
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
|
||||
@@ -414,6 +420,12 @@ Public Class frmFaktEmail
|
||||
If Not cFakturierung.doRechnungsDruck(RECHNUNG,,, 4, pathRG,, cbxOriginalPrint.Checked) Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
'If Not RECHNUNG.checkRechnungsNrIsSet() Then
|
||||
' MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen")
|
||||
' Exit Sub
|
||||
'End If
|
||||
|
||||
RechnungsNr = RECHNUNG.RechnungsNr
|
||||
|
||||
If cbxRgKopieDrucken.Checked Then
|
||||
|
||||
@@ -254,10 +254,16 @@ Public Class frmFaktSammelRgDrucken
|
||||
Me.Cursor = Cursors.WaitCursor
|
||||
Dim listPDFs As New List(Of String)
|
||||
Dim SonstAnlagen As New List(Of String)
|
||||
cFakturierung.doSAMMELRechnungsDruck(cboFirma._value, Sammelrechung, CDate(txtZeitraumBis.Text), CDate(txtRechnungsdatum.Text), cboPrinter.Text, cbxEinzelAnlagen.Checked, cbxSammelbericht.Checked, getSelectionKdNr, If(ausgabeArt = 1, -1, 4), listPDFs, cboSB._value,,, getAvisoIds, cbxEVOLOG.Checked, SonstAnlagen, vorschau, cbxTransFerry.Checked, cboFaktGrp._value, cboAbfertigungsart._value)
|
||||
Dim RechnungsNrisSet As Boolean = False
|
||||
RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(cboFirma._value, Sammelrechung, CDate(txtZeitraumBis.Text), CDate(txtRechnungsdatum.Text), cboPrinter.Text, cbxEinzelAnlagen.Checked, cbxSammelbericht.Checked, getSelectionKdNr, If(ausgabeArt = 1, -1, 4), listPDFs, cboSB._value,,, getAvisoIds, cbxEVOLOG.Checked, SonstAnlagen, vorschau, cbxTransFerry.Checked, cboFaktGrp._value, cboAbfertigungsart._value)
|
||||
|
||||
'-------------- für PDF-Sammel-Rechnung --------------
|
||||
|
||||
If Not RechnungsNrisSet Then
|
||||
MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If cbxZusammenfassen.Checked Then ' Gibt an, ob mehrere Sammelrechnung zusammengefasst werden sollten
|
||||
|
||||
Select Case ausgabeArt
|
||||
|
||||
@@ -148,6 +148,13 @@ Public Class cRechnungsausgang
|
||||
Return cnt > 0
|
||||
End Function
|
||||
|
||||
Public Function checkRechnungsNrIsSet() As Boolean
|
||||
'Prüfugn ob Eintrag mit dieser Rechnungsnr in DB existiert
|
||||
If Me.RechnungsNr <= 0 Then Return False
|
||||
Dim cnt = SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Rechnungsausgang] WHERE RechnungsNr='" & Me.RechnungsNr & "' and DruckDatumZeit is not null and Buchungsjahr = " & Me.Buchungsjahr & " and Firma_ID = '" & Me.Firma_ID & "'", "FMZOLL")
|
||||
Return cnt > 0
|
||||
End Function
|
||||
|
||||
Public Shared Function getMaxRGUnterNr(FilialenNr As Integer, AbfertigungsNr As Integer, SpeditionsbuchUnterNr As Integer) As Integer
|
||||
' Dim Nr = SQL.getValueTxtBySql("Select isnull([UnterNr], -1) + 1 FROM [Rechnungsausgang] where [FilialenNr]='" & FilialenNr & "' And AbfertigungsNr='" & AbfertigungsNr & "' And SpeditionsbuchUnterNr='" & SpeditionsbuchUnterNr & "' ORDER BY [UnterNr] desc", "FMZOLL")
|
||||
Dim Nr = SQL.getValueTxtBySql("Select TOP 1 isnull([UnterNr], -1) + 1 FROM [Rechnungsausgang] where [FilialenNr]='" & FilialenNr & "' And AbfertigungsNr='" & AbfertigungsNr & "' ORDER BY [UnterNr] desc", "FMZOLL")
|
||||
@@ -485,7 +492,7 @@ Public Class cRechnungsausgang
|
||||
End If
|
||||
|
||||
Return True
|
||||
End Function
|
||||
End Function
|
||||
|
||||
Public Function SAVE_POSITIONEN(RK_ID) As Boolean
|
||||
If DELETE_POSITIONEN() Then ' zuerst Einträge löschen...
|
||||
|
||||
Reference in New Issue
Block a user