Archive

Posts Tagged ‘DBOF’

kVisia: Product Overview

March 18, 2015 Comments off

Howdy Users and Buddies,

Today I want to share on kVisia, a product that provides the core functionality to automate, control and deliver an organization’s engineering and enterprise business processes to the desktop or Web. It holds the business rules, executes the XML configurations, builds the business forms, and implements the lifecycles that automate an organization’s business processes.

I think the only Prerequisites that you need to know is , Basic concept of client-server applications and Documentum Architecture.

Let me put it in Content Wise for better understanding with a bit of background of what’s there , what’s missing and how this can be achieved.

  1. Abstract

Today the current era is defined by the terms like data, information, knowledge, wisdom etc. and in this electronic world the difficulty to manage data in abundance has begotten many technologies and one of them is the Documentum.

Documentum is nothing other than a Content Management Tool but its vastness and its ability to cater to almost all sorts of data types available are so rich in itself that these days it is widely used. If we undo the Documentum technically then it gives an edge over the Relational Database Management System by not storing only the Meta data but also storing the content in its native format.

kVisia blends with Documentum to bolster the level and depth of automation which can be achieved by the Documentum alone and this is what this document discusses in detail.

  1. Introduction

kVisia comes of McLaren Software Limited and users need to have a license before using it. McLaren is ISO 9001 certified and it has been accredited Independent Software Vendor for Documentum and FileNet. It has got 360+ customers worldwide and it operates from UK, USA and Switzerland.

In fact kVisia is an Enterprise Engineer product that encapsulates best practices and domain expertise. This is a user configurable application consisting of XML files managed by repository and standardized on a single ECM platform. It is also believed to be powered by Documentum.

For better understanding of the kVisia we can go through the following questions and answers that will help one to identify the need.

How does it help me?

Very quickly configure the user interface and deliver it to the Desktop and Web users.

Is it easy to change?

Very easy, configuration files are stored in the Docbase in XML format.

Configurable interface using objects and tables.

Do the configuration files allow me to control inputs?

Very complex business rules can be enforced via the XML files.

Validations at creation, promotion and check in.

  1. kVisia suite

kVisia suite consists of following three components:

  1. McLaren Studio
  2. McLaren_Core DocApp
  3. McLaren_Foundation DocApp

3.1 McLaren Studio

McLaren Studio provides a user-friendly desktop application that allows users to create and edit XML configuration files that will conform to the rules of the Document Type Definition (DTD).

An XML (eXtensible Markup Language) configuration file is a structured file consisting of many elements. Elements are ordered into a tree structure or hierarchy. Elements may have parent or child elements, and may also contain attributes. An element without a parent element is the highest in a tree structure and is called a root element. Not all of the elements will have child elements.

The structure of a valid XML file is defined in a DTD (Document Type Definition) file. The DTD contains the rules that apply to each XML configuration file; these include the definitions of parent and child elements, element attributes, and how each element can be used

The appearance and behaviour of user dialogs can be modified without the need to change programme code simply by changing settings in the appropriate XML configuration file. A definition of the appearance and behaviour of a dialog is referred to as a “configuration”. A common need, however, is to display different configurations under different circumstances. For example, members of different groups may need to fill in different properties on documents, and the document’s properties may change as it moves from state to state in a lifecycle. The definition of such a scenario is referred to as a “mapping”. When you do not want to differentiate functionality between different groups, lifecycles and states, there is a value called {default} that will apply to all circumstances.

The Actions for which dialogs can be defined using an XML configuration file are:

 New

When the user issues the New command, a customized dialog can be displayed. Commonly deployed features include automatic document numbering, interactive project allocation and any additional attributes (optional or mandatory), which may be required to be stored for the document.

 Properties

A customized Properties dialog can be displayed. Fields can be made editable or read-only as required.

 Import

When the user performs an import, a customized dialog can be displayed which may typically employ features similar to those used in the New dialog.

 Copy

When the user performs a copy and paste action, a customized dialog can be displayed which may typically employ features similar to those used in the New dialog.

 QuickFind

For each document type, a search dialog referred to as QuickFind can be defined and viewed by the user in the Docbase through the McLaren menu. The attributes that can be searched on are configurable and search options such as Between, Greater Than, Containing, etc., can be specified.

 3.2 McLaren_Core DocApp

Having installed kVisia you get two sets of Docapps in the Docbase, one is the McLaren_core and the other one is McLaren_foundation. The McLaren_core Docapp is available to the user of a Documentum repository. It is always suggested that one should have the overview of the additional functionality as a result of the deployment of the kVisia before configuring the product to suit the business need.

As the name suggests McLaren_core Docapp provides the basic functionality like New, Import, Properties, Copy, QuickSearch etc to be configured. As discussed above, we use the XML configuration tool McLaren Studio to configure it.

For each Object Type used in the repository, an XML Configuration File can be created and configured to define the appearance and behavior of the various dialogs for documents of that Object Type. The definition of the appearance and behavior of a dialog is referred to as a configuration, and different configurations can be displayed in different circumstances.

3.3 McLaren_Foundation DocApp

The McLaren_foundation installation enables you to deploy a pre-configured implementation of the Core technology which transforms it into a user application specifically adapted to the engineering environment, providing a ready-for-use engineering repository. It deals with the following configurations:

User Roles that is associated with Menu Systems and User Dialogs that are adapted to those roles.

Object Types for documents and folders.

XML Configuration Files that define the content, appearance and behavior of the New, Copy, Properties, Import and QuickFind dialogs for the supplied Object Types in accordance with the current user’s User Role and the document’s lifecycle and state, including pre-configured, automatically generated document numbering.

Check in dialogs which are specifically adapted for each supplied type of engineering document.

Automated document revision numbering that reflects common design practice. Revision numbers start at 0 and the first issued version is 1, the second 2, the third 3, etc. When a document is checked in for the first time, a numeric value is assigned and incremented each time it is checked in.

  1. Traditional – VB (Desktop) Vs kVisia(Desktop & Web)

Following Comparison lets you know how much flexibility kVisia provides and how much time and effort it saves.

Traditional – VB (Desktop) kVisia (Desktop and Web)
Ø  Obtain VB source code.

Ø  Open VBP.

Ø  Edit GUI.

Ø  Add code to populate list.

Ø  Add validation rules.

Ø  Save source code.

Ø  Compile DLL.

Ø  Create CAB file.

Ø  Open DocApp in Composer

Ø  Edit the component ACX and

replace CAB file.

Ø  Check DocApp back in.

Ø  Not available until next user login.

Ø  Check out XML.

Ø  Edit XML kVisia Studio.

Ø  Add XML tag.

Ø  Specify properties.

Ø  Save and Check back in.

Ø  Change available immediately (no logout required).

  1. Benefits
  • Easy to manage development process as applications are configured via XML using Studio
  • Fast route from innovation to user acceptance
  • Shorter time from design through to development
  • Shorter time to deploy to the business users
  • Reduces development costs
  • Future upgrades are minimised
  • Simple deployment and at a local level of control
  • Speeds up implementation process through rapid configuration

Hope you like the post, Feel free to post your comments and I will reply back to any queries that you have.

Adios , Have a great day ahead…

DBOF Configurations

May 5, 2010 Comments off

We Know DBOF lives wherever DFC lives, either on the Content Server or Application Server, or on any of the other clients. The following Steps need to be tracked when we are trying to configure DBOF :

1) Configure DMCL.ini to both access DocBase and enable session pooling. Add the following entry to the [DMAPI_CONFIGURATION] section :

connect_pooling_enabled = T

When installing Documentum, a file with the name DMCL.ini is created in the folder

‘:/SYSROOT\system32’.

Example: C:/SYSROOT/system32.

2) Make sure dfc.jar is referenced by the CLASSPATH environment variable of your JVM running the application, dfc.jar is in ‘Shared’ folder under Documentum installation folder.

Example: C:/Program Files/Documentum/Shared

3) Make sure dmcl40.dll is in a directory referenced by the PATH variable. By default the file is placed in folder C:/Program Files/Documentum/Shared.

4) The DFC_DATA system variable must refer to the directory containing Documentum configuration information, usually C:\Documentum. This needs to be a directory that has an immediate subdirectory called C:\Documentum\config. This is where the dbor.properties file is also located.

5) Make sure TBO classes and SBO classes are configured in dbor.properties file on
Application Server.

6) The dbor.properties is editable file. As part of best practices the file should be edited by a program using IDfDbor and IDfDborEntry interfaces provided in DFC classes.The entries in dbor.properties file will
look like:

doc_request=type, com.bp.customObj.DocumentRequestTBO, 1.0
com.bp.customObj.ICreateFolderSBO=service,com.bp.customObj.CreateFolderSBO,1.0

DocumentRequestTBO, ICreateFolderSBO and CreateFolderSBO are the java classes
created for providing our own business logic.doc_request is the custom object type defined in DocBase. One can create custom object types using Documentum DA. ‘type’ represents Type Based Object followed by full class name, 1.0 represents the version number of the class to be used.

The second line represents the mapping of SBO, as the identifier ‘service’ mentions.

7) Make sure TBO and SBO compiled classes are accessible from class path variable on
Application server.

I will try to bring in how to implement the concept of BOF in Documentum in my coming Posts.

Appreciate your comments.

Categories: DOCUMENTUM Tags: , , , , , , ,

Documentum Business Objects Registry

May 4, 2010 Comments off

When creating a new document of document type ‘dm_document’ using WebTop application, internally DFC system will create instance of DFC classes DfSysObject, DfDocument and so on, thus limiting the functionality to that provided by DFC standard classes.

When using business objects, classes mapped to an existing object type (or custom object type) can be extended to provide our own business logic; this is done while developing TBO. Through object oriented mechanism called polymorphism, methods of these new classes gets called in bottom up order, i.e., methods in the parent class can be overridden in the new classes written. These new methods will be called automatically by DFC system.

The object factory guarantees that the correct object will be instantiated at runtime. This applies to TBO but not necessarily to SBO. When a TBO is developed and deployed on application server or content server, the framework guarantees that the new object gets called automatically. Two things make this happen. One is Documentum Business Object Repository (DBOR) . The other is that use of registry is now an integral part of DFC. Whenever someone attempts to access a custom-type Docbase object, DFC first checks the registry for a mapping to a custom Java class, then loads and instantiates that class.

DBOF provides the following mapping at runtime:

1. Docbase Type name to Java Class mapping: When the DFC core loads a Docbase object, its type name is looked up in the registry. If the name is found, its corresponding Java class is loaded and instantiated.

2. Service Interface name to Java Class mapping: When requesting the client to load a service, the service is identified by its published interface name, such as com.documentum.IInbox. If DFC finds the interface name in the registry, the corresponding service class is loaded and instantiated and returned to the caller.

Session Manager: Whenever an application requires access to a DocBase, authentication is required. Session Manager encapsulates the DFC session object and automatically manages the session pool. To get session in SBO java class, one has to acquire it using Session Manager and release it when not needed. Whereas in TBO’s, a reference to TBO’s session is embedded inside the object by default.

Session Pooling: Session Pooling provides for an application to connect and disconnect from DocBase session many times without incurring the overhead of real sessions with the server. Session Manager puts back the session into the pool when the client releases it, free to be used by other requests for sessions.

The concept of TBO and SBO is similar to the EJB in J2EE, TBO represent entity beans
and SBO represent stateless session beans

%d bloggers like this: