on 02-04-2014 3:59 PM
Scenario:-
Classic Scenario
No PI(Process Integration)
No PDP (Plant Driven Procurement) process
Today we created new Service purchase requisition (which is never adopted for PO creation) which contains only one item(10), under this line item (10) five service Numbers…as 20000000(Line-10),20000021(Line-20),20000025(Line-30),20000033(Line-40),20000058(Line-50)
then
Our process:-
Purchase Requisition(Service) Transferred from ECC to SRM - >Purchase Requisition Converted in to shopping cart in SRM> Shopping Cart goes to sourcing -> buyer
creates RFx by adopting the Shopping Cart -> RFx is sent to bidder -> bidder will respond >RFx Response number will be created in SRM>Buyer will compare the RFx responses -> Buyer will click on the RFX response number of L1 vendor>in the RFX response screen when he will click on the “CREATE Purchase Order”
Issue:- why in Service PO items are splitted in to item-10,item-20,item-30,item-40 which is not same like in Service PR
Hope if above issue will solved below error message wont appear
Error Message:-
Materials of requisition 2100000654 item 00010 alr. ordered in full
Message no. 06076
Please Find the attached screen shot
Thanks
Madhu
Hey madhu
For moving it to SOCO there is a temp method which i ahve been using since where go to bbp_pd and open the item details where you see the source rel indicator as Y at the same place you would find a GUID before the table being listed as BBP_PDIGP
Go to this table with the GUId and in debuggin mode change the entry in the table to X this would move it to SOCO .. let me know if it helps
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Go to se16
enter table name bbp_pdigp
enter the GUid number and execute
Click on the entry
in the command prompt enter /h to enter into debuggin mode
once you enter there double click where you see source rel indicator as x
it will open another session where you will see value of CODE as show change it and make it EDIT
it will show the fields editable make changes and save ..
This is a pretty simple thing to do .. pl take help from a technical consultant .. should not be that tough
Hi Madhu,
Are you using SRM7.02 system?
If so, what you are experiencing is one new functionality in SRM702 called service bulding.
It can be activated in the following path:
SAP Supplier Relationship Management
SRM Server
Continuous Improvement
Activate/Deactivate Service Bundling
SRM_702_SERVICE_BUNDLING_PO
If it is active, the service PO created in ECC side will have seperate service lines such as line 10 20 30 40 not integrated to one line. This is a new functionality in SRM702, and once it is activated, it is IR-REVERTIBLE.
If you are using SRM7.0 or SRM7.01, the note 1743852 should have already been implemented in your system. That is the reason you experience different behavior before note implementation.
This functionality is an improvement and will have more advantages.
Best regards,
ivy
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Madhu,
There is no workaround for this functionality.
Once it is active, you will always have PO with service bundling and this can't be deactivated again.
So if you decide to have this functionality, please activate it then.
For the new query about status, I didn't see any problem about it. This status should be inactive once follow-on doumet such as PO is created.
best regards,
Ivy
Hi Ivy,
Thanks for Confirmation about service bundling.
I need 2 more suggestion from your side:-
Issue:- Material purchase Requisition not transferring to SOCO (Sourcing),,which is successfully happening for Service Purchase Requisition.
Temporary method:-
Temporally is there any manual method to push this material Purchase Requisition to SOCO.
i have checked there is no Sourcing flag "Y" for Material Purchase Requisation..why it is happening only for material purchase requisation .....why not for service purchase requisation.
what is the root cause
will you suggest any functional module,if yes (How to do step by step).
Perminent method:-
BADI :-ME_ME_REQ_SOURCING _CUST implimentation...is this only solution
sorry to bother you...this is the last query from my side today...
i will inform the Service bundling test results soon...
Thanks
Madhu
Hi Madhu,
Vinita has provided one temparary solution for problematic SCs. This has to be done in debugging mode.
In order to solve this, I suggest you check the following points:
1, check Define Sourcing for Product Categories
2, check BADI bbp_src_determine
If you found source_rel_ind is Y, the most possible reason is that somebody reject this SC in sourcing cockpit. Such SC won't get back to sourcing unless you use some informal way proposed by Vinita.
Best regards,
Ivy
Can you please elaborate more on this .
from what I understand you want the SC item to not split into different PO generally it spits based on different shipping address maintained . You can also check this in BADI ZBBP_GROUP_LOC_PO
Below is a sample code I found from one of the earlier threads as below :
http://scn.sap.com/message/2772557#2772557
http://scn.sap.com/message/3155145#3155145
http://scn.sap.com/message/2877448#2877448
http://scn.sap.com/message/2371974#2371974
https://scn.sap.com/thread/2026160
https://scn.sap.com/thread/54153
METHOD if_ex_bbp_group_loc_po~group_po.<BR>
*------------------------------------------------------------------------------*<BR>
* Exit Grouping of Items for Local Purchase Orders<BR>
** Parameters<BR>
*ITEM_DATA TYPE BBP_INT_ITEM_GROUP Item Data for Shopping Basket Item<BR>
*It contains the most important item details of the shopping cart and<BR>
*additionally in the field REFNUMBER a reference number for further<BR>
*processing purposes<BR>
*------------------------------------------------------------------------------*<BR>
* Method used to group item before PO creation<BR>
* How it work ?<BR>
* 1/ Select extra colons from table ZPO_SPLIT_CRITER<BR>
* 2/ Getting Compoents from existing type BBP_INT_ITEM_GROUP<BR>
* 3/ For each line recalcul Refnumber<BR>
**********************************************************************<BR>
* Declarations<BR>
**********************************************************************<BR>
*--------------------------------------------------------------------*<BR>
* Variable<BR>
*--------------------------------------------------------------------*<BR>
DATA: lt_zpo_split_criter TYPE TABLE OF zpo_split_criter<BR>
, ls_zpo_split_criter TYPE zpo_split_criter<BR>
, lo_struct TYPE REF TO cl_abap_structdescr<BR>
, lt_field_list TYPE ddfields<BR>
, ls_field_list TYPE dfies<BR>
.<BR>
<BR>
DATA:<BR>
lt_item_data TYPE bbp_int_item_group<BR>
, ls_item_data TYPE bbp_int_item_groups<BR>
, ls_back_data TYPE bbp_int_item_groups<BR>
, ls_modi_data TYPE bbp_int_item_groups<BR>
, l_fname TYPE fieldname<BR>
, l_refnumber TYPE refnumber<BR>
, l_tabix TYPE sytabix<BR>
, l_not_empty TYPE c<BR>
, l_act_not_empty TYPE c<BR>
.<BR>
*--------------------------------------------------------------------*<BR>
* Field symbols<BR>
*--------------------------------------------------------------------*<BR>
FIELD-SYMBOLS: <lfs_refnumber> TYPE bbp_int_item_groups-refnumber<BR>
, <lfs_act_refnumber> TYPE bbp_int_item_groups-refnumber<BR>
, <lfs_field_value> TYPE ANY<BR>
, <lfs_act_field_value> TYPE ANY<BR>
.<BR>
*--------------------------------------------------------------------*<BR>
* Constants<BR>
*--------------------------------------------------------------------*<BR>
* CONSTANTS:<BR>
* .<BR>
**********************************************************************<BR>
* Process<BR>
**********************************************************************<BR>
* 1/ Select extra colons from table ZPO_SPLIT_CRITER<BR>
SELECT * FROM zpo_split_criter INTO TABLE lt_zpo_split_criter<BR>
WHERE split EQ 'X'.<BR>
CHECK NOT lt_zpo_split_criter[] IS INITIAL.<BR>
DELETE lt_zpo_split_criter WHERE fieldname = 'REFNUMBER'.<BR>
<BR>
* 2/ Getting Compoents from existing type<BR>
lo_struct ?= cl_abap_typedescr=>describe_by_name( 'bbp_int_item_groups' ).<BR>
CALL METHOD lo_struct->get_ddic_field_list<BR>
EXPORTING<BR>
p_langu = sy-langu<BR>
p_including_substructres = abap_true<BR>
RECEIVING<BR>
p_field_list = lt_field_list<BR>
EXCEPTIONS<BR>
not_found = 1<BR>
no_ddic_type = 2<BR>
OTHERS = 3.<BR>
IF sy-subrc <> 0.<BR>
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO<BR>
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.<BR>
ENDIF.<BR>
<BR>
LOOP AT lt_zpo_split_criter INTO ls_zpo_split_criter.<BR>
* Verify if field exist in table<BR>
READ TABLE lt_field_list<BR>
TRANSPORTING NO FIELDS<BR>
WITH KEY fieldname = ls_zpo_split_criter-fieldname.<BR>
CHECK sy-subrc EQ 0.<BR>
<BR>
* Copy table in internal<BR>
lt_item_data[] = item_data[].<BR>
<BR>
* Sort table by REFNUMBER and fieldname<BR>
SORT lt_item_data<BR>
BY refnumber (ls_zpo_split_criter-fieldname)<BR>
ASCENDING.<BR>
<BR>
* Clear internal value.<BR>
CLEAR: l_refnumber<BR>
.<BR>
<BR>
CONCATENATE 'LS_ITEM_DATA-' ls_zpo_split_criter-fieldname<BR>
INTO l_fname.<BR>
ASSIGN (l_fname) TO <lfs_act_field_value>.<BR>
CHECK sy-subrc = 0.<BR>
CONCATENATE 'LS_BACK_DATA-' ls_zpo_split_criter-fieldname<BR>
INTO l_fname.<BR>
ASSIGN (l_fname) TO <lfs_field_value>.<BR>
CHECK sy-subrc = 0.<BR>
CONCATENATE 'LS_ITEM_DATA-' 'REFNUMBER'<BR>
INTO l_fname.<BR>
ASSIGN (l_fname) TO <lfs_act_refnumber>.<BR>
CHECK sy-subrc = 0.<BR>
CONCATENATE 'LS_BACK_DATA-' 'REFNUMBER'<BR>
INTO l_fname.<BR>
ASSIGN (l_fname) TO <lfs_refnumber>.<BR>
CHECK sy-subrc = 0.<BR>
<BR>
CLEAR: <lfs_refnumber><BR>
, <lfs_field_value><BR>
.<BR>
<BR>
* For each reccord in table, calculate new REFNUMBER<BR>
LOOP AT lt_item_data INTO ls_item_data.<BR>
MOVE sy-tabix TO l_tabix.<BR>
IF <lfs_act_field_value> IS INITIAL.<BR>
MOVE ' ' TO l_act_not_empty.<BR>
ENDIF.<BR>
<BR>
IF ls_zpo_split_criter-as_not_blank IS INITIAL.<BR>
* Case of each value on field create a new refnumber<BR>
IF <lfs_field_value> NE <lfs_act_field_value> OR<BR>
<lfs_refnumber> NE <lfs_act_refnumber> .<BR>
l_refnumber = l_refnumber + 1.<BR>
MOVE <lfs_act_field_value> TO <lfs_field_value>.<BR>
MOVE <lfs_act_refnumber> TO <lfs_refnumber>.<BR>
ENDIF.<BR>
ELSE.<BR>
IF l_not_empty NE l_act_not_empty OR<BR>
<lfs_refnumber> NE <lfs_act_refnumber> .<BR>
l_refnumber = l_refnumber + 1.<BR>
MOVE l_act_not_empty TO l_not_empty.<BR>
MOVE <lfs_act_refnumber> TO <lfs_refnumber>.<BR>
ENDIF.<BR>
<BR>
ENDIF.<BR>
ls_modi_data = ls_item_data.<BR>
ls_modi_data-refnumber = l_refnumber.<BR>
<BR>
MODIFY item_data FROM ls_modi_data INDEX l_tabix<BR>
TRANSPORTING refnumber.<BR>
ENDLOOP.<BR>
ENDLOOP.<BR>
<BR>
ENDMETHOD.
<BR>
<BR>
<BR>
It works with the table ZPO_SPLIT_CRITER as bellow:<BR>
CLIENT MANDT<BR>
FIELDNAME FIELDNAME<BR>
SPLIT BOOLE_D<BR>
AS_NOT_BLANK BOOLE_D<BR>
<BR>
If you need more information, contact me directly.<BR>
Regards, <BR>
<BR>
David BOUTIER<BR>
Consultant technique Sap Netweaver - KALYDIA<BR>
8, rue Pasquier - 75008 Paris<BR>
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.