Das gesamte Dokument herunterladen | codelib-1.0.2.zip (1,2 Mb) |
Die Datenbank herunterladen | codelib-1.0.2.mdb.zip (753 kb) |
MSHFLXGD.OCX | mshflxgd.cab (200 kb) - Extra download von hier! |
Die codelib besteht aus einer Sammlung von vorgefertigten
Formularen und Funktionen und ist als Basis für den professionellen Einsatz von
Access in Unternehmen erstellt. Als Anwender der Kurse Access-Aufbau oder
Advanced bildet Sie eine Grundlage Ihrer weiteren Entwicklungsarbeit mit Access;
sie wird auch von Profis verwendet um die tägliche Arbeit zu vereinfachen.
Sie können die Funktionen verwenden, Sie müssen das aber natürlich nicht tun. Da alle Funktionen im Quellcode vorliegen können Sie diese beliebig erweitern. In jedem Fall bildet die codelib auch für den Einsteiger, jedoch vorerst nicht für den Anfänger, eine Ressource für die weitere Entwicklung seiner Anwendungen.
Wenn Sie Code schreiben kompilieren sie den Code auch manchmal mit der Funktion Kompilieren:
Es kann sein dass Sie die Datenbank ohne zu kompilieren geschlossen haben und der Code nicht lauffähig ist. Access kompiliert nur das derzeit bearbeitete Modul. Ihr fehlerhafter Code wird dann nicht mehr kompiliert und kann zu Fehlern bzw. sogar zur Beschädigung der gesamten Datenbank führen!
eine eigene Fehlerbehandlung und Protokollierung,
ein auf Steuerelemente bezogenes Hilfesystem (F12)
ein Bugreport-System (F11)
eine Benutzerverwaltung
Zusperren und aufsperren der Datenbank über Admin-Menü
eine automatische Suche der Backend-Datenbank
ein Word Modul zum generieren von komplexen Word-Dokumenten
in Objektgruppen aufgeteilte Funktionsbibliotheken
[ top ]
Üblicherweise werden Sie die Datei als zip-file erhalten. Entpacken Sie diese bitte z.B. am Desktop oder einem Ordner Ihrer Wahl. Bitte öffnen Sie NIE Programme oder Dateien direkt aus dem Zip-Archiv.!! Das kann Datenverlust bedeuten. |
Ihr Odner sollte jetzt so entpackt sein. Öffnen Sie
bitte die codelib.mdb, sie ist "aufgesperrt". Sollten Sie beim Öffnen Fehler bekommen öffnen Sie bitte die codelib.mdb mit {Hochstellen}+{Doppelklick} um das Ausführen der Startfunktionen zu verhindern. |
[ top ]
Die Fehlerbehandlung finden Sie im Modul mod_err. Sie können die Fehlerprotokollierung wahlweise in eine Tabelle oder Textdatei schreiben lassen. Damit können Sie feststellen bei welchen Anwendereingaben der Fehler aufgetreten ist.
[ top ]
Wenn Sie als Admin angemeldet sind können Sie den
Hilfetext editieren, für den Benutzer ist er schreibgeschützt. Wenn Sie in ihren Formularen die Hilfe verwenden wollen müssen Sie im Formular das Ereignis: Private Sub Form_KeyDown(KeyCode As Integer,
Shift As Integer) definieren und bei den Formulareigenschaften die Tastenvorschau aktivieren. Die Hilfe funktioniert über Routinen im Modul mod_kbd (Keyboard) Versuchen Sie F12 im Formular frm_UserDetail
|
[ top ]
Das Bugreport-System wird wie das Hilfesystem
angesteuert. Um die e-mail erhalten zu können muss ein e-mail client der mailto: aufrufe behandeln kann installiert sein. z.B. Outlook oder Outlook Express. Um die email erhalten zu können ändern Sie bitte die email Adresse in der Tabelle usys_System. Das subject (Betrifft:) wird automatisch generiert um Ihnen die automatisierte Weiterleitung der Mail zu ermöglichen. Versuchen Sie F11 im Formular frm_UserDetail |
[ top ]
In der Tabelle tbl_User sind die Benutzer mit
Passwort registriert. Über das Admin-Hauptmenü können Sie Benutzer hinzufügen.
Die Formulare frm_User und frm_UserDetail sind Beispiele für gebundene und
ungebunden Daten. |
[ top ]
Wenn die Datenbank "offen" ist, werden Sie unter
Windows NT4 oder Windows 2000 , XP-Professional automatisch mit dem Benutzer
admin und Passwort keines angemeldet. Da Windows98/ME/XP-Home leider keine Benutzerverwaltung vorsieht müssen Sie sich als admin einloggen. Für Benutzer können Sie unter NT4/2000/XP-Pro den Windows-Anmeldenamen als Benutzer anlegen. Sie benötigen kein Passwort. Damit wird der Benutzer automatisch eingeloggt. Vorteil: Selbst wenn jemand das Frontend kopiert kann er ohne admin login oder den Benutzernamen die Anwendung nicht verwenden.
|
[ top ]
Im Admin-Hauptmenü können Sie die Datenbank
zusperren.
VORSICHT! Wenn Sie das tun können Sie die Datenbank nur mehr mit dem Admin-Login öffnen! Auch {Hochstellen}+{Doppelklick} zum öffnen einer Datenbank ohne Startoptionen funktioniert dann nicht mehr! |
[ top ]
Codelib versucht die Backend-Datenbank (data.mdb) im eigenen Verzeichnis zu finden und beim Starten der Applikation neu zu verknüpfen. Schlägt das fehl erhalten Sie einen Dialog angezeigt der Sie zur Festlegung der data.mdb (Den Namen BITTE nicht ändern!) auffordert. | |
Bitte bestimmen Sie hier den Pfad zur Datenbank. Wenn Sie das nicht machen dann wird die Anwendung nicht geöffnet!
|
Leider geht das nicht anders. Ohne Daten keine Datenbank! |
[ top ]
Im Verzeichnis der Codlib finden Sie ein Unterverzeichnis Modules. Die Textdatei mod_word_demo.txt enthält informelle Routinen zum Aufruf und zur Datenübergabe an Word.
Mit dem mod_word (Einfach den Text der Textdatei ausschneiden und in ein zu erstellendes Modul mod_word reinkopieren) können Sie aus der Datenbank umfangreiche Word Dokumente mit Programmcode generieren lassen.
Sie sollten dazu allerdings objektorientiert programmieren können.
Dieses Modul ist in der Standard Datenbank nicht enthalten. (Verweisprobleme der Access Versionen!)
[ top ]
Benötigt Verweise für MSCAL.OCX und MSHFLXGD.OCX
Aus diesem Grund wurde der Code aus der Codelib entfernt. Mit der codelib sollen auch Einsteiger arbeiten können. Durch die Versionen von Access, XP und der OCX, DLL etc. entstehen massive Adaptionsprobleme für Anwender und Einsteiger. Deswegen wurde eine weitere Demo-Datenbank: Terminverwaltung.mdb erstellt.
Die Verweise sind unter Windows2000 SP4 OfficeXP und Access-Datenbank 2000 erstellt, die Terminverwaltung ist aber selbst nicht lauffähig da Sie die Funktionen der Codelib benötigt.
Wenn Sie die Terminverwaltung verwenden wollen müssen Sie die Formulare und Module in die Codelib integrieren. Die Terminverwaltung ist nur im Ansatz ausprogrammiert. Sie stellt nur ein Grundgerüst für Ihre weitere Arbeit dar. Der Tabesterminplarer ist vorhanden, die Tage können über das Kalendersteuerelement aufgerufen werden. Für de nInhalt müssen Sie aber selbst sorgen. (Formular zum Eintragen der Termine usw.)
[ top ]
Die Modulbibliotheken sind in Gruppen nach
Verwendungszweck aufgeilt. mod_tbl behandelt z.B. Alles rund um Tabellen,
mod_ctrl alles rund um Steuerelemente usw... Lesen Sie Bitte auch die Kommentare in mod_info für detaillierte Angaben. |
[ top ]
Microsoft hatte bereits 1989 mit Windows 3.0 die Auslagerung von Programmteilen in Systembibliotheken vorgegeben. Entgegen der Ansicht anderer Programmierer wurde die Philosophie weiter verfolgt. Allerding bezeichnet mittlerweile Microsoft selbst diese Tatsache als DLL-Hell.
Das Problem daran ist, dass die Systembibliotheken von beliebigen Programmen bei Installation einfach ausgetauscht werden können und dann bei Fehlern in der neuen Version die ursprünglichen Programme nicht mehr richtig funktionieren können.
UND: Dass im Falle Access selbst unter 2000 und XP das Erkennen der richtigen Version nicht reibungslos funktioniert oder eventuell wie bei MSFLXGD.OCX das OCX eventuell nicht installiert wurde.
Hier muss händisch nachgebessert werden:
Sie finden die Einstellungen im Visual Basic Editor unter EXTRAS - VERWEISE
Mögliche Fehler liefert die Implementation der Microsoft Access 10.0 Object Library (für OfficeXP bzw. 9.0 für Office 2000)
Wenn Sie auch den Terminkalender installiert haben sollte die Verweisliste so ausehen:
Andernfalls benötigen Sie das Flexgrid und das Calendar Control nicht. Bitte achten Sie auf DAO 3.6. Dieser Verweis ist unbedingt erforderlich kann aber eventuell auf DAO 3.5 geändert werden.
In der Regel sind DLL, OCX etc. Dateien im Verzeichnis C:\Winnt\System32 oder C:\Windows oder C:\Windows\System zu finden.
[ top ]
Sie sind als admin angemeldet und bekommen daher
dieses Menü. Sie können in der Tabelle tbl_menu beliebige Menü's anlegen die je Benutzergruppe anders aussehen können. Wenn sich dann Ihr Benutzer einloggt kann er nur über die von Ihnen im Menü eingetragenen Formulare verfügen. Im Codeteil des frm_menu finden Sie eine technische Beschreibung welche Einträge Sie vornehmen können um z.B. ein externes Programm zu starten oder eine Funktion aufzurufen. Zumeist werden Sie allerdings nur ein Formular oder einen Bericht aufrufen. Bitte analysieren Sie die Tabelle tbl_menu und erstellen Sie die Einträge analog dazu. Im Formular können Sie das mac_menü_leer eintragen damit der Anwender keine Menüleiste mehr bekommt. |
[ top ]
In der Entwickler-Toolbox sind viele "Helferleins" für die Codemanipulation. Unter anderem können Sie den Code der module Formulare und Berichte mit einer Funktion in ein Verzeichnis und Textdateien mit dem Namen der Objekte exportieren. Achtung jedoch, viele der Funktionen funktionieren aber noch nicht richtig oder anders als erwartet.
[ top ]
kenne dieses Problem und habe
folgenden Lösungweg:
Das Codefenster öffnen und alle ADO bzw. DAO-Verweise deaktivieren. (Bitte
merken, welche Verweise aktiviert waren)
Verweis-Fenster schließen und
den Code abspeichern. (bzw. Datenbank schließen und wieder öffnen)
Danach erneut das Verweisfenster öffnen und die gewünschten/benötigten Verweise
wieder aktivieren.
Code erneut abspeichern und alles compilieren...
Es sollte nun wieder eine mde-Datei zu erstellen sein...
[ top ]
Es kann sein, dass MS-Access Datenbanken von Entwicklern mit so genannten Komponenten ausgestattet werden um spezielle Steuerelemente einbinden zu können. Diese Komponenten (Endung *.dll, *.ocx...) müssen aber in der Windows Systemregistrierung eingetragen werden und im "Systemroot" (C:\\windows\system oder C:\winnt\system32 ) vorhanden sein Das geschieht mit dem Befehl:
z. B. regsvr32.exe RICHTX32.OCX
VB6.0 RUNTIME LIBRARIES (SP4) -
http://download.microsoft.com/download/vb60pro/Redist/sp4/win98/EN-US/VBRun60sp4.exe:
Asycfilt.dll, comcat.dll, msvbvm60.dll, oleaut32.dll, olepro32.dll stdole2.tlb,
ADVPack.dll, W95Inf16.dll, W95Inf32.dll, vbrun60.inf
msvbvm50.dll -
http://activex.microsoft.com/controls/vb5/msvbvm50.cab
mshflxgd.ocx -
http://activex.microsoft.com/controls/vb6/mshflxgd.cab
comdlg32.ocx -
http://activex.microsoft.com/controls/vb6/comdlg32.cab
asycfilt.dll -
http://activex.microsoft.com/controls/vb5/asycfilt.cab
mswinsck.ocx -
http://activex.microsoft.com/controls/vb6/mswinsck.cab
tabctl32.ocx -
http://activex.microsoft.com/controls/vb6/tabctl32.cab
[ top ]
[ top ]