ASP - Catalogo

 
Vista:

Catalogo

Publicado por Elizabeth (5 intervenciones) el 27/07/2005 06:07:40
Hola

realice un catalogo utilizando ASP conectandolo a una BD en Access
mi problema esta en que cuando tengo datos parecidos dentro de diferentes campos, no me muestra todos los articulos que tengo en existencia, solo me muestra el articulo que tiene los datos parecidos en los campos.

Como podria resolver esto?

mi consulta esta asi
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Grupo like'"& Grupo & "%'")

y si en los campos tengo diferentes datos si me muestra todos los articulos existentes.

supongo que ahunque haya datos parecidos dentro de varios campos deveria de mostrarlos,(estoy en lo correcto si o no)
alguien me puede ayudar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Catalogo

Publicado por octavio (131 intervenciones) el 27/07/2005 18:02:52
Hola,

Por lo que indicas puedo pensar que deseas alguna de estas opciones:

Si quieres que todos los registros que empiece o contengan, lo que tiene tu variable grupo debes usar asi la cadena:

Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Grupo like %'"& Grupo & "%'")

ya que con el % que tenia le indicabas, que solo los registros que inicaran con esa cadena te mostrará, si habia alguno que tenia la cadena en medio o al final no lo hacia, prueba si no te gusta el resultado pruebalo quitrando el ultimo %.

Si quieres que tambien busque en Descripción, Material, la cadena debe ser:

Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Grupo like %'"& Grupo & "%'") OR descripcion like %'"& Grupo & "%'")
OR material like %'"& Grupo & "%'")

espero haberte ayudado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Catalogo

Publicado por Elizabeth (5 intervenciones) el 28/07/2005 06:26:06
Si gracias si me ayuda y en mucho

solo una pregunta mas , quisiera saber por que no me muestra todos los articulos que tengo dentro de mi base de Datos cuando el nombre de Material (por ejemplo) y la Marca son Iguales, y si le pongo datos diferentes en ambos campos si me muestra todos los articulos.

Detalladamente

en mi BD tengo 700 art. de ellos tienen su Descripcion, numerode Material, a que Grupo pertenecen, y de que Marca son,

en la realizacion de mi busqueda , cuando hay datos iguales dentro de campos diferentes, solo me muestra el articulo que tienen esos datos iguales, asi yo pueda tener 80 articulos que pertenezcan al mismo grupo de articulo, no me los muestra, cual crees que puede ser mi problema?

espero me hayas entendido, y me puedas ayudar.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Catalogo

Publicado por octavio (131 intervenciones) el 28/07/2005 19:50:12
Si puedes poner ejemplos de los datos que no te presenta en el la busqueda, asi analizariamos porque no los toma en cuenta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Catalogo

Publicado por Elizabeth (5 intervenciones) el 29/07/2005 07:23:55
El nombre de los campos

Refacciones, en el pongo por decir a la familia que pertenece el artículo
RutaFoto; la ruta de donde tengo la imagen
Descripcion; describe la pieza o articulo
Material; la clave del artículo,

Grupo; el grupo de articulo a la que pertenece

Si yo tengo En el Campo Descripción
Lincoln

Y en el campo Grupo;
Lincoln

y tengo dentro de mi BD muchos artículos que en la Descripción sean de la familia Lincoln pero en el Grupo de articulo pertenecen a otro por ejem material de empaque, o equipo de medida etc.

al realizar la búsqueda solo me muestra el articulo que tiene lo mismo en estos dos campos, cosa que no debería, si no me debería de mostrar todos los artículos que tengan como descripción Linconl dentro de mi BD ,ya verifique mis consultas y si están bien, solo aquí es donde me muestra este error
te pongo las consultas que utilizo, en cada una de ellas realizo una búsqueda por cada campo , solo en la descripción es donde hago una búsqueda mas explicita ya que ahí la cadena es mas grande.

Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Grupo like'"& Grupo & "%'")

If (oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Material like'"& Grupo & "%'")
end If

If(oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Descripcion like'"& Grupo & "%'")
If(oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Descripcion like'%"& Grupo & "%'")
end If
If(oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Descripcion like'%"& Grupo& "'")
end If
end If


If(oRs.eof)then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Refacciones like'"& Grupo & "%'")
end If
If(oRs.eof)then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales,tblMarcas Where tblMateriales.Id_Marca=tblMarcas.Id_Marca and tblMarcas.Marca like'"& Grupo & "%'")
end If
%>

Espero que si haya sido un poco mas explicita, si no pues me dices y vemos que puedo hacer.

gracias

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Catalogo

Publicado por octavio (131 intervenciones) el 29/07/2005 18:27:21
Ok el problema radica en el oRs.eof

Si lo ves de la siguiente forma veras el error:

If(oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Descripcion like'"& Grupo & "%'")
If(oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Descripcion like'%"& Grupo & "%'")
end If
If(oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Descripcion like'%"& Grupo& "'")
end If
end If

Primer paso executa el recordset, este busca y si regresa por lo menos 2 registros, la bandera del recorset esta en FALSE, ya que no esta al final, como el siguiente paso es volver a checar con el if el estado del recordset de ese mismo ("es el mismo nombre"), este sigue en false, y se salta eso, ya debe estar en TRUE para que ejecute, y asi igual con el 3 paso. Por eso no hace más que el primero.

Debes anidarlos bien y usar recordcount If(oRs.RecordCount=0)Then

Para que no tengas problemas con las busquedas, solo ejecuta la segunda:

If(oRs.eof)Then
Set oRs=oConn.Execute("SELECT RutaFoto,Descripcion,Material,Grupo FROM tblMateriales Where Descripcion like'%"& Grupo & "%'")
end If

busca en todo el texto principio y fin cualquier concidencia, mejor asi solo obtienes un recordset con todos los registros.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Catalogo

Publicado por Elizabeth (5 intervenciones) el 31/07/2005 06:43:01
muchas muchas gracias

otra pregunta
de que otra forma puedo recoger valores, para realizar la busqueda sin utilizar formulario?

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Catalogo

Publicado por octavio (131 intervenciones) el 01/08/2005 15:53:43
mmm,

Puedes de otra consulta obtener datos y buscar, pero siempre ocupas un formulario, solo lo que usen en el mismo, puede facilitarte la busqueda o no.

Si tiene un combo de marcas, es facil buscar la que necesitas, a tener que escribir la marca, si no la conoces bien, y buscarla por texto.

Tambien puedes recoger datos de la dirección (busqueda.asp?id=14), aqui aplicando Request.querystring("id"), recoges el número 14, que puede ser la llave de tu catalago.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Catalogo

Publicado por Elizabeth (5 intervenciones) el 03/08/2005 07:45:45
lo que pretendo es despues de realizar mi busqueda, y ya que me haya dado los datos que clasifican a el articulo mostrado, me buelva a mostrar los articulos que tengo clasificados en el Grupo, o su Ubicaion, asi como la marca.

boy a lo siguiente, cuando realizo la busqueda,(pag1) me despliega todos los articulos que tengo dentro de esa categoria(me muestra la imagen con una breve descripcion ) (pag 2), ya sean hojas, o disketes, si lo busco por marca, me mostrara todos los articulos que tengo de esa marca, si es por ubicacion, me mostrara todos los articulo que se encuentran en esa ubicacion, al dar click sobre la imagen,(pag 3) me mostara ya una descripcion detallada de este articulo que he elegido, mostrandome datos especificos como
Imagen
Grupo;
Descripcion;
Material;
Ubicacion
Marca

lo que pretendo es que en Grupo, Ubicacion y Marca, tenga otro acceso a la paguina 2 (sea una liga mas)en la que me muestre los articulos que pertenescan a ese grupo, o que se emcuentren en la ubicaion en la que esta este articulo, o me muestre todos los articulos que sean de esta marca.

cual seria lo mas aconsejable para lograr esto, ya que si utilizo la variable "Grupo", que es el nombre asignado para recoger los daton dentro del formulario, solo realizaria la busqueda dela primera especificacion.

espero que si me haya explicado de lo que quisiera hacer, y me puedas ayudar a dar solucion a esto.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar