$ProcDat: Difference between revisions
(Automatically generated page update) |
m (→Products authorizing {{PAGENAMEE}}: fix "Sirius functions") |
||
Line 63: | Line 63: | ||
==Products authorizing {{PAGENAMEE}}== | ==Products authorizing {{PAGENAMEE}}== | ||
<ul class="smallAndTightList"> | <ul class="smallAndTightList"> | ||
<li>[[ | <li>[[Sirius Functions]] | ||
<li>[[Fast/Unload User Language Interface]] | <li>[[Fast/Unload User Language Interface]] | ||
<li>[[Janus Web Server]] | <li>[[Janus Web Server]] |
Revision as of 22:35, 20 September 2018
Add lines from procedure to $list
Note: Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $ProcDat function is AppendOpenProcedure.
The $ProcDat function accepts three arguments, and returns a numeric code.
The first argument identifies the $list to which lines from the currently open procedure will be added as $list items. This is a required argument.
The second argument is an optional number of lines to be read. If the second argument is not provided, reading continues from the input procedure to the end of the procedure.
The third argument specifies a sequence number increment for 8 byte sequence numbers to be placed in front of each line in the output $list. This sequence number indicates both the starting sequence number and the sequence number increment. If this parameter is not provided, no sequence numbers are placed in front of the input lines.
Syntax
%result = $ProcDat ( list_identifier, num_lines, seq_inc )
%result is set to indicate the success of the function.
The third argument to $ProcDat is intended for use in conjunction with the $ListUpd and $ListCmp functions.
Return codes
-1 - Current include level not opened by $ProcOpn -3 - No room to create $list items (if LISTFC $SirParm parameter not set) -5 - Required parameter missing -6 - Invalid $list identifier
Examples
If procedure 'SUTPENS_HUNDRED' in file 'JACKSON' contains:
B FOR %I FROM 1 TO 10 PRINT %I END FOR END
This program:
B %LIST = $ListNew %RESULT = $ProcOpn('SUTPENS_HUNDRED', 'JACKSON') %RESULT = $ProcDat(%LIST, ,5000) FOR %I FROM 1 TO $ListCnt(%LIST) PRINT $ListInf(%LIST, %I) END FOR END
Prints the following:
00005000B 00010000FOR %I FROM 1 TO 10 00015000 PRINT %I 00020000END FOR 00025000END