Accessing .Net Access Provider from a COM client

IFS do not provide COM Access Provider API from IFS Applications 9. .NET Access Provider is the recommended client based access provider in IFS. However, for COM client users IFS has provided an option to access .NET Access Provider while using a COM client. Access provider type libraries are delivered with each client binary patch and you could easily download and install them.

Installing .NET Access Provider Extension for COM clients

Inside the Enterprise Explorer binary patch there is a msi file as "IFS .NET Access Provider.msi". Double click on the file, select an installation location and select the option "NET Access provider Extension for COM clients".

Please note that .NET Access Provider dlls are also downloaded when you select this option. You also have the option to install only the .NET Access Provider dlls by selecting the ".NET Access Provider" feature.

Implementing a COM client using .NET Access Provider

  1. After installing the .NET Access Provider extension for COM clients there will be some type libraries installed in your computer. Add reference to these type libraries from your IDE.
  2. Afterwards .NET Access Provider classes can be used in the application. A detail comparison between COM Access provider, .NET Access Provider from a .NET language and .NET Access Provider from a COM language is found here.

An example of using .NET Access Provider from a COM language is as follows.

Option Explicit


Sub Main() Dim conn As New FndConnection conn.ConnectionString = "lkppde1045:58080" conn.SetCredentials "alain", "alain" conn.CatchExceptions = False Dim oTxtAttr As New FndTextAttribute oTxtAttr.SetValue ("A%")
Dim oBindVar As New FndBindVariable oBindVar.Direction = FndBindVariableDirection.FndBindVariableDirection_In oBindVar.Name = "DESC" Set oBindVar.Value = oTxtAttr
Dim oCmd As New FndPLSQLSelectCommand oCmd.CommandText = "SELECT * FROM FND_USER WHERE DESCRIPTION LIKE :DESC" Set oCmd.Connection = conn oCmd.BindVariables.Add oBindVar
Dim oTable As FndDataTable Dim oRow As FndDataRow
Set oTable = oCmd.ExecuteReader_3("FND_USER")
Dim sMsg As String Dim intCounter As Integer Dim oDesAttr As FndTextAttribute For intCounter = 0 To oTable.Rows.Count - 1 Set oRow = oTable.Rows.Item(intCounter) Set oDesAttr = oRow.Item(1) sMsg = sMsg & oDesAttr.ToString() & vbCrLf Next ' Show message MsgBox sMsg
End Sub