Key Attributes, Attributes 
The key attributes are used to define the object key. In addition to the key attributes, you can also define other attributes. The SAP WebFlow Engine can access all public attributes of a class.
Classes that have implemented the IF_WORKFLOW interface are recognized as workflow-enabled in the Class Builder. You can define key attributes for these classes in the Class Builder (there is an additional column Key Attributes on the Attributes tab page). All key fields must be character-type fields (elementary types: CHAR, NUMC) and have a defined length. The total length allowed for all key fields is 32 characters. The length of the key field for the persistent display is 32 characters.
In the case of persistent ABAP objects you can use the GUID, which is generated automatically by the object manager when an instance is created.
Note
Another option is to define a key attribute of type Character-Guid (GUID32). Is this case only one key attribute is permitted. Applications that use RAW-Guids (GUID16) internally need to define a further key attribute of type GUID32 and assign the RAW-GUID to the key attribute within the CONSTRUCTOR.
In addition to all the other data types that the Class Builder supports, you can also define attributes with reference to an object from the Business Object Repository (BOR). To do this, you have to use the structure SWOTOBJID as the data type. The BOR object is determined using the corresponding value.
There is an implementation example in the demo class: CL_SWF_FORMABSENC.
To assign a BOR object instance to an attribute, use the corresponding BOR macros. Normally, this is implemented within the CONSTRUCTOR of a class.
Note
To use the BOR macros in a class, two INCLUDES must be included.
include <CNTN03>.
contains the local types
include <CNTN02>.
contains the BOR macros