Frax mit PostgreSQL

Moderator: Moderatoren

Frax mit PostgreSQL

Beitragvon Werner_Bayern » Sa, 12. Jul 2014 13:19

Servus,

hat sich da schon mal jemand Gedanken gemacht? Dürfte so ja wohl nicht mehr funktionieren, sobald man auf PostgreSQL umstellt?
es grüßt euch

Werner
Benutzeravatar
Werner_Bayern
Programmier-Gott
Programmier-Gott
 
Beiträge: 1235
Registriert: Sa, 30. Jan 2010 23:58
Wohnort: Niederbayern

Re: Frax mit PostgreSQL

Beitragvon Christian » Mo, 21. Jul 2014 11:58

Hallo Werner,

das ist ja das gute am FRAX. Dieser bringt keine eigenen Datenbanktreiber mit und kann alles was dein Programm auch kann. (genauso gut, aber auch genauso schlecht)
Die Methode :SetWorkArea wird wahrscheinlich wirklich nicht mehr funktionieren. Dafür gibt es aber :SetUserDataSet.
Damit können eigene Datasets deklariert werden. Dabei müssen nur entsprechende Codeblöcke zum navigieren übergeben werden.

Die Deklaration mit den bisher bekannten Datenbankfunktionen könnte folgendermaßen aussehen:

Code: Alles auswählen

   cFields := ""

   AEval( (cAlias)->( DBSTRUCT() ), {|a| cFields += a[DBS_NAME] + ";" } )
   cFields := Left( cFields, Len( cFields ) - 1 )        // letztes ";" entfernen

   frReportManager:SetUserDataSet( cAlias, cFields, ;
                           {|| (cAlias)->( DBGOTOP() ) }, ;         // Positionierung auf Satzanfang
                           {|| (cAlias)->( DBSKIP() ) }, ;         // nächster Datensatz
                           {|| (cAlias)->( DBSKIP(-1) ) }, ;         // vorheriger Datensatz
                           {|| (cAlias)->( EOF() ) }, ;            // Eof prüfen
                           {|feld| (cAlias)->( FIELDPOS( FIELDNAME(feld) ) ) } )      // Feldwert abfragen




Wer lieber mit Objekten arbeitet, kann natürlich auch Methoden einer Klasse zum navigieren benutzen... auch Arrays sind möglich.
Solange du also weißt, wie in der SQL-Abfrage navigiert werden soll, muss es nur noch FRAX beigebracht werden.

Gruß
Christian


Edit: Fieldname() durch Fieldpos() ersetzt
Christian
Cut&Paste-Entwickler
Cut&Paste-Entwickler
 
Beiträge: 44
Registriert: Mi, 18. Jul 2007 15:05

Re: Frax mit PostgreSQL

Beitragvon Werner_Bayern » Mo, 21. Jul 2014 16:00

Servus Christian,

das wusste ich gar nicht, dass das auch mit Feldern geht, steht nirgends in der Doku. Hab das bisher nur mit Arrays gemacht. Interessant, danke! Werde das bald testen, bin eh am Experimentieren mit CTP4. Geht dann wohl nur über die ISAM-Emulation.
es grüßt euch

Werner
Benutzeravatar
Werner_Bayern
Programmier-Gott
Programmier-Gott
 
Beiträge: 1235
Registriert: Sa, 30. Jan 2010 23:58
Wohnort: Niederbayern

Re: Frax mit PostgreSQL

Beitragvon brandelh » Mo, 21. Jul 2014 19:27

Ich würde grundsätzlich über Arrays gehen, so kann man Ausgabe von Datenauswertung trennen und vorher die Ergebnismenge anzeigen ...
"Möchten Sie wirklich 5000 Zeilen drucken ?" 8)
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13498
Registriert: Mo, 23. Jan 2006 21:54
Wohnort: Germersheim


Zurück zu Fast Report / FRAX

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast