Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Mehr Transactions als 2 bei FIBplus auf einer DB-Komponente (https://www.delphipraxis.net/133948-mehr-transactions-als-2-bei-fibplus-auf-einer-db-komponente.html)

Artur 12. Mai 2009 17:16

Datenbank: Firebird embedded/Server • Version: 2.1.2 • Zugriff über: FIBplus

Mehr Transactions als 2 bei FIBplus auf einer DB-Komponente
 
Guten Abend

Hat jemand Erfahrungen damit, wenn man bei FIBplus mehr als die beiden Transactionen auf eine pFIBDatabase Komponente ansetzt?
Bei der pFIBDatabase Komponente selbst kann man ja nur die DefaultTransaction und eine WriteTransaction eintragen.
Aber es ist ja möglich einfach weitere Transactions im Projekt zu verwenden und bei denen die pFIBDatabase einzutragen.

Ich habe es mal spaßeshalber ausprobiert (IBExpert öffnet ja auch einen Haufen Transaktionen) und es schien zu funktionieren. Aber jetzt traten zwei sporadische Fehlverhalten auf, die nicht erklärbar sind (einmal ein Ausdruck, der EINMAL viel mehr Daten generierte als er sollte und ZWEIMAL wurde ein Datensatz zum bearbeiten geöffnet, aber der Dialog hatte keine Daten mehr [so als wenn ein neuer Datensatz eingefügt worden wäre. Das Programm war auch nicht mehr ansprechbar]).

Habt Ihr damit Erfahrungen?

Danke im voraus.


Ciao,

Artur

mkinzler 12. Mai 2009 17:42

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Warum benötigst du mehr als 2 Transaktionen pro DataSet?

Artur 12. Mai 2009 17:50

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Hi mkinzler

pro DataSet habe ich nur 2 Transaktionen (geht auch gar nicht anders, meine ich).

Das Ganze ist eher so:

Datamodul:
- pFIBDatabase + TransactionRd + TransactionWr

TForm 1:
- DataSet + DataSource + Eingabeelemente auf TransactionRd + TransactionWr

TForm 2:
- DataSet + DataSource + TransactionRd2 + TransactoinWr2 (auf pFIBDatabase)


Grundsätzlich scheint das auch zu funktionieren, aber es gab in den letzten 2 Wochen 3 Ereignisse, die darauf hindeuten, dass diese Konstruktion nicht Multithreading fähig ist oder irgendwas anderes durcheinander kommt.

TForm2 ist ein Exportfenster und wenn das gut geklappt hätte, hätte ich gerne alle Fenster nach und nach so umgebaut.

Ciao,

Artur

hoika 12. Mai 2009 18:23

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Hallo,

ich würde nur "weitere Transaktionen" (also eigene TTransaction-Komponenten) benutzen.
Das es damit Probleme gibt, ist mir nicht bkannt.

*Hansa ruf*

FIBPlus ist multithreading-fähig, gerade einer der Vorteile gegenüber der BDE (als Bsp.)


Vielleicht ist aber dein Ansatz, FIBDataBase-Transaktionen
mit zu benutzen das Problem "irgendwas anderes durcheinander kommt".


Was hast du denn vorher statt FIBPlus benutzt ?


Heiko

Artur 12. Mai 2009 18:33

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Hi hoika

aber bevor ich diese 2 weiteren Transaktionen eingefügt habe, lief das Programm sehr stabil ohne "seltsame" Ausfälle (und zwar seit 1 Jahr).


Ciao,

Artur

P.S.: Die einzige zweite Änderung ist, dass ich die aktuellste Firebird embedded Version genommen habe (2.1.2.x statt 2.1.1.x ). Ich kann mir aber mur schwer vorstellen, dass die gegenüber der Vorversion so gravierende Fehler mitbringt.

[edit]PPS: Ich nehme die FIBplus schon seit 3 Jahren her, allerdings habe ich bisher nur mit 2 pFIBTransactions gearbeitet. Ich dachte nur, wenn IBExpert zig Transaktionen aufmachen darf, darf ich vielleicht auch. Aber es könnte auch was anderes sein, nur dass ist das Auffälligste, was ich geändert habe[/edit]

Hansa 12. Mai 2009 23:27

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Zitat:

Zitat von Artur
P.S.: Die einzige zweite Änderung ist, dass ich die aktuellste Firebird embedded Version genommen habe (2.1.2.x statt 2.1.1.x ).

Du weißt wohl nicht so recht, was embedded bedeutet ? Kannst auch gleich Zeos benutzen. :mrgreen: Es ist entsetzlich. :shock:

mkinzler 13. Mai 2009 06:39

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Zitat:

Du weißt wohl nicht so recht, was embedded bedeutet ? Kannst auch gleich Zeos benutzen. Mr. Green Es ist entsetzlich. Shocked
Bis auf die Tatasache das die embedded single user ist und auch keine Authentifizierung möglich ist, sollte sich die embedded Version nicht von dementsprechenden Serverversion unterscheiden :zwinker:
Wobei ich mich immer noch frage, warum mehr als Transaktionen pro DataSet notwendig sind ( vorallem bei single user) :gruebel:

Artur 13. Mai 2009 08:13

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Guten Morgen,

ich hatte bisher mit der embedded keine Probleme. Zumal die PCs mit der embedded auf einen Firebird Server zugreifen.
Die Alternative wäre auf jedem einzelnen Rechner einen Server aufzusetzen und das Programm soll mal auf 20 AD Laptops (bei DEM Gedanken schüttelt es mich).

@mkinzler: bei einem pFIBDataSet kann man nur eine Transaction und eine UpdateTransaction eintragen. Mehr habe ich auch nicht.
Ich habe jetzt nur ein weiteres Fenster (TForm) eingefügt, dort drei pFIBQuery und eine WEITERE pFIBTransaction draufgelegt. Und bei diesen drei pFIBQuery ist diese weitere pFIBTransaction eingetragen.


ODER: Kann es sein, dass die neue embedded 2.1.2.18118 mit der alten Server Version 2.1.1.17910 Probleme macht (meine 3 Server habe ich noch nicht auf den neuen Stand gebracht, die laufen alle noch mit der 2.1.x).
Wenn Ihr meint, dass das der Fehler sein kann: Würdet ihr eher die alte embedded wieder verwenden oder die Server auf die 2.1.2 hochziehen?


Ciao,

Artur


P.S.: Hat das jemand noch in Verwendung, dass er in einem Delphi WIN32 Programm mehr als 2 pFIBTransaction drin hat?

mkinzler 13. Mai 2009 08:20

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Zitat:

Ich hatte bisher mit der embedded keine Probleme. Zumal die PCs mit der embedded auf einen Firebird Server zugreifen.
Dann ist es ja kein embedded sondern ein Server
Zitat:

kann es sein, dass die neue embedded 2.1.2.18118 mit der alten Server Version 2.1.1.17910 Probleme macht (meine 3 Server habe ich noch nicht auf den neuen Stand gebracht, die laufen alle noch mit der 2.1.x).
Man sollte immer passende Server- und Clientversionen verwenden

Artur 13. Mai 2009 08:37

Re: Mehr Transactions als 2 bei FIBplus auf einer DB-Kompone
 
Habe ich ja nie behauptet, dass es (nur) ein Firebird embedded ist :-D
Ich habe nur geschrieben, dass ich die embedded, die bei meinem Programm dabei ist, ausgetauscht habe.

Wobei die Außendienstlaptops dann auf ihre lokale Datenbank nur per embedded zugreifen sollen...
(Und nur beim Abgleich auf die Server).


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:00 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz