Valor de un campo

Dudas sobre Tablas, Consultas, Formularios, Informes...
JUBILADO1940
Nivel 6
Reto03
Mensajes: 239
Registrado: Jue Dic 03, 2015 9:56 pm

Valor de un campo

Mensajepor JUBILADO1940 » Dom Oct 20, 2019 10:12 pm

Hola a todos.
En mi aplicación tengo lo siguiente:
Una tabla (TblPresupuesto) con los siguientes campos. idPresupuesto (clave), Concepto (texto), Importe (Número), IdCdadPresu (Número), FechaPresu.
Tengo un formulario (FrmPresupuesto) para introducir el presupuesto de cada Comunidad eligiendo la Comunidad de una tabla (TblComunidad) y las partidas del presupuesto de una tabla (TblConceptos).
Tengo uninforme (IPresupuetoporCdad), basado en una consulta (CPresuCdad), que me muestra todos los valores introducidos en el formulario (FrmPresupuesto). En este Informe tengo un txt que me muestra la suma de todas las partidas, también tengo txt que me hace el 5 % del total de las partidas, como Fondo de reserva, otro txt con la suma de los 2 anteriores, otro txt con la cuota a pagar según el número de comuneros.
Hasta ahora todo perfecto. Viene el problema.
Tengo otro informe (IDesviacionPresupuestoTotales), basado en una consulta (CDesviacionPresupuestoTotales). En este informe se me muestran en 3 columnas:
1.- Todas las partidas del presupuesto, según Comunidad y año
2.- Todos los gastos acumulados por partida, según Comunidad y año
3.- La desviación entre el Presupuesto y lo gastado por partida.
No se como incluir en este último informe la partida del 5% de Fondo de reserva.
He intentado añadir en la tabla de Conceptos la partida "Fondo de reserva" pero eso suponía tener que hacer el cálculo manualmente para después introducirlo, pero no me convence.
Gracias por vuestra ayuda.
Pd. No tengo inconveniente en mandar la DB si no se entiende lo explicado.

pitxiku
VIP
Reto02
Mensajes: 363
Registrado: Sab Sep 30, 2017 6:23 pm

Re: Valor de un campo

Mensajepor pitxiku » Mar Oct 22, 2019 6:33 pm

Todo depende:

- Si el 5% siempre es fijo a partir de un cálculo, puedes volver a calcularlo, ya sea agregando la(s) tabla(s) y/o campo(s) necesarios para hacer el cálculo; ya sea usando funciones de dominio para recuperar los datos que precises.

- Si ese cálculo debe guardarse porque luego puede ser que se modifique algún dato y el resultado puede ser diferente, tendrás que decidir cuándo calcularlo y guardarlo. El problema del informe donde lo calculas es que ahí es complicado guardar datos (por aquello de que puede imprimirse o no el informe varias veces,).

JUBILADO1940
Nivel 6
Reto03
Mensajes: 239
Registrado: Jue Dic 03, 2015 9:56 pm

Re: Valor de un campo

Mensajepor JUBILADO1940 » Mié Oct 23, 2019 7:45 pm

Hola Pitxiku.
Aqui copio el enlace que permite descargar lo que tengo.
FrmPrincipal es la pantalla de entrada.
Comprobarás como meto e presupuesto, como lo imprimo como hago la desviación.
He leído tu respuesta, pero debo confesar que la he estudiado pero no la he entendido.
Gracias por la ayuda

https://www.dropbox.com/s/j3ke5llhn6s5s ... accdb?dl=0

pitxiku
VIP
Reto02
Mensajes: 363
Registrado: Sab Sep 30, 2017 6:23 pm

Re: Valor de un campo

Mensajepor pitxiku » Sab Oct 26, 2019 4:37 pm

No entiendo bien el problema. El campo/concepto Importe aparece en los 2 informes, IPresupuestoporCdad y IDesviacionPresupuestoTotales. Si en el segundo informe colocas un control de texto que calcule ese 5% (igual que haces en el primer informe), obtendrás el resultado. De hecho, un copio/pego del control de un informe al otro (ambos en vista diseño) sirve perfectamente. Una pequeña muestra es el informe "IDesviacionPresupuesto_5%" modificado.

Otra cosa es que tengas que guardar ese 5% en la tabla porque no debe ser modificado/alterado una vez calculado por primera vez. Si es el caso, puedes usar el formulario donde agregas los conceptos de los presupuestos. En la tabla tblPresupuesto he agregado un campo, FondoReserva, que será el que almacene el 5%. Después, en el formulario SubPResupuesto (he supuesto que agregas/modificas ahí los presupuestos y sus conceptos), he colocado un cuadro de texto para el fondo de reserva, y un poco de código para asignarle un importe única y exclusivamente la primera vez que se asigne el importe; si después se modifica, el 5% seguirá inalterable. Si debe actualizarse cada vez que se modifique el importe, elimina/comenta la línea If Me.NewRecord y su correspondiente End If.

Tu base de datos modificada:

- https://c.gmx.es/@563071200301947727/5E ... k1EUSGtjIg

Una pregunta: ¿por qué el campo Importe es de tipo Número doble precisión? Para cálculos monetarios, parece más aconsejable un campo de tipo Moneda, puede almacenar decimales y no tiene la pérdida de precisión que tiene el otro tipo.

JUBILADO1940
Nivel 6
Reto03
Mensajes: 239
Registrado: Jue Dic 03, 2015 9:56 pm

Re: Valor de un campo

Mensajepor JUBILADO1940 » Sab Oct 26, 2019 9:38 pm

Gracias Pitxiku.
Miré tu respuesta y la estudiaré a fondo. Ya te diré mis conclusiones.
Gracias de nuevo

JUBILADO1940
Nivel 6
Reto03
Mensajes: 239
Registrado: Jue Dic 03, 2015 9:56 pm

Re: Valor de un campo

Mensajepor JUBILADO1940 » Dom Oct 27, 2019 10:23 pm

Hola Pitxiku
Lo primero, por deformación e inexperiencia, el campo importe siempre lo he colocado numérico.
En segundo lugar. Los presupuestos se elaboran y se hace el cálculo del 5% y después van a Junta donde se aprueban y ya no hay modificación alguna durante el ejercicio contable. (Bueno eso es lo que aquí hacemos)
Si hay que hacer algo que se salga de las partidas aprobadas, la Junta decide si se hace una derrama o se detrae del Fondo de reserva, en este último caso en el Informe de desviación de Presupuesto, debe aparecer este fondo de reserva y también el gasto asignado a ese fondo de reserva.
Como verás en el informe de desviación de presupuesto no aparece la partida de Fondo de reserva y quiero que aparezca. Supongamos que quiero empapelar y no había partida designada para ello y se decide detraer el importe del Fondo de reserva.
He estudiado lo que me dices y a ser sincero, el segundo punto no lo acabo de entender.
He mirado la tabla y veo que se generan unos valores en el campo Fondoreserva y no tengo ni idea de dónde salen.
Lo lógico sería que en el informe de desviación apareciese exactamente lo mismo que en el informe de Presupuesto incluido el fondo de reserva.
No se si te estoy dando la lata con algo que sólo tiene solución en una aplicación profesional y re sepamos.alizada por un técnico.
Te agradezco el esfuerzo que haces por ayudarme.

pitxiku
VIP
Reto02
Mensajes: 363
Registrado: Sab Sep 30, 2017 6:23 pm

Re: Valor de un campo

Mensajepor pitxiku » Lun Oct 28, 2019 12:07 pm

Si abres el formulario SubPResupuesto en vista diseño, verás que el control Importe tiene un código en su evento Después de Actualizar: si estoy en un registro nuevo, cálculo el 5% el importe que se ha introducido, y se guarda en el campo FondoReserva.

Si abres ese mismo formulario desde su formulario principal, y te mueves a la derecha, verás el campo FondoReserva,y el valor que va tomando según crees/modifiques registros.

Esa es una idea para calcular/guardar el dato en una tabla. Pero por lo que entiendo, el problema es ver dónde/cuándo hay que guardarlo. Ahí entra el sistema que estéis usando. Yo entiendo que hacéis lo siguiente:

- Se crea un presupuesto.
- Se lleva a Junta para su aprobación, y se establece cuál es el 5%, o si no debe asignarse (entiendo que en los presupuestos que se salen de las partidas, no guardáis un 5%).
- Y si no hay dinero, se establece que cantidad se saca del fondo de reserva.

Si voy bien encaminado, una posible solución es crear una tabla para el fondo de reserva, donde se guarden los 5% de cada presupuesto (y a qué presupuesto pertenece), y las salidas para hacer frente a las adversidades (y a qué adversidad corresponde).

Más que nada, para que puedas saber cuánto dinero has metido en el fondo, cuánto dinero has sacado, y en consecuencia, cuánto dinero tienes para futuros imprevistos.

JUBILADO1940
Nivel 6
Reto03
Mensajes: 239
Registrado: Jue Dic 03, 2015 9:56 pm

Re: Valor de un campo

Mensajepor JUBILADO1940 » Lun Oct 28, 2019 10:08 pm

Hola Pitxiku
Poco a poco voy entendiendo el sistema.
Haces que se guarde el 5% de cada partida de gastos que ingresas en el formulario Presupuesto.
Con esto consigues que en el informe de presupuesto, no tenga que calcular el 5% del importe de las partidas, sino que sumo el campo Fondoreserva.
Ahora voy a seguir estudiando la propuesta que me haces de crear una tabla exclusiva para el fondo de reserva.
Ya te comentaré mis mis avances, si los tengo.
Un saludo.


Volver a “Objetos Access”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado