White Paper TYPE ADOPTION IN xcp APPLICATIONS Adopting types from repository to xcp applications Abstract This white paper explains adopting types from repository, editing and using them in xcp applications. December 2013
Copyright 2013 EMC Corporation. All Rights Reserved. EMC believes the information in this publication is accurate as of its publication date. The information is subject to change without notice. The information in this publication is provided as is. EMC Corporation makes no representations or warranties of any kind with respect to the information in this publication, and specifically disclaims implied warranties of merchantability or fitness for a particular purpose. Use, copying, and distribution of any EMC software described in this publication requires an applicable software license. For the most up-to-date listing of EMC product names, see EMC Corporation Trademarks on EMC.com. VMware is a registered trademarks of VMware, Inc. in the United States and/or other jurisdictions. All other trademarks used herein are the property of their respective owners. Part Number h12702 2
Table of Contents Executive summary... 4 Audience... 4 Overview... 4 Adopting types to xcp 2.x Applications... 4 Editing and configuring Adopted Types... 9 The Runtime behavior... 12 References... 12 3
Executive summary This preliminary white paper provides detailed overview of adopting types to xcp applications. It explains adopting types from repository, editing, using them in Processes, creating pages and other required artifacts within the application, deploying them and runtime behavior of adopted type instances. Audience This white paper is intended for application designers who design applications using xcp Designer. It assumes that reader possess basic knowledge of xcp. Overview Type Adoption allows xcp 2.1 applications deployed in the Content Server to take advantage of the most important assets the content and type definitions in a repository. Using Type Adoption, xcp 2.1 app will read or write data instances not created through xcp clients but adopted in the xcp Designer. Similarly, new instances of adopted types created in xcp 2.x applications can be read or written through other clients like DA, Webtop, Taskspace etc. Thus, Type Adoption provides interoperability in between older Documentum Clients like xcp 1.x, Webtop, MyD and 2.x client applications in accessing data instances. Type Adoption should be considered when You already have a good xcp1.x application running but want to upgrade to D7 platform and build new apps using xcp 2.x for improved user experience with both xcp 1.x and 2.x sharing the data. Have to use the features in xcp2.x to fulfill the new business needs without any data model refactoring from xcp 1.x. Build new xcp 2.x application as replacement for 1.x application. Adopting types to xcp 2.x Applications Only the sub types of dm_sysobject, dm_document and dm_folder can be adopted by xcp application. Types are adopted by importing them from repository to xcp application. In this process to connect to repository, a Design-time Environment configuration is required. To adopt the types use the Adopt Data Type(s) option from Object Model tab. 4
Choosing Adopt Data Type(s) will prompt a wizard to adopt the types from repository to the application. This process starts with selecting Design-time Environment. 5
Choose the appropriate Design-time Environment from where types have to be adopted. Clicking on Next after choosing an appropriate Design-time Environment, will take to next step Import Data Type(s) to Target Project. Select the types to be adopted, the target project and click on Finish to complete the adopting. 6
Clicking on Finish button will show the confirmation dialogue Adopt Data type[s] Confimation on which types have been adopted successfully and not adopted. 7
Adopted types will be seen Object Models view according to their category. 8
It would create object models with label value that been provided during type creation. For example, if type loan_customer has been created with label Loan Customer (this value stored in label_text attribute of dmi_dd_common_info object for type loan_customer ) and when this type has been adopted to xcp Application, the object model will be created with Loan Customer as label and loan_customer as system name. If label is not provided during type creation, it would use the default label values set by Content Server. The default values are according to Documentum super type of the types. For sub types of dm_sysobject, it would be Sysobject. For sub types of dm_content, it would be Document. And for sub types for dm_folder, it would be Folder. When multiple types which don t have label values or same label values adopted at a time, error(s) might be shown in Problems tab of xcp Designer as multiple object model may have same label. In such instances, designer should change the object model label values in appropriate manner to fix the error. If a type which inherits from other types in repository is adopted, all of its super types will also be adopted by default. For example, if the type premium_customer inherited from type privilaged_customer which in turn inherited from type customer, adopting the type premium_customer would result in adopting its super types privilaged_customer and customer. Since xcp Designer doesn t support having DQL reserved words (mentioned in DQL Reference Manual) as attribute names for types, types which contains DQL reserved words as attribute names can t be adopted to xcp Applications unless attribute names are changed. The Documentum fundamental types dm_sysobject, dm_document and dm_folder cannot be adopted. Editing and configuring Adopted Types Once the types are adopted to the project, they are like any other types created in xcp Designer. They can be modified to add or remove attributes, relationships with other types can be created, and type fragments can be attached. Permission sets can be applied. An object model being created in xcp Designer can be inherited from an Adopted Object Model (type). Relationships can be created from adopted types to adopted types, adopted types to the regular types and regular types to adopted types. Picklists can be added to adopted types 9
And Business Events can be configured for Adopted types. Pages for create, update and view operations, object selectors, action flows, page fragments and context menus can be created. If Adopted Type being Content, Import actions can be configured 10
Adopted Types can be used in Processes as packages or attachments. Real Time, Full Text and Historical queries can be created for Adopted Types. Task List queries can be created with Adopted Type s attributes in Data Set if it is being used as package. Note: System Name of adopted type represents the actual type name from the repository and it can t be changed in the xcp application. xcp does not honor the entire data dictionary, which includes value assists, attribute label internationalization, constraints etc.. Deploying Adopted Types Adopted types deployed along with other object models to the repository on deploying the xcp Application to which they have been adopted. If the adopted type doesn t exist in target repository, it would create the type and publish it. If the adopted type already exists in the target repository, it alters the type and publishes it if there are any changes to it. Otherwise, type in the target repository remains unaltered. Like any other types created within xcp Designer all the rules of different Data Policies are hold good for Adopted Types as well. If Data Policies other than MINIMAL or MAINTAIN are used, all the existing instances will be deleted. It is always best practice to use MAINTAIN data policy when deploying to avoid data loss. From now on Business Events and Alerts will be triggered even if the instances of adopted type is modified outside of xcp client 11
The Runtime behavior Once the Adopted Types are deployed, the existing instances of Adopted Types will behave same as new instances created within or outside xcp clients. All the older instances will be retrieved along with newly created instance after the deployment of adopted types when a real time query is used. They can be viewed, edited and deleted. New instances can be created. Alerts, Business Events will be triggered on such operations if they are configured. Both old and new instances can be related with other object instances using relate action. They can be attached to Packages or Attachments during workflow actions References Documentum Content Server DQL Reference Manual Documentum System Object Reference Manual 12