Subscreen Cluster

Murray Scholz murray.scholz@abri.une.edu.au
Wed, 08 Jan 2003 12:18:17 +1100


Hi Graeme,

I think that the "if...." portion of the subscreen statement will only
take effect when the screen is processing in entry mode (this is the
behaviour of the "if...." clause on a field statement).
It would be NICE if the "if..." applied also to correctmode , changemode
(ie. when the operator explicitly goes to that field with an entered id.
number)... but it doesn't seem to !!

To get the desired behaviour in changemode and/or correctmode...
You might have to resort to something like...

procedure designer nn (where nn is the id number of the 1st occurrence
of the cluster)
begin
	accept field1
	accept field2
	accept field3
	accept ref 
	if ref = "R" (no need to use upshift, as the upshifting will already be
done for you)
	then run screen $MENUJOB/safinref auto passing rec_tran
	if ref = "V"
	then run screen $MENUJOB/safinrev auto passing rec_tran
end

Let me know how you get on.

Cheers
Murray Scholz
Agricultural Business Research Institute
University of New England
Armidale NSW 2351 Australia
Email murray.scholz@abri.une.edu.au

Graeme Martin wrote:
> 
> 
> 
> Greetings All
> 
> I'm trying to run a two slave screens from a detail cluster
> 
> ie
> cluster occurs with rec_tran
> field1
> field2
> field3 value "R","V"
> field ref upshift values "R","V"
> subscreen $MENUJOB/safinref auto passing rec_tran id same if "R" = upshift(ref)
> subscreen $MENUJOB/safinrev auto passing rec_tran id same if "V" = upshift(ref)
> cluster
> 
> ...what seems to happen  for both "R" and "V" the same screen safinref is
> invoked ;
> hmmm ?
> I suspect the if cond is being totally ignored because when I remove the
> values it invokes on any value ;
> 
> Is this possible ?
> 
> Regards
> 
> Graeme