Access - Generador de expresiones

 
Vista:
sin imagen de perfil

Generador de expresiones

Publicado por Luis (32 intervenciones) el 10/09/2022 17:10:18
Buen dia, saludos, por favor necesito ayuda, quiero que en un campo texto se muestre la suma de un registro siempre y cuando se cumplan los criterios de que el documento y la caja mixta sea igual para que solo sume el peso con esta condicion, pero me da error:

=DSuma("[Peso]", "[tbguia_despacho_sedes_bmixtos]", "[documento] = " & [Formularios]![Guia_despacho_sedes_bmixtos]![Documento]), [Caja_Mixta] = [Formularios]![Guia_despacho_sedes_bmixtos]![cbcaja_mixta])

error
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

Generador de expresiones

Publicado por Anonimo (3316 intervenciones) el 10/09/2022 20:54:36
Utilizas una coma para separar las dos condiciones, no es correcto.

En el generador de expresiones, selecciona esa coma y con ella seleccionada, en la pestaña 'elementos de expresión' selecciona 'OPERADORES' a continuación en la pestaña 'categorías de expresión' selecciona 'LOGICOS' y en la pestaña 'valores de expresión' selecciona 'Y' (si se han de cumplir las dos condiciones) y si con que se cumpla una de las dos es suficiente selecciona 'O' para sustituir a la coma (¿Click?).

Las rutas a los objetos 'documento' y 'cbcaja_mista' son absolutas, deberían poder hacer su trabajo sin necesidad de 'sacarlos' del texto
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
sin imagen de perfil

Generador de expresiones

Publicado por Luis (32 intervenciones) el 10/09/2022 22:11:10
Gracias por la respuesta, la coloque asi pero me da error:
=DSuma("[Peso]", "[tbguia_despacho_sedes_bmixtos]", "[documento] = " & [Formularios]![Guia_despacho_sedes_bmixtos]![Documento]) And [Caja_Mixta] = [Formularios]![Guia_despacho_sedes_bmixtos]![cbcaja_mixta]")


errorrr
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

Generador de expresiones

Publicado por Anonimo (3316 intervenciones) el 10/09/2022 22:51:56
Esta expresión es incorrecta (por lo menos para Access que es el que impone las reglas):

=DSuma("[Peso]", "[tbguia_despacho_sedes_bmixtos]", "[documento] = " & [Formularios]![Guia_despacho_sedes_bmixtos]![Documento]) And [Caja_Mixta] = [Formularios]![Guia_despacho_sedes_bmixtos]![cbcaja_mixta]")

Las funciones de dominio tienen tres parámetros (todos de texto) y solo el tercero (la condición) es opcional

El primero y el segundo tienen una sintaxis correcta, el tercero .... Las reglas dicen que debería comenzar con comillas dobles (el marcador de texto) y finalizar con otras dobles comillas, en su interior no se admite la doble comilla (al menos no una sola).

En base a eso, revisa esta expresión y dale o quítale la razón a Access:

1
"[documento] = " & [Formularios]![Guia_despacho_sedes_bmixtos]![Documento]) And [Caja_Mixta] = [Formularios]![Guia_despacho_sedes_bmixtos]![cbcaja_mixta]"


(Pregunta: ¿cuántas dobles comillas hay en ese texto?)
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
sin imagen de perfil

Generador de expresiones

Publicado por Luis (32 intervenciones) el 10/09/2022 23:31:25
Hay 3 dobles comillas pero hay algo que no mencione, el campo documento es numérico y el campo caja_mixta es texto.

No se como eliminar la otra preguntas.

Y de verdad apenas estoy empezando con access, no tengo nada de conocimiento. disculpa que aun no lo he resuelto :(
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

Generador de expresiones

Publicado por Anonimo (3316 intervenciones) el 11/09/2022 00:23:49
El tipo de dato (en una expresión que cumpla las reglas y los dato tengan su 'ruta absoluta') no es un problema, el motor de Access al disponer de su ruta absoluta reconocerá el tipo de dato y si son compatibles (espera un número y recibe un número, espera un texto y recibe un texto) no dará error.

Es una de las diferencias entre las rutas absolutas y las relativas, en las relativas (al trocear la cadena para poder evaluar la ruta relativa) no podrá definir el tipo de dato y es cuando hay que aplicar los marcadores para que los diferencie (para textos el marcador: las dobles o simples comillas, para fechas la almohadilla y los números ... sin marcadores).

Si sobrase una doble comilla ¿cuál eliminarías y que más eliminarías por no tener sentido y ser aportación propia)

Simple curiosidad: ¿no se te ha ocurrido esconder esa expresión, reescribirla y comparar ambas? (dicen que el axioma del informático ante un problema es apagar la maquina y volverla a encender ... seria aplicar eso mismo sin llegar al extremo de apagar la maquina).

Los tipos de dato están publicados en otro foro (la tabla en vista diseño) pero si dejas a un lado el miedo ante lo desconocido (esto es: haces una copia de la aplicación o dos por si una se pierde) puedes lanzarte al vacío y (con una copia de las guardadas) volver a la vida.

La última pista y definitiva:
En el otro hilo hay una expresión similar (no se si te apercibiste) que por lo menos en su sintaxis cumple con las reglas (compara ambas, esa y la que publicas con el problema)

Nota:
El hilo no se puede eliminar (lo tendría que hacer un moderador), pero un usuario (aunque solo sea por cortesía a los que siguen ese hilo) lo 'cierra' dando la razones que crea convenientes y añade la ruta al otro hilo (en el que virtualmente convergen los dos).
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 Eduardo

Generador de expresiones

Publicado por Eduardo (317 intervenciones) el 11/09/2022 21:36:49
Cambie la coma (,) por punto y coma (;)
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