cancel
Showing results for 
Search instead for 
Did you mean: 

ModificationNotAllowedException during confirmations

Former Member
0 Kudos

Hello,

I have a problem with our MAM. I 've just started with SAP 2 months ago, so my apologies for my ignorance.

We are using a customized MAM in our company. They customized the MAM to adapt to our business needs and to let engineers work with it on their laptop (we changed the layout a bit). We have hundreds of users worldwide using the MAM. The current version of the SP is SP19P3. The basic version of the MAM is 2.5 I think (we have our own versioning system for our customized MAM, but I believe we are using MAM 2.5 as 'core' version).

What happens is the following:

We have 1 user with a bad-working MAM. When installing his MAM and after synchronizing, everything seems to be OK at first sight. But when trying to confirm something it goes wrong. The user can 't in fact confirm anything (no materials, no working-hours, ...). He gets the following error:

<i>e= ModificationNotAllowedException (id=258)

cause= ModificationNotAllowedException (id=258)

detailMessage= "The data is inconsistent please reset the client data to ensure consistency"</i>

When debugging for instance a material confirmation everything seems to go well, untill we come in the write method of class Mam006Impl. When executing the following code, the ModificationNotAllowedException occurs:

row.setFieldValue(getFieldDescriptor("MATERIAL"), material);

When I replace this code with:

row.modifyFieldValue(getFieldDescriptor("MATERIAL"), material);

It goes well, until I do:

row.getSyncBo().insertRow(row);

So I guess it has something to do when trying to write into the local DB?!...

I can 't debug deeper because I don 't have the source-code of the other files.

This is what I can see in the trace log file:

<i>[20071105 15:38:23:549] E [Unknown ] Mobile Asset Management Error begin:

[20071105 15:38:23:549] E [Unknown ] 100 : Runtime Error - order - com.ibm.acc.mam.order.control.MaterialsReporting - onSelect

[20071105 15:38:23:549] E [Unknown ] com.sap.mbs.core.api.BOException: Failed inserting Mam006: com.sap.mbs.core.api.BOException: Failed writing to Row: com.sap.ip.me.api.smartsync.ModificationNotAllowedException: The data is inconsistent please reset the client data to ensure consistency

com.sap.mbs.core.api.BOException: Failed inserting Mam006: com.sap.mbs.core.api.BOException: Failed writing to Row: com.sap.ip.me.api.smartsync.ModificationNotAllowedException: The data is inconsistent please reset the client data to ensure consistency

at com.sap.mbs.mam.bo.impl.Mam006ManagerImpl.insertMam006(Mam006ManagerImpl.java:227)

at com.ibm.acc.mam.order.control.MaterialsReporting.createMatConfirmation(MaterialsReporting.java:921)

at com.ibm.acc.mam.order.control.MaterialsReporting.onSave(MaterialsReporting.java:369)

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:324)

at com.sap.mbs.core.control.AbstractViewController.process(Unknown Source)

at com.sap.mbs.core.control.DefaultStateMachine.process(Unknown Source)

at com.sap.mbs.core.web.FrontServlet.doHandleEvent(Unknown Source)

at com.sap.mbs.mam.application.web.FrontServlet.doHandleEvent(FrontServlet.java:280)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGetNotThreadSafe(AbstractMEHttpServlet.java:347)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGet(AbstractMEHttpServlet.java:689)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.service(AbstractMEHttpServlet.java:313)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)

at org.apache.tomcat.core.Handler.service(Handler.java:287)

at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)

at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:806)

at org.apache.tomcat.core.ContextManager.service(ContextManager.java:752)

at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)

at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)

at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)

at java.lang.Thread.run(Thread.java:534)

com.sap.mbs.core.api.BOException: Failed writing to Row: com.sap.ip.me.api.smartsync.ModificationNotAllowedException: The data is inconsistent please reset the client data to ensure consistency

at com.sap.mbs.mam.bo.impl.Mam006Impl.write(Mam006Impl.java:1707)

at com.sap.mbs.mam.bo.impl.Mam006ManagerImpl.insertMam006(Mam006ManagerImpl.java:220)

at com.ibm.acc.mam.order.control.MaterialsReporting.createMatConfirmation(MaterialsReporting.java:921)

at com.ibm.acc.mam.order.control.MaterialsReporting.onSave(MaterialsReporting.java:369)

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:324)

at com.sap.mbs.core.control.AbstractViewController.process(Unknown Source)

at com.sap.mbs.core.control.DefaultStateMachine.process(Unknown Source)

at com.sap.mbs.core.web.FrontServlet.doHandleEvent(Unknown Source)

at com.sap.mbs.mam.application.web.FrontServlet.doHandleEvent(FrontServlet.java:280)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGetNotThreadSafe(AbstractMEHttpServlet.java:347)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGet(AbstractMEHttpServlet.java:689)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.service(AbstractMEHttpServlet.java:313)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)

at org.apache.tomcat.core.Handler.service(Handler.java:287)

at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)

at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:806)

at org.apache.tomcat.core.ContextManager.service(ContextManager.java:752)

at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)

at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)

at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)

at java.lang.Thread.run(Thread.java:534)

com.sap.ip.me.api.smartsync.ModificationNotAllowedException: The data is inconsistent please reset the client data to ensure consistency

at com.sap.ip.me.smartsync.data.AbstractRow.setFieldValue(AbstractRow.java:124)

at com.sap.mbs.mam.bo.impl.Mam006Impl.write(Mam006Impl.java:1492)

at com.sap.mbs.mam.bo.impl.Mam006ManagerImpl.insertMam006(Mam006ManagerImpl.java:220)

at com.ibm.acc.mam.order.control.MaterialsReporting.createMatConfirmation(MaterialsReporting.java:921)

at com.ibm.acc.mam.order.control.MaterialsReporting.onSave(MaterialsReporting.java:369)

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:324)

at com.sap.mbs.core.control.AbstractViewController.process(Unknown Source)

at com.sap.mbs.core.control.DefaultStateMachine.process(Unknown Source)

at com.sap.mbs.core.web.FrontServlet.doHandleEvent(Unknown Source)

at com.sap.mbs.mam.application.web.FrontServlet.doHandleEvent(FrontServlet.java:280)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGetNotThreadSafe(AbstractMEHttpServlet.java:347)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGet(AbstractMEHttpServlet.java:689)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)

at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.service(AbstractMEHttpServlet.java:313)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)

at org.apache.tomcat.core.Handler.service(Handler.java:287)

at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)

at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:806)

at org.apache.tomcat.core.ContextManager.service(ContextManager.java:752)

at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)

at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)

at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)

at java.lang.Thread.run(Thread.java:534)

[20071105 15:38:23:549] E [Unknown ] Mobile Asset Management Error end.</i>

I also did try a reset. When reseting the MAM and synchronising I first get an incomplete message, when synchronising again (and sometimes again...) it goes finally through the synchronising process. I asked some of the SAP guys here whether there are errors in SAP and we checked, but they can 't see anything abnormal at the SAP middelware side. However I noticed some errors in the MAM's trace log file:

<i>[20071031 15:53:17:603] E [MI/Smartsync ] Inbound processing of container with index 1423 failed: Illegal character /*/ at position 0 : <InboundProcessingError timestamp="2007-10-31-16-53-17"><RowProcessorDispatcherDump type="nonObservable" ><Action>a</Action><TopRowKey>0076733995</TopRowKey><ChildRowKey> </ChildRowKey><RequestId> </RequestId><StateID> </StateID></RowProcessorDispatcherDump></InboundProcessingError>

java.lang.IllegalArgumentException: Illegal character /'*/' at position 0

at com.sap.ip.me.persist.fileio.spi.AttributeTypeExt$AttributeTypeBigDecimal.verifyBigDecimal(AttributeTypeExt.java:177)

at com.sap.ip.me.persist.fileio.spi.AttributeTypeExt$AttributeTypeBigDecimal.toByte(AttributeTypeExt.java:208)

at com.sap.ip.me.persist.fileio.spi.AttributeDescriptorImpl.toByte(AttributeDescriptorImpl.java:299)

at com.sap.ip.me.persist.fileio.spi.PersistenceWriterImpl.set(PersistenceWriterImpl.java:179)

at com.sap.ip.me.smartsync.syncIn.processors.InternalRowProcessor.setNextFieldWithWriter(InternalRowProcessor.java:142)

at com.sap.ip.me.smartsync.syncIn.processors.RowProcessorManager$RowProcessorDispatcher.setNextField(RowProcessorManager.java:428)

at com.sap.ip.me.smartsync.syncIn.SaxSyncInProcessor$4.characters(SaxSyncInProcessor.java:753)

at com.sap.ip.me.xmlParser.MIXMLEventHandlerManager.characters(MIXMLEventHandlerManager.java:72)

at com.sap.ip.me.xmlParser.MIXMLParser.sendCharacters(MIXMLParser.java:376)

at com.sap.ip.me.xmlParser.MIXMLParser.parse(MIXMLParser.java:207)

at com.sap.ip.me.smartsync.syncIn.SaxSyncInProcessor.processSyncInMessage(SaxSyncInProcessor.java:89)

at com.sap.ip.me.smartsync.syncIn.SyncInRuntimeImpl.processSyncInMessage(SyncInRuntimeImpl.java:260)

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeImpl.process(SmartSyncRuntimeImpl.java:347)

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeManager.process(SmartSyncRuntimeManager.java:279)

at com.sap.ip.me.smartsync.core.SyncAdapter.process(SyncAdapter.java:56)

at com.sap.ip.me.sync.SyncManagerImpl.processSingleContainer(SyncManagerImpl.java:175)

at com.sap.ip.me.sync.SyncManagerMerger.processInboundContainers(SyncManagerMerger.java:169)

at com.sap.ip.me.sync.SyncManagerImpl.processSyncCycle(SyncManagerImpl.java:836)

at com.sap.ip.me.sync.SyncManagerImpl.syncForUser(SyncManagerImpl.java:1278)

at com.sap.ip.me.sync.SyncManagerImpl.doRepetitiveSynchronization(SyncManagerImpl.java:1116)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:470)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:319)

at com.sap.ip.me.api.sync.SyncManager.synchronizeWithBackend(SyncManager.java:79)

at com.sap.ip.me.apps.jsp.Home$SyncRunnable.run(Home.java:641)

at java.lang.Thread.run(Unknown Source)

[20071031 15:53:17:603] E [MI/Smartsync ] java.lang.RuntimeException: Inbound processing of container with index 1423 failed: Illegal character /'*/' at position 0 : <InboundProcessingError timestamp="2007-10-31-16-53-17"><RowProcessorDispatcherDump type="nonObservable" ><Action>a</Action><TopRowKey>0076733995</TopRowKey><ChildRowKey> </ChildRowKey><RequestId> </RequestId><StateID> </StateID></RowProcessorDispatcherDump></InboundProcessingError>

java.lang.RuntimeException: Inbound processing of container with index 1423 failed: Illegal character /'*/' at position 0 : <InboundProcessingError timestamp="2007-10-31-16-53-17"><RowProcessorDispatcherDump type="nonObservable" ><Action>a</Action><TopRowKey>0076733995</TopRowKey><ChildRowKey> </ChildRowKey><RequestId> </RequestId><StateID> </StateID></RowProcessorDispatcherDump></InboundProcessingError>

at com.sap.ip.me.smartsync.syncIn.SyncInRuntimeImpl.processSyncInMessage(SyncInRuntimeImpl.java:305)

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeImpl.process(SmartSyncRuntimeImpl.java:347)

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeManager.process(SmartSyncRuntimeManager.java:279)

at com.sap.ip.me.smartsync.core.SyncAdapter.process(SyncAdapter.java:56)

at com.sap.ip.me.sync.SyncManagerImpl.processSingleContainer(SyncManagerImpl.java:175)

at com.sap.ip.me.sync.SyncManagerMerger.processInboundContainers(SyncManagerMerger.java:169)

at com.sap.ip.me.sync.SyncManagerImpl.processSyncCycle(SyncManagerImpl.java:836)

at com.sap.ip.me.sync.SyncManagerImpl.syncForUser(SyncManagerImpl.java:1278)

at com.sap.ip.me.sync.SyncManagerImpl.doRepetitiveSynchronization(SyncManagerImpl.java:1116)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:470)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:319)

at com.sap.ip.me.api.sync.SyncManager.synchronizeWithBackend(SyncManager.java:79)

at com.sap.ip.me.apps.jsp.Home$SyncRunnable.run(Home.java:641)

at java.lang.Thread.run(Unknown Source)

[20071031 15:53:17:603] E [MI/Smartsync ] Error while Smart Sync inbound processing. Reset Smart Sync data on device to ensure consitency with middleware. Contact SAP Support and provide the following detailed information: Inbound processing of container with index 1423 failed: Illegal character /*/ at position 0 : <InboundProcessingError timestamp="2007-10-31-16-53-17"><RowProcessorDispatcherDump type="nonObservable" ><Action>a</Action><TopRowKey>0076733995</TopRowKey><ChildRowKey> </ChildRowKey><RequestId> </RequestId><StateID> </StateID></RowProcessorDispatcherDump></InboundProcessingError>

java.lang.RuntimeException: Inbound processing of container with index 1423 failed: Illegal character /'*/' at position 0 : <InboundProcessingError timestamp="2007-10-31-16-53-17"><RowProcessorDispatcherDump type="nonObservable" ><Action>a</Action><TopRowKey>0076733995</TopRowKey><ChildRowKey> </ChildRowKey><RequestId> </RequestId><StateID> </StateID></RowProcessorDispatcherDump></InboundProcessingError>

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeImpl.process(SmartSyncRuntimeImpl.java:354)

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeManager.process(SmartSyncRuntimeManager.java:279)

at com.sap.ip.me.smartsync.core.SyncAdapter.process(SyncAdapter.java:56)

at com.sap.ip.me.sync.SyncManagerImpl.processSingleContainer(SyncManagerImpl.java:175)

at com.sap.ip.me.sync.SyncManagerMerger.processInboundContainers(SyncManagerMerger.java:169)

at com.sap.ip.me.sync.SyncManagerImpl.processSyncCycle(SyncManagerImpl.java:836)

at com.sap.ip.me.sync.SyncManagerImpl.syncForUser(SyncManagerImpl.java:1278)

at com.sap.ip.me.sync.SyncManagerImpl.doRepetitiveSynchronization(SyncManagerImpl.java:1116)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:470)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:319)

at com.sap.ip.me.api.sync.SyncManager.synchronizeWithBackend(SyncManager.java:79)

at com.sap.ip.me.apps.jsp.Home$SyncRunnable.run(Home.java:641)

at java.lang.Thread.run(Unknown Source)

[20071031 15:53:17:603] E [AppLog/MI/Smartsync ] Error while Smart Sync inbound processing. Reset Smart Sync data on device to ensure consitency with middleware. Contact SAP Support and provide the following detailed information: Inbound processing of container with index 1423 failed: Illegal character /*/ at position 0 : <InboundProcessingError timestamp="2007-10-31-16-53-17"><RowProcessorDispatcherDump type="nonObservable" ><Action>a</Action><TopRowKey>0076733995</TopRowKey><ChildRowKey> </ChildRowKey><RequestId> </RequestId><StateID> </StateID></RowProcessorDispatcherDump></InboundProcessingError>

java.lang.RuntimeException: Inbound processing of container with index 1423 failed: Illegal character /'*/' at position 0 : <InboundProcessingError timestamp="2007-10-31-16-53-17"><RowProcessorDispatcherDump type="nonObservable" ><Action>a</Action><TopRowKey>0076733995</TopRowKey><ChildRowKey> </ChildRowKey><RequestId> </RequestId><StateID> </StateID></RowProcessorDispatcherDump></InboundProcessingError>

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeImpl.process(SmartSyncRuntimeImpl.java:354)

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeManager.process(SmartSyncRuntimeManager.java:279)

at com.sap.ip.me.smartsync.core.SyncAdapter.process(SyncAdapter.java:56)

at com.sap.ip.me.sync.SyncManagerImpl.processSingleContainer(SyncManagerImpl.java:175)

at com.sap.ip.me.sync.SyncManagerMerger.processInboundContainers(SyncManagerMerger.java:169)

at com.sap.ip.me.sync.SyncManagerImpl.processSyncCycle(SyncManagerImpl.java:836)

at com.sap.ip.me.sync.SyncManagerImpl.syncForUser(SyncManagerImpl.java:1278)

at com.sap.ip.me.sync.SyncManagerImpl.doRepetitiveSynchronization(SyncManagerImpl.java:1116)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:470)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:319)

at com.sap.ip.me.api.sync.SyncManager.synchronizeWithBackend(SyncManager.java:79)

at com.sap.ip.me.apps.jsp.Home$SyncRunnable.run(Home.java:641)

at java.lang.Thread.run(Unknown Source)

[20071031 15:53:17:603] E [AppLog/MI/Sync ] Exception while processing inbound container 4728E08B90ED01AA000000000A19038E

java.lang.RuntimeException: RESET

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeImpl.process(SmartSyncRuntimeImpl.java:387)

at com.sap.ip.me.smartsync.core.SmartSyncRuntimeManager.process(SmartSyncRuntimeManager.java:279)

at com.sap.ip.me.smartsync.core.SyncAdapter.process(SyncAdapter.java:56)

at com.sap.ip.me.sync.SyncManagerImpl.processSingleContainer(SyncManagerImpl.java:175)

at com.sap.ip.me.sync.SyncManagerMerger.processInboundContainers(SyncManagerMerger.java:169)

at com.sap.ip.me.sync.SyncManagerImpl.processSyncCycle(SyncManagerImpl.java:836)

at com.sap.ip.me.sync.SyncManagerImpl.syncForUser(SyncManagerImpl.java:1278)

at com.sap.ip.me.sync.SyncManagerImpl.doRepetitiveSynchronization(SyncManagerImpl.java:1116)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:470)

at com.sap.ip.me.sync.SyncManagerImpl.synchronizeWithBackend(SyncManagerImpl.java:319)

at com.sap.ip.me.api.sync.SyncManager.synchronizeWithBackend(SyncManager.java:79)

at com.sap.ip.me.apps.jsp.Home$SyncRunnable.run(Home.java:641)

at java.lang.Thread.run(Unknown Source)</i>

Can someone help me with this one? I don 't know what I can do more to trace the problem...

Thanks a lot!

Best regards,

Diederik

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Solution: have a look at the follow-ups.

Former Member
0 Kudos

Hello all,

Sorry for the late reaction, I had a day off yesterday.

Thanks for all your feedback, in fact it did help me to find the real problem.

What happened is the following:

There was a warranty-order where the backoffice did fill in an amount of more then 104 000 NOK (Norwegian Kronen). This amount however is too big to send to the MAM: SAP can only sent an 8 characters long number, where 3 positions are used for the decimal part. (At least this is what they 've told me.) So SAP has truncated this number to " 4000,00 " and has sended this 'number' to the MAM. MAM expected a numerical value, but because of the truncation it was not a number any longer. (This is why we 've got the error with the // message.) And because of this MAM stopped working correctly.

We 've discovered the real cause of the error by re-installing the MAM and before synchronizing (to get the order-data) putting the trace-level to 'debug', and after receiving the data, examining the trace-file for errors. So we could discover the order-number of the problematic order and have a look at it in SAP. There we 've found the faulty number in the confirmations. (We first thought that it was a wrong decimal seperator: . instead of , but after cheking this it seemed that the dot ( . ) is the thousands seperator.

The problem isn 't really solved, because this is the right amount, and we can 't give it in because it 's too much. We 've contacted SAP to solve this issue, so that MAM can handle larger numbers.

Meanwhile we have to do it with a workaround: split up the amount in smaller pieces (e.g. 100 000 = 50 000 + 50 000).

So thanks again for your help!

Best regards,

Diederik

former_member304703
Contributor
0 Kudos

Hi Diederik,

Unless you have changed material confirmation SyncBo, Mam*_006 (in both MAM 2.5 and 3.0 versions) is of type "Upload only" which means that it can never come from the back and can only be crated on the frontend.

That means that checking merep_mon will not help - the data is not persisted in the device database and will never be sent to the backend (and hence be tracable by the merep_mon).

Why it is not persisted: because you try to save data of the incorrect format. In SyncBo for every field there is a definition of type. From the method verifyBigDecimal() that throws exception it is clear that you try to put "*" in a field that expects digital vales only. From my memory in MConf the only numeric field is quantity.

Standard MAM has a validation before trying to persist data - and I can assure you that quantity is validatied for cotaining only digits.

Please check that your customer enhancments in this area are correct.

Hope this helps,

Larissa Limarova

Former Member
0 Kudos

Hi,

well, the second error is the root cause for all that. It is this error with /*/ character.

The question I have is: where does this come from....

If you have a look into the MEREP_MON for that device, please have a look into the outbound data and then you should be able to see what data is wrong.

It tries to send a * in a numeric field as I see that and so it throws an exception. Well, unfortunately this is not handeled by MAM and so the sync stops. Because of that the items can not be confiremd that the device received them correctly. At the end the items stay in status S and you are not allowed to change anything that is in status S at all!

Have a look: open MI in a browser. The URL is : http://localhost:444. After you have logged on, start MAM. You see the URL:

http://localhost:4444/...MAM..../start

Just type start.jsp instead of start

This will give you an overview about all data on the device. Everything should be in status G - then you can change this data. It is a simple description and not really complete, I know that, but to see the issue it is fine for you so far. On that device everything is in a different status - not in G I suppose.

So - we need to find out what dataset causes this issue. What is specific to that user - datawise?

Hope thishelps to find the problem. Otherwise: find my contact details in the card. Feel free to contact me by MSN or Skype.

Regards,

Oliver