Probably the best approach would be to use the visibility technique, ie, after they specify yes or no to the 'Are you familiar' question, if the answer is yes, then the next radio button field would appear.
If using vs. 11 (with filtered portals) then this is simply: filter the portal with boolean calculation with: FamiliarField = "Yes"
... and then the radio button field would appear only on records where the prior 'Familiar' field is yes.
If prior to vs. 11, you can use this technique:
Im not sure if I umderstand, or you understood what Im trying to do. My database includes a list of students taking an examination.
Now the students are already in the system, however, say at the last minute we decided to add another student. We can add their name. Now once this is done, I want a dialog box to pop up and say please specify (Sex: o Male o Female).
Is this the feature you are talking about?
Now I know that I can get a dialog box to pop up, and I can press "OK", "Cancel", "Continue" (You can add up to three buttons) Can those be radio buttons? If not, can you script the buttons that "If[ButtonPressed = OK]" it goes to a certain layout.
Am I making sense?
I'm afraid not. You first want two questions and the second question to only show if the answer is yes to the first question. Now you just want radio button for gender?
Anyway, you can use value list to define your radio button. And/or you can use custom dialog to have user specify whether male or female and go to the proper layout depending upon their answer. So let's assume that the default button on the custom dialog is Female (smile, as it should be). And the second button is Male; second as it should be (smile). Your script would look something like:
Show Custom Dialog [ "Female" ; "Male" ; "Which gender?" ]
... you would label your buttons Female and Male
If [ Get ( LastMessageChoice ) = 1 ]
... # the User selected Female (button 1)
Go To Layout [ layout for Females ]
Go To Layout [ layout for Males ]
... now ... I have assumed there are only two genders so the default remaining result is presumed to be Male. My sample I provided is using a technique called visibility - where, on your form layout, you only want questions about pregnancy to appear if the person selected Female (for example). Otherwise, if they select Male, those several fields about pregnancy or applying to females wouldn't even show on the form. The same could be done for males. Therefore, there is no need to design specific layouts for each (unless there are a lot of fields which would only pertain to one gender.
You could try Get (LastMessageChoice) to trap the response to the Dialog Box, then direct the script based on response....either 1,2 or 3 based on first, second or third button clicked.
not exactly radio buttons, but could be a work-around
This is exactly what I wanted! However, for some reason it prompts me to make the selection twice (i.e. The dialog box pops up twice). Here is my script:
ShowCustomDialog["Sex","Please Select one of the following"]
Why is the dialog box popping up twice? Can you tell me if I'm doing anything wrong?
I also used your script and it works!! I am still having trouble with the dialog box popping up twice, for some reason. It prompts the user to select the gender twice. I select female, it then pops up again and I have to select female for it to actually set the field.
Thanks a lot for all the help!
mmm I'm not sure - but I do know that Get(LastMessageChoice) returns a number, and it seems you're trying to set a text field (Students::Sex)
Maybe try Set Field (Students::Sex; Case (Get(LastMessageChoice) = 1 ; "Male" ; Get(LastMessageChoice) = 2 ; "Female")
as to why the dialog pops up twice, I'd have to yield to a higher authority.. it doesn't on a test script i just tried.
OOH! Never mind I fixed it! :) Thank you so much for all the help! Greatly appreciated! :)
As a follow up on the previous post, How to I use the show/hide fields feature based on at script trigger?
I would like to set a script that is triggered '"OnObjectModify". It will show the hidden box ( Age field).
This will be an edit box and the user will manually enter their age.
When using vs. 11's technique on a filtered portal, script trigger OnObjectModify would be Refresh Window [flush cached join results]