Hi,
wie im anderen Thread schon gesagt wollte ich nun einmal unser Vorhaben genauer erläutern. Vielleicht
habt ihr ja Tipps und Ratschläge wie wir einiges anders/besser machen könnten um zu unserem Ziel zu
gelangen.
Unsere aktuelle Software ist in VB6 geschrieben. Wir haben uns dazu entschieden auf .NET WPF umzusteigen
weil wir uns erhoffen, daß diese neue Technologie uns genug Flexibilität und Möglichkeiten bietet um
den Ansprüchen unserer Kunden sowie unseren eigenen Ansprüchen zu genügen.
Wir beschäftigen uns dabei allerdings nur mit der Softwareseite. Die Datenbank wollen wir weiterhin so
übernehmen. Die DB ist MSSQL 2005 bzw. bald 2008 und relativ gut optimiert.
Unser Hauptaugenmerk bei der Planung liegt momentan bei dem "Framework".
Wir wollen Masken zur Laufzeit erstellen. Dabei sollen diese Natürlich auch flexibel erweiterbar sein durch
uns sowie durch den Kunden. Die Möglichkeit eigene Funktionalitäten zu hinterlegen muss auch vorhanden sein.
Wenn man so will kann man sagen, dass das Projekt durch den Kunden beliebig erweiterbar ist - fast wie ein CRM.
Natürlich heisst beliebig erweiterbar nur, dass er im Rahmen bestimmter Systemvorgaben Masken,Controls etc verändern
kann.

Wir wollen eine TemplateEngine die uns Masken zur Laufzeit dynamisch erstellt. Dabei bekommt die TemplateEngine vorgaben
durch XAML in welchen Bereichen der Maske sie welchen Content darstellen soll. Wenn ihr den anderen Thread noch in
Erinnerung habt soll z.b. eine Bestellung-Erfassungsmaske in Bereich 3 dargestellt werden. Die Aufteilung dieser Bereich
soll durch Schemen geschehen. Desweiteren gibt es nicht nur Gesamtschemen sondern auch Maskenschemen. Diese sollen beschreiben
an welcher Stelle ein Erfassungsfeld ist, ob es readonly ist oder nicht und welche Funktionalität dahinter steckt. Dabei
ist auch die Abhängigkeit sehr wichtig. Um z.b. den Gesamtpreis einer Bestellung auszurechnen muss erst die Stückzahl und der
Artikel eingegeben werden. Diese Abhängigkeiten, die Reihenfolge der Controls etc wollen wir in der Datenbank haben weil es uns
Zahlreiche vorteile bietet. So können wir z.b. durch ein einfaches SQL Skript beim Kunden die halbe Software umgestalten :-)

In der Ansicht sieht man schon eine Entität. Diese soll auf eine übergebene Tabelle zugreifen. Besitzt die Tabelle keine Zuordnung
von Logik zu einer Klasse, oder Anzeigereihenfolge auf der Maske etc. soll die Tabelle trotzdem durch die TemplateEngine erstellt
werden so, dass auch Daten für diese Tabelle erfasst und gespeichert / geändert werden können. Wenn wir diese Zuordnungen herstellen
haben wir im Endeffekt dann unsere Klasse z.b. Bestellung die uns die Funktionalitäten bietet die wir an der Stelle benötigen.
Wir wollen uns mit dem Framework möglichst viele Möglichkeiten offen halten. Da wir bis jetzt allerdings nur mit VB6 gearbeitet haben
sind wir die Methodik von .Net,WPF und C# nicht gewohnt bzw. wir wissen noch garnicht so richtig was eigentlich alles möglich ist.
Ich erhoffe mir von diesem Thread das vielleicht ein paar Konzeptideen, Ratschläge oder Ansätze wie wir das ganze angehen sollten.
Vielen Dank im Voraus