On Fri, 2014-10-03 at 18:55 +0200, Carel Teijgeler wrote:
Jonathan
IIRC: the last screen format has focus, is active; or the first
available input capable field on the screen. No way to test this.
I was beginning to think that it was something along those lines, but in
my hazy recall it was only subfile related when it now seems as if its
actually all record formats on a given screen at once.
I would not DSPATR(PC) in this situation, use CSRLOC(row col) instead.
Perhaps a little more code, but the cursor is more controllable.
I had thought of that, and indeed use it in other parts of the program,
however the example given is much cut down and in the original includes
2 dynamic subfiles with multiple I/O & DSPATR fields.
I had initially thought it was something to do with the subfiles, hence
cutting it down to this absolute minimum, everything apart from the
cursor location works.
I have just managed to get tn5250j to work, and this also shows the same
results of the cursor location, and if it is correct or not, being
dependent on the write order of the display formats.
Discounting the header and footer, I have 4 record formats (6 if you
include the subfile records) so I guess I will have to bite the bullet
and do a little "if first screen has error do order 02D...02A, if second
screen do order 02A...02D" and so on, not very elegant but will work.
The program is deliberately complicated so it forces me to use as many
tricks and code ideas as possible (yet is modelled on a real world, if
much simpler, application) so that once I'm happy with it I can progress
to trying ILE/sql/etc... however I'm such a perfectionist that fixing
this old program's code to be more "logically" resilient/correct is
taking much longer than anticipated.
I very vaguely recall having this problem in the past (talking years
ago) and thinking about it logically the multiple record formats must
somehow be merged together into a single 5250 data stream and as I read
somewhere while hunting this problem, the DSPATR(PC) actually results in
a "CSRLOC(x y)," as does a simple entry field with no dspatr, during
compile and as only one, crsloc, can exist on the screen the order
becomes an issue as they over/under write each other.
Regards,
Carel Teijgeler
Thanks, Jon.
On 3-10-2014 18:33, Wilson, Jonathan wrote:
Its been some time, but I seem to recall (as I'm having problems) that
the sequence of the writes and reads to multiple formats on one screen
can have an affect (effect?) on how the cursor is placed when dspatr(PC)
is used on one or both records.
As an Amazon Associate we earn from qualifying purchases.