NO script abaixo explicarei como submter jobs ao Z/OS utilizando PHP:
conexao ao servidor FTP :
";
}
echo "--------------------------------------------" ."
";
//-------------------------------------------------------------------
// cria jobs a ser submetido ( LISTAR TODOS OS ALIAS / HLQ'S )
//-------------------------------------------------------------------
$arquivo_t = 'alias.txt';
$filename = $arquivo_t;
$somecontent =
("//JOB000XX JOB (G022),'USER',CLASS=B,MSGCLASS=A," ."\n".
"// REGION=0M,TIME=1440,MSGLEVEL=(1,1)" ."\n".
"//HOLD OUTPUT JESDS=ALL,DEFAULT=Y,OUTDISP=(HOLD,HOLD)" ."\n".
"//ST00 EXEC PGM=IEFBR14" ."\n".
"//DD1 DD DSN=USER.D$dia$mes.ALIAS.TXT,DISP=(MOD,DELETE)," ."\n".
"// SPACE=(CYL,(50,10),RLSE)" ."\n".
"//*" ."\n" .
"//ST01 EXEC PGM=IDCAMS" ."\n".
"//SYSPRINT DD DSN=USER.D$dia$mes.ALIAS.TXT,DISP=(,CATLG,DELETE)," ."\n".
"// DCB=(LRECL=125,RECFM=VBA,BLKSIZE=629)," ."\n".
"// SPACE=(CYL,(50,10),RLSE)" ."\n".
"//SYSIN DD *" ."\n".
" LISTCAT ALIAS ALL " ."\n".
"//" ."\n");;
//------------------------------------------------------------------
// grava arquivo = job
//------------------------------------------------------------------
if (!$handle = fopen($filename , 'w')) {
print "Erro abrindo arquivo ($filename)";
exit;
}
if (!fwrite($handle, $somecontent)) {
print "Erro escrevendo no arquivo ($filename)";
exit;
}
fclose($handle);
//-------------------------------------------------------------------
// submissao do job
// O job sera carregado na biblioteca no mes com "PUT" e depois este
// sera direcionado para o JES
// O diretorio no PC deve ter permissao de "WRITE" onde sera jogado
// o Log de execucão do job.
//-------------------------------------------------------------------
$a2 = ftp_site($conn_id,"quote site filetype=seq"); // set
$source_file = 'alias.txt'; // arquivo gerado
$mvsa = "'BIBLIOTECA.NOVO(ALIAS)'"; // criacao do job no PO
$upload = ftp_put($conn_id, $mvsa, $source_file, FTP_ASCII); //PUT
//-----------------------------------------------------------------------
$a2 = ftp_site($conn_id,"quote site filetype=jes"); // SET JES2
$source_file1 = "'BIBLIOTECA.NOVO(ALIAS)'"; // Job
$pc = './jobs_exec/alias_all.txt'; // Diretorio para Log do JOB
$downl = ftp_get($conn_id, $pc, $source_file1, FTP_ASCII); // ==> jes
//-------------------------------------------------------------------// DOWNLOAD DO ARQUIVO GERADO PARA O PC
//-------------------------------------------------------------------
$a2 = ftp_site($conn_id,"quote site filetype=seq"); // volta seq
$rt = ftp_site($conn_id,'quote site SBDataconn=TCPIP.XLATE.TCPLXBIN'); BIB de conversao EBCDIC / ASCII
$destination = "./ficheiros/USER.D$dia$mes.ALIAS.TXT"; // arquivo LOCAL
$fileserv = "'USER.D$dia$mes.ALIAS.TXT'"; // ARQUIVO NO MVS
//echo "file" . $fileserv . "
";
ftp_get($conn_id, $destination, $fileserv , FTP_ASCII);
//-------------------------------------------------------------------
// delete arquivo no (Z/OS / OS/390)
//-------------------------------------------------------------------
ftp_delete($conn_id, $fileserv);
//-------------------------------------------------------------------
// FTP QUIT
//-------------------------------------------------------------------
ftp_quit($conn_id);
//-------------------------------------------------------------------