[Allegro] a99.ini -> infos [betrift SetSize/CharSet]

Klaus Lehmann lehmann_klaus at t-online.de
Do Sep 17 14:07:35 CEST 2009


liebe kollegen,

bei der softwareentwicklung im bereich allegro-utf8 sind mir einige
"selbstverständlichkeiten" bei der a99.ini aufgefallen, die ich Ihnen
nicht vorenthalten will.


vorrede:
=======
es betrifft, oder besser gesagt: es hat keine "negativen" auswirkungen
auf den normalbetrieb an einzelplätzen (einzelplatzinstallationen).

interessanter kann es schon für den mehrplatzbetrieb sein...
sehr interessant wird es, wenn verschiedene charsets (=zeichensätze) im
spiele sind. das ganze gemixt mit einem mehrplatzbetrieb....



normal ist das in der a99.ini: 
(zumindestens beim mir)
======================
# Groesse und Position des Hauptfensters fuer naechste Sitzung merken
# SetSize=0 ist default, dann passiert nichts
SetSize=1
# ACHTUNG: die nachfolgenden Werte werden vom Programm
# veraendert, wenn sie waehrend der Sitzung geaendert werden:
...
# wenn SetSize=1, dann werden auch die Schriftart und -groesse
aufbewahrt:
DataFont=allegro Lucida Console
#  CharSet=Ziffer   (nicht aendern! wird durch Option/Datenfont
gesetzt)
...
CharSet=0


arbeitsumgebung:
=============
wir haben es mit einem system zu tun, wo es unterschiedliche CharSets
gibt. diese werden erst im ablauf (durch flx) definiert.
seit sehr langer zeit passierten dinge, die sehr selten reproduzierbar
waren. da sie es eben nicht waren, wurde alles auf die
"unzulänglichkeit des programmierers oder von a99.exe" geschoben [bei
letzterem gibt es keine unzulänglichkeiten! ;-). egal.
irgendwann fiel mir auf, daß sich die a99.ini minimalst geändert hatte.
um 2 bytes.
da stand plötzlich charset=123 oder so.
das war des rätsel (los)lösung!



(konstruierter) fall:
==============
kollege1 arbeitet mit der a99.ini.
in ihr steht:
SetSize=1
DataFont=allegro Lucida Console
CharSet=0
kollege1 arbeitet ohne unterbrechung weiter. 
mithilfe eines flx's wechselt er den charset auf 123. 
gibt munter TA's ein, speichert sie.
beendet a99.exe

Intermezzo:
was war zu beobachten bei der a99.ini?
mitten in der arbeit mit a99.ini durch a99.exe hat sich das datum der
a99.ini geändert. die größe UND der inhalt sind gleichgeblieben.
[h. allers schwört, daß sich die a99.ini ERST beim verlassen von
a99.exe NEU schreibt, und dann erst den Inhalt entsprechend VERÄNDERT]
ich beobachtete aber: nach beendigung von a99.exe hat sich das datum
der a99.ini NOCHmal geändert UND die größe. aus charset=0 ist
charset=123 geworden. kollege1 hatte nämlich als letztes 
zu charset123 gewechselt.

weiter:
kollege1 geht nach der mittagspause wieder ans werk. (er weiss nicht,
daß sich der charset-wert in der a99.ini auf 123 geändert hat)
er wechselt jetzt NICHT den charset auf wasauchimmer, sondern
korrigiert einen datensatz z.b. mit tollen französischen sonderzeichen.
WUMMS. die anzeige dieser TA ist kaputt, beim abspeichern sehen sie
auch kaputt aus.

elendig langer leidensweg:
das ganze war selten reproduzierbar, weil im netz. 
manchmal hatten sich die aufrufe der a99.exe "aufgehoben" was die
wirkung auf die flexe anging. manchmal knallte es. der support sagte
immer: "Wir können das fehlverhalten nicht nachvollziehen: Ihr seht
weisse Mäuse!".




Lösung(oder -sansätze)en
===================
1. wenn man setsize=0 setzt. merkt sich a99.exe (hoffentlich! Ich bin
noch nicht ganz überzeugt! -s.a. den "allers-einwurf") NICHT den
Charset-wert, er wird nicht angetastet. es wird immer mit dem wert
gestartet, der seit installation in der a99.ini steht: z.b: charset=0. 
Nachteil: dauerhafte Veränderungen in der Fenstergröße sind nicht
merkbar!

oder besser:
2. die flexe, die die charsets verändern, MÜSSEN unbedingt einen
rücksprung zum original-charset-eintrag haben (z.b. charset=0).
Innerhalb der flexe, also der abläufe kann geändert werden wie will,
aber am ende wird aufgeräumt! sonst schimpft mutti!
hinweis: das betrifft alle flexe, die beim neuerfassen, kopieren,
korrigieren von TA's beteiligt sind.

oder noch besser: 
3. jeder programmaufruf bekommt seine eigene ini! (z.b. a991.ini;
a992.ini usw usw) das betrifft vor allem den netzbetrieb!
auch wenn 3. der fall ist, sollte man unbedingt 2. anwenden.
Nachteil: das ganze kann unübersichtlich werden.... viele solche ini's
wollen gepflegt werden....
Nachteil2: wie ordne ich bestimmte ini-Dateien zu den workstations zu?
mit %username% oder %userdomain%

nicht getestet, nur angedacht:
4. schreibschutz auf a99.ini
=es gibt aber programme, denen ist das völlig egal!




wie ich oben erwähnte: 
a99.exe hat sich tadellos "normal" verhalten. 
nur wenn man (im Netz) und im Inneren etwas mit a99.exe zaubern will,
dann kracht es zuweilen....

erkenntisse, die das leben schrieb....




viele grüße
Ihr Klaus Lehmann







-- 
Klaus Lehmann
eMail:  allegronet at t-online.de
phone:  03528-452 807(fax 809); mobil 0171-953 7843
adress: allegronet.de Klaus Lehmann
D-01454 Radeberg; Kleinwolmsdorfer Str. 37
http://allegronet.de + http://allegronetCMS.de

Die langjaehrige allegro-Werkstatt
Internetkataloge & WebHosting für AllegroC
Praesentationen auf den jaehrlichen bibliothe-
karischen Fachkongressen seit 2006 
****"Our best ideas are born at home"
(Dave Lester: New Freedom Data Center,1995)
**** 2008: allegro-ivrit (hebraeisch)
**** 2009: allegro-utf8 für alle Sprachen dieser Welt




Mehr Informationen über die Mailingliste Allegro