$FunSkip: Difference between revisions

From m204wiki
Jump to navigation Jump to search
(Created page with "{{DISPLAYTITLE:$FunSkip}} <span class="pageSubtitle"><section begin="desc" />Skip to next output record for $FUNIMG, $FunsStr<section end="desc" /></span> <p class="warning">Mos...")
 
m (1 revision)
(No difference)

Revision as of 15:45, 31 January 2011

<section begin="desc" />Skip to next output record for $FUNIMG, $FunsStr<section end="desc" />

Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $FunSkip function is to be entered.


This skips the current Fast/Unload output record for a request so that subsequent $FunImg and $FunsStr calls will operate on the next record.

The $FunSkip function accepts one argument and returns a numeric result.

The only argument is the request identifier returned by $FunLoad for the request from which data is to be retrieved. This is a required argument.

Syntax

<section begin="syntax" /> %RESULT = $FunSkip(req_num) <section end="syntax" />

$FunSkip Function

%RESULT is set to 1, or it is set to an error code if there is no record to skip.

1 - Record skipped 0 - &FUNL. completed with return code 0; no more data -1 - Request not found <-1 - &FUNL. completed with non-zero return code, value returned is negative of return code; no more data

$FunSkip Error Codes


If Fast/Unload has not unloaded any records yet, $FunSkip will wait for the first record. If $FunSkip returns a value less than or equal to 0, the request has completed.

$FUNSKIPs can be mixed with $FunsStr and $FunImg calls for the same request. In addition, multiple unloads can be performed simultaneously with $FunSkip calls for the different requests mixed freely.


The following example compares the first two bytes of each unloaded record with 'XX'. If they are equal, the record is copied into image 'IMAGE' and then processed; otherwise the record is simply skipped.

%REQ = $FunLoad('DATA', , , '*') IF %REQ LE 0 THEN STOP END IF %RC = 1 REPEAT WHILE %RC > 0 %TEST = $FunsStr( %REQ, 1, 2) IF %TEST EQ 'XX' THEN %RC = $FunImg( %REQ, %IMAGE:ITEM ) CALL PROCESS ELSE %RC = $FunSkip END IF END REPEAT

  • &FUNULI

Products authorizing $FunSkip