Access - Escribir una expresion en un campo de una tabla Access 2010

 
Vista:
sin imagen de perfil

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Willy (4 intervenciones) el 24/12/2015 22:19:10
Muy buenas, estoy intentando encontrar la expresión para referirme a un campo que está una tabla y no se cómo. A continuación muestro una imagen con mi problema


access1

Mi pregunnta es qué debo escribir en el generador de expresiones
ya intenté de todo y solo errores de sintaxis




Gracias de antemano
access2
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
sin imagen de perfil

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Enrique Heliodoro (1664 intervenciones) el 25/12/2015 18:10:52
Nada
En la tabla (a lo sumo y solo en las versiones mas recientes) se pueden generar cálculos entre datos del propio registro, pero no entre registros diferentes.

En un formulario ... si se podrían genera expresiones complejas, pero hay que ser muy delicado para evitar asociaciones inadecuadas (en el ejemplo el registro es el anterior, en la practica puede ser cualquiera)
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
sin imagen de perfil

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Willy (4 intervenciones) el 27/12/2015 16:37:10
Muchas gracias Enrique por tu respuesta.
Te cuento que este es un programa que quiero hacer para un amigo.

Entonces crearé un formulario para que mi amigo llene esta tabla. De hecho mi amigo tendrá que llenar la tabla cada vez que tenga un nuevo proyecto. Instalaría una versión más reciente de Office pero me gusta esta porque puedo convertir mi programa en un ejecutable que por cierto estoy teniendo problemas tambien con eso, después de instalar la aplicación en el equipo y abrirla aparece en blanco no veo la tabla ni nada pero eso lo veré después.

Lo intentaré, gracias de nuevo.
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

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Enrique Heliodoro (1664 intervenciones) el 27/12/2015 19:17:18
En Access no existe la posibilidad de crear 'ejecutables' (en ninguna de las versiones que yo conozca).

A lo sumo se pude guardar en formato compilado que tiene sus ventajas e inconvenientes.

Formato que se puede crear en cualquiera de sus versiones y después 'ejecutar' con el Runtime, el runtime que es gratuito a partir de las ultimas versiones y todos ellos pueden ejecutar siempre la versión de su época y las anteriores (y creo que con el runtime de la versión A'2010 también corren algunas de las siguientes).

El runtime la única ventaja que tiene es que evita pagar una licencia de Access, pero solo sirve para eso (similar a los visores de otras aplicaciones, como el visor de Word que permite leer pero ni editar o crear).
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

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Willy (4 intervenciones) el 27/12/2015 20:13:52
OK gracias de nuevo.

Necesito que me ayuden. Quiero que en un formulario, al escribir la palabra "Tubos" en un determinado campo entonces en otro campo se muestre el resultado de una operación matemática. Vean las imágenes


access1

algo


access2

Muchas gracias por la ayuda
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

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Enrique Heliodoro (1664 intervenciones) el 27/12/2015 23:57:40
Los datos aportados son difusos, Access (aun en sus ultimas versiones) es incapaz de leer la mente del usuario y creo que le será complicado efectuar una operación matemática que no tiene valores correctamente definidos.

Con ello me refiero que para procesar una operación tal cual se muestra, PRIMERO se habrá de introducir/obtener ese dato (metros lineales) y el primer consejo es que no se utilicen ESPACIOS en los nombres de los campos, de utilizar espacios se debería encerrar entre corchetes a todo el conjunto del nombre, para que Access lo interpretase de forma correcta: [metros lineales]

Creo que esas buenas intenciones (crear una aplicación para un amigo) debería ir precedida por un ameno rato de lectura (la propia ayuda de Access) en la que se aconseja y se muestran los primeros pasos para manejar de forma correcta al propio Access
Es un fallo muy común lo de 'saltarse' el ojear 'el libro de instrucciones', algo que solo se debería evitar si en su lugar se sigue un curso básico de los miles que hay pululando por internet para hacer lo mismo, saber los limites y posibilidades, y cuando menos 'para que sirve cada cosa'.

Nota:
Si se crea una operación matemática como origen de datos de un control, ese control (al tener un origen de datos 'que no es la tabla origen de datos del formulario') se convierte en un control independiente que jamás se guardara en la tabla a no ser por asignación directa.

El proceso 'natural' seria utilizar un cuadro de texto para obtener 'los metros lineales' y como no, otro (que también podría ser un cuadro de lista o cuadro combinado) para ese referente ('Tubos') y los posibles que pudieran precisar cálculos (tuercas, tornillos o bombillas)

En uno de ellos (o en ambos) y en su evento 'después de actualizar' en función de la selección (tubos en este caso) y de existir un valor para 'metros lineales', se efectuaría el calculo y su correspondiente asignación (asignación que se efectuaría bien sea con Macros o con VBA)

Creo que lo anteriormente comentado invalida la opción de 'valor predeterminado' que se intenta utilizar, ese valor se asigna (por defecto) al iniciar un nuevo registro y cuando se inicia el registro 'aun' no habrá un valor en mencionado campo 'metros lineales' (tras el evento 'Current' ==> ir a un nuevo registro) en el que se asignarían los valores predeterminados, estos quedan en reposo hasta el siguiente 'nuevo registro' y su correspondiente evento.
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

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Willy (4 intervenciones) el 28/12/2015 06:58:02
Muy útil esa información, ahora lo veo más claro. Gracias de nuevo Enrique. Estoy pensando en hacer el programa con algun lenguaje diferente, creo que lo mejor sería utilizar variables o definir constantes CantidadTubos siempre será igual a ((CantidadMetrosLineales / 3) + (CantidadMetrosLineales /20)) pero es el usuario quien deberá intruducir la cantidad de metros lineales. La verdad es que no se nada de Access tan solo conozco bien Turbo Pascal (lenguaje obsoleto) y algunos modernos que solo se usan para hacer videojuegos jeje.

Estoy dispuesto a estudiar algun lenguaje para realizar este programa pero aun no se cuál usar.

Se trata de un programa que ayude a un ingeniero a cuantificar la cantidad de materiales a utilizar en la instalación eléctrica interna de un edificio incluyendo cables, tubos, bombillas, tomas de corriente etc. Y así mismo calcular la cantidad de dinero necesaria para la compra de los materiales. Quiero que todo quede almacenado al terminar el proyecto y que pueda utilizar el programa para futuros proyectos. En fin no lo veía tan complicado, no debería ser tan complicado. Veré que hacer... gracias de nuevo
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

Escribir una expresion en un campo de una tabla Access 2010

Publicado por Enrique Heliodoro (1664 intervenciones) el 28/12/2015 09:40:36
Normalmente eso se haría con una función, ello no evita que se tenga que introducir un dato para que el calculo se base en algo concreto.

No deseo entrar en metodologías de programación, pero si se tiene experiencia en cualquier lenguaje (obsoleto o no es solo cuestión de mercado) se debería tener en cuenta que los valores calculados no son 'el dato a guardar', se deberían guardar los datos reales y sus 'resultados' se procesarían en tiempo de ejecución, ello siempre permitiría modificar de forma muy sencilla un dato mal aplicado, o la corrección en tiempo real de un calculo (empírico, pero no realista).

Al respecto a la aplicación...

Hace ya mas de veinte años que conocí programas de calculo de ingeniería para casi todo (el clásico CD que rodaba de mano en mano) y supongo que esos programas (actualizados a los entornos y tecnologías de comunicación actuales) aun estarna disponibles tanto en formato comercial como libre, hacer algo que ya esta hecho es una opción, otra es utilizar (y si cabe mejorar) lo que otros regalan.

Antes en CD hoy 'en la nube' hay en formato libre (y muchas veces abierto) multitud de aplicaciones que son simplemente útiles incluso como simples referentes, nadie podrá considerar piratería el ver/analizar como gestiona la contabilidad un programa comercial o libre, para adaptarlo (se supone que se tiene conocimiento de contabilidad + programación) a un entorno concreto y personalizado.
Y ello no implica entrar en el mundo de la piratería, al que como programador o enamorado de la programación desprecio.
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