# CAMPO CALCULADO DEPENDIENDO DE LOS VALORES DE OTROS CAMPOS

**URL:** <https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913>\
**Category:** Velneo\
**Created:** [1 Diciembre, 2011 22:22 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913 "2011-12-01T22:22:27Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [1 Diciembre, 2011 22:22 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/1 "2011-12-01T22:22:27Z")

</div>

Qusiera tener un campo tipo formula la cual depende de los valores de otros campos. Me explico tengo en una tabla uncampo llamado final, y diez campos numericos desde n1,n2,..., n10. final=promedio de los campos n1 hasta n10 si estos campos tienen valores mayores que 10 y menores que 50, de lo contrario sera el promedio solamente de los campos que cumplan con esta condición, como puedo hacer esto, si alggien sabe le agradezco

---

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [1 Diciembre, 2011 22:24 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/2 "2011-12-01T22:24:37Z")

</div>

se me olvidaba el usuario por medio de una rejilla alimenta los valores de n1...n10 y debe ver el resultado del campo final a medida que va ingresando los valores. gracias

---

<div class="post-metadata">

**Author:** ![jose1](https://avatars.discourse-cdn.com/v4/letter/j/dec6dc/32.png) [@jose1](https://foros.velneo.com/u/jose1)\
**Post date:** [2 Diciembre, 2011 00:52 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/3 "2011-12-02T00:52:26Z")

</div>

A tu primera pregunta, el promedio se calcula tal cual:  
Pero como tienes que comprobar los valores entre un rango debes usar CHOOSE():

#PROMEDIO = ( choose((#N1\>10)&(#N1\<50),#N1,0)+choose((#N2\>10)&(#N2\<50),#N2,0)+++++choose((#N10\>10)&(#N10\<50),#N10,0) ) / (( ((#N1\>10)&(#N1\<50))+((#N2\>10)&(#N2\<50))+++++((#N10\>10)&(#N10\<50)) ) | 1 )

(la formula es excesivamente larga asi que no la voy a escribir completa, pero no creo que tengas demasiado problema en terminarla)

A tu segunda pregunta, solo debes incluir una columna en la rejilla para mostrar el #PROMEDIO y se recalculara automaticamente

un saludo  
José Luis  
http://www.ascsl.com

---

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [2 Diciembre, 2011 13:09 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/4 "2011-12-02T13:09:37Z")

</div>

gracias lo probaré creo que era lo que necesitaba

---

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [7 Diciembre, 2011 16:53 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/5 "2011-12-07T16:53:29Z")

</div>

Como podría aplicar una función para lo siguete:

si el valor de un campo tiene un valormenora a 35 toma el valor malo; si el valor es \>35 y menor \< 45 tomar el valor "bueno" y si tiene un valor mayor a 45 excelente, y que se actualice tan pronto se le ingrese el valor al campo de condición

---

<div class="post-metadata">

**Author:** ![Giuseppe\_Komenco](https://avatars.discourse-cdn.com/v4/letter/g/5fc32e/32.png) [@Giuseppe\_Komenco](https://foros.velneo.com/u/Giuseppe_Komenco)\
**Post date:** [7 Diciembre, 2011 17:04 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/6 "2011-12-07T17:04:23Z")

</div>

@sistemasitp

Función choose:  
choose(condicion, datoSi, datoNo)

choose(#CAMPO\<35,"malo",choose(#CAMPO\>35 AND #CAMPO\<45,"bueno",choose(#CAMPO\>45,"excelente",)))

Por ejemplo.

---

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [7 Diciembre, 2011 17:19 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/7 "2011-12-07T17:19:42Z")

</div>

Mil gracias su ayuda siempre tan precisa.

---

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [7 Diciembre, 2011 17:36 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/8 "2011-12-07T17:36:35Z")

</div>

choose(#NL01\<35,"M",choose(#NL01\>35 & #NL01\<45,"B","E"))

SI NL01 TOMA EL VALOR DE 47 DEBERIA DAR COMO RESULTADO E PERO DA COMO RESULTADO B PORQUÉ?

---

<div class="post-metadata">

**Author:** ![jose1](https://avatars.discourse-cdn.com/v4/letter/j/dec6dc/32.png) [@jose1](https://foros.velneo.com/u/jose1)\
**Post date:** [7 Diciembre, 2011 17:47 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/9 "2011-12-07T17:47:42Z")

</div>

1. Te faltan los parentesis en la comprobacion de la condicion, y por eso el resultado no es correcto  
2. ¿Que pasa si el valor es = 35? :(

un saludo  
José Luis  
http://www.ascsl.com

---

<div class="post-metadata">

**Author:** ![gegeo](https://avatars.discourse-cdn.com/v4/letter/g/e36b37/32.png) [@gegeo](https://foros.velneo.com/u/gegeo)\
**Post date:** [7 Diciembre, 2011 17:47 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/10 "2011-12-07T17:47:42Z")

</div>

Prueba poniendo entre parentesis cuando das dos opciones al valor:

choose(#NL01\<35,"M",choose(**(**#NL01\>35**)** & **(**#NL01\<45**)**,"B","E"))

Saludos ;)

---

<div class="post-metadata">

**Author:** ![Giuseppe\_Komenco](https://avatars.discourse-cdn.com/v4/letter/g/5fc32e/32.png) [@Giuseppe\_Komenco](https://foros.velneo.com/u/Giuseppe_Komenco)\
**Post date:** [7 Diciembre, 2011 17:50 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/11 "2011-12-07T17:50:06Z")

</div>

Prueba con  
choose(#NL01\<35,"M",choose(#NL01\>35 & #NL01\<45,"B",choose(#NL01\>45,"E",)))

EDITO:  
Cierto, no había visto el "E" en la "negación" del segundo choose

---

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [7 Diciembre, 2011 17:51 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/12 "2011-12-07T17:51:09Z")

</div>

Lo solucione así,

choose(#NL01\<35,"M",choose( #NL01\<45,"B","E"))

aunque queda el sinsabor. o depronto el choose no acepta validaciones con los operadores logigos?

---

<div class="post-metadata">

**Author:** ![jose1](https://avatars.discourse-cdn.com/v4/letter/j/dec6dc/32.png) [@jose1](https://foros.velneo.com/u/jose1)\
**Post date:** [7 Diciembre, 2011 17:53 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/13 "2011-12-07T17:53:41Z")

</div>

Lamento contradecirte, pero si utilizas los parentesis, puedes utilizar los operadores logicos perfectamente en la condicion CHOOSE.

un saludo  
José Luis  
http://www.ascsl.com

---

<div class="post-metadata">

**Author:** ![gegeo](https://avatars.discourse-cdn.com/v4/letter/g/e36b37/32.png) [@gegeo](https://foros.velneo.com/u/gegeo)\
**Post date:** [7 Diciembre, 2011 17:55 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/14 "2011-12-07T17:55:12Z")

</div>

Si acepta validaciones con los operadores logicos, pero si no pones entre parentesis los valores, tratara como parte de la condicion el operador logico, en este caso el **&**

Saludos ;)

---

<div class="post-metadata">

**Author:** ![sistemasitp](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@sistemasitp](https://foros.velneo.com/u/sistemasitp)\
**Post date:** [7 Diciembre, 2011 17:57 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/15 "2011-12-07T17:57:54Z")

</div>

Si funciona pero la dejare con las condiciones ya que estos acotan los volores como quiero:

\<35 , \<45 y el resto con esto abarcaría lasigualdades, mil gracias...

---

<div class="post-metadata">

**Author:** ![jose1](https://avatars.discourse-cdn.com/v4/letter/j/dec6dc/32.png) [@jose1](https://foros.velneo.com/u/jose1)\
**Post date:** [7 Diciembre, 2011 18:00 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/16 "2011-12-07T18:00:27Z")

</div>

@Gegeo

2-0, jejeje

---

<div class="post-metadata">

**Author:** ![gegeo](https://avatars.discourse-cdn.com/v4/letter/g/e36b37/32.png) [@gegeo](https://foros.velneo.com/u/gegeo)\
**Post date:** [7 Diciembre, 2011 18:02 UTC](https://foros.velneo.com/t/campo-calculado-dependiendo-de-los-valores-de-otros-campos/3913/17 "2011-12-07T18:02:04Z")

</div>

> @Gegeo
> 
> 2-0, jejeje

Mecachis :D
