|
Sorry !
Please respond to RPG programming on the AS400 / iSeries
<rpg400-l@xxxxxxxxxxxx>
Sent by: rpg400-l-bounces@xxxxxxxxxxxx
To: RPG programming on the AS400/iSeries <rpg400-l@xxxxxxxxxxxx>
cc:
Subject: RE: Function key indicators
Yes,
But if i have one display file like this:
F1 - Option1
F2 - Option2
F3 - Option3
F4 - Option4
F5 - Option5
and after i pressed F1, apears another display file(this is wrong),i
mean Record,
in wich i have another (F1 function key) that active one panel group
?
It's not possible to define two (CF01) in the DSPF DDS,
is there any solution ?
Thank You!
Luis Martins.
Please respond to RPG programming on the AS400 / iSeries
<rpg400-l@xxxxxxxxxxxx>
Sent by: rpg400-l-bounces@xxxxxxxxxxxx
To: "'RPG programming on the AS400 / iSeries'" <rpg400-l@xxxxxxxxxxxx>
cc:
Subject: RE: Function key indicators
Yes, for each function key you want to use in your program, you need
to code
the appropriate CAxx or CFxx key in the DSPF DDS.
-Bob Cozzi
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Luis Martins
Sent: Thursday, August 05, 2004 11:03 AM
To: CN=RPG programming on the AS400/O=iSeries
Subject: RE: Function key indicators
Should i define CFxx keyword for function key in the display file ?
Thank You !
Luis Martins.
Please respond to RPG programming on the AS400 / iSeries
<rpg400-l@xxxxxxxxxxxx>
Sent by: rpg400-l-bounces@xxxxxxxxxxxx
To: "'RPG programming on the AS400 / iSeries'"
<rpg400-l@xxxxxxxxxxxx>
cc:
Subject: RE: Function key indicators
If you have my book "The Modern RPG IV Language" it has the code
there to
do
this.
Here's the summary (see below):
-Bob Cozzi
Specify an INFDS for the Display file, something like this:
FMyDsp CF Workstn INFDS(WSDS)
Then in position 369 of the INFDS, code a field for the FKEY scan
code (AID
BYTE) that is returned, something like this:
D WSDS DS
D FKey 1A Overlay(WSDS:369)
Then include the FKEYS /COPY member from my book or from the RPG
xTools. It
contains all the named constants that equate to the scan code for the
functions keys. For example F3 = X'33', something like this:
/INCLUDE xTOOLS/qcpysrc,fkeys
Then down in the calcs, use a SELECT/WHEN case group or an IF
statement to
check for the function key:
C Exfmt MyFmt
C If FKey = F3
C eval *INLR = *ON
C return
C ElseIf FKey = F4
C callp FindItem(ITMDESC)
C endif
If you don't have the xTools or my Book, (why am I helping you???
<vbg>)
here is the FKEYS /COPY that you'll need.
/IF NOT DEFINED(RTK_FKEYS)
/DEFINE RTK_FKEYS
** (c) Copyright 1989 - 2003 by Robert Cozzi, Jr.
**********************************************************
** RPGLIB - The RPG xTools www.rpgxtools.com **
** ----------------------------------------- **
** Program . . . . . . . FKEY_CONST **
** Description . . . . . Function key named constants **
** **
** Features . . . . . . . The Attention ID Byte **
** for each function key **
** is defined here. **
** **
**********************************************************
.....D*ame+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++
++++Comments++++++++++++
D F1 C CONST(X'31')
D F2 C CONST(X'32')
D F3 C CONST(X'33')
D F4 C CONST(X'34')
D F5 C CONST(X'35')
D F6 C CONST(X'36')
D F7 C CONST(X'37')
D F8 C CONST(X'38')
D F9 C CONST(X'39')
D F10 C CONST(X'3A')
D F11 C CONST(X'3B')
D F12 C CONST(X'3C')
D F13 C CONST(X'B1')
D F14 C CONST(X'B2')
D F15 C CONST(X'B3')
D F16 C CONST(X'B4')
D F17 C CONST(X'B5')
D F18 C CONST(X'B6')
D F19 C CONST(X'B7')
D F20 C CONST(X'B8')
D F21 C CONST(X'B9')
D F22 C CONST(X'BA')
D F23 C CONST(X'BB')
D F24 C CONST(X'BC')
D CLEAR C CONST(X'BD')
D ENTER C CONST(X'F1')
D HELP C CONST(X'F3')
D ROLLDN C CONST(X'F4')
D ROLLUP C CONST(X'F5')
D PRINT C CONST(X'F6')
D RCBKSP C CONST(X'F8')
D AUTENT C CONST(X'3F')
/ENDIF
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Luis Martins
Sent: Thursday, August 05, 2004 9:51 AM
To: CN=RPG programming on the AS400/O=iSeries
Subject: Re: Function key indicators
Hello there!
Can you give me an example of this Two things ?
Thank You !
Luis Martins
Please respond to RPG programming on the AS400 / iSeries
<rpg400-l@xxxxxxxxxxxx>
Sent by: rpg400-l-bounces@xxxxxxxxxxxx
To: rpg400-l@xxxxxxxxxxxx
cc:
Subject: Re: Function key indicators
Two things.
1) Instead of indicators, why not use the INFDS and the AID?
2) To use the DUP key I would have to DSs: one contain all the screen
fields, the other similar fields with obvious other names (on V5R1
you may
use key word QUALIFIED). Then first press, move from DS1 to DS2,
second
press move from DS2 to DS1. Unless this is an old RPG III programme.
Regards,
Carel Teijgeler
*********** REPLY SEPARATOR ***********
On 3-8-04 at 16:49 Tim Kredlo wrote:
>I am attempting to 'genericize' the routine I use to test for the
'dup'
key use.
>
>I would like it to be generic enough so that it would work without
modification when the length or layout of the input data changes.
>Most screens have I, O,and B data interspersed. (## represents the
'screen
number id')
>
>To do this I declare the input buffer (Input## -LikeRec(PgmScrn##:
*Input)). I cycle through the input data structure character by
>character
substituting any found 'dup' characters with the corresponding
character
from a 'saved' input buffer (PrvInput03 S 1 >Dim(%Len(Input##))),
until
I get to the end (%Len(Input01)). For this to work I changed my
typical
(all I ever use) 'exfmt' with a 'write >format' line, followed by a
'read-formatname-data structure' line. (I could not figure out how to
automatically fill the input buffer data >structure using 'exfmt')
>
>This works fine. However, changing from 'exfmt' to
'read-formatname-data
structure' stops the function key indicators (*InKA-*InKY) >from
automatically being set on when the corresponding function key is
pressed.
>
>If I remove the data structure name from the 'read' line, hitting a
function key DOES set on the corresponding *InK? indicator
>automatically,
just like when I used 'exfmt'. Why does the absence/presence of this
data
structure name change this?
>
>Is there a way to set up the screen 'reads' so that functions keys
automatically set on the corresponding *InK? indicator (like 'exfmt'
>does)
AND the input buffer data structure gets filled automatically like
when the
'read-formatname-data structure' method is used?
>
>(Because of legacy issues I cannot (do not want to) use *In01-*In99
to
represent the function keys without a lot more code >modifications
than I
care to do.) Or is there a different way of declaring the input
buffer so
that all input
>fields are contiguous and its length can be determined?
--
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.
Luis Martins
Finibanco, S.A.
Tel.: 21 0002331 - Fax: 21 3114509
http://www.finibanco.pt
__________________________________________________
Esta mensagem e quaisquer ficheiros anexos são confidenciais,
destinando-se
ao uso exclusivo da pessoa e/ou entidade a que se dirigem. Caso não
se lhe
destine, ou não seja responsável pelo seu encaminhamento ao
destinatário,
informamos que a recebeu por engano. Qualquer utilização,
distribuição,
reencaminhamento ou outra forma de revelação a terceiros, impressão
ou
cópia são expressamente proibidos; sendo que agradecemos que destrua
a
mensagem de imediato, informando o seu emissor ou o Finibanco do
sucedido.
Não obstante o Finibanco utilizar software anti-vírus como precaução,
não é
possível garantir que a presente mensagem e eventuais ficheiros
anexos não
contêm vírus, pelo que não consideramos da responsabilidade desta
instituição eventuais consequências inerentes. Alerta-se, ainda, que
as
mensagens transmitidas por este meio podem ser interceptadas,
corrompidas,
perdidas, destruídas ou entregues com atraso ao destinatário.
--
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.
Luis Martins
Finibanco, S.A.
Tel.: 21 0002331 - Fax: 21 3114509
http://www.finibanco.pt
__________________________________________________
Esta mensagem e quaisquer ficheiros anexos são confidenciais,
destinando-se
ao uso exclusivo da pessoa e/ou entidade a que se dirigem. Caso não
se lhe
destine, ou não seja responsável pelo seu encaminhamento ao
destinatário,
informamos que a recebeu por engano. Qualquer utilização,
distribuição,
reencaminhamento ou outra forma de revelação a terceiros, impressão
ou
cópia são expressamente proibidos; sendo que agradecemos que destrua
a
mensagem de imediato, informando o seu emissor ou o Finibanco do
sucedido.
Não obstante o Finibanco utilizar software anti-vírus como precaução,
não é
possível garantir que a presente mensagem e eventuais ficheiros
anexos não
contêm vírus, pelo que não consideramos da responsabilidade desta
instituição eventuais consequências inerentes. Alerta-se, ainda, que
as
mensagens transmitidas por este meio podem ser interceptadas,
corrompidas,
perdidas, destruídas ou entregues com atraso ao destinatário.
--
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.
Luis Martins
Finibanco, S.A.
Tel.: 21 0002331 - Fax: 21 3114509
http://www.finibanco.pt
__________________________________________________
Esta mensagem e quaisquer ficheiros anexos são confidenciais, destinando-se
ao uso exclusivo da pessoa e/ou entidade a que se dirigem. Caso não se lhe
destine, ou não seja responsável pelo seu encaminhamento ao destinatário,
informamos que a recebeu por engano. Qualquer utilização, distribuição,
reencaminhamento ou outra forma de revelação a terceiros, impressão ou
cópia são expressamente proibidos; sendo que agradecemos que destrua a
mensagem de imediato, informando o seu emissor ou o Finibanco do sucedido.
Não obstante o Finibanco utilizar software anti-vírus como precaução, não é
possível garantir que a presente mensagem e eventuais ficheiros anexos não
contêm vírus, pelo que não consideramos da responsabilidade desta
instituição eventuais consequências inerentes. Alerta-se, ainda, que as
mensagens transmitidas por este meio podem ser interceptadas, corrompidas,
perdidas, destruídas ou entregues com atraso ao destinatário.
--
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.
Luis Martins
Finibanco, S.A.
Tel.: 21 0002331 - Fax: 21 3114509
http://www.finibanco.pt
__________________________________________________
Esta mensagem e quaisquer ficheiros anexos são confidenciais, destinando-se
ao uso exclusivo da pessoa e/ou entidade a que se dirigem. Caso não se lhe
destine, ou não seja responsável pelo seu encaminhamento ao destinatário,
informamos que a recebeu por engano. Qualquer utilização, distribuição,
reencaminhamento ou outra forma de revelação a terceiros, impressão ou
cópia são expressamente proibidos; sendo que agradecemos que destrua a
mensagem de imediato, informando o seu emissor ou o Finibanco do sucedido.
Não obstante o Finibanco utilizar software anti-vírus como precaução, não é
possível garantir que a presente mensagem e eventuais ficheiros anexos não
contêm vírus, pelo que não consideramos da responsabilidade desta
instituição eventuais consequências inerentes. Alerta-se, ainda, que as
mensagens transmitidas por este meio podem ser interceptadas, corrompidas,
perdidas, destruídas ou entregues com atraso ao destinatário.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.