Nivel de programación: Principiante
Duración: 10 minutos
Tipo de proyecto: Función personalizada
Objetivos
- Comprende qué hace la solución.
- Comprende qué hacen los servicios de Apps Script dentro de la solución.
- Configura la secuencia de comandos.
- Ejecuta la secuencia de comandos.
Acerca de esta solución
Si ofreces un sistema de precios por niveles para tus clientes, esta función personalizada facilita el cálculo de los importes de descuento para tus precios.
Si bien podrías usar la función integrada SUMPRODUCT
para realizar un cálculo de precios por niveles, usar SUMPRODUCT
es más complejo y menos flexible que la función personalizada de esta solución.
Cómo funciona
Un modelo de precios por niveles significa que el costo de los bienes o servicios disminuye según la cantidad comprada.
Por ejemplo, imagina que tienes dos niveles, uno que va de USD 0 a USD 500 y tiene un descuento del 10%, y otro que va de USD 501 a USD 1,000 y tiene un descuento del 20%. Si el precio total para el que necesitas calcular un descuento es de USD 700, la secuencia de comandos multiplica los primeros USD 500 por el 10% y los USD 200 restantes por el 20%, lo que da un descuento total de USD 90.
Para un precio total determinado, el script itera a través de los niveles especificados en la tabla de precios por nivel. Para cada parte del precio total que se encuentra dentro de un nivel, esa parte se multiplica por el valor porcentual asociado del nivel. El resultado es la suma del cálculo de cada nivel.
Servicios de Apps Script
En esta solución, se usa el siguiente servicio:
- Servicio de hojas de cálculo: Toma el valor proporcionado y calcula qué parte del valor se debe multiplicar por el porcentaje de descuento de cada nivel.
Requisitos previos
Para usar esta muestra, necesitas cumplir con los siguientes requisitos previos:
- Una Cuenta de Google (es posible que las cuentas de Google Workspace requieran la aprobación del administrador)
- Un navegador web con acceso a Internet
Configura la secuencia de comandos
Haz clic en el siguiente botón para crear una copia de la hoja de cálculo de la función personalizada de precios por niveles. El proyecto de Apps Script para esta solución se adjunta a la hoja de cálculo.
Crear una copia
Ejecuta la secuencia de comandos:
- En la hoja de cálculo que copiaste, la tabla de la fila 16 muestra un cálculo de precios de ejemplo para un producto de software como servicio (SaaS).
- Para calcular el importe del descuento, en la celda
C20
, ingresa=tierPrice(C19,$B$3:$D$6)
. Los precios finales se actualizan en la celdaC21
. Si te encuentras en una ubicación que usa comas decimales, es posible que debas ingresar=tierPrice(C19;$B$3:$D$6)
.
Revisa el código
Para revisar el código de Apps Script de esta solución, haz clic en Ver código fuente a continuación:
Ver el código fuente
Code.gs
Modificaciones
Puedes editar la función personalizada tantas veces como quieras para que se adapte a tus necesidades. A continuación, se muestra una adición opcional para actualizar manualmente los resultados de las funciones personalizadas.
Actualiza los resultados almacenados en caché
A diferencia de las funciones integradas, Google almacena en caché las funciones personalizadas para optimizar el rendimiento. Por lo tanto, si cambias algo en tu función personalizada, como un valor que se está calculando, es posible que no se fuerce una actualización de inmediato. Para actualizar el resultado de la función de forma manual, sigue estos pasos:
- Para agregar una casilla de verificación a una celda vacía, haz clic en Insertar > Casilla de verificación.
- Agrega la celda que tiene la casilla de verificación como un parámetro adicional de la función personalizada. Por ejemplo, si agregas una casilla de verificación a la celda
D20
, actualiza la funcióntierPrice()
en la celdaC20
a=tierPrice(C19,$B$3:$D$6,D20)
. - Marca o desmarca la casilla de verificación para actualizar los resultados de la función personalizada.
Colaboradores
Google mantiene esta muestra con la ayuda de los Google Developer Experts.