SAP SRM / CRM TIPS – Downloading Products from ERP to SRM / CRM
Posted by
ABOUT-SAP on
Sep 20, 2010 |
Leave a Comment
There is 31000 products in ERP and only 4100 in CRM. I’ve found products that are not in CRM!
I made the download creating a request via transaction R3AR2 but I have just looked at the filters on the material object via transaction R3AC1, and there is a lot of filter settings. Does those filters influence the request I created?
Filters that are set in txn:R3AC1 for the object would be applicable for all types of load including request load, delta load and initial load.
You can check tables CRMM_PR_SALESA CRMM_PR_SALESG for corresponding MVKE records of R/3.
What I could understand is that you have some problem with your filter conditions.
Hence forth, I would like to clarify the filter conditions and will try explain it to you how it works :
Case 1 :
In R3AC1 : Filter is VKORG : 1000
In R3AR2 : Filter is VKORG : 2000
On Request Download from R/3 to CRM, Data will get downloaded for the Request Filter.
Case 2 :
In R3AC1 : Filter is VKORG : 1000
KUNNR : 1000 – 2000
In R3AR2 : Filter is KUNNR : 1500 – 2500
On Request Download from R/3 to CRM, Data will get downloaded for KUNNR 1500 – 2500 with VKORG :1000 from R3AC1.
Case 3 :
In R3AC1 : Filter is VKORG : 1000
KUNNR : 1000 – 2000
In R3AR2 : Filter is VKORG : 2000
KUNNR : 1500 – 2500
On Request Download from R/3 to CRM, Data will get downloaded for KUNNR 1500 – 2500 with VKORG :2000 from R3AR2.
At the End of the Day, The filter works as follows :
1. SAME TABLE FIELD present in R3AC1 and R3AR2 :
Result : The filter conditions of request download will override the filter conditions of R3AC1.
2. DIFFERENT TABLE FILED present in R3AC1 and R3AR2 :
Result : The filter conditions of both R3AR2 and R3AC1 are considered and the data is filtered in the Request download. So , basically if the fields are different, THE AND condition is applied on the filter.
By: sap-img.com
Tags: products, sap, sap crm, SAP CRM Tips
SAP SRM Tips – How to configure product category
Posted by
ABOUT-SAP on
Jun 17, 2010 |
Leave a Comment
The usual scenario is where clients have product category maintained in R/3 (SPRO / Logistics – General / Material master / Settings for key fields / Define Material groups).
You can use LSMW to create product categories.
Then you have to replicate those categories / Material groups to SRM. You can do this by Midleware (transaction R3AS). You can see hierarchies in srm at transaction comm_hierarchy.
Enjoy it
Tags: product hierarchy, sap, SAP SRM, SAP SRM Tips
SAP SRM Interview Questions
Posted by
ABOUT-SAP on
Jun 13, 2010 |
1 Comment
Here are some questions:
• 1.Name some of basis steps associatted with the configuration of SRM ?
• 2. Why do you configure number ranges in SRM ?
• 3. What number ranges to be configured in SRM ?
• 4. Why do you create internal number ranges for Local bid invitations ?
• 5. What is difference between SRM Vendor list and Sourse list from R/3 ?
• 6. How do you define the ITS URL ?
• 7. What is SRM equalent terminology for Material group material master ?
• 8. If you want to replicate only a subset of material group to SRM Product categories ? how it can be accomplished ?
• 9. In disconnected mode how many local system should be connected / defined?
• 10. How often must be define Org unit address ?
• 11. Is there any thing special about replicating vendors in the org plan ?
• 12. What are some of non –MM objects, that must be replicated in SRM system ?
• 13. If you are replicating from R/3 back end , and some thing is stuck in the queue in R/3 , WHAT CAN YOU DO ?
• 14. What you can do to see if you have a queue in EBP?
• 15. Is there is any thing in particular that needs to be done to a user or vendor to make them a valid part of SRM? ANS : Bussiness partner of organaisation unit does not exists .
• 16. What purpose does SRM Org structure serve?
• 17. What are some of the most important attributes assigned in the org structure, and what are there purposes?
• 18. What is the purposes of forword work item attribute ( forword_wi ) ?
• 19. What is the significance of product category is in SRM?
• 20. How do you make catalogue link appear for a user ?
• 21. Do vendors exists in SRM system ? Or do you use the back end vendors ?
• 22. What is the T-code used to replicate vendor master from back end in SRM ?
• 23. How do you know if shopping cart generate a PR or PO ?
• 24. How do you control which catalogs a user sees ?
• 25.How can you automate vendor replicate in SRM ?
• 26. How does SRM maintain synchronization with the back end R/3 system ?
• 27. Can tax calculation can be disabled?
• 28. Why should I mark the standard approval work flows as a general task ?
• 29 What is the purchasing organization hierarchy ?
• 30. What is the middleware used for ?
• 31. How do you define logical systems for initial download?
• 32. What is purpose of a document type? How does this apply to PR? To PO?
• 33. How are the product categories represented in R3?
Tags: sap, SAP SRM, SAP SRM Interview Questions
SAP SRM TIPS- How to deactivate email notifications (alerts) when employee is changed in PPOMA
Posted by
ABOUT-SAP on
Jun 09, 2010 |
Leave a Comment
These alerts are generally started in customizing. The alert event
triggers some modification with the employee and it sends some e-mail
notifications.
If you don’t want these alert you can deactivate in the customizing
table BBPC_EVENTMAP. Try doing this and check the behaviour.
Frequently, the following entries are maintained:
ADRESS_CHANGED
DEPARTMENT_CHANGED
ERROR_OCURRED
It means that if a modification or error occur with these fields, a
notification will be started.
In addition, some information regarding the alert management:
BBPC_EVENTMAP, BBPC_EVENT and BBPC_ACTIONMAP.
Table BBP_EVENTMAP determines if eventing is to be done for which
business object type.
Table BBPC_EVENT determines what category belongs to what business
object type. Additionally, deadlines are set here.
Table BBP_ACTIONMAP determines what action class is to be called for
what category.
To deactivate the alerts in BBPC_EVENTMAP
(With an admin user) follow the steps below:
-> SE16
-> Table BBPC_EVENMAP
-> Object type “BUS1006003″ – “CL_BBP_EVENTS_BP”
-> Select the entry (checkbox)
-> Click on the pencil icon
-> Checkbox field (there is an ‘X’, change to a blank entry)
Enjoy it
Tags: employee, ppoma, sap, SAP SRM, SAP SRM Tips
SAP SRM Tips – How to eliminate and create new workflow process
Posted by
ABOUT-SAP on
May 25, 2010 |
Leave a Comment
How can we eliminate a Shopping cart / Purchase order workflow process and create a new one?
1 – Go to swwwihead and get the desired workflow process ID
2 – Through swia, you have to close the workflow process and create a new one in swi6
3 – Finally through Swdd you have to copy the deleted purchase order info to the new one (for instance approvers to skip, etc…)
Enjoy it
Tags: purchase order, sap, SAP SRM, SAP SRM Tips, srm, workflow
SAP SRM Tips – Resend purchase orders to R/3
Posted by
ABOUT-SAP on
May 25, 2010 |
Leave a Comment
Imagine that purchase orders fail during the transfer to R/3. There are no error logs in the application log (transaction RZ20) and cannot resend from within the appliction monitors page? What would you do?
Go to transaction SE37 – Function module BBP_PD_PO_TRANSFER_EXEC / BBP_PD_PO_TRANSFER_EXEC_V2
select PO GUID from BBP_PD
If you need to debug do it from SPOOL_DPO_TRANSFER_DO
Again select PO GUID from BBP_PD
Execute : EXEC
Enjoy it!
Tags: sap, SAP SRM, SAP SRM Tips, srm
SAP SRM Tips- Approved Shopping Cart that doesn´t create Purchase Order
Posted by
ABOUT-SAP on
Apr 26, 2010 |
Leave a Comment
In SRM whenever an approved Shopping Cart doesn´t create the purchase order like expected, we can use function BBP_REQREQ_TRANSFER to force it.
Go to transaction bbp_pd and check if it was successfully created.
Enjoy it!
Tags: purchase order, sap, SAP SRM Tips, shopping cart, srm
SAP SRM Transactions / Tcodes
Posted by
ABOUT-SAP on
Mar 05, 2010 |
Leave a Comment
SAP SRM Tcodes
| Transaction Codes |
Description |
| Replicating Master Data from R/3 |
|
| R3AS |
Loading jobs (initial load) |
| R3AC4 |
Delta Download |
| R3AC1 |
Setup Business Objects (creating filter) |
| R3AC3 |
Setup Customizing Objects |
| R3AM1 |
Monitoring the loaded jobs |
| Organization Structure |
|
| PPOCA_BBP |
Create Organisation Structure |
| PPOMA_BBP |
Change Organisation Structure |
| PPOSA_BBP |
Display Organisation Structure |
| PPOCV_BBP |
Create Vendor Group |
| PPOMV_BBP |
Change Vendor Group |
| PPOSV_BBP |
Display Vendor Group |
| BBPGETVD |
Replicating Vendor Master Data |
| USERS_GEN |
Create EBP User |
| BBPMAININT |
Manage Business Partners |
| BBP_BP_OM_INTEGRATE |
Consistency check for business partners |
| BBP_PD |
|
| SLG1 |
Error Logs |
| RZ20 |
Application Monitors |
| SMQ1 & SMQ2 |
Inbound & outbound queues |
| SA38 / SE38 |
For executing reports |
| SM30 |
Table maintenance |
| SE37 |
Function builder (executing function module) |
| SWDD |
Work flow builder |
| SWB_PROCUREMENT |
Start conditions for workflow |
| SWE2 |
Event Linkages |
| SWI6 |
Display workflows |
Tags: SAP SRM, SAP SRM Transactions, SAP tcode, sap transactions, SRM - Transactions
SAP SRM Tables
Posted by
ABOUT-SAP on
Mar 05, 2010 |
Leave a Comment
SAP SRM Tables
| Tables |
Description |
| COMM_PRODUCT |
Product table |
| COMM_CATEGORY |
Product category table |
| ROST_SEL_PRODCAT |
Product Categories for Registration |
| BUT000 |
table for all kind of partners in SRM (Bidders, Vendors, contact persons, suppliers, goods recipients, etc..) |
| BBPGETVD |
Table VENMAP for Vendors replicated from R/3 backend |
| ROST_LANG_QSTN |
Language Selection for Question |
| ROST_PCAT_QSTN |
Assign Product Category and Questionnaire to Lan |
| ROST_SEL_PRODCAT |
Product Categories for Regis |
| ROST_WS_QSTN |
Web Survey Questionnaire |
| ROS_BP_PC_SURVEY |
Assign Vendor, Product Category, Survey |
| CRMD_IC_SCRATTR |
Script/Survey attributes (Interactive Script Editor) |
| ROST_WS_QSTN |
Web Survey Questionnaire |
| ROS_BP_PC_SURVEY |
Assign Vendor, Product Category, Survey |
| TUWS_SURVEY |
Survey |
| TUWS_SURVEY_LOG |
Survey Log |
| TUWS_SURVEY_PUB |
Survey Publishing |
| TUWS_TAROBJ |
Survey: Recipients |
| TUWS_TAROBJ_ATTR |
Survey: Recipient Attributes |
| ADR10 |
Printer (Business Address Services) |
| ADR11 |
(Business Address Services) |
| ADR12 |
(Business Address Services) |
| ADR13 |
(Business Address Services) |
| ADR2 |
Telephone Numbers (Business Address Services) |
| ADR3 |
Fax Numbers (Business Address Services) |
| ADR4 |
Teletex Numbers (Business Address Services) |
| ADR5 |
Telex Numbers (Business Address Services) |
| ADR6 |
E-Mail Addresses (Business Address Services) |
| ADR7 |
Remote Mail Addresses (SAP - SAP - Communication; BAS) |
| ADR8 |
X. 400 Numbers (Business Address Services) |
| ADR9 |
RFC Destinations (Business Address Services) |
| ADRCOMC |
Comm. Data Serial Number Counter (Business Address Services) |
| ADRCT |
Address Texts (Business Address Services) |
| ADRG |
Assignment of Addresses to Other Address Groups (BAS) |
| ADRGP |
Assignment of Persons to Further Person Groups (BAS) |
| ADRT |
Communication Data Text (Business Address Services) |
| ADRU |
Table for Communication Usages |
| ADRV |
Address Where-Used List (Business Address Services) |
| ADRVP |
Person Where-Used List (Business Address Services) |
| BBP_PDACC |
Account Assignment |
| BBP_PDATT |
Document Attachment |
| BBP_PDBEH |
Backend Specific Header Data |
| BBP_PDBEI |
Backend Specific Item Data |
| BBP_PDBGP |
Partner Extension Gen. Purchasing Data |
| BBP_PDBINREL |
Transaction Object Linkage (EBP) |
| BBP_PDCON |
Purchase Order Item Confirmation |
| BBP_PDHAD_V |
Business Transaction Versions |
| BBP_PDHCF |
Set for Tabular Customer and Solution Fields on Hdr |
| BBP_PDHGP |
Business Transaction Purchasing Information |
| BBP_PDHSC |
Header Extension for Customer Fields |
| BBP_PDHSS |
Hdr Extension for SAP Internal Enhancements (IBUs and so on) |
| BBP_PDIAD_V |
Business transaction item |
| BBP_PDICF |
Set for Tabluar Customer and Solution Fields on Itm |
| BBP_PDIGP |
Business Transaction Item-Purchasing Information |
| BBP_PDISC |
Item Extension for Customer Fields |
| BBP_PDISS |
Item Ext. for SAP Internal Enhancements (IBUs and so on) |
| BBP_PDLIM |
Value Limit |
| BBP_PDLINK_V |
Transaction - Set - Link |
| BBP_PDORG |
Purchasing Organizational Unit |
| BBP_PDPSET |
Further Procurement Information |
| BBP_PDTAX |
Tax |
| BBP_PDTOL |
Tolerances |
| CDCLS |
Cluster structure for change documents |
| CDHDR |
Change document header |
| CDPOS_STR |
Additional Change Document - Table for STRINGs |
| CDPOS_UID |
Additional Table for Inclusion of TABKEY>70 Characters |
| CRMD_LINK |
Transaction - Set - Link |
| CRMD_ORDERADM_HBusiness |
Transaction |
| CRMD_ORDERADM_IBusiness |
Transaction Item |
| CRMD_PARTNER |
Partners |
| CRM_JCDO |
Change Documents for Status Object (Table JSTO) |
| CRM_JCDS |
Change Documents for System/User Statuses (Table JEST) |
| CRM_JEST |
Individual Object Status |
| CRM_JSTO |
Status Object Information |
| SROBLROLB |
Persistent Roles of BOR Objects |
| SROBLROLC |
Persistent Roles of Business Classes |
| SRRELROLES |
Object Relationship Service: Roles |
| STXB |
SAPscript: Texts in non-SAPscript format |
| STXH |
STXD SAPscript text file header |
| STXL |
STXD SAPscript text file lines |
| TOA01 |
Link table 1 |
| TOA02 |
Link table 2 |
| TOA03 |
Link table 3 |
| TOAHR |
Container table for HR administration level |
| The function modules for different business objects |
Modules : |
| BBP_PD_SC_GETDETAIL |
Shopping Cart |
| BBP_PD_PO_GETDETAIL |
Purchase Order |
| BBP_PD_CONF_GETDETAIL |
SRM Confirmations |
| BBP_PD_INV_GETDETAIL |
Invoice and Credit Memo |

Main SRM Tables
Tags: sap, SAP SRM, SAP SRM Tables
SAP SRM Sample Codes
Posted by
ABOUT-SAP on
Mar 05, 2010 |
2 Comments
Code 1: Update Purchase Order Partner Details By Kathirvel Balakrishnan
This is a very simple code sample to update the purchase order partner details. The following function modules are used:
BBP_PD_SC_GETDETAIL : Read the details of a Purchase Order
BBP_PD_SC_UPDATE : Updates the details of a Purchase Order
BBP_PD_SC_SAVE : Finally called to save the details of a Purchase Order
This is just an illustrative example and can be enhanced to update any existing detail of a purchase order.
REPORT zkb_partner_chg.
* Declaration – Internal Tables
DATA: lt_e_item TYPE TABLE OF bbp_pds_po_item_d.
DATA: lt_e_partner TYPE TABLE OF bbp_pds_partner.
DATA: lt_e_messages TYPE TABLE OF bbp_pds_messages.
DATA: lt_i_item TYPE TABLE OF bbp_pds_po_item_icu.
DATA: lt_i_partner TYPE TABLE OF bbp_pds_partner.
* Declaration – Work Areas
DATA: ls_e_header TYPE bbp_pds_po_header_d.
DATA: ls_e_item TYPE bbp_pds_po_item_d.
DATA: ls_e_partner TYPE bbp_pds_partner.
DATA: ls_i_item TYPE bbp_pds_po_item_icu.
DATA: ls_i_header TYPE bbp_pds_po_header_u .
DATA: ls_but000 TYPE but000.
* Declaration – Variables
DATA: lv_e_changed TYPE xfeld.
* Declaration – Field Symbols
FIELD-SYMBOLS: <fs_partner> TYPE bbp_pds_partner.
* Read an existing PO
CALL FUNCTION ‘BBP_PD_PO_GETDETAIL’
EXPORTING
i_object_id = ’3200000576′
i_with_itemdata = ‘X’
IMPORTING
e_header = ls_e_header
TABLES
e_item = lt_e_item
e_partner = lt_e_partner
e_messages = lt_e_messages.
* Populate Header Data
MOVE-CORRESPONDING ls_e_header TO ls_i_header.
* Populate Item data
LOOP AT lt_e_item INTO ls_e_item .
MOVE-CORRESPONDING ls_e_item TO ls_i_item.
APPEND ls_i_item TO lt_i_item.
ENDLOOP.
* Populate all the existing partner data first
LOOP AT lt_e_partner INTO ls_e_partner.
APPEND ls_e_partner TO lt_i_partner.
ENDLOOP.
** Delete Partner (vendor)
READ TABLE lt_i_partner ASSIGNING <fs_partner>
WITH KEY partner_fct = ’00000019′
p_guid = ls_i_header-guid.
IF sy-subrc EQ 0.
<fs_partner>-del_ind = ‘X’.
ENDIF.
UNASSIGN <fs_partner>.
** Add Partner (vendor)
SELECT SINGLE * FROM but000 INTO ls_but000 WHERE partner = ’0087000004′.
CLEAR ls_e_partner.
ls_e_partner-partner_guid = 1.
ls_e_partner-partner_no = ls_but000-partner_guid.
ls_e_partner-partner_fct = ’00000019′.
ls_e_partner-p_guid = ls_i_header-guid.
APPEND ls_e_partner TO lt_i_partner.
* Update Doc
CALL FUNCTION ‘BBP_PD_PO_UPDATE’
EXPORTING
i_header = ls_i_header
i_save = ‘X’
iv_with_change_approval = ‘ ‘
IMPORTING
e_changed = lv_e_changed
TABLES
i_item = lt_i_item
i_partner = lt_i_partner
e_messages = lt_e_messages.
* Save Doc
IF NOT lv_e_changed IS INITIAL.
CALL FUNCTION ‘BBP_PD_PO_SAVE’
EXPORTING
iv_header_guid = ls_i_header-guid.
COMMIT WORK AND WAIT.
ENDIF.
Report to display user attributes by Kathirvel Balakrishnan
The below program takes the User Id and the list of attributes as input and displays the value of the attributes maintained in the Organization structure.
The program uses the standard function module BBP_READ_ATTRIBUTES to read and display the attributes.
*&———————————————————————*
*& Report ZKB_READ_ATTRIBUTES
*&———————————————————————*
REPORT zkb_read_attributes.
*&———————————————————————*
* Data Declaration
*&———————————————————————*
TYPES: BEGIN OF lty_user_attr,
attr_id TYPE om_attrib,
value_logsys TYPE log_system,
value TYPE char30,
END OF lty_user_attr.
DATA: lo_salv_table TYPE REF TO cl_salv_table.
DATA: lt_user_attr TYPE TABLE OF lty_user_attr.
DATA: lt_attr_list TYPE bbpt_attr_list.
DATA: lt_attr_data TYPE bbpt_attr.
DATA: lt_vlist TYPE bbpt_attr_values.
DATA: ls_attr_list TYPE bbp_attr_list.
DATA: ls_attr_data TYPE bbps_attr.
DATA: ls_user_attr TYPE lty_user_attr.
DATA: ls_vlist TYPE bbps_attr_values.
DATA: ls_t77omattr TYPE t77omattr.
*&———————————————————————*
* Selection Screen
*&———————————————————————*
PARAMETERS : p_user TYPE sy-uname DEFAULT sy-uname OBLIGATORY.
SELECT-OPTIONS: s_attr FOR ls_t77omattr-attrib OBLIGATORY NO INTERVALS.
*&———————————————————————*
* START-OF-SELECTION.
*&———————————————————————*
START-OF-SELECTION.
LOOP AT s_attr.
CLEAR ls_attr_list.
ls_attr_list-attr_id = s_attr-low.
APPEND ls_attr_list TO lt_attr_list.
ENDLOOP.
* Read Attributes
CALL FUNCTION ‘BBP_READ_ATTRIBUTES’
EXPORTING
iv_user = p_user
it_attr_list = lt_attr_list
IMPORTING
et_attr = lt_attr_data
EXCEPTIONS
object_id_not_found = 1
no_attributes_requested = 2
attributes_read_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
* Populate the Output List
LOOP AT lt_attr_data INTO ls_attr_data.
ls_user_attr-attr_id = ls_attr_data-attr_id.
CLEAR : lt_vlist.
lt_vlist = ls_attr_data-vlist.
LOOP AT lt_vlist INTO ls_vlist.
ls_user_attr-value_logsys = ls_vlist-value_logsys.
ls_user_attr-value = ls_vlist-value.
APPEND ls_user_attr TO lt_user_attr.
ENDLOOP.
ENDLOOP.
* Display Data in Alv Grid
CALL METHOD cl_salv_table=>factory
IMPORTING
r_salv_table = lo_salv_table
CHANGING
t_table = lt_user_attr.
CALL METHOD lo_salv_table->display.
Updating Extended Attributes (Storage Location) By Kathirvel Balakrishnan
The below program takes the User Id and the list of storage location attribute values and updates them.
The program uses the standard function module BBP_UPDATE_ATTRIBUTES to update the storage location values for the user.
Note: To update multiple values, all the values needs to be passed.
*&———————————————————————*
*& Report ZKB_UPDATE_STORAGE_LOC
*&———————————————————————*
* This program is used to update the values in Extended Attributes,
* in this example the attribute Storage Location is updated (LAG)
*&———————————————————————*
REPORT zkb_update_storage_loc.
* Declaration for Internal Tables
DATA: lt_bbp_attributes TYPE TABLE OF bbp_attributes.
* Declaration for Structures
DATA: ls_bbp_attributes TYPE bbp_attributes.
* Populate the Storage Location Value
CLEAR ls_bbp_attributes.
ls_bbp_attributes-attr_id = ‘LAG’. “Storage Location
ls_bbp_attributes-value_logsys = ‘<BACKEND SYS>’.
ls_bbp_attributes-value(20) = ‘<Storage Loc>’.
ls_bbp_attributes-value+20(10) = ‘<BACKEND SYS>’.
ls_bbp_attributes-value+30(4) = ‘<Company Code>’.
APPEND ls_bbp_attributes TO lt_bbp_attributes.
* Function Call to Update Values
CALL FUNCTION ‘BBP_UPDATE_ATTRIBUTES’
EXPORTING
user_id_p = ‘USER ID’
scenario_p = ‘BBP’
start_date_p = sy-datum
end_date_p = ’99991231′
TABLES
it_attr_p = lt_bbp_attributes
EXCEPTIONS
object_id_missed = 1
no_active_plvar = 2
object_not_found = 3
no_attributes = 4
times_invalid = 5
inconsistent_values = 6
update_error = 7
ambiguous_position = 8
OTHERS = 9.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
* Save to DB
COMMIT WORK AND WAIT.
ENDIF.
Tags: sap, SAP SRM, SAP SRM Sample Codes