SAP Jobsuche bei DV-Treff
Xor
  • Xor
  • SAP Forum - Neuling Thema Starter
vor 13 Jahre
Hallo!

Ich bin recht "neu" was das Entwickeln in ABAP angeht, und auch in SAP allgemein. Und NOCH bin ich auch NUR Entwickler (komme aus der C/C++-Schiene).

Mein Chef möchte nun von mir, dass ich mich mit der FB60 befasse, und diese um eine Funktionalität erweitere.

Und zwar soll nach dem Buchen einer Rechnung ein Popup aufgehn (oder sowas in der Art), in dem der Benutzer weitere für die Firma interessante Daten dazu ablegen kann in einer eigenen Datenbank, und vollkommen losgelöst von allem Bestehenden. Im Prinzip brauche ich also die generierte Buchungsnummer, einen Absprung aus der FB60 nach dem Klicken auf "Speichern", sowie eine Rückkehr eben genau an diese Stelle, wenn die "Zusatzdaten" eingetragen und gespeichert wurden.

Irgendwas über Customizing dazubauen kommt nicht in Frage aus verschiedenen Gründen. Ich brauche also diesen Absprungpunkt, ab dem ich dann eigenen Code schreiben kann, und nach dessen Ausführung wieder in die FB60 zurückkehre.

Ich habe bereits nach User-Exits gesucht, und 14 Stück in der FB60 gefunden. Aber alle "Beschreibungen" dazu sagen mir als Nicht-Betriebswirt relativ wenig. Keiner scheint meinen Absprungpunkt zu treffen :(

Kann mir jemand sagen, ob es dort einen User-Exit gibt, wenn ja wie ich den finden würde ohne hier zu fragen, und falls es keinen gibt, wie ich mein Vorhaben dennoch umsetzen kann?

Viele Grüße,
Xor

P.S.: Sollte das hier die falsche Stelle im Forum sein, bitte verschieben - für mich war es hier am plausibelsten 🙂
Xor
  • Xor
  • SAP Forum - Neuling Thema Starter
vor 13 Jahre
Niemand eine Idee? 😞
Andre Keller
vor 13 Jahre

Hallo Xvor,

schau mir mal das Event 00001020 an.

Schönen Gruß!

André

Xor
  • Xor
  • SAP Forum - Neuling Thema Starter
vor 13 Jahre
Hallo Andre!

Vielen Dank, das bringt mich denke ich auf den richtigen Weg.

Das Event 00001020 scheint nicht ganz das richtige zu sein, da zu diesem Zeitpunkt wohl noch keine Belegnummer generiert wurde, die ich allerdings kennen muss. Ich habe mir somit mal 0001025 und 00001030 angeschaut, die mich aber in meinen Augen auch nicht weiterbringen.

Da ich belegspezifische Informationen in einer Z-Tabelle abspeichern möchte, brauche ich wie bereits erwähnt die generierte Belegnummer. Diese ist wohl erst in 00001030 bekannt.

Ich habe nun Folgendes gemacht: Ich habe die drei FuBa's zu den Events 00001020, 00001025 und 00001030 kopiert und im Z-Namensraum in einem eigenen Paket eingefügt.

Nun fehlt mir aber ein dicker Brocken SAP-Wissen, wie ich es nun erreiche, dass meine eigenen FuBa's aufgerufen werden, wenn ich beispielsweise in der FB60 auf "Speichern" klicke. Testweise habe ich im Event 00001030 am Ende einen externen Breakpoint gesetzt, und in der FB60 einen Beleg gebucht. Dieser hat auch eine Belegnummer generiert, aber mein Breakpoint wurde nicht erreicht.

Ich habe also das Problem:  Wie customize ich die Events, so dass meine eigenen FuBa's gerufen werden wenn in der FB60 ein Beleg gebucht wird? In der FuBa Dokumentation steht zwar drin, wie es gehen soll, aber da scheitere ich irgendwie. Da steht "Anleitung", und wenn ich da drauf klicke, komme ich in der SPRO raus auf dem Eintrag der nach FIBF führt, und dort wars das dann mit meinem Know-How.

Nach meinem Verständnis muss ja, wenn richtig gecustomized. mein FuBa aufgerufen werden, wenn ich in der FB60 auf "Speichern" klicke. Dann liefert mir das Event (eines von den dreien wirds wohl hergeben) die Belegnummer, ich kann im Rumpf des FuBa dann mein Popup öffnen, die Informationen abfragen, diese in meiner eigenen Datenbank-Tabelle speichern, und beim schließen des Popup den FuBa verlassen, und somit in die FB60 zurückkehren.

Ist das so korrekt, oder habe ich einen Denkfehler?

Vielen Danke für die Hilfe!
Andre Keller
vor 13 Jahre
Hallo Xvor,

bevor das BTE aufgerufen wird, musste es aktivieren. Dazu musst du zuerst in TA FIBF unter Eigenschaften -> Produkte -> ... eines Kunden ein Z-Produkt anlegen (zB ZFB60) und aktivieren.

Anschließend gehst du in Einstellungen -> P/S-Module  -> ... eines Kunden wählst das Event aus, hinterlegst den Z-Baustein und das Produkt. Es kann sein, dass du das Feld Appl. auch noch füllen musst, das steht aber meistens in der FuBa-Doku des Original-Bausteins oder du suchst im Marketplace nur mit Event-Nummer. Dort findet man auch meistens nützliches.

Wenn du jetzt den Breakpoint setzt, startet auch der Debugger.

Schönen Gruß!
André
Xor
  • Xor
  • SAP Forum - Neuling Thema Starter
vor 13 Jahre
Hallo André!

Vielen Dank, hat super geklappt! Um die Belegnummer zu bekommen, musste ich allerdings in das Event 00001030 eingreifen. Aber der Weg war absoult korrekt :-)

Vielen Dank für Deine Hilfe!

Gruß,
Xor