Results 1 to 5 of 5
  1. #1
    Join Date
    Jan 2003
    Posts
    4

    Question Unanswered: [ODBC SQL Server Driver][TCP/IP Sockets] ConnectionRead (recv())

    Hi,
    I have developed socket on VB using wsock32.dll, which connects to the data from AS400. This data is then stored in SQL server. MTS is uset to handle the dll objects.

    During the process of insertion system returns an error
    [ODBC SQL Server Driver][TCP/IP Sockets] ConnectionRead (recv())
    [ODBC SQL Server Driver][TCP/IP Sockets] General Network Error

    After this error, system does not connect to SQL server and to AS400, until the MS DTC service on MTS is stopped and restarted.

    Please help on this.

    Note:
    I have introduced a trace in each ster to analyze at what point error is happening. I found out that system is not giving problem while opening a connection to SQL server, it only gives an error while inserting the records in SQL server. I think, there might be problem with the locking machanism.

    I will appericiate your helps, mean while I try to solve the problem related to locking.


    regards

  2. #2
    Join Date
    Dec 2002
    Posts
    1,245

    Re: [ODBC SQL Server Driver][TCP/IP Sockets] ConnectionRead (recv())

    Is there some reason that you didn't want to use DTS packages for this? DTS does quite well connecting to our AS/400 (though it took a bit of configuration).

    Regards,

    Hugh Scott

    Originally posted by attinder
    Hi,
    I have developed socket on VB using wsock32.dll, which connects to the data from AS400. This data is then stored in SQL server. MTS is uset to handle the dll objects.

    During the process of insertion system returns an error
    [ODBC SQL Server Driver][TCP/IP Sockets] ConnectionRead (recv())
    [ODBC SQL Server Driver][TCP/IP Sockets] General Network Error

    After this error, system does not connect to SQL server and to AS400, until the MS DTC service on MTS is stopped and restarted.

    Please help on this.

    Note:
    I have introduced a trace in each ster to analyze at what point error is happening. I found out that system is not giving problem while opening a connection to SQL server, it only gives an error while inserting the records in SQL server. I think, there might be problem with the locking machanism.

    I will appericiate your helps, mean while I try to solve the problem related to locking.


    regards

  3. #3
    Join Date
    Jan 2003
    Posts
    4
    We might have used DTS but we are using the same socket with different applications. They may or may not use SQL server

  4. #4
    Join Date
    Sep 2003
    Posts
    176

    Re: [ODBC SQL Server Driver][TCP/IP Sockets] ConnectionRead (recv())

    Hi Hugh,

    You indicated that connecting to AS 400 requires quite a bit of configuration. Can you please elaborate on this point? I need it urgently.

    Thanks
    Originally posted by hmscott
    Is there some reason that you didn't want to use DTS packages for this? DTS does quite well connecting to our AS/400 (though it took a bit of configuration).

    Regards,

    Hugh Scott

  5. #5
    Join Date
    Dec 2002
    Posts
    1,245

    Re: [ODBC SQL Server Driver][TCP/IP Sockets] ConnectionRead (recv())

    Okay, here is what I remember:

    1. We used the IBM Client Access Express drivers. We are using V5R1M0 with SP SI02795. The SP is critical, since there is a bug in the original release which won't let you connect to a database w/ more than 9 characters in the name (thanks IBM!).

    2. The main hassle is that the driver always prompts you for a user name/password unless you config it appropriately. The prompt is not visible when the DTS package runs as a job (since it appears on the virtual desktop of the SQL Agent service account).

    If that doesn't make sense to you, stop. Read up on SQL Service accounts and make sure that SQL Agent is set up to run under a service account.

    3. Okay, proceeding ahead:

    a. The SQL Agent account must be set up with 10 characters or less (SQLAdmin is okay, SQLAgentAccount is not).
    b. Set up an account on the AS/400 with the same name as the SQL Agent account.
    c. Set the password for both accounts to be identical (and again, no more than 10 characters)

    4. Use the ODBC Administration GUI to set up a new connection. Specify that the connection should use the Windows user name/account information. It is helpful to do this set up while logged in as the SQL Agent Service account. It's not critical, but it is helpful.

    Some additional notes:
    1. We are using MS W2K SP4 (Advanced)
    2. We are using MS SQL 2K (SP3a + MS03-031)
    3. To verifiy that you have everything working correctly, log in to the server as the SQL Service account. Open a DTS package. Create a connection object for the AS/400. Create a destination connection object. Add a data pump task. When you specify the details of the data pump task, you should never be prompted for the password.

    Alternatively: A friend of mine has had good success with the Hit Software OLE DB drivers for AS/400. I have never used them/don't know anything about them. But they may be worth trying. www.hitsw.com.

    HTH,

    hmscott

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •