Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal!
Estou com dificuldades para montar esse RecordSet.
Nele são consultadas 3 tabelas: tbl_Produtos, tbl_ProdImagens, tbl_ProdCategorias
Cadastrei 2 produtos para a categoria 1, porém apenas um dos produtos possui imagem.
Acontece que no Recorset abaixo, só é mostrado um produto. (o que contem a imagem).
Se eu cadastro mais de uma imagem para o produto, ele lista o mesmo produto 2 vezes.
Perguntas:
1)Como eu construo esse Recordset para que ele também liste os produtos que não possue imagem cadastrada?
2)E como fazer para que ele não repita o produto mais de uma vez caso haja mais de uma imagem para o mesmo produto?
No caso do 1º creio que o problema esteja nessa instrução: AND tbl_ProdImagens.idProduto = tbl_Produtos.idProduto .
Ao invés de mandar parte do código, vou postar o código inteiro;
ASP
<%@LANGUAGE="VBSCRIPT"%>
<!--#include virtual="/Connections/principal.asp" -->
<%
Dim rsProdutorsList__MMColParam
rsProdutorsList__MMColParam = "1"
If (Request.QueryString("CatProd") <> "") Then
rsProdutorsList__MMColParam = Request.QueryString("CatProd")
End If
%>
<%
Dim rsProdutorsList__MMColParam2
rsProdutorsList__MMColParam2 = "1"
If (Request.QueryString("CatProd") <> "") Then
rsProdutorsList__MMColParam2 = Request.QueryString("CatProd")
End If
%>
<%
Dim rsProdutorsList
Dim rsProdutorsList_cmd
Dim rsProdutorsList_numRows
Set rsProdutorsList_cmd = Server.CreateObject ("ADODB.Command")
rsProdutorsList_cmd.ActiveConnection = MM_principal_STRING
rsProdutorsList_cmd.CommandText = "SELECT * FROM tbl_ProdCategorias, tbl_Produtos, tbl_ProdImagens WHERE tbl_Produtos.idCatProd = ? AND tbl_ProdCategorias.idCatProd = ? AND tbl_ProdImagens.idProduto = tbl_Produtos.idProduto "
rsProdutorsList_cmd.Prepared = true
rsProdutorsList_cmd.Parameters.Append rsProdutorsList_cmd.CreateParameter("param1", 5, 1, -1, rsProdutorsList__MMColParam) ' adDouble
rsProdutorsList_cmd.Parameters.Append rsProdutorsList_cmd.CreateParameter("param2", 5, 1, -1, rsProdutorsList__MMColParam2) ' adDouble
Set rsProdutorsList = rsProdutorsList_cmd.Execute
rsProdutorsList_numRows = 0
%>
<%
Dim RepProdList__numRows
Dim RepProdList__index
RepProdList__numRows = -1
RepProdList__index = 0
rsProdutorsList_numRows = rsProdutorsList_numRows + RepProdList__numRows
%><link href="/site/library/css/csspage.css" rel="stylesheet" type="text/css">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="25" class="bordaGrossaGreen bordaDottedRed"><h2>PRODUTOS</h2></td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td> </td>
</tr>
<tr>
<td><a href="/site/">Inicio</a> / <a href="/?Page=CateProdutos">Compra e Venda</a> / <span class="RedPersonalize"><strong></strong></span></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><%
While ((RepProdList__numRows <> 0) AND (NOT rsProdutorsList.EOF))
%>
<% If Not rsProdutorsList.EOF Or Not rsProdutorsList.BOF Then %>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150"><img name="t" src="" alt="<%=(rsProdutorsList.Fields.Item("NomeProd").Value)%>"></td>
<td valign="top" style="padding-left:10px;"><h3><%=(rsProdutorsList.Fields.Item("NomeProd").Value)%></h3><br>
<span class="Normal"> <%
Dim BreveDescprod
BreveDescProd = Mid((rsProdutorsList.Fields.Item("DescProd").Value),1,100)
Response.Write(BreveDescProd)
%></span>
</td>
</tr>
</table>
<% End If ' end Not rsProdutorsList.EOF Or NOT rsProdutorsList.BOF %>
<%
RepProdList__index=RepProdList__index+1
RepProdList__numRows=RepProdList__numRows-1
rsProdutorsList.MoveNext()
Wend
%></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Anterior - Próximo</td>
</tr>
</table>
<%
rsProdutorsList.Close()
Set rsProdutorsList = Nothing
%>
Obrigado pela atenção.
Abraços
Carregando comentários...