DCont en una consulta

03/07/2003 - 19:59 por Greg | Informe spam
Buenas,
Me he leido todo lo que me "devolvio" google sobre DCont
pero no encontre nada así que, o tiro la base de datos
por la ventana - el ordi no, que me quedan 6 plazos :( -
o me voy a emborrachar.
Aunque quizas me quereis echar una mano para salvar mi
povre higado?

Lo que entendí (creo!):
1º: Hay casos en los que la función Cuenta (o Suma,...)
no funciona porque no le da la gana, sobre todo si añades
una tabla en el medio de otras 2 en la consulta que en
lugar de contar tiene más bien tendencia a multiplicar.
2º: En estos casos, resulta muy util utilizar una función
agregada de dominio (ni idea de lo que significa pero así
lo ponen en la "ayuda" de access) cono DCont, DSum,...
3º: Si trabajas con un formulario, todo bien porque le
pones Me. delante del nombre del campo y ya esta.

Lo que no entiendo:
Por qué mi función: DCont
("IdAlumno";"[Alumnos/Grupos]";"IdGrupo = ' " & [IdGrupo]
& " ' ") me devuelve un 0 patatero para todos los
registros de mi CONSULTA ??? (por supuesto, no tendría
que ser)

Help! Aide! Ayuda! etc..

Gracias de antemano

Lo que no entiendo

Preguntas similare

Leer las respuestas

#1 Sashka
03/07/2003 - 22:44 | Informe spam
IdGrupo es un campo de texto???? porque así se lo estás pasando. si no
lo és... lo que pasa es que no encuentra y te devuelve 0 quítale las
comillas simples

Sashka

"Greg" escribió en el mensaje
news:085601c3418c$d92540b0$
Buenas,
Me he leido todo lo que me "devolvio" google sobre DCont
pero no encontre nada así que, o tiro la base de datos
por la ventana - el ordi no, que me quedan 6 plazos :( -
o me voy a emborrachar.
Aunque quizas me quereis echar una mano para salvar mi
povre higado?

Lo que entendí (creo!):
1º: Hay casos en los que la función Cuenta (o Suma,...)
no funciona porque no le da la gana, sobre todo si añades
una tabla en el medio de otras 2 en la consulta que en
lugar de contar tiene más bien tendencia a multiplicar.
2º: En estos casos, resulta muy util utilizar una función
agregada de dominio (ni idea de lo que significa pero así
lo ponen en la "ayuda" de access) cono DCont, DSum,...
3º: Si trabajas con un formulario, todo bien porque le
pones Me. delante del nombre del campo y ya esta.

Lo que no entiendo:
Por qué mi función: DCont
("IdAlumno";"[Alumnos/Grupos]";"IdGrupo = ' " & [IdGrupo]
& " ' ") me devuelve un 0 patatero para todos los
registros de mi CONSULTA ??? (por supuesto, no tendría
que ser)

Help! Aide! Ayuda! etc..

Gracias de antemano

Lo que no entiendo
Respuesta Responder a este mensaje
#2 Jose A. Gimenez [Py]
03/07/2003 - 22:49 | Informe spam
Y no probaste Dcount???
saludos

JOSE

"Greg" escribió en el mensaje
news:085601c3418c$d92540b0$
Buenas,
Me he leido todo lo que me "devolvio" google sobre DCont
pero no encontre nada así que, o tiro la base de datos
por la ventana - el ordi no, que me quedan 6 plazos :( -
o me voy a emborrachar.
Aunque quizas me quereis echar una mano para salvar mi
povre higado?

Lo que entendí (creo!):
1º: Hay casos en los que la función Cuenta (o Suma,...)
no funciona porque no le da la gana, sobre todo si añades
una tabla en el medio de otras 2 en la consulta que en
lugar de contar tiene más bien tendencia a multiplicar.
2º: En estos casos, resulta muy util utilizar una función
agregada de dominio (ni idea de lo que significa pero así
lo ponen en la "ayuda" de access) cono DCont, DSum,...
3º: Si trabajas con un formulario, todo bien porque le
pones Me. delante del nombre del campo y ya esta.

Lo que no entiendo:
Por qué mi función: DCont
("IdAlumno";"[Alumnos/Grupos]";"IdGrupo = ' " & [IdGrupo]
& " ' ") me devuelve un 0 patatero para todos los
registros de mi CONSULTA ??? (por supuesto, no tendría
que ser)

Help! Aide! Ayuda! etc..

Gracias de antemano

Lo que no entiendo
Respuesta Responder a este mensaje
#3 E. Feijoo
03/07/2003 - 23:55 | Informe spam
¿ Que pondrías como valor 'real y existente en la tabla' en lugar de [IdGrupo] ?
Esto es:
Si en lugar de IdGrupo pones un valor ( indicalo aquí ) ¿ te da algún resultado que sea correcto ?

Un saludo E. Feijoo

P. D.
Las funciones agregadas de dominio son eso, Funciones ( llámalas subprogramas si quieres) que tiene incorporadas el motor del Access para ' facilitarte la vida'
Pueden ( en función de la que utilices ) devolverte un valor contar algo u sumarlo
Precisan tres parámetros, dos indispensables y optativo el tercero
Siempre son cadenas de texto
Se encierran entre paréntesis
El primero le indica el 'objeto' ( campo ) sobre el que va a actuar
El segundo, en donde esta ( la tabla )
El tercero que puede ser optativo, es una comparación o filtro
En tu caso seria así:
1º parámetro ==> "IdAlumno" <== campo sobre el que actuara
2º parámetro ==> "[Alumnos/Grupos]" <== Tabla en la que esta IdAlumno
3º parámetro ==> "IdGrupo = ' " & [IdGrupo] & " ' " <== filtra a aquellos cuya IdGrupo ( otro campo de la misma tabla ) sea igual a IdGrupo ( se supone que un campo del formulario)

Creo que el error esta en el parámetro que le pasas...
Escribes esto =' " & [IdGrupo] & " ' "
si IdGrupo fuese AAAA
Le pasarías " AAAA "
y el esperaría "AAAA"
Quita los espacios que hay entre el apostrofe ( comilla simple ) y la doble comilla ( a ambos lados )
Debería quedar así el tercer parámetro
"IdGrupo = '" & [IdGrupo] & "'"

Un saludo E. Feijoo


"Greg" escribió en el mensaje news:085601c3418c$d92540b0$
Buenas,
Me he leido todo lo que me "devolvio" google sobre DCont
pero no encontre nada así que, o tiro la base de datos
por la ventana - el ordi no, que me quedan 6 plazos :( -
o me voy a emborrachar.
Aunque quizas me quereis echar una mano para salvar mi
povre higado?

Lo que entendí (creo!):
1º: Hay casos en los que la función Cuenta (o Suma,...)
no funciona porque no le da la gana, sobre todo si añades
una tabla en el medio de otras 2 en la consulta que en
lugar de contar tiene más bien tendencia a multiplicar.
2º: En estos casos, resulta muy util utilizar una función
agregada de dominio (ni idea de lo que significa pero así
lo ponen en la "ayuda" de access) cono DCont, DSum,...
3º: Si trabajas con un formulario, todo bien porque le
pones Me. delante del nombre del campo y ya esta.

Lo que no entiendo:
Por qué mi función: DCont
("IdAlumno";"[Alumnos/Grupos]";"IdGrupo = ' " & [IdGrupo]
& " ' ") me devuelve un 0 patatero para todos los
registros de mi CONSULTA ??? (por supuesto, no tendría
que ser)

Help! Aide! Ayuda! etc..

Gracias de antemano

Lo que no entiendo



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.495 / Virus Database: 294 - Release Date: 30/06/2003
Respuesta Responder a este mensaje
#4 Greg
04/07/2003 - 14:25 | Informe spam
En el clavo!

Cuando decía yo que tenía una relación de amor odio con
Access! Casí nunca me funcionaba un función de dominio
con campos de texto simplemente porque ponía esta espacio
con el fin de leer mejor la formula ('" se lee bien aquí
pero no en Access que parece ''').

Gracias ya que no te imaginas la cantidad de dolores de
cabeza que me acabas de evitar en el futuro! Sin embargo,
en lo que se refiere a mi higado, es demasiado tarde: Ya
le pase factura anoche con una buena fiesta por lo que
Access no me quiso dar ayer por la tarde. :D

Te debo una copa (A Coruña)

¿ Que pondrías como valor 'real y existente en la tabla'


en lugar de [IdGrupo] ?
Esto es:
Si en lugar de IdGrupo pones un valor ( indicalo aquí )


¿ te da algún resultado que sea correcto ?

Un saludo E. Feijoo

P. D.
Las funciones agregadas de dominio son eso, Funciones (


llámalas subprogramas si quieres) que tiene incorporadas
el motor del Access para ' facilitarte la vida'
Pueden ( en función de la que utilices ) devolverte un


valor contar algo u sumarlo
Precisan tres parámetros, dos indispensables y optativo


el tercero
Siempre son cadenas de texto
Se encierran entre paréntesis
El primero le indica el 'objeto' ( campo ) sobre el que


va a actuar
El segundo, en donde esta ( la tabla )
El tercero que puede ser optativo, es una comparación o


filtro
En tu caso seria así:
1º parámetro ==> "IdAlumno" <== campo sobre el que


actuara
2º parámetro ==> "[Alumnos/Grupos]" <== Tabla en la que


esta IdAlumno
3º parámetro ==> "IdGrupo = ' " & [IdGrupo] & " ' " <==


filtra a aquellos cuya IdGrupo ( otro campo de la misma
tabla ) sea igual a IdGrupo ( se supone que un campo del
formulario)

Creo que el error esta en el parámetro que le pasas...
Escribes esto =' " & [IdGrupo] & " ' "
si IdGrupo fuese AAAA
Le pasarías " AAAA "
y el esperaría "AAAA"
Quita los espacios que hay entre el apostrofe ( comilla


simple ) y la doble comilla ( a ambos lados )
Debería quedar así el tercer parámetro
"IdGrupo = '" & [IdGrupo] & "'"

Un saludo E. Feijoo


"Greg" escribió en


el mensaje news:085601c3418c$d92540b0$
Buenas,
Me he leido todo lo que me "devolvio" google sobre DCont
pero no encontre nada así que, o tiro la base de datos
por la ventana - el ordi no, que me quedan 6 plazos :( -
o me voy a emborrachar.
Aunque quizas me quereis echar una mano para salvar mi
povre higado?

Lo que entendí (creo!):
1º: Hay casos en los que la función Cuenta (o Suma,...)
no funciona porque no le da la gana, sobre todo si


añades
una tabla en el medio de otras 2 en la consulta que en
lugar de contar tiene más bien tendencia a multiplicar.
2º: En estos casos, resulta muy util utilizar una


función
agregada de dominio (ni idea de lo que significa pero


así
lo ponen en la "ayuda" de access) cono DCont, DSum,...
3º: Si trabajas con un formulario, todo bien porque le
pones Me. delante del nombre del campo y ya esta.

Lo que no entiendo:
Por qué mi función: DCont
("IdAlumno";"[Alumnos/Grupos]";"IdGrupo = ' " &


[IdGrupo]
& " ' ") me devuelve un 0 patatero para todos los
registros de mi CONSULTA ??? (por supuesto, no tendría
que ser)

Help! Aide! Ayuda! etc..

Gracias de antemano

Lo que no entiendo



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system


(http://www.grisoft.com).
Version: 6.0.495 / Virus Database: 294 - Release Date:


30/06/2003
.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida