Topic
7 replies Latest Post - ‏2013-03-06T13:48:09Z by ldubois
SparTodd
SparTodd
7 Posts
ACCEPTED ANSWER

Pinned topic Where's my IBM DB2 for i5/OS .net Provider?

‏2010-08-10T11:51:51Z |
As a bit of background, we have an iSeries running V6MR1. I had System i Access for Windows installed on a PC that was running XP/SP3 32-bit with the Visual Studio Add-Ins installed for both VS2005 and VS2008. Everything was working fine with IBM DB2 for i5/OS and I could access our iSeries in the VS Server Explorer (both in VS2005 and VS2008) using that driver/provider without fail.

Recently I got a new PC, and it is running W7 Pro/64-bit. I've installed System i Access, the Data Server Driver, and the VS Add-ins and the IBM DB2 for i5/OS Provider isn't working. Server Explorer in VS2005 sees the driver as an option in setting up a new connection. I input the connection string, successfully test the connection, click "OK" and then get a message that says "unable to find the requested .Net Framework Data Provider". In VS2008, IBM DB2 for i5/OS isn't even listed as a driver/provider option. I've done a fair bit of research and found that other users have encountered similar problems, but I haven't yet found the answer to my problem, even after installing the registry fixes I downloaded on a tip I came across.

So I took the experiment a step further, thinking I might just be able to get everything to work in the W7 XP3 Virtual Machine (which runs in 32-bit mode as far as I can tell) and I'm having the same problems. At this point, I figure that I'm doing something wrong in the install.

Any thoughts/suggestions toward helping be get IBM DB2 for i5/OS running would be much appreciated, whether is for W7 or the XP3 Virtual Machine.

Thanks!
Updated on 2013-03-06T13:48:09Z at 2013-03-06T13:48:09Z by ldubois
  • ldubois
    ldubois
    61 Posts
    ACCEPTED ANSWER

    Re: Where's my IBM DB2 for i5/OS .net Provider?

    ‏2010-08-10T14:44:57Z  in response to SparTodd
    Your post states you are installing both the IBM i Access for Windows .NET provider (IBM.Data.DB2.iSeries) and the Data Server Driver (IBM.Data.DB2) with the Visual Studio Add-ins. As an FYI, those are two different, completely independent products; the Access for Windows provider has limited integration with Visual Studio and works only with IBM i, while the Data Server Driver provider is the one that works with the Visual Studio Add-ins and supports other DB2s besides the one on IBM i.

    To make sure you are getting the latest updates for the Access for Windows provider (there have been some recent fixes in this area), be sure to install the most recent service pack (they can be downloaded from here: http://www.ibm.com/systems/i/software/access/windows/casp.html)

    There have also been some problems with machine.config which might cause various problems with .NET providers; first, check the permissions on the machine.config files located in your \windows\microsoft.net\framework\v2.0.50727\config folder, and in the \windows\microsoft.net\framework64\v2.0.50727\config folder. Make sure you have permission to read them. If that is not the problem, please append your machine.config files here and I'll have a look at them.
    • SparTodd
      SparTodd
      7 Posts
      ACCEPTED ANSWER

      Re: Where's my IBM DB2 for i5/OS .net Provider?

      ‏2010-08-11T11:56:33Z  in response to ldubois
      Thank you, Idubois, for showing interest in helping me solve this and clarifying the difference between the IBM i Access for Windows .net provider (which I have been using to develop web applications and connect to the iSeries through the Visual Studio Server Explorer utility) and the Visual Studio Add-ins. I am up to date with the service packs, having installed SI37891_64A already. I should emend my initial post where I said that I can not see the IBM DB2 for i5/OS .NET Provider in the list of options in VS2008 Server Exlporer to connect to the iSeries. I'm able to see that option in both VS2005/VS2008, but as I stated, when I enter the connection string it tests fine but then the error occurs saying that it is unable to find the reqested .Net Framework Data Provider.

      As for the permissions to read the machine.config files:

      • C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config permissions are set to full control for System and Administrators (I am in the Admin Group) and Read\Execute for Users.

      • C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\machine.config permissions are set to same.

      Do those permissions appear correct?

      Attached here is the C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config file; in the following post I will include the Framework64 machine.config file since there is a limit of one attachment per post.

      Thanks again! I look forward to your feedback.
      • SparTodd
        SparTodd
        7 Posts
        ACCEPTED ANSWER

        Re: Where's my IBM DB2 for i5/OS .net Provider?

        ‏2010-08-11T11:57:32Z  in response to SparTodd
        C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\machine.config file.
        • ldubois
          ldubois
          61 Posts
          ACCEPTED ANSWER

          Re: Where's my IBM DB2 for i5/OS .net Provider?

          ‏2010-08-11T13:30:16Z  in response to SparTodd
          Your machine.config permissions look fine. However, the contents of both the machine.config files show that the IBM.Data.DB2.iSeries (Access for Windows) .NET provider is not there, hence your error message. This appears to be a messed-up installation. I don't have an explanation for why the registry entry is there but the .NET provider is not, unless you manually added the registry entries yourself?

          To fix this, I'd recommend doing a reinstall of the Access for Windows product and service pack, making sure you select the .NET Provider feature (it is not selected by default). When a reboot is recommended, reboot. If this does not fix the problem, open an issue with IBM Service.

          I would also recommend reviewing the Information APARs for any issues you might encounter during installation on your operating system.

          You can find them here: http://www.ibm.com/systems/i/software/access/windows/caiixe1.html
          • SparTodd
            SparTodd
            7 Posts
            ACCEPTED ANSWER

            Re: Where's my IBM DB2 for i5/OS .net Provider?

            ‏2010-08-12T14:28:08Z  in response to ldubois
            Thanks again for the help. I did,in fact, manually edit the registry and obviously that is where things went wrong. After starting from scratch everything is exactly the way I needed/wanted it to be. Chalk this fiasco up to user error.
            • SystemAdmin
              SystemAdmin
              2826 Posts
              ACCEPTED ANSWER

              Re: Where's my IBM DB2 for i5/OS .net Provider?

              ‏2013-03-04T13:45:44Z  in response to SparTodd
              I am having this same issue except with VS Professional 2012. I can write code with the .net data provider, but I don't see it it as an option in the Server Explorer Data Sources in VS 2012. Any thoughts on this one?
              • ldubois
                ldubois
                61 Posts
                ACCEPTED ANSWER

                Re: Where's my IBM DB2 for i5/OS .net Provider?

                ‏2013-03-06T13:48:09Z  in response to SystemAdmin
                Support for Visual Studio 2012 has not yet been added to the IBM i Access for Windows .NET provider. For those inclined to try their own hand at it, there are some differences between the settings for Visual Studio 2010 and 2012, so I don't know if a straight copy over of the registry settings will work.