[Allegro] Vb.252: V33.3 ist da

Fischer, Thomas fischer at sub.uni-goettingen.de
Do Jul 11 09:32:40 CEST 2013


Hallo Herr Eversberg,

herzlichen Dank für das neue A99.exe, es scheint wieder so wie früher zu funktionieren.
Aus mir nicht ganz klaren Gründen scheint es auch erheblich schneller zu starten, die Datenbank ist Prinzip "sofort da", während bei der letzten Version Verzögerungen auftraten.
Ein Problem habe ich noch, das vielleicht aber so gewollt ist: Mein Anzeigeparameter heißt d-2. Wenn ich eine d-2. at pr im Datenbankverzeichnis und eine d-2.gpr im Programmverzeichnis habe, wird die d-2.gpr genommen. Soll das so sein?

> Relevant ist das Ganze NUR für solche Anwender, die gelegentlich mal
> zum Testen die Indexparameter während einer Sitzung neu laden UND darin
> P/Q-Befehle haben. Wer das nicht tut bzw. nicht hat, also z.B. alle
> Standard-Anwender, hat KEIN Problem.
> Klappen sollt's freilich schon, das Neuladen, deshalb wurde die Sache
> prioritär erledigt.
>
> Zur Sache:
> Es liegt an der recht großen Dimensionierung in Ihrer  iu-utf8.apt:
>
> Ps=100000

Das war mal so hoch gesetzt worden, weil Nachladungen mit P/Q-Parametern nicht funktionierten, das ist mittlerweile aber wohl behoben.
Wie errechnet sich denn da ein vernünftiger Wert?
Und Indexparameter nachladen muss natürlich jeder, der seine eigenen Parameterdateien entwickelt.

> Zudem war der Befehl
> index p ...
>
> in Ihrem  _start.flx  unnötig, weil die Indexparameter ja sowieso beim
> Start geladen werden, da muß man sie nicht nochmal laden lassen. Aber
> wie gesagt, klappen sollt's denn doch.

Ich müsste selber mal nachvollziehen, wo der herkommt, vermutlich um die Indexparameter zu testen. Mein System benutzt zwei verschiedene Anzeigeparameter, einen zur Anzeige, einen zur Bearbeitung, und man kann zwischen beiden mit dem Klick auf Taste (Button) 8 umschalten. Das ruft dann je nach Zustand den Flex _edit.flx oder _start.flx auf und ist einfacher, als immer "x ind p fug" einzugeben. Aber ich sollte das vielleicht mal etwas eleganter lösen, der Rest von  _start.flx muss nicht immer wieder neu aufgerufen werden.

> Die Sache ist gelöst, Sie können das so lassen. Ich sende Ihnen erst
> mal mit getrennter Post ein neues  a99.zip.

Angekommen und funktioniert.

> Für Interessierte: In  exet2.cpp, Funktion  E2Exet()  und in  destruct()
> wurde nicht alles, was im Fall eines Neuladens der Indexparameter
> zurückgesetzt werden muß, wirklich zurückgesetzt, so daß es zu einem
> Überlauf kommen konnte. Die Sache ist etwas delikat, weil die
> Indexparameter als Objekt nur ein Teil des viel größeren Objekts
> ABASE sind,  und letzteres soll in dem Fall nicht komplett neu
> generiert werden, weil man evtl. interne Elemente verlieren würde, die
> in der betr. Sitzung vorher gesetzt wurden und mit den Indexparametern
> nichts zu tun haben.
>
> Die Sache ist gerichtet, exet2.cpp im SVN aktualisiert. Montag wird
> a99.zip allgemein neu bereitgestellt.

Sehr schön. Haben Sie bei dieser Analyse auch herausgefunden, woher die Meldung "Nicht genügend Speicher." kam, die Sie gestern nicht lokalisieren konnten?

Mit freundlichen Grüßen
Thomas Fischer






Mehr Informationen über die Mailingliste Allegro