Jump to content


Photo

Problema Com Checagem De Estoque


  • Faça o login para participar
1 reply to this topic

#1 D-Style

D-Style

    12 Horas

  • Usuários
  • 133 posts
  • Sexo:Não informado

Posted 19/06/2009, 15:11

Fala galera, tranquilo?

To com um probleminha chato que desde o começo da semana tento resolver e até agora nada, então vim aqui pedir a ajuda de vocês...
O problema é o seguinte: estou adaptando a Loja Exemplo da Locaweb para um cliente, e estou criando um controle de estoque de produtos por tamanhos... Até aí beleza... O problema está na hora de checar o estoque no momento da exibição dos produtos para os compradores.

<%Set RS_Tamanhos = Server.CreateObject("ADODB.Recordset")    RS_Tamanhos.CursorLocation = 3    RS_Tamanhos.CursorType = 0    RS_Tamanhos.LockType = 3    RS_Tamanhos.Open "SELECT codigo_tamanho, nome_tamanho FROM Tamanhos ORDER BY nome_tamanho", Conexao    Coluna = 0	    If RS_Tamanhos.Eof Then    Else            While Not RS_Tamanhos.EOF            If tamanhos <> "" Then                 Vetor = Split(tamanhos, ",")                 For I = 0 To Ubound(Vetor)                     If CDbl(Vetor(I)) = CDbl(RS_Tamanhos("codigo_tamanho")) then%><input type="radio" name="nome_tamanho" value="<%=RS_Tamanhos("codigo_tamanho")%>" <%If I = 0 Then%> checked<%End If%>><%=RS_Tamanhos("nome_tamanho")%><%					    Coluna=Coluna+1                    End If                Next 			End If 	            'Monta o numero de produtos por linha            If Coluna >=5 Then            Coluna=0%>            <br><%          End If            RS_Tamanhos.MoveNext            Wend    End If   'Fecha e libera da memória o objeto de Recordset    RS_Tamanhos.Close    Set RS_Tamanhos = Nothing%>

Esse é o código original, onde ele chega os tamanhos existentes do banco (MySQL). Porém, a quantidade de produtos para cada tamanho está na tabela Produtos com os campos:
- quantidade_produtoPP (p/ tamanho PP)
- quantidade_produtoP (p/ tamanho P)
- quantidade_produtoM (p/ tamanho M)
- quantidade_produtoG (p/ tamanho G)
- quantidade_produtoGG (p/ tamanho GG)

Aí que está morando o problema... Depois que ele checa os tamanhos disponíveis para o produto separando eles com o comando Vetor = Split(tamanhos, ","), eu preciso que ele só exiba os tamanhos com quantidade superior a 0.

Exemplo: Se o produto tem os tamanhos P, M e G, mas no estoque o tamanho M está zerado (quantidade_produtoM = 0), então a página vai exibir apenas as opções P e G.



Como os tamanhos de cada produto ficam registrados em um mesmo campo (tamanho) divididos por vírgula, dentro da tabela Produtos, o que me sugerem?


Abraços e obrigado!

Edição feita por: D-Style, 19/06/2009, 15:13.


#2 Renan L. Queiroz

Renan L. Queiroz

    Mestre

  • Usuários
  • 690 posts
  • Sexo:Masculino
  • Localidade:Brasilia - DF

Posted 22/06/2009, 10:13

Você terá que incluir na sua pesquisa a quantidade de produtos disponíveis para tal tamanho!
Inclua um Join com a tabela de produtos na de tamanho, ai vc terá a quantidade de cada tamanho.
<%
...
	Dim sqlPesquisa
	sqlPesquisa = "select t.codigo_tamanho, t.nome_tamanho, count(e.COD_PRODUTO) as quantidade" &_
				  "from tamanhos inner join TABELA_ESTOQUE e on e.codigo_tamanho = t.codigo_tamanho "&_
				  "group by t.codigo_tamanho, t.nome_tamanho "&_
				  "order by t.nome_tamanho"
	RS_Tamanhos.Open sqlPesquisa, Conexao
...
%>
Entendeu? (ok2)

Especialidade: Desenvolvimento e Banco de Dados.


Este post lhe ajudou? Agradeça: Posted Image





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq