Mail address text attributes
Value resolver – Abstract
Purpose: Evaluates the singular or plural text attribute of an entity passed as input value identified via the selection for the Text type parameter and returns all non-empty text values ('Email addresses') as a string list.
The Mail address text attributes value resolver evaluates the singular or plural text attribute of an entity passed as input value that was identified via the selection for the Text type parameter (see Text type) and returns all non-empty text values (textValue field) as a list of strings.
►NOTE◄ Whether the individual text value meets the formal criteria for an e-mail address is not examined.
The input value expects an entity that is an attribute owner according to its type and supports text attributes. By default, this applies to all business transaction objects and – if supported – also to their line items (see example below).
If successful, the return value of the value resolver is a list of strings (string[]) containing all non-empty text values (textValue) of text attribute instances for the requested Text type.
If the 'Plural' option is unselected in the dynamic enumeration Text type definition for the selected Text type, then the attribute is considered a singular text attribute (see also Typed attribute resolver). Then a single text value is the maximum expected.
If the 'Plural' option is selected in the definition for the selected Text type in the dynamic enumeration Text type, then the attribute is considered a plural text attribute (see also Plural typed attribute resolver). Then multiple text values will be listed if necessary.
►NOTE◄ Even a single match is returned as an element of a list, so a value resolver (e.g. List item or Rule list resolver) may be needed to directly access the single value. However, this does not matter in the typical environment within a E-Mail event action, since strings or lists of strings are accepted there when addressing e-mails (in the 'Recipient', 'CC' and 'BCC' parameters).
The return value of the resolver, on the other hand, is 'No value' ($null) if at least one of the following conditions applies:
The input value is not an entity that can have text attributes.
The input value is a suitable type entity that does not have a text attribute instance that satisfies all of the following conditions:
The text attribute instance type (textType) matches the Text type selected in the Text type parameter.
The 'Text' (textValue) of the text attribute instance is not empty.
Configuration
In the Text type parameter, a single selection must be made based on the dynamic enumeration Text type. As shown in the image, the Auswahlfeld/Combobox element supports a search function. ►IMPORTANT◄ If Dynamische Aufzählungsfilter are applicable for the Text type enumeration in the context of a session, they also restrict the selection for the Text type in the course of configuration. In contrast, Dynamische Aufzählungsfilter have no effect on the evaluation of the value resolver at runtime. |
|
Example
Within Shipments, 'Service items' (items with the Line item type 'Service') are maintained in addition to the materials to be delivered to define assembly work required in connection with the delivery. In order to ensure that the delivery is carried out or accompanied by suitably qualified employees, these should be identified by specifying their e-mail address(es) when defining a 'Service item' and thereby assigned to the shipment. As shown in the following runtime example, the entry form for service items in the Assembly team section allows the entry of details for Service technicians (Email) in a plural text attribute (Text type RESOURCE_EMAIL).
All service technicians listed in 'Service items' are automatically informed by e-mail about any changes to the deadline or status of a shipment.
Runtime example:
In the example, resources are already allocated for two of the service items.
The technician 'Jay Sanford' is assigned several times.
Configuration:
The configuration for the E-Mail shown on the right is inserted within an event handling that reacts to all 'reportable' Shipments changes:
|
|
Runtime example:
With the shipment data shown above, for example, three e-mail addressees are identified for service technicians when an appointment is rescheduled.