FM17s new current table portal as Master Detail considerations

Discussion created by JaredHague on May 28, 2018
Latest reply on May 29, 2018 by MichaelManousos

I have been doing master detail layouts for quite some time.  The way I was doing this before 17 was having the user on a session record.  Then having a portal displaying the master list and another table to display the detail.  This proved to work quite well.  I could manipulate the master list and control when and if the detail was changed.


Now using 17 I have seen demos of people using the new portal function for master detail designs.  I have started to refactor some of my work testing out this also. Although it definitely cleans up some scripts and tables it does promote what I would consider a bad interface choice. The display of the master list and the detail are in lock step using found set.  This is not user friendly in my opinion.  The crazy thing is this behaviour is different in iOS and macOS in Apples native apps.


Lets look at mail for example.  On iOS I you search for a message the detail remains untouched until you make a selection.  On macOS it clears your current message from the detail saying nothing selected.  If you cancel your search however it does return you to your previous state.  Making a simple master detail using the new function fails to replicate ether.  If you get no found records your state is gone and you get blank detail side also.  If you have any elements using values from fields to calculate they are not going to function well.


I would prefer to remain on my current record until I make a selection from my search results like iOS.  This is especially apparent when performing a find and having no found records. Its never a good idea leave the user without any found records.  I have done this by adding a global field to my table for the selected record. Then duplicating the table occurrence.  So if its a contacts table I call it SelectedContact I join the id to the global record.  When a user makes a selection from the master list the global is set to the current id.  All fields from the detail side are based on the SelectedContact.


Anyway I may get around to making 2 demo files to illustrate my point. Until then I enjoy any opinions about my thoughts.  What are your opinions on this?  I enjoy learning from you all.



I have attached a video and files to demonstrate this subtle difference.