Tengo un error de sintaxis en Access

Tengo un error de sintaxis en Access que no me permite hacer modificaciones y después grabar. Siempre aparece el mismo error. Lo he revisado muchas veces y no puedo encontrar el error. Les agradecería mucho su ayuda.

Este archivo fue creado en una versión de Access 2010 y luego paso por la 2013 hasta hoy con 365. Lo sigo usando, pero necesito realizar algunos cambios e incorporar nuevas tablas, pero no puedo grabar los cambios por este error.

1 Respuesta

Respuesta
1

Dejo por sentado, que no sé donde están Demandas y lo demás. Pero, si tengo un formulario con un cuadro de texto, que en su origen del control le pongo

=SiInm(EsNulo([otro]) O [otro]=0;"hola";"adios")

Importante, la separación es punto y coma, no coma sólo. Si fuera en código Vb si sería la coma sólo.

Como no se cumple ninguna de las condiciones

Como se cumple la condición de que otro es nulo

Y como se cumple la condición de que Otro es 0

Si me permites un consejo, nunca "ocupes" el origen de control, valga la redundancia, de un control. Es preferible decirle lo que sea en código VB

Icue, muchas gracias por tu ayuda. Respecto a eso, te comento que esta expresión fue creada en Access 2003 y luego fue utilizada desde 2010 hasta hoy usando ese archivo en 365. Puede ser ese el motivo del cambio de algunos elementos de la expresión?. Voy a probar con eso y te comento. Gracias nuevamente.

Icue, agrego más información.

Agregue los puntos y comas

Pero aparece este aviso al grabar

La verdad, no sé decirte. Durante muchos años usé el 2003(que dicho sea de paso fue el mejor Office con diferencia, lo mismo que el mejor windows fue el XP, de hecho en el 16 han tenido que volver a su filosofía), y ahora mismo todavía tengo bases hechas en él y funcionan perfectamente. Mira, si tengo una tabla Clientes

Y construyo una consulta

Como en el primer registro Otro ni es 0 ni es nulo

Probablemente el problema es porque Demandas tienes que encerrarlo entre corchetes.

¡Gracias! 

Muchas gracias por la guía. Probaré lo que me recomiendas.

Estimado, realizando los cambios, en el generador de expresiones, me guía a utilizar la coma y no punto y coma.

Pues tendrás que dejarle las comas. Me acabo de dar cuenta de donde vives. Sin embargo, en mi ordenador, sin quiero poner esa expresión

Ya me las pone con punto y coma. Es porque en Europa, digamos que ya te viene de fábrica configurado como

Lo mismo que si elijo un campo Moneda, automáticamente me lo transforma en Euro.

Estimado, me di cuenta que access me indica el error.

Lo reviso y está todo ok.

Pero me indica que el error esta en la nomenclatura de la parte verdadera del SiInm. Me marca la tabla, como parte del error de sintaxis, se supone que si se cumple, debe traer el campo de la tabla indicada. Faltará algo o hay algo extra?

Si tengo la tabla Tabla 1

Observa que sólo hay un registro(para el ejemplo) de solomillo que tenga algo en KG DESP

Por otro lado tengo la tabla Demandas

Verás que el peso neto del solomillo es 3,45 (Acuérdate de este número)

Si ahora hago una consulta a la que añado el campo KG PED

Entonces, cuando la abro

Puedes ver que en los dos primeros, como KG DESP es nulo o 0 pone el valor de Peso Neto de la tabla Demandas, pero en el último, como si hay valor en KG DESP pone el valor de la operación

(46/5)*14=128,8

Estimado, ya está solucionado. Agradezco la asesoría.

Pero apareció algo nuevo,

F_PESAJE: SiInm([TP DESP]="ZUSS" O [MAESTRO SUCURSALES]![TP]="ABAST",[DEMANDAS]![FECHA DDA],SiInm(DíaSemana([FECHA DDA]=2,[DEMANDAS]![FECHA DDA]-2,[DEMANDAS]![FECHA DDA]-1)

Al tratar de guardar, indica problema de sintaxis.

Gracias por la ayuda, es un proyecto y estoy tratando de mejorar la base.

No la he mirado completamente, pero ya te adelanto que como hay dos Siinm tienes que cerrar la instrucción con tantos paréntesis como Siinm haya

¡Gracias!  Ahhhh, entendido. Muchas gracias.

Y como última cosa, me di cuenta que un SiInm que tiene en "verdadero" ,[Tabla]![campo], (solo eso) no lo reconoce. Que puede ser?

No sé como has construido la consulta, pero si tengo una tabla

Y construyo una consulta

Cuando la abro

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas