AVANTI: GM vermisst
Michael Lackhoff
lackhof at uni-muenster.de
Di Mär 17 15:25:59 CET 1998
On 17 Mar 98, Dierk Hoeppner wrote:
> > Das steht auch ganz oben auf meiner Wunschliste. Ich wuerde es sogar
> > sehr begruessen, wenn ich nicht nur einen Datensatz sondern (mit
> > Timeout oder Ueberwachung des Sockets wegen Client/Server) die ganze
> > Datenbank kurzzeitig sperren koennte, um auch Manipulationen mit
> > Avanti machen zu koennen, die sehr sensibel auf mehrere Anwender im
> > Netz reagieren (bes. alle Arten von fortlaufenden Nummern).
> Manipulationen dieser Art werden eigentlich bei allen anderen
> Datenbanksystemen nur im Offline-Zustand (nachts und am Wochenende)
> gemacht, um Dateninkonsistenzen zu vermeiden. Bei allegro sollte man
Das wuerde mich sehr wundern. Ich war kuerzlich bei einer recht
umfangreichen Praesentation verschiedener Bibliothekssoftware. Alle
Anbieter setzten auf Client/Server (Standard-)Datenbanken und alle
erlauben auch im Netz solche Funktionen. Ich weiss zwar nicht, wie
sie es unter der Oberflaeche realisiert haben aber es geht und ich
wuerde es gern mit allegro auch machen koennen.
> aehnlich verfahren. Am einfachsten geht das natuerlich, indem man
> avanti stoppt und mit den altbekannten Programmen auf die Datenbank
> losgeht. Wer avanti fuer solche umfangreichen Manipulationen trotzdem
> nutzen will - verglichen mit dem Direktzugriff ist die Nutzung von
> avanti langsamer -, kann ihn ja starten und dabei auf einem andern
> Port horchen lassen.
Es geht nicht so sehr um besonders umfangreiche Operationen, sondern
um welche, wo ich Angst haben muss, dass auf einmal eine
Exemplarnummer oder Signatur doppelt vergeben wird, weil zwischen
"Nachschauen letzte Signatur" und "Schreiben Datensatz" jemand im
Netz dazwischengefunkt hat.
> Wenn Sie es so machen, brauchen Sie, meine ich, auch keine gesonderte
> Globale Manipulation in der avanti-Sprache.
>
> Oder? Widerspruch ist sehr willkommen.
Der Titel "Globale Manipulation" ist wohl nur ein Nebeneffekt. Was
ich moechte, ist die Kombination "sperren, bearbeiten, speichern,
freigeben", die es aus gutem Grunde in den normalen Programmen gibt
(und dabei "bearbeiten" weiter gefasst als die Moeglichkeiten der
avanti-Sprache).
Ich sehe ein, dass das in einem Client-Server System besondere
Vorkehrungen verlangt ("vergessene" geoeffnete Saetze). Um einen
vollwertigen netzwerkfaehigen Client zu schreiben komme ich aber wohl
nicht ohne aus. Der bisherige Schutz auf Satzebene (ueber
Aenderungsdatum) ist schon sehr gut und wichtig. Fuer die Konsistenz
der Datenbank als Ganzes ist aber wohl noch mehr noetig.
Bisher brauche ich fuer die fraglichen Aktionen zwei Jobs und
zwischen denen kann jede Menge passieren, das ich nicht kontrollieren
kann. Und hier treffen sich, meine ich, die Anfragen von Herrn
Berger, Frau Koczian (Ihre Antwort: "Geht nicht in einem Job") und
meine eigene.
Ich hatte auch einige Auesserungen von Ihnen und Herrn Eversberg so
verstanden, dass in dieser Richtung bald mehr zu erwarten waere
- habe ich das so falsch verstanden?
Viele Gruesse
Michael Lackhoff
p.s.: Haben Sie mit Pythonwin schon weitergekommen? Ich habe mich
vorlaeufig auf Tkinter verlegt, wegen Portabilitaet und weil ich MFC
nicht kann. Wenn Sie gute Erfahrungen gemacht haben, schaue ich mir
das aber auch noch einmal an.
########################################################################
# Michael Lackhoff e-mail lackhof at uni-muenster.de #
# Hoersterplatz 4 Tel. 0251-4833257 #
# 48147 Muenster FAX 0251-4833275 #
# Hochschule der Franziskaner und Kapuziner in Muenster #
########################################################################
Mehr Informationen über die Mailingliste Allegro