D
Dominique
Guest
I've found different ways to log something in Progress 4GL but none are satisfying:
The simple
This starts by showing lines 1 and 2, there's a scrollbar for line 3, but this inaccessible due to the other dialogbox-like frames and once those are gone, the original messages lines are not there anymore.
Another possibility, already shown, is the
A third possibility, mentioned on this site, is the usage of a log-manager, but I don't have a file, called
Can anybody explain me how to do logging? What I would like is the following:
The indentation stands for the location in the callstack ("Line3" is called by a function, while "Line2" is called by a subsubfunction, called by a subfunction, called by a function).
The idea is to see (in a copy-pastable format):
Ideally:
In case this is not possible, I settle for:
Does anbody know if this exists and how to realise it?
Thanks in advance
Continue reading...
The simple
MESSAGE
statement has the drawback that it handles frames very badly:
Code:
ON CHOOSE OF btn-Q4
DO:
MESSAGE "Line 1".
MESSAGE "Line 2".
MESSAGE "Line 3".
PROMPT-FOR ...
WITH FRAME ...
...
MESSAGE "Alert message" VIEW-AS ALERT-BOX.
PROMPT-FOR ...
WITH FRAME ... /* (another frame) */
...
MESSAGE "Another alert message" VIEW-AS ALERT-BOX.
...
MESSAGE "Normal message".
END.
This starts by showing lines 1 and 2, there's a scrollbar for line 3, but this inaccessible due to the other dialogbox-like frames and once those are gone, the original messages lines are not there anymore.
Another possibility, already shown, is the
MESSAGE ... VIEW-AS ALERT-BOX
. This works fine, and there even is the possibility for copy-paste, but all messages are shown in individual alert boxes, which makes it very difficult to handle.A third possibility, mentioned on this site, is the usage of a log-manager, but I don't have a file, called
*log*manager*
somewhere on my Progress 4GL installation, so I don't know how to use this.Can anybody explain me how to do logging? What I would like is the following:
Code:
...
LOG("Line1").
...
LOG("Line2").
...
LOG("Line3").
...
The indentation stands for the location in the callstack ("Line3" is called by a function, while "Line2" is called by a subsubfunction, called by a subfunction, called by a function).
The idea is to see (in a copy-pastable format):
Ideally:
Code:
Line1
......Line2
..Line3
In case this is not possible, I settle for:
Code:
Line1
Line2
Line3
Does anbody know if this exists and how to realise it?
Thanks in advance
Continue reading...