[Allegro] AW: Update Manipulation

Manecke, Mathias manecke at dbl.ddb.de
Mi Dez 21 17:40:58 CET 2005


Lieber Herr Berger, liebe Liste,

>Eigentlich sollte die Loeschung mit
>#nr p"#002 " e5 M
Das brachte leider auch nichts.
Deshalb habe ich weiter gelesen ;-)
>So gehe ich in dieser Situation vor ...
Herzlichen Dank! Das ist die Lösung. Ich kann damit ganz auf meinen Trick mit der Tilde verzichten, brauch mich um die Ursachen meines Scheiterns nicht mehr sorgen und kann so guten Gewissens in die Weihnachtsferien gehen.

Allen Listenmitlesern und Entwicklern wünsche ich ein frohes Fest.

Mit freundlichen Grüßen
Mathias Manecke

>-----Ursprüngliche Nachricht-----
>Von: allegro-bounces at biblio.tu-bs.de 
>[mailto:allegro-bounces at biblio.tu-bs.de] Im Auftrag von Thomas Berger
>Gesendet: Mittwoch, 21. Dezember 2005 14:36
>An: Allegro-C Diskussionsliste
>Betreff: Mögliche Spam-Nachricht:Re: [Allegro] Update Manipulation
>
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>Lieber Herr Manecke,
>
>> Die neuen Sätze sollen jeweils eine #00 bekommen, die mit se beginnt 
>> und fünfstellig gezählt ist. Also sorge ich beim Import 
>dafür, dass es 
>> eine #00 se?5 gibt.
>> Update starte ich mit -fm41. Werden (über die PICA-Produktionsnummer
>bzw. über die ISBN) vorhandene Dubletten entdeckt, soll die 
>alte #00 jedoch nicht überschrieben werden.
>> Also ändere ich die Importparameter so, dass:
>> #00 ~se?5
>> herauskommt. 
>> Es passiert das Gewünschte: #00 bleibt unangetastet, die 
>neue #00 wird 
>> zur #002. Diese möchte ich allerdings gleich wieder los werden. Dazu 
>> lade ich beim Update eine zusätzliche Parameterdatei (-eman1/nul).
>> In dieser meinte ich nun, mit
>> #nr p"#002" e4 M
>> die neu gebildete #002 gleich wieder löschen zu können. 
>> Das klappt aber leider nicht. Es wird statt dessen ein #002 
>ohne Inhalt eingefügt.
>> 
>> Wo ist mein Denkfehler? Gibt es eventuell einen einfacheren Weg?
>
>Eigentlich sollte die Loeschung mit
>#nr p"#002 " e5 M
>gehen, wenn ja, bitte nicht weiterlesen.
>
>Die GM ist nach meiner Erinnerung jedoch etwas allergisch 
>gegen Loeschungen an "der" Identnummernkategorie (oder war es 
>die erste im Datensatz?), so dass es moeglicherweise trotzdem 
>nicht funktioniert.
>
>
>> (Update mit -fm31 scheidet leider aus, denn alle anderen Kategorien 
>> sollen sehr wohl ersetzt werden.)
>
>So gehe ich in dieser Situation vor (ziemlich aufwendig, das 
>habe ich jetzt gerade heruntergekocht von einer Loesung, die 
>auch bei -fm41 andere Kategorien "schuetzen" kann bzw. auch in 
>der Lage ist, gewisse vorhandene Kategorien zu losechen, wenn 
>sie im Neusatz nicht mehr vorhanden sind).
>
>Hierarchische Saetze koennen uebrigens so nicht verarbeitet 
>werden, vgl.
>http://www.gymel.com/bugzilla/show_bug.cgi?id=383
>
>viele Gruesse
>Thomas Berger
>
>
>...
>   -------- Anweisungsteil
>- --------------------------------------------------
>
>  % Dies wird vor dem Updaten durchlaufen, und zwar nur,
>  % wenn der Satz bereits vorhanden ist
>  % Nachladen koennen wir nicht, der neue Satz kommt vor dem alten.
>
>  % bzgl. weggefallener Kategorien:
>  % 1. neue Form (Manipulationsmoeglichkeit)
>  % 2. alte Form (keine Moeglichkeit)
>  % 3. GM
>#uzh +#J0a Z
>
>  %
>  % 1. Update-Satz
>  %
>#nr p"neu|" e"|" =zh
>...
>#nr +#J0z Z
>
>  %
>  % 2. vorhandener Satz
>  %
>#J0a
>#nr p"alt|" e"|" =zh
>...
>
>#J0z
>  % bzgl. Identnummer
>  % drei Moeglichkeiten:
>  % 1. Satz vorher nicht vorhanden
>  %    => Exportabschnitt wird nicht durchlaufen
>  %       Vorbelegung von #00 wird expandiert
>  %
>  % 2. Satz vorher vorhanden, ohne #00
>  %    => Exportabschnitt wird leer durchlaufen
>  %       Problem allerdings: #00 wird nicht expandiert. Pech
>  %
>  % 3. Satz vorher vorhanden und hat gueltige #00
>  %    => Exportabschnitt merkt alte #00
>  %       Wird wieder eingesetzt beim abspeichern
>
>  % Also: #udn leer    ->  #00 beibehalten
>  %       #udn gesetzt ->  #00 spaeter damit wiederbelegen
>#00 +# c"[?]" Z             % ist also der Neusatz
>#00 +# ddn adn Z            % Altsatz mit #00: retten!
>#+#
>
>  % 3. Globale Manipulation:
>  % beim Abspeichern des Satzes wird ggfls. #95ff ergaenzt
>  % sowie #xn repariert.
>
>#-#
>#udn ddn p"#00 " M             % falls #00 gerettet => wieder einsetzen
>...
>#nr dzh Z                      % wichtig: neu/alt-Merker zuruecksetzen
>#+#
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.2.3-nr1 (Windows XP)
>Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
>
>iD8DBQFDqVpTENVh3bB0lwMRAtDnAJ9WOQDPrGztxWEoFI+SQajSBNyXSgCfT0SS
>r0N1jpZMLbcmH2kjLqkIdlw=
>=WZEw
>-----END PGP SIGNATURE-----
>



Mehr Informationen über die Mailingliste Allegro