cancel
Showing results for 
Search instead for 
Did you mean: 

Different behaviour between activity "Change Production" and web-service

Former Member
0 Kudos

Hello!

We are using SAP ME 5.2.6.1 (SP06 Patch 1) - the newest version of SAP ME 5.2

In activity "Change Production" (SU540) it is possible to change shop order, material and router of SFC's.

This also works for SFC's in status DONE if the following activity rule is set

ALLOW_DONE_SFCS = TRUE.

Nevertheless if the same is tried via "Production XML" or with the given web service an error is displayed

and the operation is not performed.

When using "Production XML" the following error is shown:

Cannot change Done SFCs (Message 15050)

When using the web service (http://<host>:<port>/manufacturing-services/ProductionServiceService)

the same error occurs. I think the web service is the prefered way in the future.

For me it seems that only with the GUI activity SU540 the rule "ALLOW_DONE_SFCS = TRUE" is effective.

But should the behaviour not be identical regardless if this was initiated from the GUI or from the web service?

So is this something like a bug or is it "behaviour by design"?

If the latter is the case:

Is there a workaround possible to achieve the same outcome via webservice?

Kr,

Erich Lind

Edited by: Erich Lind on Aug 5, 2011 10:37 AM

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Answer from the SAP product support:

I've got a confirmation that there is no plan to modify existing web

services to support activity rules or similar functionality. Insted it

is planned thet production APIs will be available in 6.X release that

will also be reachable through web services. PAPIs should allow usage

of more options that will enable using wider range of functions

provided by ME.

Former Member
0 Kudos

Hello!

From the SAP ME Transaction Log Report:

Concerning the "Production XML" interface - it uses the ChangeProduction EJB.

I assume the web service internally will do the same ...

class com.sap.me.frame.BasicBOBeanException message: com.sap.me.frame.BasicBOBeanException: Error 15050Cannot change Done SFCs (Message 15050)

at com.sap.me.production.ChangeProductionSOBean.validateSFCList(ChangeProductionSOBean.java:1413)

at com.sap.me.production.ChangeProductionSOBean.validateXMLProductionChanges(ChangeProductionSOBean.java:255)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:592)

at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:46)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)

at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)

at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:71)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)

at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:38)

at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:22)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)

at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)

at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:21)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)

at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:16)

at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)

at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:133)

at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)

at $Proxy3489.validateXMLProductionChanges(Unknown Source)

at com.sap.me.xchange.ProductionFacadeSOBean.processChangeProductionMessage(ProductionFacadeSOBean.java:997)

Former Member
0 Kudos

Hello!

One interesting fact:

The web service call works for an SFC which is not in status DONE.

And when I look into "SFC step details" the following can be seen:

Activity: SU540

Activity Description: Change Production

Activity Code: CHGITEM

Activity Date/Time: Aug 5, 2011 11:12:49 AM

...

Activity Code: CHGRTR

Activity Date/Time: Aug 5, 2011 11:12:49 AM

...

Activity Code: CHGSO

Activity Date/Time: Aug 5, 2011 11:12:49 AM

So internally it look looks like as if acitivity SU540 was used although this may not be the fact

and the right activity was SU570.

Kr,

Erich Lind

0 Kudos

Hi Erich,

As you know production XML is a legacy ME interface and it was not designed to handle all production activities as in GUI. Change Production is one of them as I cannot find specification for such production XML request even in an old ME documentation. So, I believe it won't be changed.

If the web service request indeed uses SU540, then I think it must be fixed to accept activity rules.

Regards,

Alex.

Former Member
0 Kudos

Hello!

For "Production XML" I used

<PRODUCTION_REQUEST> an XML like

<CHANGE_PRODUCTION>

<SITE>1100</SITE>

...

For the web service I used an XML like

...

<me:ChangeProductionRequest_sync>

<me:ChangeProductionRequest>

...

There is an activity SU570 - WIP change

This calls the EJB (Enterprise Java Bean) "ChangeConfiguration"

And as far as I know EJB's are used for the SAP ME business functionality.

As this activity has NO activity rule, there is strong evidence that this explains why SFC's in status DONE

can't be used in the web service request "ChangeProductionRequest".

If this is the case:

Are there plans from the SAP side to adjust the behaviour to allow SFC's in status DONE?

Or was this already done for SAP ME 6.0?

Kr,

Erich Lind

0 Kudos

Hello Erich,

As far as I know WIP_CHANGE XML request uses SU570 (WIP Change) activity, not SU540 (Change Production) that you mentioned. That's why it seems to be 'behaviour by design', not a bug. Perhaps the same is for web service request.

Regards,

Alex.