folgende Anforderung: Bei der Barcode-Erfassung über die TA MIGO soll nicht das Standard Pop-Up, sondern eine Kundeneigene Lösung angezeigt werden. Das wird über einen Eintrag in der Tabelle TOAEX gesteuert und funktioniert auch einwandfrei.
Jetzt ist aber folgendes Problem aufgetaucht: Über die TA FB03 können ja auch anderen Belegen Barcodes zugewiesen werden. Und das funktioniert nicht mehr, sobald der Eintrag für den Exot OA_GETBARCODE_01 in der TOAEX eingetragen wurde. Dann erscheint immer folgende Fehlermeldung: Barcode-Erfassung nicht aktiv -> Administration
Sobald ich den Eintrag entferne geht es wieder.
Habe versucht es im Debugger zu lösen,hatte aber keinen Erfolg. Auf jeden Fall findet diese Prüfung VOR dem Kunden-FuBa statt. Den dort kommt der Debugger gar nicht erst hin.
ich habe heute auch den Eintrag OA_GETBARCODE_01 in der TOAEX aufgenommen und bei mir funktioniert die FI-Barcodeerfassung weiterhin.
Ob in der FB03 Barcodes erfasst werden können wird über die IMG-Aktivität "Barcodeerfassung aktivieren" und die Dokumentart FIIINVOICE gesteuert. Bei mir funktioniert das auch nach dem Eintrag in TOAEX (Dienste zum Objekt -> Anlegen -> Barcode erfassen). An dieser Funktionalität habe ich nichts geändert.
Wichtig war bei mir, im Funktionsbaustein den Export-Parameter "goon" zu setzen: X = Barcode Popup, space = kein Barcode Popup. Setzt man den Parameter nicht, kommt kein Barcode Popup.
Bei mir sieht das Coding so aus (die unschöne Namensgebung der Parameter kommt von SAP):
FUNCTION zxf_fp_oa_getbarcode_01.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" REFERENCE(TOACM) TYPE TOACM
*" REFERENCE(OBJECT_TYPE) TYPE TOAV0-SAP_OBJECT
*" REFERENCE(OBJECT_ID) TYPE TOAV0-OBJECT_ID
*" REFERENCE(DOCUMENT_TYPE) TYPE TOADV-AR_OBJECT
*" VALUE(BARCODE) TYPE TOAV0-ARC_DOC_ID
*" REFERENCE(NO_POPUP) TYPE C
*" REFERENCE(NO_DOC_CHANGE) TYPE C
*" EXPORTING
*" VALUE(BARCODE) TYPE TOAV0-ARC_DOC_ID
*" REFERENCE(GOON) TYPE C
*" REFERENCE(DOCTYPE) TYPE TOADV-AR_OBJECT
*" EXCEPTIONS
*" NO_AUTHORITY
*" NO_CUSTOMIZING
*" ERROR_CONNECTION
*" ERROR_PARAMETER
*" USER_EXIT
*"----------------------------------------------------------------------
DATA: lv_fcode TYPE ui_func.
barcode = barcode.
goon = 'X'. "< standardmäßig auf X -> Popup erscheint
doctype = document_type.
IMPORT fcode TO lv_fcode FROM MEMORY ID 'XF_FCODE'. "EXPORT in Methode /WMD/IF_XF_BC_MOD~HANDLE_FCODE
IF lv_fcode = /wmd/cl_fp_iv_doc_cat=>c_fcode_sapta_park
OR lv_fcode = /wmd/cl_fp_iv_doc_cat=>c_fcode_sapta_post.
goon = space. "Im speziellen Fall kein Popup
ENDIF.