You can continue to use C APIs to customize your application, but C APIs are not enhanced to support new capabilities provided by Java APIs and REST APIs.
Updates the filter with the indicated name on the specified server. The changes are added to the server immediately and returned to users who request information about filters.
If you perform a set operation on an overlay and you provide values for an inherited grain, the values are ignored. Only values for extended or overwritten grains of the overlay are set.
BMC Remedy AR System administrator.
#include "ar.h" #include "arerrno.h" #include "arextern.h" #include "arstruct.h" int ARSetFilter( ARControlStruct *control, ARNameType name, ARNameType newName, unsigned int *order, ARWorkflowConnectStruct *workflowConnect, unsigned int *opSet, unsigned int *enable, ARQualifierStruct *query, ARFilterActionList *actionList, ARFilterActionList *elseList, char *helpText, ARAccessNameType owner, char *changeDiary, ARPropList *objPropList, unsigned int *errorFilterOptions, ARNameType errorFilterName, char *objectModificationLogLabel, ARStatusList *status)
The control record for the operation. It contains information about the user requesting the operation, where that operation is to be performed, and which session is used to perform it. The user and server fields are required.
If a valid overlay group is specified in the control record, the
ARSet* function operates on the object that belongs to that group. If no group is specified, the function operates on the origin object. To specify whether to use an object's real or resolved name in an operation and whether to perform the operation only on objects in a specified overlay group, use the
AR_SESS_CONTROL_PROP_DESIGN_OVERLAYGROUP variable of the
ARSetSessionConfiguration function (see ARSetSessionConfiguration).
The name of the filter to update.
The new name for the filter. The names of all filters on a given server must be unique. Specify
NULL for this parameter if you do not want to change the name of the filter.
A value between
1000 (inclusive) that determines the filter execution order. When multiple filters are associated with a form, the value associated with each filter determines the order in which they are processed (from lowest to highest). Specify
NULL for this parameter if you do not want to change the order.
The list of form names the filter is linked to. The filter must be associated with a single form or a list of forms that currently exists on the server. Specify
NULL for this parameter if you do not want to specify the form list. If the object is locked, you can append a form name to the list but you cannot remove a form name from the list.
A bitmask that indicates the form operations that trigger the filter.
Execute the filter on get operations (
Execute the filter on set operations (
Execute the filter on create operations (
Execute the filter on delete operations (
Execute the filter on merge operations (
NULL for this parameter if you do not want to change the operation set.
A flag to enable or disable this filter. A value of
0 disables the filter, causing its condition checks and associated actions not to be performed. A value of
1 enables the filter, causing its conditions to be checked for each form operation specified by the
opSet parameter. Specify
NULL for this parameter if you do not want to change this flag.
A qualification that determines whether the filter is executed. Assign an operation value of
AR_COND_OP_NONE) to execute the filter unconditionally. Specify
NULL for this parameter if you do not want to change the query.
The set of actions performed if the condition defined by the
query parameter is satisfied. You can specify from 1 to 25 actions in this list (limited by
NULL for this parameter if you do not want to change the action list.
The set of actions performed if the condition defined by the
query parameter is not satisfied. You can specify from 0 to 25 actions in this list (limited by
AR_MAX_ACTIONS). Specify a list with zero items to define no else actions. Specify
NULL for this parameter if you do not want to change the else list.
The help text associated with the filter. This text can be of any length. Specify
NULL for this parameter if you do not want to change the help text.
The owning user for the filter. Specify
NULL for this parameter if you do not want to change the owner.
The additional change diary text to associate with the filter. This text can be of any length and is appended at the end of any existing text. Existing change diary text cannot be deleted or changed. The server adds the user making the change and a time stamp when it saves the change diary. Specify
NULL for this parameter if you do not want to add to the change diary.
A list of server object properties. If this parameter is set to
NULL, no properties are set. See Server object properties.
The error handler options for the filter. Set to
AR_FILTER_ERRHANDLER_ENABLE to enable an error handler filter. Set to zero to disable. Specify
NULL for this parameter if you do not want to change error filter options.
The name of error handler filter for this filter. Specify an empty string for this parameter to remove an existing name. Specify
NULL if you do not want to change the error filter name.
The version control label that the API function must apply to the object. If the label name does not exist on the server, the function creates it.
Rename and Delete operations typically change multiple objects in addition to their primary target object. The Rename or Delete function must apply the version control label to all the objects that it affects.
Multiple API calls for a single user action
Some user actions trigger a sequence of API calls. In that situation, the last API call in the sequence applies the version control label to the object. Thus, clients that create forms (like BMC Remedy Developer Studio does) should provide the label only to the last call. For example, when a form is created, a client might issue these calls:
In this case, the
objectModificationLogLabel value should be passed only to the last call,
ARSetSchema, even though the user provides the label during the
Operations on label-related forms
Version control labels cannot be applied to these forms:
- AR System Version Control: Label
- AR System Version Control: Labeled Object
- AR System Version Control: Object Modification Log
A list of zero or more notes, warnings, or errors generated from a call to this function. For a description of all possible values, see Error checking.