cancel
Showing results for 
Search instead for 
Did you mean: 

Data not coming from Mobile to DOE

Former Member
0 Kudos

Hi All,

I have created a backend triggered Instance push type DO. Now i am invoking this instance push RFC from my backend to DOE.

After executing this i can see data in my CDS table , after it i created Bulk Rule for this DO and now data can be seen in the Outbound Queue of device on device portal.

But when data is changed in Mobile client then after synchronization i am not able to see those changes in my CDS Table data.Is there any way so that i can monitor that where i am loosing this data.

Please respond i have got stuck with it.

Regards,

Abhishek

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

First get the device queue name(get it from administrato rportal) and check the status of it in smq2.

If is no sys fail or entry in queue then go to message monitoring in DOE monitoring portal. Search using your device name. Check the status of the message that you have sent.

Regards,

Dhana

Former Member
0 Kudos

Hi Dhana,

I checked in SMQ2 and this queue is showing SYSFAIL , now what can be done if it happens.

Inside it is giving error Exception condition "INVALID_MBO_TRANS" raised. What could be the reason and how to resolve it.

Regards,

Abhishek

Former Member
0 Kudos

Hi Abhishek,

Did you create a new version of this data object for which you created a new instance from the client.

Can you also check the corresponding message in message monitoring and see what is logged as error?(you can search with your deviceid and data object name)

It will show the service name it ended in error or atleast the service where it stopped.

Can you check tht and tell us.

Regards,

Liji

Former Member
0 Kudos

Hi Abhishek,

"invalid_mbo_trans" exception is raised when DOE is unable to figure out the generated service class name for the data object trans id that is sent from client during sync cycle . This exception is raised when DOE fails even to find the generated service class name for the active trans for the same DO.

Did the last activation of this data object go through fine?

Check if your Data object is showing active state in workbench if not activate it.

Perform a consistency check(Ctrl + F2) for this DO and see if there are any messages in "view logs".

When you double click on the data object name, are you able to see the generated service class name listed?

If you have modified your Data object from workbench many times , may be the meta data is corrupted.

May be you can do a table level check also for the same.

Get the MBOID for this dataobject from sdoe_wb.

GoTo>Object Directory Entry>Copy the guid there .

in SE11->open the table SMMW_HDR and give the above guid in MBO_ID and Active = 'X'.

Check the results.If there are more than one entry , then check if there is an entry with field 'deleted = 1'.This could be a problem

Regards,

Liji

Former Member
0 Kudos

Hi Abhishek,

Simple reason could be that after you imported the model to the NWDS, for creating application, you might have changed the Data Object in the workbench and you might not have reimported your model into NWDS.

Its important to note that, each time a Data Object is changed in the workbench and you already have an application that uses this Data Object, then you will have to re-import the model so that the application and the DOE are up-to-date with the Data Objects definition.

Best regards,

Vinodh

Former Member
0 Kudos

HI Liji,

I checked in SMMW_HDR table with the GUID copied from Object directory entry, It has only one entry for Active = X and it is with deleted = 0.

When i checked in message monitoring portal there i could not not find any error message . Now how can i check that where i am doing wrong. In SMQ2 it is still showing SYSFAIL.

How to resolve it.

Thanks ,

Abhishek

Former Member
0 Kudos

Hi ,

I debugged the LUW and found that at below point it is giving that exception Invalid MBO trans, could you please let me know that what could be the solution for it.

CALL FUNCTION 'SMGF_GENOBJ_GET'
      EXPORTING
        i_guid        = active_mbo_trans
        i_genkey      = mgen_srv_generator_cl
      CHANGING
        c_tmgn_objreg = genstruct.

    LOOP AT genstruct INTO wa_genstruct.
      class_name = wa_genstruct-name.
    ENDLOOP.

    IF class_name IS INITIAL.
      RAISE invalid_mbo_trans. --- {color:red}Error coming at this point{color} 
    ENDIF.

Regards,

Abhishek

Former Member
0 Kudos

Hi Abhishek,

The case is that the mbotrans that is sent from the client is not the active one in the server and inturn not able to find out the service class for the DO.

When you debugged, active_mbo_trans was filled? in smmw_hdr table, for the mboid , did you see an entry with active = 'R' or so..?

Did you change the dataobject in workbench(created a new version of DO) after you imported this model and created the application?

Regards,

Liji

Former Member
0 Kudos

Hi Liji,

I checked *active_mbo_trans * it is filled here , and in SMMW_HDR table for this trans id status field is blank.

After generating the DO i created the device then only i imported this DO model.If you need any other information please let me know.

Regards,

Abhishek

Former Member
0 Kudos

Hi Abhishek,

Ok , since active_mbo_trans is filled, status field doesnt matter here.

Did your last activation of DO go through fine?

Can you regenerate your dataobject once and then do the following

execute this FM and see if in the result , its returning a class name.

CALL FUNCTION 'SMGF_GENOBJ_GET'

EXPORTING

i_guid = active_mbo_trans

i_genkey = 'GEN_SRVCLASS'.

Regards,

Liji

Former Member
0 Kudos

Definitely , the mbo trans coming from client is different from the active one in the server.

May be you should try re-importing the model once again and try.

Former Member
0 Kudos

Hi Liji,

What is happening is that after regenerating i followed the same steps as you told then it is returning the class name .

After this i created a new device then i assigned this DO to the device .

When device was in initial state i trggered extract and it fetched data in its outbound queue, then this data was available for device and out bound queue was empty.

Then device was registered and after registration when i triggered extract then no data came again in its outbound queue.Is this behaviour is correct??

but when i checked in SMQ2 this new queue is again showing SYSFAIL, while debugging i found that it in FM SMGF_GENOBJ_GET it is taking very old active_trans_mbo which does not belong to my SWCV and its STATUS is P .

I have no clue that from where it is taking this MBO_TRANS Id.I am stuck with it.

Thanks & Regards,

Abhishek

Former Member
0 Kudos

Hi Abhishek,

You can check which is this SWCV in the table : smmw_scv

give the MBO_SWCV guid corresponding to the trans id (from smmw_hdr) and see which is this SWCV.

If your data object version is changed , then you need to re-import the model to NWDS, rebuilt the application and then do server deployment and then on assign this MCD to the new device.

Regards,

Liji

Former Member
0 Kudos

HI liji,

At one point in POrtal under Monitor device i found a Log saying

Value not found for MMW parameter CDS_READ_PACK_SIZE_FOR_EXT , so do i need to do anything for this.

I have not performed anything in sdoe_param.

Thanks

Abhishek

Former Member
0 Kudos

No ..this is not an issue as this parameter will have a default value .

Former Member
0 Kudos

Thanks Liji for quick reply..now that problem is solved after regenrating objects again .But there is another problem .

When i tried to upload NWM client SCA by transaction sdoe_upload_archieve it is giving error that process failed : <MBO_TRANS_ID> data object does not exist or inactive.

Any clue why this error is coming?

Thanks,

Abhishek

Former Member
0 Kudos

Hi Abhishek,

Usually this error is returned while uploading archive , if the data object trans id that is part of the mobile component (MCD) does not exist in DOE itself.

May be you can cross check the MCD that is part of your archive, whether it contains the proper dataobject details and incase it contains multiple DOs , then whether all of them active or not

Regards,

Liji

Former Member
0 Kudos

HI Liji,

While debugging i found that that it is giving error for MBO name client_feedback , but in my SAP BAsis DO i could not found this DO or any node as CLIENT_FEEDBACK.

Is this is the problem,what should i do for this problem.

Regards,

Abhishek

Former Member
0 Kudos

Hi Abishek,

Are you sure that there is no Data Object called client_feedback? It should be under the Data Object Category 'External Application Logs' . If its there, can you please try to regenrate this Data Object and make sure its generated properly?

Best regards,

Vinodh

Former Member
0 Kudos

HI Vinodh,

Thanks for such a quick reply , i checked under 'External Application Logs' but there is only one data object called LOG_MBO.

Shall i create this CLIENT_FEEDBACK, any suggestion from your side.

Regards,

Abhishek

Former Member
0 Kudos

Hi Abhishek,

Its really strange that SAP basis DO itself is missing in the SCV.

Ideally SAP basis SCV should not be altered as its SAP shipped one and contains DOs that are critical to the client protocol.

I do not think the tool allows you to create DO with category 'External application logs' itself.

Raising an OSS Ticket will help..

Regards,

Liji

Former Member
0 Kudos

Hi Abhishek,

This is very wierd. Not sure why client_feedback is missing. I'm assuming that you have followed the configuration guide and performed all the intial setup activities. Please do not create any DO in BASIS SWCV. Please get in touch with SAP to fix this issue. They will investigate why this is missing and solve it for you. Without solving this, you might not be able to work with the client and synchronise.

Best regards,

Vinodh

Former Member
0 Kudos

HI ,

This is SP 7 which i installed recently, also while debugging this MBO name was coming as a bug so i removed its MBO Trans id from smmw_hdr as i was not aware that this is critical data.

Will this could be problem?

Regards,

Abhishek

Former Member
0 Kudos

Adding to teh above , what are all the configuration required at middleware side. I simply executed everything under SDOE_SR transaction.Is anything else required to be done at this end.

Regards,

Abhishek

Former Member
0 Kudos

Hi,

These are all critical data. You should never touch any tables and table entries that is supplied by SAP.

Please get in touch with SAP. Without fixing this, you will not be able to proceed.

Best regards,

Vinodh

Former Member
0 Kudos

Hi,

SDOE_SR is main step. There are few more things like,

1. Basis rule activation

2. MCD upgradation

3. Setting up mobile administration etc

The configuration guide can be found here,

http://help.sap.com/saphelp_nwmobile71/helpdata/en/45/17a790d8000064e10000000a1553f7/frameset.htm

Best regards,

Vinodh

Former Member
0 Kudos

Hi Abhishek,

SAP table entries being deleted this way is not advisable.

Ideally , with SDOE_SR execution, basic configurations will be set already.

There are many configuration parameters available under DOE COnfigurations and Backend configuration but most of them are required only if you wish to acheive a specific functionality or performance specific reasons and these configurations have default values.

Regards,

Liji

Answers (0)