Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

Exception at FieldTypeDecorator$5.getAsStringWithLeadingZeros

Dear all,

I am using MDK 2.5 sp 13 (patch 00).

(Server is also compatible)

i have created one mobile application (Smart Sync Application), which is using 5 SyncBos.

One of the SyncBo have getlist , getdetail and create function modules.

Key field mapping is working fine.

I could create one new entry in the client side and view its details.

But after synchronization , the corresponding entry is created in the back end .

On viewing the corresponding SyncBos data after synchronization , i am getting the exception ,

java.lang.ArrayIndexOutOfBoundsException: -7

at com.sap.ip.me.smartsync.meta.FieldTypeDecorator$5.getAsStringWithLeadingZeros(FieldTypeDecorator.java:938)

at com.sap.ip.me.smartsync.meta.FieldTypeDecorator$5.persistToTransient21(FieldTypeDecorator.java:926)

at com.sap.ip.me.smartsync.meta.FieldDescriptorImpl.getValAsTransient(FieldDescriptorImpl.java:689)

at com.sap.ip.me.smartsync.data.AbstractRow.getFieldValue(AbstractRow.java:268)

at com.sap.ip.me.smartsync.data.AbstractRow.getSyncKey(AbstractRow.java:302)

at com.sap.ip.me.smartsync.data.SyncBoProxy.getSyncKey(SyncBoProxy.java:178)

at com.sap.ip.me.smartsync.data.SyncBoCollectionImpl.(SyncBoCollectionImpl.java:30)

at com.sap.ip.me.smartsync.data.SyncBoListImpl.(SyncBoListImpl.java:30)

at com.sap.ip.me.smartsync.data.SyncBoDataFacadeImpl.getSyncBos(SyncBoDataFacadeImpl.java:146)

please help me to resolve this problem ,and i promise to return and reward the answers.

Regards

Kishor G

Former Member replied

hello kishor,

please check on your metadata definition.

this happens when the length of the synckey

value is larger than the defined synckey length

attribute.

e.g. key value : 0000000123 --> length=10

metadata synckey len: 3

probably a bug in MI.

this might have been fixed in the patches. so try

deploying the sp13 patches.

check also on the synckey that was assigned to the

syncbo instance you created. it could be that the server

returned a synckey longer than what is defined.

regards

jo

0 View this answer in context
Not what you were looking for? View more on this topic or Ask a question