LoadMsgctl (XmlDoc subroutine): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (→‎Usage notes: misc formatting)
m (→‎Usage notes: add word)
Line 18: Line 18:


==Usage notes==
==Usage notes==
In file SIRIUS (which can be [https://model204.rocketsoftware.com/maint/ullist downloaded from Rocket]) is a procedure (<code>RKTCMP_MSGINFO</code>) you can use to show the <var>MSGCTL</var> commands currently in effect in the Online. Example output from the procedure is shown below:
In the [[RKTools]] file <code>SIRIUS</code> (which can be [https://model204.rocketsoftware.com/maint/ullist downloaded from Rocket]) is a procedure (<code>RKTCMP_MSGINFO</code>) you can use to show the <var>MSGCTL</var> commands currently in effect in the Online. Example output from the procedure is shown below:


<p class="output"><b>OPEN FILE SIRIUS
<p class="output"><b>OPEN FILE SIRIUS

Revision as of 18:32, 15 July 2016

Load MSGCTL commands to this XmlDoc (XmlDoc class)

[Introduced in Model 204 7.7]


This method displays the messages in the current session that have been affected by MSGCTL commands, as well as the current attributes of those messages.

Syntax

doc:LoadMsgctl[( [EDEFHD= forRocketSupport])]

Syntax terms

doc An XmlDoc object, to which elements are added corresponding to the cumulative set of MSGCTL commands which have been issued, or to the single MSGCTL setting as specified by the EDEFHD argument.
EDEFHD A string of at least 14 bytes. This argument is used to create a single element in the doc method object that is built from the first 14 bytes of the value specified for an internal Model 204 header field labeled EDEFHD. These bytes identify an error message and control the processing when the given message is produced.

Although this argument is likely to seldom be used, an example is shown below.

Usage notes

In the RKTools file SIRIUS (which can be downloaded from Rocket) is a procedure (RKTCMP_MSGINFO) you can use to show the MSGCTL commands currently in effect in the Online. Example output from the procedure is shown below:

OPEN FILE SIRIUS INCLUDE RKTCMP_MSGINFO MSGCTL M204.0843 NOOPR MSGCTL M204.1303 NODUMP NOSNAP MSGCTL M204.0099 NOAUDIT MSGCTL M204.0131 NOAUDIT MSGCTL M204.0353 NOAUDIT MSGCTL M204.0608 NOAUDIT MSGCTL M204.0619 NOAUDIT MSGCTL M204.0620 NOAUDIT MSGCTL M204.0621 NOAUDIT MSGCTL M204.0622 NOAUDIT MSGCTL M204.0821 NOAUDIT MSGCTL M204.0858 NOAUDIT MSGCTL M204.1149 NOAUDIT MSGCTL M204.1203 NOAUDIT MSGCTL M204.1238 NOAUDIT MSGCTL MSIR.0007 DUMPALL

Cumulative effect of all MSGCTL commands

If the only MSGCTL command issued in the Online has been:

MSGCTL M204.0843 NOOPR

Then the following request:

begin %d is object xmlDoc auto new %d:loadMsgctl %d:print end

Produces:

<msgctls M204Version="7.7.0F"> <msg num="M204.0843" class="I" auditType="MS" term="no" count="no"/> </msgctls>

The value of the M204Version attribute will, of course, depend on the Model 204 version you are using.

If you subsequently return M204.0843 to its normal state:

MSGCTL M204.0843 OPR

Then the result of the above request will be:

<msgctls M204Version="7.7.0F"> <msg num="M204.0843" class="I" auditType="MS" term="no" opr="yes" count="no"/> </msgctls>

The opr="yes" attribute indicates that the message is sent to the console operator.

Settings from a single MSGCTL command

You can use the EDEFHD parameter of LoadMsgctl to display the attributes of an individual MSGCTL command instead of showing all the MSGCTL commands. If you inspect the hex value for the MSGCTL settings:

*LOOK MSGCTL 0 14 MSGCTL 7D88E020 MSGCTL +00000000 7D89F080 034B0103 01000000 00000000

You can use the first 28 hexadecimal characters of the data at offset +00000000:

%doc:loadMsgctl(EDEFHD=('00000000' '034B0103' '0100000000' '0000'):hexToString) %doc:print

The result of the above fragment is:

<msgctls M204Version="7.7.0F"> <msg num="Mxxx.0843" class="I" auditType="MS" term="no" opr="yes" count="no"/> </msgctls>

See also

  • LoadMessageInfo, which produces an XmlDoc with the same attributes for the <msg> elements.