Imports System.ComponentModel Imports DevComponents.AdvTree Imports Syncfusion.Pdf Imports Syncfusion.Pdf.Parsing Imports Syncfusion.Windows.Forms.Tools Public Class Behandlung #Region "Properties" Dim m_auftragsmanagement As String = "" Property Auftragsmanagement As Boolean Get If m_auftragsmanagement = "" Then m_auftragsmanagement = DB.Get_Option(40001) Return m_auftragsmanagement = "True" End Get Set(value As Boolean) ' m_auftragsmanagement = DB.Get_Option(40001) End Set End Property Dim m_patientnr As Integer Property PatientNr As Integer Get Return m_patientnr End Get Set(value As Integer) Try If value = 0 Then Exit Property m_patientnr = value Get_Behandlungen() Me.SuperTabControl1.SelectedTab = Me.SuperTabControl1.Tabs(0) Catch ex As Exception log.Writelog("Behandlung: PatientNr Set: " + ex.Message, clsLog.Logtype.ApplError) Dim a As Integer = 1 End Try End Set End Property Dim m_haschanges As Boolean Property HasChanges As Boolean Get Return m_haschanges End Get Set(value As Boolean) m_haschanges = value End Set End Property #End Region #Region "Deklarationen" Dim DB As New clsDB Dim log As New clsLog Dim FormReadonly As Boolean = False Dim WithEvents evh As Generic_Event_Handler = Globals.EVH #End Region #Region "Closing / Check_Changes" ''' ''' Prüfung, ob Datenänderungen vorgenommen wurden. ''' ''' Private Function Check_Changes() As Boolean If Me.FormReadonly Then Return True Exit Function End If Dim msgres As MsgBoxResult If Me.HasChanges Then msgres = MsgBox("Daten wurden verändert. Wollen Sie die Änderungen speichern", vbYesNo + vbQuestion) Select Case msgres Case MsgBoxResult.Yes 'Save_Data() Return True Case MsgBoxResult.Cancel Return False Case MsgBoxResult.No Me.HasChanges = False Return True End Select Else Return True End If End Function #End Region #Region "Eventhandler ChangeEreignisse" ''' ''' Allg Eventhandler für Chanage-Ereignise festlegen ''' ''' ''' Private Sub AddChanges(ByVal Container As Control) Dim l As New List(Of Control) Me.GetControl(Me, "*", l) Dim evh As EventHandler = AddressOf ChangesMade For Each c As Control In l If TypeOf c Is TextBox Then Dim ctl As TextBox = c AddHandler ctl.TextChanged, evh End If If TypeOf c Is MaskedTextBox Then Dim ctl As MaskedTextBox = c AddHandler ctl.TextChanged, evh End If If TypeOf c Is ComboBox Then Dim ctl As ComboBox = c AddHandler ctl.SelectedValueChanged, evh End If If TypeOf c Is RichTextBox Then Dim ctl As RichTextBox = c AddHandler ctl.TextChanged, evh End If If TypeOf c Is CheckBox Then If c.Name <> "cboxNurAktive" Then Dim ctl As CheckBox = c AddHandler ctl.CheckedChanged, evh End If End If If TypeOf c Is DateTimePicker Then Dim ctl As DateTimePicker = c AddHandler ctl.ValueChanged, evh End If If TypeOf c Is CheckedListBox Then Dim ctl As CheckedListBox = c AddHandler ctl.ItemCheck, AddressOf ChecketListBoxChange End If Next End Sub ''' ''' Envent-Handler für Change-Ereignisse ''' ''' ''' ''' Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs) Me.HasChanges = True Dim objtype As System.Type = sender.GetType If objtype.Name = "MaskedTextBox" Then Dim o As MaskedTextBox = sender If o.Text = "01.01.1900" Then o.Text = " . . " End If End Sub Private Sub ChecketListBoxChange(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs) Me.HasChanges = True End Sub ''' ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung ''' ''' Base-Contrlo (z.B. aktuelles Formular ''' Schlüssel welcher gesucht werden soll ''' Liste der gefundenen Objekte ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. ''' ''' Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean If L Is Nothing Then L = New List(Of Control) Dim Gut As Boolean Dim ReturnFlag As Boolean = False If Key IsNot Nothing Then Key = Key.ToLower If BaseControl.HasChildren = True Then For Each ctl As Control In BaseControl.Controls Gut = False If Key Is Nothing Then Gut = True Else If ctl.Name.Length >= Key.Length Then Key = Key.ToLower If Key.StartsWith("*") Then If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True ElseIf Key.EndsWith("*") Then If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True Else If Key = ctl.Name.ToLower Then Gut = True End If End If End If If Gut = True Then L.Add(ctl) If ReturnAtFirstElement = True Then ReturnFlag = True End If If ReturnFlag = False Then Call GetControl(ctl, Key, L) End If Next End If If L.Count - 1 > -1 Then Return True Else Return False End If End Function #End Region #Region "Daten_Laden" Sub Get_Behandlungen() DB.Get_Tabledata("Behandlu", " where aktiv=1 and nrpatient=" + Me.PatientNr.ToString + " order by status, behandlungsbeginn desc") Me.treebehandlungen.Nodes.Clear() Dim BH As New DevComponents.AdvTree.Node Dim BHoffen As New DevComponents.AdvTree.Node Dim BHabgeshlossen As New DevComponents.AdvTree.Node Dim BHFakturiert As New DevComponents.AdvTree.Node Dim kv As New DevComponents.AdvTree.Node Dim kvoffen As New DevComponents.AdvTree.Node Dim kvabgeschlossen As New DevComponents.AdvTree.Node If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then BH.Text = "Projekte" Me.AbschlussMitRecallAnzeigeToolStripMenuItem.Visible = False Me.AbshlussOhneRecallAnzeigeToolStripMenuItem.Visible = False Me.RechnungKVEntwurfToolStripMenuItem.Text = "Rechnung/Offerte Vorschau" Me.RechnungKVEntwurfToolStripMenuItem.Text = "Rechnung/Offerte Entwurf" Me.GroupBox1.Width = 350 Else BH.Text = "Behandlungen" End If ' BH.Text = "Behandlungen" BH.Tag = -1 BH.ImageIndex = 0 BHoffen.Text = "Offen" BHoffen.Tag = -11 BHoffen.ImageIndex = 0 BHabgeshlossen.Text = "Abgeschlossen" BHabgeshlossen.Tag = -12 BHabgeshlossen.ImageIndex = 0 BHFakturiert.Text = "Fakturiert" BHFakturiert.Tag = -13 BHFakturiert.ImageIndex = 0 BH.Nodes.Add(BHoffen) BH.Nodes.Add(BHabgeshlossen) BH.Nodes.Add(BHFakturiert) Me.treebehandlungen.Nodes.Add(BH) If Not Auftragsmanagement Then If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then kv.Text = "Offerten" Else kv.Text = "Kostenvoranschläge" End If ' kv.Text = "Kostenvoranschlag" kv.Tag = -2 kv.ImageIndex = 1 kvoffen.Text = "Offen" kvoffen.Tag = -22 kvoffen.ImageIndex = 1 kvabgeschlossen.Text = "Abgeschlossen" kvabgeschlossen.Tag = -23 kvabgeschlossen.ImageIndex = 1 Me.treebehandlungen.Nodes.Add(kv) kv.Nodes.Add(kvoffen) kv.Nodes.Add(kvabgeschlossen) End If Dim firstnode_tag As Integer = 0 If Auftragsmanagement Then For Each r As DataRow In DB.dsDaten.Tables(0).Rows If firstnode_tag = 0 Then firstnode_tag = r("nrbehandlung") Dim tn As New DevComponents.AdvTree.Node tn.Tag = r("nrbehandlung") Dim total As Double = r("Total") If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then tn.Text = r("behandlungsgrund") + " / " + r("behandlungsbeginn") + " / " + total.ToString("N2") Else tn.Text = r("behandlungsbeginn") + " / " + total.ToString("N2") End If Select Case r("status") Case 1 tn.ImageIndex = 2 BHoffen.Nodes.Add(tn) Case 2 tn.ImageIndex = 3 BHabgeshlossen.Nodes.Add(tn) Case 3 tn.ImageIndex = 4 BHFakturiert.Nodes.Add(tn) End Select Next Else For Each r As DataRow In DB.dsDaten.Tables(0).Rows If firstnode_tag = 0 Then firstnode_tag = r("nrbehandlung") Dim tn As New DevComponents.AdvTree.Node tn.Tag = r("nrbehandlung") Dim total As Double = r("Total") If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then tn.Text = r("behandlungsgrund") + " / " + r("behandlungsbeginn") + " / " + total.ToString("N2") Else tn.Text = r("behandlungsbeginn") + " / " + total.ToString("N2") End If Select Case r("status") Case 1 tn.ImageIndex = 2 BHoffen.Nodes.Add(tn) Case 2 tn.ImageIndex = 3 BHabgeshlossen.Nodes.Add(tn) Case 3 tn.ImageIndex = 4 BHFakturiert.Nodes.Add(tn) Case 4 tn.ImageIndex = 2 kvoffen.Nodes.Add(tn) Case 5 tn.ImageIndex = 3 kvabgeschlossen.Nodes.Add(tn) End Select Next End If Me.treebehandlungen.ExpandAll() enable_disable_tabs(False) Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, firstnode_tag, firstnode_tag) If firstnode_tag <> 0 Then nodeselected() If Auftragsmanagement = True Then Me.treebehandlungen.ContextMenuStrip = Me.ctxMenuAuftragsamanagement End If End Sub #End Region Private Sub treebehandlungen_Click(sender As Object, e As EventArgs) Handles treebehandlungen.Click, treebehandlungen.AfterNodeSelect nodeselected() End Sub Sub nodeselected() Try If Me.Behandungdetail1.HasChanges Then Me.Behandungdetail1.Check_Changes() End If Globals.OnLoad = True If Me.treebehandlungen.SelectedNode.Tag > 0 Then Me.Behandungdetail1.SuspendLayout() Me.Behandungdetail1.Patientnr = Me.PatientNr 'Me.Behandungdetail1.Behandlungsnr = Me.treebehandlungen.SelectedNode.Tag Me.Behandungdetail1.Behandlungsnr = Me.treebehandlungen.SelectedNode.Tag Me.Leistungen1.Behandlungnr = Me.treebehandlungen.SelectedNode.Tag Me.Leistungen1.Behandlungsstatus = Behandungdetail1.Behandlungsstatus Me.Leistungen1.Dentotar = Behandungdetail1.cbboxNrAbrechnungstyp.Text.Substring(0, 8) = "Dentotar" Try Leistungen1.cbboxnrbehandler.SelectedValue = Behandungdetail1.cbboxnrbehandler.SelectedValue Catch End Try enable_disable_tabs(True) refresh_tabs() Me.Behandungdetail1.HasChanges = False Me.Behandungdetail1.ResumeLayout() Else enable_disable_tabs(False) End If Catch ex As Exception enable_disable_tabs(False) Finally Globals.OnLoad = False End Try End Sub Sub enable_disable_tabs(ByVal enable As Boolean) Me.SuperTabControl1.Tabs(1).Enabled = enable Me.SuperTabControl1.Tabs(0).Enabled = enable Me.SuperTabControl1.Visible = enable If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then Me.SuperTabControl1.Tabs(0).Text = "Projekt" Else Me.SuperTabControl1.Tabs(2).Visible = False End If 'Me.SuperTabControl1.Tabs(0).Focus() End Sub Private Sub DDTBehandlungsbeginn_DoubleClick(sender As Object, e As EventArgs) sender.value = Now End Sub Private Sub SuperTabControl1_SelectedTabChanged(sender As Object, e As DevComponents.DotNetBar.SuperTabStripSelectedTabChangedEventArgs) Handles SuperTabControl1.SelectedTabChanged Try refresh_tabs() Catch End Try End Sub Sub refresh_tabs() Me.Leistungen1.TaxPunkte = Me.Behandungdetail1.cbboxNrtaxpunkt.SelectedValue Me.Leistungen1.Frankenwert = Me.Behandungdetail1.mtxtTaxpunktwert.Text Me.Leistungen1.behandler = Me.Behandungdetail1.cbboxnrbehandler.SelectedValue Me.Leistungen1.Behandlungnr = Me.Behandungdetail1.Behandlungsnr Me.Leistungen1.Dentotar = Me.Behandungdetail1.cbboxNrAbrechnungstyp.Text.Substring(0, 8) = "Dentotar" Me.Leistungen1.dtdatum.Value = Me.Behandungdetail1.DDTBehandlungsbeginn.Value Me.Leistungen1.txtErgänzung.Text = "" Me.Leistungen1.refresh_leistungen() load_data() End Sub Private Sub LöschenToolStripMenuItem_Click(sender As Object, e As EventArgs) End Sub Private Sub Benhandungdetail1_Load(sender As Object, e As EventArgs) Handles Behandungdetail1.Load End Sub Private Sub tsbtnnewbehandlung_Click(sender As Object, e As EventArgs) Handles tsbtnnewbehandlung.Click If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then If Me.NeueBehandlungToolStripMenuItem1.Text = "Neue Offerte" Then Neue_Behandlung(4) Else Neue_Behandlung(1) End If Else If Me.NeueBehandlungToolStripMenuItem1.Text = "Neuer Kostenvoranschlag" Then Neue_Behandlung(4) Else Neue_Behandlung(1) End If End If End Sub Sub Neue_Behandlung(ByVal Status As Integer) Dim db As New clsDB Dim pat As New clsDB pat.Get_Tabledata("Privat", "where nrprivat=" + Me.PatientNr.ToString) Dim newkey As Integer = db.Get_DBKey("Behandlung") db.Get_Tabledata("Behandlu", " where nrbehandlung=0") Dim r As DataRow r = db.dsDaten.Tables(0).NewRow For Each c As DataColumn In db.dsDaten.Tables(0).Columns r.Item(c) = db.dsDaten.Tables(0).Rows(0).Item(c) Next r.Item("nrestyp") = pat.dsDaten.Tables(0).Rows(0).Item("estyp") If Status = 4 Then Dim db1 As New clsDB db1.Get_Tabledata("ESTYP", "where default_bei_kv=1") If db1.dsDaten.Tables(0).Rows.Count > 0 Then r.Item("nrestyp") = db1.dsDaten.Tables(0).Rows(0).Item("nrestyp") End If db1.Dispose() Else Dim db1 As New clsDB db1.Get_Tabledata("ESTYP", "where default_bei_rg=1") If db1.dsDaten.Tables(0).Rows.Count > 0 Then r.Item("nrestyp") = db1.dsDaten.Tables(0).Rows(0).Item("nrestyp") End If db1.Dispose() End If r.Item("nrbehandlung") = newkey r.Item("nrpatient") = Me.PatientNr 'r.Item("nrbehandler") = 1 r.Item("nrrgtyp") = pat.dsDaten.Tables(0).Rows(0).Item("nrrgtyp") r.Item("rabatt") = pat.dsDaten.Tables(0).Rows(0).Item("rabatt") Try If pat.dsDaten.Tables(0).Rows(0).Item("nrgarant") > 0 Then r.Item("nrgarant") = pat.dsDaten.Tables(0).Rows(0).Item("nrgarant") Catch End Try Try If pat.dsDaten.Tables(0).Rows(0).Item("nrgesvertreter") > 0 Then r.Item("nrgarant") = pat.dsDaten.Tables(0).Rows(0).Item("nrgesvertreter") Catch End Try Try If pat.dsDaten.Tables(0).Rows(0).Item("nrvs") > 0 Then r.Item("nrgarant") = pat.dsDaten.Tables(0).Rows(0).Item("nrvs") Catch End Try Try If pat.dsDaten.Tables(0).Rows(0).Item("nrkk") > 0 Then r.Item("nrgarant") = pat.dsDaten.Tables(0).Rows(0).Item("nrkk") Catch End Try Try If pat.dsDaten.Tables(0).Rows(0).Item("nrfs") > 0 Then r.Item("nrgarant") = pat.dsDaten.Tables(0).Rows(0).Item("nrfs") Catch End Try Try If pat.dsDaten.Tables(0).Rows(0).Item("nriv") > 0 Then r.Item("nrgarant") = pat.dsDaten.Tables(0).Rows(0).Item("nriv") Catch End Try 'If pat.dsDaten.Tables(0).Rows(0).Item("nrgesvertrater") > 0 Then r.Item("nrgarant") = pat.dsDaten.Tables(0).Rows(0).Item("nrgesvertreter") r.Item("behandlungsbeginn") = Now r.Item("Behandlungsende") = Now r.Item("status") = Status r.Item("statusdatum") = Now r.Item("erstellt_am") = Now r.Item("mutiert_am") = Now r.Item("mutierer") = Globals.ActUser r.Item("aktiv") = True Dim dbgesetz As New clsDB dbgesetz.Get_Tabledata("Gesetz", "", "Select * from gesetz where standard=1") If dbgesetz.dsDaten.Tables(0).Rows.Count = 0 Then r.Item("nrgesetz") = 0 Else r.Item("nrgesetz") = dbgesetz.dsDaten.Tables(0).Rows(0).Item("nrgesetz") End If dbgesetz.Get_Tabledata("Gesetz", "", "Select * from behandlungsart where standard=1") If dbgesetz.dsDaten.Tables(0).Rows.Count = 0 Then r.Item("nrbehandlungsart") = 0 Else r.Item("nrbehandlungsart") = dbgesetz.dsDaten.Tables(0).Rows(0).Item("nrbehandlungsart") End If Get_Standards(r.Item("nrbehandler"), "Behandler") Get_Standards(r.Item("nrestyp"), "ESTyp") Get_Standards(r.Item("nrrgtyp"), "RGTyp") Get_Standards(r.Item("Nrabrechnungstyp"), "Abrechnungstyp") Get_Standards(r.Item("nransatz"), "Ansatz") Get_Standards(r.Item("taxpunktwert"), "Taxpunktwert") Get_Standards(r.Item("andrucken_taxpunkte"), "ANDRUCKENTAXPUNKTE") Get_Standards(r.Item("mitdatum"), "Mitdatum") Get_Standards(r.Item("rabattgesamt"), "RABATTGESAMT") Try Get_Standards(r.Item("nrgesetz"), "GESETZ") Get_Standards(r.Item("verguetungsart"), "VERGUETUNGSART") Catch End Try db.dsDaten.Tables(0).Rows.Add(r) db.Update_Data() pat.Dispose() db.Dispose() Me.Get_Behandlungen() Me.SuperTabControl1.SelectedTab = SuperTabControl1.Tabs(0) Try Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, newkey, newkey) Me.nodeselected() Catch ex As Exception End Try End Sub Sub Get_Standards(ByRef o As Object, feld As String) Dim dbs As New clsDB Try Select Case UCase(feld) Case "BEHANDLER" Try o = Globals.ActUser Catch ex As Exception End Try dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=1", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then If dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") = "ActUser" Then dbs.Get_Tabledata("User", "", "Select behandlernummer from [user] where userid=" + Globals.ActUser.ToString, "", False) o = dbs.dsDaten.Tables(0).Rows(0).Item("behandlernummer") Else o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If End If Case "ESTYP" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=2", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If Case "RGTYP" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=3", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If Case "ABRECHNUNGSTYP" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=4", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If Case "ANSATZ" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=5", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If Case "ANDRUCKENTAXPUNKTE" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=6", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") = "Ja" End If Case "MITDATUM" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=7", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") = "Ja" End If Case "RABATTGESAMT" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=8", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") = "Ja" End If Case "TAXPUNKTWERT" Dim s As String = "" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=5", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then s = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If If s <> "" Then dbs.Get_Tabledata("Ansatz", "", "Select taxpunktwert from ansatz where nransatz=" & s, "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item(0) End If End If Case "GESETZ" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=6", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If Case "VERGUETUNGSART" dbs.Get_Tabledata("Standards", "", "Select * from standards where eintragnr=7", "", False) If dbs.dsDaten.Tables(0).Rows.Count > 0 Then o = dbs.dsDaten.Tables(0).Rows(0).Item("Standardwert") End If Case Else End Select Catch ex As Exception Dim i As Integer i = 0 Finally dbs.Dispose() End Try End Sub Private Sub tsbtndeletebehandlung_Click(sender As Object, e As EventArgs) Handles tsbtndeletebehandlung.Click If MsgBox("Datensatz wirklich löschen?", vbYesNo + vbQuestion, "Behandlung löschen") = MsgBoxResult.Yes Then Dim db As New clsDB db.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.treebehandlungen.SelectedNode.Tag.ToString) db.dsDaten.Tables(0).Rows(0).Item("aktiv") = 0 db.dsDaten.Tables(0).Rows(0).Item("Status") = 9 db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser db.Update_Data() db.Dispose() Me.Get_Behandlungen() End If End Sub Private Sub BehandlungAbschliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BehandlungAbschliessenToolStripMenuItem.Click End Sub Private Sub NeueBehandlungToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles NeueBehandlungToolStripMenuItem1.Click Me.tsbtnnewbehandlung_Click(sender, e) End Sub Private Sub BehandlungLöschenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles BehandlungLöschenToolStripMenuItem1.Click Me.tsbtndeletebehandlung_Click(sender, e) End Sub Private Sub BehandlungabschliessenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles BehandlungabschliessenToolStripMenuItem1.Click If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then Exit Sub Application.DoEvents() Me.ctxmenubehandlung.Close() ' If MsgBox("Behandlung/KV abschliessen?", vbYesNo + vbQuestion) = vbYes Then Try If DB.Get_Option(10001) = True Then Globals.Recall_Bei_Abschluss = True Else Globals.Recall_Bei_Abschluss = False Catch End Try Behandlung_Abschliessen(Me.treebehandlungen.SelectedNode.Tag.ToString, Globals.Recall_Bei_Abschluss) 'End If End Sub Private Sub BehandlunKopierenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles BehandlungKopierenToolStripMenuItem.Click Dim s As String If Me.Auftragsmanagement = True Then DB.Copy_Behandlung(Me.treebehandlungen.SelectedNode.Tag.ToString.ToString, 2) Get_Behandlungen() Exit Sub End If If BehandlungKopierenToolStripMenuItem.Text = "Kostenvoranschlag kopieren" Then If My.Settings.SoftwareType = "PADM" Then s = "Als Kostenvoranschlag kopieren (Ja) oder als neues Projekt kopieren (Nein)?" Else s = "Als Kostenvoranschlag kopieren (Ja) oder als neue Behandlung kopieren (Nein)?" End If Dim dl As MsgBoxResult = MsgBox(s, vbYesNoCancel + vbQuestion) If dl = vbYes Then Dim db As New clsDB db.Copy_Behandlung(Me.treebehandlungen.SelectedNode.Tag.ToString.ToString, 1) End If If dl = vbNo Then Dim db As New clsDB db.Copy_Behandlung(Me.treebehandlungen.SelectedNode.Tag.ToString, 2) End If Else If My.Settings.SoftwareType = "PADM" Then s = "Als Projekt kopieren (Ja) oder als neuer KV kopieren (Nein)?" Else s = "Als Behandlung kopieren (Ja) oder als neuer KV kopieren (Nein)?" End If Dim dl As MsgBoxResult = MsgBox(s, vbYesNoCancel + vbQuestion) If dl = vbYes Then Dim db As New clsDB db.Copy_Behandlung(Me.treebehandlungen.SelectedNode.Tag.ToString, 3) End If If dl = vbNo Then Dim db As New clsDB db.Copy_Behandlung(Me.treebehandlungen.SelectedNode.Tag.ToString, 4) End If End If Get_Behandlungen() End Sub Private Sub tsbtndelete_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles tsbtndelete.ItemClicked End Sub Private Sub ctxmenubehandlung_Opening(sender As Object, e As CancelEventArgs) Handles ctxmenubehandlung.Opening Try Dim i As Integer Try i = Me.treebehandlungen.SelectedNode.Parent.Tag Catch i = Me.treebehandlungen.SelectedNode.Tag End Try Me.NeueBehandlungToolStripMenuItem.Enabled = True Me.BehandlungAbschliessenToolStripMenuItem.Enabled = True Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = True Me.BehandlungKopierenToolStripMenuItem.Enabled = True Me.SofortRechnungDruckenToolStripMenuItem.Enabled = True Me.KopieErstellenToolStripMenuItem.Enabled = True Me.BehandlungKopierenToolStripMenuItem.Enabled = True Me.NeueBehandlungToolStripMenuItem.Visible = True Me.BehandlungAbschliessenToolStripMenuItem.Visible = True Me.BehandlungZurücksetzenToolStripMenuItem.Visible = True Me.BehandlungKopierenToolStripMenuItem.Visible = True Me.SofortRechnungDruckenToolStripMenuItem.Visible = True Me.KopieErstellenToolStripMenuItem.Visible = True Me.BehandlungKopierenToolStripMenuItem.Visible = True Me.SofortRechnungDruckenToolStripMenuItem.Text = "Sofort-Rechnung drucken" Me.AbschlussUndSofortrechnungAlsOutlookMailToolStripMenuItem.Text = "Abschluss und Sofortrechnung als " + Globals.MailClient + "-Mail" Me.AlsMailToolStripMenuItem.Text = "als PDF an " + Globals.MailClient + "-Mail" Me.AlsPDFPerMailToolStripMenuItem.Text = "als PDF per " + Globals.MailClient + "-Mail" ' Me.ctxmenubehandlung.Enabled = True Select Case i Case -11 Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = False Me.BehandlungabschliessenToolStripMenuItem1.Enabled = True Me.KopieErstellenToolStripMenuItem.Enabled = False Me.SofortRechnungDruckenToolStripMenuItem.Enabled = False Case -12 Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = True Me.BehandlungabschliessenToolStripMenuItem1.Enabled = False Me.SofortRechnungDruckenToolStripMenuItem.Enabled = True KopieErstellenToolStripMenuItem.Enabled = False Case -13 Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = True Me.BehandlungabschliessenToolStripMenuItem1.Enabled = False Me.SofortRechnungDruckenToolStripMenuItem.Enabled = False Me.KopieErstellenToolStripMenuItem.Enabled = True End Select If Globals.Applicationtype = Globals.ApplicationTypes.Projektabrechnung Then Select Case i Case -23 Me.BehandlungabschliessenToolStripMenuItem1.Text = "Offerte abschliessen" BehandlungabschliessenToolStripMenuItem1.Enabled = False Me.NeueBehandlungToolStripMenuItem1.Text = "Neue Offerte" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Offerte zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Visible = True Me.BehandlungLöschenToolStripMenuItem1.Text = "Offerte löschen" Me.BehandlungKopierenToolStripMenuItem.Text = "Offerte kopieren" Me.SofortRechnungDruckenToolStripMenuItem.Enabled = False Me.KopieErstellenToolStripMenuItem.Enabled = False Me.SofortRechnungDruckenToolStripMenuItem.Text = "Offerte drucken" Me.SofortRechnungDruckenToolStripMenuItem.Enabled = True Case -2 Me.BehandlungabschliessenToolStripMenuItem1.Text = "Offerte abschliessen" Me.BehandlungabschliessenToolStripMenuItem1.Enabled = False BehandlungabschliessenToolStripMenuItem1.Enabled = False Me.NeueBehandlungToolStripMenuItem1.Text = "Neue Offerte" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Offerte zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = False Me.BehandlungLöschenToolStripMenuItem1.Text = "Offerte löschen" Me.BehandlungLöschenToolStripMenuItem1.Enabled = False Me.BehandlungKopierenToolStripMenuItem.Text = "Offerte kopieren" Case > -20 Me.BehandlungabschliessenToolStripMenuItem1.Text = "Projekt abschliessen" Me.NeueBehandlungToolStripMenuItem1.Text = "Neues Projekt" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Projekt zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Visible = True Me.BehandlungLöschenToolStripMenuItem1.Text = "Projekt löschen" Me.BehandlungKopierenToolStripMenuItem.Text = "Projekt kopieren" Case < -20 And Me.BehandlungabschliessenToolStripMenuItem1.Text = "Offerte abschliessen" BehandlungabschliessenToolStripMenuItem1.Enabled = True Me.BehandlungabschliessenToolStripMenuItem1.Text = "Offerte abschliessen" Me.NeueBehandlungToolStripMenuItem1.Text = "Neue Offerte" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Offerte zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Visible = False Me.BehandlungLöschenToolStripMenuItem1.Text = "Offerte löschen" Me.BehandlungKopierenToolStripMenuItem.Text = "Offerte kopieren" Me.SofortRechnungDruckenToolStripMenuItem.Enabled = False Me.KopieErstellenToolStripMenuItem.Enabled = False End Select Else Select Case i Case -23 Me.BehandlungabschliessenToolStripMenuItem1.Text = "Kostenvoranschlag abschliessen" BehandlungabschliessenToolStripMenuItem1.Enabled = False Me.NeueBehandlungToolStripMenuItem1.Text = "Neuer Kostenvoranschlag" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Kostenvoranschlag zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Visible = True Me.BehandlungLöschenToolStripMenuItem1.Text = "Kostenvoranschlag löschen" Me.BehandlungKopierenToolStripMenuItem.Text = "Kostenvoranschlag kopieren" Me.SofortRechnungDruckenToolStripMenuItem.Enabled = False Me.KopieErstellenToolStripMenuItem.Enabled = False Me.SofortRechnungDruckenToolStripMenuItem.Text = "Kostenvoranschlag drucken" Me.SofortRechnungDruckenToolStripMenuItem.Enabled = True Case -2 Me.BehandlungabschliessenToolStripMenuItem1.Text = "Kostenvoranschlag abschliessen" Me.BehandlungabschliessenToolStripMenuItem1.Enabled = False BehandlungabschliessenToolStripMenuItem1.Enabled = False Me.NeueBehandlungToolStripMenuItem1.Text = "Neuer Kostenvoranschlag" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Kostenvoranschlag zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = False Me.BehandlungLöschenToolStripMenuItem1.Text = "Kostenvoranschlag löschen" Me.BehandlungLöschenToolStripMenuItem1.Enabled = False Me.BehandlungKopierenToolStripMenuItem.Text = "Kostenvoranschlag kopieren" Case > -20 Me.BehandlungabschliessenToolStripMenuItem1.Text = "Behandlung abschliessen" Me.NeueBehandlungToolStripMenuItem1.Text = "Neue Behandlung" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Behandlung zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Visible = True Me.BehandlungLöschenToolStripMenuItem1.Text = "Behandlung löschen" Me.BehandlungKopierenToolStripMenuItem.Text = "Behandlung kopieren" Case < -20 And Me.BehandlungabschliessenToolStripMenuItem1.Text = "Kostenvoranschlag abschliessen" BehandlungabschliessenToolStripMenuItem1.Enabled = True Me.BehandlungabschliessenToolStripMenuItem1.Text = "Kostenvoranschlag abschliessen" Me.NeueBehandlungToolStripMenuItem1.Text = "Neuer Kostenvoranschlag" Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Kostenvoranschlag zurücksetzen" Me.BehandlungZurücksetzenToolStripMenuItem.Visible = False Me.BehandlungLöschenToolStripMenuItem1.Text = "Kostenvoranschlag löschen" Me.BehandlungKopierenToolStripMenuItem.Text = "Kostenvoranschlag kopieren" Me.SofortRechnungDruckenToolStripMenuItem.Enabled = False Me.KopieErstellenToolStripMenuItem.Enabled = False End Select End If If Globals.MenuString <> "" Then Dim splitter() As String splitter = Globals.MenuString.Split(";") For i = 0 To splitter.Length - 1 Dim x As Integer = splitter(i) Me.BehandlungabschliessenToolStripMenuItem1.DropDownItems(x).Visible = False Next End If Dim s As String s = DB.Get_Option(9103) If s <> "" Then Me.AbschlussUndSofortrechnungToolStripMenuItem.Text = s s = DB.Get_Option(9104) If s <> "" Then Me.AbschlussUndSofortrechungAlsPDFToolStripMenuItem.Text = s s = DB.Get_Option(9105) If s <> "" Then Me.AbschlussUndSofortrechnungAlsOutlookMailToolStripMenuItem.Text = s s = DB.Get_Option(9106) If s <> "" Then Me.AbschlussUndVerbuchenOhneRGQuittungToolStripMenuItem.Text = s ErsteMahnungDruckenToolStripMenuItem.Visible = False ZweiteMahnungDruckenToolStripMenuItem.Visible = False LetzteMahnungDruckenToolStripMenuItem.Visible = False tsamerstemahnung.Visible = False tsamzweitemahnung.Visible = False tsamdrittemahnung.Visible = False Try If Me.Behandungdetail1.txtrgnummer.Text <> "" Then DB.Get_Tabledata("Mahnung", "", "Select * from View_Offene_Mahnungen where nrfaktura=" + Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10), "", False) If DB.dsDaten.Tables(0).Rows.Count > 0 Then Select Case DB.dsDaten.Tables(0).Rows(0).Item("Mahnstufe") Case 1 ErsteMahnungDruckenToolStripMenuItem.Visible = True tsamerstemahnung.Visible = True Case 2 ZweiteMahnungDruckenToolStripMenuItem.Visible = True tsamzweitemahnung.Visible = True Case 3 LetzteMahnungDruckenToolStripMenuItem.Visible = True tsamdrittemahnung.Visible = True End Select Else End If End If Catch End Try If UCase(DB.Get_Option(60020)) = "FALSE" Then Exit Sub Dim sec As New DPMSecurity sec.Set_Form_Security(Me.ParentForm) Catch ex As Exception MsgBox(ex.Message) Me.ctxmenubehandlung.Enabled = False End Try End Sub Private Sub BehandlungZurücksetzenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BehandlungZurücksetzenToolStripMenuItem.Click Dim db As New clsDB Dim Messagetext As String Dim key As Integer = Me.treebehandlungen.SelectedNode.Tag db.Get_Tabledata("Behandlu", "where nrbehandlung=" + key.ToString) If db.dsDaten.Tables(0).Rows(0).Item("Status") = 2 Or db.dsDaten.Tables(0).Rows(0).Item("Status") = 3 Then If Globals.Applicationtype = Globals.ApplicationTypes.Projektabrechnung Then Messagetext = "Projekt " Else Messagetext = "Behandlung " 'Messagetext = "Behandlung " Else Messagetext = "Kostenvoranschlag" End If Dim fakt As New clsFakturierung Dim Result = fakt.Verrechnet(Me.treebehandlungen.SelectedNode.Tag) Select Case Result Case 0 If MsgBox(Messagetext + " zurücksetzen?", vbYesNo + vbQuestion, Messagetext + " zurücksetzen") = MsgBoxResult.Yes Then Behandlung_Zurücksetzen(Me.treebehandlungen.SelectedNode.Tag.ToString) End If Case 1 Dim s As String If Globals.Applicationtype = Applicationtype.Projektabrechnung Then s = "Rechnung stornieren und Projekt zurücksetzen?" Else s = "Rechnung stornieren und Behandlung zurücksetzen?" End If If MsgBox(s, vbYesNo + vbQuestion) = vbYes Then fakt.Storno(Me.treebehandlungen.SelectedNode.Tag) Behandlung_Zurücksetzen(Me.treebehandlungen.SelectedNode.Tag.ToString) If Globals.License.DMS = True Then Dim dok As New clsDok dok.Delete_Doks(Me.treebehandlungen.SelectedNode.Tag) dok = Nothing End If End If Case 2 If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then MsgBox("Projekt kann nicht zurückgesetzt werden, da bereits Zahlung für die Rechnung eingegangen sind.", vbExclamation) Else MsgBox("Behandlung kann nicht zurückgesetzt werden, da bereits Zahlung für die Rechnung eingegangen sind.", vbExclamation) End If End Select End Sub Private Sub Behandlung_Zurücksetzen(ByVal nrbehandlung As Integer) Dim key As Integer = Me.treebehandlungen.SelectedNode.Tag Dim db As New clsDB Dim result As String result = db.Get_Datavalue(db.Get_SQL(29), nrbehandlung) If result <> 0 Then MsgBox("Behandlung kann nicht zurückgesetzt werden, da Zahlungen vorhanden sind.", vbExclamation) Exit Sub End If db.Get_Tabledata("Behandlu", "where nrbehandlung=" + nrbehandlung.ToString) db.dsDaten.Tables(0).Rows(0).Item("aktiv") = 1 If db.dsDaten.Tables(0).Rows(0).Item("Status") > 3 Then db.dsDaten.Tables(0).Rows(0).Item("Status") = 4 Else db.dsDaten.Tables(0).Rows(0).Item("Status") = 1 End If db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser db.Update_Data() db.Dispose() Me.Get_Behandlungen() Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, key, key) Me.nodeselected() End Sub Sub Behandlung_Abschliessen(ByVal nrbehandlung As Integer, Optional show_recall As Boolean = True) Globals.InAbschluss = 0 Dim istKV As Boolean = False Dim db As New clsDB Dim Messagetext As String Dim key As Integer = Me.treebehandlungen.SelectedNode.Tag db.Get_Tabledata("Behandlu", "where nrbehandlung=" + nrbehandlung.ToString) If db.dsDaten.Tables(0).Rows(0).Item("Status") = 1 Then Messagetext = "Behandlung " If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then Messagetext = "Projekt" Else istKV = True Messagetext = "Kostenvoranschlag" If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then Messagetext = "Offerte" End If If db.dsDaten.Tables(0).Rows(0).Item("rgdatum").ToString < Now.ToString And db.dsDaten.Tables(0).Rows(0).Item("rgdatum").ToString <> "" Then Dim d As New frmMsgbox d.set_text("Das Rechnungsdatum liegt in der Vergangenheit.", "Löschen und weiter", "weiter", "Abbruch") Dim res As DialogResult res = d.ShowDialog Select Case res Case DialogResult.Yes db.dsDaten.Tables(0).Rows(0).Item("rgdatum") = System.DBNull.Value db.Update_Data() Case DialogResult.No Case DialogResult.Abort, DialogResult.Cancel Exit Sub End Select End If If MsgBox(Messagetext + " abschliessen?", vbYesNo + vbQuestion) = vbYes Then Me.Behandungdetail1.Save_Data() db.Get_Tabledata("Behandlu", "where nrbehandlung=" + nrbehandlung.ToString) If db.dsDaten.Tables(0).Rows(0).Item("Status") = 1 Then db.dsDaten.Tables(0).Rows(0).Item("Status") = 2 Messagetext = "Behandlung " Else db.dsDaten.Tables(0).Rows(0).Item("Status") = 5 istKV = True Messagetext = "Kostenvoranschlag" End If If db.dsDaten.Tables(0).Rows(0).Item("Behandlungsende").ToString = "" Then db.dsDaten.Tables(0).Rows(0).Item("Behandlungsende") = db.dsDaten.Tables(0).Rows(0).Item("Behandlungsbeginn") End If db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser db.Update_Data() db.Dispose() Me.Get_Behandlungen() Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, key, key) Me.nodeselected() If istKV Then Exit Sub If show_recall = False Then Exit Sub Do_Show_Recall() End If Globals.InAbschluss = 0 End Sub Public Sub Do_Show_Recall() Dim pat As New clsDB pat.Get_Tabledata("Privat", "where nrprivat=" + Me.PatientNr.ToString) Try If pat.dsDaten.Tables(0).Rows(0).Item("ZAZRecall") > 0 Then Dim Newdate As DateTime Newdate = DateAdd(DateInterval.Month, pat.dsDaten.Tables(0).Rows(0).Item("ZAZRecall"), Now) evh.Fire_Recall_Anzeigen(Newdate, Me.PatientNr, 1) End If Catch ex As Exception End Try End Sub #Region "EVH" Private Sub evh_Behandlung_changed(behandlungsnummer As Integer, patientnr As Integer) Handles evh.Behandlung_changed If Me.PatientNr = patientnr And patientnr <> 0 Then Dim tn As DevComponents.AdvTree.Node tn = Globals.FindNode(Me.treebehandlungen.Nodes, behandlungsnummer, behandlungsnummer) Try tn.Text = Me.Behandungdetail1.DDTBehandlungsbeginn.Text + " / " + Me.Behandungdetail1.txtcTotal.Text Catch End Try End If End Sub Private Sub evh_Behandlung_Inserted(Patientnr As Integer, Behandlungsnummer As Integer) Handles evh.Behandlung_Inserted If Me.PatientNr = Patientnr Then Get_Behandlungen() Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, Behandlungsnummer, Behandlungsnummer) End If End Sub Private Sub evh_Taxpunktwert_changed(behandlungsnummer As Integer, patientnr As Integer, taxpunktwert As Double) Handles evh.Taxpunktwert_changed Try If Me.treebehandlungen.SelectedNode.Tag = behandlungsnummer Then Leistungen1.Frankenwert = taxpunktwert Leistungen1.Recalc_Leistungen() End If Catch ex As Exception End Try End Sub Private Sub evh_Behandlung_Zurücksetzen(behandlungsnummer As Integer, patient As Integer) Handles evh.Behandlung_Zurücksetzen If Me.PatientNr = patient Then Behandlung_Zurücksetzen(behandlungsnummer) End Sub Private Sub evh_Behandlung_Abschliessen(behandlungsnummer As Integer, patient As Integer) Handles evh.Behandlung_Abschliessen If Me.PatientNr = patient Then Behandlung_Abschliessen(behandlungsnummer) End Sub Private Sub NeuerKostenvoranschalgToolStripMenuItem_Click(sender As Object, e As EventArgs) Neue_Behandlung(4) End Sub Private Sub ToolStripButton2_Click(sender As Object, e As EventArgs) Handles ToolStripButton2.Click Get_Behandlungen() End Sub Private Sub KopieErstellenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KopieErstellenToolStripMenuItem.Click Globals.Rg_Funktionen.Rechnungskopie(Me.treebehandlungen.SelectedNode.Tag.ToString) Exit Sub Globals.RGCollection.Clear() Dim anzahlraten As Integer = 0 DB.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.treebehandlungen.SelectedNode.Tag.ToString) Dim behandlungsnr As Integer = DB.dsDaten.Tables(0).Rows(0).Item("nrbehandlung") anzahlraten = DB.dsDaten.Tables(0).Rows(0).Item("Anzahlraten") 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 reportnr = DB.Get_ReportNr(DB.dsDaten.Tables(0).Rows(0).Item("estyp")) Dim fakturanr As Integer Try DB.Get_Tabledata("Faktura", "", "Select top 1 nrfaktura from faktura where nrbehandlung=" + behandlungsnr.ToString + " and status <> 9 order by erstellt_am asc ") fakturanr = DB.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 Dim f As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + behandlungsnr.ToString, behandlungsnr.ToString) f.Show() If fakturanr = 0 Then f.Fakturierung(reportnr, behandlungsnr, "", i, 1, fakturanr) Else f.Fakturierung(reportnr, behandlungsnr, "", i, 1, fakturanr) End If 'f.Print_Rechnung(False, False, i) f.Close() 'If i = 1 Then ' Dim fakt As New clsFakturierung ' fakt.Verbuchen(Me.Behandlungsnr, 1) ' hauptfaktura = fakt.fakturanr 'Else ' Dim fakt As New clsFakturierung ' fakt.Verbuchen(Me.Behandlungsnr, i, hauptfaktura) 'End If Next i If 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") Else doloop = False End If End While If Globals.RGCollection.Count > 1 Then Dim document As New PdfDocument() document.EnableMemoryOptimization = True Dim i As Integer = 0 Dim fn As String = "" For Each inputDocument As String In Globals.RGCollection i = i + 1 If i = 1 Then fn = inputDocument Dim loadedDocument As New PdfLoadedDocument(inputDocument) loadedDocument.EnableMemoryOptimization = True document.ImportPageRange(loadedDocument, 0, loadedDocument.Pages.Count - 1) loadedDocument.Close(True) Next document.Save(fn + ".copy.pdf") document.Close() End If End Sub Private Sub SofortRechnungDruckenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SofortRechnungDruckenToolStripMenuItem.Click Behandungdetail1.Sofortrechung_normal() ' Behandungdetail1.ToolStripDropDownButton1_Click(sender, e) End Sub Private Sub VorschauToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles VorschauToolStripMenuItem.Click Behandungdetail1.VorschaRechnungToolStripMenuItem_Click(sender, e) End Sub Private Sub EntwurfToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EntwurfToolStripMenuItem.Click Behandungdetail1.DesignRechnungToolStripMenuItem_Click(sender, e) End Sub Private Sub RechungKVVorschauToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RechungKVVorschauToolStripMenuItem.Click Behandungdetail1.VorschaRechnungToolStripMenuItem_Click(sender, e) End Sub Private Sub RechnungKVEntwurfToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RechnungKVEntwurfToolStripMenuItem.Click Behandungdetail1.DesignRechnungToolStripMenuItem_Click(sender, e) End Sub Private Sub treebehandlungen_AfterNodeSelect(sender As Object, e As AdvTreeNodeEventArgs) Handles treebehandlungen.AfterNodeSelect ' Me.treebehandlungen_Click(sender, e) End Sub Private Sub evh_Refresh_Behandlung(behandlungsnr As Integer, patientnr As Integer) Handles evh.Refresh_Behandlung If Me.PatientNr = patientnr Then Me.Get_Behandlungen() Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, behandlungsnr, behandlungsnr) Me.nodeselected() End If End Sub Private Sub AlsPDFToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AlsPDFToolStripMenuItem.Click Globals.Rg_Funktionen.Rechnungskopie(Me.treebehandlungen.SelectedNode.Tag.ToString, False, True) End Sub Private Sub ÜberDruckerToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ÜberDruckerToolStripMenuItem.Click Globals.Rg_Funktionen.Rechnungskopie(Me.treebehandlungen.SelectedNode.Tag.ToString) Exit Sub End Sub Private Sub evh_Total_Berechnet(behandlungsnummer As Integer, Total As Double) Handles evh.Total_Berechnet Try If Me.treebehandlungen.SelectedNode.Tag = behandlungsnummer Then Dim s As String s = treebehandlungen.SelectedNode.Text Dim i As Integer i = s.IndexOf(" /") If i > 0 Then s = s.Substring(0, i) s = s + " / " + Total.ToString("N2") treebehandlungen.SelectedNode.Text = s End If End If Catch ex As Exception End Try End Sub Private Sub AlsPdfToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles AlsPdfToolStripMenuItem1.Click Behandungdetail1.Sofortrechnung_als_pdf() End Sub Private Sub AlsMailToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AlsMailToolStripMenuItem.Click Behandungdetail1.Sofortrechnung_als_pdf(True, 1) End Sub Private Sub AbschlussMitRecallAnzeigeToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AbschlussMitRecallAnzeigeToolStripMenuItem.Click Behandlung_Abschliessen(Me.treebehandlungen.SelectedNode.Tag.ToString, True) End Sub Private Sub AbshlussOhneRecallAnzeigeToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AbshlussOhneRecallAnzeigeToolStripMenuItem.Click Behandlung_Abschliessen(Me.treebehandlungen.SelectedNode.Tag.ToString, False) End Sub Private Sub AlsPDFPerMailToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AlsPDFPerMailToolStripMenuItem.Click Globals.Rg_Funktionen.Rechnungskopie(Me.treebehandlungen.SelectedNode.Tag.ToString, False, True, True) End Sub Private Sub AbschlussUndSofortrechnungAlsOutlookMailToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AbschlussUndSofortrechnungAlsOutlookMailToolStripMenuItem.Click BehandlungabschliessenToolStripMenuItem1_Click(sender, e) AlsMailToolStripMenuItem_Click(sender, e) Do_Show_Recall() End Sub Private Sub AbschlussUndSofortrechnungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AbschlussUndSofortrechnungToolStripMenuItem.Click BehandlungabschliessenToolStripMenuItem1_Click(sender, e) SofortRechnungDruckenToolStripMenuItem_Click(sender, e) Do_Show_Recall() End Sub Private Sub AbschlussUndSofortrechungAlsPDFToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AbschlussUndSofortrechungAlsPDFToolStripMenuItem.Click BehandlungabschliessenToolStripMenuItem1_Click(sender, e) AlsPdfToolStripMenuItem1_Click(sender, e) Do_Show_Recall() End Sub Private Sub AbschlussUndVerbuchenOhneRGQuittungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AbschlussUndVerbuchenOhneRGQuittungToolStripMenuItem.Click Behandlung_Abschliessen(Me.treebehandlungen.SelectedNode.Tag.ToString, True) 'Globals.IgnorePrint = True 'BehandlungabschliessenToolStripMenuItem1_Click(sender, e) 'SofortRechnungDruckenToolStripMenuItem_Click(sender, e) 'Globals.IgnorePrint = False 'evh.Fire_Finanzen_Anzeigen(Me.PatientNr) End Sub Private Sub ErsteMahnungDruckenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ErsteMahnungDruckenToolStripMenuItem.Click, ZweiteMahnungDruckenToolStripMenuItem.Click, LetzteMahnungDruckenToolStripMenuItem.Click Try Select Case sender.name Case "ErsteMahnungDruckenToolStripMenuItem" Dim s As String = Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10) Globals.Rg_Funktionen.Mahnung(s, 1, False, False) Case "ZweiteMahnungDruckenToolStripMenuItem" Dim s As String = Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10) Globals.Rg_Funktionen.Mahnung(s, 2, False, False) Case "LetzteMahnungDruckenToolStripMenuItem" Dim s As String = Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10) Globals.Rg_Funktionen.Mahnung(s, 3, False, False) End Select Catch ex As Exception End Try End Sub Private Sub ToolStripMenuItem9_Click(sender As Object, e As EventArgs) Handles tsamnew.Click NeueBehandlungToolStripMenuItem1_Click(sender, e) End Sub Private Sub tsamdelete_Click(sender As Object, e As EventArgs) Handles tsamdelete.Click BehandlungLöschenToolStripMenuItem1_Click(sender, e) End Sub Private Sub ToolStripMenuItem10_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem10.Click BehandlungabschliessenToolStripMenuItem1_Click(sender, e) End Sub Private Sub ToolStripMenuItem11_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem11.Click AbschlussMitRecallAnzeigeToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem12_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem12.Click AbshlussOhneRecallAnzeigeToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem13_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem13.Click AbschlussUndSofortrechnungToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem14_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem14.Click AbschlussUndSofortrechungAlsPDFToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem15_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem15.Click AbschlussUndSofortrechnungAlsOutlookMailToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem16_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem16.Click AbschlussUndVerbuchenOhneRGQuittungToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem17_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem17.Click BehandlungZurücksetzenToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem18_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem18.Click BehandlunKopierenToolStripMenuItem1_Click(sender, e) End Sub Private Sub ToolStripMenuItem20_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem20.Click VorschauToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem21_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem21.Click EntwurfToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem22_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem22.Click AlsPdfToolStripMenuItem1_Click(sender, e) End Sub Private Sub ToolStripMenuItem23_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem23.Click AlsMailToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem25_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem25.Click AlsPDFToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem26_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem26.Click ÜberDruckerToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem27_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem27.Click AlsPDFPerMailToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem29_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem29.Click RechungKVVorschauToolStripMenuItem_Click(sender, e) End Sub Private Sub ToolStripMenuItem30_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem30.Click RechnungKVEntwurfToolStripMenuItem_Click(sender, e) End Sub Private Sub tsamerstemahnung_Click(sender As Object, e As EventArgs) Handles tsamerstemahnung.Click, tsamzweitemahnung.Click, tsamdrittemahnung.Click Try Select Case sender.name Case "tsamerstemahnung" Dim s As String = Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10) Globals.Rg_Funktionen.Mahnung(s, 1, False, False) Case "tsamzweitemahnung" Dim s As String = Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10) Globals.Rg_Funktionen.Mahnung(s, 2, False, False) Case "tsamdrittemahnung" Dim s As String = Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10) Globals.Rg_Funktionen.Mahnung(s, 3, False, False) End Select Catch ex As Exception End Try End Sub Private Sub VorschauToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles VorschauToolStripMenuItem1.Click Behandungdetail1.Vorschau_Offerte(1) End Sub Private Sub OffertPDF_Click(sender As Object, e As EventArgs) Handles OffertPDF.Click Behandungdetail1.Vorschau_Offerte(2) End Sub Private Sub PDFPerMailToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PDFPerMailToolStripMenuItem.Click Behandungdetail1.Vorschau_Offerte(3) End Sub Private Sub DruckenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DruckenToolStripMenuItem.Click Behandungdetail1.Vorschau_Offerte(4) End Sub Private Sub ToolStripMenuItem19_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem19.Click Behandungdetail1.Sofortrechung_normal() End Sub Private Sub ToolStripMenuItem24_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem24.Click KopieErstellenToolStripMenuItem_Click(sender, e) End Sub Private Sub PDFToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PDFToolStripMenuItem.Click Behandungdetail1.Vorschau_Offerte(12) End Sub Private Sub PDFPerMailToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles PDFPerMailToolStripMenuItem1.Click Behandungdetail1.Vorschau_Offerte(13) End Sub Private Sub DruckenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles DruckenToolStripMenuItem1.Click Behandungdetail1.Vorschau_Offerte(14) End Sub Private Sub VorschauToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles VorschauToolStripMenuItem2.Click Behandungdetail1.Vorschau_Offerte(11) End Sub Private Sub PDFToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles PDFToolStripMenuItem1.Click Behandungdetail1.Vorschau_Offerte(22) End Sub Private Sub PDFPerMailToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles PDFPerMailToolStripMenuItem2.Click Behandungdetail1.Vorschau_Offerte(23) End Sub Private Sub DruckenToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles DruckenToolStripMenuItem2.Click Behandungdetail1.Vorschau_Offerte(24) End Sub Private Sub VorschauToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles VorschauToolStripMenuItem3.Click Behandungdetail1.Vorschau_Offerte(21) End Sub Private Sub EntwurfToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles EntwurfToolStripMenuItem1.Click Behandungdetail1.Vorschau_Offerte(5) End Sub Private Sub EntwurfToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles EntwurfToolStripMenuItem2.Click Behandungdetail1.Vorschau_Offerte(15) End Sub Private Sub EntwurfToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles EntwurfToolStripMenuItem3.Click Behandungdetail1.Vorschau_Offerte(25) End Sub Private Sub ctxMenuAuftragsamanagement_Opening(sender As Object, e As CancelEventArgs) Handles ctxMenuAuftragsamanagement.Opening Dim i As Integer Try i = Me.treebehandlungen.SelectedNode.Parent.Tag Catch i = Me.treebehandlungen.SelectedNode.Tag End Try ToolStripMenuItem17.Enabled = True ToolStripMenuItem10.Enabled = True ToolStripMenuItem18.Enabled = True ToolStripMenuItem24.Enabled = True ToolStripMenuItem19.Visible = True ToolStripMenuItem10.Enabled = True ToolStripMenuItem10.Visible = True Select Case i Case -11 ToolStripMenuItem17.Enabled = False ToolStripMenuItem10.Enabled = True ToolStripMenuItem18.Enabled = True ToolStripMenuItem24.Enabled = False ToolStripMenuItem19.Visible = False Case -12 ToolStripMenuItem17.Enabled = True ToolStripMenuItem10.Enabled = True ToolStripMenuItem18.Enabled = False ToolStripMenuItem24.Enabled = False ToolStripMenuItem19.Visible = True ToolStripMenuItem10.Visible = False Case -13 ToolStripMenuItem19.Visible = False ToolStripMenuItem10.Enabled = False End Select tsamerstemahnung.Visible = False tsamzweitemahnung.Visible = False tsamdrittemahnung.Visible = False Try If Me.Behandungdetail1.txtrgnummer.Text <> "" Then DB.Get_Tabledata("Mahnung", "", "Select * from View_Offene_Mahnungen where nrfaktura=" + Microsoft.VisualBasic.Left(Me.Behandungdetail1.txtrgnummer.Text, 10), "", False) If DB.dsDaten.Tables(0).Rows.Count > 0 Then Select Case DB.dsDaten.Tables(0).Rows(0).Item("Mahnstufe") Case 1 ErsteMahnungDruckenToolStripMenuItem.Visible = True tsamerstemahnung.Visible = True Case 2 ZweiteMahnungDruckenToolStripMenuItem.Visible = True tsamzweitemahnung.Visible = True Case 3 LetzteMahnungDruckenToolStripMenuItem.Visible = True tsamdrittemahnung.Visible = True End Select Else End If End If Catch End Try End Sub Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click Dim f As New frmAkonto f.ShowDialog() If f.DialogResult = DialogResult.OK Then Dim db As New clsDB Dim ds As New DataSet db.Get_Tabledata("Akonto", "where id=-1", "", "") Dim dr As DataRow = db.dsDaten.Tables(0).NewRow dr("nrbehandlung") = Me.treebehandlungen.SelectedNode.Tag dr("nrfaktura") = 0 dr("erstellt_am") = Now dr("mutiert_am") = Now dr("mutierer") = Globals.ActUser dr("betrag") = f.diwert.Value dr("status") = 0 dr("aktiv") = 1 db.dsDaten.Tables(0).Rows.Add(dr) db.Update_Data() db = Nothing load_data() End If Dim db1 As New clsDB db1.Get_Tabledata("aktono", "", "Select top 1 * from akonto order by erstellt_am desc") Dim akontoid As Integer = db1.dsDaten.Tables(0).Rows(0).Item(0) Dim d As New clsDok d.Save_Akonto_Document(akontoid, f.TextBox1.Text) End Sub Private Sub ToolStripButton4_Click(sender As Object, e As EventArgs) Handles ToolStripButton4.Click load_data() End Sub Private Sub load_data() Try Dim db As New clsDB Me.c1akonto.DataSource = Nothing db.Get_Tabledata("Aktonto", "", "Select * from akonto where nrbehandlung=" + Me.treebehandlungen.SelectedNode.Tag.ToString, "", False) Me.c1akonto.DataSource = db.dsDaten.Tables(0) Me.c1akonto.DataMember = db.dsDaten.Tables(0).TableName Dim spalten As New Tabellenspalte spalten.Spaltentitel_aktualisieren(c1akonto, "Akonto", db.dsDaten.Tables(0)) Dim total As Double = 0 For Each r As DataRow In db.dsDaten.Tables(0).Rows If r("aktiv") = True And r("nrfaktura").ToString <> "0" Then total = total + r("betrag") End If Next Me.ToolStripLabel1.Text = total.ToString("F2") Catch Me.SuperTabControl1.Tabs(2).Visible = False End Try End Sub Private Sub RechnungsdokumentAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RechnungsdokumentAnzeigenToolStripMenuItem.Click Try Dim d As New clsDok Process.Start(d.Get_Aktono_Dokument(c1akonto.Columns(0).Value.ToString)) Catch Dim d As New clsDok If d.Get_Aktono_Dokument(c1akonto.Columns(0).Value.ToString) = "" Then MsgBox("Es ist kein Rechnungsdokument für die Anzeige vorhanden.", vbExclamation) End If End Try End Sub Private Sub RechnungsDokumentErsetzenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RechnungsDokumentErsetzenToolStripMenuItem.Click Me.OpenFileDialog1.Filter = "PDF-Dokumente (*.pdf)|*.pdf|Word-Dokumente (*.docx)|*.docx" Me.OpenFileDialog1.ShowDialog() If Me.OpenFileDialog1.FileName <> "" Then Dim akontoid As Integer = c1akonto.Columns(0).Value Dim d As New clsDok d.Save_Akonto_Document(akontoid, OpenFileDialog1.FileName) End If End Sub Private Sub AkontoRechnungErstellenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AkontoRechnungErstellenToolStripMenuItem.Click Try Globals.akontobuchung = True Globals.akontoid = c1akonto.Columns(0).Value Behandungdetail1.Sofortrechnung(True, False, 0) Globals.akontobuchung = False load_data() Catch Globals.akontobuchung = False End Try End Sub Private Sub AkontoRechnungVorschauToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AkontoRechnungVorschauToolStripMenuItem.Click Try Globals.akontobuchung = True Globals.akontoid = c1akonto.Columns(0).Value Globals.akontovorschau = True Behandungdetail1.Sofortrechnung(True, False, 0) Globals.akontobuchung = False Globals.akontovorschau = False Catch Globals.akontobuchung = False Globals.akontovorschau = False End Try load_data() End Sub Private Sub C1Aktonto_MouseDown(sender As Object, e As MouseEventArgs) Handles c1akonto.MouseDown Try Me.c1akonto.Bookmark = Me.c1akonto.RowContaining(e.Y) Catch End Try End Sub Private Sub AkontoRechnungLöschenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AkontoRechnungLöschenToolStripMenuItem.Click Dim db As New clsDB db.Get_Tabledata("Zahlung", "", "Select * from zahlung where aktiv=1 and status<>9 and nrfaktura=" + c1akonto.Columns("nrfaktura").Value.ToString) If db.dsDaten.Tables(0).Rows.Count > 0 Then MsgBox("Akonto-Rechnung kann nicht gelöscht werden, da bereits Zahlungen auf diese Rechnung eingegangen sind.", vbExclamation) Exit Sub End If db.Exec_SQL("Update faktura set aktiv=0, status=9, mutiert_am=getdate() where nrfaktura=" + c1akonto.Columns("nrfaktura").Value.ToString) db.Exec_SQL("Update debitor set aktiv=0, status=9, mutiert_am=getdate() where nrfaktura=" + c1akonto.Columns("nrfaktura").Value.ToString) db.Exec_SQL("delete from dms_dokument where nrfaktura=" + c1akonto.Columns("nrfaktura").Value.ToString) db.Exec_SQL("update akonto set aktiv=0, mutiert_am=getdate() where id=" + c1akonto.Columns("id").Value.ToString) load_data() End Sub Private Sub NeueAkontoZahlungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NeueAkontoZahlungToolStripMenuItem.Click ToolStripButton3_Click(sender, e) End Sub Private Sub AkontoRechnungPDFPerMailToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AkontoRechnungPDFPerMailToolStripMenuItem.Click Try Globals.akontobuchung = True Globals.akontoid = c1akonto.Columns(0).Value Behandungdetail1.Sofortrechnung(True, True, 1) Globals.akontobuchung = False load_data() Catch Globals.akontobuchung = False End Try End Sub Private Sub ctxmenuakonto_Opening(sender As Object, e As CancelEventArgs) Handles ctxmenuakonto.Opening Me.ctxmenuakonto.Enabled = True Me.AkontoRechnungErstellenToolStripMenuItem.Enabled = True Me.AkontoRechnungPDFPerMailToolStripMenuItem.Enabled = True Me.RechnungsDokumentErsetzenToolStripMenuItem.Enabled = True Try If c1akonto.Columns("nrfaktura").Value <> 0 Then Me.AkontoRechnungErstellenToolStripMenuItem.Enabled = False Me.AkontoRechnungPDFPerMailToolStripMenuItem.Enabled = False Me.RechnungsDokumentErsetzenToolStripMenuItem.Enabled = False End If Catch Me.ctxmenuakonto.Enabled = False End Try End Sub #End Region End Class