Problemas con la declaración del constraint en formulario

Buenas noches, soy nuevo en el foro!

He creado un formulario en ODK-X para recolectar los signos vitales & antropometria de una serie de pacientes; yo hago una primera pregunta de seleccion multiple para conocer cuales son los signos vitales que se van a capturar.

Posterior a esto tengo todos los signos vitale condicionados con un If dependiendo el caso, el problema esta cuando limito los valores que se pueden capturar, es decir, no siempre seleccionare todos los signos vitales puede que solo necesite uno puntual pero al declarar el constraint en cada campo me genera error al ejecutarlo obligandome a ingresar valores a los signos vitales no seleccionados.

Anexo el .xlsx esperando que me puedan ayudar con este problema.

VZLA_IM_SignosVitales.xlsx (23.7 KB)

Siento mucho mi ingles no es mi fuerte el idioma

(Perdón por el traductor de Google del español)

¡Hola @cechaconl! Como eres nuevo en la comunidad, cuando tengas la oportunidad, preséntate aquí.

Para la restricción, puede agregar que los valores deben estar en un rango determinado o “=== null”. Luego, si se requieren los signos vitales en función de cuáles se seleccionan, deberán ingresar valores válidos si se seleccionan, pero si no se seleccionan, la variable será nula y funcionará.

Alternativamente, puede poner en la restricción algo sobre not(selected()) para lo que no fue seleccionado, entonces tiene que estar en el rango válido o no seleccionado para responder.

1 Like

Hello @ elmps2018,

Thank you very much for your prompt reply. I have carried out several tests similar to what you indicate in which I declare this sentence:

data (‘valuePeso’)> = 0 && data (‘valuePeso’) <= 250 || data (‘valuePeso’) ** == ‘null’ **

  • The logic of the field is as indicated, in case of being selected any of the vital signs is limited by the restriction and in the case of those that were not selected, do not generate an error. *

I will try these two sentences, according to what you indicate in your experience:

** data (‘valuePeso’)> = 0 && data (‘valuePeso’) <= 250 || data (‘valuePeso’) === null **
** data (‘valuePeso’)> = 0 && data (‘valuePeso’) <= 250 || not (selected (data (‘valuePeso’) === null)) **

So I can evaluate both cases, I will leave you here my comments about it.

Once again thank you very much for your help

1 Like

Hello @elmps2018

I’m pleased to inform you that the solution you gave me was correct, the sentence used in my form was:

data(‘label’) >= value && data(‘label’) <= value || data(‘label’) === null

Thank you very much for the support provided, to find the solution to my problem.

2 Likes