| |
Anzeigen |
|
|
Social Bookmark Script |
|
|
|
 |
Mehrere DDs benutzen |
Natalia

Jungspund

Dabei seit: 24.09.2008
Beiträge: 20
Einsatzart von VDF: gewerblich Anwenderstatus: Newbie Herkunft: Villingen-Schwenning
en Betriebssystem: Windows XP
 |
|
Hallo,
ich brauche in einem dbView Datensätze auf vier Gruppen aussortieren abhangig von Typ (z.B A, B, C, D) und jede Gruppe in einem eigenen Grid anzeigen. Kann ich für Tabelle 4 DDs definieren, in jedem OnConstrain auf Feld Typ setzen und dann die Gridsserver auf diese nicht dafaulte DD setzen? Ist es richtig?
Danke
|
|
15.12.2009 17:27 |
|
|
Roman Köhler
Administrator
    

Dabei seit: 29.08.2007
Beiträge: 202
Einsatzart von VDF: gewerblich Anwenderstatus: VDF-Entwickler Herkunft: Mannheim Betriebssystem: Windows XP
 |
|
Hallo Natalia,
ich habe gerade ein ähnliches Problem gehabt und wie folgt gelöst:
- In einer dbView einen dbTabDialog erstellt
- Die gewünschte Anzahl an dbTabPages integriert. Auf jeder Seite einen Grid, der auf das gleiche DD hinweist
- Im dbTabDialog die Prozedur Item_Change so erweitert, dass sie registriert, auf welche Seite ich gerade wechseln will. Je nach ausgewählter Seite wird eine Property des DDs verändert und ein rebuild_constraints hinterhergeschickt.
- Im DD die Procedure onConstrain so erweitert, dass sie die Datensätze je nach Inhalt unterschiedlich aussortieren.
Klappt eigentlich ganz gut. Falls Du Probleme haben solltest, melde Dich einfach noch einmal.LGRoman
|
|
16.12.2009 08:16 |
|
|
Natalia

Jungspund

Dabei seit: 24.09.2008
Beiträge: 20
Einsatzart von VDF: gewerblich Anwenderstatus: Newbie Herkunft: Villingen-Schwenning
en Betriebssystem: Windows XP
Themenstarter
 |
|
Hallo Roman,
Danke, ich brauche aber die alle Grids auf eine Sete untereinander. Mit Property habe ich Probiert, geht dann nicht, er hat immer aktuelle Constrain. Warum gibt es dann die Möglichkeit mehrere DDs zu haben, wenn wir die nicht benutzen können? Ich hätte dann in DDs auch die Felder anders definiert und noch ein Paar verschiedene Metoden auch.
Gruß,
Natalia
|
|
16.12.2009 09:36 |
|
|
Roman Köhler
Administrator
    

Dabei seit: 29.08.2007
Beiträge: 202
Einsatzart von VDF: gewerblich Anwenderstatus: VDF-Entwickler Herkunft: Mannheim Betriebssystem: Windows XP
 |
|
Hi Natalia,
wenn ich es mir recht überlege...
Folgendes müsste doch eigentlich funktionieren (für die Datei Beispiel.dat):
Object DD1 is a Beispiel_DataDictionary
...procedure onConstrain
......constrain Beispiel.Kennzeichen eq "A"
...end_procedure
End_Object
Object DD2 is a Beispiel_DataDictionary
...procedure onConstrain
......constrain Beispiel.Kennzeichen eq "B"
...end_procedure
End_Object
Object DD3 is a Beispiel_DataDictionary
...procedure onConstrain
......constrain Beispiel.Kennzeichen eq "C"
...end_procedure
End_Object
usw.
Und später im Code der dbGrids
Set Main_File to Beispiel.File_Number
Set Server to DD1(2/3...)
Mit dem letzten "Set Server" müsstest Du den dbGrid mit den unterschiedlichen DDs verbinden können.
Hab das alles aber noch nicht ausprobiert. Weiß daher nicht, ob es klappt.
LG
Roman
|
|
16.12.2009 09:51 |
|
|
Roman Köhler
Administrator
    

Dabei seit: 29.08.2007
Beiträge: 202
Einsatzart von VDF: gewerblich Anwenderstatus: VDF-Entwickler Herkunft: Mannheim Betriebssystem: Windows XP
 |
|
So, nachdem mir die Idee mit den zwei DDs gut gefallen hat, habe ich das auch gleich auspropbiert. Und es funzt vollkommen problemlos.
Ich hoffe, bei Dir auch.
LG
Roman
|
|
16.12.2009 11:46 |
|
|
Peter Bosch
Mitglied
 
Dabei seit: 04.09.2007
Beiträge: 30
Einsatzart von VDF: gewerblich Anwenderstatus: VDF-Entwickler Herkunft: Wien
 |
|
@Roman, wenn du auf jeder TabPage ein Grid hast, wäre es da nicht einfacher, einen dbTabDialogView zu nhemen, da hat dann jede Tabpage automatisch ihr eigenes DD.
LG, Peter
|
|
27.12.2009 01:04 |
|
|
Roman Köhler
Administrator
    

Dabei seit: 29.08.2007
Beiträge: 202
Einsatzart von VDF: gewerblich Anwenderstatus: VDF-Entwickler Herkunft: Mannheim Betriebssystem: Windows XP
 |
|
Hallo Peter,
jetzt hast Du mich echt kalt erwischt, Peter. Da programmiere ich bereits seit Jahrzehnten mit Dataflex und VDF und weiß nicht, wofür eine dbTabDialogView ist. Habe mich zwar öfters mal gefragt, wo denn der Unterschied zu einer normalen dbView und einem normalen dbTabDialog ist, aber nie in der Hilfe nachgesehen. Blöd, gell?
Ich denke, ich werde diese alte (für mich ganz neue) Klasse nun auch öfters mal einsetzten. Danke für den Tipp.
LG
Roman
|
|
11.01.2010 08:58 |
|
|
Peter Bosch
Mitglied
 
Dabei seit: 04.09.2007
Beiträge: 30
Einsatzart von VDF: gewerblich Anwenderstatus: VDF-Entwickler Herkunft: Wien
 |
|
Roman, mach dir nix draus. mir geht es genau so. Ich bin jetzt erst auf 2 Dinge gekommen, die ich auch schpn längst hätte verwenden können.
Ich hab mich immer geärgert, dass sich eine Combobox nicht dynamisch füllt, wenn ich in der dahinterligenden Tabelle Werte ändere und das Programm neu starten muss. Dann bin ich draufgekommen, dass ich einfach im DescriptionValidationTable-Object Static_State to False setzen muss.
Oder dass es ein Property gibt, damit man in Comboboxen in dbGrids mit den Pfeiltasten nach unten/oben navigieren, anstatt die Combobox zu öffnen.
Es gibt einfach so viele Klassen und Properties, dass man immer wieder was Neues entdeckt. Jeder hat seine gewohnte Arbeitsweise, da übersieht man halt leicht was. Geht wahrscheinlich jedem so.
LG, Peter
|
|
13.01.2010 11:15 |
|
|
|
|
|
 |
|