Related Topics
ContentObject Class
This object represents the base class for all content objects (documents, Forms, Process Timelines, etc) stored in Process Director. All properties, methods, and events of this base class are available to every content object derived from this class.
Properties
PROPERTY NAME |
DATA TYPE |
DESCRIPTION |
---|---|---|
ContentPath |
String | The full path including folders for this object |
CreateTime |
DateTime | The date/time the object was created |
CreateUID |
String | The UID of the user that created the object |
Description | String | The description of this object |
GroupName |
String | The optional group name that this object is stored in (e.g. for Form attachments) |
Icon |
String | The Icon number of this object |
ID |
String | The ID of this object |
Name |
String | The name of this object |
Parent_ID |
String | The optional ID of the parent of this object |
PID |
String | The internal Partition ID |
Size |
Integer | The size of this object, in Kilobytes. |
Type |
String | The description of this object |
UpdateTime |
DateTime | The date/time the object was last updated |
UpdateUID |
String | The UID of the user that last updated the object |
Version |
Integer | The version of the object. The version number is incremented for documents every time a document is checked in. For forms, the version number is incremented each time a user saves changes on the form. |
PermObject Class
Since each object in the ContentObject Class has permissions that can be applied to the object, the PermObject class is used by the various permissions methods, such as SetPermissions, or GetPermissionsto list, get, set, and replicate permissions.
Properties
PROPERTY NAME |
DESCRIPTION |
---|---|
PermID |
The Permissions ID GUID string for the permission. |
OID |
The Object ID GUID string for the object to which the permission is applied. |
GrantID |
The Grant ID GUID string for the permissions grant. This is the user or group ID for the user or group to whom the grant is given. |
PID |
The Partition ID GUID string for the partition in which the object resides. |
GrantType |
The Grant Type of the permission. This is an object value that enables you to set the object type to User or Group. |
fRead |
A boolean value to determine whether or not to grant read permission to the Content Object, i.e., an Object Definition. |
fWrite |
A boolean value to determine whether or not to grant write permission to the Content Object, i.e., an Object Definition. |
fDelete |
A boolean value to determine whether or not to grant delete permission to the Content Object, i.e., an Object Definition. |
fExecute |
A boolean value to determine whether or not to grant execute permission to the Content Object, i.e., an Object Definition. |
fRead2 |
A boolean value to determine whether or not to grant read permission to the child objects of a Content Object, i.e., an Object Instance. |
fWrite2 |
A boolean value to determine whether or not to grant write permission to the child objects of a Content Object, i.e., an Object Instance. |
fDelete2 |
A boolean value to determine whether or not to grant delete permission to the child objects of a Content Object, i.e., an Object Instance. |
|
|
fReadEx |
A boolean value to determine whether or not to deny read permission to the Content Object, i.e., an Object Definition. |
fWriteEx |
A boolean value to determine whether or not to deny write permission to the Content Object, i.e., an Object Definition. |
fDeleteEx |
A boolean value to determine whether or not to deny delete permission to the Content Object, i.e., an Object Definition. |
fExecuteEx |
A boolean value to determine whether or not to deny execute permission to the Content Object, i.e., an Object Definition. |
fReadEx2 |
A boolean value to determine whether or not to deny read permission to the child objects of a Content Object, i.e., an Object Instance. |
fWriteEx2 |
A boolean value to determine whether or not to denywrite permission to the child objects of a Content Object, i.e., an Object Instance. |
fDeleteEx2 |
A boolean value to determine whether or not to deny delete permission to the child objects of a Content Object, i.e., an Object Instance. |
Methods


This API will add an object as child to the current object. This is an overloaded method, with the following possible method declarations:
public virtual bool Add(string pID)
public virtual bool Add(string pID, string pGroup)
public virtual bool Add(ContentObject pObj)
public virtual bool Add(ContentObject pObj, string pGroup)
Parameters
ContentObject: The ContentObject to add to this object.
pGroup: Optionally the group name to add into.
pID: The ID of the object to add.
Returns
boolean: True if the operation succeeds.
Example
CurrentForm.Add(Form.Instantiate(bp, "ObjectID"));


This API will create a new document under an object from the local file system. This is an overloaded method with the following possible declarations:
public Document AddDocumentFromFS(string Path)
public Document AddDocumentFromFS(string Path, string Name)
public Document AddDocumentFromFS(Stream Stream, string Name)
public Document AddDocumentFromFS(Stream Stream, string Name,
string DocName)
Parameters
Path: The folder or full path to the local file.
Name: Optionally the file name in the path.
Stream: A FileSystem Stream object to add as a document
Returns
ContentObject: The new content object or null if the add fails.
Example
var oObject = Project.GetProjectbyPRID(bp, "PRID");
oObject.AddDocumentFromFS("c:\\documents\\doc1.doc");


This API will create a new document under an object from a byte array. This is an overloaded method with the following possible declarations:
public Document AddDocumentFromBytes(string Name,
byte[] Bytes)
public Document AddDocumentFromBytes(string Name,
byte[] Bytes,
bool Replace)
public Document AddDocumentFromBytes(string Name,
byte[] Bytes,
bool Replace,
bool SkipAutoWfStart)
Parameters
Name: Name of the new document.
Bytes: The array of bytes used to set the document contents.
Replace: Boolean value to direct if the document should replace another
SkipAutoWfStart: Boolean to determine whether to automatically start a process
Returns
ContentObject: The new content object or null if the add fails.
Example
byte[] DocumentData;
var oObject = Project.GetProjectbyPRID(bp, "PRID");
// Set document data from reading from file, web service call, etc
// DocumentData = ...
oObject.AddDocumentFromBytes("My Doc.doc", DocumentData);


This API will add a shortcut to the object into the destination. This is an overloaded method with the following possible declarations:
public bool AddObjectMap(string DestinationID, ObjectType DestinationObjectType)
public bool AddObjectMap(string DestinationID)
public bool AddObjectMap(ContentObject DestinationObj)
Parameters
ContentObject: The Content object to add a shortcut into.
DestinationID: The ID of the Content Object to add a shortcut into.
DestinationObjectType: The Type of the Content Object to add a shortcut into.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Document.GetDocumentbyDID(bp, "DID");
oObject.AddObjectMap("1234", ObjectType.Folder);


This API will Add an object to the "Pending" queue, meaning that it will attach the object to the first Process which starts on it.
This is an overloaded method with the following possible declarations:
public bool AddPending(ContentObject pObj)
public bool AddPending(ContentObject pObj, string pGroup)
Parameters
pObj: The Content object to add to the pending queue.
pGroup: The Group Name of the Object.
Returns
boolean: True if the operation succeeds.
Example
// Set the Process and content object
var oProcess = Project.GetProcessByID(bp, "PRID");
var oObject = Form.GetFormByFORMID("FORMID");
//Add the object to the Pending Queue
oProcess.AddPending(oObject);


This API will set the Meta Data category for an object. This is an overloaded method with the following possible declarations:
public bool AssignCategory(string Category)
public static bool AssignCategory(bp BP, string ID, string Category)
Parameters
BP: The BP Logix environment class.
ID: The string ID of the Content Object.
Category: The string name of the category to which the object should be assigned.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID("FORMID");
oObject.AssignCategory("CategoryName");


This API will convert system variables in a given string. This is an overloaded method with the following possible declarations:
public virtual string ConvertSysVarsInString(string pString)
public virtual string ConvertSysVarsInString(string pString,
SysVarClass.Context pContext)
public virtual string ConvertSysVarsInString(string pString,
SysVarClass.IContextReadonly pContext)
Parameters
pString: The string containing optional SysVars to convert.
pContext: A System Variable Context object identifying the context of the variables
Returns
string: The converted string
Example
var oObject = Form.GetFormByFORMID("FORMID");
var NewString = oObject.ConvertSysVarsInString("Convert {EMBEDDED_SYSVAR}");


This API will copy the Content Object to a destination. This is an overloaded method with the following possible declarations:
public string CopyObject(string DestinationID,
ObjectType DestinationObjectType)
public string CopyObject(string DestinationID)
public string CopyObject(string DestinationID, string GroupName)
Parameters
DestinationID: The ID of the Content Object to copy into.
DestinationObjectType: The Type of the Content Object to copy into. (optional parameter)
GroupName: The Group name of the object
Returns
string: The ID of the new object, or “” if the copy failed.
Example
var oObject = Form.GetFormByFORMID("FORMID");
oObject.CopyObject("DestinationID", "GroupName");


This API call will delete a Content List instance object and all of its child objects. For instance, you can delete a form of process instance as well as all document attachments for those instances.
Parameters
none
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID("FORMID");
oObject.DeleteObjectAndChildren();


This API will get a specific attribute from the object’s meta data. This is an overloaded method with the following possible declarations:
public DataItem GetAttribute(string Category, string Attribute)
public static DataItem GetAttribute(bp BP, string ID, string Category,
string Attribute)
public DataItem GetAttribute(string pATTID)
public static DataItem GetAttribute(bp BP, string ID, string ATTID)
public DataItem GetAttribute(MetaCategory pCat, string Attribute)
public static DataItem GetAttribute(bp BP, string ID, MetaCategory Cat,
string Attribute)
Parameters
Category: The Category of the Attribute to retrieve
Attribute: The Attribute name to retrieve
BP: The Process Director BP Object
ID: The ID of the attribute to retrieve
pCat: The Meta Data Category object
Cat: The Meta Data Category object of the Attribute re retrieve
ATTID: The Attribute Id of the Attribute to retrieve
Returns
DataItem: The data corresponding to the Attribute
Example
var oObject = Project.GetProjectbyPRID(bp, "PRID");
var dataAtt = oObject.GetAttribute("Category 1.Category 2",
"Attribute Name");
var val = dataAtt.String;


This API will get a list of attributes from the object’s meta data. This is an overloaded method with the following possible declarations:
public List<NameValueEx> GetAttributes()
public static List<NameValueEx> GetAttributes(bp BP, string ID)
public List<NameValueEx> GetAttributes(MetaCategory pCat)
public static List<NameValueEx> GetAttributes(bp BP, string ID,
MetaCategory pCat)
public List<NameValueEx> GetAttributes(string pCat)
Parameters
BP: The Process Director BP Object
ID: The ID of the attribute to retrieve
pCat: The Meta Data Category object
Returns
list: The Name-Value pairs of each Attribute
Example
var oObject = Form.GetFormByFORMID("FORMID");
var atts = oObject.GetAttributes("Category 1");
foreach(var att in atts)
{
var name = att.Name;
var val = att.Value;
}


This API will create a list of all the children for the content object. This is an overloaded method with the following possible declarations:
Gets All Children:
public virtual List<ContentObject> GetChildren()
public static List<ContentObject> GetChildren(bp BP, string ParentID)
Gets children of specified eMapType:
public virtual List<ContentObject> GetChildren(bp.eMapType MapType)
public static List<ContentObject> GetChildren(bp BP,
string ParentID,
bp.eMapType MapType)
Gets children of specified ObjectType:
public virtual List<ContentObject> GetChildren(ObjectType ObjectType)
public static List<ContentObject> GetChildren(bp BP, string ParentID,
ObjectType ObjectType)
Gets children with a specified groupname:
public virtual List<ContentObject> GetChildren(string GroupName)
public static List<ContentObject> GetChildren(bp BP, string ParentID,
string GroupName)
public virtual List<ContentObject> GetChildren(ObjectType ObjectType,
string GroupName)
Gets children of specified ObjectType and eMapType:
public virtual List<ContentObject> GetChildren(ObjectType ObjectType,
bp.eMapType MapType,
string GroupName)
public static List<ContentObject> GetChildren(bp BP, string ParentID,
ObjectType ObjectType,
bp.eMapType MapType,
string GroupName)
Parameters
ObjectType: The optional type of objects to filter.
MapType: The optional map type of the objects to filter.
GroupName: The optional group name of the objects to filter.
ParentID: The optional ID of the parent object to filter
Returns
list<ContentObject>: A List of the ContentObject type.
Example
var childList = CurrentProject.GetChildren(ObjectType.Document);


This API will get an object by its path.
Parameters
BP: The Process Director BP Object.
PartitionID: The Partition ID or name.
PathName: The complete path to the object to return.
Returns
ContentObject: The actual object or null if not found.
Example
// Get the Process Timeline named “My Timeline” in the folder named "My Project"
// located in the "Partition1" partition.
var myTimeline = ContentObject.GetObjectByPathName(bp, "Partition1",
"/My Project/My Timeline");


This API will return the permissions of the object. This is an overloaded method with the following possible declarations:
public static List<PermObject> GetPermissions(bp BP, string ID)
public List<PermObject> GetPermissions()
Parameters
BP: The Process Director BP Object.
ID: The ID of the object from which to retrieve permissions.
Returns
List<PermObject>: The list of permission records for the selected object.
Example
var oObject = Form.GetFormByFORMID("FORMID");
var PermList = oObject.GetPermissions();


This API will return the the process associated with a content object. This method is useful when you know the ID of a content object, such as a Form, but don't know the process with which the form is associated. This method will return either a Workflow or Project (Process Timeline) object, or null if the string ID of the content object isn't found. This is an overloaded method with the following possible declarations:
public Process GetProcess()
public Process GetProcess(string idProc)
Parameters
idProc: The string ID of the content object for which you wish to return the associated process.
Returns
Workflow or Project (Process Timeline) object: The process object associated with the idProc used as the input parameter.
Example
If a content object is ised in a single process, you can return the process without passing any parameters. In the sample below, a form is identified, then used to return the process associated with the form:
var form = Form.GetFormByFORMINSTID(bp, "FORMINSTID");
var proc = form.GetProcess();
If your content object is used in multiple processes, you'll need to pass the ProcessID as a parameter:
var form = Form.GetFormByFORMINSTID(bp, "FORMINSTID");
var proc = form.GetProcess("PRID");


This API checks to see if an object has been assigned to a given Meta Data category. This is an overloaded method with the following possible declarations:
public bool IsCatAssigned(string Category)
public static bool IsCatAssigned(bp BP, string ID, string Category)
Parameters
BP: The Process Director BP Object.
ID: The ID of the ContentObject to check.
Category: The string name of the category to check.
Returns
boolean: True if the object is assigned to the given Meta Data Category.
Example
var oObject = Form.GetFormByFORMID("FORMID");
oObject.IsCatAssigned("CategoryName");


This API will move the Content Object to a new destination. This is an overloaded method with the following possible declarations:
public bool MoveObject(string DestinationID, ObjectType DestinationObjectType)
public bool MoveObject(string DestinationID)
public bool MoveObject(ContentObject oDest)
Parameters
DestinationID: The ID of the Content Object to move into.
DestinationObjectType: The Type of the Content Object to move into. (optional parameter)
oDest: The Content Object of the destination to which to move the object
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID("FORMID");
oObject.MoveObject("1234");


This API removes an object from a given Meta Data category. This is an overloaded method with the following possible declarations:
public bool RemoveCategory(string Category)
public static bool RemoveCategory(bp BP, string ID, string Category)
Parameters
BP: The Process Director BP Object.
ID: The ID of the ContentObject to check.
Category: The string name of the category to check.
Returns
boolean: True if the method succeeds.
Example
var oObject = Form.GetFormByFORMID("FORMID");
oObject.RemoveCategory("CategoryName");


This API will remove the Content Object from its parent. This is an overloaded method with the following possible declarations:
public bool RemoveObjectFromParent()
[Deprecated]
public bool RemoveObjectFromParent(ContentObject pParent)
public bool RemoveObjectFromParent(ContentObject pParent, bp.eMapType pMapType)
public bool RemoveObjectFromParent(string pParentID)
public bool RemoveObjectFromParent(string pParentID, bp.eMapType pMapType)
Parameters
pParent: The parent ContentObject.
eMapType : The relationship Map Type between the child and parent objects.
pParentID: The string ID of the parent object.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMINSTID(bp, "FORMINSTID");
oObject.RemoveObjectFromParent(pParentObject);


This API will remove all permissions for the object. Typically you'll then add permissions with the SetPermissions API. This is an overloaded method with the following possible declarations:
public bool RemovePermissions()
public static bool RemovePermissions(bp BP, string ID)
public bool RemovePermissions(Group group)
public bool RemovePermissions(User user)
public bool RemovePermissions(string ID)
Parameters
BP: The Process Director BP Object
ID: The ID of the object from which to remove permissions.
Group: The Group object from which to remove permissions.
User: The user object from which to remove permissions.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID(bp, "FORMID");
oObject.RemovePermissions(); // Remove all permissions to this object


This API will replicate all permissions for the object to all children of the object. This is an overloaded method with the following possible declarations:
public bool ReplicatePermsToChildren()
public static bool ReplicatePermsToChildren(bp BP, string ID)
Parameters
BP: The Process Director BP Object
ID: The ID of the object from which to remove permissions.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID(bp, "FORMID");
oObject.ReplicatePermsToChildren();


This API will replicate all permissions for the object to all children of the object. Additionally, if any of the children are form instances, the permissions will be replicated to their children as well. This is an overloaded method with the following possible declarations:
public bool ReplicatePermsToChildrenAndForms()
public static bool ReplicatePermsToChildrenAndForms(bp BP, string ID)
Parameters
BP: The Process Director BP Object
ID: The ID of the object from which to remove permissions.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID(bp, "FORMID");
oObject.ReplicatePermsToChildrenAndForms();


This API will set a specific attribute in the object’s Meta Data. This is an overloaded method with the following possible declarations:
public bool SetAttribute(string Category, string Attribute, string Value)
public bool SetAttribute(string Category, string Attribute, DataItem Value)
public static bool SetAttribute(bp BP, string ID, string Category,
string Attribute,
string Value)
public static bool SetAttribute(bp BP, string ID, string Category,
string Attribute,
DataItem Value)
public static bool SetAttribute(bp BP, string ID, string ATTID, string Value)
public static bool SetAttribute(bp BP, string ID, string ATTID, DataItem Value)
Parameters
BP: The Process Director BP Object
ID: The ID of the object from which to remove permissions.
Category: The Category of the Attribute to set.
Attribute: The Attribute name to set.
Value: The string or DataItem to assign to the Attribute.
ATTID: The ID of the attribute from which to remove permissions.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID(bp, "FORMID");
oObject.SetAttribute("Category 1.Category 2", "Attribute Name", "1");


This API will set a list of attributes in the object’s Meta Data. This is an overloaded method with the following possible declarations:
public bool SetAttributes(List<NameValue> Attributes)
public static bool SetAttributes(bp BP, string ID,
List<NameValue> Attributes)
public bool SetAttributes(List<NameValueEx> Attributes)
public static bool SetAttributes(bp BP, string ID,
List<NameValueEx> Attributes)
Parameters
BP: The Process Director BP Object
ID: The ID of the object from which to remove permissions.
Attributes: A list of NameValueEx objects where the Name specifies the Category.Attribute
name, and the Value specifies the value to set.
Returns
boolean: True if the operation succeeds.
Example
MetaCategory myCat = GetCategory(bp, "PID", "Category 1");
var oObject = Form.GetFormByFORMID(bp, "FORMID");
var atts = myCat.GetAttributes("Category 1.Category 1A");
foreach(var att in atts)
{
var name = att.Name;
var val = att.Value;
}
oObject.SetAttributes(atts);


This API will set a Meta Data attribute for an object based on the external name. This is an overloaded method with the following possible declarations:
public bool SetExternalAttribute(string ExternalName, string Value)
public static bool SetExternalAttribute(bp BP, string ID,
string ExternalName,
string Value)
Parameters
BP: The Process Director BP Object
ID: The ID of the object to which to set the attribute.
ExternalName: The string value for the external name to use for the attribute name.
Value: The string value of the Attribute to set.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID(bp, "FORMID");
oObject.SetExternalAttribute("ExternalName", "ValueToSet");


This API will set Meta Data attributes for an object based on a list of external names. This is an overloaded method with the following possible declarations:
public bool SetExternalAttributes(List<NameValue> MetaData)
public static bool SetExternalAttributes(bp BP, string ID,
List<NameValue> MetaData)
Parameters
BP: The Process Director BP Object
ID: The ID of the object to which to set the attributes.
MetaData: A list object consisting of Name/Value pairs.
Returns
boolean: True if the operation succeeds.
Example
List<NameValue> atts = new List<NameValue>();
atts.Add("Attr1");
atts.Add("Attr2");
var oObject = Form.GetFormByFORMID(bp, "FORMID");
oObject.SetExternalAttributes(atts);


This API will set the Meta Data categories and attributes for an object using an XML string. This is an overloaded method with the following possible declarations:
public bool SetMetaData(string MetaData)
public static bool SetMetaData(bp BP, string ID, string XML_Data)
Parameters
MetaData: The XML String containing the Meta Data information.
BP: The BP Logix environment.
ID: The ID of the object for which the Meta Data is to be set..
XML_Data: The XML String containing the Meta Data information.
Returns
boolean: True if the operation succeeds.
Example
var oObject = Form.GetFormByFORMID(bp, "FORMID");
//Make the XML String for the Meta Data
StringBuilder sb = new StringBuilder();
sb.Append("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
sb.Append("<META_DATA xmlns:xsi=");
sb.Append("\"http://www.w3.org/2001/XMLSchema-instance\"");
sb.Append("xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\"");
sb.Append("<INPUT_META_DATA>");
sb.Append("<ATTRIB_NAME>Cat 1.Cat 2.Attrib 1</ATTRIB_NAME>");
sb.Append("<META_VALUE>Value 1</META_VALUE>");
sb.Append("</INPUT_META_DATA>");
sb.Append("<INPUT_META_DATA>");
sb.Append("<ATTRIB_NAME>Cat 1.Cat 2.Attrib 2</ATTRIB_NAME>");
sb.Append("<META_VALUE>Value 2</META_VALUE>");
sb.Append("</INPUT_META_DATA>");
sb.Append("</META_DATA>");
//Set Meta Data
oObject.SetMetaData(sb.ToString());


This API will set permissions available on the object for a specific User or Group of Users. This is an overloaded method with the following possible declarations:
public bool SetPermissions(User GrantUser, bool PermView, bool PermModify,
bool PermDelete, bool PermRun)
public bool SetPermissions(Group GrantGroup, bool PermView, bool PermModify,
bool PermDelete, bool PermRun)
public bool SetPermissions(string GrantID, ObjectType GrantType,
bool PermView,
bool PermModify,
bool PermDelete, bool PermRun)
public bool SetPermissions(string Partition, string GrantID,
ObjectType GrantType, bool PermView,
bool PermModify, bool PermDelete, bool PermRun)
public static bool SetPermissions(bp BP, string ID, string PID,
string GrantID,
ObjectType GrantType,
bool PermView,
bool PermModify,
bool PermDelete, bool PermRun)
Parameters
User/Group: The User or Group for which to set the permissions on the object.
PermView: Whether or not the user will have View permission on the object.
PermModify: Whether or not the user will have Modify permission on the object.
PermDelete: Whether or not the user will have Delete permission on the object.
PermRun: Whether or not the user will have Run permission on the object.
BP: The Process Director BP Object
ID: The string ID of the Process Director object whose permissions should be set.
PID: The partition ID of the partition where the object resides.
GrantID: The string ID of the user/group for whom permissions should be added.
GrantType: The GrantType object of the permissions.
Returns
boolean: True if the operation succeeds.
Example
var user = User.GetUserByUserID(bp, "User 1");
var oObject = Form.GetFormByFORMID(bp, "FORMID");
// Grant “User 1” permission to view, modify, or run the object
// (but not to delete it)
oObject.SetPermissions(user, true, true, false, true);
// Grant the “Finance” group view permissions only
var group = Group.GetGroupByName(bp, "Finance");
oObject.SetPermissions(group, true, false, false, false);


This API will set permissions available on the object for a specific User or Group of Users.
public static bool SetPermissionsEx(bp BP, string ID,
string PID,
string GrantID,
ObjectType GrantType,
short PermView,
short PermModify,
short PermDelete,
short PermRun)
Parameters
BP: The Process Director BP Object
ID: The string ID of the Process Director object whose permissions should be set.
PID: The partition ID of the partition where the object resides.
GrantID: The string ID of the user/group for whom permissions should be added.
GrantType: The Value of the Perm.GrantType object.
PermView: Whether or not the user will have View permission on the object.
PermModify: Whether or not the user will have Modify permission on the object.
PermDelete: Whether or not the user will have Delete permission on the object.
PermRun: Whether or not the user will have Run permission on the object.
Returns
boolean: True if the operation succeeds.
Example
var granttype= TempPerm.GrantType;
var oObject = Form.GetFormByFORMID(bp, "FORMID");
// Grant “User 1” permission to view, modify, or run the object
// (but not to delete it)
oObject.SetPermissionsEx(bp, "IDValue", "PartitionID", "GrantID",
granttype, 1, 1, 0, 1);
Documentation Feedback and Questions
If you notice some way that this document can be improved, we're happy to hear your suggestions. Similarly, if you can't find an answer you're looking for, ask it via feedback. Simply click on the button below to provide us with your feedback or ask a question. Please remember, though, that not every issue can be addressed through documentation. So, if you have a specific technical issue with Process Director, please open a support ticket.