Form Link
Form Links are navigational hyperlinks on forms. These hyperlinks are used for the following general purposes:
- Take a user from a child record to a parent record
- Take a user from a parent record to a list of child records
- Launch a Report
- Launch a special page
Form Links can now be displayed on List Pages.
Controls
Source and Description of Link
- Source form: the form on which the form link appears. When adding a new form link, this will default to the form from which you are adding the form link.
- link text: the text the end user will see. You can use simple HTML tags and parsed values.
- aspx file: Determines which scenario(s) the form link will appear:
- DynamicEdit.aspx - on edit forms
- DynamicProfile.aspx - on profile forms
- DynamicList.aspx - on List forms.
- order: Orders the links.
- on edit only: appears only when in edit mode
- source form foreign key column:
Destination of Link
- internal path
- internal aspx
- destination form
- report name: see Report Link.
- external url: URL that is outside the ordinary netFORUM Form framework.
- open in dialog - if selected, will open the link in a modal window.
- open in new browser - if selected, will open the link in an entirely new browser window.
- one to many: see One-to-Many Form Link.
- sql where: see one to many above.
- sql order by: see one to many above.
Security See Link Key Security below.
Form Link from Child to Parent
Here is an example of a Form Link that takes the user from a child record (in this case, Committee Participant to a parent Committee record:
This shows the Form Link setup that created this link:
Note the following key fields:
- Source Form: the form on which the form link appears.
- destination form: the Form you want the link to go to.
- link text: the text of the link
- internal aspx: the file name for the internal file. If the link will go to a profile form, then enter DynamicProfile.aspx.
- sql where: This has the effect of filtering the record to load based on a Parsed Value condition: cmt_key={cmc_cmt_key}. cmt_key is the primary key of the parent committee record.
Form Link from Child Record to Individual or Organization
Here is a Form Link that takes the user from a child record to the Individual it's associated with. In this case, the child record contains a sfo_cst_key column that contains the cst_key of an Individual:
In this example, the sql where is:
ind_cst_key={sfo_cst_key}
In this case, using cst_key did not work; you must use ind_cst_key since the SQL fires only on the Object's main table, which in the case of the Individual object is co_individual.
If you wanted to go to the Organization form for an organization, then the sql where would then be the following, with xxx_cst_key representing the foreign key column containing the organization's customer key.
org_cst_key={xxx_cst_key}
Form Link to Either Individual or Organization
Suppose you have a record that could join to either an Individual or an Organization (or even a Chapter). Since the Form Link must specify a distinct form (either Individual or Organization), then you'll need to create two Form Links, one for each form, and having different sql where as described in Form Link from Child Record to Individual or Organization above.
Since you want only the correct Form Link to appear depending on the customer type (Individual or Organization), add a Visibility SQL statement to each one. For individual, you'd write:
SELECT visible = 'yes' FROM co_individual (nolock) WHERE ind_cst_key={xxx_cst_key}
For the organization form link you'd write:
SELECT visible = 'yes' FROM co_organization (nolock) WHERE org_cst_key={xxx_cst_key}
Visibility SQL, as described in the linked page, makes the particular Form Link be visible if the SQL command executes and returns one or more rows.
Report Link
Form Links for reports are accessed from the Form Reports icon.To configure a Form Link for a report, see this example:
In this case, the major field to fill out is the report key.
Special Page Link
In some cases, you need your Form Link to go to a special page, such as the Communicate page. Note the value in path signifies which folder the page is in:
One-to-Many Form Link
A Form Link can take a user from a parent record to a listing of children records using the List results page.
This Form Link example shows how from the List Table page, the user can go to a list of From Tables:
To make this happen, set the following properties:
- The internal aspx should be DynamicList.aspx.
- The sql where must contain the filter that selects the child records based on the parent record.
- The destination form is the form for the child record that the user should go to if they click into one of the results.
It is not necessary to check the one to many? checkbox which is a deprecated field.
Setup
- ASPX File: this field is used to determine which type of netFORUM pages this link should display on. Form Link dropdowns are displayed on DynamicEdit, DynamicList, and DynamicProfile pages. When creating a link, only the pages which are selected will have the link display. ReportStart is provided for creating report links.
- If DynamicList.aspx is selected a few extra fields will display:
- display on list results: if this is checked, the link will display when coming directly to a list page
- display on find results: if this is checked, the link will display when coming to a list page as the results of a find
- display on query results: if this is checked, the link will display when coming to a list page as the results of a query
- display on select mode: if this is checked, the link will display when the user changes the page to Select Mode. This still honors the other checkboxes, based on how the user arrived at the list page.
Link Key Security
Form Links can be associated with a LinkKey for use with ExtendedAccessSecurity. See the Redesigned UI section below for illustration.
Redesigned UI
The Form Link page has been redesigned and optimized to make it more intuitive and faster.
FAQ
External URL
Q: I'm trying to create a URL outside of netFORUM, but when the link is rendered, it adds Tab=CRM and TabItem=Individuals (depending on the location of the Profile page) to the querystring. How do I suppress this?
A. Check both the open in dialog? and open in new browser? checkboxes.
Run a Parameterized Query from a Profile
Q. Does anyone know if you can create a link to a query directly from a profile page that would pass a run-time parameter from the profile object (e.g. link from batch profile that opens query filtered for that specific batch)?
A. Yes. See Form Link to Query for a case study.