Show TOC

Operation of the Binding EditorLocate this document in the navigation structure

Use

You are using the binding editor to define binding between two containers.

Features

The binding editor consists of two screen areas:

  • The top half of the screen displays the source container on the left hand side and the target container on the right hand side. It also contains fields that can be selected.

    This screen area is only displayed in the change mode if you have selected the Drag&Drop indicator using ( Personal Settings).

    You can for instance use the context menu for a container element to choose Select Compatible Elements. Elements in different containers that are compatible for assignment are highlighted in a different color.

  • The binding definitions that you can process are displayed in the lower screen area:

    • Binding definition from source container to target container (binding direction )

      The binding is executed at runtime before the associated action. You should only define one binding to the container elements of the target container for which the Import indicator is set.

    • Binding definition from target container to source container (binding direction )

      The binding is executed at runtime after the associated action. This binding is only available if the action can produce results that can be entered in the source container. You should only define one binding of container elements in the target container for which the Export indicator is set.

Binding Definition

A binding definition consists of one or more binding lines (binding instructions). A binding line consists of the following elements:

  • Expression for the binding source

  • Symbol for the binding instruction

  • Symbol for the binding direction

  • Expression for the binding target

Binding lines are executed in the binding editor in the order specified. If a container element is used again in a subsequent binding line as a target element, the subsequent binding line overwrites the result of the previous line.

Binding Instruction

The following types of binding instruction are available:

  • Expression Expression: Source and target are one expression respectively e. g. &Form.Issuer& &_WF_INITIATOR&

  • Start of the navigation path Container Next navigation step Container End of the navigation path: For transformation in which several elements in the source container are required simultaneously (e.g. data accumulation) or several elements in the target container are selected simultaneously

You can select both types of instruction any number of times in any order. The following table shows the pre-defined binding instructions. By implementing pre-defined interfaces, you can program your own operators for both types of binding instruction (see also: Programmed Binding).

Binding Instruction

Type

Description

Delete ( )

Start of the navigation path Expression Next navigation step Expression End of the navigation path

Deletes the content of the target expression.

Assign ( )

Start of the navigation path Expression Next navigation step Expression End of the navigation path

Assigns the content of the source expression to the target expression. Existing contents of the target expression are overwritten.

XSL Transformation ( )

Start of the navigation path Expression Next navigation step Expression End of the navigation path

Accesses the XSLT program for the source expression and assigns the result of the transformation to the target expression.

You can define and select your own XSLT programs. The full range of CALL TRANSFORMATION is supported (see also: SAP XSLT processor - Reference).

The transformation ID that you can use to perform format conversions is made available as standard.

Append to Tables ( )

Start of the navigation path Expression Next navigation step Expression End of the navigation path

Appends the content of the source expression to the multiline container element of the target expression.

Add to ( )

Start of the navigation path Expression Next navigation step Expression End of the navigation path

Adds the value of the source expression to the target expression (example of a programmed binding that has been implemented: CL_SWF_BND_TRANS_ADD_TO).

Subtract from ( )

Start of the navigation path Expression Next navigation step Expression End of the navigation path

Subtracts the value of the source expression from the target expression (example of a programmed binding that has been implemented: CL_SWF_BND_TRANS_SUBTRACT_FROM).

Transfer all Elements (Except System) ( )

Start of the navigation path Container Next navigation step Container End of the navigation path

Overwrites elements with the same name in the target container with elements from the source container.

Programmed Binding (BOR Container) ( )

Start of the navigation path Container Next navigation step Container End of the navigation path

Executes a function module that uses the BOR container, see also: Programmed Binding.

Programmed Binding (Container IF) ( )

Start of the navigation path Container Next navigation step Container End of the navigation path

Executes a function module that uses the container interface, see also: Programmed Binding.

Options for Binding Instructions

The following table shows the options that you can select according to the binding instruction involved:

Option

Description

Handle error as a warning

Suitable for optional binding instructions: If an error occurs, the workflow does not terminate but displays a warning.

Warnings are only displayed in the workflow log if you have selected the No logging restriction entry in the version-dependent basic workflow data ( ) on the Control tab page under Performance Optimization. However, this logging level setting can impair performance.

No action for initial source value

Only overwrites the target value if a new source value is available. If the source element still contains the initial value, the target value remains unchanged.

No action for blank source value

Only overwrites the target value if a source value is available. If the source element is blank, the target value remains unchanged.

Only overwrite blank values:

Only transfers the source value to the target element if the target element does not have a value. If the target element already has a value, this remains unchanged.

For structures: Assign sub-components with the same name

Only useful for structures: Overwrites sub-components with the same name in the target structure using components in the source structure.

Create elements that do not exist in the target container

If the source container contains elements that are not available in the target container, these elements are created in the target container.

Conventions for Expressions

  • Target expressions may not refer to attributes for a BOR object.

  • A target expression cannot contain a method call.

  • If the target expression references a structure, the source expression must also reference a structure.

  • If the source expression references a multiline container element, but the target expression references a single-line container element, the first row is transferred.

Additional conventions for expressions are described under Expressions: Functional Methods and Access to Multiline Table Elements.

Dynamic Parallel Processing

During binding from a workflow to a task container, a multiline source element can be processed dynamically in parallel (see also: Table-Controlled Dynamic Parallel Processing).

In the activity that is used for the dynamic, parallel processing, you must select the Multiline container element indicator on the Other tab page for the multiline element of the workflow container.

You indicate that the multiline source element in assigned to a single-line target element line-by-line in the binding editor. To do this, specify the source expression as follows:

& ()& <multiline_element>

Activities
  1. To define your personal settings for use of the binding editor, choose Personal Settings ( ).

    You can define the following:

    • Operation of the binding editor using Drag&Drop

    • Immediate syntax check of data lines for each entry

  2. Define the source and target expression and the binding instruction for each binding line.

    You can specify the source and target expression using one of the following methods:

    • Drag and Drop

      If you have defined operation using Drag&Drop, you can enter a container element from the top half of the screen in the required cell in the binding line.

    • Input help

      If you use the input help in an empty field of a binding row and an entry in another field of the binding row has already been made, the system highlights container elements with a suitable data type in color.

    • Direct entry

      You can enter constants directly.

    To define the binding instruction, click on the icon for the binding instruction, and select the binding instruction and the options required.

  3. Create new binding lines as required.

    If you have defined operation using Drag&Drop, you can enter a container element from a container in a container element for a different container to create a binding line.

  4. Assign binding lines in the sequence in which they are to be executed.