Business Object - Algorithms

Use this page to maintain a business object's algorithms. Open this page using Admin > System > Business Object and then navigate to the Algorithms tab.

Description of Page

The Algorithms grid contains algorithms that control important functions for entities defined by this business object. You must define the following for each algorithm:

  • Specify the System Event with which the algorithm is associated (see the table that follows for a description of all possible events).
  • Specify the Sequence Number and Algorithm for each system event. You can set the Sequence Number to 10 unless you have a System Event that has multiple Algorithms. In this case, you need to tell the system the Sequence in which they should execute.
  • If the algorithm is implemented as a script, a link to the Script is provided. Refer to Plug-In Scripts for more information.
  • Owner indicates if this is owned by the base package or by your implementation (Customer Modification).

The following table describes each System Event. Refer to A Business Object May Define Business Rules for more information about these system events.

System Event Optional / Required Description
Audit Optional

Algorithms of this type may be used to audit certain changes made to business object instances.

The system hands over to the algorithms a summary of all the elements that were changed throughout a specific call to update an object. Excluded from this processing are elements explicitly marked on the schema as requiring no audit. For each element its original value before the change as well as its new value are provided.

It is the responsibility of the algorithms to record corresponding audit information.

The system invokes all algorithms of this type defined on the business object's inheritance hierarchy. Refer to Business Object inheritance for more information.

Information Optional

We use the term "Business Object Information" to describe the basic information that appears throughout the system to describe an entity defined by the business object. The data that appears in this information description is constructed using this algorithm.

The system invokes a single algorithm of this type. If more than one algorithm is plugged-in the system invokes the one with the greatest sequence number found on the business object closest to the current business object in the inheritance hierarchy. Refer to Business Object inheritance for more information.

Post-Processing Optional

Algorithms of this type may be used to perform additional business logic after a business object instance has been processed.

The system invokes all algorithms of this type defined on the business object's inheritance hierarchy. Refer to Business Object inheritance for more information.

Pre-Processing Optional

Algorithms of this type further populates a request to maintain a business object instance right before it is processed.

The system invokes all algorithms of this type defined on the business object's inheritance hierarchy. Refer to Business Object inheritance for more information.

Validation Optional

Algorithms of this type may be used to validate a business object instance when added, updated or deleted.

The system invokes all algorithms of this type defined on the business object's inheritance hierarchy. Refer to Business Object inheritance for more information.

Fastpath: Refer to BO Algorithm Execution Summary for more information about how these algorithms fit within the business object processing.
Note: Generate Algorithm. A context sensitive "Generate a BO Algorithm" zone is associated with this page. Refer to Defining Business Objects for more information about this zone.
Note: You can add new system events. Your implementation may want to add additional business object oriented system events. For example, your implementation may have plug-in driven logic that would benefit from a new system event. To do that, add your new values to the customizable lookup field BO_​SEVT_​FLG. If you add a new business object system event, you must update the maintenance object to declare this new system event. Otherwise, it won't appear on the system event dropdown. You do that by referencing the new system event as a Valid BO System Event maintenance object option.
Note: You can inactivate algorithms on base Business Objects. Your implementation may want to use a business object provided by the base product, but may want to inactivate one or more algorithms provided by the base business object. To do that, on the business object where this algorithm is referenced, go to the options grid on Business Object - Main and add a new option, setting the option type to Inactive Algorithm and setting the option value to the algorithm code.