Access + ASP, Ayuda

Antes que nada un afectuoso saludo, espero y me puedas ayudar con los problemas con los cuales me encuentro en este momento, el primero es con Access, resulta que tengo tres tablas enlazadas entre si, que son Trafico, Facturas y Producto, cree un formulario para su captura, se introducen los datos sin ningún problema, ¿el problema viene cuando quiero hacer un? ¿Query? O consulta SQL, pues por ejemplo pido que me haga un listado de unas mercancías que cumplan con una condición, pero solo me muestra la 1era de ellas que cumple la condición. Siendo que en realidad son varias.
La sentencia SQL es la siguiente:
SELECT Trafico.Trafico, Trafico.FechaLLegada, Trafico.FechaSalida, Facturas.Factura, Facturas.OrdenCompra, Productos.Producto, Productos.Descripcion, Productos.Cantidad, Productos.UnidadMedida, Productos.CantPresentacion, Productos.Presentacion, Productos.Observaciones
FROM (Trafico INNER JOIN Facturas ON Trafico.pk1=Facturas.pk1_trafico) INNER JOIN Productos ON Facturas.pk1=Productos.pk1_Facturas
WHERE (((Trafico.FechaSalida) Is Null)) OR (((Trafico.FechaSalida)=0));
Y solo me muestra el 1er registro que cumpla la condición.
Lo siguiente que deseo es que desde ASP, introduzca un rango de Fechas, y me muestre por ejemplo la sentencia de arriba pero de una fecha determinada a otra.
Respuesta
1
Dejame ver como lo analizo y te comento al rato.
Prueba con:
SELECT Trafico.Trafico, Trafico.FechaLLegada, Trafico.FechaSalida, Facturas.Factura, Facturas.OrdenCompra, Productos.Producto, Productos.Descripcion, Productos.Cantidad, Productos.UnidadMedida, Productos.CantPresentacion, Productos.Presentacion, Productos.Observaciones
FROM Trafico INNER JOIN Facturas ON Trafico.pk1=Facturas.pk1_trafico INNER JOIN Productos ON Facturas.pk1=Productos.pk1_Facturas
WHERE Trafico.FechaSalida Is Null OR Trafico.FechaSalida=0;
Y revisa que los nombres de los campos sean exactamente los que indicas ya que no me parece que estén bien, es decir, no veo como un pk1 sea el nombre del campo por el que se relacionan.
Para el rango de fechas:
SELECT Trafico.Trafico, Trafico.FechaLLegada, Trafico.FechaSalida, Facturas.Factura, Facturas.OrdenCompra, Productos.Producto, Productos.Descripcion, Productos.Cantidad, Productos.UnidadMedida, Productos.CantPresentacion, Productos.Presentacion, Productos.Observaciones
FROM Trafico INNER JOIN Facturas ON Trafico.pk1=Facturas.pk1_trafico INNER JOIN Productos ON Facturas.pk1=Productos.pk1_Facturas
WHERE Trafico.FechaSalida between "20040101" and "20040131";
Lo anterior te trae las fechas entre el primero de enero y en 31 de enero.
Saludos, tuve problemas para usar esa Sentencia SQL, me marco error, al parecer faltaban los paréntesis en:
" FROM Trafico INNER JOIN Facturas ON Trafico.pk1=Facturas.pk1_trafico "
lo he dejado asi:
" FROM (Trafico INNER JOIN Facturas ON Trafico.pk1=Facturas.pk1_trafico) "
Se lo he puesto y me sigue mostrando solo el 1ero que cumple la condición.
A continuación te muestro una captura de pantalla de como están enlazadas las tablas:
http://webs.demasiado.com/tecmonito/Consulta_Tabla.PNG
Gracias por el interés, espero tu ayuda.
Saludos!
Perdón por la tardanza, pero la forma de herencia de tráfico a facturas se entiende pero la de productos y facturas, de quién a quién va, ya que si la lógica impera, facturas sería hija de tráfico y de productos, si es así falta un campo de relación.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas