× 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.



Brian,
Thanks! That's exactly where I was heading. Found a recent article online from Nick Litten that outlines the technique you describe.

I really hesitated at doing any development in the green screen... but the fact is we still use it almost exclusively. So when adding functionality to our existing application, I almost have to.

Thanks All! I learned something new about something old LOL.

Greg

-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Brian Parkins
Sent: Thursday, October 20, 2022 4:49 PM
To: RPG programming on IBM i <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: Re: Position Cursor and Reverse Image on Green Screen

OK, would this technique work for you?

// Remove use of INDDS and INDARA (DDS) altogether dcl-s IndPtr Pointer Inz(%Addr(*IN)); dcl-ds dsIndic Based(IndPtr);
     F03                ind pos(3);
     F05                ind pos(5);
     F12                ind pos(12);
     F23                ind pos(23);
     F24                ind pos(24);
     posToRtGf          ind pos(41);
     posToRtGd          ind pos(42);
     posToDayT          ind pos(43);
end-ds;

     posToRtGf = *On;
// Now *IN41 = *IN(41) = posToRtGF = '1' - all the same variable

HTH
Brian.

On 20/10/2022 21:26, Greg Wilburn wrote:
OK... Thanks Charles, it's making more sense now.

That doesn't necessarily work well with the logic in our legacy ERP.
They use an array of "error message ids" along with a matching array
of indicators So if you populate ERROR(41) it sets on *IN41 which positions the cursor.

In some of my "newer" greenscreen programs, I used INDDS for Function keys and subfile control.
Maybe in this case, I should remove it and name them another way?

-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of
Charles Wilt
Sent: Thursday, October 20, 2022 4:14 PM
To: RPG programming on IBM i <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: Re: Position Cursor and Reverse Image on Green Screen

You don't need to remove INDDS...

You simply need to include the other indicators you plan to use
dcl-ds dsIndic;
F03 ind pos(3);
F05 ind pos(5);
F12 ind pos(12);
F23 ind pos(23);
F24 ind pos(24);
posToRtGf ind pos(41);
posToRtGd ind pos(42);
posToDayT ind pos(43);
....
end-ds;

The use of INDDS means that the display file has a completely separate set of indicators that the built in RPG *INxx ones.

Charles

On Thu, Oct 20, 2022 at 1:49 PM Greg Wilburn < gwilburn@xxxxxxxxxxxxxxxxxxxxxxx> wrote:

So, I removed the INDDS keyword from the display file and the
keywords now all function as they should.
I guess you can't mix that with conditioning indicators??

What a waste of an afternoon... thanks for your help, though!
(I hate green screen)


-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of
Greg Wilburn
Sent: Thursday, October 20, 2022 3:33 PM
To: RPG programming on IBM i <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: RE: Position Cursor and Reverse Image on Green Screen

Thanks for the suggestions, but that's not what I'm seeing...
The other indicators are all off according to debug, and I do see
CSRLOC keyword.

I did find one issue.

I am using: INDDS(dsIndic) on the display file definition, using it
to name the function keys that I'm using

dcl-f HH125FM workstn devid(swid) indds(dsIndic);

dcl-ds dsIndic;
F03 ind pos(3);
F05 ind pos(5);
F12 ind pos(12);
F23 ind pos(23);
F24 ind pos(24);
end-ds;

So that could have interfered with Indicators 01 through 24.

I have recoded the display file to use 41 instead of 01, 42 instead
of 02, etc for the Reverse Image and Color keywords.

Back in debug, 42 is on both before and after EXFMT SCREEN01. Yet,
neither keyword seems to be applied.

Greg

-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of
Daniel Gross
Sent: Thursday, October 20, 2022 2:17 PM
To: RPG programming on IBM i <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: Re: Position Cursor and Reverse Image on Green Screen

Hi Greg,

maybe *in41 is on too?

The rest looks OK from here - PC is position cursor - at least last
time I looked into the DDS manual.

But concurrent PCs are evaluated from upper-left to lower-right - so
another PC active looks like the only solution.

HTH

Regards,
Daniel

Von meinem iPhone gesendet

Am 20.10.2022 um 19:34 schrieb Greg Wilburn <
gwilburn@xxxxxxxxxxxxxxxxxxxxxxx>:
It's been a while since I've worked on a green screen application.
I
have a screen where, upon error of a specific field, the PC and RI
should be enabled (via indicator). I've verified in debug that two
indicators are on before EXFMT SCREEN01. But the cursor goes to the
first input field and the field is not reverse image.
In this case, there is an error with field S1RTGD. Indicators 02
and 42
are *ON. Yet the cursor is positioned on field S1RTGF (the first
input capable field on the screen).
What am I missing?

From the display file:

A S1RTGF 1A B 7 29DSPATR(UL)
A 01 DSPATR(RI)
A 41 DSPATR(PC)
A 01 COLOR(WHT)
A S1DSC1 30A O 7 32
A S1CN06 20A O 8 7DSPATR(HI)
A S1RTGD 3A B 8 29DSPATR(UL)
A 02 DSPATR(RI)
A 42 DSPATR(PC)
A 02 COLOR(WHT)
A CHECK(RB)
A S1CN07 20A O 9 7DSPATR(HI)
A S1DAYT 1A B 9 29DSPATR(UL)
A 03 DSPATR(RI)
A 43 DSPATR(PC)
A 03 COLOR(WHT)
A S1DSC3 30A O 9 32
A S1CN08 20A O 10 7DSPATR(HI)
A S1RURL 50A B 10 29DSPATR(UL)
A 04 DSPATR(RI)
A 44 DSPATR(PC)
A 04 COLOR(WHT)
A CHECK(LC)
A S1CN09 20A O 11 7DSPATR(HI)
A S1ACTN 1A B 11 29DSPATR(UL)
A 05 DSPATR(RI)
A 45 DSPATR(PC)
A 05 COLOR(WHT)
A S1CN10 20A O 12 7DSPATR(HI)
A S1SURL 50A B 12 29DSPATR(UL)
A 06 DSPATR(RI)
A 46 DSPATR(PC)
A 06 COLOR(WHT)
[Logo]<https://www.totalbizfulfillment.com/> Greg Wilburn
Director of IT
301.895.3792 ext. 1231
301.895.3895 direct
gwilburn@xxxxxxxxxxxxxxxxxxxxxxx<mailto:gwilburn@totalbizfulfillment
.c
om>
1 Corporate Dr
Grantsville, MD 21536
www.totalbizfulfillment.com<http://www.totalbizfulfillment.com>
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post
a message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.
Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post
a message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post
a message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post
a message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a
message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.

Help support midrange.com by shopping at amazon.com with our affiliate link: https://amazon.midrange.com

As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.