Public Class clsFakturaFunktionen Public Sub Vorschau_Rechnung(ByVal nrbehandlung As String) Dim db As New clsDB Dim db1 As New clsDB Dim anzahlraten As Integer = 0 'db.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.Behandlungsnr.ToString) db.Get_Tabledata("Behandlu", "where nrbehandlung=" + nrbehandlung) db1.Get_Tabledata("estyp", "where nrestyp=" + db.dsDaten.Tables(0).Rows(0).Item("nrestyp").ToString) anzahlraten = db.dsDaten.Tables(0).Rows(0).Item("Anzahlraten") If anzahlraten = 0 Then anzahlraten = 1 Dim reportnr As Integer reportnr = db.Get_ReportNr(db1.dsDaten.Tables(0).Rows(0).Item("estyp")) Dim Folgeauswertung As Integer Dim Separater_Druckjob As Boolean Dim doloop As Boolean = True db.Get_Tabledata("Auswertung", "where auswertungnr=" + reportnr.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") While doloop = True For i As Integer = 1 To anzahlraten ' Dim f As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString) Dim f As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + nrbehandlung, nrbehandlung) f.Show() f.Print_Rechnung(True, False, i) If anzahlraten > 1 And i < 2 And Folgeauswertung > 0 Then reportnr = Folgeauswertung db.Get_Tabledata("Auswertung", "where auswertungnr=" + Folgeauswertung.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Dim f1 As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + nrbehandlung, nrbehandlung) f1.Show() f1.Print_Rechnung(True, False, i) reportnr = db.Get_ReportNr(db1.dsDaten.Tables(0).Rows(0).Item("estyp")) End If Next i If Folgeauswertung > 0 And anzahlraten < 2 Then reportnr = Folgeauswertung db.Get_Tabledata("Auswertung", "where auswertungnr=" + Folgeauswertung.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Else doloop = False End If End While End Sub Public Sub Rechnungskopie(ByVal nrbehandlung As String, Optional preview As Boolean = False, Optional asPDF As Boolean = False, Optional PerMail As Boolean = False) Globals.pdfCollection.Clear() Dim db As New clsDB Dim db1 As New clsDB Dim db2 As New clsDB Globals.RGCollection.Clear() Dim anzahlraten As Integer = 0 Dim Empfaenger As String = "" db.Get_Tabledata("Behandlu", "where nrbehandlung=" + nrbehandlung) Dim behandlungsnr As Integer = db.dsDaten.Tables(0).Rows(0).Item("nrbehandlung") anzahlraten = db.dsDaten.Tables(0).Rows(0).Item("Anzahlraten") Empfaenger = db.dsDaten.Tables(0).Rows(0).Item("Empfaenger") If anzahlraten = 0 Then anzahlraten = 1 db.Get_Tabledata("estyp", "where nrestyp=" + db.dsDaten.Tables(0).Rows(0).Item("nrestyp").ToString) Dim reportnr As Integer Dim ReportNrOriginal As Integer reportnr = db.Get_ReportNr(db.dsDaten.Tables(0).Rows(0).Item("estyp")) ReportNrOriginal = reportnr Dim fakturanr As Integer Try db2.Get_Tabledata("Faktura", "", "Select top 10 nrfaktura from faktura where nrbehandlung=" + behandlungsnr.ToString + " and status <> 9 order by erstellt_am asc ") fakturanr = db2.dsDaten.Tables(0).Rows(0).Item(0) Catch fakturanr = 0 End Try Globals.FakturaNr = fakturanr Dim Folgeauswertung As Integer Dim Separater_Druckjob As Boolean Dim doloop As Boolean = True db.Get_Tabledata("Auswertung", "where auswertungnr=" + reportnr.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Dim hauptfaktura As Integer While doloop = True For i As Integer = 1 To anzahlraten fakturanr = db2.dsDaten.Tables(0).Rows(i - 1).Item(0) Globals.FakturaNr = fakturanr If i = 1 And Empfaenger <> "" Then Dim f0 As New frmReportView(9999, False, "Vorschau Rechung", " where nrbehandlung = " + nrbehandlung.ToString, nrbehandlung.ToString, asPDF) f0.Visible = False f0.Show() f0.Visible = False f0.Fakturierung(9999, nrbehandlung, "", i, buchen:=False) f0.Close() Globals.FakturaNr = 0 End If Dim f As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + behandlungsnr.ToString, behandlungsnr.ToString, asPDF) If Not preview Then f.Visible = False Else f.Visible = True If fakturanr = 0 Then If preview Then f.Fakturierung_Vorschau(reportnr, behandlungsnr, "", i, 1, fakturanr) Else f.Fakturierung(reportnr, behandlungsnr, "", i, 1, fakturanr) End If Else If preview Then f.Fakturierung_Vorschau(reportnr, behandlungsnr, "", i, 1, fakturanr) Else f.Fakturierung(reportnr, behandlungsnr, "", i, 1, fakturanr) End If End If If Not preview Then f.Close() If anzahlraten > 1 And i < 2 And Folgeauswertung > 0 Then reportnr = Folgeauswertung db.Get_Tabledata("Auswertung", "where auswertungnr=" + Folgeauswertung.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Dim f1 As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + behandlungsnr.ToString, behandlungsnr.ToString, asPDF) f1.Visible = False f1.Show() f1.Fakturierung(reportnr, behandlungsnr, "", i, 1, fakturanr) f1.Close() reportnr = ReportNrOriginal 'fakturanr = fakturanr - 1 End If 'fakturanr = fakturanr + 1 Next i If Folgeauswertung > 0 And anzahlraten < 2 Then reportnr = Folgeauswertung db.Get_Tabledata("Auswertung", "where auswertungnr=" + Folgeauswertung.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Else doloop = False End If End While If preview = False Then Dim pdfh As New clspdfhelper pdfh.HandlePDF(asPDF, PerMail, 2, clsMailClient.EmpfangerFrom.Behandlung, nrbehandlung) End If End Sub Public Sub Mahnung(ByVal Fakturanr As String, ByVal Stufe As Integer, Optional Preview As Boolean = False, Optional Design As Boolean = False) Globals.pdfCollection.Clear() Dim db As New clsDB Dim db1 As New clsDB Dim anzahlraten As Integer = 0 Dim Behandlungsnr As Integer Dim Empfaenger As String = "" db.Get_Tabledata("Faktura", "", "Select nrbehandlung from faktura where nrfaktura=" + Fakturanr) Behandlungsnr = db.dsDaten.Tables(0).Rows(0).Item("nrbehandlung") db.Get_Tabledata("Behandlu", "where nrbehandlung=" + db.dsDaten.Tables(0).Rows(0).Item("nrbehandlung").ToString) db1.Get_Tabledata("estyp", "where nrestyp=" + db.dsDaten.Tables(0).Rows(0).Item("nrestyp").ToString) anzahlraten = db.dsDaten.Tables(0).Rows(0).Item("Anzahlraten") Empfaenger = db.dsDaten.Tables(0).Rows(0).Item("Empfaenger") If anzahlraten = 0 Then anzahlraten = 1 Dim reportnr As Integer reportnr = db.Get_ReportNr(db1.dsDaten.Tables(0).Rows(0).Item("estyp")) reportnr = db1.dsDaten.Tables(0).Rows(0).Item("mahnnummer") + Stufe Globals.FakturaNr = 0 Dim Folgeauswertung As Integer Dim Separater_Druckjob As Boolean Dim doloop As Boolean = True db.Get_Tabledata("Auswertung", "where auswertungnr=" + reportnr.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Dim hauptfaktura As Integer Dim buchen As Boolean = False If Preview = False And Design = False Then buchen = True While doloop = True For i As Integer = 1 To anzahlraten If i = 1 And Empfaenger <> "" Then Dim f0 As New frmReportView(9999, False, "Vorschau Rechung", " where nrbehandlung = " + Behandlungsnr.ToString, Behandlungsnr.ToString) f0.Visible = False f0.Show() f0.Visible = False f0.Fakturierung(9999, Behandlungsnr.ToString, "", i, buchen:=False) f0.Close() Globals.FakturaNr = 0 End If Dim f As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + Behandlungsnr.ToString, Behandlungsnr.ToString) f.Visible = False f.Show() If Not Preview And Not Design Then f.Visible = False f.Mahnungg(Stufe, reportnr, Behandlungsnr, "", i, True, Fakturanr, buchen, Preview, Design) If Not Preview Then f.Close() If Design Then f.Close() If anzahlraten > 1 And i < 2 And Folgeauswertung > 0 Then reportnr = Folgeauswertung db.Get_Tabledata("Auswertung", "where auswertungnr=" + Folgeauswertung.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Dim f1 As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + Behandlungsnr.ToString, Behandlungsnr.ToString) f1.Visible = False f1.Show() If Not Preview And Not Design Then f1.Visible = False f1.Mahnungg(Stufe, reportnr, Behandlungsnr, "", i, True, Fakturanr, buchen, Preview, Design) f1.Close() reportnr = db.Get_ReportNr(db1.dsDaten.Tables(0).Rows(0).Item("estyp")) reportnr = db1.dsDaten.Tables(0).Rows(0).Item("mahnnummer") + Stufe End If Next i If Folgeauswertung > 0 And anzahlraten < 2 Then reportnr = Folgeauswertung db.Get_Tabledata("Auswertung", "where auswertungnr=" + Folgeauswertung.ToString) Folgeauswertung = db.dsDaten.Tables(0).Rows(0).Item("Folge_Report") Separater_Druckjob = db.dsDaten.Tables(0).Rows(0).Item("Folgereport_Sep_Druckjob") Else doloop = False End If End While If Preview = False And Design = False Then Dim pdfh As New clspdfhelper pdfh.Create_Archivdoc(clspdfhelper.GetEmpfaengerType.FromFaktura, Fakturanr, "Mahnung:") pdfh = Nothing End If Globals.pdfCollection.Clear() End Sub End Class