Page 1 of 1
Detecting multiple subfiles on a display format - plus sign missing
Posted: Wed Dec 13, 2017 5:03 pm
by Larelyn
On most of our displays, we use an error message subfile starting in column 2, row 24 that displays only one row. The subfile uses a plus sign to indicate there are more records in the subfile. Pretty normal stuff. Genie does not interpret the subfile as a grid, but the plus sign does show up to let the users know to page down for more error messages. For now, this is ok.
So, when we have a display format that has two subfiles (let's say a result set/inquiry subfile (1) and an error message subfile (2)), the plus sign appears for the first subfile on the screen, reading top to bottom, left to right. This is as expected. However, the plus sign has now disappeared for the second subfile that appears lower on the screen. If this is an error message subfile, the user doesn't know they have multiple messages to page through.
Is there an easy fix to this? We have dozens of displays that have this scenario.
Re: Detecting multiple subfiles on a display format - plus sign missing
Posted: Wed Dec 13, 2017 5:33 pm
by Scott Klement
So, Genie is converting your first subfile into a grid widget, but the second one is not. And, yet, it is still removing the + sign?
Please tell us what you have for the following options:
1) Detect subfile patterns
2) Detect subfile end plus
3) Find option column
also, navigate to one screen that's having this problem (make sure there's nothing confidential on the display) and press Ctrl-F9. Post the resulting JSON file here as an attachment.
This will allow us to "replay" that screen, and with the appropriate settings above, we should be able to see exactly what you're seeing.
Re: Detecting multiple subfiles on a display format - plus sign missing
Posted: Wed Dec 13, 2017 6:25 pm
by Larelyn
Genie is not necessarily converting the first subfile into a widget. This json example will show where there are two subfiles, neither are interpreted as grids, and the second one is missing its plus sign in Genie.
1) true
2) true
3) true
Re: Detecting multiple subfiles on a display format - plus sign missing
Posted: Wed Dec 13, 2017 6:38 pm
by Larelyn
This example has the first subfile translated to a grid by genie, the second is not. The plus sign is missing from the second subfile, but you can see the plus sign in the buffer.
Re: Detecting multiple subfiles on a display format - plus sign missing
Posted: Wed Dec 13, 2017 6:51 pm
by Scott Klement
Whenever you're working with a 5250 screen in Genie, it's really important to understand that the system does not tell Genie what is/isn't a subfile. (Or, for that matter, anything else.) It only tells us what to print on the screen, which row/column to print it, and the 5250 attribute (this represents the color, high-intensity, reverse image, underline, etc.). That's it.
This is unfortunate, because when you code the subfile using something like DDS, you actually tell the system that it is a subfile, and where that subfile is located. But, since the system only sees Genie as a 5250 emulator, it doesn't tell us where the subfile is. (This is NOT the case with a Rich Display, a Rich DIsplay knows exactly where the subfile is.)
So we have to have a way to "guess" where it is. When "detect subfile patterns" is enabled, that works by looking for repeating rows. When the same field lengths exist in multiple rows on the screen, it decides that it is a subfile, and draws a grid there.
This isn't perfect, however, since there are many, many places on the system where there are repeating rows and they are not subfiles. To eliminate some of these "false positives", we have the "Find Option Column" setting. This looks for a heading such as "Opt" above the grid column, and if not found, it will not consider it a subfile. You have this enabled, and therefore it is not detecting your subfile as a subfile because the heading is "Loc" in your example. If you add Loc to the list of "Option Headings" it will detect it. Or, if you turn off the "find option column" setting, it will also detect it.
The message subfile is not detected because it is a single row. Therefore there can't be multiple rows with the same fields... so detect patterns won't find it.
As for hiding the ending +, this is controlled by the "detect subfile end plus" setting. You've told us that you have this turned on -- and that means any field that contains only a + character (with nothing else in the field) is hidden. That's all this option does. If you don't want it hidden, all you need to do is turn this option off.
Re: Detecting multiple subfiles on a display format - plus sign missing
Posted: Wed Dec 13, 2017 7:15 pm
by Larelyn
Thanks for all this, it's really good info.
Ultimately, we were looking for the last piece about the plus sign. The help text does not indicate the plus sign is removed. It makes sense that it would remove it if a grid is detected. We didn't realize it would carte blanche remove all single plus signs throughout the display. If all this setting does is hide the plus sign, could the help text be updated to reflect that? The help text implies that setting does more to aid in detecting subfile patterns.
Thanks for such a quick response!
Re: Detecting multiple subfiles on a display format - plus sign missing
Posted: Wed Dec 13, 2017 7:24 pm
by Scott Klement
It does different things, too.
For example, if the last field of your subfile goes out to the edge of the screen, the system will replace a few characters with the + symbol. This will screw up the finding repeating rows, because that row will have one different field -- the one with the + in it. So detecting/removing the plus is really useful for that. That is what the help is describing.
But, we can probably reword it to make it less confusing.