× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Hi Michael,

I'm wondering whether saving and restoring the screen would resolve the
issue that you're dealing with. According to the manual the QsnSavScr
(Save screen) API saves the current state of the display. I've not been
able to reproduce the behavior that you've reported though, so I don't
know if state in that sense is supposed to include the display's current
INVITE setting.

It's quite simple to test so maybe you'd find it worthwhile to try it
out. Here are the prototypes for the two DSM API's involved in saving
and restoring a display in a direct operation:

**-- Save screen:
D QsnSavScr Pr 10i 0 ExtProc( 'QsnSavScr' )
D SavBufHdl 10i 0 Options( *Omit )
D CmdBufHdl 10i 0 Const Options( *Omit )
D LlvEnvHdl 10i 0 Const Options( *Omit )
D ApiError 1024a Options( *Omit: *VarSize )
**-- Put command buffer:
D QsnPutBuf Pr 10i 0 ExtProc( 'QsnPutBuf' )
D CmdBufHdl 10i 0 Options( *Omit )
D LlvEnvHdl 10i 0 Const Options( *Omit )
D ApiError 1024a Options( *Omit: *VarSize )
**
D Handle s 10i 0

Save the display immediately prior to performing the read, and restore
it immediately after:

/Free
.
.
Handle = QsnSavScr( *Omit: *Omit: *Omit: *Omit );

QsnReadScr( *omit
: inbuf
: *omit
: *omit
: *omit );

QsnPutBuf( Handle: *Omit: *Omit );

p_screen = QsnRtvDta( inbuf
: *omit
: *omit );
.
.
/End-Free

As I said, I don't know if this will work - but I'd be interested in
hearing what you find out!

Best regards,
Carsten Flensburg


-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Smith, Julius
Michael
Sent: 10. oktober 2008 14:53
To: Midrange Systems Technical Discussion
Subject: QsnReadScr Api

Based on Scott Klement's article in System iNetwork Programming Tips:
Q: We have a requirement to extract data from an existing green-screen
display into an Attention-key program.

I used this technique with success on a display without the "INVITE"
keyword.... however, when using it on one that did have the "INVITE"
keyword the following happened:

1> The QsnReadScr API worked and retreived the screen buffer
2> From that point forward, no keys worked.... Fkeys, enter, anything,
therefore the screen was unuseable to the user. Based on that
observation, it is my thought that the QsnReadScr API turns the "INVITE"
keyword off

Does anyone have a resolution for this issue.

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.