Default language.

ARCreateCharMenu


Note

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.

Description

Creates a new character menu with the indicated name on the specified server.

Privileges

BMC Remedy AR System administrator.

Synopsis

#include "ar.h"
#include "arerrno.h"
#include "arextern.h"
#include "arstruct.h"

int ARCreateCharMenu(
ARControlStruct *control,
ARNameType name,
unsigned int refreshCode,
ARCharMenuStruct *menuDefn,
char *helpText,
ARAccessNameType owner,
char *changeDiary,
ARPropList *objPropList,
char b*objectModificationLogLabel,
char *taskName,
ARStatusList *status)

Input arguments

control

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 ARCreate* function creates a custom object that belongs to that group. If no group is specified, the function creates an origin object. To specify an overlay group, use the AR_SESS_CONTROL_PROP_DESIGN_OVERLAYGROUP variable of the ARSetSessionConfiguration function (see ARGetSessionConfiguration).

name

The name of the character menu to create. The names of all character menus on a given server must be unique.

refreshCode

A value that indicates when the menu is refreshed. This parameter enables you to balance menu consistency with performance.The [confluence_table-plus] macro is a standalone macro and it cannot be used inline. Click on this message for details.
 

menuDefn

The definition of the character menu.

helpText

The help text associated with the character menu. This text can be of any length. Specify NULL for this parameter if you do not want to associate help text with this object.

owner

The character menu owner. The owner defaults to the user performing the operation if you specify NULL for this parameter.

changeDiary

The initial change diary associated with the character menu. This text can be of any length. 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 associate change diary text with this object.

objPropList

A list of server object properties. If this parameter is set to NULL, a properties list with zero properties is associated with the character menu, and a list of zero properties is returned when an ARGetCharMenu is performed. See Server object properties.

objectModificationLogLabel

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.

Ripple actions

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:

  • ARCreateSchema
  • ARCreateMultipleFields
  • ARSetVUI
  • ARSetVUI
  • ARSetSchema

In this case, the objectModificationLogLabel value should be passed only to the last call, ARSetSchema, even though the user provides the label during the ARCreateSchema operation.

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

Return values

status

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.

See also

ARDeleteCharMenu, ARExpandCharMenu, ARGetCharMenu, ARGetListCharMenu, ARSetCharMenu. See FreeAR for: FreeARCharMenuStruct, FreeARStatusList, FreeARPropList.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*