Tabs (Sub-Pages)
This section covers everything you need to know about tabs (formerly sub-pages) in MinistryPlatform, including tab fields, filter keys, permissions, and many-to-many relationships.
Pages can have tabs (sub-pages) that display at the top of a page. You can filter them using Sub-Page Views.
Tab Fields
The following fields are available on the Sub-Pages page in
.- Display Name
- A label to identify the types of records accessible from this tab.
- Parent Page
- The page under which this tab displays.
- View Order
- Tabs under the same page display left to right based on this order.
- Select From Field Name
- Populate this optional field to display an Add button on the tab so that people can add many records at one time. Use a fully qualified [Table_Name].[Field_Name] value where [Table_Name] is the target page table name. THe [Field_Name] must be a foreign key on the target page. [Field_Name] determines the page from which you select records.Note: The Add button from this field only works within a many-to-many relationship structure.
- Target Filter Key
- Together with the parent filter key, this field determines the column filters the tab records. This value must be equal to the parent filter key.
- Default View
- A Sub-Page View record explicitly associated with this tab that displays instead of the All Recods View when people use this tab.
- System Name
- A field used internally by the Platform. Not for use by third parties.
- Messaging Default
- If set to Yes, this tab and its Default View pre-fill when you launch the New Message Tool.
- Target Page
- Identifies the page which stores the records you can see in this tab.
- Parent Filter Key
- Together with the filter key, this field determines which column filters tab records. This value must be equal to the filter key.
Filter Keys
You can configure a page as a tab for any other page when the page and tab share a common field. This common field is identified by a pair of keys:
- Target Filter Key: Sourced from target page.
- Parent Filter Key: Sourced from parent page.
The two values must reference the same column in the same table. Express the values using the proper column name. When populated correctly, you can use the pair of keys to skip a level in the hierarchy. You can't use the Table Lookup Convention for the parent key or filter key fields.
Example A
In this example, Group Participants (the target page) and Participants (the parent page) are directly related by Participant_ID.
Example B
In this example, the target page Group Participants and the parent page Contacts are indirectly related through the Participant_ID. Both tables are directly related to Participants, making them indirectly related to each other.
Also, the foreign key to Participants on Contacts is the Participant_ID but displays as Participant_Record. You must always express filter Key values using the proper column name.
Tab Permissions
Once you create a tab, remember to grant users permission through a security role. As a best practice, we recommend you always add new pages and tabs to the default Administrator Security Role first before you grant permission through additional security roles.
Many-to-Many Relationships
In a many-to-many relationship, the page and tab relate through a common table with a foreign key that refers to both the page and tab tables.
Example
Group Participants: Each Group may have many Participants, and Participants may be in many Groups.
Configuration
The target filter key is a foreign key on the primary table that stores cross-referenced records on the select from page.
Actions & Permissions
You must grant at least Read permissions to the tab before anyone can see it.
To display the Add button for this relationship type, grant "full" permissions. For this to work, the foreign keys in the database must actually form a many-to-many relationship.