Access - ayuda con consultas

   
Vista:

ayuda con consultas

Publicado por edgar conedgar2006@hotmail.com (5 intervenciones) el 27/01/2014 22:47:41
buenas tardes comapaneros del foro...
estoy intentando armar una conuslta para saber el estado de cuenta de mis clientes
COMPRA1 donde obtengo el total de venta a credito a dicho cliente
PAGO1 donde obtengo el total cobrado al cliente
ANTERIOR1 aca el error debe ser algun operador mal colocado, si alguien puede ayudarme

las sql son
COMPRA1

SELECT 'Compras' AS Tipo, FECHA, IMPORTE AS CANTIDAD, Nombcli, Codclie
FROM sumafac1
WHERE FECHA>=[FECHA INICIO];

PAGO1

SELECT 'pagos' AS Tipo, fechentrega, monto1 AS monto, Nombcli, Codclie
FROM sumcobro1
WHERE fechentrega>=[FECHA INICIO];

ANTERIOR1

SELECT 'Anterior' AS Tipo, [FECHA INICIO]-1 AS FECHA, DSum('IMPORTE','sumafac1','FECHA <' & [FECHA INICIO])+DSum('IMPORTE','sumafac1','FECHA <' & [FECHA INICIO]) AS [FECHA INICIO]), AS Cantidad , ' 'As Nombcli, ' ' As Codclie
FROM sumafac1
WHERE FECHA>=[FECHA INICIO];

el cursor queda piscando el el ) en negrita----A <' & [FECHA INICIO]) AS [FECHA INICIO]), AS Cantidad , ' 'As Nombcli, ' ' As Codclie
FROM sumafac1
WHERE FECHA>=[FECHA INICIO];
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
Imágen de perfil de Norberto

ayuda con consultas

Publicado por Norberto (432 intervenciones) el 28/01/2014 15:18:11
Hola.

Sobran el paréntesis que marcas en negrita y la coma que va detrás. No obstante, no entiendo la expresión en absoluto. ¿Sumas dos veces el importe de sumafac1 (DSum(...) + DSum(...)) de todos los que tengan una fecha anterior al parámetro [FECHA INICIO] y al resultado lo intentas llamar [FECHA INICIO] (As [FECHA INICIO]?

Ya nos dirás,

Nor.
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

ayuda con consultas

Publicado por edgar conedgar2006@hotmail.com (5 intervenciones) el 28/01/2014 17:09:11
Hola nor.. sacando el ) y la como me salta el error en AS negrita

SELECT 'Anterior' AS Tipo, [FECHA INICIO]-1 AS FECHA, DSum('IMPORTE','sumafac1','FECHA <' & [FECHA INICIO])+DSum('IMPORTE','sumafac1','FECHA <' & [FECHA INICIO]) AS [FECHA INICIO] AS Cantidad, ' ' AS Nombcli, ' ' AS Codclie
FROM sumafac1
WHERE FECHA>=[FECHA INICIO];


a ver si me explico lo que necesito es el estado de cuenta del cliente sus compras y pagos y el saldo final.
esto lo calculo bien, lo que ahora necesito es poder sacar ese informe por ejemplo desde 01/01/2014 al 15/01/2014
y al hacer esto solo me sumas las facturas desde es 01/01/2014. por eso estoy tratando de sumarle su historico, por ejemplo el cliente compra desde 01/11/2013 para sacar un informe tipo este

informe desde 01/01/2014 al 15/01/2014

01/01/2014 historico 250.000 250.000
02/01/2014 compras 50.000 300.000
13/01/2014 pago -100.000 200.000
15/01/2014 compra 50.000 250.000
saldo 250.000
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
Imágen de perfil de Norberto

ayuda con consultas

Publicado por Norberto (432 intervenciones) el 29/01/2014 09:13:09
Ok.

Tu lo que necesitas es "inventar" un registro que acumule los movimientos del cliente y que se muestre al principio de la consulta. Pero me surgen varias dudas:

1 ¿Por qué pones
DSum('IMPORTE','sumafac1','FECHA <' & [FECHA INICIO])
+
DSum('IMPORTE','sumafac1','FECHA <' & [FECHA INICIO])
? Ésto suma dos veces el sumatorio del importe de sumfac1. ¿Por qué lo quieres dos veces sumado? ¿No debería ser una sumfac1 y otra sumcobro1?

2. ¿Por qué pones dos veces seguidas AS?. AS sirve para dar nombre a una expresión.
Expresión1 AS Nombre1, Expresión2 AS Nombre2... Lo que no puedes es dar 2 nombres a una expresión con Expresión AS Nombre1 AS Nombre2.

3. ¿Por qué das valores blanco al código y al nombre del cliente? Si las consultas sacan los datos de sumfac1 y sumcobro1 y éstas contienen información de un unico cliente no hace falta que estos campos estén en las consultas y si son de varios, al hacer el DSum, te va a sumar los movimientos de todos los clientes. En este caso deberías hacer una consulta de Totales que agrupe por Cliente y sume los montos o incluir en el criterio el código del cliente.

4. Si pretendes juntar en una única consulta datos de 3: COMPRA1, PAGO1 y ANTERIOR1 deberás usar una consulta de UNION.

Ya nos dirás,

Nor.
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

ayuda con consultas

Publicado por edgar conedgar2006@hotmail.com (5 intervenciones) el 29/01/2014 11:47:35
gracias por la respuesta, a ver si me puedes ayudar a montar mi consulta anterior, esta es la estructura de mis 2 consultas sumafac1-- todas las compras a credito y sumcobro1-- los pagos realizados
sumafac1 tipo de datos
FECHA fecha
IMPORTE numerico
Nombcli texto
Codclie numerico

sumcobro1
fechentrega
monto1 --------- aqui multiplico por(-1) asi cuando realizo la suma continua me va restando los pagos para el saldo
Nomcli final del cliente
Condclie

ahora como seria la forma mas sencilla de plantear inventar lo anterior para aue salga en la primera linea y despues siga las demas compras y pagos, de esta manera evito imprmir varias hojas cuando un cliente pide su exracto por que si pido el informe en intervalos de fechas no me cuadran los numeros por que me falta el historico o anterior
dejo unas imagenes como dearia armar el informe
[url][/url]

desearia poder pedir desde el 25 al 27 el estado de cuenta y en la primera linea que me sume su historico o a terior que seria de 103140 de esa manera la suma continua del saldo no va variar

sin el ihstorico al pedir el informe por fechas me da asi y los numeros no cuadran para nada
[url][/url]
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
Imágen de perfil de Norberto

ayuda con consultas

Publicado por Norberto (432 intervenciones) el 30/01/2014 09:40:15
Hola de nuevo.

Te he preparado un pequeño ejemplo a ver si te sirve.

Un saludo,

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

ayuda con consultas

Publicado por edgar (5 intervenciones) el 30/01/2014 14:55:52
sos un grande!!!! es eso mismo lo que necesito ahora voy a adaptar a mi base y te comento como me fue, desde ya te estoy muy agradecido..
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