Access - PROBLEMA CON UN QUERY

 
Vista:

PROBLEMA CON UN QUERY

Publicado por BERENICE (84 intervenciones) el 02/04/2007 20:18:00
BUENOS DIAS!!

TENGO UN PROBLEMA CON UN QUERY Y ESTO ME ESTA ATRASANDO MUCHO... NECESITO OBTENER EL MATERIAL RECIBIDO EN UNA FECHA ESPECIFICA, LA QUE EL USUARIO INTRODUZCA, EN BASE A ESA FECHA EJECUTO UN QUERY EN MI TABLA DE "RECIBOS" Y SI ME FUNCIONA BIEN, ME ARROJA UN RESULTADO DE TIPO ENTERO, EL CUAL DEPOSITO EN UNA CAJA DE TEXTO. MI PROBLEMA ES CUANDO NO SE RECIBIO MATERIAL EN LA FECHA QUE EL USUARIO ELIGE, LA CONSULTA NO OBTIENE NADA Y POR LO TANTO A LA HORA DE ASIGNAR EL VALOR A LA CAJA DE TEXTO ME DICE QUE "YOU ENTERED AN EXPRESSION THAT HAS NO VALUE", SUPONGO QUE ESTO ES PORQUE EL QUERY NO ARROJA NADA COMO RESULTADO, ENTONCES CUANDO NO TRAIGA NADA NECESITO PONER EN "0 LA CAJA DE TEXTO" Y DESDE EL QUERY LE ESPECIFICO QUE SI EL CAMPO VIENE VACIO ENTONCES LE ASIGNE UN "0" AL CAMPO PARA QUE NO HAYA PROBLEMAS A LA HORA DE ASIGNARLE EL VALOR A LA CAJA DE TEXTO.

CON ESTE CODIGO LE DIGO DENTRO DEL QUERY:

=iif(isnull([Recibos].[Form]![cantidad]),0,[Recibos].[Form]![cantidad])

PERO NO ME FUNCIONA, QUE PUEDO HACER?

ES URGENTISISISISIMO

GRACIAS.
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:PROBLEMA CON UN QUERY

Publicado por Enrique (1299 intervenciones) el 02/04/2007 20:49:45
Hola Berenice:
Así sería con Access en Español:
SiInm([Forms]![Recibos]![Cantidad] Es Nulo;0;[Forms]![Recibos]![Cantidad])

Y así con Access en Inglés que parece que es tu caso:
IIf([Forms]![Recibos]![Cantidad] IsNull;0;[Forms]![Recibos]![Cantidad])

tambien puede que en tu caso el delimitador establecido en la Configuración de Windows sea coma ( , ) aunque lo normal en las Consultas es que sean punto y coma ( ; ). Prueba con ambos.

Saludos
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:PROBLEMA CON UN QUERY

Publicado por BERENICE (84 intervenciones) el 02/04/2007 21:13:05
NO ME FUNCIONA...... LO HAGO DIRECTAMENTE DESDE LA FORMA Y NOLO HACE, Y SI LO PONGO DIRECTAMENTE EN EL QUERY COMO:
EXP:IIf([Cantidad] IsNull;0;[Cantidad])

TAMBIEN ME MARCA UN ERROR EN LA EXPRESION, QUE OTRA COSA PUEDE SER?

GRACIAS POR AYUDARME...
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:PROBLEMA CON UN QUERY

Publicado por Enrique (1299 intervenciones) el 02/04/2007 22:35:17
Berenice, en el formulario no puede funcionar, tiene que ser en la Consulta y el error en la expresión solo pueden ser dos cosas:
- Que IsNull sea separado Is Null (lo desconozco porque no tengo Access en Inglés).
- Que tu delimitador sea coma en vez de punto y coma.

La Función Iff como te la puse es correcta: Expresión; parte verdadera; parte falsa.

Saludos
Enrique
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:PROBLEMA CON UN QUERY

Publicado por BERENICE (84 intervenciones) el 02/04/2007 22:51:39
ENRIQUE, MI PROBLEMA ES QUE COMO LE COMENTABA ANTERIORMENTE, NECESITO OBTENER EL MATERIAL RECIBIDO EN UNA FECHA ESPECIFICA, LA QUE EL USUARIO INTRODUZCA, EN BASE A ESA FECHA EJECUTO UN QUERY EN MI TABLA DE "RECIBOS" Y SI ME FUNCIONA BIEN, ME ARROJA UN RESULTADO DE TIPO ENTERO, EL CUAL DEPOSITO EN UNA CAJA DE TEXTO. MI PROBLEMA ES CUANDO NO SE RECIBIO MATERIAL EN LA FECHA QUE EL USUARIO ELIGE, LA CONSULTA NO OBTIENE NADA Y POR LO TANTO A LA HORA DE ASIGNAR EL VALOR A LA CAJA DE TEXTO ME DICE QUE "YOU ENTERED AN EXPRESSION THAT HAS NO VALUE", SUPONGO QUE ESTO ES PORQUE EL QUERY NO ARROJA NADA COMO RESULTADO, ENTONCES CUANDO NO TRAIGA NADA NECESITO PONER EN "0 LA CAJA DE TEXTO" Y DESDE EL QUERY LE ESPECIFICO QUE SI EL CAMPO VIENE VACIO ENTONCES LE ASIGNE UN "0" AL CAMPO PARA QUE NO HAYA PROBLEMAS A LA HORA DE ASIGNARLE EL VALOR A LA CAJA DE TEXTO.

AHORA, EL DETALLE ES QUE TANTO LA FECHA COMO LA CANTIDAD QUE SON LOS UNICOS DOS CAMPOS DE MI QUERY VIENEN VACIOS Y POR CODIGO, NI SIQUIERA ME INDICA QUE EL VALOR RECIBIDO ES NULL.... ANTERIORMENTE YA HABIA HECHO QUERYS UTILIZANDO LA INSTRUCCION QUE ME INDICO Y SI ME FUNCIONO , PERO POR QUE SOLO UNO O ALGUNOS DE LOS CAMPOS VENIAN VACIOS PERO NO TODOS.

QUIZAS ESTE INCORRECTO LA FORMA COMO LO ESTOY HACIENDO... ILUMINEME POR FAVOR Y DIGAME SI HAY OTRA FORMA DE IDENTIFICAR POR CODIGO SI UN CAMPO ES NULL EN CASO DE QUE EL QUERY VINIERA NULL.

DE ANTEMANO MUCHAS 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:PROBLEMA CON UN QUERY

Publicado por Enrique (1299 intervenciones) el 02/04/2007 23:32:14
Si es por código pudes usar la función Nz, que tantas veces se ha comentado ya en este Foro, que sirve para darle valor cero a los campos que son nulos:

En una Consulta sería:
Expresión: Nz(Cantidad)

En VBA:
Me.Campo = Nz(Cantidad)

Utiliza el buscador y encontraras bastante información sobre esta Función

Saludos
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:PROBLEMA CON UN QUERY

Publicado por BERENICE (84 intervenciones) el 02/04/2007 23:45:43
YA PUDE HACERLO, AL FINAL DE CUENTAS FUE MUY SENCILLO..........

Dim srt As DAO.Recordset
Set srt = [NOMBRE DE LA FORMA].Form.Recordset

If Not srt.EOF Then [NOMBRE DEL CAMPO].Value = [NOMBRE DEL CAMPO].Value

LO UNICO QUE HAGO ES CHECAR QUE SI ES EL FIN DE ARCHIVO, O SEA SI NO TODOS LOS CAMPOS ESTAN VACIOS, ENTONCES QUE NO ME HAGA LA ASIGNACION, QUE ES AHI DONDE ESTABA EL PROBLEMA, MAS BIEN DICHO EL PROBLEMA ERA QUE NO PODIA DETECTAR CUANDO ESTABA VACIO.....

MUCHAS GRACIAS POR TU TIEMPO Y POR TOMARTE LA MOLESTIA DE CONTESTARME....

SALUDOS DESDE NOGALES, SONORA, MEXICO.
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