Working with Business Object Designer
The Business Object Designer (BOD) is an administrator-level tool for viewing, editing, and creating business objects especially for iMIS. It provides a graphical user interface to the properties related to business objects.
Warning! Do not share a login while using the Business Object Designer. Using the same login to concurrently access and edit business objects can cause business objects to be overwritten, properties to be incorrectly modified, and will corrupt your business objects.
Do the following to explore Business Object Designer:
- Go to RiSE > Business Object Designer.
- Select a business object in the list, such as Campaign.
- Click Edit.
- Explore the Definition, Properties and Database tabs.
Note: You cannot edit a locked Business Object. You must save a copy of a locked Business Object and make edits to the saved copy.
Cs business objects (CsContactBasic, CsActivity, and so forth) are objects related to the areas of iMIS you are most familiar with. For example, CsContactBasic is an object that combines data from the Name and Name_Fin tables into a single, simple-to-query object in a location that is easy to find. Cs business objects are based on legacy iMIS tables.
Cs business objects are used in many instances. For example, if IQA is the only application running in your organization, you will use the CsObjects.
In addition, any tables built through the iMIS Customizer features will appear in the list of business objects as CsName_ + TableName.
Commonly queried CsObjects include but are not limited to the following | ||
---|---|---|
CsActivity | CsDuesHisotry | CsOrderLines |
CsAddress | CsEvent | CsOrders |
CsCalls | CsEventHistory | CsPledges |
CsCommittee | CsFunction | CsProduct |
CsContactBasic | CsGeneralLookupTables | CsRegistration |
CsDonations | CsInventory | CsRelationship |
CsDonationsDetail | CsMemberType | CsStaffUser |
CsDonorData | CsOrderHistory | CsSubscriptions |
Many objects within the list of business objects control how different business rules, most importantly security rules, are managed within the database. These business objects are system objects and should not be modified.
These objects include but are not limited to the following | ||
---|---|---|
AccessArea |
Group Note: There are many different objects with names beginning with Group. |
User |
AccessItem | Role | UserRole |
AccessMain | UniformRegistry | UserToken |
In addition to the objects listed previously, other objects used specifically for iMIS features are listed in the Business Object folder.
- ActionPlan
- OppDonorContact
- OppMemberContact
- Opportunity
- OpportunityCompetitor
- OpportunityDonor
- OpportunityHistory
- OpportunityMember
- OpportunityReport
- OpportunitySales
- OpportunityType
- OppSalesContact
- Appeal
- AppealParticipation
- AppealProduct
- Campaign
- CampaignParticipation
- CampaignTypeRef
- Package
- PackageItem
- PackageStatusRef
- Solicitation
- SolicitationStatusRef
- SourceCode
- SourceCodeStatusRef
- Supplement
- ListElement
- SegmentationDef
- SegmentationJob
- SourceList
- RFMAnalysis
- ContentChangeRequest
- ContentWorkflow
- Document
- DocumentStorage
- Hierarchy (DocumentHierarchy, NavigationHierarchy, TagHierarchy)
- Perspective
- NavigationPane
- NavigationWorkflow
- PublishMessageLog
- PublishPriority
- PublishRequest
- PublishRequestDetail
- PublishRequestStatus
- PublishServer
- TagRelationship
- TagRelationshipType
- UniformTag
- URLMapping
- UserDefinedField
- WebPartGalleryEntry
Note: You must have system-level administrator privileges to perform the tasks discussed in this section. Having administrator privileges for a given module is not sufficient authority to change business objects.
Business objects are central to creating IQA queries, generating reports, and running processes. You can view the list of available business objects by navigating from the Staff site to RiSE > Business Object Designer.
Business objects are user-friendly abstractions and collections of data from the iMIS tables. These abstractions enable you to write powerful queries and reports safely, without needing to be familiar with the iMIS database schema.
In most cases, the business object name and the names of its various properties are suggestive enough to guide experimentation. At times, however, it can be useful to trace the properties of a business object to their underlying table columns. Do the following to trace business object properties to their underlying table data.
Important! It is recommended to exercise caution when using dynamic group views (those beginning with vlqa) in custom business objects, as they may lead to poor performing queries, or may present problems if the dynamic groups are changed in the future.
- Go to RiSE > Business Object Designer.
- Double-click the business object that you want to examine.
- (Properties tab > Definition sub-tab) Select the property that you want to trace. The Database table and Database column fields specify the table and column from which the property derives its data.
- (Database tab) It can also be useful to examine the table joins used in a business object that comprises multiple tables. Examine the Joins field.
Note: Some business objects might use the term Appeal to refer to Source Codes.
To build a new business object you should build a new SQL table or view (or identify an existing one to use), customize the properties for the new business object, then build and publish the new business object.
Note: If no table exists for this business object, open SQL Server and create it, granting appropriate permissions.
- Go to RiSE > Business Object Designer.
- Select New > Design Business Definition.
- (Definition tab) Enter the business object's information.
- Click Create Object.
- Add properties to the business object, saving after you edit each tab:
- (Database tab) Add the Tables that contain the columns you want to use in your business object. In the Available Columns list, select which columns to use.
- Click Add as Properties or Add All as Properties.
- Select Save.
- (Properties tab) Select properties from the list to define the property's characteristics. To create a lookup, select the field you want to edit.
- (Properties tab > Values sub-tab) Define any lookups you need.
- Edit these values as needed.
- Click Save.
- Build and publish the new business object:
- Select the new object.
- Click Edit.
- Click Publish.
Note: If an error occurs when publishing the business object, check the Database tab and ensure that appropriate Joins are defined if more than one table is listed in the Tables list.
Customize the properties for the new business object, then build and publish the new business object.
- Go to RiSE > Business Object Designer.
- Select New > Design Business Definition.
- (Definition tab) Enter the business object's information:
- Name the new object Name_Picture.
- (optional) Enter a Description.
- Click Create Object.
- Add properties to the business object, saving after you edit each tab:
- (Database tab) Add the Tables that contain the columns you want to use in your business object. Select the Name_Picture table. From the Available Columns list, select which columns to use.
- Click Add as Properties or Add All as Properties.
- Click Save.
- (Properties tab) Select properties from the list for which you want to define the property's characteristics.
- (Properties tab > Display sub-tab) Set the Display control to Image for the Picture_Logo property.
- Click Save.
- Build and publish the new business object.
Note: If an error occurs when publishing the business object, check the Database tab and ensure that appropriate Joins are defined if more than one table is listed in the Tables list.
Warning!
Do not create new folders in the BOD Folders pane. All business objects must be stored in the system-defined Design Business Object Definition folder only. You must also not create subfolders under the Design Business Object Definition folder. Business objects created in or saved to any other location will break.
- Do not create and save business objects to any other location.
- Do not move existing business objects to any other location.
- Do not import business objects into any other location, regardless of the tool used to perform the import.
If you have a damaged business object, you can fix it by reverting to a prior version. Access the version history using the Versions option.
Note: After you revert, you will still see the damaged version in the list. No versions are destroyed through this process. Reverting to an earlier version copies the business object. You get a new version that matches the definition of the object version you selected.
- Go to RiSE > Business Object Designer.
- Select the damaged business object.
- Click Versions to access to all prior versions of the object, if any.
- Select an earlier version you know to be undamaged.
- Click Revert.
- Click OK at the following prompt:
Are you sure you want to make this version the current working version?
- Click Close.
- Edit the new working version's properties, if desired:
- To revert the object to its prior state, do not make any edits.
- To create a modified version based on a prior state, make appropriate edits.
- Click Publish to publish the object.
Note: The selected version becomes the current working version. The object is not reverted until it is published.
To delete custom business objects, do the following:
Warning! Deleting a business object will disrupt any queries or reports that use the business object as a source. Manually update these queries and reports to use a different source before deleting the business object.
- Go to RiSE > Business Object Designer.
- Select the business object you wish to delete.
- Go to Organize > Delete.
- Click OK.
If the business object was created as a panel source, you must delete it from the panel sources window. For more information, see Deleting panel sources.
A property’s display determines what your users see in iMIS. The property’s display value is used by default on windows and outputs, but you can design queries to override these defaults.
- Go to RiSE > Business Object Designer.
- Select an object from the list.
- Click Edit.
- (Properties tab) Select the property to be changed.
- (Properties tab > Display sub-tab) Change the value of Prompt for field.
- Click Save, and then Publish. Any messages should state that there are no errors.
- Click Close.
- Test your changes. Write a query against the object and select the updated property on the Display tab.
Adding Value lists to properties can make querying and data entry easier for end users. Value lists define the values that can be stored or selected for a property. There are three ways of adding Value lists to properties:
Use IQA to query the values from an object within the database, for example, General Look Up tables or CsActivityTypes.
Important! It is recommended to exercise caution when using dynamic group views (those beginning with vlqa) in custom business objects, as they may lead to poor performing queries, or may present problems if the dynamic groups are changed in the future.
Do the following to build a query:
- (optional) Build the lookup table that you want to use to manage the value in SQL Server.
- Build the query that will define the lookup table. Be sure that the Display tab displays the code value as well as the expanded description.
- Save the query in the Document system in Common > Queries > Value Lists.
Do the following to select values to display for a property:
- Go to RiSE > Business Object Designer.
- Select an object from the list.
- Click Edit.
- (Properties tab) Select the property that needs values.
- (Properties tab > Values sub-tab) Select the Query object radio button.
- Browse for and select the query you saved.
- Define the Data value to match the code that exists in the data.
- Define the Display value to match the expanded description that describes the Data value.
- Click Save, and then Publish. Any messages should state that there are no errors.
- Test your changes. Write a query against the object. Select the property on the Filters tab, and confirm that it now includes a value list.
Manually add the codes and expansions to the property within the business object. The Business Object Designer allows for value displays to be built directly within the object itself.
- Go to RiSE > Business Object Designer.
- Select an object from the list.
- Click Edit.
- (Properties tab) Select the property that needs values.
- (Properties tab > Values sub-tab) Select the Value list radio button.
- Build your value list by entering the code into the Data Value property column, and the expanded description for the code into the Display Value column.
- Click Save, and then Publish. Any messages should state that there are no errors.
- Click Close.
- Test your changes. Write a query against the object. Select the property on the Filters tab, and confirm that it now includes a value list.
Note: The Data Value can match the Display Value as long as the code value is not longer than the Data Type allows. Spaces can be used as well.
In many ways, using IQA to manage value lists is the most flexible and user-friendly way to manage a lookup. Values can be added to look up tables and to the modules within iMIS. Interfaces can be modified by adding values to a table that otherwise would not be available to users. These interfaces can be accessed by users who do not have the SysAdmin role access in iMIS. Value lists that are managed within the business object can only be managed through the Business Object Designer.
You can add new properties to your objects that are based on a table or view in your iMIS database.
- Go to RiSE > Business Object Designer.
- Select an object from the list.
- Click Edit.
- (Database tab) Select the property from the Available Columns that you want to add to the object.
- Click Add as Properties or Add All as Properties to move the property from Available Columns to Used Columns.
- Click Save, and then Publish. Any messages should state that there are no errors.
- Test your changes by writing a query against the object. Add the new property on the Display tab.
Important! It is recommended to exercise caution when using dynamic group views (those beginning with vlqa) in custom business objects, as they may lead to poor performing queries, or may present problems if the dynamic groups are changed in the future.
Note: Any properties you add to the business object will display at the end of the list of properties displayed in the Filters and Display tabs in IQA.
Note: You cannot edit a locked business object. You must save a copy of a locked business object and make edits to the saved copy.
Staff can create hyperlinked websites and email addresses in query results by modifying business object properties. Create the hyperlink by selecting Email Address or Web Address from the Display control drop-down.
These links allow users to quickly open a website related to a contact or send the contact an email from the query results.
The following business objects allow for hyperlinked results out-of-the-box when used in a query:
- CsContact (Email and Website properties)
- CsContactBasic (Email and Website properties)
- NetContact (Email and Website properties)
- NetContactBasic (Email and Website properties)
- NetContactData (Email and Website properties)
To make email and website address links available in the query results, do the following:
- Go to RiSE > Business Object Designer.
- Make a copy of the CsContactBasic business object.
- (Properties tab > Display sub-tab) Select the Email property.
- Scroll to the Display control drop-down and select Email Address.
- (Properties tab > Display sub-tab) Select the Website property.
- Scroll to the Display control drop-down and select Website address.
- Save the modifications, and then Publish.
- Create a query using the business object and select the updated property on the query's Display tab.
Note: When creating the website link, ensure that you correctly enter the web address.