Konrakt Save UserExit

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
12 Beiträge • Seite 1 von 1
12 Beiträge Seite 1 von 1

Konrakt Save UserExit

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
Hallo alle miteinander!

Kann mir jemand helfen, wo ich UserExits finden kann beim Speichervorgang eines Kontraktes ?
Ich habe bisher die Funktion
FORM USEREXIT_SAVE_DOCUMENT
gefunden, die aber leider, wie ich feststellen musste, vor dem eigentlichem Speichern/Commit des neu angelegten Kontraktes aufgerufen wird. Gibt es einen UserExit, der danach kommt ? Also bei erfolgreicher Speicherung !?
Oder wie kann man User-Exits suchen ?

Gruß,
the-FoX

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Hi Fox,

was hast du denn vor? Willst du Daten wegschreiben zu einem Beleg und sichergehen, dass der Beleg auch wirklich gesichert wurde?

Dann kannst du evtl. eine Nachrichtenart mit "Sonderfunktion" verwenden, die du als "nicht änderbar" einstellst. Im "Druckprogramm" Kannst du dann deine Daten speichern. Wenn der Verbucher abbricht, bricht auch das Druckprogramm ab.

Enno

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
Mit Nachrichten habe ich auch shcon herum experimentiert, führte aber nicht zum gewünschtem Erfolg.

Mein Ziel ist es, beim Anlegen eines Kontraktes gleich eine weitere Transaktion zu starten, die , nach einer Bestätigung durch den User, gleich entsprechende Material Bestellungen anlegt. Sozusagen eine Abbildung eines Workflows.

Im Hintergrund kann ich diese Transaktion/Programm ja leider nicht starten, da es eine Interaktion mit dem Benutzer benötigt.

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
ich denke eine Möglichkeit wäre erstens die richtige Stelle zu finden, in der man sich einhängen kann (finde jedoch nix) udn die zwiete Möglichkeit wäre es, wenn man eine Transaktion parallel zu der VA42 starten könnte an dieser Stelle, die sich in einem neuem Fenster öffent.
Die erste Variante wär mir lieber ;)

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
the-FoX hat geschrieben:ich denke eine Möglichkeit wäre erstens die richtige Stelle zu finden, in der man sich einhängen kann (finde jedoch nix)
Da gibt's auch für deinen Fall nix, denn das Sichern findet in der Verbuchung statt und da gibt's keine Verbindung mehr zum Frontend.
the-FoX hat geschrieben: udn die zwiete Möglichkeit wäre es, wenn man eine Transaktion parallel zu der VA42 starten könnte an dieser Stelle, die sich in einem neuem Fenster öffent.
Das könnte z.B. ein Report sein, dem die Kontraktnummer übergeben wird. Zur Not müsste der Anwender dann ein paar mal "Ausführen" drücken und würde zweimal die Meldung kriegen "Beleg (noch) nicht vorhanden".

Kann man nicht gleich einen ordentlichen Workflow anlegen? Der Workflow würde dann dem Anleger des Kontraktes eine Workflownachricht schicken (Weiss nicht ob das gehen würde?)

Enno

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
Geht das mittels Workflows automatisch ? Kenne leider Workflows nicht.

Wie starte ich eine parallele Transaktion oder einen Report ?! :-(

Ein Programm/Transaktion habe ich ja schon und nur das parallele Starten geht leider nicht. Stattdessen wartet die Save-Routine des Kontraktes. Und beim Neuanlegen des Kontraktes, ist der Kontrakt leider an der Stelle ncoh nciht in der DB-Tabelle.

Vieleicht gibt es UserExists, aber so genau habe ich auch noch nciht herausgefunden,w ei man welche sucht. Vieleicht kennt jemand ein Howto ? Oder eine kurze Anleitung dazu ?!

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Einen neuen Modus startest du mit

Code: Alles auswählen.

call function '...' starting new task
.
In diesem Funktionsbaustein könntest du dann dein Programm aufrufen und auch gleich die Belegnummer mitgeben.

Was man mit Workflow in diesem Fall unternehmen könnte, weiss ich leider nicht.

Enno

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
aber nur zu meinem Verständnis:
mittels des call function Commandos rufe ich doch einen Funktionsbaustein auf und keine Transaktion oder ?
Und läuft soetwas nicht im Hintergrudn ab, so dass keine Userinteraktionen mehr möglich sind ?

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
the-FoX hat geschrieben:mittels des call function Commandos rufe ich doch einen Funktionsbaustein auf und keine Transaktion oder?
Und läuft soetwas nicht im Hintergrudn ab, so dass keine Userinteraktionen mehr möglich sind ?
Du kannst ja aber in dem Funktionsbaustein einen "Call Transcation" machen.
Und Nein, das läuft nicht im Hintergrund ab.

Mir ist noch was anderes eingefallen: Du könntest auch eine SAP-Mail verschicken (FB SD_SEND_MAIL
bzw andere -> Suche in diesem Forum liefert noch Hinweise dazu). Du kannst dann dieser Mail
- eine Transaktion mitgeben,
- eine Parameter-id und Wert
Diese Mail kann dann "ausgeführt" werden mit genau den der Belegnummer, die du im Userexit ermittelst und dann dem FB als Parameter mitgibst.

Kann auch als Expressmail verschickt werden.

Enno

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
Danke für Deine Hilfe!
ich habe jetzt die Funktion
CALL FUNCTION 'NAVIGATION_EXECUTE_OBJECT'
gefunden, welche eine Transaktion im Hintergrund starten kann. Und wieder ein neues Problem:
Wenn die Anzahld er maximalen GUIs bereits erreicht ist, passiert logischerweise nix. Abwer dafür gibt es sicherlich auch einen FuBa ;)
Danke bisher für die Hilfe

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
the-FoX hat geschrieben:Und wieder ein neues Problem:
Wenn die Anzahld er maximalen GUIs bereits erreicht ist, passiert logischerweise nix. Abwer dafür gibt es sicherlich auch einen FuBa ;)
Wenn du einen findest, sag bescheid - Ich kenne nämlich keinen...
the-FoX hat geschrieben: Danke bisher für die Hilfe
Gern geschehen. Wann wird denn deine HP fertig?
Enno

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
Mittels folgendem FuBa lässt sich die Anzahl der offenen GUIs und maximalen ermitteln:

DATA: ACT_SESSIONS LIKE SM04DIC-COUNTER.
DATA: MAX_SESSIONS LIKE SM04DIC-COUNTER.

CALL FUNCTION 'TH_USER_INFO'
IMPORTING
ACT_SESSIONS = ACT_SESSIONS
MAX_SESSIONS = MAX_SESSIONS.

Zu meiner Homepage:
Es fehlt mir leider derzeit an Zeit, wie das leider so ist. Es gibt aber noch Teile des alten Designs unter: http://www.fox-box.com/dll/ ;)

Seite 1 von 1

Vergleichbare Themen

0
Antw.
916
Views
ALV BLOCK benötige den Parameter SAVE
von wreichelt » 20.09.2018 15:29 • Verfasst in ABAP® für Anfänger
2
Antw.
1692
Views
WebDynpro editable AVL table save changes
von shadow » 17.03.2014 15:19 • Verfasst in ABAP® für Anfänger
1
Antw.
737
Views
Fehler SAVE NOT ALLOWED bei F4IF_START_VALUE_REQUEST
von AdrianSchm » 18.02.2019 15:41 • Verfasst in ABAP® Core
12
Antw.
1489
Views
BP Check nach Klick auf SAVE Button
von ZF_SAPler » 22.07.2022 12:19 • Verfasst in ABAP® für Anfänger
7
Antw.
3641
Views
Save Button bei Selection Screen löschen
von ManMan » 27.06.2017 17:14 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 111
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 141