Microsoft KB Archive/214426

= Unable to Complete Transaction in Market Sample Store =

Article ID: 214426

Article Last Modified on 7/15/2004

-

APPLIES TO


 * Microsoft Site Server 3.0 Commerce Edition

-



This article was previously published under Q214426



SYMPTOMS
After you install MDAC 2.1 in a Commerce Server 3.0 environment, you may encounter one of the following errors when you attempt to complete a purchase in the Microsoft Market Starter Site.

ODBC Error "Changed language setting to 'us_english'"

ODBC Error "Changed database context to master"

MDAC 2.1 ships with SQL Server 7.0 as a mandatory install. Therefore installing SQL Server 7.0 on your Web server can produce the errors listed above. Installing SQL Server 7.0 on a remote computer should not produce this problem.



CAUSE
The version of ADO that ships in MDAC 2.1 passes on some informational messages from ODBC to ASP applications that were not passed on in previous versions of ADO. The error handling code provided in the Market Starter Site detects these informational messages and incorrectly displays them as errors.



RESOLUTION
To resolve this problem, apply the latest Site Server 3.0 service pack.



STATUS
Microsoft has confirmed this to be a problem in Microsoft Site Server version 3.0. This problem has been corrected in the latest U.S. service pack for Microsoft Site Server version 3.0. For information on obtaining the service pack, query on the following word in the Microsoft Knowledge Base (without the spaces):

S E R V P A C K



MORE INFORMATION
 Open Reqinsert.vbs in Notepad. Locate the variable declaration section for SubmitReq function and add the following line to the declaration:

Dim objErr, fErr

 Locate the two instances of Set RS = Connection.Execute in SubmitReq function.  Replace the entire If … ElseIf… Else … End block that immediately follows Set RS = Connection.Execute with the following block: fErr = False

If Err.Number <> 0 Then

REM If an underlying object, and NOT the ADO, caused the error REM -2147217900 The command contained one or more errors REM -2147467259 Unspecified error If Err.Number = -2147467259 Or Err.Number = -2147217900 Then For Each objErr In Connection.Errors

REM Checking for SQL-related errors If objErr.NativeError <> 5701 And objErr.NativeError <> 5703 And ObjErr.NativeError <> 0 Then Context.DBErrors(objErr.NativeError) = objErr.Description fErr = True End If Next

REM If an ADO error Else orderform.[_purchase_errors].Add("#:" & Err.Number & "," & Err.Description) fErr = True End If End If

If fErr Then SubmitReq = False Exit Function End If                        Locate the variable declaration section for InsertItems function and add the following line to the declaration:

Dim objErr, fErr

</li> Locate the instances of Set RS = Connection.Execute in InsertItems function.</li>  Replace the entire If … ElseIf … Else … End block that immediately follows Set RS = Connection.Execute with the following block: fErr = False

If Err.Number <> 0 Then

REM If an underlying object, and NOT the ADO, caused the error REM -2147217900 The command contained one or more errors REM -2147467259 Unspecified error If Err.Number = -2147467259 Or Err.Number = -2147217900 Then For Each objErr In Connection.Errors

REM Checking for SQL-related errors If objErr.NativeError <> 5701 And objErr.NativeError <> 5703 And ObjErr.NativeError <> 0 Then Context.DBErrors(objErr.NativeError) = objErr.Description fErr = True End If Next

REM If an ADO error Else orderform.[_purchase_errors].Add("#:" & Err.Number & "," & Err.Description) fErr = True End If End If

If fErr Then InsertItems = False Exit Function End If                       </li> Save Reqinsert.vbs.</li></ol>

Keywords: kbbug kbfix kbqfe kbsiteserver300sp2fix KB214426

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.