18.08.2013 Views

LINC Programming Reference Manual - Public Support Login - Unisys

LINC Programming Reference Manual - Public Support Login - Unisys

LINC Programming Reference Manual - Public Support Login - Unisys

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CALL<br />

CALL<br />

The CALL; command enables access to external routines or programs. For each target host<br />

type, you can use a CALL; command to access:<br />

$ MCP based Library procedures, by title or by System Library (SL) function name<br />

For MCP based <strong>LINC</strong> Systems, the CALL; BYFUNCTION variant gives you access to<br />

common user libraries that have been installed using the SL system command. For<br />

more details, see the following subsection ‘‘Using BYFUNCTION; with the CALL;<br />

Command’’.<br />

$ MCP based <strong>LINC</strong> Reports as Coroutines.<br />

$ OS 2200 based COBOL or Assembler programs or procedures, and <strong>LINC</strong> Subroutine<br />

Reports (in conjunction with the <strong>LINC</strong>SUB SGS)<br />

$ UNIX programs or routines, or the shell<br />

For UNIX <strong>LINC</strong> Systems, external COBOL programs exist as programs separate from<br />

the <strong>LINC</strong> System. Their location is contained in the environment variable COBPATH.<br />

$ Dynamic Linc Libraries (DLL)<br />

In LDA, the entry points used with the CALL: command to access DLLs are case<br />

sensitive.<br />

$ LDA Reports that have been specified as Able to be run as a Sub/Coroutine<br />

Parameter Passing<br />

Parameters can be passed by using the System Data item GLB.PARAM, whose value you<br />

must define before executing the CALL; command. Data returned from the routine also<br />

uses GLB.PARAM.<br />

Note: The internal common field used to pass this information is GLBPARAM (not<br />

GLB-PARAM), which enables access by programs written in a variety of<br />

languages.<br />

For information on passing parameters when using internal or external routines with the<br />

CALL; command, see your UNIX <strong>LINC</strong> Administration and Operations Guide.<br />

Checking of Operands<br />

No syntax checking is performed on the literal operands of the CALL; command. It is your<br />

responsibility to ensure that the literal operand conforms to the syntax requirements of the<br />

compiler you are using to generate the runtime system. If not, your generate will fail. It is<br />

also your responsibility to ensure the library procedure, routine, or program being called<br />

actually exists, and is able to be called at runtime. If not, the calling <strong>LINC</strong> System or Report<br />

will abort.<br />

For More Information<br />

For more details, see:<br />

$<br />

"Syntax" for each host type, later in this subsection<br />

v 1-51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!