‎2009 Apr 23 7:05 AM
Hello everyone,
I am having a problem with a std include ( FM06BF04_BEZUGSQUELLE ), The issue is that there is a perform AUTHORITY_BESWK. Although it is included, sap is giving me an error that it does not exist.
Any help would be highly appreciated. Thanks
‎2009 Apr 23 7:31 AM
Hi Kevin,
The standard program for which subroutine AUTHORITY_BESWK is used is Program RM06BL00 (List Editing, Purchase Requisitions) . This subroutine is not found in version 4.6C. I am not sure if it is available in version 4.7
If you have an older version, you need to modify the standard.
Check if there is a subroutine bezugsquelle in include FM06BF04_BEZUGSQUELLE. If not, please modify the program to include it.
This is the code of the subroutine
*----
*
Bezugsquellenprüfung für manuell eingegebene Bezugsquelle *
*----
*
form bezugsquelle.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
perform bezugsquelle_bezeichn.
*- Prüfen Bezugsquelle -
*
clear bueb.
Begin CCP
bueb-beswk = eban-beswk.
authority check
data: ls_eban_old type eban.
move-corresponding ban to ls_eban_old.
if not eban-beswk is initial or
not ban-beswk is initial.
perform authority_beswk using eban
ls_eban_old.
endif.
End CCP
bueb-flief = eban-flief.
bueb-ekorg = eban-ekorg.
bueb-infnr = eban-infnr.
bueb-konnr = eban-konnr.
bueb-ktpnr = eban-ktpnr.
bueb-reswk = eban-reswk.
bueb-ematn = eban-ematn.
bueb-mfrnr = eban-mfrnr.
bueb-mfrpn = eban-mfrpn.
bueb-emnfr = eban-emnfr.
perform bezugsquelle_1 using space.
perform bezugsquelle_2.
move ban to eban.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
perform bezugsquelle_bezeichn.
*- Bildfolge bestimmen -
*
if ok-code eq 'ORDP'.
if ban-updk1 ne aend and ban-updk1 ne zner.
ban-updk1 = znew.
endif.
modify ban index index_ban.
*- Bild verlassen -
*
set screen 0.
leave screen.
endif.
endform. "BEZUGSQUELLE
Warm Regards,
Amit
‎2009 Apr 23 7:20 AM
This routine is defined in the include "FM06B_AUTHORITY_BESWKF01".
Check whether this includeis active or not.
‎2009 Apr 23 7:31 AM
Hi Kevin,
The standard program for which subroutine AUTHORITY_BESWK is used is Program RM06BL00 (List Editing, Purchase Requisitions) . This subroutine is not found in version 4.6C. I am not sure if it is available in version 4.7
If you have an older version, you need to modify the standard.
Check if there is a subroutine bezugsquelle in include FM06BF04_BEZUGSQUELLE. If not, please modify the program to include it.
This is the code of the subroutine
*----
*
Bezugsquellenprüfung für manuell eingegebene Bezugsquelle *
*----
*
form bezugsquelle.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
perform bezugsquelle_bezeichn.
*- Prüfen Bezugsquelle -
*
clear bueb.
Begin CCP
bueb-beswk = eban-beswk.
authority check
data: ls_eban_old type eban.
move-corresponding ban to ls_eban_old.
if not eban-beswk is initial or
not ban-beswk is initial.
perform authority_beswk using eban
ls_eban_old.
endif.
End CCP
bueb-flief = eban-flief.
bueb-ekorg = eban-ekorg.
bueb-infnr = eban-infnr.
bueb-konnr = eban-konnr.
bueb-ktpnr = eban-ktpnr.
bueb-reswk = eban-reswk.
bueb-ematn = eban-ematn.
bueb-mfrnr = eban-mfrnr.
bueb-mfrpn = eban-mfrpn.
bueb-emnfr = eban-emnfr.
perform bezugsquelle_1 using space.
perform bezugsquelle_2.
move ban to eban.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
perform bezugsquelle_bezeichn.
*- Bildfolge bestimmen -
*
if ok-code eq 'ORDP'.
if ban-updk1 ne aend and ban-updk1 ne zner.
ban-updk1 = znew.
endif.
modify ban index index_ban.
*- Bild verlassen -
*
set screen 0.
leave screen.
endif.
endform. "BEZUGSQUELLE
Warm Regards,
Amit
‎2009 Apr 23 7:43 AM
‎2009 Apr 23 7:51 AM
let me try to add a little bit details to where exactly the issue is coming from
Upgrading fro 4.6c to ECC6.0.
Porgram in both environment are using a stnd include "FM06BF04_BEZUGSQUELLE". however, there is additional lines of code in the include found in ECC6.0 which is not there in 4.6c.
Find below the code in the include FM06BF04_BEZUGSQUELLE in 4.6c:
FORM BEZUGSQUELLE.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
PERFORM BEZUGSQUELLE_BEZEICHN.
*- Prüfen Bezugsquelle -
*
CLEAR BUEB.
BUEB-FLIEF = EBAN-FLIEF.
BUEB-EKORG = EBAN-EKORG.
BUEB-INFNR = EBAN-INFNR.
BUEB-KONNR = EBAN-KONNR.
BUEB-KTPNR = EBAN-KTPNR.
BUEB-RESWK = EBAN-RESWK.
BUEB-EMATN = EBAN-EMATN.
BUEB-MFRNR = EBAN-MFRNR.
BUEB-MFRPN = EBAN-MFRPN.
BUEB-EMNFR = EBAN-EMNFR.
PERFORM BEZUGSQUELLE_1 USING SPACE.
PERFORM BEZUGSQUELLE_2.
MOVE BAN TO EBAN.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
PERFORM BEZUGSQUELLE_BEZEICHN.
*- Bildfolge bestimmen -
*
IF OK-CODE EQ 'ORDP'.
IF BAN-UPDK1 NE AEND AND BAN-UPDK1 NE ZNER.
BAN-UPDK1 = ZNEW.
ENDIF.
MODIFY BAN INDEX INDEX_BAN.
*- Bild verlassen -
*
SET SCREEN 0.
LEAVE SCREEN.
ENDIF.
ENDFORM.
Now the code for the same include FM06BF04_BEZUGSQUELLE in ECC6.0
FORM bezugsquelle.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
PERFORM bezugsquelle_bezeichn.
*- Prüfen Bezugsquelle -
*
CLEAR bueb.
Begin CCP
bueb-beswk = eban-beswk.
authority check
DATA: ls_eban_old TYPE eban.
MOVE-CORRESPONDING ban TO ls_eban_old.
IF NOT eban-beswk IS INITIAL OR
NOT ban-beswk IS INITIAL.
PERFORM authority_beswk USING eban
ls_eban_old.
ENDIF.
End CCP
bueb-flief = eban-flief.
bueb-ekorg = eban-ekorg.
bueb-infnr = eban-infnr.
bueb-konnr = eban-konnr.
bueb-ktpnr = eban-ktpnr.
bueb-reswk = eban-reswk.
bueb-ematn = eban-ematn.
bueb-mfrnr = eban-mfrnr.
bueb-mfrpn = eban-mfrpn.
bueb-emnfr = eban-emnfr.
PERFORM bezugsquelle_1 USING space.
PERFORM bezugsquelle_2.
MOVE ban TO eban.
*- Lieferantenname und Bezeichnung Einkaufsorganisation lesen -
*
PERFORM bezugsquelle_bezeichn.
*- Bildfolge bestimmen -
*
IF ok-code EQ 'ORDP'.
IF ban-updk1 NE aend AND ban-updk1 NE zner.
ban-updk1 = znew.
ENDIF.
MODIFY ban INDEX index_ban.
*- Bild verlassen -
*
SET SCREEN 0.
LEAVE SCREEN.
ENDIF.
ENDFORM. "BEZUGSQUELLE
When activating my program which is using this include in ECC6.0, i am getting an error message like "Form" AUTHORITY_BESWK" does not exist.