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:
|
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);