You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1799 lines
76 KiB
1799 lines
76 KiB
Imports Syncfusion.Windows.Forms.Tools
|
|
|
|
Public Class Benhandungdetail
|
|
Dim db As New clsDB
|
|
Dim log As New clsLog
|
|
Dim FormReadonly As Boolean = False
|
|
Dim WithEvents evh As Generic_Event_Handler = Globals.EVH
|
|
Dim m_behandlungsnr As Integer
|
|
Dim OnGetData As Boolean = True
|
|
Dim OnLoad As Boolean = False
|
|
Property Behandlungsnr As Integer
|
|
Get
|
|
Return m_behandlungsnr
|
|
End Get
|
|
Set(value As Integer)
|
|
m_behandlungsnr = value
|
|
If value <> 0 Then
|
|
Me.OnLoad = True
|
|
'Me.Enabled = False
|
|
Globals.OnLoad = True
|
|
Get_Stammdaten()
|
|
Globals.OnLoad = True
|
|
OnGetData = True
|
|
|
|
Get_Data()
|
|
OnGetData = False
|
|
Globals.OnLoad = False
|
|
|
|
Me.OnLoad = False
|
|
Me.HasChanges = False
|
|
'Me.Enabled = True
|
|
Globals.OnLoad = False
|
|
Recalc_Totale()
|
|
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung And Me.lblProjekt.Visible = False And GrpPatient.Height < 100 Then
|
|
Me.tsbtnGarantAnzeigen.Visible = False
|
|
Me.ToolStripSeparator2.Visible = False
|
|
GrpGaramt.Visible = False
|
|
grpglndiagnose.Visible = False
|
|
GrpDateien.Visible = True
|
|
|
|
grpBehandlungsdaten.Text = "Projektdaten"
|
|
lblRGStellung.Text = "Anfrage vom"
|
|
Label2.Text = "Offert-Betrag"
|
|
lblBehandlungstotal.Text = "Leistungstotal"
|
|
Label7.Text = "Verantw."
|
|
grpEmpfaenger.Left = GrpGaramt.Left
|
|
GrpRechnungstext.Left = grpEmpfaenger.Left
|
|
GrpRechnungstext.Top = grpEmpfaenger.Top + grpEmpfaenger.Height
|
|
|
|
|
|
GrpPatient.Text = "Verantwortung / Rechnungsart"
|
|
|
|
GrpPatient.Height = GrpPatient.Height + 60
|
|
Me.cbansprechperson.Visible = True
|
|
Me.cbrechnungsadresse.Visible = True
|
|
Me.lblAnsprechen.Visible = True
|
|
|
|
Me.grpBehandlungsdaten.Top = Me.GrpPatient.Top + Me.GrpPatient.Height + 5
|
|
Me.GrpRaten.Top = grpBehandlungsdaten.Top + grpBehandlungsdaten.Height + 5
|
|
Me.grpZusammenfassugn.Top = GrpRaten.Top + GrpRaten.Height + 5
|
|
|
|
Me.Label7.Top = Label7.Top + 20
|
|
Me.cbboxnrbehandler.Top = Me.cbboxnrbehandler.Top + 20
|
|
Me.Label6.Top = Label6.Top + 20
|
|
Me.cbboxNRESTyp.Top = Me.cbboxNRESTyp.Top + 20
|
|
Me.lblProjekt.Visible = True
|
|
Me.txtProjekt.Visible = True
|
|
Me.lblTaxpunkte.Visible = False
|
|
Me.cbboxNrtaxpunkt.Visible = False
|
|
Me.chkAndrucken_Taxpunkte.Text = "Betrag andrucken"
|
|
Me.grpEmpfaenger.Visible = False
|
|
Me.GrpRechnungstext.Top = Me.grpEmpfaenger.Top
|
|
GrpDateien.Top = GrpRechnungstext.Top + GrpRechnungstext.Height
|
|
GrpDateien.Left = GrpRechnungstext.Left
|
|
GrpDateien.Width = GrpRechnungstext.Width
|
|
Me.txtAnsprechpartner.Visible = True
|
|
Me.lblansprechperson.Visible = True
|
|
Me.lblunserereferenz.Visible = True
|
|
Me.txtunserereferenz.Visible = True
|
|
Me.lblrechnungsadresse.Visible = True
|
|
|
|
|
|
|
|
If db.Get_Option(8000) = "True" Then
|
|
Me.GrpGaramt.Visible = False
|
|
End If
|
|
lblRechnungstyp.Visible = False
|
|
lblAbrechnungstyp.Visible = False
|
|
lblAnsatz.Visible = False
|
|
lblFrankenwert.Visible = False
|
|
lblTaxpunkte.Visible = False
|
|
cbboxNRRGtyp.Visible = False
|
|
cbboxNrAbrechnungstyp.Visible = False
|
|
cbboxNrAnsatz.Visible = False
|
|
mtxtTaxpunktwert.Visible = False
|
|
cbboxNrtaxpunkt.Visible = False
|
|
lblRabattwert.Top = lblRechnungstyp.Top
|
|
chkRabattGesamt.Top = lblRechnungstyp.Top
|
|
mtxtRabatt.Top = lblRechnungstyp.Top
|
|
chkRabattGesamt.Top = lblAbrechnungstyp.Top
|
|
chkMitdatum.Top = lblAnsatz.Top
|
|
chkAndrucken_Taxpunkte.Top = chkRabattGesamt.Top
|
|
grpAbrechnung.Height = GrpPatient.Height
|
|
grpAbrechnung.Width = GrpRechnungstext.Width
|
|
GrpRechnungstext.Top = grpBehandlungsdaten.Top
|
|
GrpRechnungstext.Height = GrpRechnungstext.Height * 2
|
|
chkOhneMwst.Visible = True
|
|
chkOhneMwst.Top = chkMitdatum.Top
|
|
Me.cbboxmwstsatz.Visible = True
|
|
Me.lblmwstsatz.Visible = True
|
|
Me.cbboxmwstsatz.Top = chkOhneMwst.Top - 3
|
|
Me.lblmwstsatz.Top = Me.cbboxmwstsatz.Top + 3
|
|
Me.lblmwstsatz.Left = chkOhneMwst.Left + chkOhneMwst.Width + 20
|
|
Me.cbboxmwstsatz.Left = lblmwstsatz.Left + lblmwstsatz.Width + 20
|
|
|
|
Dim mwst As String = db.Get_Option(30000)
|
|
Dim mwsts() As String
|
|
mwsts = mwst.Split(";")
|
|
For i As Integer = 0 To mwsts.Length - 1
|
|
Me.cbboxmwstsatz.Items.Add(mwsts(i))
|
|
Next
|
|
Me.cbboxmwstsatz.SelectedIndex = 0
|
|
End If
|
|
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Dim M_behandlungsstatus As Integer
|
|
Property Behandlungsstatus As Integer
|
|
Get
|
|
Return M_behandlungsstatus
|
|
End Get
|
|
Set(value As Integer)
|
|
M_behandlungsstatus = value
|
|
Enable_Disable_fields()
|
|
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
|
|
|
|
Dim m_patientnr As Integer
|
|
Property Patientnr As Integer
|
|
Get
|
|
Return m_patientnr
|
|
End Get
|
|
Set(value As Integer)
|
|
m_patientnr = value
|
|
|
|
End Set
|
|
End Property
|
|
|
|
|
|
|
|
|
|
#Region "Closing / Check_Changes"
|
|
|
|
''' <summary>
|
|
''' Prüfung, ob Datenänderungen vorgenommen wurden.
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Public 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"
|
|
''' <summary>
|
|
''' Allg Eventhandler für Chanage-Ereignise festlegen
|
|
''' </summary>
|
|
''' <param name="Container"></param>
|
|
''' <remarks></remarks>
|
|
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 DevComponents.Editors.DateTimeAdv.DateTimeInput Then
|
|
Dim ctl As DevComponents.Editors.DateTimeAdv.DateTimeInput = 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
|
|
''' <summary>
|
|
''' Envent-Handler für Change-Ereignisse
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
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
|
|
|
|
|
|
''' <summary>
|
|
''' 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
|
|
''' </summary>
|
|
''' <param name="BaseControl">Base-Contrlo (z.B. aktuelles Formular</param>
|
|
''' <param name="Key">Schlüssel welcher gesucht werden soll</param>
|
|
''' <param name="L">Liste der gefundenen Objekte</param>
|
|
''' <returns>True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde.
|
|
''' </returns>
|
|
''' <remarks></remarks>
|
|
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 "Get_Save"
|
|
|
|
Dim NrAnsprechpartner As Integer = 0
|
|
Sub Get_Data()
|
|
'Me.lblGarantText.Text = ""
|
|
db.Get_Tabledata("behandlu", " where nrbehandlung=" + Me.Behandlungsnr.ToString)
|
|
Dim r As DataRow = db.dsDaten.Tables(0).Rows(0)
|
|
Me.Behandlungsstatus = r("status")
|
|
Try
|
|
Me.NrAnsprechpartner = r("nrAnsprechpartner")
|
|
Catch
|
|
Me.NrAnsprechpartner = 0
|
|
End Try
|
|
|
|
Try
|
|
Me.cbboxNrVerguetungsart.SelectedValue = r("Verguetungsart")
|
|
Catch ex As Exception
|
|
Me.cbboxNrVerguetungsart.SelectedValue = -1
|
|
End Try
|
|
|
|
|
|
Get_Data_Controls(Me, r)
|
|
Update_cbboxnrtaxpunkt()
|
|
Try
|
|
If r("nrgarant") > 0 Then
|
|
Get_Garantdata(r("nrgarant"))
|
|
End If
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
|
|
Try
|
|
If db.dsDaten.Tables(0).Rows(0).Item("Status") = 3 Then
|
|
Me.lblfakturanr.Visible = True
|
|
Me.txtrgnummer.Visible = True
|
|
Dim dbf As New clsDB
|
|
dbf.Get_Tabledata("Faktua", "", "Select nrfaktura, datum From faktura where nrbehandlung=" + db.dsDaten.Tables(0).Rows(0).Item("nrbehandlung").ToString + " and status<>9 and nrfaktura=nrhauptfaktura")
|
|
Me.txtrgnummer.Text = ""
|
|
Dim d As Date
|
|
d = dbf.dsDaten.Tables(0).Rows(0).Item(1)
|
|
Me.txtrgnummer.Text = dbf.dsDaten.Tables(0).Rows(0).Item(0).ToString + " / " + d.ToString("dd.MM.yyyy")
|
|
dbf.Dispose()
|
|
|
|
Else
|
|
Me.lblfakturanr.Visible = False
|
|
Me.txtrgnummer.Visible = False
|
|
End If
|
|
Catch
|
|
Me.lblfakturanr.Visible = False
|
|
Me.txtrgnummer.Visible = False
|
|
|
|
End Try
|
|
Try
|
|
If r("nrgarant") > 0 Then check_mailversand(r("nrgarant")) Else check_mailversand(r("nrpatient"))
|
|
Catch
|
|
End Try
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
Try
|
|
Me.txtAnsprechpartner.Text = Me.txtGLN_Liste.Text
|
|
Me.txtunserereferenz.Text = Me.txtFallnummer.Text
|
|
Me.chkOhneMwst.Checked = Me.txtDiagnose.Text.ToString = "True"
|
|
Catch ex As Exception
|
|
Me.txtAnsprechpartner.Text = ""
|
|
Me.txtunserereferenz.Text = ""
|
|
Me.chkOhneMwst.Checked = False
|
|
End Try
|
|
End If
|
|
chk_dateien()
|
|
|
|
If r("nransprechpartner") > 0 Then
|
|
Dim pap As New clsDB
|
|
pap.Get_Tabledata("AP", "", "Select name from privat_ansprechpartner where id=" + r("nransprechpartner").ToString)
|
|
Dim i As Integer = 0
|
|
Dim x As Integer
|
|
Dim result As String
|
|
|
|
|
|
For Each itm As Object In cbansprechperson.Items
|
|
result = itm.ToString()
|
|
If result = pap.dsDaten.Tables(0).Rows(0).Item(0) Then
|
|
Me.cbansprechperson.SelectedText = pap.dsDaten.Tables(0).Rows(0).Item(0)
|
|
End If
|
|
Next
|
|
End If
|
|
|
|
Me.cbrechnungsadresse.Items.Clear()
|
|
Me.cbrechnungsadresse.Items.Add("Hauptadresse")
|
|
Me.cbrechnungsadresse.Items.Add("Ansprechperson")
|
|
Me.cbrechnungsadresse.SelectedIndex = db.dsDaten.Tables(0).Rows(0).Item("nrgarant")
|
|
|
|
|
|
AddChanges(Me)
|
|
Me.HasChanges = False
|
|
End Sub
|
|
|
|
Sub check_mailversand(ByVal key As Integer)
|
|
|
|
Me.lblMailKommunikaton.Visible = False
|
|
Dim db As New clsDB
|
|
If key > 49999 Then
|
|
db.Get_Tabledata("firma", " where nrfirma=" + key.ToString)
|
|
Else
|
|
db.Get_Tabledata("privat", " where nrprivat=" + key.ToString)
|
|
End If
|
|
If db.dsDaten.Tables(0).Rows(0).Item("Mail_Kommunikation") = True Then Me.lblMailKommunikaton.Visible = True
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then Me.lblMailKommunikaton.Visible = False
|
|
End Sub
|
|
Sub Get_Data_Controls(ByVal ictl As Control, ByRef R As DataRow)
|
|
For Each ctl As Control In ictl.Controls
|
|
|
|
If ctl.Controls.Count = 0 Or (ctl.Controls.Count = 1 And Microsoft.VisualBasic.Left(UCase(ctl.Name), 5) = "CBBOX") Then
|
|
get_data_for_control(ctl, R)
|
|
Else
|
|
Get_Data_Controls(ctl, R)
|
|
End If
|
|
Next
|
|
End Sub
|
|
|
|
Sub get_data_for_control(ByRef ctl As Control, ByRef R As DataRow)
|
|
For Each c As DataColumn In db.dsDaten.Tables(0).Columns
|
|
Try
|
|
If UCase(ctl.Name) = "TXT" + UCase(c.ColumnName) Then
|
|
ctl.Text = R(c.ColumnName)
|
|
'Exit For
|
|
End If
|
|
If UCase(ctl.Name) = "TXTC" + UCase(c.ColumnName) Then
|
|
Try
|
|
Dim wert As Double
|
|
wert = R(c.ColumnName)
|
|
ctl.Text = wert.ToString("N2")
|
|
Catch
|
|
ctl.Text = "0.00"
|
|
End Try
|
|
'Exit For
|
|
End If
|
|
|
|
|
|
|
|
If UCase(ctl.Name) = "MTXT" + UCase(c.ColumnName) Then
|
|
Dim mtxt As Object
|
|
mtxt = ctl
|
|
Dim v As Double = R(c.ColumnName)
|
|
Dim s As String
|
|
s = v.ToString("F")
|
|
mtxt.Text = s
|
|
'Exit For
|
|
End If
|
|
If UCase(ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then
|
|
|
|
Dim ct As MyCombobox
|
|
Dim o As Object = ctl
|
|
Try
|
|
If c.ColumnName = "mwstsatz" Then o.text = R(c.ColumnName) Else o.SelectedValue = R(c.ColumnName)
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
o.selectedvalue = -1
|
|
End Try
|
|
Try
|
|
Catch
|
|
End Try
|
|
|
|
|
|
'Exit For
|
|
End If
|
|
If UCase(ctl.Name) = "DT" + UCase(c.ColumnName) Then
|
|
Dim dt As DateTimePicker
|
|
dt = ctl
|
|
Try
|
|
dt.Value = R(c.ColumnName)
|
|
'Exit For
|
|
Catch ex As Exception
|
|
dt.Value = Nothing
|
|
End Try
|
|
End If
|
|
If UCase(ctl.Name) = "DDT" + UCase(c.ColumnName) Then
|
|
Dim dt As DevComponents.Editors.DateTimeAdv.DateTimeInput
|
|
dt = ctl
|
|
Try
|
|
dt.Value = R(c.ColumnName)
|
|
'Exit For
|
|
Catch ex As Exception
|
|
dt.Value = Nothing
|
|
End Try
|
|
End If
|
|
If UCase(ctl.Name) = "CHK" + UCase(c.ColumnName) Then
|
|
Dim dt As CheckBox
|
|
dt = ctl
|
|
Try
|
|
dt.Checked = R(c.ColumnName)
|
|
'Exit For
|
|
Catch
|
|
dt.Checked = False
|
|
End Try
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message + " / " + ctl.Name + " / " + R(c.ColumnName))
|
|
End Try
|
|
|
|
Next
|
|
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
Me.txtProjekt.Text = Me.txtBehandlungsgrund.Text
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Sub Get_Garantdata(ByVal Key As Integer)
|
|
Dim db1 As New clsDB
|
|
Dim garantdatan As New DataTable
|
|
If Key > 49999 Then
|
|
db1.Get_Tabledata("Firma", "", "Select nrfirma, name1 +', '+ort +' ('+ltrim(rtrim(str(nrfirma)))+')' as Name1 from firma where aktiv=1 and nrfirma=" + Key.ToString + " order by name1")
|
|
'Me.lblGarantText.Text = db.dsDaten.Tables(0).Rows(0).Item("nrfirma").ToString + " - " + db.dsDaten.Tables(0).Rows(0).Item("name1")
|
|
|
|
|
|
Else
|
|
db1.Get_Tabledata("Privat", "", "Select nrprivat,name+' '+vorname+', '+plz+' '+ort +' ('+ltrim(rtrim(str(nrprivat)))+')' as Name1 from privat where nrprivat=" + Key.ToString + " and aktiv=1 and (garant=1 or gesvertreter=1) order by name, vorname")
|
|
'Me.lblGarantText.Text = db.dsDaten.Tables(0).Rows(0).Item("nrprivat").ToString + " - " + db.dsDaten.Tables(0).Rows(0).Item("name1")
|
|
End If
|
|
|
|
|
|
Me.cbboxNrGarant.DataSource = Nothing
|
|
garantdatan = db1.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrGarant.DataSource = garantdatan
|
|
If Key > 49999 Then
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrfirma"
|
|
Else
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrprivat"
|
|
End If
|
|
|
|
If Key > 49999 Then
|
|
get_ansprechpartner(Key)
|
|
End If
|
|
db1.Dispose()
|
|
Application.DoEvents()
|
|
End Sub
|
|
|
|
Sub get_ansprechpartner(ByVal key As Integer)
|
|
Try
|
|
Dim ansprechpartnerdaten As New DataTable
|
|
db.Get_Tabledata("FAAP", "", "Select nrfirmaap, Name from firmaap where nrfirma=" + key.ToString)
|
|
Me.cbboxNrAnsprechpartner.DataSource = Nothing
|
|
ansprechpartnerdaten = db.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrAnsprechpartner.DataSource = ansprechpartnerdaten
|
|
Me.cbboxNrAnsprechpartner.Displaymember = "Name"
|
|
Me.cbboxNrAnsprechpartner.Valuemember = "nrfirmaap"
|
|
|
|
If Me.NrAnsprechpartner <> 0 Then
|
|
Me.cbboxNrAnsprechpartner.SelectedValue = Me.NrAnsprechpartner
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
|
|
Sub Save_Data()
|
|
If Globals.OnLoad = True Then Exit Sub
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
Me.txtBehandlungsgrund.Text = Me.txtProjekt.Text
|
|
Me.txtGLN_Liste.Text = Me.txtAnsprechpartner.Text
|
|
Me.txtFallnummer.Text = Me.txtunserereferenz.Text
|
|
Me.txtDiagnose.Text = Me.chkOhneMwst.Checked
|
|
|
|
End If
|
|
|
|
If Me.Behandlungsstatus <> 1 And Me.Behandlungsstatus <> 4 Then Exit Sub
|
|
db.Get_Tabledata("behandlu", " where nrbehandlung=" + Me.Behandlungsnr.ToString)
|
|
Dim r As DataRow = db.dsDaten.Tables(0).Rows(0)
|
|
|
|
For Each ctl As Control In Me.Controls
|
|
If UCase(ctl.Name.Substring(0, 3)) = "GRP" Then
|
|
save_controldata(r, ctl)
|
|
End If
|
|
Next
|
|
Try
|
|
r("verguetungsart") = Me.cbboxNrVerguetungsart.SelectedValue
|
|
Catch
|
|
End Try
|
|
|
|
r("Mutiert_am") = Now
|
|
r("mutierer") = Globals.ActUser
|
|
r("total") = Me.txtcTotal.Text
|
|
|
|
If Me.cbansprechperson.Text <> "" Then
|
|
Dim ap As New clsDB
|
|
ap.Get_Tabledata("Ansprechpartner", "", "select id from privat_ansprechpartner where name='" + Me.cbansprechperson.Text + "' and nrprivat=" + Me.Patientnr.ToString)
|
|
r("nransprechpartner") = ap.dsDaten.Tables(0).Rows(0).Item(0).ToString
|
|
End If
|
|
|
|
If Globals.DruckBranche Then r("nrgarant") = cbrechnungsadresse.SelectedIndex
|
|
|
|
db.Update_Data()
|
|
|
|
|
|
|
|
Me.HasChanges = False
|
|
|
|
End Sub
|
|
|
|
Sub save_controldata(r As DataRow, ictl As Control)
|
|
For Each c As DataColumn In db.dsDaten.Tables(0).Columns
|
|
|
|
For Each Ctl As Control In ictl.Controls
|
|
If UCase(Ctl.Name) = "TXT" + UCase(c.ColumnName) Then
|
|
If UCase(Ctl.Name) <> "TXTMUTIERT_AM" And UCase(Ctl.Name) <> "TXTERSTLLT_AM" Then
|
|
r(c.ColumnName) = Ctl.Text
|
|
'Exit For
|
|
End If
|
|
End If
|
|
If UCase(Ctl.Name) = "MTXT" + UCase(c.ColumnName) Then
|
|
r(c.ColumnName) = Ctl.Text
|
|
'Exit For
|
|
End If
|
|
If UCase(Ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then
|
|
Dim ct As MyCombobox
|
|
Dim o As Object = Ctl
|
|
Try
|
|
If c.ColumnName = "mwstsatz" Then r(c.ColumnName) = o.text Else r(c.ColumnName) = o.selectedvalue
|
|
Catch ex As Exception
|
|
r(c.ColumnName) = 0
|
|
End Try
|
|
'Exit For
|
|
End If
|
|
|
|
If UCase(Ctl.Name) = "DT" + UCase(c.ColumnName) Then
|
|
Dim dt As DateTimePicker
|
|
dt = Ctl
|
|
r(c.ColumnName) = dt.Value
|
|
'Exit For
|
|
End If
|
|
If UCase(Ctl.Name) = "CHK" + UCase(c.ColumnName) Then
|
|
Dim dt As CheckBox
|
|
dt = Ctl
|
|
r(c.ColumnName) = dt.Checked
|
|
'Exit For
|
|
End If
|
|
If UCase(Ctl.Name) = "DDT" + UCase(c.ColumnName) Then
|
|
Dim dt As DevComponents.Editors.DateTimeAdv.DateTimeInput
|
|
dt = Ctl
|
|
If Year(dt.Value) < 1901 Then r(c.ColumnName) = System.DBNull.Value Else r(c.ColumnName) = dt.Value
|
|
'xit For
|
|
End If
|
|
Next
|
|
Next
|
|
|
|
End Sub
|
|
#End Region
|
|
|
|
Public Sub chk_dateien()
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
Dim db As New clsDB
|
|
Me.lstdateien.Items.Clear()
|
|
|
|
db.Get_Tabledata("Dateien", "", "Select * from Behandlungsdateien where nrbehandlung=" & Me.Behandlungsnr.ToString, "")
|
|
For Each r In db.dsDaten.Tables(0).Rows
|
|
Me.lstdateien.Items.Add(r("dateiverweis"))
|
|
Next
|
|
End If
|
|
End Sub
|
|
Public Sub Get_Stammdaten()
|
|
'Me.OnLoad = True
|
|
|
|
Me.cbboxnrbehandler.Dataselection = db.Get_SQL(2)
|
|
Me.cbboxnrbehandler.TableAlias = "Behandler_BH"
|
|
Me.cbboxnrbehandler.Table = "Behandler"
|
|
Me.cbboxnrbehandler.Displaymember = "Name"
|
|
Me.cbboxnrbehandler.Valuemember = "nrprivat"
|
|
|
|
Me.cbboxNrZuweiser.Dataselection = db.Get_SQL(32)
|
|
Me.cbboxNrZuweiser.TableAlias = "Zuweiser"
|
|
Me.cbboxNrZuweiser.Table = "Behandler"
|
|
Me.cbboxNrZuweiser.Displaymember = "Name"
|
|
Me.cbboxNrZuweiser.Valuemember = "nrprivat"
|
|
|
|
Me.cbboxNrGesetz.Dataselection = db.Get_SQL(33)
|
|
Me.cbboxNrGesetz.TableAlias = "Gesetz"
|
|
Me.cbboxNrGesetz.Table = "Gesetz"
|
|
Me.cbboxNrGesetz.Displaymember = "Gesetz"
|
|
Me.cbboxNrGesetz.Valuemember = "nrgesetz"
|
|
|
|
Me.cbboxNrBehandlungsart.Dataselection = "Select * from Behandlungsart"
|
|
Me.cbboxNrBehandlungsart.TableAlias = "Behandlungsart"
|
|
Me.cbboxNrBehandlungsart.Table = "Behandlungsart"
|
|
Me.cbboxNrBehandlungsart.Displaymember = "Behandlungsart"
|
|
Me.cbboxNrBehandlungsart.Valuemember = "NrBehandlungsart"
|
|
|
|
Me.cbboxNRESTyp.Dataselection = "Select * FROM ESTYP WHERE AKTIV=1"
|
|
Me.cbboxNRESTyp.TableAlias = "ESTYP_BH"
|
|
Me.cbboxNRESTyp.Table = "ESTyp"
|
|
Me.cbboxNRESTyp.Displaymember = "estyp"
|
|
Me.cbboxNRESTyp.Valuemember = "nrestyp"
|
|
|
|
Me.cbboxNRRGtyp.TableAlias = "RGTYP_BH"
|
|
Me.cbboxNRRGtyp.Table = "RGTyp"
|
|
Me.cbboxNRRGtyp.Displaymember = "bezd"
|
|
Me.cbboxNRRGtyp.Valuemember = "nrrgtyp"
|
|
|
|
Me.cbboxNrAbrechnungstyp.TableAlias = "AbrTyp_BH"
|
|
Me.cbboxNrAbrechnungstyp.Table = "Abrtyp"
|
|
Me.cbboxNrAbrechnungstyp.Displaymember = "bezd"
|
|
Me.cbboxNrAbrechnungstyp.Valuemember = "nrabrechnungstyp"
|
|
|
|
Me.cbboxNrAnsatz.Table = "Ansatz"
|
|
Me.cbboxNrAnsatz.Displaymember = "Funktionsbezeichnung"
|
|
Me.cbboxNrAnsatz.Valuemember = "NRAnsatz"
|
|
|
|
'Me.cbboxNRESTyp.Dataselection = "Select * FROM taxpunkt WHERE AKTIV=1"
|
|
Me.cbboxNrtaxpunkt.Table = "Taxpunkt"
|
|
Me.cbboxNrtaxpunkt.Displaymember = "Bezd"
|
|
Me.cbboxNrtaxpunkt.Valuemember = "nrtaxpunkt"
|
|
|
|
Me.cbboxrgtext.Dataselection = db.Get_SQL(21)
|
|
Me.cbboxrgtext.TableAlias = "Rechnungstext"
|
|
Me.cbboxrgtext.Table = "Rechtext"
|
|
Me.cbboxrgtext.Displaymember = "Textd"
|
|
Me.cbboxrgtext.Valuemember = "Nrrechnungstext"
|
|
' Me.OnLoad = False
|
|
|
|
Me.cbboxNrVerguetungsart.Dataselection = "Select * from verguetungsart where aktiv=1 order by nreintrag"
|
|
Me.cbboxNrVerguetungsart.TableAlias = "Verguetungsart"
|
|
Me.cbboxNrVerguetungsart.Table = "Verguetungsart"
|
|
Me.cbboxNrVerguetungsart.Displaymember = "Verguetungsart"
|
|
Me.cbboxNrVerguetungsart.Valuemember = "Nreintrag"
|
|
Dim dbx As New clsDB
|
|
Try
|
|
|
|
Me.lblahvnr.Text = dbx.Get_Datavalue("Select ahvnr from privat where nrprivat=" + Me.Patientnr.ToString)
|
|
Catch
|
|
Me.lblahvnr.Text = ""
|
|
End Try
|
|
dbx.Dispose()
|
|
|
|
|
|
Try
|
|
Me.cbansprechperson.Items.Clear()
|
|
Me.cbansprechperson.Items.Add("")
|
|
Dim ap As New clsDB
|
|
ap.Get_Tabledata("Ansprechpartner", "", "Select id,Name from privat_ansprechpartner where aktiv=1 and nrprivat=" + Me.Patientnr.ToString + " order by name")
|
|
Dim i As Integer = 0
|
|
Me.cbansprechperson.SelectedIndex = i
|
|
For Each r1 As DataRow In ap.dsDaten.Tables(0).Rows
|
|
Me.cbansprechperson.Items.Add(r1("Name"))
|
|
Next
|
|
ap.Dispose()
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Public Sub Recalc_Totale()
|
|
If OnLoad Then Exit Sub
|
|
Dim zdb As New clsDB
|
|
Dim vz As Double = 0
|
|
zdb.Get_Tabledata("Zahlung", "where aktiv=1 And vorauszahlung=1 And nrbehandlung=" + Me.Behandlungsnr.ToString)
|
|
For Each r As DataRow In zdb.dsDaten.Tables(0).Rows
|
|
vz = vz + r("Betrag")
|
|
Next
|
|
zdb.Dispose()
|
|
|
|
Dim rz As Double
|
|
Try
|
|
If Me.txtAnzahlraten.Text > 0 Then
|
|
rz = Me.mtxtRatenzuschlag.Text
|
|
Else
|
|
rz = 0
|
|
End If
|
|
|
|
|
|
Catch ex As Exception
|
|
rz = 0
|
|
End Try
|
|
|
|
Dim ssototal As Double
|
|
|
|
Dim ldb As New clsDB
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
ldb.Get_Tabledata("View_Leistungen", "where nrbehandlung=" + Me.Behandlungsnr.ToString + " And aktiv=1")
|
|
|
|
Else
|
|
ldb.Get_Tabledata("Leistung", "where nrbehandlung=" + Me.Behandlungsnr.ToString + " And aktiv=1")
|
|
End If
|
|
If Globals.DruckBranche Then
|
|
ldb.Get_Tabledata("View_Leistung_druck", "where behandlungnr=" + Me.Behandlungsnr.ToString + " And aktiv=1")
|
|
|
|
End If
|
|
Dim total As Double
|
|
For Each r As DataRow In ldb.dsDaten.Tables(0).Rows
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
If r("rabatt") = True Then
|
|
ssototal = ssototal + r("total")
|
|
End If
|
|
total = total + r("Total")
|
|
Else
|
|
If r("aktiv") = True Then
|
|
If r("SSO_Nummer").ToString.Substring(0, 1) = "4" Then ssototal = ssototal + r("total")
|
|
If r("SSO_Nummer").ToString.Substring(0, 1) = "9" Then ssototal = ssototal + r("total")
|
|
'If r("sso_Nummer") > 3999 And r("sso_nummer") < 5000 Then ssototal = ssototal + r("total")
|
|
total = total + r("Total")
|
|
End If
|
|
End If
|
|
|
|
Next
|
|
Me.txtcBehandlungstotal.Text = total.ToString("N2")
|
|
total = 0
|
|
ldb.Dispose()
|
|
|
|
|
|
|
|
|
|
total = total + txtcBehandlungstotal.Text
|
|
|
|
|
|
Me.txtcRatenzuschlat.Text = Globals.Round5(rz.ToString).ToString
|
|
total = total - vz
|
|
Me.txtcVorauszahlungen.Text = Globals.Round5(vz.ToString).ToString
|
|
|
|
Try
|
|
Dim stotal As Double = total
|
|
If chkRabattGesamt.Checked Then
|
|
total = (100 - mtxtRabatt.Text) * total / 100
|
|
Else
|
|
Dim xxtotal As Double
|
|
Dim xabs As String = db.Get_Option(10000)
|
|
If UCase(xabs) <> "TRUE" Then
|
|
total = stotal - (ssototal / 100 * Me.mtxtRabatt.Text)
|
|
Else
|
|
Dim xldb As New clsDB
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
xldb.Get_Tabledata("View_Leistungen", "where nrbehandlung=" + Me.Behandlungsnr.ToString + " And aktiv=1")
|
|
Else
|
|
xldb.Get_Tabledata("Leistung", "where absolut=0 and nrbehandlung=" + Me.Behandlungsnr.ToString + " And aktiv=1")
|
|
End If
|
|
|
|
For Each r As DataRow In xldb.dsDaten.Tables(0).Rows
|
|
If Globals.Applicationtype = ApplicationTypes.Projektabrechnung Then
|
|
If r("rabatt") = True Then
|
|
xxtotal = xxtotal + r("total")
|
|
End If
|
|
Else
|
|
If r("aktiv") = True Then
|
|
If r("SSO_Nummer").ToString.Substring(0, 1) = "4" Then xxtotal = xxtotal + r("total")
|
|
If r("SSO_Nummer").ToString.Substring(0, 1) = "9" Then xxtotal = xxtotal + r("total")
|
|
'If r("sso_Nummer") > 3999 And r("sso_nummer") < 5000 Then ssototal = ssototal + r("total")
|
|
End If
|
|
|
|
End If
|
|
Next
|
|
xldb.Dispose()
|
|
End If
|
|
total = stotal - (xxtotal / 100 * Me.mtxtRabatt.Text)
|
|
|
|
End If
|
|
Me.txtcRabatt.Text = ((stotal - total) * -1).ToString
|
|
Me.txtcRabatt.Text = Globals.Round5(Me.txtcRabatt.Text)
|
|
Catch ex As Exception
|
|
total = 0
|
|
End Try
|
|
total = total + rz
|
|
Me.txtcTotal.Text = Globals.Round5(total.ToString).ToString
|
|
evh.Fire_Totale_Berechnet(Me.Behandlungsnr)
|
|
Try
|
|
evh.Fire_Total_Berechnet(Me.Behandlungsnr, Me.txtcTotal.Text)
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub evh_Leistung_Changed(Behandlungsnummer As Integer, total As Double) Handles evh.Leistung_Changed
|
|
If Me.Behandlungsnr = Behandlungsnummer Then
|
|
Me.txtcBehandlungstotal.Text = total.ToString("N2")
|
|
End If
|
|
Recalc_Totale()
|
|
End Sub
|
|
|
|
Private Sub evh_PatSaved(Nr As Integer) Handles evh.PatSaved
|
|
If Me.Patientnr = Nr Then Save_Data()
|
|
End Sub
|
|
|
|
|
|
|
|
|
|
|
|
Private Sub evh_Totale_Berechnet(behandlungsnummer As Integer) Handles evh.Totale_Berechnet
|
|
If Me.Behandlungsnr = behandlungsnummer Then
|
|
If Globals.OnLoad = True Then Exit Sub
|
|
|
|
Save_Data()
|
|
' evh.Fire_Behandlung_Changed(Me.Behandlungsnr, Me.Patientnr)
|
|
End If
|
|
End Sub
|
|
|
|
|
|
'Private Sub mtxtTaxpunktwert_Leave(sender As Object, e As EventArgs) Handles mtxtTaxpunktwert.Leave
|
|
' If Not IsNumeric(Me.mtxtTaxpunktwert.Text) Then
|
|
' MsgBox("Wert ungültig.", MsgBoxStyle.Exclamation)
|
|
' Me.mtxtTaxpunktwert.Focus()
|
|
' Me.mtxtTaxpunktwert.SelectAll()
|
|
' Exit Sub
|
|
' End If
|
|
' evh.fire_Taxpunktwert_Changed(Me.Behandlungsnr, Me.Patientnr, Me.mtxtTaxpunktwert.Text)
|
|
'End Sub
|
|
|
|
'Private Sub txtcRabatt_Leave(sender As Object, e As EventArgs) Handles mtxtRabatt.Leave
|
|
' If Not IsNumeric(Me.mtxtRabatt.Text) Then
|
|
' MsgBox("Wert ungültig.", MsgBoxStyle.Exclamation)
|
|
' Me.mtxtRabatt.Focus()
|
|
' Me.mtxtRabatt.SelectAll()
|
|
' Exit Sub
|
|
' End If
|
|
' Recalc_Totale()
|
|
'End Sub
|
|
|
|
|
|
Private Sub txtcTotal_TextChanged(sender As Object, e As EventArgs) Handles txtcTotal.TextChanged
|
|
Try
|
|
evh.Fire_Total_Berechnet(Me.Behandlungsnr, Me.txtcTotal.Text)
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub cbboxNRRGtyp_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNRRGtyp.SelectedIndexChanged
|
|
If OnLoad Then Exit Sub
|
|
If OnGetData Then Exit Sub
|
|
Try
|
|
For Each r As DataRow In IntTables.Inttables.Tables("rgtyp").Rows
|
|
If r("nrrgtyp") = Me.cbboxNRRGtyp.SelectedValue Then
|
|
Me.cbboxNrAbrechnungstyp.SelectedValue = r.Item("nrabrechnungstyp")
|
|
End If
|
|
Next
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub cbboxNrAbrechnungstyp_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNrAbrechnungstyp.SelectedValueChanged
|
|
If OnLoad Then Exit Sub
|
|
If OnGetData Then Exit Sub
|
|
Update_cbboxnrtaxpunkt()
|
|
End Sub
|
|
Private Sub Update_cbboxnrtaxpunkt()
|
|
|
|
|
|
Try
|
|
For Each r As DataRow In IntTables.Inttables.Tables("abrtyp_bh").Rows
|
|
If r("Nrabrechnungstyp") = Me.cbboxNrAbrechnungstyp.SelectedValue Then
|
|
Me.cbboxNrAnsatz.SelectedValue = r("nransatz")
|
|
Me.cbboxNrtaxpunkt.SelectedValue = r("nrtaxpunkt")
|
|
If r("taxpunktwertfix") = True Then Me.cbboxNrtaxpunkt.Enabled = False Else Me.cbboxNrtaxpunkt.Enabled = True
|
|
If r("ansatzfix") = True Then mtxtTaxpunktwert.Enabled = False Else Me.mtxtTaxpunktwert.Enabled = True
|
|
End If
|
|
Next
|
|
Catch ex As Exception
|
|
' MsgBox(ex.Message)
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub cbboxNrAnsatz_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNrAnsatz.SelectedValueChanged
|
|
If OnLoad Then Exit Sub
|
|
If OnGetData Then Exit Sub
|
|
Try
|
|
For Each r As DataRow In IntTables.Inttables.Tables("ansatz").Rows
|
|
If r("nransatz") = Me.cbboxNrAnsatz.SelectedValue Then
|
|
mtxtTaxpunktwert.Text = r("taxpunktwert")
|
|
Recalc_Totale()
|
|
End If
|
|
Next
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub tsbtnSave_Click(sender As Object, e As EventArgs) Handles tsbtnSave.Click
|
|
Me.Save_Data()
|
|
Globals.ToastInfo.ShowSaveMesasge(Me.ParentForm)
|
|
evh.Fire_Behandlung_Changed(Me.Behandlungsnr, Me.Patientnr)
|
|
End Sub
|
|
|
|
|
|
Sub Enable_Disable_fields(Optional enable As Boolean = False)
|
|
Select Case Me.Behandlungsstatus
|
|
Case 1, 4
|
|
|
|
enable = True
|
|
Case Else
|
|
|
|
enable = False
|
|
End Select
|
|
|
|
Me.GrpPatient.Enabled = enable
|
|
Me.grpAbrechnung.Enabled = enable
|
|
Me.grpBehandlungsdaten.Enabled = enable
|
|
Me.GrpGaramt.Enabled = enable
|
|
Me.GrpRaten.Enabled = enable
|
|
Me.tsbtnSave.Enabled = enable
|
|
Me.grpglndiagnose.Enabled = enable
|
|
Me.GrpRechnungstext.Enabled = enable
|
|
Me.grpEmpfaenger.Enabled = enable
|
|
End Sub
|
|
|
|
|
|
Private Sub txtAnzahlRaten_ValueChanged(sender As Object, e As EventArgs) Handles txtAnzahlraten.TextChanged
|
|
Me.Recalc_Totale()
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs)
|
|
Dim f As New frmReportView(1, True, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString)
|
|
f.Show()
|
|
'f.Vorschau_Rechnung()
|
|
f.Close()
|
|
End Sub
|
|
|
|
Private Sub mtxtRatenzuschlag_TextChanged(sender As Object, e As EventArgs) Handles mtxtRatenzuschlag.TextChanged
|
|
Me.Recalc_Totale()
|
|
End Sub
|
|
|
|
Private Sub mtxtRabatt_TextChanged(sender As Object, e As EventArgs) Handles mtxtRabatt.TextChanged
|
|
Recalc_Totale()
|
|
End Sub
|
|
|
|
Private Sub chkRabattGesamt_CheckedChanged(sender As Object, e As EventArgs) Handles chkRabattGesamt.CheckedChanged
|
|
Recalc_Totale()
|
|
End Sub
|
|
|
|
Private Sub rbversicherung_CheckedChanged(sender As Object, e As EventArgs) Handles rbversicherung.CheckedChanged
|
|
If rbversicherung.Checked Then
|
|
Dim garantdatan As New DataTable
|
|
db.Get_Tabledata("Firma", "", "Select nrfirma, name1 +', '+ort +' ('+ltrim(rtrim(str(nrfirma)))+')' as Name1 from firma where vs=1 and aktiv=1 order by name1")
|
|
Me.cbboxNrGarant.DataSource = Nothing
|
|
garantdatan = db.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrGarant.DataSource = garantdatan
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrfirma"
|
|
Me.cbboxNrGarant.Focus()
|
|
Me.rbversicherung.Checked = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub rbfs_CheckedChanged(sender As Object, e As EventArgs) Handles rbfs.CheckedChanged
|
|
If rbfs.Checked Then
|
|
Dim garantdatan As New DataTable
|
|
db.Get_Tabledata("Firma", "", "Select nrfirma, name1 +', '+ort +' ('+ltrim(rtrim(str(nrfirma)))+')' as Name1 from firma where fs=1 and aktiv=1 order by name1")
|
|
Me.cbboxNrGarant.DataSource = Nothing
|
|
garantdatan = db.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrGarant.DataSource = garantdatan
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrfirma"
|
|
Me.cbboxNrGarant.Focus()
|
|
Me.rbfs.Checked = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub rbiv_CheckedChanged(sender As Object, e As EventArgs) Handles rbiv.CheckedChanged
|
|
If rbiv.Checked Then
|
|
Dim garantdatan As New DataTable
|
|
db.Get_Tabledata("Firma", "", "Select nrfirma, name1 +', '+ort +' ('+ltrim(rtrim(str(nrfirma)))+')' as Name1 from firma where iv=1 and aktiv=1 order by name1")
|
|
Me.cbboxNrGarant.DataSource = Nothing
|
|
garantdatan = db.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrGarant.DataSource = garantdatan
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrfirma"
|
|
Me.cbboxNrGarant.Focus()
|
|
Me.rbiv.Checked = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub rbdiverseFirmen_CheckedChanged(sender As Object, e As EventArgs) Handles rbdiverseFirmen.CheckedChanged
|
|
Dim garantdatan As New DataTable
|
|
db.Get_Tabledata("Firma", "", "Select nrfirma, name1 +', '+ort +' ('+ltrim(rtrim(str(nrfirma)))+')' as Name1 from firma where aktiv=1 order by name1")
|
|
Me.cbboxNrGarant.DataSource = Nothing
|
|
garantdatan = db.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrGarant.DataSource = garantdatan
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrfirma"
|
|
Me.cbboxNrGarant.Focus()
|
|
Me.rbdiverseFirmen.Checked = False
|
|
End Sub
|
|
|
|
Private Sub rbkk_CheckedChanged(sender As Object, e As EventArgs) Handles rbkk.CheckedChanged
|
|
If rbkk.Checked Then
|
|
Dim garantdatan As New DataTable
|
|
db.Get_Tabledata("Firma", "", "Select nrfirma, name1 +', '+ort +' ('+ltrim(rtrim(str(nrfirma)))+')' as Name1 from firma where kk=1 and aktiv=1 order by name1")
|
|
Me.cbboxNrGarant.DataSource = Nothing
|
|
garantdatan = db.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrGarant.DataSource = garantdatan
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrfirma"
|
|
Me.cbboxNrGarant.Focus()
|
|
Me.rbkk.Checked = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub rbPrivatPersonen_CheckedChanged(sender As Object, e As EventArgs) Handles rbPrivatPersonen.CheckedChanged
|
|
If rbPrivatPersonen.Checked Then
|
|
Dim garantdatan As New DataTable
|
|
db.Get_Tabledata("Privat", "", "Select nrprivat,name+' '+vorname+', '+plz+' '+ort +' ('+ltrim(rtrim(str(nrprivat)))+')' as Name1 from privat where ltrim(name)<>'' and aktiv=1 and (garant=1 or gesvertreter=1) order by name, vorname")
|
|
Me.cbboxNrGarant.DataSource = Nothing
|
|
garantdatan = db.dsDaten.Tables(0).Copy
|
|
Me.cbboxNrGarant.DataSource = garantdatan
|
|
Me.cbboxNrGarant.Displaymember = "name1"
|
|
Me.cbboxNrGarant.Valuemember = "nrprivat"
|
|
Me.cbboxNrGarant.Focus()
|
|
Me.rbPrivatPersonen.Checked = False
|
|
|
|
End If
|
|
End Sub
|
|
|
|
|
|
|
|
Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked
|
|
|
|
End Sub
|
|
|
|
Private Sub cbboxNrGarant_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNrGarant.SelectedIndexChanged
|
|
Try
|
|
Try
|
|
check_mailversand(Me.cbboxNrGarant.SelectedValue)
|
|
Catch
|
|
End Try
|
|
|
|
get_ansprechpartner(Me.cbboxNrGarant.SelectedValue)
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub mtxtTaxpunktwert_TextChanged(sender As Object, e As EventArgs) Handles mtxtTaxpunktwert.Leave
|
|
If Me.Behandlungsstatus <> 1 And Me.Behandlungsstatus <> 4 Then Exit Sub
|
|
Me.Save_Data()
|
|
db.Recalc_Leistungen(Me.Behandlungsnr, Me.mtxtTaxpunktwert.Text)
|
|
Me.Save_Data()
|
|
Recalc_Totale()
|
|
End Sub
|
|
|
|
Private Sub cbboxNrAnsatz_SelectedIndexChanged_1(sender As Object, e As EventArgs) Handles cbboxNrAnsatz.SelectedIndexChanged
|
|
If Me.OnLoad Then Exit Sub
|
|
If Me.Behandlungsstatus <> 1 And Me.Behandlungsstatus <> 4 Then Exit Sub
|
|
Me.Save_Data()
|
|
db.Recalc_Leistungen(Me.Behandlungsnr, Me.mtxtTaxpunktwert.Text)
|
|
Me.Save_Data()
|
|
Recalc_Totale()
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton1_Click_1(sender As Object, e As EventArgs)
|
|
|
|
End Sub
|
|
|
|
Public Sub Sofortrechnung_als_pdf(Optional alsMail As Boolean = False, Optional Mailtext As Integer = 0)
|
|
Sofortrechnung(True, alsMail, Mailtext)
|
|
End Sub
|
|
|
|
Public Sub Sofortrechung_normal()
|
|
Sofortrechnung(False)
|
|
End Sub
|
|
'Public Sub ToolStripDropDownButton1_Click(sender As Object, e As EventArgs) Handles ToolStripDropDownButton1.Click
|
|
Public Sub Sofortrechnung(ByVal alsPDF As Boolean, Optional alsMail As Boolean = False, Optional Mailtext As Integer = 0)
|
|
|
|
Globals.pdfCollection.Clear()
|
|
Me.Save_Data()
|
|
Dim result As String = db.Get_Datavalue("Select status from behandlu where nrbehandlung=" + Me.Behandlungsnr.ToString, "")
|
|
If result <> 2 And result <> 5 And Globals.akontobuchung = False Then
|
|
If MsgBox("Es können nur abgeschlossene Rechnungen/KV gedruckt und verbucht werden. Abschliessen und drucken/verbuchen?", vbYesNo + vbQuestion) = vbYes Then
|
|
'btnAbschliessen_Click(sender, e)
|
|
Else
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
Dim Meldung As String
|
|
Dim res As MsgBoxResult
|
|
If Globals.akontovorschau = False Then
|
|
If result = 5 And Mailtext = 1 Then Mailtext = 3
|
|
If result = 5 Then Meldung = "Kostenvoranschlag drucken?" Else Meldung = "Rechnung drucken und verbuchen?"
|
|
|
|
|
|
If Globals.IgnorePrint = False Then
|
|
res = MsgBox(Meldung, vbYesNo + vbQuestion)
|
|
Else
|
|
res = MsgBoxResult.Yes
|
|
End If
|
|
Else
|
|
res = MsgBoxResult.Yes
|
|
End If
|
|
|
|
If res = MsgBoxResult.Yes Then
|
|
Dim buchen As Boolean = True
|
|
If result = 5 Then buchen = False
|
|
Dim anzahlraten As Integer = 0
|
|
Dim Empfaenger As String = ""
|
|
db.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.Behandlungsnr.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(Me.cbboxNRESTyp.Text)
|
|
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
|
|
Globals.FakturaNr = 0
|
|
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 = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString, alsPDF)
|
|
f0.Visible = False
|
|
f0.Show()
|
|
f0.Visible = False
|
|
f0.Fakturierung(9999, Me.Behandlungsnr, "", i, buchen:=False)
|
|
f0.Close()
|
|
Globals.FakturaNr = 0
|
|
End If
|
|
Dim f As New frmReportView(reportnr, False, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString, alsPDF)
|
|
f.Visible = False
|
|
f.Show()
|
|
f.Visible = False
|
|
|
|
f.Fakturierung(reportnr, Me.Behandlungsnr, "", i, buchen:=buchen)
|
|
f.Close()
|
|
If anzahlraten > 1 And i < 2 And Folgeauswertung > 0 Then
|
|
buchen = False
|
|
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 = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString, alsPDF)
|
|
f1.Visible = False
|
|
f1.Show()
|
|
f1.Visible = False
|
|
f1.Fakturierung(reportnr, Me.Behandlungsnr, "", i, buchen:=buchen)
|
|
f1.Close()
|
|
buchen = True
|
|
reportnr = db.Get_ReportNr(Me.cbboxNRESTyp.Text)
|
|
End If
|
|
Next i
|
|
If Folgeauswertung > 0 And anzahlraten < 2 Then
|
|
buchen = False
|
|
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.IgnorePrint Then
|
|
evh.Refresh_Behandlungen(Me.Behandlungsnr, Me.Patientnr)
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim pdfitem As clspdfcollectionitem = Globals.pdfCollection.Item(1)
|
|
Dim xdb As New clsDB
|
|
If Globals.akontobuchung = True Then
|
|
Try
|
|
xdb.Get_Tabledata("akonto", "", "Select * from akonto where id=" + Globals.akontoid.ToString)
|
|
If xdb.dsDaten.Tables(0).Rows.Count > 0 Then
|
|
|
|
Dim tmpcollection As New Collection
|
|
For i = 1 To Globals.pdfCollection.Count
|
|
tmpcollection.Add(Globals.pdfCollection(i))
|
|
Next
|
|
Globals.pdfCollection.Clear()
|
|
For Each r As DataRow In xdb.dsDaten.Tables(0).Rows
|
|
Dim d As New clsDok
|
|
Dim fn As String = d.Get_Aktono_Dokument(r("id"))
|
|
If fn <> "" Then Globals.pdfCollection.Add(New clspdfcollectionitem(pdfitem.fakturanr, fn))
|
|
Next
|
|
For i = 1 To tmpcollection.Count
|
|
Globals.pdfCollection.Add(tmpcollection.Item(i))
|
|
Next
|
|
End If
|
|
Catch
|
|
End Try
|
|
|
|
Else
|
|
Try
|
|
xdb.Get_Tabledata("Dateien", "", "Select * from behandlungsdateien where nrbehandlung=" + Me.Behandlungsnr.ToString)
|
|
If xdb.dsDaten.Tables(0).Rows.Count > 0 Then
|
|
|
|
Dim tmpcollection As New Collection
|
|
For i = 1 To Globals.pdfCollection.Count
|
|
tmpcollection.Add(Globals.pdfCollection(i))
|
|
Next
|
|
Globals.pdfCollection.Clear()
|
|
For Each r As DataRow In xdb.dsDaten.Tables(0).Rows
|
|
Globals.pdfCollection.Add(New clspdfcollectionitem(pdfitem.fakturanr, r("Dateiverweis")))
|
|
Next
|
|
For i = 1 To tmpcollection.Count
|
|
Globals.pdfCollection.Add(tmpcollection.Item(i))
|
|
Next
|
|
End If
|
|
Catch
|
|
End Try
|
|
End If
|
|
End If
|
|
Globals.akontobuchung = False
|
|
Dim pdfh As New clspdfhelper
|
|
If result = 5 Then
|
|
pdfh.Create_Archivdoc(clspdfhelper.GetEmpfaengerType.FromOfferte, "", "Kostenvoranschlag:", Me.Behandlungsnr)
|
|
Else
|
|
pdfh.Create_Archivdoc(clspdfhelper.GetEmpfaengerType.FromLastFaktura, "", "Sofortrechnung:")
|
|
|
|
End If
|
|
|
|
|
|
pdfh.HandlePDF(alsPDF, alsMail, Mailtext, clsMailClient.EmpfangerFrom.Behandlung, Me.Behandlungsnr)
|
|
pdfh = Nothing
|
|
evh.Refresh_Behandlungen(Me.Behandlungsnr, Me.Patientnr)
|
|
|
|
|
|
|
|
Globals.FakturaNr = 0
|
|
|
|
End Sub
|
|
|
|
Public Sub DesignRechnungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DesignRechnungToolStripMenuItem.Click
|
|
Me.Save_Data()
|
|
Dim anzahlraten As Integer = 0
|
|
db.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.Behandlungsnr.ToString)
|
|
anzahlraten = db.dsDaten.Tables(0).Rows(0).Item("Anzahlraten")
|
|
If anzahlraten = 0 Then anzahlraten = 1
|
|
Dim reportnr As Integer
|
|
reportnr = db.Get_ReportNr(Me.cbboxNRESTyp.Text)
|
|
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
|
|
Dim f As New frmReportView(reportnr, True, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString)
|
|
f.Show()
|
|
f.Print_Rechnung(False, True)
|
|
f.Close()
|
|
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
|
|
End Sub
|
|
|
|
Public Sub VorschaRechnungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles VorschaRechnungToolStripMenuItem.Click
|
|
Me.Save_Data()
|
|
Globals.Rg_Funktionen.Vorschau_Rechnung(Me.Behandlungsnr.ToString)
|
|
|
|
|
|
End Sub
|
|
|
|
'Public Sub Vorschau_Rechnung(ByVal NrBehandlung As String)
|
|
' Dim anzahlraten As Integer = 0
|
|
' 'db.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.Behandlungsnr.ToString)
|
|
' db.Get_Tabledata("Behandlu", "where nrbehandlung=" + NrBehandlung)
|
|
|
|
' anzahlraten = db.dsDaten.Tables(0).Rows(0).Item("Anzahlraten")
|
|
' If anzahlraten = 0 Then anzahlraten = 1
|
|
' Check_Changes()
|
|
' Dim reportnr As Integer
|
|
' reportnr = db.Get_ReportNr(Me.cbboxNRESTyp.Text)
|
|
' 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)
|
|
' 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
|
|
'End Sub
|
|
|
|
Private Sub cbboxnrbehandler_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxnrbehandler.SelectedIndexChanged
|
|
Dim db1 As New clsDB
|
|
Try
|
|
If Globals.Applicationtype <> ApplicationTypes.Projektabrechnung Then
|
|
db1.Get_Tabledata("GLN", "", "Select gln from privat where nrprivat=" + Me.cbboxnrbehandler.SelectedValue)
|
|
Me.txtGLN_Liste.Text = "1/" + db1.dsDaten.Tables(0).Rows(0).Item(0)
|
|
End If
|
|
|
|
Catch
|
|
Finally
|
|
db1.Dispose()
|
|
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub cbboxrgtext_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxrgtext.SelectedIndexChanged
|
|
If OnLoad Then Exit Sub
|
|
Me.txtRechnungsbemerkung.Text = Me.cbboxrgtext.Text
|
|
End Sub
|
|
|
|
Private Sub btnAbschliessen_Click(sender As Object, e As EventArgs) Handles btnAbschliessen.Click
|
|
evh.Fire_Behandlung_Abschliessen(Me.Behandlungsnr, Me.Patientnr)
|
|
End Sub
|
|
|
|
Private Sub btnZuruecksetzen_Click(sender As Object, e As EventArgs) Handles btnZuruecksetzen.Click
|
|
|
|
evh.Fire_Behandlung_Zurücksetzen(Me.Behandlungsnr, Me.Patientnr)
|
|
End Sub
|
|
|
|
Private Sub btnDeleteUnfalldatum_Click(sender As Object, e As EventArgs) Handles btnDeleteUnfalldatum.Click
|
|
Me.DDTUnfalldatum.Value = Nothing
|
|
End Sub
|
|
|
|
Private Sub btnDeleteKogudatum_Click(sender As Object, e As EventArgs) Handles btnDeleteKogudatum.Click
|
|
Me.DDTDatum_Kostengutsprache.Value = Nothing
|
|
End Sub
|
|
|
|
Private Sub DDTUnfalldatum_KeyDown(sender As Object, e As KeyEventArgs) Handles DDTUnfalldatum.KeyDown, DDTDatum_Kostengutsprache.KeyDown, DDTBehandlungsbeginn.KeyDown, DDTBehandlungsende.KeyDown, DDTRGStellung.KeyDown
|
|
If e.KeyCode = Keys.Escape Then delete_date(sender)
|
|
If e.KeyCode = Keys.Decimal Then SendKeys.SendWait("{TAB}")
|
|
If e.KeyCode = 190 Then SendKeys.SendWait("{TAB}")
|
|
|
|
End Sub
|
|
|
|
Sub delete_date(sender)
|
|
sender.value = Nothing
|
|
End Sub
|
|
|
|
Private Sub cbboxNRRGtyp_SelectedIndexChanged_1(sender As Object, e As EventArgs) Handles cbboxNRRGtyp.SelectedIndexChanged
|
|
If OnLoad Then Exit Sub
|
|
Dim result As String = db.Get_Datavalue("Select status from behandlu where nrbehandlung=" + Me.Behandlungsnr.ToString, "")
|
|
Dim kv As Boolean = False
|
|
If result = 3 Or result = 4 Then kv = True
|
|
|
|
Select Case Me.cbboxNRRGtyp.Text
|
|
Case "Dentotar"
|
|
If kv Then
|
|
result = db.Get_Datavalue("Select nrestyp from estyp where default_bei_kv_dentotar=1")
|
|
Else
|
|
result = db.Get_Datavalue("Select nrestyp from estyp where default_bei_rg_dentotar=1")
|
|
Me.chkMitdatum.Checked = True
|
|
End If
|
|
Dim dbgesetz As New clsDB
|
|
Try
|
|
dbgesetz.Get_Tabledata("Gesetz", "", "Select * from gesetz where standard=1")
|
|
If dbgesetz.dsDaten.Tables(0).Rows.Count > 0 Then
|
|
Me.cbboxNrGesetz.SelectedValue = dbgesetz.dsDaten.Tables(0).Rows(0).Item(0)
|
|
End If
|
|
Catch
|
|
Me.cbboxNrGesetz.SelectedValue = 1
|
|
End Try
|
|
|
|
Case Else
|
|
If kv Then
|
|
result = db.Get_Datavalue("Select nrestyp from estyp where default_bei_kv=1")
|
|
Me.cbboxNrGesetz.SelectedValue = 1
|
|
Else
|
|
result = db.Get_Datavalue("Select nrestyp from estyp where default_bei_rg=1")
|
|
Me.cbboxNrGesetz.SelectedValue = 1
|
|
|
|
End If
|
|
|
|
End Select
|
|
Try
|
|
Me.cbboxNRESTyp.SelectedValue = result
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub cbboxNrAbrechnungstyp_SelectedIndexChanged_1(sender As Object, e As EventArgs) Handles cbboxNrAbrechnungstyp.SelectedIndexChanged
|
|
If OnLoad Then Exit Sub
|
|
Try
|
|
Dim db As New clsDB
|
|
db.Get_Tabledata("MitDatum", "", "Select Mit_Datum from abrtyp where Nrabrechnungstyp=" + Me.cbboxNrAbrechnungstyp.SelectedValue,)
|
|
Me.chkMitdatum.Checked = db.dsDaten.Tables(0).Rows(0).Item(0)
|
|
Catch
|
|
Finally
|
|
db.Dispose()
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
Dim enumtaxpunkt As Globals.Taxpunkttyp
|
|
|
|
Private Function Leistungen_Aktualisieren()
|
|
Dim dbx As New clsDB
|
|
Dim dby As New clsDB
|
|
Dim dentotar As Boolean = cbboxNrAbrechnungstyp.Text.Substring(0, 8) = "Dentotar"
|
|
Dim sortstring As String = ""
|
|
'dbx.Get_Tabledata("Leistung", "where nrbehandlung=" + Me.Behandlungsnr.ToString)
|
|
dbx.Get_Tabledata_for_Update("Select * from leistung where Nrbehandlung=" + Me.Behandlungsnr.ToString, False, True)
|
|
enumtaxpunkt = Me.cbboxNrtaxpunkt.SelectedValue
|
|
For Each r As DataRow In dbx.daten.Tables(0).Rows
|
|
If dentotar Then
|
|
Dim wherestring As String = "Leistungnrneu='" + r("SSO_Nummer") + "'"
|
|
Dim db As New DataView(IntTables.Inttables.Tables("Dentotar"), wherestring, sortstring, DataViewRowState.CurrentRows)
|
|
If db.Count > 0 Then
|
|
For Each drv As DataRowView In db
|
|
If r.Item("Absolut") = 0 Then
|
|
Select Case enumtaxpunkt
|
|
Case Taxpunkttyp.Minmal
|
|
r.Item("taxpunkte") = drv.Item("pp_max")
|
|
r.Item("Mutiert_am") = Now
|
|
r.Item("Mutierer") = Globals.ActUser
|
|
r.Item("Frankenprotaxpunkt") = Me.mtxtTaxpunktwert.Text
|
|
r.Item("total") = Globals.SwissCommercialRound(r.Item("taxpunkte") * r.Item("Frankenprotaxpunkt") * r.Item("Menge"))
|
|
|
|
Case Taxpunkttyp.Minmal
|
|
r.Item("taxpunkte") = drv.Item("pp_min")
|
|
r.Item("Mutiert_am") = Now
|
|
r.Item("Mutierer") = Globals.ActUser
|
|
r.Item("Frankenprotaxpunkt") = Me.mtxtTaxpunktwert.Text
|
|
r.Item("total") = Globals.SwissCommercialRound(r.Item("taxpunkte") * r.Item("Frankenprotaxpunkt") * r.Item("Menge"))
|
|
Case Taxpunkttyp.Privat
|
|
r.Item("taxpunkte") = drv.Item("pp_privat")
|
|
r.Item("Mutiert_am") = Now
|
|
r.Item("Mutierer") = Globals.ActUser
|
|
r.Item("Frankenprotaxpunkt") = Me.mtxtTaxpunktwert.Text
|
|
r.Item("total") = Globals.SwissCommercialRound(r.Item("taxpunkte") * r.Item("Frankenprotaxpunkt") * r.Item("Menge"))
|
|
Case Taxpunkttyp.Suva
|
|
r.Item("taxpunkte") = drv.Item("Taxpunkte_UV_MV_IV")
|
|
r.Item("Mutiert_am") = Now
|
|
r.Item("Mutierer") = Globals.ActUser
|
|
r.Item("Frankenprotaxpunkt") = Me.mtxtTaxpunktwert.Text
|
|
r.Item("total") = Globals.SwissCommercialRound(r.Item("taxpunkte") * r.Item("Frankenprotaxpunkt") * r.Item("Menge"))
|
|
Case Taxpunkttyp.Dentotar
|
|
r.Item("taxpunkte") = drv.Item("Taxpunkte_UV_MV_IV")
|
|
r.Item("Mutiert_am") = Now
|
|
r.Item("Mutierer") = Globals.ActUser
|
|
r.Item("Frankenprotaxpunkt") = Me.mtxtTaxpunktwert.Text
|
|
r.Item("total") = Globals.SwissCommercialRound(r.Item("taxpunkte") * r.Item("Frankenprotaxpunkt") * r.Item("Menge"))
|
|
End Select
|
|
End If
|
|
Next
|
|
End If
|
|
End If
|
|
Next
|
|
dbx.Update_Tabeldata()
|
|
End Function
|
|
|
|
Private Sub cbboxNRESTyp_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNRESTyp.SelectedIndexChanged
|
|
If OnLoad Then Exit Sub
|
|
Try
|
|
For Each r As DataRow In IntTables.Inttables.Tables("estyp").Rows
|
|
If r.Item("nrestyp") = cbboxNRESTyp.SelectedValue Then
|
|
Me.cbboxNRRGtyp.SelectedValue = r.Item("Default_rgtyp")
|
|
End If
|
|
Next
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub lblGarantText_Click(sender As Object, e As EventArgs)
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
|
|
Try
|
|
Me.Cursor = Cursors.WaitCursor
|
|
|
|
Dim s As String = Me.cbboxNrGarant.SelectedValue
|
|
If s > 49999 Then
|
|
Dim f As New frmFirma
|
|
f.MdiParent = Globals.Mainweindow
|
|
f.Show()
|
|
f.Firmanr = s
|
|
|
|
Else
|
|
Dim f As New Patient
|
|
f.MdiParent = Globals.Mainweindow
|
|
f.Show()
|
|
f.PatientNr = s
|
|
|
|
End If
|
|
Catch
|
|
Finally
|
|
Me.Cursor = Cursors.Default
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
Private Sub tsbtnGarantAnzeigen_Click(sender As Object, e As EventArgs) Handles tsbtnGarantAnzeigen.Click
|
|
Button1_Click(sender, e)
|
|
End Sub
|
|
|
|
Private Sub lblBehandlungsgrund_Click(sender As Object, e As EventArgs) Handles lblBehandlungsgrund.Click
|
|
|
|
End Sub
|
|
|
|
Private Sub txtBehandlungsgrund_TextChanged(sender As Object, e As EventArgs) Handles txtBehandlungsgrund.TextChanged
|
|
|
|
End Sub
|
|
|
|
Private Sub DDTBehandlungsbeginn_Click(sender As Object, e As EventArgs) Handles DDTBehandlungsbeginn.Click
|
|
|
|
End Sub
|
|
|
|
Private Sub DDTBehandlungsbeginn_Leave(sender As Object, e As EventArgs) Handles DDTBehandlungsbeginn.Leave
|
|
Me.DDTBehandlungsende.Value = Me.DDTBehandlungsbeginn.Value
|
|
End Sub
|
|
|
|
Private Sub cbboxNrtaxpunkt_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNrtaxpunkt.SelectedIndexChanged
|
|
If OnLoad Then Exit Sub
|
|
If OnGetData Then Exit Sub
|
|
If Globals.OnLoad Then Exit Sub
|
|
If Me.Behandlungsstatus <> 1 And Me.Behandlungsstatus <> 4 Then Exit Sub
|
|
If MsgBox("Die Taxpunkte wurden geändert. Sollen die Leitungen neu berechnet werden?", vbYesNo + vbQuestion) = MsgBoxResult.Yes Then
|
|
Leistungen_Aktualisieren()
|
|
End If
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub txtSuchePrivat_TextChanged(sender As Object, e As EventArgs) Handles txtSuchePrivat.TextChanged
|
|
|
|
End Sub
|
|
|
|
Private Sub txtSuchePrivat_KeyDown(sender As Object, e As KeyEventArgs) Handles txtSuchePrivat.KeyDown
|
|
If e.KeyCode = Keys.Enter Then
|
|
Dim db As New clsDB
|
|
Dim nrfirma As Integer = db.Search("Patient", Me.txtSuchePrivat.Text)
|
|
If nrfirma <> -1 Then
|
|
db.Get_Tabledata("Adr", "", "Select dbo.get_adresse_firmaprivat(" + nrfirma.ToString + ",0) as Adresse")
|
|
Me.txtEmpfaenger.Text = db.dsDaten.Tables(0).Rows(0).Item(0)
|
|
End If
|
|
db.Dispose()
|
|
End If
|
|
End Sub
|
|
|
|
|
|
|
|
Private Sub txtSucheFirma_KeyDown(sender As Object, e As KeyEventArgs) Handles txtSucheFirma.KeyDown
|
|
If e.KeyCode = Keys.Enter Then
|
|
Dim db As New clsDB
|
|
Dim nrfirma As Integer = db.Search("Firma", Me.txtSucheFirma.Text)
|
|
If nrfirma <> -1 Then
|
|
db.Get_Tabledata("Adr", "", "Select dbo.get_adresse_firmaprivat(" + nrfirma.ToString + ",0) as Adresse")
|
|
Me.txtEmpfaenger.Text = db.dsDaten.Tables(0).Rows(0).Item(0)
|
|
End If
|
|
db.Dispose()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnSucheFirma_Click(sender As Object, e As EventArgs) Handles btnSucheFirma.Click
|
|
Dim db As New clsDB
|
|
Dim nrfirma As Integer = db.Search("Firma", Me.txtSucheFirma.Text)
|
|
If nrfirma <> -1 Then
|
|
db.Get_Tabledata("Adr", "", "Select dbo.get_adresse_firmaprivat(" + nrfirma.ToString + ",0) as Adresse")
|
|
Me.txtEmpfaenger.Text = db.dsDaten.Tables(0).Rows(0).Item(0)
|
|
End If
|
|
db.Dispose()
|
|
End Sub
|
|
|
|
Private Sub btnSuchePrivat_Click(sender As Object, e As EventArgs) Handles btnSuchePrivat.Click
|
|
|
|
Dim db As New clsDB
|
|
Dim nrfirma As Integer = db.Search("Patient", Me.txtSuchePrivat.Text)
|
|
If nrfirma <> -1 Then
|
|
db.Get_Tabledata("Adr", "", "Select dbo.get_adresse_firmaprivat(" + nrfirma.ToString + ",0) as Adresse")
|
|
Me.txtEmpfaenger.Text = db.dsDaten.Tables(0).Rows(0).Item(0)
|
|
End If
|
|
db.Dispose()
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
'Private Sub mtxtRatenzuschlag_TextChanged(sender As Object, e As EventArgs) Handles mtxtRatenzuschlag.TextChanged
|
|
' Me.Recalc_Totale()
|
|
'End Sub
|
|
|
|
'Private Sub mtxtTaxpunktwert_TextChanged(sender As Object, e As EventArgs) Handles mtxtTaxpunktwert.TextChanged
|
|
' mtxtTaxpunktwert_Leave(sender, e)
|
|
'End Sub
|
|
|
|
Public Function Vorschau_Offerte(ByVal typ As Integer)
|
|
Me.Save_Data()
|
|
Select Case typ
|
|
Case 1
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 1, 0, False, Nothing)
|
|
Case 2
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 1, 1, True, clspdfhelper.GetEmpfaengerType.FromOfferte)
|
|
Dim pdfh As New clspdfhelper
|
|
Case 3
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 1, 2, True, clspdfhelper.GetEmpfaengerType.FromOfferte)
|
|
|
|
Case 4
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 1, 3, True, clspdfhelper.GetEmpfaengerType.FromOfferte)
|
|
Case 5
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 1, 4, True, clspdfhelper.GetEmpfaengerType.FromOfferte)
|
|
Case 11
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 2, 0, False, Nothing)
|
|
Case 12
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 2, 1, True, clspdfhelper.GetEmpfaengerType.FromAuftragsbestaegigung)
|
|
Case 13
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 2, 2, True, clspdfhelper.GetEmpfaengerType.FromAuftragsbestaegigung)
|
|
Case 14
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 2, 3, True, clspdfhelper.GetEmpfaengerType.FromAuftragsbestaegigung)
|
|
Case 15
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 2, 4, True, clspdfhelper.GetEmpfaengerType.FromOfferte)
|
|
|
|
Case 21
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 3, 0, False, Nothing)
|
|
Case 22
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 3, 1, True, clspdfhelper.GetEmpfaengerType.FromLieferschein)
|
|
Case 23
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 3, 2, True, clspdfhelper.GetEmpfaengerType.FromLieferschein)
|
|
Case 24
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 3, 3, True, clspdfhelper.GetEmpfaengerType.FromLieferschein)
|
|
Case 25
|
|
Globals.Rg_Funktionen.Offerte_Auftragsbestaegitigung_Lieferschein(Me.Behandlungsnr, 3, 4, True, clspdfhelper.GetEmpfaengerType.FromOfferte)
|
|
|
|
End Select
|
|
|
|
|
|
|
|
End Function
|
|
|
|
Private Sub ToolStripButton1_Click_2(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
|
|
Dim f As New OpenFileDialog
|
|
If f.ShowDialog = DialogResult.OK Then
|
|
If System.IO.File.Exists(f.FileName) Then
|
|
Me.lstdateien.Items.Add(f.FileName)
|
|
Dim sql As String
|
|
sql = "Insert behandlungsdateien (nrbehandlung,dateiverweis,mutierer) values(" + Me.Behandlungsnr.ToString + ",'" + f.FileName + "'," + Globals.ActUser.ToString + ")"
|
|
|
|
Dim dbdatei As New clsDB
|
|
dbdatei.Exec_SQL(sql)
|
|
Else
|
|
MsgBox("Die Datei " + f.FileName + " ist nicht vorhanden.", vbExclamation)
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
|
|
|
|
|
|
Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click
|
|
Try
|
|
Dim dbdatei As New clsDB
|
|
dbdatei.Exec_SQL("Delete from Behandlungsdateien where nrbehandlung=" + Me.Behandlungsnr.ToString + " and dateiverweis='" + Me.lstdateien.SelectedItem + "'")
|
|
Me.lstdateien.Items.Remove(Me.lstdateien.SelectedItem)
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton2_Click(sender As Object, e As EventArgs) Handles ToolStripButton2.Click
|
|
For Each i As String In Me.lstdateien.Items
|
|
If System.IO.File.Exists(i) Then
|
|
Else
|
|
MsgBox("Die Datei " + i + " ist nicht vorhanden!")
|
|
End If
|
|
Next
|
|
End Sub
|
|
|
|
Private Sub cbansprechperson_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbansprechperson.SelectedIndexChanged
|
|
If cbansprechperson.SelectedIndex = 0 Then Me.cbrechnungsadresse.SelectedIndex = 0
|
|
End Sub
|
|
End Class
|