Zurück zur Übersicht
Praxissoftware
Allgemeines
Im Gesundheitswesen bezeichnet Praxis-Software, Praxis-Computer oder auch Arztinformationssystem (AIS), ein System der EDV zur Sammlung und Bearbeitung medizinischer und administrativer Daten in Arzt- und Zahnarztpraxen.
Auch die sogenannte Tierarztsoftware in veterinärmedizinischen Einsatzbereichen fällt unter den Begriff Praxis-Software.
Alternative Begriffe: Praxisverwaltungs-Software, Praxismanagement-Software.
Aufgaben
Zu den Hauptaufgaben der Praxis-Software gehört
- das Führen von elektronischen Patientenakten und
- die Erstellung der Abrechnungsdaten
- für die Kassenabrechnung bzw.
- von Rechnungen/Datensätzen für die Privatliquidation.
Modernes Praxismanagement
Darüber hinaus ersetzt moderne Praxis-Software zunehmend die Führung von Karteikarten auf Papier.
Dazu gehören folgende Aufgaben:
- Erfassen von Anamnese, Befund und Diagnose,
- Erfassen von Laborwerten,
- Schnittstellen zur Übernahme von Labordaten von Laborgeräten und externen Labors,
- Verwalten von Dokumenten (Faxe, Korrespondenz, Briefe, Überweisungen, E-Mails)
- Verwalten von Bildmaterial (Dokumentationen, Röntgenaufnahmen, Ultraschall-Aufnahmen), *gesetzliche Dokumentationen (z.B. Betäubungsmittelliste, Röntgenbuch, OP-Buch)
Ebenfalls hilfreich sind Funktionen für die Praxisverwaltung:
- Wartezimmer-Liste,
- elektronischer Terminkalender,
- Tages-, Wochen- und Monatsprotokolle,
- Formularwesen zum automatischen Ausfüllen von Rezepten, Überweisungsformularen etc.,
- integrierte Buchhaltungsfunktionen (Journale, Mahnwesen),
- Kassensystem (Praxisgebühr, Barabrechnung, EC-Cash-Funktion, Kassenbuch),
- Apothekenverwaltung mit Bestandsführung (z.B. für Kliniken, Tierärzte),
- Kommunikationsfunktionen (E-Mail, SMS, E-Fax sowie Datenübermittlung von Arzt zu Arzt in gesicherten Netzwerken).
Last but not least kann die Praxis-Software auch die Aufgabe eines Praxis-Informationssystems mit entsprechenden Statistik-, Such- und Auswertungsfunktionen ausfüllen:
- Umsatzstatistiken nach verschiedenen Merkmalen,
- Behandlungs-Statistiken mit Suchfunktion (Referenzfälle),
- Wissensdatenbank / Literaturverwaltung,
- integriertes Arzneibuch oder ein integriertes Arzneimittelverzeichnis.
Tipp
Ein detaillierter Preis-/Leistungsvergleich und das Einholen von Empfehlungen im Kollegenkreis lohnt sich in jedem Fall. Mitunter ist die Anschaffung von Software mit beträchtlichen Investitionen verbunden. Auch ein Vergleich der Hardware-Anforderungen und Zusatznutzen ist empfehlenswert.
Andererseits kann die Anschaffung eines geeigneten Systems eine erhebliche Zeit- und Kostenersparnis bedeuten und so die Leistungsfähigkeit einer Praxis durchaus steigern/optimieren.
In einzelnen Nischen gibt es meist spezialisierte Systeme, die oft besser auf die individuellen Anforderungen im jeweiligen Bereich zugeschnitten sind, z.B. für Zahnmediziner, Heilpraktiker, Naturheilkunde-Praktiker, Privatpraxen, Kliniken, Tierärzte.
Im Tierärzte-Bereich empfiehlt sich der Besuch von Fachmessen, die meist mit Fortbildungsveranstaltungen der Verbände verknüpft sind. Dort kann man sich die gängigen Praxis-Software-Programme vorführen lassen. Auch im Humanbereich ist der Besuch der MEDICA in Düsseldorf, der größten Medizintechnik-Messe empfehlenswert. Dort können die Angebote der Systemhäuser direkt verglichen werden.
Kritik
Ein Teil der gängigen Praxissoftware im Humanbereich wird von Pharmakonzernen gesponsert. So sind beispielsweise beim elektronischen Erstellen von Rezepten durch den Arzt Produkte der jeweiligen Pharmakonzerne häufig vorausgewählt, während Wettbewerbsprodukte oft nur über umständliche Umwege ausgewählt werden können. Allerdings haben einige Softwarehersteller eine 'Freiwillige Selbstverpflichtungserklärung zu Arzneimittel-Informationsangeboten in Arztinformationssystemen' des VDAP (Verband Deutscher Arztinformationssystemhersteller und Provider e. V.), unterzeichnet, die die Auswirkungen der Pharmawerbung beschränkt.
Bereich Werbebeeinflussung in Praxis-Software durch Pharmaunternehmen
- Bericht zur Meldung in der ARD Tagesschau
- Bericht in dem Fachmagazin Kassenarzt
- www.einflussfrei.de Verein für werbefreie Praxis-Software e. V.
Anbieter
Links
- Anbieterliste von Praxis EDV Lösungen
- www.vhitg.de VHITG - Verband der Hersteller von IT-Lösungen für das Gesundheitswesen e.V.
- www.vdap.de VDAP - Verband Deutscher Arztinformationssystemhersteller und Provider e. V.
- www.vondoczudoc.de Forum für Ärzte zum Bereich Praxis-Software
- www.fusol.de Vergleich gängiger Praxis-Software-Systeme anhand praxisorientierter Anforderungen (wurde privat und unabhängig recherchiert)
Beispiel: Programm zum Erstellen von Privatrezepten
Das folgende Programmwurde unter Vb3.0 und Access 2.0 erstellt es ermöglicht
- das Erstellen von Privatrezepten
- die Abspeicherung in einer Datenbank
- den sofortigen Ausdruck des Rezeptes
- die Übernahme von Standardtextbausteinen
Übersichtsbild
Dateien
- RE0.FRM Basis Fenster als Textdatei , siehe Übersichtsbild
- re1.MDB Die dazugehörige Datenbank access 2.0
- rez1.mak Die kurze Vb3.0 Projektdatei
- suchen.frm Fenster zum Suchen von Rezepten über Nachname und Vorname
Weitere Dateien
- rezth1.frm Häufige medikamentöse Therapien
- rezth.frm Häufige Therapien
- reglobal.bas Globale Variable für die Kürzelübergabe von eime Fenster zum anderen
- nrsuch.frm Fenster zum Suchen über die laufende Nr
- datum.frm Fenster zum Suchen über das Datum
Re0.frm
VERSION 2.00
Begin Form us0
BackColor = &H00FFFFFF&
BorderStyle = 1 'Nicht änderbar, einfach
Caption = "Rezeptdatei Dr.Kommsogleich Internist "
ClientHeight = 6735
ClientLeft = -1875
ClientTop = 3645
ClientWidth = 9945
ClipControls = 0 'False
ForeColor = &H00FFFFFF&
Height = 7140
Left = -1935
LinkTopic = "Form1"
ScaleHeight = 6735
ScaleWidth = 9945
Top = 3300
Width = 10065
WindowState = 2 'Auf Vollbild
Begin CommandButton Befehl8
Caption = "Unterschrift"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 42
Top = 3960
Width = 2895
End
Begin CommandButton Befehl28
Caption = "DSatzZwSp"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 6240
TabIndex = 41
Top = 7320
Width = 1455
End
Begin CommandButton Befehl27
Caption = "BefundZwSp"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 6240
TabIndex = 26
Top = 7920
Width = 1455
End
Begin ComboBox Kombi2
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 360
Left = 2400
TabIndex = 40
Top = 240
Width = 1095
End
Begin ComboBox Kombi1
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 360
Left = 2280
TabIndex = 39
Top = 4800
Width = 975
End
Begin TextBox tsuchvorname
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 492
Left = 5760
TabIndex = 38
Top = 7920
Visible = 0 'False
Width = 252
End
Begin CommandButton Befehl23
Caption = "Datum suchen"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 37
Top = 7920
Width = 1575
End
Begin CommandButton Befehl2
Caption = "Info"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 36
Top = 7320
Width = 1575
End
Begin CommandButton Befehl21
Caption = "Nr Suchen"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 375
Left = 7800
TabIndex = 35
Top = 6720
Width = 1215
End
Begin TextBox uart
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 8880
TabIndex = 34
Top = 6120
Width = 240
End
Begin CommandButton Befehl18
Caption = "Rezept"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 33
Top = 2760
Width = 2895
End
Begin CommandButton Befehl15
Caption = "Neue Nrn."
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 500
Left = 9120
TabIndex = 32
Top = 6120
Width = 1220
End
Begin CommandButton Befehl14
Caption = "Stammdaten 2*"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 2160
TabIndex = 31
Top = 7920
Width = 1695
End
Begin TextBox tsuch
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 492
Left = 5520
TabIndex = 30
Top = 7920
Visible = 0 'False
Width = 252
End
Begin CommandButton Befehl13
Caption = "Weitersuchen"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 4200
TabIndex = 29
Top = 7920
Width = 1575
End
Begin TextBox st2
DataField = "st2"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 3960
MaxLength = 3
TabIndex = 28
Top = 2160
Width = 495
End
Begin TextBox st1
DataField = "st1"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 3480
MaxLength = 3
TabIndex = 27
Top = 2160
Width = 495
End
Begin CommandButton Befehl6
Caption = "&Therapieplan"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 25
Top = 3360
Width = 2895
End
Begin TextBox nr
Alignment = 1 'Rechts
DataField = "nr"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 372
Left = 6960
TabIndex = 23
Top = 6720
Width = 732
End
Begin CommandButton Befehl7
Caption = "&Beenden"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 9120
TabIndex = 22
Top = 7320
Width = 1215
End
Begin CommandButton Befehl5
Caption = "&Drucken"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 7800
TabIndex = 21
Top = 7320
Width = 1215
End
Begin CommandButton Befehl4
Caption = "&Löschen"
Enabled = 0 'False
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 500
Left = 7800
TabIndex = 20
Top = 7920
Width = 1220
End
Begin CommandButton Befehl3
Caption = "&Suchen"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 4200
TabIndex = 19
Top = 7320
Width = 1575
End
Begin CommandButton Befehl1
Caption = "&Neuer Patient"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 2160
TabIndex = 18
Top = 7320
Width = 1695
End
Begin TextBox tbefund
DataField = "Befund"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 5655
Left = 4680
MaxLength = 2000
MultiLine = -1 'True
ScrollBars = 2 'Vertikal
TabIndex = 15
Top = 240
Width = 5655
End
Begin TextBox info
DataField = "Info"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 1680
MaxLength = 63
TabIndex = 14
Top = 6120
Width = 7215
End
Begin TextBox dr2
DataField = "Dr2"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 4080
MaxLength = 10
TabIndex = 12
Top = 4800
Width = 495
End
Begin TextBox dr1
DataField = "Dr1"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 1680
MaxLength = 10
TabIndex = 5
Top = 4800
Width = 615
End
Begin TextBox tgeb
DataField = "geb"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 1680
MaxLength = 10
TabIndex = 4
Top = 2160
Width = 1575
End
Begin TextBox tVorname
DataField = "Vorname"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 1680
MaxLength = 25
TabIndex = 3
Top = 1680
Width = 1575
End
Begin TextBox TName
DataField = "Name"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 1680
MaxLength = 25
TabIndex = 2
Top = 1200
Width = 1575
End
Begin TextBox tdatum
DataField = "Datum"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 1680
MaxLength = 10
TabIndex = 1
Top = 720
Width = 1575
End
Begin TextBox tstation
DataField = "Station"
DataSource = "Daten1"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 1680
MaxLength = 4
TabIndex = 0
Top = 240
Width = 735
End
Begin Data Daten1
Caption = "Blättern"
Connect = ""
DatabaseName = "C:\MDB\VB\REZEPT\RE1.MDB"
Exclusive = -1 'True
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 375
Left = 720
Options = 0
ReadOnly = 0 'False
RecordSource = "us1"
Top = 6720
Width = 3975
End
Begin Label Bezeichnung10
Alignment = 1 'Rechts
BackColor = &H0000FFFF&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "DatensatzNr.:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 375
Left = 5280
TabIndex = 24
Top = 6720
Width = 1575
End
Begin Label Bezeichnung9
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "TEXT:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 500
Left = 3480
TabIndex = 17
Top = 240
Width = 1100
End
Begin Label Bezeichnung8
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "ADRESSE:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 16
Top = 6120
Width = 1215
End
Begin Label Bezeichnung7
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "DR2:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 3360
TabIndex = 13
Top = 4800
Width = 615
End
Begin Label Bezeichnung6
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "DR1:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 11
Top = 4800
Width = 1215
End
Begin Label Bezeichnung5
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "GEB:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 10
Top = 2160
Width = 1215
End
Begin Label Bezeichnung4
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "VORNAME"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 9
Top = 1680
Width = 1215
End
Begin Label Bezeichnung3
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "NAME:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 8
Top = 1200
Width = 1215
End
Begin Label Bezeichnung2
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "DATUM:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 7
Top = 720
Width = 1215
End
Begin Label Bezeichnung1
Alignment = 1 'Rechts
BackColor = &H00FFFF80&
BorderStyle = 1 'nicht änderbar, einfach
Caption = "AMBUL.:"
FontBold = -1 'True
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 9.75
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 495
Left = 360
TabIndex = 6
Top = 240
Width = 1215
End
End
Sub Befehl1_Click ()
uart.Text = ""
Daten1.Caption = "Neuer Patient"
Daten1.Recordset.MoveLast
Rem letzte Nummer holen und eins dazuzählen
n = Format$(Val(nr.Text) + 1)
Daten1.Recordset.AddNew
Rem neues Nummerfeld wieder auffüllen
nr.Text = n
tbefund.Text = ""
tstation.SetFocus
tdatum.Text = Format$(Now, "d/m/yyyy")
Rem tdatum.Text = Format$(Now, "d/m/yy")
End Sub
Sub Befehl10_Click ()
st2.Text = "1+3"
End Sub
Sub Befehl11_Click ()
st2.Text = "Pkt."
End Sub
Sub Befehl12_Click ()
st2.Text = "Dop."
End Sub
Sub Befehl13_Click ()
mousepointer = 11
us0.Daten1.Recordset.FindPrevious "Name Like '" + tsuch.Text + "*' and Vorname Like '" + tsuchvorname.Text + "*'"
' Hier noch eine Message einfügen , daß weitersuchen nur funktioniert
' wenn vorher Suchen betätigt wurde
mousepointer = 0
End Sub
Sub Befehl14_Click ()
' Hier werden die Stammdaten des angezeigten Datensatzes
' in einen neuen Datensatz kopiert
' tst = tstation.Text
tn = tname.Text
tv = tvorname.Text
tg = tgeb.Text
uart.Text = ""
Daten1.Caption = "Neuer Patient"
Daten1.Recordset.MoveLast
n = Format$(Val(nr.Text) + 1)
Rem n = Right$(n, 5)
Daten1.Recordset.AddNew
' tstation.Text = tst
tname.Text = tn
tvorname.Text = tv
tgeb.Text = tg
tbefund.Text = ""
dr1.SetFocus
Rem tdatum.Text = Format$(Now, "d/m/yy") : rem ohne 2000 Patch
tdatum.Text = Format$(Now, "d/m/yyyy")
nr.Text = n
End Sub
Sub Befehl15_Click ()
title = "Info Neue Nummern"
msg = "Wollen Sie wirklich neu Durchnummerieren ??"
msg = msg + Chr(13) + Chr(10) + "Dieser Vorgang dauert unter Umständen mehrere Minuten!"
If MsgBox(msg, 1, title) = 2 Then Exit Sub
mousepointer = 11
Daten1.Recordset.MoveLast
nn = Val(nr.Text)
Daten1.Recordset.MoveFirst
For a = 1 To nn
If Val(nr.Text) > a Then nr.Text = Format$(a)
If Val(nr.Text) < a Then nr.Text = Format$(a)
Daten1.Recordset.MoveNext
If Daten1.Recordset.EOF = True Then a = nn + 1
Next a
mousepointer = 0
End Sub
Sub Befehl16_Click ()
st1.Text = "Car"
st2.Text = "Dop"
uart.Text = " DOPPLER DER CAROTIDEN"
msg = "VORSICHT! Das Befundfeld ist nicht leer !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie es löschen, dann drücken Sie JA !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie Text anfügen, dann drücken Sie NEIN !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie lassen, wie es ist, "
msg = msg + Chr$(13) + Chr$(10) + "Dann drücken Sie ABBRECHEN !"
If Not us0!tbefund.Text = "" Then Response = MsgBox(msg, 3, "Befund löschen ?")
If Response = 6 Then us0!tbefund.Text = ""
t$ = us0!tbefund.Text
If Response = 2 Then Exit Sub
End Sub
Sub Befehl17_Click ()
End Sub
Sub Befehl18_Click ()
st1.Text = "Rez"
st2.Text = "Rez"
uart.Text = " REZEPT"
msg = "VORSICHT! Das Befundfeld ist nicht leer !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie es löschen, dann drücken Sie JA !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie Text anfügen, dann drücken Sie NEIN !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie lassen, wie es ist, "
msg = msg + Chr$(13) + Chr$(10) + "Dann drücken Sie ABBRECHEN !"
If Not us0!tbefund.Text = "" Then Response = MsgBox(msg, 3, "Befund löschen ?")
If Response = 6 Then us0!tbefund.Text = ""
t$ = us0!tbefund.Text
If Response = 2 Then Exit Sub
rez1.Show
us0.Hide
End Sub
Sub Befehl19_Click ()
End Sub
Sub Befehl2_Click ()
msg = "Dieses Programm stammt von"
msg = msg + Chr(13) + Chr(10) + "R.Hoffmann "
msg = msg + Chr(13) + Chr(10) + "Kornstr 4c "
msg = msg + Chr(13) + Chr(10) + "86399 Bobingen "
msg = msg + Chr(13) + Chr(10) + "Tel "
msg = msg + Chr(13) + Chr(10) + "Email : rho54@gmx.de"
msg = msg + Chr(13) + Chr(10) + "Homepage: http://www.madeeasy.de"
msg = msg + Chr(13) + Chr(10)
msg = msg + Chr(13) + Chr(10) + "Es wurde mit Visual Basic 3.0 erstellt"
msg = msg + Chr(13) + Chr(10) + "Literatur : Rororo TB Visual Basic für Anfänger"
msg = msg + Chr(13) + Chr(10) + "DSatzZwSp = Der gesamte Datensatz wird in den Windows Zwischenspeicher kopiert"
msg = msg + Chr(13) + Chr(10) + "BefundZwSp = Der Befundtext wird in den Windows Zwischenspeicher kopiert "
title = "Programminfo"
MsgBox msg, 0, title
End Sub
Sub Befehl20_Click ()
End Sub
Sub Befehl21_Click ()
nrsuch.Show 1
End Sub
Sub Befehl22_Click ()
End Sub
Sub Befehl23_Click ()
datum.Show 1
End Sub
Sub Befehl24_Click ()
st2.Text = "1+1"
End Sub
Sub Befehl25_Click ()
End Sub
Sub Befehl26_Click ()
End Sub
Sub Befehl27_Click ()
Rem BefundZwSp = Der Befundtext wird in den Windows Zwischenspeicher kopiert
Clipboard.Clear
Clipboard.SetText tbefund.Text
End Sub
Sub Befehl28_Click ()
Rem DSatzZwSp = Der gesamte Datensatz wird in den Windows Zwischenspeicher kopiert
z$ = "REZEPT " + Chr$(13) + Chr$(10)
z$ = z$ + tname.Text + " " + tvorname.Text + " " + tgeb.Text + Chr$(13) + Chr$(10)
z$ = z$ + "vom: " + tdatum.Text + " UNr:" + nr.Text + " Station: " + tstation.Text + Chr$(13) + Chr$(10)
z$ = z$ + "Doktor: " + dr1.Text + " " + dr2.Text + Chr$(13) + Chr$(10)
z$ = z$ + "Klin.Diagnose:" + Chr$(13) + Chr$(10)
z$ = z$ + "==> " + info.Text + Chr$(13) + Chr$(10)
z$ = z$ + "BEFUND: " + Chr$(13) + Chr$(10) + Chr$(13) + Chr$(10)
z$ = z$ + tbefund.Text
Clipboard.Clear
Clipboard.SetText z$
End Sub
Sub Befehl29_Click ()
End Sub
Sub Befehl3_Click ()
Suchen.Show 1
befehl13.SetFocus
End Sub
Sub Befehl30_Click ()
End Sub
Sub Befehl31_Click ()
End Sub
Sub Befehl4_Click ()
Antwort = MsgBox("Datensatz wirklich löschen ?", 20)
If Antwort = 6 Then
Daten1.Recordset.Delete
Daten1.Recordset.MovePrevious
If Daten1.Recordset.BOF = True Then
Daten1.Recordset.MoveNext
End If
End If
End Sub
Sub Befehl5_Click ()
Rem Statistik felder = Untersuchungsart
mousepointer = 11
printer.FontBold = False ' Fettdruck einschalten
printer.ScaleMode = 7 ' Windows Grafikauflösung auf CM einstellen
printer.ScaleLeft = -2 ' linken Rand auf 2 cm einstellen
printer.FontName = "Times New Roman"
printer.FontSize = 12
printer.Print " "
printer.Print " "
printer.Print "-------------------------------------------------------------------------------------------------------------"
printer.Print "PRIVATREZEPT Dr.KOMMSOGLEICH KLINIK ÜBERALL"
printer.Print "-------------------------------------------------------------------------------------------------------------"
printer.Print
printer.Print
printer.Print "Für Herrn oder Frau " + tname.Text + " " + tvorname.Text + " " + tgeb.Text
printer.Print
printer.Print "Adresse:" + info.Text
printer.Print
printer.Print "Ausgestellt am: " + tdatum.Text + " RezeptNr:" + nr.Text
printer.Print
printer.Print "-------------"
printer.Print "Rp:"
printer.Print "-------------"
printer.Print
Rem printer.Print tbefund.Text
Rem beginn druckroutine
Dim a, b, i, n
a = 1: Rem markierungsvariable für zuletzt gedrucktes zeichen
b = 1: Rem markierungsvariable für zuletzt gefundenes leerzeichen
n = 90: Rem maximale zeilenlänge
prttxt$ = tbefund.Text
For i = 1 To Len(prttxt$)
Rem prüfe ob zeilenvorschub vorhanden
If Mid$(prttxt$, i, 1) = Chr(13) Then
printer.Print Mid$(prttxt$, a, i - a)
a = i + 2
b = i + 2
Else
Rem prüfe ob leerzeichen vorhanden
If Mid$(prttxt$, i, 1) = " " Then
b = i
End If
Rem prüfe ob zeile zu lang wird
If i - a > n Then
Rem prüfe ob bei zu langer zeile kein leerzeichen vorhanden ist
If b <= a Then
b = i
End If
printer.Print Mid$(prttxt$, a, b - a)
If Mid$(prttxt$, b, 1) = " " Then
b = b + 1
End If
a = b
End If
End If
Next i
printer.Print Mid$(prttxt$, a, Len(prttxt$) - a + 1)
Rem ende druckroutine
printer.Print
printer.EndDoc
' Exit Sub
' errorhandler:
' MsgBox "Drucker überprüfen !"
' Exit Sub
mousepointer = 0
End Sub
Sub Befehl6_Click ()
Rem If 1-0,11,12,13 oder Pkt angeklicht stehen lassen ansonsten löschen
Rem else st2.Text = ""
msg = "VORSICHT! Das Befundfeld ist nicht leer !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie es löschen, dann drücken Sie JA !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie Text anfügen, dann drücken Sie NEIN !"
msg = msg + Chr$(13) + Chr$(10) + "Wollen Sie lassen, wie es ist, "
msg = msg + Chr$(13) + Chr$(10) + "Dann drücken Sie ABBRECHEN !"
If Not us0!tbefund.Text = "" Then Response = MsgBox(msg, 3, "Befund löschen ?")
If Response = 6 Then us0!tbefund.Text = ""
t$ = us0!tbefund.Text
If Response = 2 Then Exit Sub
rez1.Show
us0.Hide
End Sub
Sub Befehl6_MouseUp (button As Integer, Shift As Integer, X As Single, Y As Single)
If button = 2 Then st1 = "Abd"
End Sub
Sub Befehl7_Click ()
Daten1.Recordset.MovePrevious
If Daten1.Recordset.BOF = True Then
Daten1.Recordset.MoveNext
End If
End
End Sub
Sub Befehl8_Click ()
t$ = tbefund.Text
t$ = t$ + Chr$(13) + Chr$(10)
t$ = t$ + "Dr.Kommsogleich" + Chr$(13) + Chr$(10)
t$ = t$ + "Bobingen, Wertachstr 00" + Chr$(13) + Chr$(10)
t$ = t$ + "Tel 12345678" + Chr$(13) + Chr$(10)
tbefund.Text = t$
End Sub
Sub Befehl9_Click ()
st2.Text = "1+2"
End Sub
Sub Daten1_MouseDown (button As Integer, Shift As Integer, X As Single, Y As Single)
Daten1.Caption = "Bearbeiten"
End Sub
Sub dr1_Change ()
kombi1.Text = dr1.Text
End Sub
Sub dr1_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then dr2.SetFocus
If keycode = Nach_oben_Taste Then tgeb.SetFocus
End Sub
Sub dr1_KeyPress (keyansi As Integer)
If keyansi = 13 Then
dr2.SetFocus
'if keyansi = "Pfeil runter "
'then tdatum.setfocus
End If
End Sub
Sub dr2_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then info.SetFocus
If keycode = Nach_oben_Taste Then dr1.SetFocus
End Sub
Sub dr2_KeyPress (keyansi As Integer)
If keyansi = 13 Then
info.SetFocus
'if keyansi = "Pfeil runter "
'then tdatum.setfocus
End If
End Sub
Sub Form_Load ()
Width = Screen.Width
Height = Screen.Height
us0.AutoRedraw = True
us0.DrawStyle = 6
us0.DrawMode = 13
us0.DrawWidth = 2
us0.ScaleMode = 3
us0.ScaleHeight = (256 * 2)
For i = 0 To 255
us0.Line (0, Y)-(us0.Width, Y + 2), RGB(0, i, 0), BF
Y = Y + 2
Next i
Rem Füllen der Kombiliste 1
kombi1.AddItem "ho": Rem Hoffmann
Rem Füllen der Kombiliste 2
kombi2.AddItem "iamb"
End Sub
Sub info_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then tbefund.SetFocus
If keycode = Nach_oben_Taste Then dr2.SetFocus
End Sub
Sub info_KeyPress (keyansi As Integer)
If keyansi = 13 Then
tbefund.SetFocus
'if keyansi = "Pfeil runter "
'then tdatum.setfocus
End If
End Sub
Sub Kombi1_Change ()
dr1.Text = kombi1.Text
End Sub
Sub Kombi1_Click ()
dr1.Text = kombi1.Text
info.SetFocus
End Sub
Sub Kombi2_Change ()
tstation.Text = kombi2.Text
End Sub
Sub Kombi2_Click ()
tstation.Text = kombi2.Text
tname.SetFocus
End Sub
Sub tdatum_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then tname.SetFocus
If keycode = Nach_oben_Taste Then tstation.SetFocus
End Sub
Sub tgeb_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then dr1.SetFocus
If keycode = Nach_oben_Taste Then tvorname.SetFocus
End Sub
Sub tgeb_KeyPress (keyansi As Integer)
If keyansi = 13 Then
dr1.SetFocus
'if keyansi = "Pfeil runter "
'then tdatum.setfocus
End If
End Sub
Sub TName_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then tvorname.SetFocus
If keycode = Nach_oben_Taste Then tdatum.SetFocus
End Sub
Sub TName_KeyPress (keyansi As Integer)
If keyansi = 13 Then
tvorname.SetFocus
'if keyansi = "Pfeil runter "
'then tdatum.setfocus
End If
End Sub
Sub tstation_Change ()
kombi2.Text = tstation.Text
End Sub
Sub tstation_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then tdatum.SetFocus
End Sub
Sub tstation_KeyPress (keyansi As Integer)
If keyansi = 13 Then
tname.SetFocus
'if keyansi = "Pfeil runter "
'then tdatum.setfocus
End If
End Sub
Sub tVorname_KeyDown (keycode As Integer, Shift As Integer)
If keycode = Nach_unten_Taste Then tgeb.SetFocus
If keycode = Nach_oben_Taste Then tname.SetFocus
End Sub
Sub tVorname_KeyPress (keyansi As Integer)
If keyansi = 13 Then
tgeb.SetFocus
'if keyansi = "Pfeil runter "
'then tdatum.setfocus
End If
End Sub
re1.mdb
re1.mdb ist eine MsAccess 2.0 Datenbank die nur aus einer Tabelle besteht. Die Definition der Tabelle ist im folgenden aufgelistet.
Tabelle us1 -------------------------- STATION Text 4 DATUM Text 10 NAME Text 25 VORNAME Text 25 GEB Text 10 DR1 Text 10 DR2 Text 10 INFO Text 63 BEFUND Memo - ST1 Text 3 ST2 Text 3 NR Text 5
rez.mak
Rez.mak ist die kurze VB Projektdatei
RE0.FRM REGLOBAL.BAS NRSUCH.FRM REZTH.FRM REZTH1.FRM SUCHEN.FRM DATUM.FRM ProjWinSize=74,385,252,213 ProjWinShow=2 IconForm="rez1" Title="REZ1" ExeName="REZ1.EXE"
Suchen.frm
Suchen.frm ist das Suchfenster zum Suchen über Vorname oder Nachname oder beides.
VERSION 2.00
Begin Form Suchen
BackColor = &H00FFFFFF&
BorderStyle = 3 'Nicht änderbar, doppelt
Caption = "Suchen"
ClientHeight = 2490
ClientLeft = 2325
ClientTop = 2850
ClientWidth = 4695
ControlBox = 0 'False
Height = 2850
Left = 2265
LinkTopic = "Form2"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 2490
ScaleWidth = 4695
Top = 2550
Width = 4815
Begin CommandButton Befehl1
Caption = "Hilfe"
Height = 492
Left = 1680
TabIndex = 6
Top = 1800
Width = 1332
End
Begin TextBox Suchtextvorname
Height = 372
Left = 120
TabIndex = 1
Top = 1200
Width = 4452
End
Begin CommandButton SuchenBAbbrechen
Cancel = -1 'True
Caption = "&Abbrechen"
Height = 492
Left = 3120
TabIndex = 3
Top = 1800
Width = 1452
End
Begin CommandButton SuchenBOK
BackColor = &H000000FF&
Caption = "&OK"
Height = 492
Left = 120
TabIndex = 2
Top = 1800
Width = 1452
End
Begin TextBox SuchText
Height = 372
Left = 120
MaxLength = 30
TabIndex = 0
Top = 360
Width = 4452
End
Begin Label Bezeichnung2
Caption = "Vorname:"
Height = 372
Left = 120
TabIndex = 5
Top = 960
Width = 972
End
Begin Label Bezeichnung1
BackColor = &H00FFFFFF&
Caption = "Name:"
Height = 250
Left = 120
TabIndex = 4
Top = 120
Width = 1950
End
End
Sub Befehl1_Click ()
msg = "Der Suchvorgang beginnt immer beim letzten Datensatz!"
msg = msg + Chr(13) + Chr(10) + "Es empfiehlt sich sowohl im Nachnamensfeld"
msg = msg + Chr(13) + Chr(10) + "als auch im Vornamensfeld nur 2 Buchstaben einzugeben."
msg = msg + Chr(13) + Chr(10) + "Meist langt dies aus um jeden Patienten eindeutig zu finden!"
msg = msg + Chr(13) + Chr(10) + "Die Namens und Vornamenseingabe bleibt erhalten."
msg = msg + Chr(13) + Chr(10) + "Der Suchvorgang kann mehrfach - auch nach vor- oder zurückblättern -"
msg = msg + Chr(13) + Chr(10) + "Über die WEITERSUCHEN Taste aufgerufen werden."
title = "Suchhilfeinfo"
MsgBox msg, 0, title
End Sub
Sub SuchenBAbbrechen_Click ()
Unload Suchen
End Sub
Sub SuchenBOK_Click ()
' Vorsicht: Wenn beim Vorname nichts im feld steht , #
' findet er den Datensatz nicht
' " Österreichfehler"
mousepointer = 11
us0!tsuch.Text = Suchtext.Text
us0!tsuchvorname.Text = Suchtextvorname.Text
us0.Daten1.Recordset.FindLast "Name Like '" + Suchtext.Text + "*' and Vorname Like '" + Suchtextvorname.Text + "*'"
Unload Suchen
mousepointer = 0
us0!Befehl13.SetFocus
End Sub
Sub SuchText_KeyPress (keyansi As Integer)
If keyansi = 13 Then
Suchtextvorname.SetFocus
End If
End Sub
Sub Suchtextvorname_KeyPress (keyansi As Integer)
If keyansi = 13 Then
SuchenBOK.SetFocus
End If
End Sub