Documentum- Quick look from Interview point of view

Category:

Past 2 -3 days i have been getting a number of requests to Post Documentum related Interview Questions and Answers, just was thinking Why do you need what you will be asked? If you/I have level of experience called for by job, shouldn’t we be able to answer the questions without studying in advance.
The Question Can be either straight forward right from Fundamentals to the Products you have worked on or The Interviewer can even ask character questions “How did you deal with a situation when you were in a project ,you were facing certainobject failure?” and etc..
These are few of the Questions I ask the prospective technical resources , remember Questions differ by Experience level:
What is Documentum?
What is a content server?
What is a docbase?
What is DFC?
What do you understand by WDK?
What is a docbroker/connection broker?
Explain how content server and docbase communicate with the database?
What is a DocApp?
What is the significance of connection pooling in Documentum?
Do you know how Documentum manage the passwords?
How can applications use Documentum?
What’s the difference between a component and a container?
What are a component’s main features?
What are the major lifecycle methods of a component?
Describe the Documentum object model?
Describe the Documentum security model?
List few native DCTM types you have commonly used?
What tools can be used to create custom object types?
Do you need a container to write a component?
What is the importance of a precondition? When is a precondition executed?
Describe the version management capabilities of Documentum?
What is the significance of i_chronicle_id?
What are implicit and symbolic labels in Documentum version management?
What are renditions?
What is app.xml and web.xml?
What is a workflow and how can we create workflows in Documentum?
What is a lifecycle and how can we create lifecycles?
What is the difference between a workflow and lifecycle?
Describe how you would use and leverage third-party data in Documentum?
Differentiate between role and group?
What do you know about UCF?
What are virtual documents?
What are the major difference between Documentum 5.3 and Documentum 6.x?
Scenario 1
Common list of Documentum questions asked based on individual’s experience
What is Documentum?
Documentum is enterprise content management software that provides management of content and attributes such as check-in, check-out, workflow and version management. Documentum provides management capabilities for all types of content including business documents, images, video, e-mail, Web pages, fixed content, XML-tagged documents, etc. The core of Documentum is a repository in which the content is stored securely under compliance rules.
Documentum also provides a suite of services which include document management, collaboration, search, content classification, input management, business process management (BPM), customer communication management, Web content management, digital asset management, forms processing, information rights management, compliance and archiving etc.
What is a content server?
Content Server is the foundation of Documentum’s content management system. It is a multi-featured product that provides access to the data and content files that constitute a docbase. It stores content files, their indexes and properties in the docbase. So it controls the access to the docbase. It controls the user’s access to objects in the repository by providing ACL. It is the core functionality that allows users to create, capture, manage, deliver and archive enterprise content.
What is a docbase?
The place where the information about a document is stored is called as Docbase. It’s the combination of the operating system (file system) and the database. The actual file (content) is stored in the file system and the information or attributes of the document are stored in Data base.
What is DFC?
DFC – Documentum Foundation Classes.
This is an object-oriented application programming interface (API) and framework for accessing, customizing and extending Documentum functionalities, implemented as a set of Java interfaces and implementation classes.
What do you understand by WDK?
WDK – Web Development Kit
It is a developer’s toolkit that facilitates the development of complex web based applications that connect to Documentum content repositories and Documentum content server. It contains large library of reusable components and controls to perform common Documentum management functionalities.
What is a docbroker/Connection broker?
Connection broker primarily know as docbroker provides repository connection information to the client application. Before installing a WDK application, one needs to obtain the names of the connection brokers to which the appropriate repositories project and the port numbers on which the connection brokers listen. The connection brokers used by WDK applications are defined in the dmcl.ini file on the application server host.
Explain how content server and docbase communicate with the database?
Documentum Content Server requires a properly configured database. The database tables store attribute values for each object in the repository.

Documentum provides a single repository for content and metadata. It uses an extensible object-oriented model to store content and metadata in the repository. Everything in a repository is stored as objects. To retrieve metadata, Document Query Language (DQL) is used. DQL is a superset of SQL that provides a single, unified query language for all the objects managed by Content Server. The repository owner (database user) account is the account used by Content Server to connect to the RDBMS.
What is a DocApp?
A DocApp is nothing but a packaging unit for Documentum objects. DocApps are used to package various elements for customization (such as custom Object Types, Lifecycles, etc.) so that they can be ported from one repository to another easily. Using Documentum Application Builder (DAB) you can create and package all your objects within a DocApp. A DocApp archive is a portable representation of a DocApp in a file on the file system. DocApps simplify developing and redeploying applications.
What is the significance of connection pooling in Documentum?
Connection pooling is an optional feature of Content Server that allows a primary repository session to be recycled and used by more than one user. Implementing connection pooling provides performance benefits for applications that execute frequent connections and disconnections for multiple users. When connection pooling is enabled in the DMCL, primary repository sessions are not closed when a user disconnects. Instead, they are held in a connection pool created by the DMCL. When another user requests a connection to the repository, the user is authenticated and given the free connection. When a user disconnects or a new user assumes ownership of a primary repository session, all sub-connections open in that session is closed.
Do you know how Documentum manages the passwords?
Documentum supports a variety of options for implementing user authentication:
1) In-line password: A user can be authenticated using an encrypted password that is stored in the user_password attribute of the user object.

2) LDAP directory server: If you use LDAP directory server, you have the following options:
Authenticate against the directory server directly, using a secure or a non-secure connection
Authenticate using an LDAP-enabled dm_check_password program
3) Custom password checking program: One can create a custom password checking program and set up the servers to call that program for user authentication. This option is particularly useful if you want to use Windows domain authentication for UNIX users.

4) Authentication plug-in: Documentum provides authentication plug-in which supports Single Sign-On and strong authentication. (Strong authentication is the use of authentication tokens such as smart cards or biometrics.)
How can applications use Documentum?
Custom applications can be developed using DFC (Documentum Foundation Classes) or WDK (Web Development Kit). DFC exposes Content Server API while WDK offers a framework and model for building a web application.However, there are numerous aspects and options when developing a custom application using Documentum. Custom workflows can model business processes and lifecycles can encapsulate business rules around documents. SBO’s (Service-based Business Objects) and TBO’s (Type-based Business Objects) can encapsulate business logic.
Documentum capabilities can also be encapsulated in Web Services opening up a vast array of possibilities. D6 (Documentum 6.0) offers DFS (Documentum Foundation Services) which includes some core services as well as tools for developing web services for Documentum. Then there are standard interfaces such as FTP and JDBC, which allow a Documentum repository to be accessed using these protocols. Specialized connectors and portlets offer additional alternatives. PIA (Primary Interlope Assembly) allows access from .NET platform
What’s the difference between a component and a container?
A component is composed of one or more JSP pages, supporting behaviour classes and an XML configuration file.

A container is a specialized component. Many components share common UI and state. For example, dialogs have a title, content area, and a button panel. Containers provide these common layout and state for multiple components.
Components can be used within more than one container, inheriting their UI and state from the container.
What are a component’s main features?
A component consists of
1) A component definition within a XML file that defines the following elements:
Unique . The optional component inheritance from a parent component definition is specified in the “extends” attribute.
element which defines the context in which the component definition is applied.
element containing the parameter used in the behaviour class.
element contains all presentation pages.
element specifying the behaviour class
element specifies the class that contains externalized strings for the component class and JSP pages. Properties files in the bundle can be localized.
2) JSP pages: Layout is defined in the JSP pages, using HTML and configurable Documentum tags. The definition defined in the element of the definition XML as stated above.
3) Component behaviour class: has the logic of the component. This is defined in the element of the XML file as stated above.
4) String resource file defined in the element of the XML configuration
What are the major lifecycle methods of a component in Documentum?
The major lifecycle methods of a component are listed below:
OnInit, onRender, onRenderEnd, onCommitChanges, onOk, onCancel etc.
What do you mean by Documentum object model?
The Documentum object model is used to represent content in the repository. The object model is hierarchical as in an object-oriented programming language. Child objects inherit all attributes and behaviors of the parent object.
Describe the Documentum security model?
OR How many level of ACL does exist?
Access Control lists (ACL) provides the security of Documentum objects. Every sysobject is assigned an ACL which has information about the users and groups access on that object. There are basic 7 different levels of permissions which can be assigned to a user or a group of users for an object. The following are the object level permissions:
Level
Permission
Description



1
None
No access is permitted.
2
Browse
The user can look at attribute values but not at associated content
3
Read
The user can read content but not update.
4
Relate
The user can attach an annotation to the object.
5
Version
The user can version the object.

Write
The user can write and update the object.
7
Delete
The user can delete the object.

Other than these basic object level permissions we have extended permission levels also in Documentum. The extended permissions are described below:
execute_proc : Allows the user to execute the procedure (if it is a procedure)
change_location: Allows the user to change the location of the document
change_state : Allows the user to change the state of the document using the document lifecycle
change_permit : Allows the user to change the object’s permissions
change_owner : Allows the user to change the owner of the object
List few native DCTM types you have commonly used?
The main native Object types in Documentum are:
1. dm_sysobject
2. dm_folder
3. dm_cabinet
4. dm_document
5. dm_user
6. dm_audittrail
What tools can be used to create custom object types?
DAB – Documentum Application Builder
DQL scripts
Do you need a container to write a component?
No, a container is not mandatory when writing a component. E.g. in Webtop the “Copy to Clipboard” feature doesn’t have a container.
What is a precondition and what is its importance? When is a precondition executed?
A precondition can be written for an action which determines whether the context is valid for the control or not. Accordingly it will then render an action control as enabled or disabled. They are however optional in action definition. If not mentioned the action will always execute.

Preconditions are called for each item in a list of component. If there are 10 items and 20 applicable actions, 200 preconditions will be executed before the list is rendered. So it can affect application performance if not used correctly.
Describe the version management capabilities of Documentum?
Versioning is an important content management feature of Documentum which helps in managing and tracking multiple versions of a document. The check-in / check-out option provides versioning capability in Documentum. The version label attribute is the heart of the version management system which is used by the content server to label multiple versions of the document. Each label can have an implicit label or a symbolic label. The implicit label is assigned by the server whereas the symbolic label is assigned by the user.
What is the significance of i_chronicle_id?
The i_chronicle_id attribute value is same for all the versions of a document. Each versioned object is assigned a unique “r_object_id” value but “i_chronicle_id” is the one attribute which is same for all versions of a document and binds all versioned objects together.
What are implicit and symbolic labels in Documentum version management?
Implicit Labels: The implicit version label is a numeric label. It is generally assigned by the server and is always stored in the first position of the r_version_label attribute. By default, the first time you save an object, the server sets the implicit version label to 1.0. Each time you check out the object and check it back in, the server creates a new version of the object and increments the implicit versions label (1.1, 1.2, 1.3, and so forth).
Symbolic Labels: A symbolic version label is either system or user-defined. Using symbolic version labels, you can provide labels that are meaningful to your application and work environment. Symbolic labels are stored starting in the second position (r_version_label [1]) in the r_version_label attribute.
What are renditions?
A rendition is a representation of a document that differs from the original document only in its format or some aspect of the format. It is an alternate copy of a file or an additional file that can be included with an object. For example, it may be a copy of an image in a different format or in a different resolution.
What is app.xml and web.xml?
App.xml: The app.xml is an application configuration file wherein one can configure the application wide behaviour. In Documentum each application layer (webtop, wdk, webcomponent etc…) has an app.xml file. It is made of application elements tag such as for failover, content_transfer, authentications, formats, plug-in, listeners etc. To inherit and override settings in another application layer, the application definition can extend an application definition in another layer.
Web.xml: The web.xml file is a Web Application Deployment Descriptor for a web application. The web.xml file provides configuration and deployment information for the Web components that comprise a Web application. Examples of Web components are servlet parameters, servlet and Java Server Pages (JSP) definitions, and Uniform Resource Locators (URL) mappings.
What is a workflow and how can we create workflows in Documentum?
A workflow is a process that electronically passes documents and instructions from user to user. A workflow automates the process, ensuring that the right file goes to the right people in the right order.
Workflow tools: used to create the workflow definition called the workflow template are:
1) Workflow Manager
2) Business Process Manager
What is a lifecycle and how can we create lifecycles?
A document lifecycle is a sequence of states a file goes through between its creation and expiration. When you create a file, the system assigns a document lifecycle to the file and puts the file into the first state in the lifecycle. Typical lifecycle states include WIP (Work In Progress), indicating a document is in its draft phase, and Staging, indicating a document is complete and ready for approvals.
What is the difference between a workflow and lifecycle?
Lifecycles and workflows are tools for enforcing business rules within Documentum.

A lifecycle is a sequence of a file going between its creation and expiration states. Typical lifecycle states include Draft, Work in Progress, Approved, released etc. Thus the focus of the lifecycle is an object.A workflow represents a network of activities that electronically passes documents and instructions from user to user. It automates the process ensuring the correct flow of work in a system. For example, an approval workflow can take a document from the author who created the document to an editor for review and lastly a manager for approval. Thus the workflow process may result in changing lifecycle states of the document.
Describe how you would use and leverage third-party data in Documentum?
The third party data from an external table can be accessed from Documentum docbase with the help of Register tables. One can register any external table in Documentum and can thereby access the data residing in it as simply as it is residing in a Documentum docbase. To register an external table in Documentum we use the following DQL:
DQL> “Register table dm_dbo.table_name (columname datatype)”

The above query registers the table in documentum database and as known this will create an object of type “dm_registered”.
Differentiate between role and group?
A group in Documentum is a convenient way of collecting all users with the same permission level. A group can thereby facilitate managing permissions (assigning ACL’s), assigning a task in a group work basket in a workflow, as an owner allowing all members of a group to have ownership for the document. Thus groups are mainly used for Object level permissions.
Roles are mainly used for providing function permissions. They are basically a special type of groups. It is created by setting the group_class attribute to role and the group_name attribute to the role name.
What do you know about UCF?
UCF – Unified Content Facilities
It is a lightweight applet that is responsible for transferring content between the content server, application server and the client machine during operations such as check-in, checkout, import etc. UCF is a Java-based client application that is installed at run-time. Since WDK application uses UCF content transfer it downloads a lightweight applet to the browser when the client uses the Documentum operations for the first time.
What are virtual documents?
A virtual document is a document that contains components or children documents. It is composed of other components, each component being an individual object. The dmr_containtment object stores information about each individual component of a virtual document.

Virtual documents are used mainly for the following scenarios:
1) When there are multiple authors of a document, virtual document creates individual component providing owner, security and other characteristics for the document.
2) Virtual documents are useful in managing multiple file formats For E.g. if there are sub attachments like an excel sheet and a presentation attached to some word document. In this case a virtual document creates three heterogeneous file formats keeping a single logical document.
3) Virtual documents are useful when order of the children matters. By default the ordering depends on adding or removing sequence of the components. But it can also be done manually.
What are the major difference in Documentum 5.3 and Documentum 6.x?
Following are some of the major features introduced in Documentum 6.x which were not present in 5.3
- Webtop performance improved by reducing the amount of refreshes and by making better utilization of the AJAX framework

- Documentum functionality presented as service in 6.x (Documentum Foundation Services i.e. DFS)
- Introducing Documentum Composer – which Supplies an Eclipse-based platform for Documentum tools, allowing you to configure application elements such as workflow templates, lifecycle definitions, security settings, aspects, and object types

- Introduces Aspects – new member in BOF family. Aspects are a mechanism for adding behavior and/or attributes to a Documentum object instance (and not object type) without changing its type definition
- XML Store as the underlying architecture for metadata and Web 2.0 content types in D6

- In the Documentum 6.5 release, the DocApp was migrated to the new Documentum Archive (DAR) format, which is compatible with Eclipse‑based Documentum Composer development tool
- Unification of dfc.properties and dmcl.ini file. The dfc.properties file replaces dmcl.ini file to define behavioural preferences for client and application

- New DFC tracing capabilities and configuration. Tracing is now controlled by entries in dfc.properties rather than log4j file.
Scenario 1
A document named JohnCoverLetter.doc is linked to two folders: /Letters/Candidates/John and /HR/Communications. An HR admin uses Webtop to delete the folder /Letters/Candidates/John and chooses to delete all the subfolders and objects. When this operation completes what happens to /HR/Communications/JohnCoverLetter.doc?
Answer: The document will still be there. The document is only unlinked from /Letters/Candidates/John before that folder is deleted.
Common list of Documentum questions asked based on individual’s experience
The following questions can be asked. The answers for these questions need to be prepared by the individual based on the experience.

Quest: Give us a brief introduction about yourself, highlighting your strong areas?
Quest: What all Documentum clients have you worked on? Tell us about your Documentum experience?

Quest: Questions may be asked on each Documentum tool you mention in the above question.
Quest: Have you worked on any Webtop customization? What Webtop components did you customize?

Quest: Describe the customization which you feel was the toughest among all?
Based on your answer, there can be further questions related to Documentum basics of Webtop customization.
Quest: Can you tell me some of the DQL commands you’ve commonly used?
Quest: Have you done any migration kind of work? If yes, describe.
Quest: Have you worked with Docapps? If yes, question related to it.
Quest: Did you design a workflow? How did you do it?
Quest: Some basic questions on JAVA can be asked just to test the fundamentals of java like for e.g.
Mention few characteristics of Object oriented programming?
What is difference between “Final”, “Finally” and “Finalize”?
What are the various access modifiers available in java? Explain them.
What is the purpose of abstract class?
What is the difference between interface and abstract class?
Quest: Have you worked on UNIX environment? If the answer is yes, there may be questions on some commonly used UNIX commands.

You can also get a bunch of tips and foundations certification exam practice questions at dm_cram.

Upgrading Documentum Environment from 5.2 to 6.5

1

Category:

The process of upgrading Documentum Content Server from 5.2.5 SP2 to 6.5 SP2 can be divided in two steps:
a) Upgrading 5.2.5 SP2 to 5.3 SP5
b) Upgrading the 5.3 SP5 to 6.5 SP2
Part A: Upgrading 5.2.5 SP2 to 5.3 SP5
Following are the steps for the upgrading Documentum environment from 5.2.5 SP2 to 5.3 SP5:
Before upgrading the Documentum content server the database needs to be upgraded from Oracle 8i to Oracle 10g. Before upgrading the Oracle 10g take the db backup and restore them once oracle is upgraded.
Now install the Documentum 5.3 SP5 on the same location where 5.2.5 SP2 is located. Here while installing 5.3 SP5 it will check whether older version of Documentum content server is installed. Since already Documentum is installed it will ask whether to proceed with upgrading the content server or not. Click OK to continue.

The remaining installation steps are similar to the normal content server installation.
3. Now the content server has been upgraded to 5.3 SP5.
4. Now docbroker, docbase needs to be upgraded.
Run the server configuration to upgrade the docbroker and docbase respectively. Check the two check boxes as shown in the following screen shot to upgrade the docbroker and docbases.

5. First docbroker needs to be upgraded. Click on the upgrade docbroker option to upgrade the docbroker.

A confirmation dialog box will pop up informing about upgrading the connection broker. Click on OK to proceed.

6. Once the docbroker is upgraded, docbase needs to be upgraded. Select continue with server configuration option to upgrade the docbase.

7. Select upgrade the existing repository option to upgrade the docbase.

A confirmation dialog box will pop up informing about upgrading the connection broker. Click on OK to proceed.

8. Once the dobase is upgraded, restart the Documentum server, connection broker and docbase. Test the connectivity through da and webtop.
9. Check all the existing docapps are functioning as they were in the previous environment.
Part B: Upgrading 5.3 SP5 to 6.5 SP2
The second part of the upgrade process involves upgrading from 5.3 SP5to 6.5 SP2.
Following are the steps for upgrading Documentum environment from 5.3 SP5 to 6.5 SP2:
Assuming Documentum 5.3 SP5 is installed on windows 2003 server with database as Oracle 10g.
1. Now install the Documentum 6.5 SP2 on the same location where 5.3 SP5 is located. Here while installing 6.5 SP2 it will check whether older version of Documentum content server is installed. Since already Documentum is installed it will ask whether to proceed with upgrading the content server or not. Click OK to continue.

The remaining installation steps are similar to the normal content server installation.
2. Now the content server has been upgraded to 6.5 SP2.
3. Now docbroker, docbase needs to be upgraded.
4. Run the server configuration to upgrade the docbroker and docbase respectively. Check the two check boxes as shown in the following screen shot to upgrade the docbroker and docbases.

5. First docbroker needs to be upgraded. Click on the upgrade docbroker option to upgrade the docbroker.

A confirmation dialog box will pop up informing about upgrading the connection broker. Click on OK to proceed.

6. Once the docbroker is upgraded, docbase needs to be upgraded. Select continue with server configuration option to upgrade the docbase.

7. Select upgrade the existing repository option to upgrade the docbase.

A confirmation dialog box will pop up informing about upgrading the connection broker. Click on OK to proceed.

8. Once the dobase is upgraded, restart the Documentum server, connection broker and docbase. Test the connectivity through da and webtop.
9. Check all the existing docapps are functioning as they were in the previous environment.

Alias Sets and Permission Sets

0

Category:

What is Alias Set?
An alias set is simply a list of aliases (like “reviewer” or “supervisor”) and the values that they resolve to. Whenever an object is referenced the permission set applied on it will be taken and if this set refers to an alias set then the alias value will be resolved and applied on the object and access will be restricted based on it.
Please Note in some circumstances you may assign an empty alias value and let the client application prompt the user for a value when it is needed.
Alias Sets are an important part of a complex Documentum system’s architecture, providing a level of abstraction that can significantly reduce the effort needed to administer the Docbase. Alias sets remove the need to hard-code the names of users, groups, locations, and permission sets throughout your application and instead provide a means for setting these values dynamically as your personnel changes and your business processes evolve.
What are Permission Sets?
Access Control Lists (s) [ACLs] are Documentum’s method of restricting access to important documents and folders. ACLs control Documentum’s security layer, one of the most flexible and powerful security schemes around. The permission can also be applied on workflow access and lifecycle application also.
Access control lists are stored as persistent objects in the Docbase. Although ACLs are persistent objects having an object ID, they are not SysObjects. Version cannot be created for. If modification is done an, the server either overwrites with the changes or copies the changes the copy. What option it chooses depends on whether the directly to make the changes or reference an object that uses the.
Some Uses can be:
You can assign seven different levels of access to your documents in the system
You can assign access to individual users or to groups of users
Users can create their own private s that only they can use
System Admins can create System-Wide s that can be used by everyone
Extended Permissions let you really tweak what a user can do to an object
Different folders can have different ACLs based on requirement irrespective of their hierarchy.
This contains information about which users and groups have access to the document, and what level of access each has. When a user attempts to access an object, the Documentum Server looks in to determine which groups have access. It then looks in these groups to determine if the user is in any of the groups. It determines the user’s access level by awarding the user the highest level of access taking into account all the groups that the user is a member of.
Please Note even if you explicitly assign NONE access to a user, if they are also in a group that has READ access, the user will have READ access to the object. Always the individual privilege will be overridden by the group privilege.
Now does the Security feature Works in Documentum:
When an object is applied with some permission set then corresponding entry will be made in the backend with the reference to the applied ACL. Now when an object is accessed after that if the ACL is referring to any alias set then first the alias is converted in to actual value and from where it map’s the current accessing user’s access and provides access based on the ACL entries for that user to that specific Object that is being currently accessed. Because of this Documentum has provided wide variety for the application of security across the System. It can be like a person who is an administrator of one cabinet will have max permit of delete in those folders and cabinets where as in the other folders and cabinets and documents that are present in the system he will be having normal read permission or different based on the requirement.

User Management using Documentum Administrator

0

Category:

Documentum Administrator is the Web-based tool for administering Content Server. By Documentum Administrator all the administrative tasks for a single installation or a distributed enterprise can be performed from one location.
One of the administrative tasks of Documentum Administrator is User Management. To access a Docbase, a person must be defined as a user in that Docbase.
The Administration/User Management displays a list of users in the current Docbase. Search for users can be done by their user name in the Docbase, user OS name (name on the operating system), or default group.
How to locate users in Docbase
1. Connect to the Docbase where we want to locate a particular user.
2. In the left-hand pane, click Administration.
3. Click User Management.
4. Click Users.
5. To search by user name, user OS name, or default group, type in the information and click Go
How to create new users
One must have Sysadmin or Superuser privileges to create users.
1. Connect to the Docbase where we want to create new users.
2. Click Administration –> User Management.
3. Click File –> New –> User. (Check Right Hand Side)
4. Indicate whether the user’s state is active or inactive. An active user can connect to a
Docbase whereas an inactive user cannot.
5. In the Name field, type the user’s name.
6. Select a User Source from the drop-down list.
UNIX Only: Select this for the default UNIX user authentication.
Domain Only: Select this if the Docbase has Windows domain authentication enabled and the user must be authenticated against a domain.
UNIX first: Select this if the Docbase has Windows domain authentication enabled and the user must be authenticated first against UNIX, then against a domain.
Domain First: Select this if the Docbase has Windows domain authentication enabled and the user must be authenticated first against a domain, then against UNIX.
LDAP: Select this if users are authenticated against an LDAP server.
7. In the E-Mail Address field, type the user’s email address. This is the address to which
notifications are sent for workflow tasks and registered events.
8. In the User OS Name field, type the user’s operating system user name. This is used by the
user to login to the docbase.
9. In the Windows Domain field, type the user’s Windows domain.
10. Select a home Docbase for the user.
11. Designate the user’s default folder which is the default storage place for any object the user creates. To use an existing Docbase folder, click Choose existing folder and to create a folder with the user’s name, click Choose/Create folder with user name.
12. Click Select Group and select a default group for the user.
13. Click Select Permission Set and select a default permission set for the user.
14. Select the user’s privileges from the drop-down list.
User privileges authorize certain users to perform activities that are required to administer and maintain the system. The privilege levels are:
None
Create Type
Create Cabinet
Create Cabinet and Type
Create Group
Create Group and Type
Create Group and Cabinet
Create Group, Cabinet, and Type
System Administrator
Superuser
15. Select the user’s client capability from the drop-down list.
There are four types of users:
Consumer
Contributor
Coordinator
System Administrator
16. Click Finish and new user is created.
How to delete users
We can remove users from the Docbase, but Documentum strongly recommends making users inactive rather than deleting them from the Docbase.
When a user is deleted, the server does not remove the user’s name from objects in the Docbase such as groups and ACLs. Thus when we delete a user, we must also remove or change all references to that user in objects in the Docbase.

Renaming Users Using Documentum Administrator

1

Category:

While supporting Documentum, there can be a complex situation where we have to rename the user and reassign all objects where user was the owner or a participant to the new name. Following are the list of objects which needs to be changed.
ACL (Active control List)
Alias Set
Sysobjects
Workflow and related objects
Routers
Activities
Workflow
Workitem
dmi_queue_item
Groups
dm_registered
dm_type
dmi_type_info
All these things except last 3 can be changed at one shot using “Reassign” tool of Documentum Administrator. The last 3 items needs to be reassigned manually. The process for using reassign tool is as in below.
Process
The process which can be used to rename the user is described in below flowchart. It is a two step process. In step1, we will analyze the effects of renaming the user.

Step-1
In step2, we will go ahead and rename the user.

Step-2

Changing Documentum’s Installation Owner

0

Category:

When initially installing Documentum, the installation owner is set to the logged-in user that performs the Documentum installation. It is preferable to install Documentum and never change the installation owner. However, sometimes company policy dictates that the original installation must be changed. Reasons for the change may be that the user name does not conform to a new naming policy or that originally the user was not a domain user but now should be.Changing the installation owner involves changes to both the operating system and the docbase configuration. This is not a minor change within Documentum, so upfront planning and coordination between the Documentum System Administrator and Infrastructure Team is required.
To get the most from this article, you should already have:
A detailed knowledge of Documentum Content Server
A detailed knowledge of your company’s implementation of Documentum
A detailed knowledge of Windows 2000 Operating System
For purpose of this document, we are going to refer to the following users:
Original Installation Owner:
username = “dmadmin”
password = “dmadmin”
domain = “it”
New Installation Owner:
username = “new_dmadmin”
password = “new_dmadmin”
domain = “dctm”
How Documentum uses the installation owner ?
The Documentum installation owner is the operating system user that owns the server executable and other related files along with the OS process when the server is running. The installation owner is originally determined when the server is installed; it is the logged-in user that performed the Documentum installation. This user is given the following privileges:
Operating System:
‘Log On As’ rights to start Documentum Services such as Docbase, Docbroker, Java Method Server and other installed Documentum products (i.e. Site Caching Services).
Permission to change the Content Server configuration (i.e. upgrade, create, and delete docbases)
Folder level permission to view data, configuration, and many log files located under the %DOCUMENTUM_HOME% directory.
Docbase & Content Server:
Superuser and System Administrator rights
Assignment to administrator (Web Publisher), docu, and admingroup groups
Set as the r_install_owner value in the dm_server_config object.
Set as the operating system user to run several Administrative jobs such as dm_DataDictionaryPublisher and dm_FulltextMgr
Preparing to Make the Change
Preparation is an important step when making any major change within your Documentum environment. The following are steps recommended to make your life easier when updating the installation owner.
Determine best approach for changing the installation owner. The three documented approaches are:
Minimal Impact - Update only the operating system user and the user_os_name of the docbase user
Medium Impact - Create a new user in the docbase to be the installation owner while letting the old installation owner continue to own any existing objects
Largest Impact - Create a new user in the docbase to be the installation owner and reassign the previous installation owner’s objects to the new user.
Communicate and Make a Plan – Have your team ready and ensure everyone is aware of the plan. Communication is an important factor for success. Ensuring everyone is aware of their role will help make the change go smoothly.
TEST – Set up a test docbase to test updating the installation owner prior to making any change in a Production environment
Purge all old log files – Changing the installation owner requires updating permissions on Documentum data and log files. Reducing the amount of unneeded data will greatly speed up the process. This is especially important if you will be following Approach 3
Run the Consistency Checker – This report gives you a list of bad data within your system. Cleaning up inconsistent data before making the change will speed up the process and in the end make your life easier.
Back up all environments – Before performing any major change within Documentum you should ALWAYS back up your environment. This is a System Administration best practice. Work with your database administrators and infrastructure team to back up both the content server files and the database.
Set up the new installation user
Add the new installation user to the Administrator group on the Windows 2000 machine
Set the user to act as part of the operating system on the Windows 2000 machine. This setting can be found under Control Panel\Administrative Tools\Local Security Settings\Local Policies\User Rights Assignment\Act as part of the operating system
Update permission on all folders, subfolders and files under %DOCUMENTUM_HOME%> to remove the old installation owner and add new installation owner with full control
Approach 1: Updating only the installation user OS name
The simplest way to change the installation owner is to change the existing docbase user’s user_os_name/user_domain. This is the recommended solution in most cases.
Pros
Simple way to change the installation owner. This solution does not require updating Documentum objects therefore it reduces the risk of error and amount of work required with large Docbases.
Cons
The user_name within Documentum remains the same therefore the previous installation owner name will appear as the display name within Documentum.
Steps
Log into Documentum as an administrator
Update the current Documentum installation user’s user_os_name to the new installation owner: update dm_user object set user_os_name = ‘new_dmadmin’, set user_domain = ‘dctm’ where user_name = ‘dmadmin’;
Log onto the Windows 2000 server as current installation owner
Stop Services for all Documentum services (i.e. Docbases, DocBroker, Java Method Server, Site Caching Services)
Edit the install_owner and user_auth_target parameters in the server.ini file to reference the new installation owner and domain for each Docbase in the installation. The server.ini file is located in %DOCUMENTUM_HOME%\dba\config\docbase_name\server.ini or it can be accessed through the Documentum Server Manager.
Within Windows Explorer, change permission to give the new installation user full control on the all directories, subdirectories and files under the Content Server installation root directory (%DOCUMENTUM_HOME%). To update permission within Explorer:
Select the directory and right click to display a menu; choose Properties from the menu
Select the Security tab on the Properties dialog box
Select ‘Add’ to add a new user; select the new installation owner
Check Allow for Full Control
Remove the previous installation owner from the list of users with permission on the directory; Click Ok
Many subfolders and files under %DOCUMENTUM_HOME% are not set out of box with the allow inheritable permissions from parent to propagate to this object checked. Therefore you cannot assume that a subfolder or file is inheriting permission from its parent and you must ensure that you update the permission on ALL files and subfolders located under %DOCUMENTUM_HOME%. %DOCUMENTUM_HOME% subfolders and files that need to be update because they are not inheriting permission from its parent include but may not be limited to: \data; \data\[docbase_name]\’all subfolders’; \dba; \dba\auth; \dba\config\[docbase name]\dbpasswd.txt; \dba\config\[docbase name]\webcache.ini; \dba\config\[docbase name]\webcache.ini.old; \dba\log\’subfolders’; \dba\secure; \dba\secure\aek.key; \fulltext; \product; \share; \share\data\common\’subfolders’; \share\data\events\’subfolders’; \share\temp\replicate\’subfolders’; \share\temp\dm_ca_store\’subfolders’
Note: If your content storage directories are not located under the %DOCUMENTUM_HOME%\data directory, change the permissions on each content storage directory as well.
Edit the Windows Registry with new installation owner:
Update HKEY_LOCAL_MACHINE\SOFTWARE\Documentum\Server\version_no
Change the value of DM_DMADMIN_USER to the new installation owner user name
Change the value of DM_DMADMIN_DOMAIN to the new installation owner user domain
Set up the appropriate start-up information for Documentum Services
Choose Control Panel -> Administrative Tools -> Services
Select Documentum Services (i.e Documentum Docbase docbase_name, Documentum Docbroker, Documentum Java Method Server, Documentum SCS_Source)
Right click on Service and select Properties
On the Log on Tab, enter the new installation name and password under Log On As: This Account
Move any Documentum-related Programs in start menu (C:\Documents and Settings\old_user_name\Start Menu) to the new installation owner
Restart Windows 2000 Server; Log in as the new installation owner
Start the Docbases; View logs to check for errors
Approach 2: Creating a new Documentum installation user without Object Reassignment
This procedure is recommended if your policies require that the docbase user’s user_name be changed but do not requite that existing objects be assigned to the new user.
Pros
The user_name within Documentum is updated to the new installation owner therefore it will appear as the display name within Documentum (similar to how it would appear if the docbase had been installed originally as this user).
Cons
The old installation user remains within the docbase. However, if the old operating system user has been removed no one will be able to log in as this user
Tasks that were previously assigned to the old installation owner will not be accesible
Steps
Log onto the Windows 2000 server as current installation owner
Stop Services for all Docbases and the DocBroker.
Edit the install_owner and user_auth_target parameters in the server.ini file to reference the new installation owner and domain for each Docbase in the installation. The server.ini file is located in %DOCUMENTUM_HOME%\dba\config\docbase_name\server.ini or it can be accessed through the Documentum Server Manager.
Within Windows Explorer, change permission to give the new installation user full control on the all directories, subdirectories and files under the Content Server installation root directory (%DOCUMENTUM_HOME%). To update permission within Explorer:
Select the directory and right click to display a menu; choose Properties from the menu
Select the Security tab on the Properties dialog box
Select ‘Add’ to add a new user; select the new installation owner
Check Allow for Full Control
Remove the previous installation owner from the list of users with permission on the directory; Click Ok
Many subfolders and files under %DOCUMENTUM_HOME% are not set out of box with the allow inheritable permissions from parent to propagate to this object checked. Therefore you cannot assume that a subfolder or file is inheriting permission from its parent and you must ensure that you update the permission on ALL files and subfolders located under %DOCUMENTUM_HOME%. %DOCUMENTUM_HOME% subfolders and files that need to be update because they are not inheriting permission from its parent include but may not be limited to: \data; \data\[docbase_name]\’all subfolders’; \dba; \dba\auth; \dba\config\[docbase name]\dbpasswd.txt; \dba\config\[docbase name]\webcache.ini; \dba\config\[docbase name]\webcache.ini.old; \dba\log\’subfolders’; \dba\secure; \dba\secure\aek.key; \fulltext; \product; \share; \share\data\common\’subfolders’; \share\data\events\’subfolders’; \share\temp\replicate\’subfolders’; \share\temp\dm_ca_store\’subfolders’
Note: If your content storage directories are not located under the %DOCUMENTUM_HOME%\data directory, change the permissions on each content storage directory as well.
Edit the Windows Registry with new installation owner:
Update HKEY_LOCAL_MACHINE\SOFTWARE\Documentum\Server\version_no
Change the value of DM_DMADMIN_USER to the new installation owner user name
Change the value of DM_DMADMIN_DOMAIN to the new installation owner user domain
Update – HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DmServerdocbase_name
Change the -install_owner parameter in the value for ImagePath to the new installation owner user name
Set up the appropriate start-up information for Documentum Services
Choose Control Panel -> Administrative Tools -> Services
Select Documentum Services (i.e Documentum Docbase docbase_name, Documentum Docbroker, Documentum Java Method Server, Documentum SCS_Source)
Right click on Service and select Properties
On the Log on Tab, enter the new installation name and password under Log On As: This Account
Move any Documentum-related Programs in start menu (C:\Documents and Settings\old_user_name\Start Menu) to the new installation owner
Restart Windows 2000 Server; Log in as the new installation owner
Start the Docbases; View logs to check for errors

Approach 3: Creating a new Documentum installation user with Object Reassignment
If the requirements around changing the installation owner include changing the Documentum Installation user_name and removing the old installation user from Documentum, then you must create a new installation Documentum user and reassign the previous user’s objects and tasks to the new user. This is the most complex, time consuming, and risky procedure and is not recommended unless completely necessary.
Pros
The user_name within Documentum is updated to the new installation owner therefore it will appear as the display name within Documentum
The previous Documentum installation owner will be removed from the Docbase
Cons
Reassigning the previous installation owner to the new installation is error prone and time consuming for large docbases. However, risk can be reduced by purging old log files prior to changing the installation owner
Steps
The steps are the same as in Approach 2 with the following steps required at the end:
Log into Documentum Administrator as the new installation owner
Navigate to Administration -> User Management -> Users
Select the previous installation owner (’dmadmin’)
Select Tools -> Reassign User
Repeatedly run the following query: select count(*), acl_name from dm_sysobject where acl_domain = ‘dmadmin’ group by acl_name Note: The job may take a while to run depending on the amount of data. Once the query returns no rows the job is complete.
Smoke Testing the Change
After any major change to your Documentum infrastructure you should Test, Test, Test. Detailed test steps vary based on your Documentum application environment. It is important to have a test plan defined during your preparation. However, below are some brief smoke test steps which should prove helpful:
If you are using Web Publisher:
Log into Web Publisher as the new installation owner
Create content based on a template
Start a workflow; Log in as the workflow approver to ensure the task went to the correct user
Access Web View
If you are using Documentum Administrator:
Log into Administrator as the new installation owner
Spot check jobs (i.e. dm_DataDictionaryPublisher, dm_FulltextMgr , etc.) to ensure they are successfully running
If you are using Site Caching Services:
Log into Administrator as the new installation owner
Navigate to Site Publishing Configuration
Check a configuration; run an ‘End to End’ test
If you are using any other Documentum products:
Log into each application
Perform everyday user tasks
Run Consistency Checker (dm_ConsistencyChecker) Job. This report appears under System/SysAdmin/Reports
Common Issues/Helpful Hints
Setting user permission on %DOCUMENTUM_HOME% can be cumbersome, is there an easier way to perform this task?Yes. It would be recommended to have a system administrator run a windows scripts to update all folders and files under %DOCUMENTUM_HOME%. Another shortcut would be to set the local Administrator group on the Windows 2000 with Full Control permission on all subfolders and files under %DOCUMENTUM_HOME%. Later, when updating an installation owner you would just need to add/remove users from the local Administrator group. Setting the Administrator group permissions in this fashion also eases backing up Content Server files.
Can you update only the user domain?Yes. To update only the user domain you will need to:
Add the new domain user to the Administrator group on the Windows 2000 server; Set up the user as act as part of the operating system
Update the user_domain attribute of the installation owner: update dm_user object set user_domain = ‘[new domain]‘ where user_name = ‘[installation owner]‘
Edit the user_auth_target parameters in the server.ini file to reference the new domain for each Docbase in the installation.
Update permission on all subfolders and files under %DOCUMENTUM_HOME% to use the new domain user.
Update Windows Registry – HKEY_LOCAL_MACHINE\SOFTWARE\Documentum\Server\version_no
Change the value of DM_DMADMIN_DOMAIN to the new domain
Set up the appropriate start-up information (Log on As: This Account) for Documentum Services to use the new domain user
Can you update only the user password?Yes. Stop all Documentum services (Docbases, DocBroker, Java Method Server, Site Caching Services). Within the service properties under the Log on Tab, enter the new password under Log On As: This Account.
What if after running the Reassign User job there are still objects referencing the old user?This sometimes happens if there are many objects (such as log files) owned by the old installation owner. A solution to this is to wait for the job to complete and then recreate the previous installation owner within Documentum then run ‘Reassign User’ again. Continue this until the following queries return 0 rows:
select count(*), acl_name from dm_sysobject where acl_domain = '[old installation owner]‘ group by acl_name;
select r_object_id from dm_sysobject where owner_name= ‘[old installation owner]‘;

Utilities for Easy Handling of Administrator Work in Documentum

0

Category:

Apart from installation and setting up of documentum server and clientenvironment, there are many important tasks which needs to be handled by an Administrator in order for smooth and proper functioning of the set up.
Some of the tasks are mentioned below:1. Modifying the configurations of servers, docbroker.2. Creating new Docbases.3. Maintaining Docbases.4. Configuring, starting and shutting down servers.5. Changing session configuration.6. Managing content storage areas and content files.7. Managing users and groups.8. Managing security.
Utilities for Easy Handling of Administrative Task:
1.dm_error utilityWe encounter various content server errors with just with an error codewithout much information about it. Documentum has defined all the errorswith an expanded statement of the error, possible causes of it andprescribes possible solutions for the error. Utility should be executed in thecommand prompt of the content server.Syntax: dm_error

2.PreLoad UtilityAdministrator operations include activities called Dumping and Loading Docbase.Dump and Load operations can be used to do the following activities:a. Move a Docbase to one location to another.b. Duplicate a Docbase.c. Duplicate or move some portion of the Docbase.A dump operation creates a binary file of objects dumped from a Docbase. If a dumped object has associated content files, the content files are eitherreferenced by full path or included directly in the dump file. The load operation loads the objects and content files into another Docbase.PreLoad utility can be run on a dump file created to tell what all objects thatshould be created in the new Docbase before loading the dump file. Utility can also be used to create a DQL script that you can edit and then run to create the needed objects.Syntax:preload docbase [-Uusername] -Ppassword -dump_file filename [-script_file name]The docbase is the name of the Docbase into which you are loading the dumpfile. Filename is the name of the dump file, and name defines a name for theoutput DQL script. If you do not include a username, the current user isassumed.Note: This utility does not report all storage areas in the source Docbase, butonly those that have been copied into the dump file.
3.dmclean UtilityEvery Docbase requires a scheduled clean up need to be performed byadministrator. One such clean up includes removing orphaned content files.When users delete a document, or any object that has a content file associated with it, the system deletes the object and marks the content as an orphan. The system does not delete the actual content file. This must be done using the dmclean utility. Dmclean can be run using:
a. Documentum Administrator.b. A DQL EXECUTE statement.Syntax:EXECUTE do_methodWITH method = ’dmclean’,arguments = ’-no_content -no_note -no_wf_template’c. An Apply methodSyntax:apply,session,NULL,DO_METHOD,METHOD,S,dmclean, ARGUMENTS,S,’-no_content -no_note -no_wf_template’d. From Content Server command promptdmclean -docbase_name docbase -init_file init_file_name-no_content -no_note -no_wf_templateWhere wheredocbase is the name of the Docbase and init_file_nameis the name of the server.ini start up file for the Docbase’s server.
4.dmfilescan UtilityThis utility is used to scan the one or more storage area and find any contentfiles that do not have associated content objects. The utility scans for orphaned files which are over 24 hours old.Running the utility using EXECUTE statement:EXECUTE do_method WITH method = ’dmfilescan’,[arguments = ’[-s storage_area_name] [,-from directory1][,-to directory2]’]The utility automatically saves the output to a document that is stored inthe Temp cabinet. FALSE.) The output is a generated script that includesthe informational messages generated by the utility.Running the utility using Content Server command prompt:dmfilescan -docbase_name name -init_file init_file_name[-s storage_area_name][-from directory1][-to directory2]The init_file_name is the name of Content Server’s server.ini file. This isone of the server start up files.
5.dm_crypto_change_passphrase UtilityEvery installation of a Content Server creates a key called AdministrationEncryption Key (AEK). This is used to encrypt:a. The Docbase keys.b. Documentum passwords, such as those used by Content Server toconnect to the RDMS or any other Docbase.This AEK is stored at: %DOCUMENTUM%\dba\secure\aek.key and this key also are encrypted using a default passphrase provided by Documentum. It is always advisable to change the default passphrase. To change the default passphrase we can use dm_crypto_change_passphrase Utility.Syntax:dm_crypto_change_passphrase [-location location][-passphrase[old_passphrase]][-newpassphrase [new_passphrase]][-noprompt][-help]Location is the place where AEK is placed for which we need to change thepassphrase.old_passphrase is the old passphrase name.new_passphrase is the new passphrase name.-noprompt should be used if any one the argument mentioned above is notused. It’s like the end specify mentioning the end of arguments.-help returns help information for the utility.
6.IAPI UtilityIAPI Utility is used to issue direct method call to the server.Running the utility from the server command prompt:iapi32 [-Uusername|-ENV_CONNECT_USER_NAME][-Pos_password|-ENV_CONNECT_PASSWORD] [-Llogfile] [-X][-E][-V-][-Q] docbase|-ENV_CONNECT_DOCBASE_NAME [-Rinputfile][-Ftrace_level][-Sinit_level][-Iescape_character][-zZ][-Winteger][-Ksecure_mode]Order of the parameter does not hold importance.Username- Identifies the name who is starting the session.ENV_CONNECT_USER_NAME- User name in looked in the environmentvariable DM_USER_NAME.Password- User’s operating system password.ENV_CONNECT_PASSWORD- Password is looked in the environmentvariable DM_PASSWORD.-Llogfile – Directs the server to start a log file for the session.You must include the file name with the argument. You can specify afull path.-X Allows prompt for domain.-E Turns on echo.-V- Turns verbose mode off. The utility runs in verbosemode by default. If you turn verbose mode off, thesystem does not display the IAPI prompt, errormessages, or any responses to your commands(return values or status messages).-Q Directs the utility to provide a quick connection test. The utility attempts to connect and exits with a status of zero if successful or non-zero if not.It provides error messages if the attempt is not successful.Docbase- Docbase name which is intended to access.ENV_CONNECT_DOCBASE_NAM – finds the name of the docbasefrom environment variable DM_USER_NAME.-Rinputfile input file with API methods.-Ftrace_level Turns tracing on.-Sinit_level Defines the connection level established when youstart the API session.
-Iescape_character Defines an escape character for certain symbolssuch as a forward slash (/).-zZ Specifies Windows NT Unified Logon.7.IDQL UtilityIDQL is also a useful as a tool for testing and other tasks that support anapplication or installation because it allows you to run scripts and batch files.Running the utility from the server command prompt:idql32 [-n] [-wcolumnwidth][-Uusername|-ENV_CONNECT_USER_NAME][-Pos_password|-ENV_CONNECT_PASSWORD][-Ddomain]docbase|-ENV_CONNECT_DOCBASE_NAME [-Rinput_file][-X][-E][-Ltrace_level][-zZ][-Winteger][-Ksecure_mode]The parameter being the same as mentioned in above utility.