Pop Up Screens

Pop up screens are a means of streamlining user input. One main screen is created with all possible queries on it. The queries the user will always have to answer are placed on the cds first. Other screens are displayed based on user input. A break query is placed as the last query on a page, after all the required queries but before any of the response dependent queries. Then separate CDS's are created that have the response dependent queries. These separate CDS's are the ones that POP UP based on user input. The user never actually gets past the break query of the main CDS. Confused yet? Let me provide an example scenario.

A CDS is used to collect data about a procedure but different data is required depending on what procedure is being documented. If procedure 1 then the user needs to answer 3 queries. If procedure 2 then the user needs to answer 3 different questions. A pop up screen makes it so that the user will only see the queries that relate to the procedure being documented.

 

Comments Screen Shots
The next 3 images are separate pages of the main CDS. The user only sees the first page of the screen. pop_scr1.gif (3219 bytes)
A separate CDS is created with these same queries. That CDS is shown if the first query on page 1 is answered Y. The user never sees page 2 of the main CDS. pop_scr2.gif (2055 bytes)
Another CDS is created with these queries. That CDS is shown if the second query on page 1 is answered Y. The user never sees page 3 of the main CDS. pop_scr3.gif (2114 bytes)
The placement of the break query is very important. It should be the last query on the last page that the user will see. I've have placed it as #5. This is not the last query on the page but the others are label type queries and so do not matter. Page 2 of the screen start with field #9. Due to the attribute on field 5, the break query, the user will never get past page 1. Although the user never sees anything on page 2 or 3 it is critical that they exist. They contain all the queries that are duplicated on the pop up screens. They must exist on the main CDS in order for the responses to be saved when the screen is filed. pop_cds.gif (11081 bytes)
   
This is the attribute for field 1. It pops up screen TJT.M.POP1 if the user responds Y. That CDS has the same queries as page 2 of the main CDS.

The only changes you would need to make are for the window size (7, 92 in this example) and the CDS to pop up (TJT.M.POP1 in this example).

pop_att1.gif (3242 bytes)
This is the attribute for field 2. It pops up screen TJT.M.POP2 if the user responds Y. That CDS has the same queries as page 2 of the main CDS. pop_att2.gif (3216 bytes)
This is the attribute for field 3. It pops up either TJT.M.POP1 or TJT.M.POP2 depending on the response. It does this by using a group resonse dictionary to link the response to a screen. pop_att3.gif (3293 bytes)
This attribute is attached to the break query. pop_break.gif (2247 bytes)
 
This is the group response dictionary referenced by the field 3 attribute. The attribute finds the element code that matches the user reponse and then uses the element name to determine which screen to pop up. Since all my pop up screens start with the same thing I only needed to use a 1 or 2 as the element name and  then add it to TJT.M.POP to get the pop up screen mnemonic. pop_grp.gif (4210 bytes)
   
This is the first pop up CDS. pop_pop1_cds.gif (9696 bytes)
The user sees this screen when answering the first query on the main screen Y. pop_pop1_scr.gif (2207 bytes)
   
This is the second pop up CDS. pop_pop2_cds.gif (9693 bytes)
The user sees this screen when answering the second query on the main screen Y. pop_pop2_scr.gif (2235 bytes)
   




>Don't see what you need?  Visit one of these other sites


or email me your request (tomt at thomast357.com).


TjT


© Double T Online