15.2.1 How to submit jobs directly from SPF/PC

If you are lucky enough to have a copy of the excellent editor SPF/PC Version4 or SPF/Pro (produced by
CTC but unfortunately no longer available), then you can submit jobs directly from your edit session. The
SUB command can be implemented by means of a REXX macro such as the following one, provided by
Volker Bandke:

/* +----------------------------- REXX -----------------------------+ */

/* */

/* Name: D:\APPS\SPFPRO\REXX\USER\SUB.SPF */

/* */

/* Type: SPF edit macro */

/* */

/* Desc: submit JCL to MVS 3.8 */

/* */

/* Creation date: 24 Aug 1999, creation time: 18:49:40 */

/* */

/* Author: (c) Volker Bandke */

/* */

/* +----------------------------------------------------------------+ */

'isredit macro (p1 p2 p3 p4 p5 p6 p7 p8 p9)'

"ISREDIT (member) = MEMBER"

"ISPEXEC CONTROL ERRORS CANCEL"

parse upper var member file '.' ext

do

'ISREDIT REPLACE' $$$$$$$$.SPF '.ZF .ZL'

ADDRESS "CMD" "HERCRDR 192.168.1.102:3505 $$$$$$$$.SPF"

zedsmsg = 'File submitted'

zedlmsg = 'The member '||member||' has been submitted to MVS'

'ispexec setmsg msg(isrz000)'

ADDRESS "CMD" "DELETE $$$$$$$$.SPF"

end

EXIT 0

Figure 353: SUBmit REXX for SPF/PC

15.3 Submitting Jobs from Unix

Submitting jobs from Unix can be done in two different ways, described in detail in the next sections:

Using a Perl script Using the netcat program

15.3.1 Using a Perl script

Malcolm Beattie has provided a simple Perl script which can submit jobs using either TCP/IP or Unix
Domain Sockets. The script is invoked using one of the following command formats:

hercsub 192.168.1.102:3505 dummy.jcl

hercsub /tmp/hercrdr.00C dummy.jcl

Here is the Hercsub script:

============== hercsub ================

#!/usr/bin/perl

use Socket;

use IO::Socket::UNIX;

use IO::Socket::INET;

if (@ARGV < 1) {

print STDERR "Usage: hercsub socket_spec [job]\n";

exit 2;

}

my $spec = shift @ARGV;

my $sock;

if ($spec =~ m{^/}) {

$sock = IO::Socket::UNIX->new(Peer => $spec);

} else {

$sock = IO::Socket::INET->new(PeerAddr => $spec);

}

die "Failed to connect to socket $spec: $!\n" unless defined($sock);

while (<>) {

print $sock $_;

}

========== end of hercsub =============

Figure 354: The Hercsub Perl Script

15.3.2 Using the netcat program

The netcat (nc) program can also be used to submit files to a Hercules reader via TCP/IP. Install netcat
(which is useful for many other things as well) and use the following syntax:

nc –w1 localhost 1234 < dummy.jcl

For more information on the netcat program, type man nc from the Unix shell.

Previous Page Next Page