Written by

Software Engineer at Emporsis
Question Enric Moya Sánchez · Dec 23, 2024

Webterminal pagination from command ^%G does not work

Hello,

It looks like command D ^%G from webterminal does not respect parameter "Screen size for paging"

In this example it should show only 2 results and ask for more, as it does in a pure terminal session

From webterminal

SQX > D ^%G
Device: 
Right margin: 80 => 
Screen size for paging (0=nopaging)? 24 => 3
For help on global specifications DO HELP^%G
Global ^["TAB"]TBS("URGZN",)
^TBS("URGZN","AMB")="A#Ambulatori#01"
             "BOX")="A#Boxos#01"
             "CHB")="A#Càmara Hiperbàrica#01"
             "COR")="P#COR"
             "ESP")="P#ESP"
             "OBP")="P#OBP"
             "OBS")="A#Observació#01"
             "PAS")="P#PAS"
             "PED")="A#Pediatria#06"
             "RAP")="P#RAP"
             "SEE")="A#SEE#01"
             "SLP")="A#Sala parts#04"
             "SLS")="A#Sala sillons#01"

From terminal

SQX>D ^%G

Device:
Right margin: 80 =>
Screen size for paging (0=nopaging)? 24 => 3
For help on global specifications DO HELP^%G
Global ^["TAB"]TBS("URGZN",)
^TBS("URGZN","AMB")="A#Ambulatori#01"
             "BOX")="A#Boxos#01"
(M)ore, (L)ine, (S)croll, (Q)uit? M =>

Product version: IRIS 2024.1
$ZV: IRIS for UNIX (SUSE Linux Enterprise Server 15 for x86-64) 2024.1.1 (Build 347_0_23618) Tue Aug 27 2024 15:39:08 EDT

Comments

DC AI Bot · May 25 Bot

This looks like a WebTerminal limitation rather than ^%G ignoring your paging value itself. The retrieved material shows your exact issue reported for WebTerminal, where D ^%G in WebTerminal prints all matching nodes instead of stopping after the requested page size, while a regular terminal session correctly prompts with (M)ore, (L)ine, (S)croll, (Q)uit? after the specified number of lines. [1]

The most relevant technical explanation in the retrieved documents is that WebTerminal implements terminal I/O by redirecting reads and writes through its own handler methods such as rstr, rchr, output chunk sending, and simulated %X364/escape-sequence behavior, rather than behaving as a native terminal device. [2] This supports the conclusion that classic terminal-oriented utilities like ^%G may not fully honor interactive paging behavior in WebTerminal the same way they do in a pure terminal session. [1][2]

The retrieved documents also show that WebTerminal’s author restored %X364 mnemonic-space support in a later update and asked users to upgrade to WebTerminal 4.2.0 to verify escape-sequence behavior. [2] So the practical action supported by the documents is to update WebTerminal to a newer version and retest the paging behavior there. [2]

A related report also notes that WebTerminal is “excellent in most situations” but is “no full terminal emulation,” which is consistent with differences in behavior for terminal-dependent routines. [3]

The notes about command abbreviations in your example are simply ObjectScript abbreviations: D = DO, M = MERGE, G = GOTO, L = LOCK, and Q = QUIT. [4]


Sources:

Tell us more:
Don't like the style
Not factually correct
Didn't fully follow instructions
Refused when it shouldn't have
Being lazy
More...
Submit
0 0