cancel
Showing results for 
Search instead for 
Did you mean: 

How to add custom text on ISA B2B Order

Former Member
0 Kudos

Hi,

On Order page of ISA B2B I have created a custom text field "Shipping Attention".When I try to add this text in the header like

header.addExtensionData("Z123","Value") in Z_BasketRefreshAction which extends MaintainBasketDispatcherAction, it is not reflecting in the "Shipping Attn"(created in the text tab in CRM) field in CRM system.

The flow:

/b2b/maintainbasket --> Z_BasketRefreshAction --> /b2b/basketrefresh --> MaintainBasketRefreshAction --> b2b/updatedocumentview

Please let me know if I missing something...

Thanks in Advance.

Regards,

Muthu

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

hi,

do you want the text to appear in the CRMD_ORDER transaction?

Only passing the data to the extension structure is not enough. You have to identify the function module which is called during the update or sending of the basket (I think it is CRM_ISA_BASKET_CHANGE_HEAD or something similar). You have to implement a BADI (search for that one, which is called by that above mentioned funtion module) and read the extension data and put at into the approprieate structure of the one order object. I think for this job you definitly need abap know how.

Regards

Michael

Former Member
0 Kudos

Hello,

You have covered the first two layers of the request - response cycle cake - the View (JSP) and the Control (Java) layers. The icing is done in the backend BAdI and using the right function module. I am assuming the CRM backend.

A typical request-response in the application goes like this. I will give example for the header extensions.

  1. Added the custom variable in the HTML layer (JSP page)

  2. Traversed through the Dispatcher, Parser and get the input value from the JSP page variable and added it to the Business Object (Header) using addExtensionData.

  3. The java application layer actually makes an "Update Header" call during the update cycle - like when you click that "Update" button.

  4. In the SAP E-Commerce design, during this "update" cycles, the application flows through specific BAdI call sequence. It calls what I call the Header BAdI CRM_ISA_BASKET_HEAD when the header information is updated. You have to extend this BAdI and implement at least two methods.

  5. It has two methods - which are called during this request - response cycle. First method CHANGEHEAD_SET_DATA is called during the request cycle - that is from ISA to CRM (when update is clicked). This is where your extension data has to be transferred from the Java layer to the backend layer (model). You will essentially read from the table IT_EXTENSION and call SAVE_TEXT function module. Since your requirement is to update text, this is the FM to be called. Many other cases use the FM mentioned by Mike. This is where the data from the web layer is persisted in the backend model.

  6. And the other method GETHEAD_GET_DATA is called during the response cycle. In this method, you will essentially read from the model - in your case READ_TEXT and set it back in the extension layer CT_EXTENSION

  7. The update header call from the Java layer will now receive the data back from the model and will automagically transfer the values from the backend (ABAP layer) back to the Java layer to be accessible by you in the JSP using getExtensionData call.

What you have to do are the steps .5 and 6 in order to complete the request-response cycle.

Easwar Ram

http://www.parxlns.com

Former Member
0 Kudos

Hi Ram,

Can you tell me wht BAPI is get called during order creation. we are using ECommerce 5.0 for R/3.

Regards,

Saravanan