good day
i need a logic on how to set a Not Applicable as label(66), as i have tried to set it but it gives me out of range error.
Not Applicable
Re: Not Applicable
You can make this work with the set behavior statement. For example:
set behavior(MYFIELD) canenter(notappl) on (noconfirm);
However it is a really bad idea. Notappl has a very special purpose in CSPro, representing skipped fields. Trying to use it as a valid choice will only cause you major headaches later on. For what you are trying to do it is better to choose a numeric value like "66" or "99". You can optionally set the "special value" column in your value set to "Missing" but you should really never set it to notappl.
set behavior(MYFIELD) canenter(notappl) on (noconfirm);
However it is a really bad idea. Notappl has a very special purpose in CSPro, representing skipped fields. Trying to use it as a valid choice will only cause you major headaches later on. For what you are trying to do it is better to choose a numeric value like "66" or "99". You can optionally set the "special value" column in your value set to "Missing" but you should really never set it to notappl.
Re: Not Applicable
they really want it as skipped field but it should be labeled as a 66(numeric)
Re: Not Applicable
is there anyhow to set global logic to automatically enters 66 on skipped fields?
Re: Not Applicable
I don't think so. Again, something I would try to avoid as CSPro really wants skipped fields to be notappl. I would probably convert notappl to 66 in a batch application after data entry if the end user really needed that.
Re: Not Applicable
The only way out is to always use 'advance' instead of 'skip', and then have preprocs on all the variables that should be skipped based on condition that triggers the advance. If its a simple questionnaire, then bingo... else.... I would not try it.