DEFPROC - syncsort_simulate_2000 - Latest

Syncsort™ Storage Management Portal 2000 Rules Language Guide

Product type
Software
Portfolio
Integrate
Product family
Syncsort™ software
Product
Syncsort™ Storage Management > Syncsort™ Simulate 2000
Version
Latest
ft:locale
en-US
Product name
Syncsort Storage Management
ft:title
Syncsort™ Storage Management Portal 2000 Rules Language Guide
Copyright
2025
First publish date
1991
ft:lastEdition
2025-11-28
ft:lastPublication
2025-11-28T15:31:25.787000
L1_Product_Gateway
Integrate
L2_Product_Segment
IBM Infrastructure
L3_Product_Brand
Precisely Syncsort
L4_Investment_Segment
Mainframe
L5_Product_Group
Mainframe Storage Optimization
L6_Product_Name
Syncsort Storage Management

The DEFPROC statement defines a procedure that can be used as an extension to a rule. The DEFRULE statement, or another procedure, can use the CALLPROC parameter to execute a procedure definition. Like the rule definition statement, the DEFPROC statement can be used to perform one or more of the following functions:

  • modify fields in JCL
  • modify operands on Dynamic Allocation requests (SVC 99)
  • modify fields on the DEFINE CLUSTER IDCAMS control cards
  • force Allocation to use units within a specified device pool
  • write SMF records
  • write messages
  • issue operator commands
  • execute other procedures -- CALLPROC
  • execute DO-END statements

The CALLPROC statement performs the procedure defined by a DEFPROC statement. A procedure has all the capabilities and characteristics of a rule definition with two exceptions.

  • Rule scanning does not process a procedure -- another rule definition or proce-dure must request execution with a CALLPROC statement.
  • When IF processing successfully completes an IF-THEN-ELSE within a proce-dure definition, the default continuation is an EXITPROC instead of an EXIT.

Also, in a DEFRULE statement, the action statements would normally be found within an IF-THEN-ELSE group. In a procedure definition, action statements might often be found independent of conditional processing.

Both CALLPROC and DO-END statements can be used to implement nested IF processing, or execute a series of action statements. If your language contains multiple DO-END statements that perform the same function, you may wish to convert the DO-END statements to a single procedure and use the CALLPROC statement.

Note: For more information about action and IF-THEN-ELSE statements, examine the appropriate statement definitions -- ACTION and IF.

DEFPROC procname CONTINUE( options ) TEST

action_statements IF-THEN-ELSE_1 IF-THEN-ELSE_2

...

IF-THEN-ELSE_n

procname

Function: This is a required parameter. The procname parameter is used

by the CALLPROC statement in the rules language. The DEFRULE statement, or another procedure, can use the CALLPROC parameter to execute the procedure definition.

Default: None

Format: Specify a procname 1 to 20 characters long.

CONTINUE( options )

Function: After performing all the action statements requested by an IF-

THEN-ELSE group, the flow control statements can be used to terminate or continue rule processing.

Once an IF-THEN-ELSE has successfully completed, the rules language can continue scanning at the next IF-THEN-ELSE, the next rule definition, a specific rule definition, or simply exit the rules language.

The CONTINUE parameter on the DEFPROD statement establishes the defaults for flow control processing. The CONTINUE parameters on the DEFRULE and DEFPROC statements can override the established defaults for the rule or procedure definition. Lastly, the CONTINUE statement can be used in an IF-THEN-ELSE to control flow processing.

By default, the product uses CONTINUE(RETURN,RETURN) for

rule processing. The two operands establish the defaults for the THEN and ELSE sections of an IF-THEN-ELSE, respectively. If an IF group evaluates as false, and no ELSE section is coded, flow control always performs a NEXTIF request (that is, processing continues at the next IF).

Default: The default for this parameter is set by the CONTINUE

parameter on the DEFPROD statement.

Format: EXIT, EXITDO, EXITPROC, NEXTIF, NEXTRULE, or

rulename

TEST

Function: The TEST parameter is used to disable the procedure from

normal rules processing. The procedure will only be processed when the current step or TSO user has ACCTEST allocated. By allocating the ACCTEST DD statement, a rule verification job can enable the procedure for testing. For more information, examine “TESTING AND DEBUGGING” chapter in the product’s user guide.

Default: None

Format: TEST