Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Frage zu Funktionsmodulen und Klassenmodulen

Begonnen von Kossy, November 08, 2011, 20:15:58

⏪ vorheriges - nächstes ⏩

Kossy

Hallo zusammen !

Kann mir vielleicht jemand von euch kurz erläutern, wie genau das Zusammenspiel zwischen einem Funktionsmodul (also einem allgemeinen Modul) und einem Klassenmodul in MS Access funktioniert?

Ich habe mal gelesen, dass ein allgemeines Modul nicht instanziert werden kann, während ein Klassenmodul instanziierbar ist. Das allgemeine Modul soll eher Tabellen und Daten beeinflussen und verändern können, während das Klassenmodul konkrete Reports und Formular beeinflussen und verändern soll und dazu implementierte Subroutinen in den allgemeinen Modulen aufrufen soll.

Wie gesagt das habe ich bisher zum Thema gelesen und es handelt sich dabei überwiegend um Theorie. Kann mir das vielleicht jemand von euch ein einem kleinen und kurzen Programmcodebespiel näher erläutern? Oder mir vielleicht einen oder mehrere interesante Links zu dem Thema zur Verfügung stellen, wo dieses Thema näher thematisiert wird?

Ist das eigentlich schon dasPrinzip der OOP in MS Access?

Besten Dank dafür an euch !

Grüße
Kossy

database

#1
Hallo,

deine Fragen sind nicht einfach in ein paar Sätzen zu beantworten, dafür ist das Thema VBA mit Access bzw. VBA einfach zu weitläufig.

Eine kurze Anwort jedoch gibt's auf die Frage nach OOP - NEIN und das wird sich auch (höchstwahrscheinlich) nicht ändern.
Mit VBA ist wie mit VB6 objektnahe Programmierung realisierbar aber nicht (echt) objektorientiert.
Das scheitert schon an der Vererbung, die unter VB6 / VBA als Schnittstellenverebung abgebildet werfden kann, Polymorpismus ist neben anderen Möglichkeiten, die eben nur eine echte OOP-Sprache bietet, ist gänzlich unerreichbar fern.
ZitatIch habe mal gelesen, dass ein allgemeines Modul ...
Ich würde das nicht so beantworten, vor Allem die Beschränkungen sind nicht so straff ausgerichtet wie du sie hier zitiert hast.
Prinzipiell ist es möglich Formulare und Berichte mit Routinen und Functions in deren zugeordneten Ereignissen zu bedienen.
Eine weitere Möglichkeit ist es auf diesen DB-Objekten vorhandenen Steuerelemente ebenfalls über deren zugeordnete Ereignisse zu beeinflussen und deren Verhalten zu steuern.
Standardmodule enthalten weitere Routinen und Functions wobei diese unter Anderem deswegen in einem Standardmodul untergebracht werden
um dem OOP Grundprinzip der Wiederverwendbarkeit von Code zu entsprechen.
Klassenmodule sind eine Sonderform von Standardmodulen wobei hier schon die von dir angesprochene Instanzierung ins Spiel kommt bzw. kommen kann.
Bitte diese paar Sätze nicht als vollständige Beantwortung deiner Anfrage zu sehen - dieser Themnkreis würde ganz einfach den Rahmen unseres Forums bei Weitem sprengen!

Zur Beantwortung allfälliger spezieller Fragen kann ich dir den Link #4 in meiner Signatur als Anlaufstelle anbieten.
Jede Menge an weiterführenden Informationen und/oder Beispielen bieten die Suchergbnisse mit dem Suchbegriff 'VBA Access' bei Dr. Google,
recht interessant sind Seiten wie vbfun.de, activevb.de, kulpa-online.com und viele andere auf den Themenkreis ausgerichtete Webseiten von dene du hier im Forum unter ...
Access-o-Mania Web-Tipps ... einige gute Seiten verlinkt finden kannst sowie div. Bücher zum Thema VBA Programmierung mit MS Access.

HTH

Beaker s.a.

Hallo Kossy,
Schau Dir diese Site mal an:
http://forum.access-codelib.net/
Da findest eine Menge über Klassenprogrammierung.
hth
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)