Update a text field if condition is met


Dear experts, continuing with this matter, I want to complicate it even more and I need your help.

I have these columns:

 

[ITEM] ----> Type BOLLEANO
[TOTAL TICKET] ----> Virtual Column --> TIPE PRICE
[CAMBIAR ITEM] --> Type NUMBER
[MENSAJEITEM] Type TEXT

App Formula:

 

IFS(
AND([ITEM]=FALSE,[TOTAL TIKECT]<0),
"Click en el Carrito...",
AND([ITEM]=TRUE,[TOTAL TIKECT]=0),
"Un momento por favor...",
AND([ITEM]=TRUE,[TOTAL TIKECT]>0),
"Calculo de su Pedido..."
)

I need the initial value of the column

 

[MESSAGEITEM] = "Calculo de su Pedido......"

The options of

 

[ITEM]=FALSE,[TOTAL TIKECT]<=0

They are saved THIS WAY when entering the form, therefore they are already in the table.

Now the Text should change in the column

 

[MENSAJEITEM]

according to the values ​​of the columns

 

[ITEM]=TRUE,[TOTAL TIKECT]=0 --> "Un momento por favor..."
[ITEM]=TRUE,[TOTAL TIKECT]>0 --> "Calculo de su Pedido..."

Sorry for my clumsiness, I tried applying the previous example but I was not able.

MENSAJEITEM- FORMULA.jpg

MENSAJEITEM2.jpg

 

IMAGEN 1.jpg

                                                 IMAGEN 2.jpg

 

Gracias por su tiempo.  Happy 2023, Thank you for your time. 

Solved Solved
0 6 332
3 ACCEPTED SOLUTIONS

Saludos @Tecnopica,

Hay unos campos tipo Show que puedes utilizar para este mensaje. Lo puedes crear creando una columna virtual.
Screen Shot 2023-01-05 at 5.44.38 AM.png

En la definición del campo le puedes en Category = Text
En Content le colocas la formulas que ya tienes pero dentro de un IF para que así muestre el texto según el estado.

IF(AND([ITEM]=FALSE,[TOTAL TIKECT]<0),"Click en el carrito",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]=0),"Un momento por favor...",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]>0),"Calculo de su pedido...","")))

EScreen Shot 2023-01-05 at 5.45.01 AM.png

View solution in original post

Que valor inicial tiene [TOTAL TIKECT]? Revisa y confirma que la primera funcione.
Screen Shot 2023-01-05 at 9.57.21 AM.png 

View solution in original post

De momento, y espero que funcione sin problemas, encontré la solución.

Todo pasa por crear una acción que actualice el campo [ITEM] después de entrar a seleccionar los "lotes" y convierta su valor de FALSE a TRUE. 

Asi la próxima vez, cuando regrese al formulario CLIENTES_Detail  desde el Form (tabla ORDENES) la linea que cumple VERDADERO en las dos expresiones es la segunda y dará el siguiente mensaje:

"Un momento por favor...."  

Una vez calculados los campos y actualizados  el valor de [TOTAL TIKECT]>0 y el campo [ITEM] sigue siendo TRUE, por tanto la linea que cumple las dos condiciones es la tercera y dará el mensaje :

"Calculo de su pedido..."

 

IF(AND([ITEM]=FALSE,[TOTAL TIKECT]<0),"Click en el carrito",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]=0),"Un momento por favor...",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]>0),"Calculo de su pedido...","")))

Muchas gracias por tu tiempo y atención.

Recibe un cordial saludo.

Hilo finalizado.

Best Regars

 

View solution in original post

6 REPLIES 6

Saludos @Tecnopica,

No esta muy claro vuestro requerimiento, si gustas explicarlo en español.

Según lo que entendi [MENSAJEITEM] necesitas que cambio según avanza el proceso. Esto lo puedes lograr usando un APP FORMULA y en la sección de Update Behavior activa el Reset on edit?

Screen Shot 2023-01-04 at 6.51.37 PM.png

Gracias por tu respuesta James_McFarlane, te explico algo mas siguiendo la linea de lo expuesto anteriormente:

Tengo un formulario con varios campos que se necesitan para conformar una orden de trabajo, tabla "padre" - CLIENTES.

Dentro del formulario tengo los item que llevan ese formulario, otra tabla "hija@" - ORDENES, donde le especifico los "lotes" necesarios. 

La idea es la siguiente:

Cuando entro al formulario CLIENTES_Detail  los campos de la tabla CLIENTE ya contienen estos valores: [ITEM]= FALSE, [TOTAL TIKECT]<0 ó ESTA EN  BLANCO. 

 

([ITEM]=FALSE,[TOTAL TIKECT]<0)

por lo tanto la "etiqueta" que debe aparecer en el formulario debería ser:

"Click en el Carrito..."

Te adjunto captura:

EJEMPLO1.jpg

Cuando doy "Click" al icono del carrito, mediante una acción, me lleva al formulario de la tabla ORDENES donde le indico los "lotes".

Al terminar de introducir los "lotes" necesarios, regreso al formulario  CLIENTES_Detail  los campos de la tabla CLIENTE ya se han actualizado, pero aun otros campos virtuales (columnas) están haciendo cálculos, actualizando la tabla, y a punto de mostrarse actualizados en la app, esto demora algunos segundos, es entonces que los valores son estos:

 [ITEM]= TRUE, [TOTAL TIKECT]=0 ó ESTA EN  BLANCO. 

 

([ITEM]=TRUE,[TOTAL TIKECT]=0)

por lo tanto la "etiqueta" que debe aparecer en el formulario debería ser:

"Un momento por favor..."

Te adjunto captura:

EJEMPLO2.jpg

Cuando los campos virtuales muestran los cálculos debajo del mensaje, en el formulario  CLIENTES_Detail los valores son estos:

 [ITEM]= TRUE, [TOTAL TIKECT]>0

 

AND([ITEM]=TRUE,[TOTAL TIKECT]>0),

por lo tanto la "etiqueta" que debe aparecer en el formulario debería ser:

"Calculo de su Pedido..."

Te adjunto captura:

EJEMPLO3.jpg

Tres estados, durante el proceso de introducción de datos y actualización.

Espero que puedas ayudarme, no obstante, te agradezco tu interés.

Muchas Gracias.

Best Regars

Saludos @Tecnopica,

Hay unos campos tipo Show que puedes utilizar para este mensaje. Lo puedes crear creando una columna virtual.
Screen Shot 2023-01-05 at 5.44.38 AM.png

En la definición del campo le puedes en Category = Text
En Content le colocas la formulas que ya tienes pero dentro de un IF para que así muestre el texto según el estado.

IF(AND([ITEM]=FALSE,[TOTAL TIKECT]<0),"Click en el carrito",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]=0),"Un momento por favor...",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]>0),"Calculo de su pedido...","")))

EScreen Shot 2023-01-05 at 5.45.01 AM.png

Gracias James_McFarlane,

Funciona a medias. pero creo que es buen camino.

Correcto para el estado 2 y 3.- El estado 1 no se ve, digamos que es el intermedio, no reconoce el valor menor que 0

 

IF(AND([ITEM]=FALSE,[TOTAL TIKECT]<0),"Click en el carrito",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]=0),"Un momento por favor...",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]>0),"Calculo de su pedido...","")))

 Espero tus noticias, gracias

Que valor inicial tiene [TOTAL TIKECT]? Revisa y confirma que la primera funcione.
Screen Shot 2023-01-05 at 9.57.21 AM.png 

De momento, y espero que funcione sin problemas, encontré la solución.

Todo pasa por crear una acción que actualice el campo [ITEM] después de entrar a seleccionar los "lotes" y convierta su valor de FALSE a TRUE. 

Asi la próxima vez, cuando regrese al formulario CLIENTES_Detail  desde el Form (tabla ORDENES) la linea que cumple VERDADERO en las dos expresiones es la segunda y dará el siguiente mensaje:

"Un momento por favor...."  

Una vez calculados los campos y actualizados  el valor de [TOTAL TIKECT]>0 y el campo [ITEM] sigue siendo TRUE, por tanto la linea que cumple las dos condiciones es la tercera y dará el mensaje :

"Calculo de su pedido..."

 

IF(AND([ITEM]=FALSE,[TOTAL TIKECT]<0),"Click en el carrito",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]=0),"Un momento por favor...",
IF(AND([ITEM]=TRUE,[TOTAL TIKECT]>0),"Calculo de su pedido...","")))

Muchas gracias por tu tiempo y atención.

Recibe un cordial saludo.

Hilo finalizado.

Best Regars

 

Top Labels in this Space