Nachladen

Allers Heinrich allers at goethe.de
Mi Apr 21 14:43:07 CEST 1999


> From: Roland Henkel [mailto:rhenkel at sbb.spk-berlin.de]
> Sent: Wednesday, April 21, 1999 1:39 PM

> ...
> Für eine Anzeige lade ich bestimmte Datensätze nach, und zwar 
> den ersten mit |i2, und die folgenden wollte ich mit |i3 - 
> also dem nächsten Schlüssel, .....

> .... Einige Kategorien der nachgeladenen Sätze werden in einem
> Unterprogramm bearbeitet, und gegebenenfalls ist dort in 
> Bezug auf diese ein weiteres Nachladen ... notwendig.

Mir ist's schon klar ...

> Der Effekt ist nun, daß offenbar durch dieses Nachladen zwischendurch
> der erste Nachladevorgang aus dem Takt kommt, ...

Genau so ist es. Ich bin vor wenigen Tagen auch gerade mal wieder in
diese selbstgelegte Falle gestolpert.

> Was ist da zu tun?

Sie müssen sich vor dem Übergang in das Unterprogramm, in dem das
sukzessive Nachladen zum Stolpern gebracht wird, den Schlüssel, über den
zuletzt zugegriffen wurde, in einer Anwendervariablen zurücklegen
(zwischenspeichern). 

Wenn Sie dann aus dem Unterprogramm zurückkommen und wirklich den in
Registerschlüsselfolge _nächsten_ Satz nachladen wollen, dann müssen Sie
erst mit dem in der Anwendervariablen zwischengespeicherten
Registerschlüssel noch einmal auf den gleichen Datensatz "pro forma"
zugreifen (und zwar mit dem Nachlademodus 0 oder 2), um den
Registerzeiger an die alte Stelle zu setzen, von dem aus anschließend
beim Nachladen des _nächsten_ Schlüssels auch tatsächlich der nächste
Datensatz gefunden wird.

> Letztendlich geht es ja
> darum, die jeweiligen Nachladezustände für jeden Vorgang besonders zu
> speichern.

Ja, genau so funktioniert das; das ist das, was ich oben mit mehr Worten
zu beschreiben versucht habe.

> Zu einer Änderung der Anzeige könnte ich mich aus inhaltlichen Gründen
> nur schwer entschließen.

Es gibt auch keinen technisch zwingenden Grund dafür.


Mit freundlichen Grüßen:

Heinrich Allers

Goethe-Institut, München
allers at goethe.de




Mehr Informationen über die Mailingliste Allegro