GETMODEL

For MSMQ, obtains a dynamic creation queue model from the information repository. For Rendezvous and Rendezvous-CM, obtains transport attributes.
Supports: MSMQ, Rendezvous, Rendezvous-CM

Syntax

CALL GETMODEL(transport, name, storage, rc, props, value1, , value2, value3,...>)

Required Arguments

transport
Character, input
Specifies the transport that is associated with this model. MSMQ, Rendezvous, and Rendezvous-CM are the only valid transports for this CALL routine.
name
Character, input
Identifies the dynamic model.
storage
Character, input
Specifies the location for the model definition. The REGISTRY location is valid.
rc
Numeric, output
Provides the return code from the CALL routine. If an error occurs, then the return code is nonzero. You can use the SAS function SYSMSG() in order to obtain a textual description of the return code.
props
Character, input
Identifies one or more properties to be queried.
values
Character or numeric, output
Identifies one or more queue properties to be queried. This parameter is a character string with each applicable output variable separated by a comma.

Details

You must associate a variable with each property that is identified by props.
For MSMQ, the following properties are valid:
AUTHENTICATE character
BASEPRIORITY numeric
JOURNAL character
JOURNALQUOTA numeric
LABEL character
PRIVLEVEL character
QUOTA numeric
TRANSACTION character
TYPE binary string
For Rendezvous and Rendezvous-CM, the following transport properties are valid:
DAEMON character
NETWORK character
SERVICE character
For Rendezvous-CM only, the following transport properties are valid:
CMNAME character
LEDGER character
RELAYAGENT character
REQUESTOLD character
SYNCLEDGER character

Example

The following example obtains an MSMQ model queue definition in the SAS registry:
length msg $ 200;
length rc 8;
length auth priv $ 10;
length label $ 80;
rc=0;
auth='';
priv='';
label='';
call getmodel('MSMQ', 'MYMODEL', 'REGISTRY', rc,
'AUTHENTICATE,PRIVLEVEL,LABEL', auth, priv, label);
if rc ^= 0 then do;
  put 'GETMODEL: failed';
  msg = sysmsg();
  put msg;
end;
else do;
  put 'GETMODEL: succeeded';
  put 'authenticate = ' auth;
  put 'privacy level = ' priv;
  put 'label = ' label;
end;