ich habe ein kleine Dialoganwendung mit dem FB VIEW_MAINTENANCE_CALL entwickelt, die auch ganz gut klappt.
Jetzt habe ich die Zusatzanforderung bekommen, dass mehr als ein User ändernd auf den View zugreifen sollen.
Bei meiner Version wird aber immer die ganze Tabelle für den ändernden Zugriff gesperrt, sobal ein User im Änderungsmodus ist.
Weiß jemand wie man im VIEW_MAINTENANCE_CALL nur bestimmte Sätze sperren kann? Ich habe den FB VIEW_ENQUEUE gefunden, weiß aber nicht wie ich ihm die Parameter mitgeben kann, die gebraucht werden um nur bestimmte Sätze zu sperren.
den VIEW_MAINTENANCE_CALL kenne ich nicht, aber vielleicht könnte Dir die Transaktion SM12 weiterhelfen?
Wenn Du einen Datensatz in Deiner Tabelle sperrst und dann die Transaktion SM12 mit Deinem Benutzernamen ausführst, wird in der Liste die von Dir gesperrte Objekte angezeigt. In der Spalte 'Sperrargument' sieht man, wie gesperrte Objekte aufgebaut sind, z.B. Mandant + Belegnummer usw. Beim Doppelklick auf das Sperrargument wird ein Popup-Fenster angezeigt, wo unten im Feld 'Enqueue-Objekt-Name' der Name des gesperrten Objekts angezeigt wird. Um dieses Objekt über Dein Programm zu sperren kannst Du dann den Funkionsbaustein benutzen, der mit ENQUEUE_ anfängt und mit dem 'Enqueue-Objekt-Name' ändert, z.B. ENQUEUE_EVVBAKE.
Der FB VIEW_MAINTENANCE_CALL führt eine eingene
Sperrverwaltung mit FBs durch, die an die "normalen"
ENQUEUE_ angelehnt sind, aber doch etwas anderes funktionieren.