Skip to main content
Inspiring
September 7, 2006
Question

help with Response.Write? ASP/VB + Recordsets

Hi,

I have some code which displays a unique order ID from a payment service
provider (Protx) which is returned to my "receipt" page (.asp) on my web
site.
This order ID can be displayed on the page like this:
<%response.write VendorTxCode%>

I would like to use this ID to create a recordset so that I can display the
order details on the receipt page, but I'm not sure how to insert this value
into a simple recordset statement.

Here's what I tried so far.

<%
Dim rsOrderDetails__VARvendortxcode
rsOrderDetails__VARvendortxcode = "1"
If (VendorTxCode <> "") Then
rsOrderDetails__VARvendortxcode = VendorTxCode
End If
%>
<%
Dim rsOrderDetails
Dim rsOrderDetails_cmd
Dim rsOrderDetails_numRows

Set rsOrderDetails_cmd = Server.CreateObject ("ADODB.Command")
rsOrderDetails_cmd.ActiveConnection = MM_connNAME_STRING
rsOrderDetails_cmd.CommandText = "SELECT * FROM dbo.qryorderspaidorders
WHERE orderID = ?"
rsOrderDetails_cmd.Prepared = true
rsOrderDetails_cmd.Parameters.Append
rsOrderDetails_cmd.CreateParameter("param1", 5, 1, -1,
rsOrderDetails__VARvendortxcode) ' adDouble

Set rsOrderDetails = rsOrderDetails_cmd.Execute
rsOrderDetails_numRows = 0
%>

With the above recordset, I receive an error about the value being of the
wrong type. So I changed the type to be adVarChar:

<%
Dim rsOrderDetails__VARvendortxcode
rsOrderDetails__VARvendortxcode = "1"
If ("& VendorTxCode" <> "") Then
rsOrderDetails__VARvendortxcode = VendorTxCode
End If
%>
<%
Dim rsOrderDetails
Dim rsOrderDetails_cmd
Dim rsOrderDetails_numRows

Set rsOrderDetails_cmd = Server.CreateObject ("ADODB.Command")
rsOrderDetails_cmd.ActiveConnection = MM_connNAME_STRING
rsOrderDetails_cmd.CommandText = "SELECT * FROM dbo.qryorderspaidorders
WHERE orderID = ?"
rsOrderDetails_cmd.Prepared = true
rsOrderDetails_cmd.Parameters.Append
rsOrderDetails_cmd.CreateParameter("param1", 200, 1, 25,
rsOrderDetails__VARvendortxcode) ' adVarChar

Set rsOrderDetails = rsOrderDetails_cmd.Execute
rsOrderDetails_numRows = 0
%>

Anyway, this is't working either so maybe I should just stick to a numeric
value as the data IS numeric. I'm not convinced that I'm calling the
<%response.write VendorTxCode%> correctly though so I'd appreciate some
guidance on this, if anyone can help. Very much appreciated. Cheers.

Regards
nath.


This topic is closed to new replies. Start a new post to keep the conversation going.

1 reply

Inspiring
September 9, 2006
Nath,

Try this:

<%
Dim rsOrderDetails__MMColParam
rsOrderDetails__MMColParam = "1"
If (Request("VendorTxCode") <> "") Then
rsOrderDetails__MMColParam = Request("VendorTxCode")
End If
%>
<%
Dim rsOrderDetails
Dim rsOrderDetails_cmd
Dim rsOrderDetails_numRows

Set rsOrderDetails_cmd = Server.CreateObject ("ADODB.Command")
rsOrderDetails_cmd.ActiveConnection = MM_connNAME_STRING
rsOrderDetails_cmd.CommandText = "SELECT * FROM dbo.qryorderspaidorders
WHERE orderID = ?"
rsOrderDetails_cmd.Prepared = true
rsOrderDetails_cmd.Parameters.Append
rsOrderDetails_cmd.CreateParameter("param1", 5, 1, -1,
rsOrderDetails__MMColParam) ' adDouble

Set rsOrderDetails = rsOrderDetails_cmd.Execute
rsOrderDetails_numRows = 0
%>

BTW you can use shorthand for response.write:

<%= Request("VendorTxCode") %>

--
Ken Ford
Adobe Community Expert


"tradmusic.com" <sales@NOSHPAMtradmusic.com> wrote in message
news:edp5av$5vm$1@forums.macromedia.com...
> Hi,
>
> I have some code which displays a unique order ID from a payment service
> provider (Protx) which is returned to my "receipt" page (.asp) on my web
> site.
> This order ID can be displayed on the page like this:
> <%response.write VendorTxCode%>
>
> I would like to use this ID to create a recordset so that I can display
> the order details on the receipt page, but I'm not sure how to insert this
> value into a simple recordset statement.
>
> Here's what I tried so far.
>
> <%
> Dim rsOrderDetails__VARvendortxcode
> rsOrderDetails__VARvendortxcode = "1"
> If (VendorTxCode <> "") Then
> rsOrderDetails__VARvendortxcode = VendorTxCode
> End If
> %>
> <%
> Dim rsOrderDetails
> Dim rsOrderDetails_cmd
> Dim rsOrderDetails_numRows
>
> Set rsOrderDetails_cmd = Server.CreateObject ("ADODB.Command")
> rsOrderDetails_cmd.ActiveConnection = MM_connNAME_STRING
> rsOrderDetails_cmd.CommandText = "SELECT * FROM dbo.qryorderspaidorders
> WHERE orderID = ?"
> rsOrderDetails_cmd.Prepared = true
> rsOrderDetails_cmd.Parameters.Append
> rsOrderDetails_cmd.CreateParameter("param1", 5, 1, -1,
> rsOrderDetails__VARvendortxcode) ' adDouble
>
> Set rsOrderDetails = rsOrderDetails_cmd.Execute
> rsOrderDetails_numRows = 0
> %>
>
> With the above recordset, I receive an error about the value being of the
> wrong type. So I changed the type to be adVarChar:
>
> <%
> Dim rsOrderDetails__VARvendortxcode
> rsOrderDetails__VARvendortxcode = "1"
> If ("& VendorTxCode" <> "") Then
> rsOrderDetails__VARvendortxcode = VendorTxCode
> End If
> %>
> <%
> Dim rsOrderDetails
> Dim rsOrderDetails_cmd
> Dim rsOrderDetails_numRows
>
> Set rsOrderDetails_cmd = Server.CreateObject ("ADODB.Command")
> rsOrderDetails_cmd.ActiveConnection = MM_connNAME_STRING
> rsOrderDetails_cmd.CommandText = "SELECT * FROM dbo.qryorderspaidorders
> WHERE orderID = ?"
> rsOrderDetails_cmd.Prepared = true
> rsOrderDetails_cmd.Parameters.Append
> rsOrderDetails_cmd.CreateParameter("param1", 200, 1, 25,
> rsOrderDetails__VARvendortxcode) ' adVarChar
>
> Set rsOrderDetails = rsOrderDetails_cmd.Execute
> rsOrderDetails_numRows = 0
> %>
>
> Anyway, this is't working either so maybe I should just stick to a numeric
> value as the data IS numeric. I'm not convinced that I'm calling the
> <%response.write VendorTxCode%> correctly though so I'd appreciate some
> guidance on this, if anyone can help. Very much appreciated. Cheers.
>
> Regards
> nath.
>
>


Translate