Development of new functionality
We have a requirement where we need to create a new functionality called 'Purchase Proposal' . This will be created with reference to either a shopping cart, a Bid or Live auction and will be referred while creating a PO in SRM.
I am using the following approach for this.
1) Create a transaction in GUI . This will involve creation of Z tables, writing an ABAP code for the logic, creating a number range object etc.
2) After testing this transaction successfully in GUI, Create a web service & publish it on ITS by which this transaction can be accessed through webgui.
3) Create a business object for workflow
4) Create a workflow template for the business object.
5) Modify the standard functionality of PO processing so that Purchase Proposal can be entered while creating a PO and the data from it will flow into the PO
Is this approach correct or anything is missing?
Hi,
This approach is correct.
Please pay attention on point 5 because you will be modify the standard functionality.
Regards,
Marcin Gajewski
Similar Messages
-
Req: New functionality for Skype
Will there be further development of new functionality for Android tablets, such as
1. Optional recording of video conversations to clouds storage
2. Administrating Group conversations for more than 5 usersHello We are not currently able to support Skype Number in Ukraine, but we continue to look into how we can increase the list of supported countries. We don't yet have any specific timelines on those. We'll keep our website updated as to any changes in that regard. Thanks for your question
-
How can i add a new function to the Basic IVI class vi's?
I need to use the IVI vi's to control some instruments, let's say a DC Power Supply.
Since there's a DC Power supplyclass, i can used those VI's but waht if one of the VI's does not contains all the functions that i need?. How can i add more functions to the IVI classes?. What do i need to do to add a new function to the iviFGen class?If you would like to try developing your own instrument driver (or modify the existing one), we have documentation, model instrument drivers, and driver templates to help at :
http://www.ni.com/devzone/idnet/development.htm
We also have a syndicate of third party vendors that specialize in National Instruments' products and services. Some of the vendors specialize in driver development. I would suggest contacting one of the Alliance members at:
http://www.ni.com/alliance -
Best practice to develop the news web part to retrieve news data across the farms
Hi,
We have developed the News Web part. The functionality it pulls the news from other SharePoint Farms and display it in the site. Currently we are using secure store service to to connect to different FARM to retrieve the news from that FARM.
The issue with this approach is that every time user hits the page it will always hit the Secure Store service.There are almost 80K users who will be using this web part. Moreover this web part connects to multiple sites for multiple news from different
division.What should be the best practice to develop such kind of web part without consuming the server resources and keep hitting the server till we get the new news.News does not change very often.
Regards
RajanieshHi,
According to your description, my understanding is that you want to know which is the best way to handle the large complication of SharePoint cross farm retrieving data.
If you are developing the custom web part to retrieve data from other farm, I suggest you can firstly create a custom timer job to get data hourly in the backend and restore the data in a list. Then you can create a web part to link to the list to display
the data.
For cross farm accessing data, I suggest you can create a custom web service to achieve it.
Also, you can use ajax to display the web part data asynchronously. It will improve the performance and reduce the server pressure.
Here are some detailed articles for your reference:
Create and Deploy Custom Timer Job Definition in SharePoint Programatically
Creating a Custom ASP.NET Web Service
Create asynchronous web parts for Sharepoint
Thanks
Best Regards
Forum Support
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
[email protected]
Jerry Guo
TechNet Community Support -
What is meant by a PATCH.How can we develop a new tax patch.?
HI Experts,
Could u please explain me the meaning of a PATCH?
How to develop a New Tax Patch?
Please help me to understand the concept and how to test taxation after new patch development!
Thanks in advance.
Regards,
Sai.Hi
PATCH is nothing but a support package which is provided by SAP to add new functionality or correct some error in the already delivered package.
The latest patch level will be available in Service market place of SAP. It can be downloaded and applied in the serrver.
The patch for new taxation rules will also be available. You can see the info and the notes in the patch also.
Hope the info is use about PATCH
Thanks -
How can I change the default start-up date for a new functional location?
Is there a way to change the default date when creating a functional location? Whenever we create a new functional location, there is a date populated in the start-up date field. This date is our go-live date from last year and I cannot find the location in the IMG (if there is one) to stop the date from automatically populating with the date from the superior functional location. I tried setting the field from input to required but the date still populates automatically. Does anyone have any suggestions on how to leave the start-up date field blank when creating a new functional location?
That field is generally picked up from the immediate superior FL in the hierarchy through the inheritance functionality.You will have to overwrite this date.I dont think you can clear this field through Configuration functionality.
If you are in Ecc 6.0, you could get the help of developer to use implicit enhancement to initialize the field contents.
Regards
Narasimhan -
Develop and Edit functions in BC with Safari
Hello,
I am unable to use the Develop and Edit functions in BC with Safari, since the update of September 10.
Am I alone or is it general?Nous travaillons sous Mac 10.8.4 - Safari 6.05
Message erreur en pièce jointe
le même message apparait sous FIREFOX 23.0.1
Cordialement,
PHOTEXT
Jean-Louis VERONIQUE
www.photext.fr
Email : [email protected]
02 97 40 53 03
Le 12 sept. 2013 à 16:01, Mike Connolly <[email protected]> a écrit :
Re: Develop and Edit functions in BC with Safari
created by Mike Connolly in Business Catalyst - View the full discussion
It appears to be working in my Safari 5.1.7 on Windows 7 64-bit.
What computer are you using and which version of Safari?
Also, what's the text of the "JavaScript" error?
Please note that the Adobe Forums do not accept email attachments. If you want to embed a screen image in your message please visit the thread in the forum to embed the image at http://forums.adobe.com/message/5675689#5675689
Replies to this message go to everyone subscribed to this thread, not directly to the person who posted the message. To post a reply, either reply to this email or visit the message page: http://forums.adobe.com/message/5675689#5675689
To unsubscribe from this thread, please visit the message page at http://forums.adobe.com/message/5675689#5675689. In the Actions box on the right, click the Stop Email Notifications link.
Start a new discussion in Business Catalyst by email or at Adobe Community
For more information about maintaining your forum email notifications please go to http://forums.adobe.com/message/2936746#2936746. -
New development - need new roads added and 33 lot address locations corrected
Hello, I am in the new homes and residential development business. I just developed a new residential development and I need to get Bing to update their roads and addresses. The addresses and roads have been in existence since about August 2014. I would have
expected them to be updated by now but the roads are missing and the address locations are incorrect.
I have figured out how to get in touch with and submit bulk data to Google (Map Content Partners), but I cannot find an access point to Bing. I have gone the route of reporting mapping errors via Bing Maps, but I
was wondering if their is a way to give Bing bulk mapping data to update new addresses and roads. I have shape files that include parcel boundaries, road centerlines, address blocks, and address points. I have also included the lot address and correct location
coordinates below.
Any help appreciated.
12306 186TH ST E Puyallup, WA 98374 (-122.26914, 47.08904)
12310 186TH ST E Puyallup, WA 98374 (-122.26883, 47.08905)
12314 186TH ST E Puyallup, WA 98374 (-122.26853, 47.08906)
12302 186TH ST E Puyallup, WA 98374 (-122.26948, 47.08903)
12318 186TH ST E Puyallup, WA 98374 (-122.26819, 47.08906)
12228 186TH ST E Puyallup, WA 98374 (-122.26979, 47.0891)
18509 124TH AV E Puyallup, WA 98374 (-122.26786, 47.08912)
18413 124TH AV E Puyallup, WA 98374 (-122.26744, 47.08947)
18510 124TH AV E Puyallup, WA 98374 (-122.26832, 47.08954)
18517 123RD AV E Puyallup, WA 98374 (-122.26887, 47.08956)
18520 123RD AV E Puyallup, WA 98374 (-122.26955, 47.08958)
18407 124TH AV E Puyallup, WA 98374 (-122.26725, 47.08963)
18502 124TH AV E Puyallup, WA 98374 (-122.26811, 47.08969)
18511 123RD AV E Puyallup, WA 98374 (-122.26869, 47.08974)
18401 124TH AV E Puyallup, WA 98374 (-122.26703, 47.08979)
18516 123RD AV E Puyallup, WA 98374 (-122.26941, 47.08978)
18412 124TH AV E Puyallup, WA 98374 (-122.26792, 47.08985)
18507 123RD AV E Puyallup, WA 98374 (-122.26847, 47.0899)
12317 184TH ST CT E Puyallup, WA 98374
(-122.26683, 47.08997)
18512 123RD AV E Puyallup, WA 98374 (-122.26924, 47.08995)
18406 124TH AV E Puyallup, WA 98374 (-122.26772, 47.09001)
18415 123RD AV E Puyallup, WA 98374 (-122.26827, 47.09005)
18508 123RD AV E Puyallup, WA 98374 (-122.26904, 47.09012)
12313 184TH ST CT E Puyallup, WA 98374
(-122.26707, 47.09019)
18405 123RD AV E Puyallup, WA 98374 (-122.26805, 47.09021)
18416 123RD AV E Puyallup, WA 98374 (-122.26884, 47.09027)
12309 184TH ST CT E Puyallup, WA 98374
(-122.26732, 47.09033)
18410 123RD AV E Puyallup, WA 98374 (-122.26864, 47.09042)
12305 184TH ST CT E Puyallup, WA 98374
(-122.26754, 47.09046)
18404 123RD AV E Puyallup, WA 98374 (-122.26842, 47.09059)
12301 184TH ST CT E Puyallup, WA 98374
(-122.26776, 47.09061)
12227 184TH ST CT E Puyallup, WA 98374
(-122.26811, 47.09079)
18503 124TH AV E Puyallup, WA 98374 (-122.26763, 47.0893)It doesn't look like our data provider has this data yet. Note that in order for new addresses and roads to be added our data provider usually needs to drive to correctly capture all required information. I'll pass this information on to them so they can
get this updated.
http://rbrundritt.wordpress.com -
How to create a new function module?
I was doing the tutorial to create a SAP data widget and the tutorial was using BAPI_FLIGHT_GETLIST to display the data. However, in my system, theres no data in the table SFLIGHT2 and i couldnt populate any data in it.
So i am trying to create my own function module. Can anyone tell me how should i go about doing it?Hi Low Soon ,
please check the below links for creating a new function module.
SAP Help :
http://help.sap.com/saphelp_nw04/helpdata/en/9f/db98fc35c111d1829f0000e829fbfe/frameset.htm
Step by Sterp approach to create a Functional Module:
http://www.****************/Tutorials/ABAP/FunctionModule/page1.htm
Thanks
Jaideep Srinivasan -
How to do ALV Popup in a new Function module
Hi experts,
This is the Client Requirement.
" Flow Diagram/Pseudo Code:
Attach a data flow diagram. Write brief pseudo code in plain English. Be sure to include all access data plans.
- FM interface:
- Import: company code/ vendor#.
- Export: default_line, type y4ap_t11
- Exception: NO_DATA or CANCELED
In the FM code, past current z_venddefault code, except for write statements. After internal table is generated, show it in ALV popup. On ALV, add a OK/Cancel button. On OK, ensure that one line is selected (otherwise throw warning), and then fill export structure with that lines G/L account, cost Center, and internal order# fields. Then close the ALV and end FM. For Cancel, just close the ALV end the FM.
For an example of how to build such popup ALVs, take a look at FM Y4AP_SELECT_APPROVER.
Unit Test Plan:
Just use co.code 3000/vend# 1000 to test this FM."
here i need to do is there is a simple report program by displaying in list.
But now i need to do is , i have to put that code in a new function module and there i need to display it in alv grid.
How to do this can anybody help me.
It's a urgent i need to submit today to client.
Thank you
BasuHi,
Check this.
select several rows in alv
It will be helpful.
Regards,
J.Jayanthi -
ok, so I transferred my 3S info to my 4S by restoring from an old phone backup. But SIRI is gone and god knows what else?? Can I get my old stuff into the new phone and keep the 4S new functionality?
I suspect unless he had some items in iCloud backup then they are gone. Connecting an iPhone to a different library from that to which it was previously connected will result in the device asking if you want to erase it.
-
New functionality in ECC 6.0 with Enhancement Package 3
Hi Experts,
Can any one tell me what new functionality is added in Enhancement package 3 (ECC 6.0)?
Thanks & Regards,
SimarHi,
There no new functionality in ECC 6.0 for auto clearing of bank clearing account. Still you need to depend on Manual / Electronic bank statement to clear them.
Thanks
Prasada -
New functionality in ECC 6.0 and problems during sap implementation
Dear Gurus,
may i know the details of the New functionality in ECC 6.0 on (MM,SD,PP,QM,PS,HR,PM,FI/CO,BI,XI,DMS ) or what is the problems coming at the time of implementation of ECC 6.0.
THANKS AND REGARDS
RSRitesh,
Question is bit confusing
may i know the details of the New functionality in ECC 6.0 on (MM,SD,PP,QM,PS,HR,PM,FI/CO,BI,XI,DMS )
That means you are going to upgarde from some earlier version .what is that version ?
Then you might find some specific information at
https://websmp102.sap-ag.de/uda -
>Upgrade Dependency Analyzer
what is the problems coming at the time of *implementation* of ECC 6.0.
If its a new implemenation you will not face problem , but you need to configure everything accordingly.
Problem depends upon what all you are using from standard and customizing.
Above provided link will help you.
Just add up
http://wiki.sdn.sap.com/wiki/display/ERPLO/NewfunctionalityinECC6.0%28+MM%29
Regards, -
Cannot see any actions while creating a new function in CC5.2
Hi All,
We recently installed GRC Access Control 5.2.At the backend we are using SAP R/3 4.7.The system has been installed and I am currently trying to configure it.I am trying to create a new function.After chosing a function ID and description when I try to insert an action,it comes up blank for my production server and even if I choose the option "All".
Any assistance in the matter would be greatly appreciated.Helo Neo,
For making the functions, risks etc, you need to have some standard procedures being followed and up in place. Uploading transactions,, authorization objects and text are one of these.
Thus before you start actually using/implementing the GRC the system, I would like to advice you to go through the documentation for the same, which suggests the step by step procedure for accomplishing the same.
The problem that you have encountered is a bit easy to track as it suggests the Auth objects and texts might not probably be uploaded. But there might be something you have missed while going the procedural way, which may cause a lot of problems while troubleshooting.
Kindly upload the files in the config tab, under "Upload Objects" and let us know if there is still an issue.
Regards,
Hersh. -
Calling New Function Module from JAVA ISA b2b
I need to call a new function module which accepts some parameters as input and
returns some result parameters back as output.
These returned value needs to be displayed on the JSP pages of ISA B2B applications.
Can someone please guide me and provide code snippet on how to do this?
Thanks in advance.
Points will be awarded for all relevant and helpful answers.Stride,
I did this on CRM ISA 4.0... I used the dev and extension guide as a basis - I think the ISA 5.0 guide has the examples and tutorials in a separate document that can also be downloaded from service.sap.com.
Heres some info on how to do it although I can't guarantee this is the full solution or that it will work the same for ISA 5.0, and I will probably forget a lot of stuff as its been a few years since I did it! I also cant guarantee it is the correct way to do it but it worked! Basically, we built a link into the order overview page to display urls to order tracking websites using an RFC on the backend CRM system. Hope it helps anyway.
1. Create RFC enabled function module in backend.
2. Edit file backendobject-config.xml in folder project_root\b2b_z\WEB-INF\xcm\customer\modification:-
[code] <backendobject
xmlns:isa="com.sapmarkets.isa.core.config"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xml="http://www.w3.org/XML/1998/namespace">
<configs>
<!-- customer changes in backendobject-config should be done here by extending/overwriting the base configuration-->
<xi:include
href="$
Template for backend object in customer projects
Concrete implementation of a backend object
This implemenation demonstrates how a backend object
is used to communicate with the CRM system
@see com.ao.isa.backend.boi.Z_AOFuncBackend#getOrderDeliveryTrackingData(java.lang.String)
Interface used to communicate with a backend object
The purpose of this interface is to hide backend implementation details
from the business objects
Returns a vector of Z_OrderDeliverTracking objects containing data to link
to external delivery tracking websites
@param orderNo The sales order document number
@return A vector of order tracking objects
@return
@return
@return
@return
@return
@param string
@param string
@param string
@param string
@param string
/modification/backendobject-config.xml#xpointer(backendobject/configs/*)"/>
<!-- This is an example customer extension. A new Backend Object is registered in the framework using XCM extension mechanism. -->
<!-- If you write customer extensions you should register your backend objects in the same way. -->
<!-- Please make sure that you use the correct base configuration (e.g. crmdefault for CRM or r3default, r3pidefault for R/3) -->
<config
isa:extends="../config[@id='crmdefault']">
<businessObject
type="Z_AO_Custom"
name="Z_AO_Custom"
className="com.ao.isa.backend.crm.Z_AOFuncCRM"
connectionFactoryName="JCO"
defaultConnectionName="ISAStateless"/>
</config>
</configs>
</backendobject>
[/code]
File com.ao.isa.backend.crm.Z_AOFuncCRM.java looks like this :-
[code] package com.ao.isa.backend.crm;
//jco imports
import java.util.Vector;
import com.ao.isa.backend.boi.Z_AOFuncBackend;
import com.ao.isa.businessobject.order.Z_OrderDeliveryTrackingItem;
import com.sap.mw.jco.JCO;
import com.sap.mw.jco.JCO.ParameterList;
import com.sapmarkets.isa.core.eai.BackendException;
import com.sapmarkets.isa.core.eai.sp.jco.BackendBusinessObjectBaseSAP;
import com.sapmarkets.isa.core.logging.IsaLocation;
public class Z_AOFuncCRM
extends BackendBusinessObjectBaseSAP
implements Z_AOFuncBackend
// initialize logging
private static IsaLocation log =
IsaLocation.getInstance(Z_AOFuncCRM.class.getName());
/* (non-Javadoc)
public Vector getOrderDeliveryTrackingData(String orderNo)
Vector urlData = new Vector();
try
// get Java representation of function module
JCO.Function func =
getDefaultJCoConnection().getJCoFunction(
"Z_BAPI_CRM_ORDER_TRACKING_URLS");
// provide export parameters
ParameterList params = func.getImportParameterList();
params.setValue(orderNo, "ORDER_NO");
func.setExportParameterList(params);
// execute function
getDefaultJCoConnection().execute(func);
// get result table
JCO.Table table =
func.getTableParameterList().getTable("TRACKING_DATA");
int numRows = table.getNumRows();
for (int i = 0; i < numRows; i++)
// get row
table.setRow(i);
// create a new Z_orderdeliverytracking object
Z_OrderDeliveryTrackingItem trackItem =
new Z_OrderDeliveryTrackingItem(
table.getString(0),
table.getString(1),
table.getString(2),
table.getString(3),
table.getString(4));
urlData.addElement(trackItem);
trackItem = new Z_OrderDeliveryTrackingItem();
return urlData;
catch (BackendException bex)
// The following key has to be added to WEB-INF/classes/ISAResources.properties
// in order to see the exception correctly
log.config("ao.b2b.order.error.getOrderTrackingURLs", bex);
return null;
[/code]
And file com.ao.isa.backend.boi.Z_AOFuncBackend.java looks like this:-
[code] package com.ao.isa.backend.boi;
//package java.ao.com.ao.isa.backend.boi;
import java.util.Vector;
import com.sapmarkets.isa.core.eai.sp.jco.JCoConnectionEventListener;
public interface Z_AOFuncBackend
public Vector getOrderDeliveryTrackingData(String orderNo);
[/code]
Whilst file com.ao.isa.businessobject.order.Z_OrderDeliveryTrackingItem.java looks like this:-
[code]
package com.ao.isa.businessobject.order;
// Referenced classes of package com.sapmarkets.isa.businessobject.order:
// PaymentType
public class Z_OrderDeliveryTrackingItem // extends SalesDocument implements OrderData
private String deliveryDocNo;
private String goodsIssuedDate;
private String consignmentNo;
private String status;
private String url;
public Z_OrderDeliveryTrackingItem()
public Z_OrderDeliveryTrackingItem(
String delDocNo,
String GIDate,
String consNo,
String status,
String url)
this.setDeliveryDocNo(delDocNo);
this.setGoodsIssuedDate(GIDate);
this.setConsignmentNo(consNo);
this.setStatus(status);
this.setUrl(url);
public String getConsignmentNo()
return consignmentNo;
public String getDeliveryDocNo()
return deliveryDocNo;
public String getGoodsIssuedDate()
return goodsIssuedDate;
public String getStatus()
return status;
public String getUrl()
return url;
public void setConsignmentNo(String string)
consignmentNo = string;
public void setDeliveryDocNo(String string)
deliveryDocNo = string;
public void setGoodsIssuedDate(String string)
goodsIssuedDate = string;
public void setStatus(String string)
status = string;
public void setUrl(String string)
url = string;
[/code]
3. Edit file bom-config.xml in folder project_root\b2b_z\WEB-INF\xcm\customer\modification :-
[code] <BusinessObjectManagers
xmlns:isa="com.sapmarkets.isa.core.config"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xml="http://www.w3.org/XML/1998/namespace">
<!-- customer changes in bom-config should be done here by extending/overwriting the base configuration-->
<xi:include
href="$/modification/bom-config.xml#xpointer(BusinessObjectManagers/*)"/>
<!-- This is an example Business Object Manager. It can act as template for customer written Business Object Managers -->
<BusinessObjectManager
name="Z_AO-BOM"
className="com.ao.isa.businessobject.Z_AOBusinessObjectManager"
/>
</BusinessObjectManagers>
[/code]
File com.ao.isa.businessobject.Z_AOBusinessObjectManager.java looks like this:-
[code] package com.ao.isa.businessobject;
// Internet Sales imports
import com.sapmarkets.isa.core.businessobject.management.BOManager;
import com.sapmarkets.isa.core.businessobject.management.DefaultBusinessObjectManager;
import com.sapmarkets.isa.core.businessobject.BackendAware;
Template for a custom BusinessObjectManager in customer projects
public class Z_AOBusinessObjectManager
extends DefaultBusinessObjectManager
implements BOManager, BackendAware {
// key used for the backend object in customer version of backendobject-config.xml
public static final String CUSTOM_BOM = "Z_AO-BOM";
// reference to backend object
private Z_AOFunc mCustomBasket;
constructor
public Z_AOBusinessObjectManager() {
Method is called by the framework before the session is invalidated.
The implemenation of this method should free any allocated resources
public void release() {
Returns custom business object
public Z_AOFunc getCustomBasket() {
if (mCustomBasket == null) {
mCustomBasket = new Z_AOFunc();
assignBackendObjectManager(mCustomBasket);
return mCustomBasket;
[/code]
And uses file com.ao.isa.businessobject.Z_AOFunc.java which looks like this:-
[code]
package com.ao.isa.businessobject;
// Internet Sales imports
import com.sapmarkets.isa.core.businessobject.BOBase;
import com.sapmarkets.isa.core.businessobject.BackendAware;
import com.sapmarkets.isa.core.eai.BackendObjectManager;
import com.sapmarkets.isa.core.eai.BackendException;
import com.sapmarkets.isa.core.logging.IsaLocation;
// custom imports
import com.ao.isa.backend.boi.Z_AOFuncBackend;
import java.util.Vector;
Template for business object in customer projects
public class Z_AOFunc extends BOBase implements BackendAware
// initialize logging
private static IsaLocation log =
IsaLocation.getInstance(Z_AOFunc.class.getName());
private BackendObjectManager bem;
private Z_AOFuncBackend backendAOBasket;
Returns a reference to the backend object. The backend object
is instantiated by the framework.
@return a reference to the backend object
private Z_AOFuncBackend getCustomBasketBackend()
if (backendAOBasket == null)
//create new backend object
try
backendAOBasket =
(Z_AOFuncBackend) bem.createBackendBusinessObject(
"Z_AO_Custom");
// the backend object is registered in customer version
// of backendobject-config.xml using the 'Z_AO_Custom' type
catch (BackendException bex)
// The following key has to be added to WEB-INF/classes/ISAResources.properties
// in order to see the exception correctly
log.config("ao.b2b.order.error.getOrderTrackingURLs", bex);
return backendAOBasket;
This method is needed when a business object has a corresponding
backend object.
public void setBackendObjectManager(BackendObjectManager bem)
this.bem = bem;
Returns a vector of url links for tracking
@return vector of urls
public Vector getOrderDeliveryTrackingData(String orderNo)
// the call is delegated to the CRM aware backend object
return getCustomBasketBackend().getOrderDeliveryTrackingData(orderNo);
[/code]
4. Edit file config.xml in folder project_root\b2b_z\WEB-INF to add custom actions (the section below is just the custom stuff added at the end of the file the Z_orderTracking is the relevant one) :-
[code] <!-- Begin of custom AO action definitions -->
<action path="/b2b/Z_orderTracking" type="com.ao.isa.order.actions.Z_OrderTrackingAction">
<forward name="success" path="/b2b/order/Z_orderTracking.jsp"/>
</action>
<action path="/catalog/Z_displaySVGPage" type="com.ao.isa.catalog.actions.Z_SVGPageAction">
<forward name="success" path="/catalog/Z_SVG_fs.jsp"/>
</action> [/code]
Which points at Java file com.ao.isa.order.actions.Z_OrderTrackingAction.java which looks like this :-
[code] package com.ao.isa.order.actions;
// internet sales imports
import com.sapmarkets.isa.core.BaseAction;
import com.sapmarkets.isa.core.UserSessionData;
// struts imports
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
// servlet imports
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
// Internet Sales imports
import com.ao.isa.businessobject.Z_AOBusinessObjectManager;
import java.util.Vector;
This action acts as a template for customer extensions
public class Z_OrderTrackingAction extends BaseAction
This method is called by the ISA Framework when the
action is executed
public ActionForward doPerform(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws ServletException
// get user session data object
UserSessionData userSessionData =
UserSessionData.getUserSessionData(request.getSession());
// gettting custom BOM
Z_AOBusinessObjectManager myBOM =
(Z_AOBusinessObjectManager) userSessionData.getBOM(
Z_AOBusinessObjectManager.CUSTOM_BOM);
// get the order number being processed
String orderDocNumber = request.getParameter("orderNo");
// pass the order number back to the page
request.setAttribute("orderNo", orderDocNumber);
if (orderDocNumber != null)
// Get a vector of delivery tracking objects from lower layers (Business Object layer =>
// Business Logic Service Layer)
Vector trackingTable =
myBOM.getCustomBasket().getOrderDeliveryTrackingData(
orderDocNumber);
String error = "";
if (trackingTable != null)
if (trackingTable.size() == 0)
error = "true";
else
error = "false";
else
error = "true";
request.setAttribute("errorMessage", error);
request.setAttribute("trackingTable", trackingTable);
return mapping.findForward("success");
[/code]
5. I added the call to the function module for page orderstatusdetail.jsp in folder project_root\b2b_z\b2b\order to display a custom page Z_orderTracking.jsp in the same folder. To do this I added a link into the HTML to call a JavaScript function that passed the current order number to the /b2b/Z_orderTracking.do actionhandler mapped in the config.xml file.
So, in summary! Create an RFC; define business managers for it in the XML files; create a new Strut action and supporting Java class; create all the Java class for the managers.
I hope this makes some sense!
Gareth.
Maybe you are looking for
-
Why can I not download itunes to my new Windows 7 laptop?
I have just purchased a new Samsung laptop but when i go to download ITunes from apple website the download doesnt do anything, is there anything i need to turn off or on??
-
STO PO with delivery and Billing
The STO PO is creeated with Item Cat 'Q' and WBS element with Batch. Delivery is created. Transferr order confirmed. During PGi- the systeme is throwing error -Check table XMCHB: entry Material XX Plant XX Stor. Loc. XX Batch no. XX does not exis
-
Exit Code: 15 - Media DB Sync failed
Trying to download and install Lightroom 6 and it just sits there at 0% for a long time and then will error out. I have signed out of Creative Cloud, rebooted the computer. Resigned back into Creative Cloud and it still will not even start the downlo
-
1. Referring to the CCMS (Client Centre Management System) and reviewing tcodes SCC4 and SE06 for client setting objects. As we know, the tcode SCC4 helps us to review the client setting on whether the objects are modifiable or not, controls on the
-
Referencing package table type from Java
Hi, In my package spec, I have a table type defined. I just want to refer this from Java program in order to pass ARRAY object to a procedure inside the package. But I keep getting an errory saying "Invalid name pattern". But If I declare the type ou