Set IRC control object

This method allows the implementer to create, update or delete object on the IRC system. With this version of publishing framework - rule books, rules and compensating control objects can be managed.

Syntax:

Public Boolean SetBizRightsObject(AuthInfo objAuthInfo, 
BizRightsPublishingFramework.Action, IBizObject objControlObject, [string ControlInfo], out int ObjectID); 

Parameters:

Parameter

Description

Auth Object Authentication object with IRC user name and password provided to the application consuming the web service.
Action

The action that needs to be performed. The supported actions are:

  • ADD
  • DELETE
  • MODIFY
IBizObject Set the IBizObject with the required parameters like object type, ID (in case of Update or Delete), name, description and other require information that user has set in the object.
ControlInfo Optional. Set the supplementary information required for creating an object in IRC. Example: For creating a rule in IRC provide the rule condition XML in this field.
ObjectID When adding object to IRC, after successful creation of object, the ObjectID will be returned to the implementer.

Example:

Add Action:

Rule:

For adding Rule in IRC, ControlInfo parameter Rule Format and RuleBook ID parameter is mandatory.

Rule condition XML must be passed as Control Info to create a Rule. Rule Format can be obtained from GetObjectData() method for Rule. Rule Format and Rule Condition should match with each other for a particular Rule type. If Rule format is different from Rule Condition xml then created rule will throw error in IRC.

Supported Rule Formats are:

  • Authorization Conflicts
  • Job Code Conflicts
  • Role Assignment Limits
  • Role Conflicts
  • Transaction Conflicts
  • Sensitive Objects
  • Sensitive Transactions

Compensating Control

For adding Compensating Control, ControlInfo parameter is mandatory. Control Text must be passed as ControlInfo Parameter.

Modify Action:

Rule:

For modifying a rule, RuleID is mandatory along with rule attributes to be modified. Rule attributes which can be modified can be obtained from GetBizRightsObjects() Method. This method gives “isUpdate” attribute with object schema which is true if it can be updated otherwise false.

RuleBook:

For modifying a rulebook, RuleBookID is mandatory along with .rulebook attributes to eb modified. Rulebook attributes which can be modified can be obtained from GetBizRightsObjects() Method. This method gives “isUpdate” attribute with object schema which is true if it can be updated otherwise false.

CompensatingControl

For modifying a Compensating Control, CompensatingControlID is mandatory along with Compensating Control attributes to be modified. Compensating Control attributes which can be modified can be obtained from GetBizRightsObjects() Method. This method gives “isUpdate” attribute with object schema which is true if it can be updated otherwise false.

Delete Action:

Rule:

For deleting a rule, RuleID is mandatory.

RuleBook:

For deleting a rulebook, RuleBookID is mandatory.

Compensating Control

For modifying a compensating control, CompensatingControlID is mandatory.

BizRightsPublishingFramework.PublishingWebServices objMyImplementation = new BizRightsPublishingFramework.PublishingWebServices();

BizRightsPublishingFramework.IBizObject objSetRule = BizRightsPublishingFramework.IBizObject();

objSetRule.Name = “Purchase Order Approval versus Create Maintain Material Master Records”;

objSetRule.Type = “Transaction Conflicts”;

…..

int intRuleID;

string strRuleConXML;

strRuleConXML = “<soddetails xmlns=http://www.approva.net/BizRightsRule.xsd ………………………”;

Boolean boolSetStatus = objMyImplementation.SetBizRightsObject(objAuthInfo, BizRightsPublishingFramework.Action.Add, objSetRule, strRuleConXML, intRuleID);