3 Replies Latest reply on Mar 6, 2012 8:44 AM by philmodjunk

    Tabbed Layouts with different tables?



      Tabbed Layouts with different tables?


      I currently have an student apartment inspection program I built using a tabbed layout. There are about 10 tabs and many fields on each tab. The first tab is the student basic info and all other tabs are different rooms in the apartment with different areas of inspection for each room. All fields are in one large table.

      I would like to break up my inspection program into multiple tables, instead of 1 big table and keep the tabbed layout.

      I did this and placed fields from each table to their respective tabs (kitchen table has kitchen tab, etc.). 

      The basic student info is the main table and a one to many relationship is established between this table and the other room tables.

      I have existing records in the main table that houses basic student info.

      What I need to have happen is when I click on the next tab, say kitchen, I want to enter the inspection info for that room.

      Right now it won't let me click on a field in any of those room tabs and and if I add a record it adds a new record in the main student table that houses just the basic info on the first table.

      Can anyone give me some direction here?

      Here are some pics for the tables and tabs....


      Table Relations ShipsStudent TabKitchen Tab


        • 1. Re: Tabbed Layouts with different tables?

          Immediate Fix:

          Double click each of the relationship lines and select "allow creation of records via this relationship" for each of the "room" tables.

          Long term fix:

          Consider restructuring your data so that it isn't separated into a different table for each room. Think in terms of this structure:


          Inspection itemshas one record for each item to be inspected in a given room. Inspection results would be the corresponding inspection data collected during the inspection. Filtered portals can be put on tabs for each room if you want, but the main reason for setting up your tables and relationships like this is that changes to the inspection list or the rooms to be inspected become data entry tasks instead of requiring a design change to your database.

          • 2. Re: Tabbed Layouts with different tables?

            Ok, so going with the restructuring what is your opion on the visual aspect of collecting this data, since we are using filemaker go on an ipad tablet.

            The old way (visually and the tabbed approach with one table) was the inspector would go to each apartment, bring up the student on the main tab and then proceed by clicking on the first tab (kitchen) and using a capacitive pen would touch the field that needed an entry, then make the numeric entry or on some fields he just clicked the box for an automatic entry. Then would go to anothe room and select the next tab., etc, etc.

            Any suggestions on visually making it work? A portal for entry with all those fields, well I can't picture it.....


            • 3. Re: Tabbed Layouts with different tables?

              This can be done with a single portal with controls for specifying the room so that you can see the inspection check list for one room at a time or a series of tabs, each with a filtered portal for a different room. With either approach, the portals are to Inspection Results placed on a layout based on StudentInfo.

              A script would create the records in InspectionResults for each inspection. This populates the portal or portals with records to list the items to be checked off (each is a separate record) and then you record the inspection results in the fields next to it.

              Example: on the set of Kitchen Inspection Results records, one record would have a text field that stores "Cleaning Stove Top". The next field is a conditional value list controlled check box for your 25.00 entry. Both "Cleaning Stove Top and the 25.00 would be data stored in the InspectionItems table and copied to a record in Inspection results when the script is used to populate it with the needed inspectionResults records.