Jump to content

Question: Displaying multiple records without using a Portal?


Recommended Posts

  • Newbies

As a new user, even the basic structure of a solution seems to have hundreds of options for getting started. I'm hoping someone can enlighten me on how to achieve the following:

I have a Main Menu layout that works off of a "Main Menu" Table. I have a "Team Contacts" table and layout that shows the 5-8 people that are working on a given project. There are simple fields in this table: Role, FullName, Cell #, Email. Due to the nature of these projects, sometimes additional specialists are required (and are temporarily brought on for different tasks). This is why I set up the "Team Contacts" Layout as a List view: so that we can see all of them at once, and so that the Contacts Layout has the ability to display anywhere from 5 - 8 Records (People) flexibly, depending on the project.

Since these are all smaller, team based projects, my company would like to display the "Team Members" of the project on the Main Menu Layout, with their Role and FullName displayed. I have successfully done this using a Portal, but since that rather limits how you format the records (into rows), I want to see if there's a way to be able to have separate fields to drag onto the Menu as if I was doing a Merge Field that applied to only a specific record, say Record 1 of Table: "Team Contacts". That would allow me the freedom I'm looking for in formatting them across the menu, for example along the bottom of the Menu Page, from left to right with Role: Name / Role: Name / Role: Name (appropriately spaced, of course).

It's important to note that each FM file that gets started from a template file is its own "Project". There is a "Project Info" Table in the file, but it only contains 1 Record (1 Project) and displays the Name, Description, & Dates of the project. Because of this, one solution I thought of (though it seems rather clumsy) would be to just add a bunch of Fields to the "Project Info" Table, all global fields, and one for each potential person on the team, and all of their info. [Role 1; FullName 1; Cell# 1; Email 1; Role 2; FullName 2; Cell# 2; Email 2; etc]. Then using conditional formatting, I guess it would be easy enough to hide Roles 5-8 and all of the labels for them if they are empty fields.

Please tell me I'm thinking about this incorrectly and enlighten me. Thanks in advance!

Link to post
Share on other sites

It sounds like you want a horizontal portal? That's not a built-in option, but you can simulate it by creating single-row portals, each one starting at a different row.

I think you will find this much easier to manage than a bunch of duplicate fields.

  • Like 1
Link to post
Share on other sites

Another option is to define a calculation field in the Contacts table as =

Role & ":" FullName

and another calculation field in the parent table as =

Substitute ( List ( Contacts::cFullInfo ) ; ¶ ; " / " )

If you prefer, you can insert a tab character in between the values to better control the spacing.

 

Note that in version 18 and higher the same result can be produced by a single calculation field using the While() function (and in previous versions by a recursive custom function).

 

5 hours ago, ratherbsailing said:

It's important to note that each FM file that gets started from a template file is its own "Project".

I am not sure that's a good idea. But that's unrelated to this question.

 

Edited by comment
  • Like 1
Link to post
Share on other sites
  • Newbies
1 hour ago, Fitch said:

...you can simulate it by creating single-row portals, each one starting at a different row.

Brilliant. Aha! Multiple Single-Row Portals, essentially turning off all of the Fill & Line attributes, should give me lots of flexibility to mess with the fields I do want individually. That's a step in the right direction, for sure.

 

@comment Thanks for your solution as well! I will try them both out and any other suggestions that come in. Your List() using tab characters might be the easiest to manage everything at once.

15 minutes ago, comment said:

I am not sure that's a good idea. But that's unrelated to this question.

Understandably so, and thanks for pointing that out. I will say that if you had the full context, it would make more sense as to why they do it that way, even in the long run. But hey, I'm keeping my eye on it.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.