Accessing IDMS from the .NET Platform

Document ID : KB000054812
Last Modified Date : 14/02/2018
Show Technical Document Details


The .NET is a platform being used to develop many web applications. Is it possible to use these develop n-tier applications that access IDMS? How is this supported at run-time and during development?


It is possible to use .NET applications to access CA IDMS. The first thing to note is that often .NET programmers are accustomed to using an OLE interface. IDMS does not support this, as IDMS relies on the ODBC & JDBC protocol. However Microsoft provides a .NET to ODBC bridge product which they call the "ODBC .Net Data Provider". This provides access to native ODBC drivers so they can deliver data to the Microsoft .NET Framework. The ODBC .Net Data Provider is a runtime component.

With .Net Framework v2.0, there is additional support for ODBC.NET such that Visual Studio can discover resources on an IDMS system using the Server Explorer window. For this to work, you must be using IDMS Server r16.1 or have applied QO82002 to IDMS Server r16.0.

Another alternative is to define IDMS as a "linked server" within SQL Server. In this instance, the .Net application runs against SQL Server, which in turn redirects the request to an ODBC data source, in this case IDMS. The steps to do this are as follows.

  1. Create a "System"-type ODBC Data Source using the CA-IDMS ODBC Administration tool (delivered with CA IDMS Server). Test the Data Source to insure you can connect to your backend CA-IDMS CV.

  2. Bring up the SQL Server Enterprise Manager tool (Start->Programs->Microsoft SQL Server->Enterprise Manager).

  3. Using the "Tree" tab on the left-most window, drill down to the "Linked Servers" item (under the Security item) within the appropriate node:

    Figure 1

  4. Perform a right-mouse button click (on the "Linked Servers" item) and select menu entry "New Linked Server...".

  5. This will bring up the Linked Server Properties Sheet. Fill out the property sheet as indicated below:

    Figure 2

  6. Click the "Security" tab on the top of the Properties sheet:

    Figure 3

  7. Select the "Server Options" tab on the top of the Properties sheet. Fill out the form as indicated below.

    Figure 4

    Click OK to close the Properties Sheet.

  8. Test your connection by expanding the new Linked Server instance and selecting the "Tables" item. A list of tables should be displayed in the right window.

    Figure 5

In choosing which implementation methodology to use (the ODMC .NET Data Provider or defining a "linked server"), be aware linking IDMS to SQL Server is only appropriate for applications that need most of their data from SQL Server and a small amount from IDMS. If your applications get most or all of the data from IDMS, then it's more appropriate to go to IDMS directly (using the Data Provider) rather than through an intermediate SQL Server machine. Going to IDMS directly will give better performance, plus it will eliminate a point of failure (the SQL Server machine) in the application architecture.