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.

254 lines
9.6 KiB

Imports System.ComponentModel
Imports FlexCel.Core
Imports FlexCel.XlsAdapter
Public Class frmStammdaten
Dim db As New clsDB
Dim spalten As New Tabellenspalte
Private Sub SchliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SchliessenToolStripMenuItem.Click
Me.Close()
End Sub
Private Sub TreeView1_AfterSelect(sender As Object, e As TreeViewEventArgs) Handles TreeView1.AfterSelect
Refresh_Details()
End Sub
Sub Refresh_Details()
Try
Select Case UCase(TreeView1.SelectedNode.Tag)
Case "DEMO"
If Globals.License.DemoMode = True Then
Me.ClsStammdaten_Bez1.Visible = False
Me.ClsStammdaten_flat1.Visible = False
MsgBox("Diese Funktion ist im DEMO-Modus nicht verfügbar.")
Exit Sub
End If
Case "DMS"
If Globals.License.DMS = False Then
MsgBox("Für diese Funktion haben Sie keine entsprechende Lizenz.")
Me.ClsStammdaten_Bez1.Visible = False
Me.ClsStammdaten_flat1.Visible = False
'MsgBox("Diese Funktion ist im DEMO-Modus nicht verfügbar.")
Exit Sub
End If
Case "DENTOTAR"
End Select
Me.ClsStammdaten_Bez1.Visible = True
Me.ClsStammdaten_flat1.Visible = True
Dim t As String = Me.TreeView1.SelectedNode.Tag
t = UCase(t)
If t <> "" And t <> "DEMO" And t <> "DMS" Then
Dim splitter()
splitter = Me.TreeView1.SelectedNode.Tag.ToString.Split(";")
If splitter.Length > 1 Then
Dim i As Integer = 0
For Each s As String In splitter
i = i + 1
If i = 1 Then ClsStammdaten_Bez1.KeyField_left = s
If i = 2 Then ClsStammdaten_Bez1.Keyfieldbez_left = s
If i = 3 Then ClsStammdaten_Bez1.KeyField_right = s
If i = 4 Then ClsStammdaten_Bez1.Keyfieldbez_right = s
If i = 5 Then ClsStammdaten_Bez1.Tablename_left = s
If i = 6 Then ClsStammdaten_Bez1.Tablename_right = s
If i = 7 Then ClsStammdaten_Bez1.Tablename_bottom = s
Try
Catch ex As Exception
End Try
Next
End If
Me.ClsStammdaten_flat1.Visible = False
Me.ClsStammdaten_Bez1.Visible = True
Me.ClsStammdaten_Bez1.Dock = DockStyle.Fill
Me.ClsStammdaten_Bez1.Width = Me.ClsStammdaten_Bez1.Width + 1
Exit Sub
End If
Me.ClsStammdaten_flat1.Check_Changes()
Me.ClsStammdaten_Bez1.Visible = False
Me.ClsStammdaten_flat1.Visible = True
Me.ClsStammdaten_flat1.Dock = DockStyle.Fill
If Me.TreeView1.SelectedNode.Nodes.Count = 0 Then Me.ClsStammdaten_flat1.Visible = True Else Me.ClsStammdaten_flat1.Visible = False
Me.ClsStammdaten_flat1.Tablename = Me.TreeView1.SelectedNode.Name
'If Globals.License.DemoMode Then
' If Me.TreeView1.SelectedNode.Tag = "Demo" Then
' MsgBox("Im Demo-Modus steht diese Funktion nicht zur Verfügung.")
' Exit Sub
' End If
'End If
Me.ClsStammdaten_flat1.get_data()
Try
Catch
End Try
Catch
End Try
End Sub
Private Sub frmStammdaten_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.TreeView1.ExpandAll()
Me.TreeView1.SelectedNode = Me.TreeView1.Nodes(0)
If My.Settings.SoftwareType = "PADM" Then
Me.DentotarImportToolStripMenuItem.Visible = False
For Each n As TreeNode In TreeView1.Nodes
For Each nn As TreeNode In n.Nodes
Try
Select Case nn.Text
Case "Tarif"
nn.Text = "Artikel"
Case "Tarife"
nn.Text = "Artikel-Kategorien"
Case "TarifGruppe"
nn.Text = "Artikel-Gruppen"
Case "Tarifpakete"
nn.Text = "Artikel-Pakete"
End Select
Catch
End Try
Next
If n.Text = "Tarif" Then n.Text = "Artikel"
If n.Text = "Patienten" Then n.Text = "Allgemein"
Next
For i As Integer = 1 To 10
Try
For Each n As TreeNode In TreeView1.Nodes
For Each nn As TreeNode In n.Nodes
If nn.Text = "Dentotar" Then
nn.Remove()
End If
If nn.Text = "Dentotar_Parameter" Then
nn.Remove()
End If
If nn.Text = "Taxpunkte" Then
nn.Remove()
End If
If nn.Text = "Zahntechnik (223)" Then
nn.Remove()
End If
If nn.Text = "Behandlungsart" Then
nn.Remove()
End If
If nn.Text = "Gesetz" Then
nn.Remove()
End If
Next
Next
Catch
End Try
Next i
End If
End Sub
Private Sub DentotarImportToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DentotarImportToolStripMenuItem.Click
If MsgBox("Sind Sie sicher, dass Dentotaf neu importier werden soll?", vbYesNo + vbQuestion) = vbYes Then
If OpenFileDialog1.ShowDialog = DialogResult.OK Then
import_dentotar(OpenFileDialog1.FileName)
End If
End If
End Sub
Private Sub import_dentotar(ByVal Filename As String)
Try
Dim xls As New XlsFile(Filename)
Dim f As New frmprogress(1, xls.RowCount, "Dentotar einlesen")
f.Show()
Dim db As New clsDB
db.Get_Tabledata_for_Update("Dentotar", False, False)
db.daten.WriteXml(Globals.ActUser)
Dim dt As New DataTable
Dim dt_Original As New DataTable
dt = db.daten.Tables(0).Copy
dt_Original = db.daten.Tables(0).Copy
db.Exec_Prod("sp_update_dentotar")
dt.Rows.Clear()
dt.AcceptChanges()
Dim colindex1 As Integer
xls.ActiveSheet = 1
Dim i As Integer = 0
For row As Integer = 2 To xls.RowCount
Dim dr As DataRow = dt.NewRow
i = row
Application.DoEvents()
f.ProgressBar1.Value = row
For colIndex As Integer = 1 To 18
Try
dr.Item(colIndex - 1) = xls.GetCellValue(row, colIndex)
Catch
dr.Item(colIndex - 1) = System.DBNull.Value
End Try
Next
dt.Rows.Add(dr)
Next
f.Init_Progressbar(1, i, "Privat-Punkte nachführen")
For Each r As DataRow In dt.Rows
f.ProgressBar1.Value = f.ProgressBar1.Value + 1
Application.DoEvents()
If Not IsDBNull(r.Item("Leistungnrneu")) Then
Dim dv As New DataView(dt_Original, "leistungnrneu='" + r.Item("Leistungnrneu") + "'", "", DataViewRowState.CurrentRows)
Dim drv As DataRowView = dv.Item(0)
r.Item("PP_Privat") = drv.Item("PP_Privat")
End If
'For Each rr As DataRow In dt_Original.Rows
' Try
' If r.Item("LeistungNrneu") = rr.Item("Leistungnrneu") Then
' Try
' r.Item("PP_Privat") = rr.Item("PP_Privat")
' Catch
' End Try
' Exit For
' End If
' Catch
' End Try
'Next
Next
f.Close()
db.daten.Tables.Clear()
db.daten.Tables.Add(dt.Copy)
db.Update_Tabeldata()
Try
IntTables.Inttables.Tables.Remove("Dentotar")
Catch
End Try
MsgBox("Update Dentotar ist abgeschossen.", vbInformation)
Catch ex As Exception
MsgBox("Update Dentotar: Fehler: " + ex.Message)
End Try
End Sub
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs)
Me.Close()
End Sub
Private Sub TreeView1_Click(sender As Object, e As EventArgs) Handles TreeView1.Click
'Refresh_Details()
End Sub
Private Sub ClsStammdaten_flat1_Load(sender As Object, e As EventArgs) Handles ClsStammdaten_flat1.Load
End Sub
Private Sub frmStammdaten_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
IntTables.Inttables.Tables.Clear()
End Sub
End Class