How to use value from primary accessdatasource control as parameter in select query for secondary ac
Posted
by weedave
on Stack Overflow
See other posts from Stack Overflow
or by weedave
Published on 2010-05-06T15:10:28Z
Indexed on
2010/06/01
16:03 UTC
Read the original article
Hit count: 183
Hi,
I'm trying to display all orders placed and I have a primary accessdatasource control that has a select query to get the customer information and the orderID. I want to use the orderID value from this first query as a parameter for the secondary accessdatasource control that selects the product information of the products in the order. In plain english, I want to:- select product info from product table where orderID = ? (where ? is the orderID value from the first query)
I have tried the <%#Eval("OrderID")%> but I get a "server tag not well formed" error, but I do get results returned when I just type the order ID in, but obviously every result (order) just contains the same product info...
<asp:Repeater ID="Repeater1" runat="server"
DataSourceID="AccessDataSource1">
<ItemTemplate>
<asp:AccessDataSource ID="AccessDataSource2" runat="server" DataFile="~/App_Data/project.mdb" SelectCommand="SELECT orderDetails.OrderID, album.Artist, album.Album, album.Cost, album.ImageURL, orderDetails.Quantity, orderDetails.Total FROM (album INNER JOIN orderDetails ON album.AlbumID = orderDetails.AlbumID) WHERE (orderDetails.OrderID = ? )">
<SelectParameters>
// Error is on this line
<asp:Parameter Name="OrderID" DefaultValue="<%#Eval ("OrderID")%>" />
</SelectParameters>
</asp:AccessDataSource>
<div class="viewAllOrdersOrderArea">
<div class="viewAllOrdersOrderSummary">
<p><b>Order ID: </b><%#Eval("OrderID")%></p>
<h4>Shipping Details</h4>
<p><b>Shipping Address: </b><%#Eval("ShippingName")%>, <%#Eval("ShippingAddress")%>, <%#Eval("ShippingTown")%>, <%#Eval("ShippingPostcode")%></p>
<h4>Payment Details</h4>
<p><b>Cardholder's Address: </b><%#Eval("CardHolder")%>, <%#Eval("BillingAddress")%>, <%#Eval("BillingTown")%>, <%#Eval("BillingPostcode")%></p>
<p><b>Payment Method: </b><%#Eval("CardType")%></p>
<p><b>Card Number: </b><%#Eval("CardNumber")%></p>
<p><b>Start Date: </b><%#Eval("StartDate")%>, Expiry Date: <%#Eval("ExpiryDate")%></p>
<p><b>Security Digits: </b><%#Eval("SecurityDigits")%></p>
<h4>Ordered items:</h4>
<asp:Repeater ID="Repeater2" runat="server"
DataSourceID="AccessDataSource2">
<ItemTemplate>
<div style="display: block; float: left;">
<div class="viewAllOrdersProductImage">
<img width="70px" height="70px" alt="<%# Eval("Artist") %> - <%# Eval("Album") %>" src="assets/images/thumbs/<%# Eval("ImageURL") %>" />
</div>
<div style="display:block; float:left; padding-top:15px; padding-right:20px;"><p><b><%# Eval("Artist") %> - <%# Eval("Album") %></b></p>
<p>£<%# Eval("Cost") %> x <%# Eval("Quantity") %> = £<%#Eval("Total")%></p></div>
</div>
</ItemTemplate>
</asp:Repeater>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
© Stack Overflow or respective owner