Step 5: Configuring Business Rules

Modify the following predefined business rules so that their allocation information reflects General Ledger segments or chart fields. If you modified predefined segment Account members, update the business rules that refer to the members. If you use Business Rules as the calculation module, copy the business rule in each application before making changes.

Caution!

Because they reference General Ledger segments or chart fields be very careful when modifying business rules, and change only those sections pertaining to chart fields or segments.

Note:

Public Sector Planning and Budgeting no longer supports Business Rules. Consequently, modify business rules using Calculation Manager.

Change only the sections that pertain to General Ledger chart fields or segments. Use the following for guidance:

Insert comments to identify the appropriate section:

Example 1: Replacing Segments

In this example, the Business Unit allocation segment is removed, and Funding Source added to AddDefaultDistribution. Make these changes by removing the italicized Business Unit Segment lines and adding the bolded Funding Source Segment lines.

  /* Configurable Allocation Segments Section - Start */
             "Object Segment" = [Acct_Dist];
             "Object Segment Description"=[Acct_Dist];
             "Business Unit Segment" = [BU_Dist];
             "Business Unit Segment Description"=[BU_Dist];
             "Funding Source Segment" = [FundSource_Dist];
             "Funding Source Segment Description"=[ FundSource _Dist];
             "Department Segment" = [Dept_Dist];
             "Department Segment Description"=[Dept_Dist];
             "Fund Segment" = [Fund_Dist];
             "Fund Segment Description" =  [Fund_Dist];
             "Program Segment" = [Obj_Dist];
             "Program Segment Description"  =  [Obj_Dist]; 
             "Project Segment" = [Proj_Dist];
             "Project Segment Description"  =  [Proj_Dist]; 
             "Percentage Distribution" = [Dist_Percentage];
              validAssign = 1;
/* Configurable Allocation Segments Section - End*/

Example 2: Delete Business Unit Segments

In this example, the bolded Business Unit segment is deleted in the allocation sections of AddDistribution. The example shows only one section; there are three others, identified with starting and ending comments.

/* Configurable Allocation Segments Section - Start */

            "Object Segment" = @MDSHIFT( "Object Segment", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Object Segment Description" =  @MDSHIFT( "Object Segment Description", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
           "Business Unit Segment" = @MDSHIFT( "Business Unit Segment", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
             "Business Unit Segment Description" =  @MDSHIFT( "Business Unit Segment Description", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
           "Department Segment" = @MDSHIFT( "Department Segment", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Department Segment Description" =  @MDSHIFT(  "Department Segment Description", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Fund Segment" = @MDSHIFT( "Fund Segment", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Fund Segment Description" =  @MDSHIFT( "Fund Segment Description", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Program Segment" = @MDSHIFT( "Program Segment", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Program Segment Description" = @MDSHIFT( "Program Segment Description", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Project Segment" = @MDSHIFT( "Project Segment", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Project Segment Description" =  @MDSHIFT( "Project Segment Description", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Distribution Start Date" = @MDSHIFT( "Distribution Start Date", -1, "Budget Item", @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Distribution End Date" = @MDSHIFT( "Distribution End Date", -1, "Budget Item", @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
            "Percentage Distribution" = @MDSHIFT( "Percentage Distribution", -1, "Budget Item", @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));

/* Configurable Allocation Segments Section - End*/

To delete the Business Unit segment, delete these lines:

  "Business Unit Segment" = @MDSHIFT( "Business Unit Segment", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));
             "Business Unit Segment Description" =  @MDSHIFT( "Business Unit Segment Description", -1, LineItem, @DESCENDANTS("Distribution Assignments"), -1, period, @LIST("BegBalance", "Jan"));

Example 3: Adding Funding Source Segments

In this example, the Funding Source allocation segment is added to DeleteDistribution:

"Funding Source Segment" = @Next("Funding Source Segment", 1, @IRSIBLINGS([DistElem]));   
   "Funding Source Segment Description" =  @Next("Funding Source Segment Description", 1, @IRSIBLINGS([DistElem]));     

This is DeleteDistribution after adding the bolded Funding Source segment:

/* Configurable Allocation Segments Section - Start*/
"Object Segment" = @Next("Object Segment", 1, @IRSIBLINGS([DistElem]));   
   "Object Segment Description" =  @Next("Object Segment Description", 1, @IRSIBLINGS([DistElem]));         
   "Business Unit Segment" = @Next("Business Unit Segment", 1, @IRSIBLINGS([DistElem]));   
   "Business Unit Segment Description" =  @Next("Business Unit Segment Description", 1, @IRSIBLINGS([DistElem]));         
   "Department Segment" = @Next("Department Segment", 1, @IRSIBLINGS([DistElem]));   
   "Department Segment Description" =  @Next("Department Segment Description", 1, @IRSIBLINGS([DistElem]));         
   "Fund Segment" = @Next("Fund Segment", 1, @IRSIBLINGS([DistElem]));   
   "Fund Segment Description" =  @Next("Fund Segment Description", 1, @IRSIBLINGS([DistElem]));         
   "Program Segment" = @Next("Program Segment", 1, @IRSIBLINGS([DistElem])); 
   "Program Segment Description" =  @Next("Program Segment Description", 1, @IRSIBLINGS([DistElem]));         
   "Project Segment" = @Next("Project Segment", 1, @IRSIBLINGS([DistElem]));   
   "Project Segment Description" =  @Next("Project Segment Description", 1, @IRSIBLINGS([DistElem]));  
    "Funding Source Segment" = @Next("Funding Source Segment", 1, @IRSIBLINGS([DistElem]));   
   "Funding Source Segment Description" =  @Next("Funding Source Segment Description", 1, @IRSIBLINGS([DistElem]));     
   "Distribution Start Date" = @Next("Distribution Start Date", 1, @IRSIBLINGS([DistElem]));                                                                           
   "Distribution End Date" = @Next("Distribution End Date", 1, @IRSIBLINGS([DistElem])); 
   "Percentage Distribution" = @Next("Percentage Distribution", 1, @IRSIBLINGS([DistElem]));

/* Configurable Allocation Segments Section - End*/