Cambiar color Categoria si la suma de sus productos es igual a cero

Hola!

Tengo una app de inventario, una vista donde se listan todas las categorias.
Lo que necesito es poder cambiar el color de la CATEGORIA cuando la suma de los productos es igual a cero, como lo muestra la imagen abajo (editado)

Captura de pantalla 2022-11-21 a la(s) 13.41.49.png

Lo que hice fue ir a UX > Format Rules y crear esta regla (rule)

Captura de pantalla 2022-11-21 a la(s) 13.43.41.png

El problema esta en la formula > If this condition is true > [CANTIDAD]=0
ya que no hace la suma de todos los productos, me falta la formula correcta.

Captura de pantalla 2022-11-21 a la(s) 13.57.48.png

Espero haber explicado bien, gracias!

0 13 531
13 REPLIES 13

Creo que medio entiendo tu problema.


@marinocity wrote:

Captura de pantalla 2022-11-21 a la(s) 13.57.48.png


Esa suma del Grup aggregate es una funcionalidad de la vista que estรกs usando, por lo tanto no la puedes usar en una fรณrmula.

Segรบn yo para poder lograr la funcionalidad que quieres primero tienes que crear una columna virtual รณ una columna real en tu tabla INVENTARIO con una fรณrmula como รฉsta SUM([Cantidad]) para este ejemplo la llamarรฉ [SUMA_CANTIDAD].

Lo segundo que tienes que hacer es crear tu Format Rule , para ello puedes usar el que ya habรญas creado y lo รบnico que le tendrias que cambiar seria en tu fรณrmula la columna [CANTIDAD] por tu nueva columna [SUMA_CANTIDAD]. 

La verdad no hice ningรบn test y puede que me estรฉ pasando algo por alto.

Gracias @Kabuliรฑo 

La formula SUM([Cantidad]) no es valida.
Al crear una columna virtual da error "SUM function is used incorrectly"

Ok, supongo que [CANTIDAD] es de es una columna tipo numรฉrico y entonces prueba con SUM(INVENTARIO[CANTIDAD]) pero aunque te va a decir que estรก bien creo que no es lo que buscas.

https://support.google.com/appsheet/answer/10107699?hl=en&ref_topic=10104782

Necesito mรกs contexto sobre cรณmo tienes estructuradas tus tablas 

 

Gracias @Kabuliรฑo 

La estructura es la siguiente

TABLAS
INVENTARIO
VENTAS - Detalle_Ventas (Tabla hija)
COMPRAS - Detalle_Compras (Tabla hija)

La columna [CANTIDAD] dentro de la tabla INVENTARIO es una columna virtual que hace la resta entre la cantidad que entra en COMPRAS y lo que sale en VENTAS, con la siguiente formula.

SUM(SELECT(DETALLE_COMPRAS[CANTIDAD],[PART NUMBER]=[_THISROW].[PART NUMBER]))- 
SUM(SELECT(DETALLE_VENTAS[CANTIDAD],[PART NUMBER]=[_THISROW].[PART NUMBER]))

 

 

Ok, te voy a sugerir otra forma de trabajarlo y te aconsejo no usar fรณrmulas de Select() en la medida de lo posible.

Suponiendo que [PART NUMBER] es la llave de tu tabla INVENTARIO... y que tienes bien hechas las relaciones de tus tablas 

1.- Crea otra columna virtual de tipo Number en tu tabla INVENTARIO, para el ejemplo la llamarรฉ [STOCK] , su fรณrmula serรก SUM([Related DETALLE_COMPRAS][CANTIDAD])-SUM([Related DETALLE_VENTAS][CANTIDAD])

Esta columna de [STOCK] es bรกsicamente lo mismo que tu columna [CANTIDAD]

2.-Para que funcione el Format Rule (Incluso con la fรณrmula que tenรญas al principio) es necesario que el tipo de columna pueda ser comparable, en tu caso estabas comparando una lista con 0 , un valor que no representa una lista.

Tengo 2 problemas ahora, dentro de la formula de [CANTIDAD] tengo otra formula que forma parte de la ecuacion (no la copie antes para no complicar)

SUM(SELECT(RMA[CANTIDAD],AND([PART NUMBER]=[_THISROW].[PART NUMBER],[STOCKONO]="STOCK")))

quise traducirla a la nueva sintaxis, pero nose como ubicar el AND que le sigue a la formula, no funciona la que escribi abajo, ya que tiene una condicion.

SUM([Related RMAs][CANTIDAD]), AND [STOCKONO]="STOCK"))

Supongamos que solo tenga estas 2 formulas en la ecuacion, son las que me enviaste.

SUM([Related DETALLE_COMPRASs][CANTIDAD])-
SUM([Related DETALLE_VENTASs][CANTIDAD])

No funciona el paso 2 en Format Rule con la formula [CANTIDAD]=0
Tampoco funciona si creo una columna virtual [SUMA_CANTIDAD] con la formula SUM(INVENTARIO[CANTIDAD]) y luego colocarla en Format Rule.


@marinocity wrote:

Supongamos que solo tenga estas 2 formulas en la ecuacion, son las que me enviaste.

SUM([Related DETALLE_COMPRASs][CANTIDAD])-
SUM([Related DETALLE_VENTASs][CANTIDAD])


Te funcionรณ la fรณrmula?

 

 


@marinocity wrote:

No funciona el paso 2 en Format Rule con la formula [CANTIDAD]=0
Tampoco funciona si creo una columna virtual [SUMA_CANTIDAD] con la formula SUM(INVENTARIO[CANTIDAD]) y luego colocarla en Format Rule.


en la fรณrmula del Format Rule usa [STOCK]=0 y me dices si te funciona.

 

 


@marinocity wrote:

SUM(SELECT(RMA[CANTIDAD],AND([PART NUMBER]=[_THISROW].[PART NUMBER],[STOCKONO]="STOCK")))

quise traducirla a la nueva sintaxis, pero nose como ubicar el AND que le sigue a la formula, no funciona la que escribi abajo, ya que tiene una condicion.


Es mejor si explicas para que te sirve [STOCKNO] y la tabla RMA .
La tabla RMA tambiรฉn es hija de tu tabla Inventario?

 

 


@Kabuliรฑo wrote:

Supongamos que solo tenga estas 2 formulas en la ecuacion, son las que me enviaste.

SUM([Related DETALLE_COMPRASs][CANTIDAD])-
SUM([Related DETALLE_VENTASs][CANTIDAD])


Esa formula funciona perfecto, igual que la otra con el SELECT.


@Kabuliรฑo wrote:
@marinocity wrote:

No funciona el paso 2 en Format Rule con la formula [CANTIDAD]=0
Tampoco funciona si creo una columna virtual [SUMA_CANTIDAD] con la formula SUM(INVENTARIO[CANTIDAD]) y luego colocarla en Format Rule.


en la fรณrmula del Format Rule usa [STOCK]=0 y me dices si te funciona.


[STOCK] es igual a [CANTIDAD], es la misma columna virtual con la formula que esta mencionada arriba, solo con nombre diferente.


@Kabuliรฑo wrote:
@marinocity wrote:

SUM(SELECT(RMA[CANTIDAD],AND([PART NUMBER]=[_THISROW].[PART NUMBER],[STOCKONO]="STOCK")))

quise traducirla a la nueva sintaxis, pero nose como ubicar el AND que le sigue a la formula, no funciona la que escribi abajo, ya que tiene una condicion.


Es mejor si explicas para que te sirve [STOCKNO] y la tabla RMA .
La tabla RMA tambiรฉn es hija de tu tabla Inventario?


RMA es otra tabla que forma parte de la ecuacion de la columna [CANTIDAD].
La formula completa seria la siguiente

SUM(SELECT(DETALLE_COMPRAS[CANTIDAD],[PART NUMBER]=[_THISROW].[PART NUMBER]))- 
SUM(SELECT(DETALLE_VENTAS[CANTIDAD],[PART NUMBER]=[_THISROW].[PART NUMBER]))-
SUM(SELECT(RMA[CANTIDAD],AND([PART NUMBER]=[_THISROW].[PART NUMBER],[STOCKONO]="STOCK")))

[STOCKONO] es una columna dentro de la tabla RMA que pregunta si el producto a ingresar forma parte de STOCK o CLIENTE

Captura de pantalla 2022-11-21 a la(s) 17.38.41.png

Si se elige STOCK, hace la resta en [CANTIDAD], si se elige CLIENTE no.

 

 

 


@marinocity wrote:

[STOCK] es igual a [CANTIDAD], es la misma columna virtual con la formula que esta mencionada arriba, solo con nombre diferente.


Son del mismo tipo? 

Ok,
Para poder agregar la รบltima parte de tu fรณrmula sin usar select()

1.- Es necesario que RMA tambiรฉn tenga una columna Ref, haciendo referencia a tu tabla inventario (En otras palabras que RMA sea hija de INVENTARIO)

2.- Crear un Slice de RMA para el ejemplo la llamarรฉ RMA_STOCK y usarรกs como fรณrmula filtro: [STOCKONO]="STOCK"

3.- En tu tabla INVENTARIO copia la columna virtual [Related RMAs] ponle de nombre el que quieras (para el ejemplo la llamarรฉ [RMA_EN_STOCK]) y cambia de la fรณrmula el nombre de la tabla por el de la slice, Quedarรญa algo parecido a REF_ROWS("RMA_STOCK", "ID RMA")

4.- La fรณrmula final para tu columna [STOCK] quedarรก algo asรญ 

SUM([Related DETALLE_COMPRASs][CANTIDAD])-
SUM([Related DETALLE_VENTASs][CANTIDAD])-
SUM([RMA_EN_STOCK][CANTIDAD])

 

Gracias @Kabuliรฑo 

Deberia cambiar toda la estructura.
Lo que no puedo solucionar es el topic de este post,

Cambiar color Categoria si la suma de sus productos es igual a cero
 
 
Captura de pantalla 2022-11-21 a la(s) 13.41.49.png

Hasta aqui te puedo ayudar 

Te recomiendo visitar esta lista de reproducciรณn https://youtube.com/playlist?list=PLo4qc7daF3rczyFE7kviX_U_9lH4Z-pY9 

 

 

Gracias por tu ayuda @Kabuliรฑo 

Pero las formulas mencionadas no lo solucionaron.
Seguire buscando

Any help?

Top Labels in this Space