Fallbeispiel1, VB6 - VB.NET

09/12/2008 - 06:56 von Peter Fleischer | Report spam
Hi @ll,
ausgehend vom ellenlangen Thread "Migration auf .NET..." habe ich mal ein
Szenario skizziert, welches auf Fragen basiert, die sowohl in der VB6-NG,
als auch in der VB.NET-NG mehrmals gestellt wurden.

Ziel des Beispieles ist es, den Entwicklungsaufwand und den Umfang des
Ergebnisses zu bewerten. Jeder, der sich daran beteiligen will, sollte sein
Ergebnis posten. Nicht berücksichtigen möchte ich den Aufwand für das
vorbereitende durchdenken der Lösung und den Testaufwand. Es soll also nur
der Zeitaufwand für die Erstellung der Lösung, der selbst erzeugte Code
(kein von Designern erzeugter Code) und die genutzten Fremdkomponenten
(Hersteller, Preis, auch eigene Bibliotheken), die zusàtzlich zum
Standardlieferumfang von VB incl. IDE genutzt wurden, gepostet werden.

Basis ist eine vorhandene Datenbank, die durch mehrere Nutzer parallel
angesprochen wird. Der Einfachkeit halber kann Access genutzt werden. Die
Datenbank enthàlt:

Tab1 - Mastertabelle (mit Themen) mit folgenden Feldern (kein DBnull
zulàssig):
T1ID - GUID, Primàrschlüssel
T1Thema - max. 30 Zeichen Text, unikat
Tab2 - Childtabelle (mit Vorgàngen) mit folgenden Feldern (kein DBNull
zulàssig):
T2ID - GUID, Primàrschlüssel
T2FK - Fremdschlüssel für 1:n-Beziehung von Tab1 zu Tab2
T2Vorgang - max. 30 Zeichen Text
T2Datum - Feld mit Datum+Zeit
T2Menge - Dezimalwert mit 2 Stellen hinter Komma

Beziehung Tab1(T1ID) - Tab2(T2FK) mit Prüfung, ohne Kaskadierung.

Das Programm soll folgendes machen:

Mit dem Start werden 3 Formulare geöffnet, deren Steuerelemente sich mit dem
Resize an das Formular anpassen:

Form1 - Anzeige Themen (Tab1) in einem Grid, zusàtzliche
Navigationsschaltflàchen, TextBox für Filterkriterium, CheckBox für
engeschrànkte Anzeige, Status für Zustandsanzeige

Grid mit 2 Spalten:
Thema (T1Thema)
Gesamtmenge (Summe T2Menge der zum Datensatz gehörenden Childsàtze)

TextBox soll Filterkriterium mit LIKE auf Teilzeichenkette aus Vorgang
(T2Vorgang) filtern bzw. wenn leer, dann ungefiltert.

CheckBox soll
bei nicht gesetzt: Themenzeilen farblich hinterlgen, zu denen es Vorgànge
entsprechend Filterkriterium gibt
bei gesetzt: nur die Themanzeilen anzeigen, zu denen es Vorgànge
entsprechend Filterkriterium gibt

Statuszeile soll Gesamtmenge über alle gefilterten bzw, wenn nicht
gefiltert, über alle T2Menge anzeigen.

Navigationsleite soll ermöglichen: positionieren auf ersten, nàchsten,
vorherigen und letzten Datensatz, Hinzufügen, Löschen, Speichern und
Neuladen. Beim Update auftretende Fehler (zwischenzeitlich durch andere
Anwender geànderte Datensàtze) sind in geeigneter Weise zu kennzeichnen,
damit der Anwender die Daten erneut laden kann und die Änderung an den
betreffenden Datensàtzen erneut ausführen kann.

Form2 - Anzeige der Vorgànge (aus Tab2) zum aktuellen in Form1 selektierten
Thema. Dazu sind Grid und Navigationsschaltflàchen analog Form1 zu
platzieren.

Im Grid sind die Felder aus Tab2 außer T2ID anzuzeigen. Anstelle
Fremdschlüssel soll das Thema (T1Thema) aus dem übergeordneten
Masterdatensatz zu sehen sein. Alle Anzeigen nur zum Lesen.

Form 3 - Detaildarstellung mit Editirmöglichkeit des aktuell in Form2
selektierten Datensatzes. Nicht angezeigt wird T2ID. Anstelle T2FK ist eine
ComboBox mit den möglichen Thenen (T1Thema) zur Auswahl des fremdschlüssles
anzuzeigen.

Als Zusatz sollte bewertet werden, wie in den Feldern T1Thema und T2Vorgang
auch alternative Zeichensàtze genutzt werden können (z.B. lateinische und
kyrillische Buchstaben gemischt).

Viele Gruesse

Peter
 

Lesen sie die antworten

#1 Aldi Apperman
10/12/2008 - 14:38 | Warnen spam
àhemm - und welche Frage hast Du jetzt gleich?




"Peter Fleischer" schrieb
im Newsbeitrag news:

Hi @ll,
ausgehend vom ellenlangen Thread "Migration auf .NET..."
habe ich mal ein Szenario skizziert, welches auf Fragen
basiert, die sowohl in der VB6-NG, als auch in der
VB.NET-NG mehrmals gestellt wurden.

Ziel des Beispieles ist es, den Entwicklungsaufwand und
den Umfang des Ergebnisses zu bewerten. Jeder, der sich
daran beteiligen will, sollte sein Ergebnis posten. Nicht
berücksichtigen möchte ich den Aufwand für das
vorbereitende durchdenken der Lösung und den Testaufwand.
Es soll also nur der Zeitaufwand für die Erstellung der
Lösung, der selbst erzeugte Code (kein von Designern
erzeugter Code) und die genutzten Fremdkomponenten
(Hersteller, Preis, auch eigene Bibliotheken), die
zusàtzlich zum Standardlieferumfang von VB incl. IDE
genutzt wurden, gepostet werden.

Basis ist eine vorhandene Datenbank, die durch mehrere
Nutzer parallel angesprochen wird. Der Einfachkeit halber
kann Access genutzt werden. Die Datenbank enthàlt:

Tab1 - Mastertabelle (mit Themen) mit folgenden Feldern
(kein DBnull zulàssig):
T1ID - GUID, Primàrschlüssel
T1Thema - max. 30 Zeichen Text, unikat
Tab2 - Childtabelle (mit Vorgàngen) mit folgenden Feldern
(kein DBNull zulàssig):
T2ID - GUID, Primàrschlüssel
T2FK - Fremdschlüssel für 1:n-Beziehung von Tab1 zu Tab2
T2Vorgang - max. 30 Zeichen Text
T2Datum - Feld mit Datum+Zeit
T2Menge - Dezimalwert mit 2 Stellen hinter Komma

Beziehung Tab1(T1ID) - Tab2(T2FK) mit Prüfung, ohne
Kaskadierung.

Das Programm soll folgendes machen:

Mit dem Start werden 3 Formulare geöffnet, deren
Steuerelemente sich mit dem Resize an das Formular
anpassen:

Form1 - Anzeige Themen (Tab1) in einem Grid, zusàtzliche
Navigationsschaltflàchen, TextBox für Filterkriterium,
CheckBox für engeschrànkte Anzeige, Status für
Zustandsanzeige

Grid mit 2 Spalten:
Thema (T1Thema)
Gesamtmenge (Summe T2Menge der zum Datensatz gehörenden
Childsàtze)

TextBox soll Filterkriterium mit LIKE auf Teilzeichenkette
aus Vorgang (T2Vorgang) filtern bzw. wenn leer, dann
ungefiltert.

CheckBox soll
bei nicht gesetzt: Themenzeilen farblich hinterlgen, zu
denen es Vorgànge entsprechend Filterkriterium gibt
bei gesetzt: nur die Themanzeilen anzeigen, zu denen es
Vorgànge entsprechend Filterkriterium gibt

Statuszeile soll Gesamtmenge über alle gefilterten bzw,
wenn nicht gefiltert, über alle T2Menge anzeigen.

Navigationsleite soll ermöglichen: positionieren auf
ersten, nàchsten, vorherigen und letzten Datensatz,
Hinzufügen, Löschen, Speichern und Neuladen. Beim Update
auftretende Fehler (zwischenzeitlich durch andere Anwender
geànderte Datensàtze) sind in geeigneter Weise zu
kennzeichnen, damit der Anwender die Daten erneut laden
kann und die Änderung an den betreffenden Datensàtzen
erneut ausführen kann.

Form2 - Anzeige der Vorgànge (aus Tab2) zum aktuellen in
Form1 selektierten Thema. Dazu sind Grid und
Navigationsschaltflàchen analog Form1 zu platzieren.

Im Grid sind die Felder aus Tab2 außer T2ID anzuzeigen.
Anstelle Fremdschlüssel soll das Thema (T1Thema) aus dem
übergeordneten Masterdatensatz zu sehen sein. Alle
Anzeigen nur zum Lesen.

Form 3 - Detaildarstellung mit Editirmöglichkeit des
aktuell in Form2 selektierten Datensatzes. Nicht angezeigt
wird T2ID. Anstelle T2FK ist eine ComboBox mit den
möglichen Thenen (T1Thema) zur Auswahl des fremdschlüssles
anzuzeigen.

Als Zusatz sollte bewertet werden, wie in den Feldern
T1Thema und T2Vorgang auch alternative Zeichensàtze
genutzt werden können (z.B. lateinische und kyrillische
Buchstaben gemischt).

Viele Gruesse

Peter

Ähnliche fragen