[Allegro] technische infos zum datensatz sichtbar machen. wie?

Klaus Lehmann lehmann_klaus at t-online.de
Fr Apr 29 11:19:23 CEST 2016


 
Guten Tag Herr Fischer,
danke für Ihre Nachricht.
Am Donnerstag, 28. April 2016 um 09:13 schrieben Sie.
Ihre Nachricht finden Sie am Ende dieser eMail.


> Dann ist beim Aufruf eines Datensatzes die Parametervariable #ujb
> mit dem aktuellen Wert von jb belegt.
> Ich vermute, dass Sie diesen Wert suchen:
> jb      Länge des Datensatzes in Byte (aktuelle Länge im Arbeitsspeicher)
> jf      ... in der Datei (wird schon beim Einlesen des Satzes festgestellt)
> In Ihrer Parameterdatei (wahrscheinlich d-wrtf.apr) können Sie dann
> an geeigneter Stelle unterbringen:
> #ujb y0 p'\b Größe: \b0\tab ' P{C}
> und die Größe das Datensatzes wird Ihnen angezeigt.
> Wenn Sie nur diese eine Größe benötigen, können Sie das Verfahren noch vereinfachen:
> Setzen Sie im _start.flx
> var "x var jb\ins #ujb"
> ins #uX=
> dann brauchen Sie den FLEX size.flx nicht.
> Mit freundlichen Grüßen
> Thomas Fischer

danke für den lösungsansatz, der sich prima liest.

ich hab mal das gemacht: in die _start.flx eingebaut:

   betrifft projekt imd. groesse des datensatzes. lösungsansatz von th.fischer(verbesserung th.berger) 28.4.2016 allegro-liste
   jb      Laenge des Datensatzes in Byte (aktuelle Länge im Arbeitsspeicher)
   jf      Laenge in der Datei (wird schon beim Einlesen des Satzes festgestellt)
   in die betreffende d-wrtf.apr wird an geeigneter stelle DAS eingetragen: #ujb y0 p'\b Größe: \b0\tab ' P{C}
var "x var jb\\ins #ujb"
ins #uX=


und ihn die betreffnde d-wrtf.apr:
#>w
#nr C C "Interne Satznummer: "
#fn p" aus der Datenbanknummer: " 
#ujb y0 p'\b Größe: \b0\tab ' P{C}
#+#


Ergebnis in a99:
Intern: Satznummer: 3273462  aus: imd_40  Identnummer: i01984221


von der "Größe" leider keine Spur!
warum nicht?

in der nächsten email mache ich einen Vorschlag, wie "das Problem"
global zu lösen ist ;-)


danke und gruß k.l.


-- 
Mit freundlichen Grüßen,
Ihr Klaus Lehmann
http://allegronet.de * eMail: allegronet at t-online.de * phone: 03528-452 807(fax 809) * mobil: 0171-953 7843
allegronet.de * Klaus Lehmann * D-01454 Radeberg * Bahnhofstr. 1
zuständiges Finanzamt: FA Hoyerswerda; zuständige Kammer: IHK Dresden;
zuständige Aufsichtsbehörde: Gewerbeamt Radeberg; USt-IdNr: DE247550760
* Software für zufriedene Bibliothekare: 1000x bewaehrt und ergiebig
* Bereits 4x allegro-utf8. Buchen Sie die allegro-Roadshow. Yes we can!
* Internetkataloge & WebHosting für Allegro-C & Web 2.0 mit VuFind
* 2011: Sponsor der Peter-Sodann-Bibliothek (Staucha)
* 2012: mit allegro-utf8 V3 und allegro-vufind auf der IFLA in Helsinki
* 2013: Bolero 64bit. Fußige Noten aufgeblättert (=Die Fußnotendoku)
* 2014: allegro-zdb: endlich. Die Wiedervereinigung! + eBooks
* 2015: allegro-vufind. Endlich! Noch moderner! Web2 auch für Ihren Katalog?
* 2016: allegro-imd.Die weltgrößte(?) Filmdatenbank nur für Filmbibliotheken
Lesen Sie auf http://portal.allegronet.de/allegrowerkstatt/allegro-windows die
Wahrheit zur Zukunft von allegro-C. Bilden Sie sich Ihre eigene Meinung! Lesen Sie!





Am Donnerstag, 28. April 2016 um 09:13 schrieben Sie:
> Hallo Herr Lehmann,

>>> Gesendet: Mittwoch, 27. April 2016 um 11:33 Uhr
>>> Von: "Klaus Lehmann" <lehmann_klaus at t-online.de>
>>> 
>>>> kann man das nicht "statisch" anzeigen lassen? in der d-wrtf.apr?
>>> 
>>> In der Exp.Sprache gibt es dafür leider keine Sondervariable und keine andere
>>> Handhabe, sich dergleichen Werte zu besorgen.
>>> Gehen könnte es nach vorläufiger Einschätzung mit einem AutoFLEX.
>>> Was das ist und wie man einen macht, steht in  h flex, Abschnitt E.
>>> 
>>> B.E.
>> 
>> das ist doch klar wie klossbrühe, daß ich damit nix anfangen kann ;-)
>> sorry.
>> ich bin batcher mit dos, oder skripter mit bash. des weiteren perl
>> und konsorten....
>> aber flex? no sir!

> kein Problem.
> Sie setzen in die Variable #uX= (wie immer hilfreich, der Herr
> Berger) den Wert "X size", um einen FLEX size.flx (Umlaute und
> Sonderzeichen vermeidend) aufzurufen, z.B. indem sie in Ihrer _start.flx
> var "X size"
> ins #uX=
> setzen.

> Dann schreiben Sie
> var jb
> ins #ujb
> in eine Textdatei, nennen sie size.flx und legen sie in das Datenbankverzeichnis.

> Dann ist beim Aufruf eines Datensatzes die Parametervariable #ujb
> mit dem aktuellen Wert von jb belegt.
> Ich vermute, dass Sie diesen Wert suchen:
> jb      Länge des Datensatzes in Byte (aktuelle Länge im Arbeitsspeicher)
> jf      ... in der Datei (wird schon beim Einlesen des Satzes festgestellt)

> In Ihrer Parameterdatei (wahrscheinlich d-wrtf.apr) können Sie dann
> an geeigneter Stelle unterbringen:

> #ujb y0 p'\b Größe: \b0\tab ' P{C}

> und die Größe das Datensatzes wird Ihnen angezeigt.

> Wenn Sie nur diese eine Größe benötigen, können Sie das Verfahren noch vereinfachen:
> Setzen Sie im _start.flx
> var "x var jb\ins #ujb"
> ins #uX=
> dann brauchen Sie den FLEX size.flx nicht.

> Wenn Sie noch Fragen haben, gerne.
> Geld brauche ich auch nicht, weil ich das aus eigenem Interesse lernen wollte.

> Mit freundlichen Grüßen
> Thomas Fischer




Mehr Informationen über die Mailingliste Allegro