Hi,
I am working using flow control methodoly where in case the application is in some multiple occurrence form, and using the userbar, I have a button to come back to the flow control form, the button execute REENTER flow_form, I found that all records between the current record and the flow_form where have multiple occurrences, the system generates all the remaining occurrences up to complete the lines that the dictionary has for the record,
This type of program is similar to the DHS application in CAPI mode, and uses the same methodoly. The most important difference is that the DHS version was executed in cspro 4.1 and I am working in cspro 6.3.
Now, I moved the app to 6.2 and executed with this cspro version. I found that now it is working properly, it means that version 6.3 has a different behavior that can be a bug in the software.
Please let me know what I can do to have the same behavior in the new version.
Thanks
Mario Vaisman
Flow control process
-
- Posts: 133
- Joined: February 11th, 2013, 8:26 am
Re: Flow control process
I want to add more information. The issue occurs when it is executed in windows environment, however, the same application in android works correctly, it doesn't generate empty records as the cspro 6.3 for windows.
Thanks
Mario Vaisman
Thanks
Mario Vaisman
Re: Flow control process
Can you post an example so we can test it out?
-
- Posts: 133
- Joined: February 11th, 2013, 8:26 am
Re: Flow control process
Dear josh,
the escenario is the following:
you have 3 forms, the first is single form with only one variable called variable1
the second form has a roster (a whore dictionary record (multiple occurrences), where you have completed the first n records, but not all that you defined in the dictionary.
The third form has other record of the dictionary,
You are located in the third record in some of the variables, then in the logic you have "reenter form1"
as you see all is normal, however if you see the datafile, the record for the second for has not only the n records entered, it has from there all empty records up to the number of occurrences defined in the dictionary.
I did the same test in CSPro 6.2 and I have in the datafile those n records only, but in CSPro 6.3 i have the issue of empty records.
I tested this breaking the normal sequence using a userbar function where at the end I execute reenter form1 and I have also this statement in the postproc of the form3
Here is the logic of the form
(at form level)
preproc
if endingInterview then
advance;
endif;
postproc
if !endingInterview then
j = 0;
do varying i = 1 until i > nmbrex
if stat_3(i) = "X" then
inc(j);
endif;
enddo;
if j = nmbrex then
ss_3 = "DONE";
endif;
reenter flow_control; // this is the instruction
endif;
This is the function I used in the userbar
// ===============================================================================
// Stop immediately the interview of the present section
function stopInterview( );
if accept("Stop interview of this section?", "Yes", "No") = 1 then
i=1;
else
i=0;
endif;
if i=1 then
move to Flow_control advance;
endif;
end;
I teste with reenter, move to, and in all cases the result was the same
Hope it is clear, just let me know for more details.
Thanks
Mario
the escenario is the following:
you have 3 forms, the first is single form with only one variable called variable1
the second form has a roster (a whore dictionary record (multiple occurrences), where you have completed the first n records, but not all that you defined in the dictionary.
The third form has other record of the dictionary,
You are located in the third record in some of the variables, then in the logic you have "reenter form1"
as you see all is normal, however if you see the datafile, the record for the second for has not only the n records entered, it has from there all empty records up to the number of occurrences defined in the dictionary.
I did the same test in CSPro 6.2 and I have in the datafile those n records only, but in CSPro 6.3 i have the issue of empty records.
I tested this breaking the normal sequence using a userbar function where at the end I execute reenter form1 and I have also this statement in the postproc of the form3
Here is the logic of the form
(at form level)
preproc
if endingInterview then
advance;
endif;
postproc
if !endingInterview then
j = 0;
do varying i = 1 until i > nmbrex
if stat_3(i) = "X" then
inc(j);
endif;
enddo;
if j = nmbrex then
ss_3 = "DONE";
endif;
reenter flow_control; // this is the instruction
endif;
This is the function I used in the userbar
// ===============================================================================
// Stop immediately the interview of the present section
function stopInterview( );
if accept("Stop interview of this section?", "Yes", "No") = 1 then
i=1;
else
i=0;
endif;
if i=1 then
move to Flow_control advance;
endif;
end;
I teste with reenter, move to, and in all cases the result was the same
Hope it is clear, just let me know for more details.
Thanks
Mario
Re: Flow control process
What I meant was a working application that we can test.
-
- Posts: 133
- Joined: February 11th, 2013, 8:26 am
Re: Flow control process
Josh,
I made a mistake in the explanation, I forgot to give you more information.
This situation happens when I do a partialsave not at the end of the process.
Thanks
Mario Vaisman
I made a mistake in the explanation, I forgot to give you more information.
This situation happens when I do a partialsave not at the end of the process.
Thanks
Mario Vaisman