There is a way to make the screen "auto refresh" but be careful, It is on
a timer that you set and removes the keyboard buffer. Function keys and
the enter key when pressed at the wrong time will cause program errors.
From:
"Murphy, Mark" <MurphyM@xxxxxxxxxx>
To:
"RPG programming on the AS400 / iSeries" <rpg400-l@xxxxxxxxxxxx>
Date:
08/14/2008 12:09 PM
Subject:
RE: Auto advancing display screen
Ok, let me be more clear here. When you read off the data queue and dump
the fields into a
non-subfile record, you are just populating fields in your program space.
The rest of the program can
read them as normal. Subfiles are different. You can think of them as a
thing residing on the
terminal itself. If you don't read the record from the data queue and
actually perform an update to
the subfile, you won't be able to chain to it. You can't read or write to
the subfile if the display
is still waiting for user input (from the keyboard or a wedge barcode
scanner which looks like the
keyboard to the device).
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Craig Jacobsen
Sent: Thursday, August 14, 2008 12:23 PM
To: 'RPG programming on the AS400 / iSeries'
Subject: RE: Auto advancing display screen
Mark,
What won't work?
All I had to do to the program was put in the API and condition the DSPF
read only if enter was hit (dtaq entry begins with *DSPF in that case)
My program works fine except I can't access the subfile that was built
unless I do a read from the DSPF.
It does everything I need (except update the subfile).
I don't understand your statement:
"Dumping the values from the data queue into the display file
programmatically will do nothing for you. You need to just process what
you
get from the data queue as a separate flow in your program."
Why do you say it won't do anything for me?
What you are saying simply is not true. I read the data q, and move it to
the screen fields and it goes through the code as if it were from the
display file EXCEPT WHEN I TRY TO ACCESS THE SUBFILE. Otherwise, no
issues
what so ever.
Craig
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Murphy, Mark
Sent: Thursday, August 14, 2008 11:25 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: Auto advancing display screen
It won't work because the data queue is not dumping into the buffer. The
processes are not the same.
A barcode reader attached as a keyboard wedge appears to the application
as
if it is a user keying the
value on the keyboard. The data queue specified in the display file is a
data queue, and the data
does not come into your program through the display file, but through the
QRCVDTAQ API. Dumping the
values from the data queue into the display file programmatically will do
nothing for you. You need
to just process what you get from the data queue as a separate flow in
your
program.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Craig Jacobsen
Sent: Thursday, August 14, 2008 11:03 AM
To: 'RPG programming on the AS400 / iSeries'
Subject: RE: Auto advancing display screen
Charles,
I guess I don't understand why sending an enter key to the buffer won't
work.
It works for a barcode reader with the same program we are talking about.
I scan something, it puts it on the screen and auto enters it. It must be
appending the 5250 data stream somehow. (It must send an extra code of
some
type when you configure the reader for auto enter because if not
configured,
the data waits for the enter key.) The reader acts like the keyboard, so
I
don't think the O/S or emulation software has anything to do with it. It
just sends the enter key appended to the data it read to the screen if
configured.
In another life (S/34) I played around with the 5250 data stream and did
some bar graphs and the like by appending the buffer so I do know a little
about that.
The Pocket PC is too small to use for the Packers as a telnet session.
All they will be used for is scanning. Sometimes they scan RFID and other
times they scan 2d or regular bar codes (even on the same Pack), thus the
need for a Pocket PC. If you can tell me where to get a keyboard scanner
that alternates between RFID, 2d, and regular barcodes, that would work
too
(and be a lot cheaper).
We have the Pickers using an application designed for a pocket pc (wrist
mount) through Telnet that runs perfectly.
Example 3 is the way I'm doing it now.
Problem seems to be if I read from the dataq, the sfl doesn't seem to be
available. If I get the *DSPF in the dataq, I do a read and all is good.
If I can get a good chain to the subfile, I wouldn't have any issues.
I know the rrn by looking up an array after breaking out the input from
the
dataq or the screen (qty/expiry date/lot#).
The rrn is the correct record. The 1255 is the only message I'm getting.
Craig
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Wilt, Charles
Sent: Thursday, August 14, 2008 10:09 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: Auto advancing display screen
Craig,
Ok I think I understand.
Honestly, not sure how to do what you need....but I can tell you that
"sending an enter" isn't going
to work.
As mentioned before, the enter key is intercepted and handled by the
terminal or emulation software,
then the controller, then the OS, along with probably a couple of other
layers...
You need to remember that the 5250 protocol is a block (or screen)
oriented
"smart" protocol. As
opposed to ASCII VT type terminals which are byte oriented.
The application you're running on the wireless PC could have used
available
TN5250 APIs to appear as
any other 5250 session. Not the best way IMHO, but that'd be your only
option if for example the 5250
program is 3rd party and you don't have the source.
I'm not really sure what you're going to need to do this. Perhaps example
3
here will be of some
help:
http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/index.jsp?topic=/com
.
ibm.etools.iseries.pgmgd.d
oc/evfclmst89.htm
or
http://tinyurl.com/6p4oxr
You say you're getting a 1255 on the CHAIN to the subfile:
How are you figuring out with RRN to use for the CHAIN?
What other messages and/or error codes are being shown?
Charles Wilt
--
Software Engineer
CINTAS Corporation - IT 92B
513.701.1307
wiltc@xxxxxxxxxx
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [
mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Craig Jacobsen
Sent: Thursday, August 14, 2008 9:02 AM
To: 'RPG programming on the AS400 / iSeries'
Subject: RE: Auto advancing display screen
Charles,
Here is what I am trying to do:
I have a program that uses a barcode reader as a keyboard (or you can
key
the barcode).
This program builds and updates a subfile and displays the status of the
pack telling the user how many boxes still need to be packed.
No problems at all with the program.
I am now adding a dataq so that a wireless PC (MC9090G) adds the same
entry
through the dataq and it can be processed as is with little or no
operator
changes (it works exactly the same as it does now except the scan is by
a
pocket PC with its own IP address that writes to a data que).
The first screen which asks for order number and pick number works
perfectly
through the dataq (this builds the subfile).
Now the HDMA label is read (or a sequence number for RFID) and
everything
again works well until a chain to the SUBFILE is done (to substract
quantity
and calculate the remaining on the screen).
I am getting a status of 1255 (Session or device error occurred.
Recovery
may be possible).
Now I either have to figure out how to activate the subfile (there was
no
read, so the subfile is not active) or have the data q entry go to the
screen and read that entry WITHOUT HITTING ENTER! The packers cannot
scan
from maybe 50 or more feet away and then go to their Client Access just
to
hit enter.
The screen is set with WaitRcd *Immed and is overridden at
initialization
for DTAQ (user's name) and is USROPN.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [
mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Wilt, Charles
Sent: Wednesday, August 13, 2008 3:14 PM
To: RPG programming on the AS400 / iSeries
Subject: RE: Auto advancing display screen
No not really....
The hex code the barcode scanner sends doesn't make it to the field.
Instead, it is intercepted and
handled by the terminal or terminal emulation software.
Still not sure exactly what're trying to accomplish...
Do you have a scanner?
Is it set to auto-enter after a scan?
If the answer to both is yes, what more are you trying to do?
In any even, as far as the hex codes used by the scanner:
http://www.barcodeman.com/altek/mule/scandoc.php
HTH,
Charles Wilt
--
Software Engineer
CINTAS Corporation - IT 92B
513.701.1307
wiltc@xxxxxxxxxx
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-
bounces@xxxxxxxxxxxx]
On Behalf Of Craig Jacobsen
Sent: Wednesday, August 13, 2008 1:06 PM
To: 'RPG programming on the AS400 / iSeries'
Subject: RE: Auto advancing display screen
I want it to work like a barcode scan.
One input field, variable length data.
There must be some hex code you can add to make it auto enter.
I am using a data que and can't get the subfile to work.
When I receive an entry from the data que, I would like to concatenate
the
enter field so it auto enters.
Again, barcode scanners do this, it must be able to be done.
Thanks,
Craig
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-
bounces@xxxxxxxxxxxx]
On Behalf Of Wayne McAlpine
Sent: Wednesday, August 13, 2008 12:22 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: Auto advancing display screen
Use the DDS keyword CHECK(ER) on the last field in the display. When
the user types anything into the last position of the field, it will
be
sent just as if the user had pressed the enter key.
Craig Jacobsen wrote:
Does anyone know a hex code I can append at the end of a field to
act
like
enter?
Barcode readers can usually be configured to auto enter a scan.
How do they do it?
TIA,
Craig
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
This e-mail transmission contains information that is intended to be
confidential and privileged. If you receive this e-mail and you are not
a
named addressee you are hereby notified that you are not authorized to
read,
print, retain, copy or disseminate this communication without the
consent
of
the sender and that doing so is prohibited and may be unlawful. Please
reply to the message immediately by informing the sender that the
message
was misdirected. After replying, please delete and otherwise erase it
and
any attachments from your computer system. Your assistance in
correcting
this error is appreciated.
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
This e-mail transmission contains information that is intended to be
confidential and privileged. If you receive this e-mail and you are not a
named addressee you are hereby notified that you are not authorized to
read,
print, retain, copy or disseminate this communication without the consent
of
the sender and that doing so is prohibited and may be unlawful. Please
reply to the message immediately by informing the sender that the message
was misdirected. After replying, please delete and otherwise erase it and
any attachments from your computer system. Your assistance in correcting
this error is appreciated.
As an Amazon Associate we earn from qualifying purchases.