The Add Collection Member template allows users to create an alternate language template to add a collection member. In other words, it is a user customized form of the existing "Add Collection Member" action template.
An example of using the finished Add Collection Member template in a language rule might be as follows:
Here is how this template would be defined:
Here are the possible settings on this screen:
Specifies the name of the vocabulary template. The name is used for irSDK access.
Name of the template to be displayed in the business language template list.
Menu group under which the template will be listed. The user can choose to add his template to an existing menu group or can create his own menu group.
The scope of the template availability can be limited to only the context of the previously selected entity by checking "Available in rules and calculations for this entity." The availability can also be extended to those rule elements which have a reference to the previously selected entity by checking "Available in rules and calculations for entities referencing this entity."
The placeholders created in business language are configured here. For a detailed description of placeholders refer to "Configuring Placeholders ".
Business language to be displayed in the business language editor. Placeholders can be added to the template by enclosing them within $ symbols.
Name of the collection to which the member is to be added.
The input to the column Member Name should be the name of the fields to be added to the collection and the Expression should be the value to be assigned to the field. Expression can be an actual value (e.g., 23456) or it can be a small calculation. Placeholders can also be used in the expression.
Entity Collection Options
A collection member may be either created new or created by copying from an entity field or specific entity collection member. Only if "Existing" is selected will the following options be applicable:
- By reference: Creates a new reference at the target location pointing to the source of the copy operation. This results in no new Entities being created.
- Shallow copy: Creates a new Entity at the target location, copying over all primitive Field values. However, child Entity Field and Entity Collection values keep a reference to the existing Entities in the source location. This results in one new Entity being created.
- Deep copy: Creates a new Entity at the target location, copying over all primitive Field values and creates new Entities for each child Entity Field and Entity Collection in the source location. If duplicate Entities are encountered, the copied Entity reference will be used. This results in a new Entity being created for each unique Entity in the source.
NOTE: When choosing to source the new collection member from an "Existing entity field" with "By reference" as the selected copy mode, there cannot be any field values specified in the "Member Values" section as all of the values will reference the specified source. However, if member values are defined along with the "Shallow copy" or "Deep copy" options, the copy operation will occur first and then member values will be set. Therefore, if values exist on the copied entity that are also defined in the member values grid, the member value defined will overwrite the copied data.
When using an entity collection member as the source in "Existing entity field", you must refer to the specific member of the collection by using the CollectionName(index). For an example of using an existing collection member, please see the Add Collection Member action topic. You can use an integer $placeholder$ value as the index.