Object
The Object is the highest level entity in the NetForum middle tier object model.
Object
NetForum Object model
A netFORUM object is essentially a virtual record. This data describes an object so it can be instantiated and manipulated within the netFORUM framework. netFORUM provides a built-in object model for this purpose. If using the netFORUM object model, then Assembly must be Data and Type Name must be Avectra.netForum.Data.DynamicFacade. These values are case sensitive.
It is also possible and perfectly acceptable to write objects for the netFORUM framework using any language supported by .NET (by implementing a collection of public interfaces).
The Validate button can be used to validate the specified Assembly and Type Name.
Controls
- Unique Key: the unique key of the Object.
- Object Display Name: The Display Name of the Object. This is the friendly name of the Object that appears throughout the Toolkit.
Client Tip: for custom client objects, enter the name of the acronym first to distinguish baseline from custom objects.
- Object Class Name: Typically this is the same as the Display Name but with spaces removed. This property is a unique property for the object; there cannot be two Objects in netFORUM with the same Object Class Name.
- Prefix: The three-character column prefix of the core table most closely associated with the Object. Used by netFORUM framework.
- Default Columns: These columns will be displayed in a List performed after a Find/Query to show the results. If a List – Table has been configured for a table, then that List – Table will be used instead. It is acceptable to enter an asterisk in this field, as in practice every table should have a List – Table defined for it.
- Default Order By: These table columns will set the default sort order of a List Result that appears after a Find/Query. These columns must be set up as list columns in a List Table definition.
- Assembly: The assembly name of the underlying object (see Facade Object. netFORUM will instantiate this assembly object whenever this object is invoked in netFORUM. This field is case sensitive.
- Type Name: The type name of the underlying object, used in conjunction with the Assembly. This is case sensitive.
- Has Related Objects: Check this checkbox if the Object has Related Objects. If the checkbox is unchecked, then any related object relationships that have been defined will not be invoked.
- Dup-Check Child Form: If a child form is selected as the Duplicate Check Child Form, then after any form belonging to this Object is saved, then netFORUM will run the select sql in the specified child form to search for possible duplicate records. If any records are returned by this child form, then netFORUM will show those records and present a message to the user. The user can then evaluate the possible duplicates. See Duplicate Check Child Form for more.
- Allow Dup Save Anyway: See Dup-Check Child Form above.
- Supports Correspondence: Check this checkbox if this Object supports the netFORUM communicate feature that allows emails to be delivered. Check this only for objects that related to an element that can be emailed (eg, an Individual). Generally, only objects that have a data object to Individual or Customer (or another table that has the e-mail column name populated) can support correspondence. See List Type for more information.
- Has Extension Controls - check this if the Object has Object Extensions.
- Display Mass Replace Link - check this to enable the Mass Replace link on the List results page (feature debuted in 2010.01).
- Allows Import - when selected, the Object is available in the Data Import Utility. Until 2014.01, this column can only be updated in SQL. In 2014.01, the column is on the edit page of the object so it can be updated directly in the Toolkit module.
- Force Legacy Select - see Avectra.netForum.Data.Interfaces.ISelectableByDataRow.
- Track Recent Activity - click this check-box to indicate that the object should appear under the Recent Records tab in the top navigation bar when it is accessed. Individual and organization records appear in the Recent Records tab by default; this is done by automatically assigning the Individual and Organization objects to new users when they are added.
- Allow save for later - see #Save for Later
Usage and Examples
- Object Extensions -- see the Form Extension page for an explanation of how to develop and implement Object Extensions.
Recent Activity
Note: The text of the record that appears in the recent activity list is driven by the form title of the form that has been accessed. If all of the recent records are just the name of the object, then you need to update the profile form's title, for example, for a product it could be something like @{prd_name}.
Save for Later
An object can be configured to allow Save for Later. Save for Later will the serialize the facade object at the state it is in, and save it to a pending area where it can be picked up later. See User Home - Pending Work for more on how an end user can manage saved work.
A Form can have a Save for Later button enabled or hidden based on a form-level override called save for later override with options for Show and Hide.
To enable Save for Later on a Wizard, see Wizard#Enabling_the_Save_for_Later_Button.
Serialized objects that are saved for later are stored in the md_object_xml_serialize table.