Hola, a continuación te propongo una posible solución para tu pregunta.
En la tabla de
Productos además de los campos típicos como
ID,
Producto,
Precio, etc. tenemos que añadir un campo
AñadirPorcentaje y otro campo
PorcentajeID que hace posible la relación entre la tabla
Productos y la tabla
Ajustes.
En la tabla
Ajustes, es donde podemos especificar el porcentaje con lo cual se van a recalcular los precios de los productos.
Cuando creamos la tabla
Ajustes en Google Sheets tenemos que asignarle un valor al campo
ID y un valor inicial al campo
Porcentaje.
Estoy utilizando unos colores para las columnas y esto será para mí más fácil de entender que hace y para qué es cada columna.
Para la tabla
Productos hemos habilitado todas las opciones de
añadir, editar y
eliminar datos, en cambio en la tabla
Ajustes solo se puede
editar los datos.
Para las configuraciones de las columnas, en la tabla
Ajustes el campo
Porcentaje es de tipo
Number y es una etiqueta. El campo
RelatedProductos es un campo creado automáticamente por el sistema AppSheet, tras la relación creada entre la tabla
Productos y la tabla
Ajustes.
Para la tabla
Productos, el campo
Precio es de tipo
Decimal, el campo
PorcentajeID es de tipo
Ref, es un campo que tiene un valor inicial mediante una fórmula “
INDEX(Ajustes[ID], 1)” y debe que ser oculto para el usuario y es el que hace posible relacionar las tablas
Productos y
Ajustes. El campo
AñadirPorcentaje es de tipo
Decimal y es un campo que sus valores se calculan automáticamente y también es un campo que el usuario no debe rellenar.
Tenemos dos vistas AJUSTES y Productos.
La vista AJUSTES lo he puesto como Tabla y como acción cuando se selecciona una fila, que abra el formulario de editar el valor del campo Porcentaje. Este campo debe que ser obligatorio.
Para actualiza los precios de todos los productos, tenemos de crear 2 ACCIONES (BEHAVIOR’s).
La acción “
Actualizar Precio” es el que actualiza los precios de los productos, para el campo
AñadirPorcentaje calculamos el porcentaje con la formula:
JavaScript:
[Precio]*[PorcentajeID].[Porcentaje]/100
Y para el precio, solamente hacemos una suma entre el Precio y el AñadirPorcentaje.
JavaScript:
[Precio]+[AñadirPorcentaje]
Para activar esta acción, tengo que crear otro Behavior que arranca la acción anterior.
Lo último que tenemos que hacer es tomar la acción
Porcentaje y ponerla en el evento de guardar formulario del formulario Ajustes_Form creado por el sistema.
Este es el link de la aplicación de ejemplo.
Link App Ejemplo
Esto es todo.