Skip to main content

What determines which tables I can add fields from for a mobile screen?

For Example:  I’d like to add a field from the Part table to the job list screen, but part is not a table I can add fields from on that screen.  My choices are Address, Contact, Place, Product, Request and Task.

I should be able to link to the part table from the product table with Product.Part_ID = Part.Part_ID

 

Thanks.

Hi @csanders ,

You can view the existing tables which are available for the joblist under the task sync rule in FSM smart client. Go to sync rules screen and search for the task sync rule. In the initial query you may see the available tables joined to task table as task is the primary table for the joblist. The initial query is used in the population of the data after the database is created at the server. You will need to join the relevant table that you need to join with the matching join constraints and make sure to test the xml query in the xml poster first to confirm that it’s working properly. Once you re-initialize the mobile, the intended table should be visible when you select the table from the dropdown to add fields in the mobile designer ui. Also please note that large data volumes (if your intended table has many records with out proper constraints) will cost beyond performance in the application especially when sending over celluar data networks. Hence always keep in mind to consider this fact as high priority when you are modifying the existing sync rules.


Thank you for the information!

So the Part table is a very large table in our system.  We are already syncing it to mobile with it’s own sync rule (Batch - Delta).  Would including it in the Task sync rule, which is Real Time be a bad idea?  I don’t want the parts table being synced in real time.

Would it be smarter to use a custom field for the job list.  I see a baseline script called JL_POPULATE which seems to change the color based on priority.  Could I modify that script to set the value of a custom field?

 


Well yes, if that’s the case and if you don’t have specific constraints to limit the data load in the part table, this might be something to be aware of. It’s better to test this in the xml poster first whether your result is quite large or not after joining task sync rule with part table. But if you have one to one mapping with task table and part, then it should not be very a big concern. Try to get only the intended column(s) in the result instead of putting “*”. Yes if it is on the joblist screen you can override the populate fsm client script with a custom field. Otherwise, if it’s on the debreif overview screen, you can simply reserve a user_def filed on task table and then display (if one to one) it by configuring it in the mobile ui designer. 


Thanks for your help!


Reply