[50829] in SAPr3-news
Entsperren nach TA-Quittierung und Quittierung
daemon@ATHENA.MIT.EDU (Sabine Hannaske)
Mon Jul 26 04:41:36 2004
To: sapr3-news@mit.edu
Date: 26 Jul 2004 01:41:32 -0700
From: sumsasasum@web.de (Sabine Hannaske)
Message-ID: <11a22217.0407260041.1b9553a5@posting.google.com>
Hallo zusammen,
innerhalb unseres kleinen Lages entwickeln wir drei RF-Dialoge. Je
einen für die Ein-, Aus- und Umlagerung.
Ich habe ein Problem mit den Sperren der Objekte und mit der
positionsweisen Quittierung.
-> "Sperrproblem"
Die TAs werden positionsweise gesperrt. Ein User bearbeitet z.B. 3
HUs, dann gibt es drei Sperren (auf 1 bis 3 TAs). Die Quittierung
erfolgt mit dem Funktionsbaustein 'L_TO_CONFIRM'. Die gesperrten
TA-Positionen werden jetzt nacheinander bearbeitet und einzeln
quittiert. Durch das Commit, das im FB durchgeführt wird, werden aber
alle Sperren entfernt. Aus diesem Grund rufe ich für die bearbeiteten,
aber unquittierten HUs erneut den FB 'ENQUEUE_ELLTAPE' auf.
Das Problem ist jetzt, das bei dem Dialog für die Aus- und Einlagerung
die Sperren korrekt entfernt werden, jedoch bei der Umlagerung bleiben
Sperren bestehen und zwar für die LTAK, LTAP, VEKP und LQUAX. Die
werden erst entfernt, wenn das Programm beendet wird. Auch die
selbst-gesetzte Sperre auf LTAP wird nicht durch den FB
'DEQUEUE_ELLTAPE' entfernt.
Da alle drei RF-Dialog in einem Programm untergebracht sind, wird das
Form quittieren, sperren und entsperren von allen genutzt, an
fehlerhaften Code kann es (meiner Meinung nach) nicht liegen.
-> "Quittierungsproblem"
Für die TAs der Einlagerung und Umlagerung werden Lagereinheiten
bewegt, also es gibt immer nur eine Position im TA, die quittiert
werden muss. Bei der Auslagerung enthält ein TA alle auszulagernden
HUs einer Lieferung - es gibt also mehrere TA-Positionen. Beim Aufruf
der FBs 'L_TO_CONFIRM' übergebe ich die Pflichtfelder i_lgnum und
i_tanum und noch die Tabellen t_ltap_conf (TA-Positionen) und
t_ltap_conf_hu (HU-Informationen zu tapos).
Trozdem in der Tabelle t_ltap_conf nur die eine Position steht, werden
alle Positionen quittiert.
Gibt es da einen anderen FB? Welche Daten muss ich füllen, um nur eine
Position zu quittieren?
Vielen Dank, vielleicht könnt ihr mir ja einige Hinweise geben.
Gruß Sabine