Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations gkittelson on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Could not find installable ISAM - Connection string related?

Status
Not open for further replies.

PRMiller2

Technical User
Jul 30, 2010
123
In running the sub below, I've encountered the following error: Run-time error -2147467259 (80004005), "Could not find installable ISAM."

Code:
Sub OpenConnectionX()

    Dim intCounter As Integer
    Dim oCat As ADOX.Catalog
    Dim oTable As ADOX.Table
    Dim strConnString As String
    Dim strLinkTable As String 'DB Table Name
    Dim strLNTable As String  'LN Table Name
                        
    strConnString = "Driver={Lotus Notes SQL DRIVER (*.nsf)};" & _
                    "Server=App1/PTI;" & _
                    "Database=hps\nits.nsf;" & _
                    "Uid=Paul Miller/PTI;" & _
                    "Pwd=Password1"

    strLinkTable = "LN_document"
    strLNTable = "document"

    Set oCat = New ADOX.Catalog
    oCat.ActiveConnection = CurrentProject.Connection
   
    Set oTable = New ADOX.Table
   
    With oTable
        .Name = strLinkTable
        Set .ParentCatalog = oCat
        .Properties("Jet OLEDB:Create Link") = True
        .Properties("Jet OLEDB:Remote Table Name") = strLNTable
        .Properties("Jet OLEDB:Cache Link Name/Password") = True
        .Properties("Jet OLEDB:Link Provider String") = strConnString
    End With
    
    oCat.Tables.Append oTable
    oCat.Tables.Refresh
   
    Set oTable = Nothing
    Set oCat = Nothing
   
End Sub


I took a look at and followed the steps there to correct it, but to no avail. I did find this which leads me to believe it may be connection string related.

Any thoughts on the code I've posted? Could it be related to the space in my user name?

Access 2003
Lotus Notes 8.5.2
Lotus Notes SQL Driver 8.51.2009.1021
 
Hi Remou,

That is actually where I got the connection string. The only change I made was to the name of the driver, to reflect the one I have installed. Since writing this post, I did insert a space in front of the "Server," "Database," "Uid," and "Pw" fields.

I have a DSN that connects to the database, though it doesn't save the password, which is an annoyance that I'm hoping to work around by making a DSN-less connection. I did copy the contents of the DSN file to the connection string on another attempt, but have since read that ADOX only supports a certain syntax for connection strings -- as reflected at
 
An update on steps taken thus far:

1) Upgraded to Access 2007. Kept the code in 2003 format, ran the sub, erred out.
2) Upgrade a copy of the database to 2007. Ran the sub, errored out.
3) Several different connection strings attempted, latest iteration is based on Full sub:

Code:
Sub OpenConnectionX()

    Dim intCounter As Integer
    Dim oCat As ADOX.Catalog
    Dim oTable As ADOX.Table
    Dim strConnString As String
    Dim strLinkTable As String 'DB Table Name
    Dim strLNTable As String  'LN Table Name
                        
    strConnString = "Driver ={Lotus Notes SQL DRIVER (*.nsf)};" & _
                    " Server =App1/PTI;" & _
                    " Database =hps\nits.nsf;" & _
                    " Uid =Paul Miller/PTI;" & _
                    " Pwd =Password;"

    strLinkTable = "LN_DataExport"
    strLNTable = "DataExport"

    Set oCat = New ADOX.Catalog
    oCat.ActiveConnection = CurrentProject.Connection
   
    Set oTable = New ADOX.Table
   
    With oTable
        .Name = strLinkTable
        Set .ParentCatalog = oCat
        .Properties("Jet OLEDB:Create Link") = True
        .Properties("Jet OLEDB:Remote Table Name") = strLNTable
        .Properties("Jet OLEDB:Cache Link Name/Password") = True
        .Properties("Jet OLEDB:Link Provider String") = strConnString
    End With
    
    oCat.Tables.Append oTable
    oCat.Tables.Refresh
   
    Set oTable = Nothing
    Set oCat = Nothing
   
End Sub

Still erred out. Tried this sub instead:

Code:
Private Sub OpenConnectionXX()

    Dim db As DAO.Database
    Dim strConnect As String
    Dim tdflink As DAO.TableDef

    
    strConnect = "Driver ={Lotus Notes SQL DRIVER (*.nsf)};" & _
                       " Server =App1/PTI;" & _
                       " Database =hps\nits.nsf;" & _
                       " Uid =Paul Miller/PTI;" & _
                       " Pwd =Password;"
                       
    
    Set db = CurrentDb
    Set tdflink = db.CreateTableDef("lnkDataExport")
    tdflink.SourceTableName = "DataExport"
    tdflink.Connect = strConnect
    db.TableDefs.Append tdflink
 
    Set db = Nothing
    Set tdflink = Nothing

End Sub

Still no luck. Any thoughts on there? Another forum I should cross-post to?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top