Highlighted
Absent Member.
Absent Member.
473 views

[archive] Thin client grid problem?

[Migrated content. Thread originally posted on 26 April 2007]

Hi,

Sorry, but this is a really long post.
I'm at a loss as to what is the easiest option for me, but here goes.

I have a program which is a grid control for order entry.
Changes were made and tested by me on a normal runtime V7.2.0 - all works well.
The changes were tested on a SCO unix environment(openserver R5.0.7) via thin client to a windows xp machine.
Again all is well - runcbl version is ACUCOBOL-GT runtime version 7.2.0 + ECN-3314 + ECN-3372 + ECN-3544 + ECN-3574
Acuthin version is ACUCOBOL-GT Thin Client version 7.2.0 + ECN-3314 + ECN 3372 + ECN-3544 + ECN-3574 Build 1986

Program goes to end user, they test but using normal runtime - still all is well.
Program goes live on a SCO machine same version and runtime as above and there is a problem.
When I try to debug the code remotely it works.
I enter the debugger in the MSG-FINISH-ENTRY event.

Here's bits of the code
SCREEN1A-GD-1-EV-MSG-FINISH-ENTRY.
INQUIRE SCREEN1A-GD-1, Y = WS-Y, X = WS-X
EVALUATE WS-X
*PRODUCT CODE & QUANTITY & PRICE & END OF LINE
WHEN 1 WHEN 5 WHEN 6 WHEN 7
MOVE EVENT-ACTION-TERMINATE TO EVENT-ACTION
EXIT PARAGRAPH
END-EVALUATE

Here's the EX-OTHER routine for the screen (I will try changing this to an EX-OTHER for the grid to see if that helps)
*CAPTURE FINISH-ENTRY TERMINATION OF ACCEPT
IF Event-Type = MSG-FINISH-ENTRY
AND Event-Control-ID = 23
EVALUATE WS-X
WHEN 1
PERFORM FINISH-COLUMN1-CODE
EXIT PARAGRAPH
WHEN 5
PERFORM FINISH-COLUMN5-CODE
EXIT PARAGRAPH
WHEN 6
PERFORM FINISH-COLUMN6-CODE
EXIT PARAGRAPH
WHEN 7
PERFORM FINISH-COLUMN7-CODE
EXIT PARAGRAPH
END-EVALUATE
END-IF

Here's a bit of the FINISH-COLUMN1-CODE

*This is the code which used to be in the FINISH-ENTRY of the grid
FINISH-COLUMN1-CODE.
*PRODUCT CODE
MOVE ZEROS TO EVENT-TYPE
MODIFY SCREEN1A-GD-1, Y = WS-Y, X = WS-X
CURSOR-Y = WS-Y, CURSOR-X = WS-X
MOVE 1 TO IND2
INQUIRE SCREEN1A-GD-1, CELL-DATA IN S-ORL-BAR(IND2)
HIDDEN-DATA IN WS-SAVE-REC(IND2)


Basically the problem I have (NOTE: only on the users machine which as far as I'm concerned is the same setup as our testing machine) is the the HIDDEN-DATA returned from the INQUIRE is always the first row of the grid, not the second, third and so on.

As mentioned above if I enter the debugger just before the finish entry event it works as it was designed to do so.

I've been speaking with technical support but we can't come up with anything really.

Any ideas would be seriously appreciated.

Thanks,

Shaun
0 Likes
4 Replies
Highlighted
Absent Member.
Absent Member.

RE: [archive] Thin client grid problem?

Update.

During down time we've reloaded the unix runtimes in a different directory and started the relevant services again.
Created brand new config files acurcl.cfg & acurcl.ini
Problem still there.

As mentioned previously in debug mode it works, so I added a tiny display so I could see the X&Y values by doing this in the FINISH-COLUMN1-CODE
A display of the X&Y values before hand and afterwards when I modify the grid.

*
*This is the code which used to be in the FINISH-ENTRY of the grid
FINISH-COLUMN1-CODE.
*PRODUCT CODE
MOVE ZEROS TO EVENT-TYPE
INQUIRE SCREEN1A-GD-1, Y = IND1, X = IND2 CURSOR-Y = IND3, CURSOR-X = IND4
DISPLAY MESSAGE BOX "Y=" IND1 " X=" IND2 " CY=" IND3 " CX=" IND4
MODIFY SCREEN1A-GD-1, Y = WS-Y, X = WS-X CURSOR-Y = WS-Y, CURSOR-X = WS-X
INQUIRE SCREEN1A-GD-1, Y = IND1, X = IND2 CURSOR-Y = IND3, CURSOR-X = IND4
DISPLAY MESSAGE BOX "Y=" IND1 " X=" IND2 " CY=" IND3 " CX=" IND4
MOVE 1 TO IND2
INQUIRE SCREEN1A-GD-1, CELL-DATA IN S-ORL-BAR(IND2)
HIDDEN-DATA IN WS-SAVE-REC(IND2)

The problem disappears and the program works as required?

At a complete loss as to what else to do or check.

Shaun
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Thin client grid problem?

Update.
...
The problem disappears and the program works as required?
...

Shaun


Hi, so introducing "tiny display" problem disappeared? In affermative case
did you set somewhere:

modify your-screeen, MASS-UPDATE = 1
...
modify your-screeen, MASS-UPDATE = 0

To prevent screen to act immediately updates on the screen?
One more: do you really need to modify cursor-x and cursor-y values? Aren't you already on the right cell position to validate (I suppose your msg-finish-entry code is due to validation purposes)

At my experience, most of times, debugging event procedures can lead to unfaithful conclusions because debugging broken up the chain of events provided by OS heap. The right way is the way you walk on in your second post: add display of status and at least debug the final event.

Hope this helps,
bye Giovanni
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Thin client grid problem?

It appears to be something to do with Dell PowerEdge servers!

We install identically on an HP server, same operating system, same Acu runtimes, and our application and it works.

Shaun

EDIT: Maybe not just dell servers!
I'm going to package up a good example and send to support.
We don't have a problem with windows thin client, nor do we have a problem with normal local runtime.
We do appear to have a problem with Unix & Linux thin client.
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Thin client grid problem?

Problem found.
Is is/was only Unix/Linux but appears it was because of the following entry in a config file which I only just spotted should have been removed
ECN_3167 0
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.