Seite 1 von 1

Ribbon aus Tabelle erstellen

BeitragVerfasst: Mi 28. Mär 2012, 19:37
von Josef Pötzl
Hallo!

Wie übergibt man die Daten aus der Tabelle am sinnvollsten in die .NET-Lib?

a) VBA-Schleifen ausführen und Ribbon-Elemente über diese Schleifen erstellen.
Vorteil: Keine bestimmte Datenstruktur vorgeschrieben - das Lesen der Datenstruktur ist Aufgabe des VBA-Codes
Nachteil: VBA-Code ist notwendig

b) Vorgebene Datenstruktur per Recordset an die Lib übergeben
Vorteil: Weniger VBA-Code erforderlich
Nachteil: .NET-Lib ist an DAO bzw. ADODB gebunden

c) Tabellenstruktur vorgeben und der .NET-Lib nur noch die Datenbankmit diesen Tabellen (per Connectionstring/-parameter o. ä.) übergeben
Vorteil: in der Lib kann auch ADO.NET verwenden
Nachteil: Tabellen müssen vorgebene Struktur (mindestens die vorgeschriebenen Felder) abbilden.
Anm.: dieser Nachteil könnte aber auch zum Vorteil werden, da auf eine fixe vorgebene Struktur auch andere Tools (z. B. ein graphischer RibbonGenerator als COM-, VSTO- oder auch Access-AddIn) aufsetzen könnten.

Was meint ihr?

BTW: Das Speichern der Eigenschaften der Ribbon-Controls, -Groups u. -Tabs hast sich bei mir bewährt, da man viel mehr Überblick hat, als wenn das nur in einer XML-Struktur steckt.
Wenn ich in meinen Anwendungen einen RibbonButton ergänzen will, bin ich in wenigem Minuten (< 5 min) fertig, da ich nur einen Datensatz in der Control-Tabelle anfügen muss und die passenden Eigenschaften heraussuchen muss. (Am längsten dauert die Suche nach einem passenden Icon. ;))

Re: Ribbon aus Tabelle erstellen

BeitragVerfasst: Mi 28. Mär 2012, 21:06
von FireWalkerHH
Mhhh ... ich würde ja fast sagen das man eine feste Strucktur vorgibt ...

Und falls jemand partou eine eine eigene Strucktur haben will, kann er ja immer noch den Weg Nummer ein gehen und sich die Elemente zu Fuß zusammenbauen ...

Re: Ribbon aus Tabelle erstellen

BeitragVerfasst: Mi 28. Mär 2012, 22:18
von Josef Pötzl
Hallo!

Grundsätzlcih würde ich für die Tabs, Groups und Controls eine Tabelle erstellen, in der für alle möglichen Attribute Felder vorhanden sind. Eine 1:n-Struktur für die Attribute wäre zwar aus Datensicht und deren Weiterverarbeitung ganz praktisch, für die Eingabe ist das aber lästig - außer man arbeitet mit Masken und nicht direkt in den Tabellen.

Bei vorgegebener Struktur ist zu überlegen, ob man sie flexibel gestalten will und die Verbindungen zw. Ribbon und Tab, Tab und Group, Group und Control usw. per n:m umsetzt, damit Die Elemente-Definitionen mehrfach verwendet werden können.

Ich selbst komme mit einer 1:n-Verbindung zw. den Tabellen aus, da ich die Controls nicht mehrfach nutze (siehe VbaRibbonWatcher.zip).
Wenn man allerdings mehrere Ribbons definieren will, könnte so etwas nützlich werden. Die Datenerfassung wird wegen der n:m allerdings etwas umständlicher.