on 12-09-2010 1:37 PM
I need to identify the fastest and most efficient way to get order header and details from SAP to an MES system or MII? We are currently relying on our customer to do this and the queries take six minutes to pull this information for a specific user. We need the most efficient way to pull this information and this would be used here and any place that would need this in the future. Any help would be greatly appreciated.
Hi Gergory,
using what ever kind of approach - this will never take 6 minutes. As far as I know every Transaction has a timeout of approxamatly 3 minutes in Test mode - so the only change you have to test it is to schedule the TRX. However it would be useful to learn more about what you like to achive: What is daterange of your orders. Which MES etc. I'd would rather look for a appoarch sending data from ERP eventbased to the MES then polling from MII. That means you need to customize your SAP ERP calling a MII Transaction (e.g. as a webservice). You will find more information about this browsing the SDN / MII Wiki. But please give use more information.
Ciao Martin
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Gregory,
We have used SOA and JCO for these interfaces with excellent results.
SOA is a bit slower, but I think more thorough and better documented.
You can view the documentation in http://esworkplace.sap.com
The services will use for these interfaces are:
- ECC_ProductionOrderSEQR to read the header of an order list using a filters combinations.
ECC_ProductionOrderBYIDQR to view details of a particular order.
With JCO you can use the BAPIs below:
BAPI_PRODORD_GET_LIST to read the header of an order list using a filter combinations
BAPI_PRODORD_GET-DETAIL to view details of a particular order.
I have helped with this message.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I would recommend JCO to pull information from ERP and then either display it in MII or push it to a MES system. You are going to have to use the appropiate BAPI and pass in your selection criteria.
How are you currently doing this that it takes so long to pull in the information?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Using Bapi's is still my recommended approach, if this is causing your problem you can look into creating a custom Bapi which does exactly what you want and returns that dataset to MII. There are other options such as web services and SOA but this is slower than using Bapi's via JCO. Are you using JCO or JRA?
The only other way would be to buffer the content on the MII side and run your query against that.
If you have the option you can push the data down using IDOCs as well, but is more limited and what data can be accessed. Then you can buffer this way.
I would suspect you get the list of orders and then pull down the details in a subsequent BAPI call. So is one issue the fact you need to execute two separate BAPI calls to get all your data?
You may be better off using RFC_READ_TABLE and hit the order table (or a view) with one pass.
However, I think Erik's suggestion regarding IDOCs is even better. Set up IDocs based upon change pointers and set up automatic processing in MII using an IDoc Listener. Thus all the orders come down when released, or updated, or some other change event and are all handled automatically in MII. Once received, they can be queued up in MII or just as automatically routed to the MES system.
Regards,
Mike
User | Count |
---|---|
11 | |
6 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.