1 Reply Latest reply on Apr 24, 2012 6:04 AM by philmodjunk

    Best practice for multiple devices



      Best practice for multiple devices


      Hello all ,

           I have a FM 11 DB that I have since converted to FM12 and it seems to be working well on my Mac.  One of the reasons I upgraded to FM 12 was to make use of the new "touch" layouts for iOS devices.  My attempts at designing iPad/iPhone layouts were clunky at best. In its present form I have basically three sets of layouts, one for Mac, iPhone and iPad. 

           Because this DB is used most often on iOS devices, I am wondering if there is a "best practice" for ensuring the appropriate layout is selected for each device. When using the iPhone for example, it is easier to have all fields in a single vertical row whereas on the iPad there is ample room for multiple rows of data to be seen and manupulated.

           Should I use FMGo12? Is there a way to only load iPhone layouts to my iPhone and iPad layouts to my iPad when syncing FMGo via iTunes?  Is there a way to automatically detect which device is in use and display the appropriate layout based on this information?

           I have considered IWP but there are times that my mobile device wil be out of WiFi range and I do not have GoZync or anything similar. 





        • 1. Re: Best practice for multiple devices

          Unless you use web publishing, you have to use FMGo12 if you have converted your database to fm 12.

          You can use the following script to set a global variable and/or go to the correct opening layout for a given device. If you set a global variable, other scripts that change layouts can refer to the global variable to determine the correct layout.

          Set Variable [$Version ; value: Get ( applicationVersion ) ]
          If [PatternCount ( $Version ; "Pro" ) or PatternCount ; "Runtime" ]
             Set Variable [$LayoutSet ; value: "Pro" ]
             Go to layout [First layout for FileMaker Pro/runtime users here]
          Else IF [ PatternCount ( $Version ; "Ipad" ]
             Set Variable [$LayoutSet ; value: "Ipad"]
             Go to layout [First layout for Ipad users here]
          Else If [PatternCount ( $Version ; "Go")]
             Set Variable [$LayouSet ; value: "Iphone"]
             Go to layout [First layout for Iphone users here]
             Show Custom dialog ["OOPs, can't figure out what platform opened the database."]
          End If