WPS Communicate guida dell'utente e riferimento - Guida dell'utente e riferimento a Communicate - World Programming

Pagina creata da Nicolo Volpi
 
CONTINUA A LEGGERE
WPS Communicate guida dell'utente e riferimento - Guida dell'utente e riferimento a Communicate - World Programming
Guida dell’utente e riferimento a Communicate
Versione 4.2

                        WPS Communicate
                                    guida dell’utente e
                                           riferimento

                                                                          Versione: 4.2.1
                                       Copyright (c) 2002-2020 World Programming Limited
                                                             www.worldprogramming.com
WPS Communicate guida dell'utente e riferimento - Guida dell'utente e riferimento a Communicate - World Programming
Guida dell’utente e riferimento a Communicate
Versione 4.2

Indice

Panoramica................................................................................................3

Installazione e configurazione................................................................. 4

Guida dell'utente per client..................................................................... 7
       Concetti chiave............................................................................................................................... 7
       Uso di WPS Communicate.............................................................................................................7
              Un programma semplice......................................................................................................7
              Uso di PROC DOWNLOAD.................................................................................................9
              Uso di PROC UPLOAD..................................................................................................... 11
              Esecuzione di sottoprogrammi in parallelo........................................................................ 12
              Trasferimento delle variabili della macro........................................................................... 14
       Riferimento....................................................................................................................................15
              Come leggere gli diagrammi sintattici................................................................................15
              Istruzioni globali................................................................................................................. 17
              Istruzioni del macroprocessore.......................................................................................... 27
              Procedure...........................................................................................................................28
              Opzioni di sistema............................................................................................................. 36

Guida all'amministrazione del sistema................................................. 39
       Autenticazione in z/OS con Telnet............................................................................................... 39
              Esempio di script di autenticazione Telnet........................................................................ 46
       SSH (Secure Shell) da un client Windows.................................................................................. 47
              Autenticazione della password (usando PuTTY) e accesso tramite WPS......................... 49
              Autenticazione della chiave pubblica.................................................................................55
       SSH (Secure Shell) da un client UNIX........................................................................................ 72
              Autenticazione della password e accesso tramite WPS.................................................... 72
              Autenticazione della chiave pubblica.................................................................................74
       Accesso singolo a Kerberos.........................................................................................................82

Variabili di ambiente...............................................................................84

Avvisi legali.............................................................................................85

                                                                       2
WPS Communicate guida dell'utente e riferimento - Guida dell'utente e riferimento a Communicate - World Programming
Guida dell’utente e riferimento a Communicate
Versione 4.2

Panoramica
WPS Communicate consente l'esecuzione di diverse parti selezionate di logica del programma SAS in
diversi host e consente il trasferimento di dati e risultati tra di loro. Può essere conveniente considerare
WPS Communicate come permettere ai programmi di avvicinarsi di più ai dati su cui operano, al
contrario dello schema più tradizionale in cui i dati vengono trasferiti al programma.

In una normale sessione di WPS, tutta l’elaborazione viene eseguita in un unico host locale, per
impostazione predefinita, in modo sincrono. Può essere vantaggioso, tuttavia, eseguire diverse parti di
un programma su diversi host. Ad esempio, si potrebbe avere un’applicazione che crea rapporti per cui
vi è la necessità di estrarre e riepilogare alcuni dati prima di generare e distribuire i rapporti. Potrebbe
avere senso eseguire l’estrazione e il riepilogo di parti del programma nell’host che archivia i dati,
trasferendo i dati riepilogati nuovamente nella piattaforma locale per la generazione e la distribuzione dei
rapporti.

Insieme al codice programma, è possibile caricare e scaricare i set di dati richiesti per l'elaborazione
remota dall'interno di un programma eseguito localmente. Ciò rende possibile eseguire il lavoro intenso
su database in un server centrale, prima di tornare alla piattaforma locale per l'elaborazione dei risultati.

Dalla versione 3.2 in avanti, WPS Communicate ha la capacità di funzionare in modo asincrono, per cui
l'elaborazione iniziale in più host remoti accade in parallelo, consentendo miglioramenti significativi delle
prestazioni per un'ampia gamma di carichi di lavoro.

Nota:
Poiché è necessario cambiare il codice programma per individuare le parti che bisogna eseguire in
modalità remota, WPS Communicate richiede che gli utenti abbiano familiarità con il linguaggio di SAS.

Il presente manuale è suddiviso nelle seguenti sezioni:

•   Installazione e configurazione    (pag. 4).
•   La Guida dell'utente per client   (pag. 7) che si rivolge agli utenti ordinari di WPS
    Communicate.
•   La Guida all'amministrazione del sistema      (pag. 39) che si rivolge ai tecnici informatici che
    installano e amministrano il sistema.

                                                     3
Guida dell’utente e riferimento a Communicate
Versione 4.2

Installazione e configurazione
Vi sono 3 elementi necessari per una configurazione client/server di WPS Communicate: un mezzo
di autenticazione, lo stesso software WPS e sufficienti codici di licenza di WPS per supportare la
configurazione.

Autenticazione
WPS Communicate richiede l'uso di una connessione SSH o Telnet tra il server e i computer client.
Sono descritti in Guida all'amministrazione del sistema (pag. 39) i metodi di autenticazione
disponibili, inclusa l'autenticazione delle chiavi pubbliche (sia con che senza l'uso di un agente
portachiavi) e ogni altro software necessario.

Il protocollo consigliato dipende dal tipo di host a cui si è effettuata una connessione:

•   Telnet (consultare Autenticazione in z/OS con Telnet      (pag. 39))

    Nota:
    Per un host z/OS, Telnet (o TN3270) è il meccanismo di connessione utilizzato più diffuso ed
    è il metodo consigliato per la connessione a host z/OS tramite WPS Communicate. È il solo
    meccanismo supportato che consente l'accesso diretto a TSO (Opzione di condivisione di tempo).
    È possibile connettersi a z/OS mediante SSH (Secure Shell), ma questo si connette a USS (UNIX
    System Services) invece di TSO, e non è sempre configurato in sistemi z/OS.

•   SSH (Secure Shell). Non è fornito in dotazione con il software WPS. Tuttavia:

    1. Per un server UNIX (Linux, Solaris o AIX), è possibile utilizzare il daemon SSH incorporato.
    2. Per un server Windows, la funzionalità SSH di terzi è venduta separatamente da Bitvise
       (consultare Guida all'amministrazione del sistema (pag. 39) per dettagli).

       Nota:
       Bitvise SSH è l'unica funzione SSH ufficialmente supportata da World Programming per un server
       Windows.

Software WPS
WPS è fornito come un unico file di installazione che contiene tutte le funzionalità di WPS richieste per
l'uso con WPS Communicate, incluso WPS Workbench, Java Runtime Environment e il componente
per Server WPS concedibile in licenza.

                                                     4
Guida dell’utente e riferimento a Communicate
Versione 4.2

Nota:
Saranno necessari i file di installazione di WPS che sono idonei per i sistemi operativi sia per il server
che per i computer client. Per esempio, se si dispone di un server Linux e di computer client Windows,
sarà necessario il file di installazione Linux per il server e i file di installazione Windows appropriati (a
32 o 64 bit) per i client. Consultare la guida all'installazione della piattaforma pertinente per i dettagli
completi del processo di installazione di WPS.

Codice/i di licenza di WPS
Affinché l'installazione di WPS possa eseguire un programma scritto nel linguaggio di SAS,
l'applicazione di un codice di licenza di WPS deve attivare il componente Server WPS (in dotazione
separatamente al software WPS).

Nota:
Un'installazione completamente concessa in licenza di WPS è necessaria su ciascun client e su ciascun
server dell'host.

Riepilogo dell'installazione
Di seguito, è fornita una breve panoramica della procedura necessaria per installare e configurare una
soluzione per client/server di WPS Communicate.

Importante:
La persona che installa WPS e applica i codici di licenza, deve disporre di privilegi di amministratore del
sistema operativo in quei computer.

1. All'esterno di WPS, configurare ed effettuare il test della connessione SSH o Telnet tra il server e i
   computer client, in base alle piattaforme e i metodi di autenticazione che sono attivi nella propria sede
   (consultare Guida all'amministrazione del sistema (pag. 39) per dettagli).
2. Installare completamente WPS nel server o nel mainframe z/OS.

   Nota:
   Assicurarsi di disporre del codice di licenza per l'installazione del server o per z/OS. Quando si avvia
   WPS in un server, verrà richiesto automaticamente di applicare la licenza. Per un mainframe z/OS,
   non si riceveranno prompt e sarà necessario seguire le istruzioni sull'applicazione di un codice di
   licenza che è disponibile nel documento separato "Installazione e guida dell’utente di WPS per z/OS".

3. Se non è stato già fatto, installare WPS nei singoli computer client.

   Nota:
   Assicurarsi di disporre del codice di licenza per la workstation, in modo che si possa a sua volta
   applicare ad ogni client. Quando si avvia WPS nei client, verrà richiesto automaticamente di applicare
   la licenza.

                                                      5
Guida dell’utente e riferimento a Communicate
Versione 4.2

Variabili di ambiente
La configurazione delle variabili di ambiente non è necessaria prima della sessione iniziale di WPS
Communicate, ma è possibile chiedere all'amministratore di sistema di regolarli per le sessioni
successive. Consultare Variabili di ambiente (pag. 84).

                                                  6
Guida dell’utente e riferimento a Communicate
Versione 4.2

Guida dell'utente per client

Concetti chiave
Per trasferire il flusso di controllo da un programma che si esegue localmente ad un server remoto,
WPS Communicate ha introdotto le seguenti due coppie di istruzioni: SIGNON ... SIGNOFF e
RSUBMIT ... ENDRSUBMIT.

SIGNON e SIGNOFF devono contenere le istruzioni RSUBMIT ed ENDRSUBMIT:
SIGNON ...;
...
RSUBMIT;
...
ENDRSUBMIT;
...
SIGNOFF;

L'istruzione SIGNON ... è responsabile per l'avvio e l'autenticazione della sessione con il server.

Tra le istruzioni RSUBMIT ed ENDRSUBMIT, si inserisce il codice programma che si intende eseguire nel
computer remoto.

Una volta eseguito il codice remoto, l'istruzione SIGNOFF chiude la connessione e rilascia le sue risorse.

Uso di WPS Communicate

Un programma semplice
La presente sezione contiene un esempio di un programma di WPS Communicate molto semplice in
esecuzione remota su una piattaforma Linux.

Prima di cominciare, assicurarsi che WPS Workbench sia installato e in esecuzione, e assicurarsi di
aver effettuato l'accesso al server remoto utilizzando un client SSH esterno.

Per connettersi al server remoto, questo programma usa un semplice accesso tramite password. Non è
il metodo più sicuro, perché archivia un ID utente e una password in testo normale nel codice sorgente,
e l'uso della Chiave pubblica, vale a dire l'autenticazione senza password, si consiglia per un uso
a lungo termine (consultare Guida all'amministrazione del sistema (pag. 39)). Tuttavia, l'accesso
tramite password serve per verificare che WPS Communicate stia funzionando con la configurazione
più basilare.

                                                   7
Guida dell’utente e riferimento a Communicate
Versione 4.2

1. Creare un nuovo programma in WPS Workbench come riportato di seguito:

   SIGNON  SSH
   username=""
   password=""
   LAUNCHCMD="";
   RSUBMIT;
   %PUT &SYSHOSTNAME;
   %PUT 'Success with simple password sign-on';
   ENDRSUBMIT;
   SIGNOFF;

   Assicurarsi di sostituire  con il nome del server e, analogamente, sostituire
    e  con l'effettivo ID utente e password nel computer remoto.

   Nota:
   L'opzione LAUNCHCMD deve puntare al percorso del file eseguibile di WPS nel server remoto, ad
   esempio /home/installs/wps32/bin/wps -dmr.

2. Eseguire il programma ed esaminare il registro di output:

   367       ODS _ALL_ CLOSE;
   368       FILENAME WPSWBHTM TEMP;
   369       ODS HTML(ID=WBHTML) BODY=WPSWBHTM GPATH="C:\Users\techwriter\AppData
   \Local\Temp\WPS Temporary
   369     ! Data\_TD5876";
   NOTE: Writing HTML(WBHTML) Body file WPSWBHTM
   370       SIGNON DOCSERVER SSH
   371       username="XXXX"
   372       password=XXXXXXXXXXX
   373       LAUNCHCMD=";
   NOTE: Remote SSH signon to DOCSERVER starting
   NOTE: Establishing tunnelled connection to DOCSERVER:55765
   NOTE: (c) Copyright World Programming Limited 2002-2015. All rights reserved.
   NOTE: World Programming System 3.02 (03.02.00.00.011866)
         Licensed to World Programming Company Ltd
   NOTE: This session is executing on the Linux platform and is running in 64-bit
    mode

   NOTE: Remote signon to DOCSERVER complete
   374       RSUBMIT;
   NOTE: Remote submit to DOCSERVER starting
   1         %PUT &SYSHOSTNAME;
   harmony.teamwpc.local
   2         %PUT 'Success with simple password sign-on';
   'Success with simple password sign-on'
   NOTE: Remote submit to DOCSERVER complete
   375       SIGNOFF;
   NOTE: Remote signoff from DOCSERVER starting

   NOTE: Submitted statements took :
         real time : 0.130
         cpu time : 0.028
   NOTE: Remote signoff from DOCSERVER complete
   376       quit; run;

                                                  8
Guida dell’utente e riferimento a Communicate
Versione 4.2

   377           ODS _ALL_ CLOSE;

   •    Le opzioni SSH, username, password e LAUNCHCMD dell'istruzione SIGNON forniscono tutte le
        informazioni necessarie per accedere all'host remoto tramite SSH e avviare il server WPS remoto.
   •    Tra le istruzioni RSUBMIT ed ENDRSUBMIT, vengono eseguite le seguenti due righe di codice nel
        computer remoto:
        %PUT &SYSHOSTNAME;
        %PUT 'Success with simple password sign-on';

        Nota:
        Le istruzioni %PUT scrivono in un file di registro locale, ma la variabile della macro
        &SYSHOSTNAME viene risolta nel computer remoto (nel DOCSERVER in questo caso).

   •    Infine, l'istruzione SIGNOFF elimina la connessione.

Uso di PROC DOWNLOAD
PROC DOWNLOAD è concepito per trasferire le raccolte, i set di dati o i file da un host remoto, utilizzando
rispettivamente le opzioni INLIB, DATA e INFILE alla piattaforma locale, utilizzando le opzioni
OUTLIB, OUT e OUTFILE. È necessario collocare PROC DOWNLOAD all'interno di un blocco di codice
RSUBMIT ... ENDRSUBMIT.

Seguono alcuni esempi di sintassi:
/* transfer a library */
PROC DOWNLOAD INLIB=remotelib OUTLIB=locallib; RUN;

/* transfer a single dataset */
PROC DOWNLOAD DATA=remotelib.dataset OUT=locallib.dataset; RUN;

/*transfer a file */
PROC DOWNLOAD INFILE=”remote_host_file_path” OUTFILE=”local_platform_file_path”;
 RUN;

Nota:
Per la sintassi completa di questa procedura, consultare la sezione Riferimento.

Esempio dell'uso di PROC DOWNLOAD
La presente sezione contiene un esempio che usa PROC DOWNLOAD.

1. Creare un nuovo programma in WPS Workbench copiando e incollando il seguente codice:

   /*******************************************************************
   Sign on to the remote host
   *******************************************************************/
   signon  ssh
   user=''

                                                     9
Guida dell’utente e riferimento a Communicate
Versione 4.2

   password=''
   launchcmd='';

   /*******************************************************************
   Create and populate a small dataset on the remote host
   *******************************************************************/
   rsubmit;
   data communicatedemo;
   input movie $ 1-46 year $ 48-51;
   cards;
   Avatar                                         2009
   Titanic                                        1997
   The Avengers                                   2012
   Harry Potter and the Deathly Hallows - part 2 2011
   Frozen                                         2013
   ;
   run;

   /*******************************************************************
   Download the generated dataset to the local platform
   *******************************************************************/
   proc download
   data=WORK.communicatedemo
   out=WORK.communicatedemo;
   run;

   /*******************************************************************
   Complete the remote program execution and close the connection
   *******************************************************************/
   endrsubmit;
   signoff;

   Accertarsi di sostituire  con il nome del server remoto, sostituire 
   e  ove opportuno, e configurare launchcmd in modo che punti al percorso del file
   eseguibile di WPS nel server remoto, ad esempio /home/installs/wps-3.2/bin/wps -dmr.
   Questo programma è concepito per creare un set di dati nell'host remoto, elencando 5 dei film con
   importi maggiori di tutti i tempi, e scaricarlo nella piattaforma locale.
2. Eseguire il programma ed esaminare il registro di output, un messaggio sotto il richiamo PROC
   DOWNLOAD descrive il trasferimento dei dati:

   NOTE: Dataset download in progress from WORK.communicatedemo to
    WORK.communicatedemo
   NOTE: 333 bytes were transferred to dataset WORK.communicatedemo at 333000 bytes/
   sec
   NOTE: Dataset "WORK.communicatedemo" has 5 observation(s) and 2 variable(s)

   Il programma viene eseguito, creando un set di dati nel computer remoto e scaricandolo nella
   piattaforma locale. È possibile esaminare il set di dati communicatedemo nella raccolta WORK locale
   selezionando Server locale ➤ Raccolte ➤ Work nella scheda Esplora server WPS.

                                                 10
Guida dell’utente e riferimento a Communicate
Versione 4.2

Uso di PROC UPLOAD
PROC UPLOAD è concepito per trasferire le raccolte, i set di dati o i file dalla piattaforma locale,
utilizzando rispettivamente le opzioni INLIB, DATA e INFILE ad un host remoto, utilizzando le opzioni
OUTLIB, OUT e OUTFILE. È necessario collocare PROC UPLOAD all'interno di un blocco di codice
RSUBMIT ... ENDRSUBMIT.

Seguono alcuni esempi di sintassi:
/* transfer a library */
PROC UPLOAD INLIB=locallib OUTLIB=remotelib; RUN;

/* transfer a single dataset */
PROC UPLOAD DATA=locallib.dataset OUT=remotelib.dataset; RUN;

/*transfer a file */
PROC UPLOAD INFILE=”local_host_file_path” OUTFILE=”remote_host_file_path”; RUN;

Nota:
Per la sintassi completa di questa procedura, consultare la sezione Riferimento.

Esempio dell'uso di PROC UPLOAD
La presente sezione contiene un esempio tramite PROC UPLOAD, in cui il set di dati scaricato tramite
l'esempio PROC DOWNLOAD viene caricato e salvato in un host remoto secondario.

1. Copiare e incollare il seguente codice:

   /*******************************************************************
   Sign on to the remote host to upload the dataset
   *******************************************************************/
   signon  ssh
   user=''
   password=''
   launchcmd='';

   /*******************************************************************
   Create a library for the dataset on the host
   *******************************************************************/
   rsubmit;
   libname rlib "/home//datasets";

   /********************************************************************
   Upload the dataset to the host and output its contents to the library
   *********************************************************************/
   proc upload
   data=WORK.communicatedemo
   out=rlib.communicatedemo;
   run;

   /*******************************************************************
   Complete the remote program execution

                                                 11
Guida dell’utente e riferimento a Communicate
Versione 4.2

   *******************************************************************/
   endrsubmit;

   /*******************************************************************
   Sign off the remote host and close the connection
   *******************************************************************/
   signoff;

   Accertarsi di sostituire  con il nome del server remoto secondario, sostituire
    e  ove opportuno, e configurare launchcmd in modo che punti al
   percorso del file eseguibile di WPS nel server remoto, ad esempio /home/installs/wps-3.2/
   bin/wps -dmr.

   Importante:
   Una volta rilevata l'istruzione signoff, tutti i set di dati nel percorso WORK nell'host remoto verranno
   rimossi perché WORK è un percorso temporaneo. Se non si desidera che si verifichi, è necessario
   generare il set di dati ad un percorso permanente, utilizzando per esempio una raccolta come rlib
   nel suddetto codice.

2. Eseguire il programma ed esaminare il registro di output, un messaggio sotto il richiamo PROC
   caricamento descrive il trasferimento dei dati:

   NOTE: Dataset upload in progress from WORK.communicatedemo to
    WORK.communicatedemo
   NOTE: 333 bytes were transferred to dataset WORK.communicatedemo at 333000 bytes/
   sec
   NOTE: Dataset "WORK.communicatedemo" has 5 observation(s) and 2 variable(s)

   Il programma viene eseguito e carica il set di dati.

   Importante:
   È possibile solo esaminare il set di dati se lo si è salvato in un percorso permanente (vale a dire
   diverso da WORK), eseguendo per esempio WPS Workbench nel server remoto ed eseguendo una
   raccolta aprendo un'istruzione come LIBNAME rlib "/home//datasets". Verrà
   visualizzato nella scheda Esplora server WPS in Raccolte.

Esecuzione di sottoprogrammi in parallelo

WPS Communicate asincrono
WPS Communicate può eseguire sottoprogrammi in modo asincrono, vale a dire, un sottoprogramma
non deve aspettare il completamento di un altro prima della propria esecuzione. A seconda dei relativi
carichi di lavoro dei singoli sottoprogrammi, questa elaborazione può migliorare notevolmente le
prestazioni poiché l'attesa si riduce dalla somma delle durate dei sottoprogrammi alla lunghezza del
sottoprogramma più lungo.

                                                   12
Guida dell’utente e riferimento a Communicate
Versione 4.2

Potrebbe essere un sottoprogramma remoto che viene eseguito in modo sincrono o viene controllato
in modo asincrono dall'opzione WAIT del proprio richiamo dell'istruzione RSUBMIT, e un'istruzione
WAITFOR corrispondente utilizzata per mettere WPS in attesa fino al completamento di uno o più
sottoprogrammi.

Nel seguente frammento di codice, i sottoprogrammi vengono eseguiti in parallelo nell'host1 e host2.
Al termine, l'elaborazione continua localmente. Tale elaborazione potrebbe, ad esempio, eseguire una
unione dei risultati dei due sottoprogrammi precedenti.
%let remote-id1 = host1
%let remote-id2 = host2
/*******************************************************************
Sign on to the remote machines
*******************************************************************/
signon  ssh
user=''
password=''
launchcmd='/bin/wps -dmr>';

signon  ssh
user=''
password=''
launchcmd='';

/*******************************************************************
Execute sub-programs
*******************************************************************/
rsubmit  wait=no;
/****
Run code on 
****/
endrsubmit;

rsubmit  wait=no;
/****
Run code on 
****/
endrsubmit;

/*******************************************************************
Wait for all remote processing to complete
*******************************************************************/
WAITFOR _ALL_  ;

/*******************************************************************
Release connections to remote machines
*******************************************************************/
signoff ;
signoff ;

/*******************************************************************
Perform final local processing
*******************************************************************/
data _null_;
/****
Local data step processing
****/
run;

                                                 13
Guida dell’utente e riferimento a Communicate
Versione 4.2

L'opzione WAIT=NO di entrambe le istruzioni RSUBMIT informa WPS che è necessario eseguire i
sottoprogrammi in modo asincrono.

Nota:
L'istruzione WAITFOR _ALL_ causa la sospensione dell'esecuzione del programma principale fino
al termine dell'elaborazione in tutti i remote-id del server oppure finché non scade l'intervallo
TIMEOUT, se è stato specificato. Se si utilizza WAITFOR _ANY_   o
semplicemente WAITFOR  , invece di WAITFOR _ALL_, il programma
principale sospenderà l'esecuzione fino al termine dell'elaborazione in ognuno dei remote-id del
server (o finché è scaduto l'intervallo TIMEOUT, se è specificato). Il valore predefinito è _ANY_ piuttosto
che _ALL_ se nessuna argomentazione viene specificata tra WAITFOR e i remote-id del server.

Esecuzione di sottoprogrammi locali in parallelo
WPS Communicate offre un ulteriore modo di parallelizzare l'elaborazione locale consentendo di creare
più connessioni alla piattaforma locale proprio come se fossero connessioni a host remoti. Invece di
specificare complete istruzioni di accesso che richiedono l'autenticazione, come descritto in precedenza,
è sufficiente utilizzare:
signon local1 launchcmd="\bin\wps.exe -dmr";
signon local2 launchcmd="\bin\wps.exe -dmr";

o semplicemente
signon local1 launchcmd="!sascmd –dmr"
signon local2 launchcmd="!sascmd –dmr"

Le argomentazioni local1 e local2 diventano alias per le connessioni alla piattaforma locale che
è possibile utilizzare in modo esattamente identico ai nomi degli host dei server connessi in modalità
remota. Sebbene dipenda dagli schemi di uso della risorsa dei vari sottoprogrammi, una tale tecnica può
portare a miglioramenti delle prestazioni anche se non vi è un netto aumento della larghezza di banda di
CPU o I/O disponibile.

Trasferimento delle variabili della macro
È possibile far passare le variabili della macro tra la piattaforma locale e un host remoto tramite le
istruzioni del processore della macro %SYSLPUT e %SYSRPUT.

L'istruzione %SYSLPUT crea una variabile della macro in un host remoto con cui si è stabilita una
sessione di WPS Communicate. È necessario collocare la chiamata della macro dopo l'istruzione
SIGNON, ma prima dell'istruzione RSUBMIT.

L'istruzione %SYSRPUT recupera una variabile della macro da un host remoto a cui vi è una sessione di
WPS Communicate stabilita, creando un'identica variabile della macro locale. È possibile collocare la
chiamata della macro solo all'interno di un blocco di codice RSUBMIT ... ENDRSUBMIT, perché viene
eseguito nell'host remoto e restituisce le variabili nuovamente alla piattaforma locale.

                                                    14
Guida dell’utente e riferimento a Communicate
Versione 4.2

Seguono alcuni esempi di frammenti di codice utilizzando queste chiamate:

signon  ssh
user=''
password=''
launchcmd='';
/*******************************************************************
Send over a macro definition from the local to the remote platform
*******************************************************************/
%SYSLPUT LOCALOS=&SYSSCPL.;

/**********************************************************************
SUBMIT the following code to UNIX, between the RSUBMIT/ENDRSUBMIT block
***********************************************************************/
rsubmit;

%put "EXECUTING ON REMOTE OS &SYSSCPL. FROM LOCAL OS &LOCALOS.";
%put &SYSHOSTNAME;

%SYSRPUT REMOTEOS=&SYSSCPL.;

endrsubmit;

%put "EXECUTING ON LOCAL OS &SYSSCPL. FROM REMOTE OS &REMOTEOS.";

/*******************************************************************
SIGNOFF the UNIX platform, preventing further RSUBMITs
*******************************************************************/
signoff;

%put &SYSHOSTNAME;

Nota:
Per la sintassi completa di queste istruzioni del processore della macro, consultare la sezione
Riferimento.

Riferimento
Le definizioni dei diagrammi sintattici sono notazioni che aiutano a spiegare la sintassi dei linguaggi di
programmazione, e sono utilizzate nella presente guida per descrivere la sintassi del linguaggio.

Come leggere gli diagrammi sintattici
I diagrammi sintattici sono una notazione di sintassi grafica che accompagna le strutture del linguaggio
significative, quali procedure, istruzioni e così via.

La descrizione di ciascun concetto linguistico comincia con la diagramma sintattico.

                                                    15
Guida dell’utente e riferimento a Communicate
Versione 4.2

Immissione di testo
Il testo che è necessario immettere esattamente nel modo in cui è visualizzato, viene mostrato con un
carattere macchina da scrivere:

    OUTPUT      ;

Questo esempio descrive un frammento di sintassi in cui la parola chiave OUTPUT viene seguita da un
carattere punto e virgola:;. La forma del diagramma sintattico è:                       .

Generalmente le maiuscole/minuscole del testo non sono importanti, ma in questo contesto, è
consuetudine utilizzare le maiuscole per le parole chiave.

Elementi segnaposto
I segnaposto, che bisogna sostituire con testo pertinente e dipendente dal contesto, sono rappresentati
in un carattere minuscolo e corsivo:

    OUTPUT      nome-del-set-di-dati        ;

Qui, è necessario immettere la parola chiave OUTPUT letteralmente, ma bisogna sostituire il
nome-del-set-di-dati con qualcosa di appropriato per il programma, in questo caso, il nome del set di dati
a cui aggiungere una osservazione.

Opzionalità
Quando gli elementi sono opzionali, vengono visualizzati su un ramo sotto la linea principale nei
diagrammi sintattici. L'opzionalità è rappresentata da un percorso alternativo senza ostacoli attraverso il
diagramma:

    OUTPUT                                          ;
                     nome-del-set-di-dati

Ripetizione
Nei diagrammi sintattici, la ripetizione viene raffigurata con un cappio di ritorno che specifica
opzionalmente il separatore che bisogna collocare tra istanze multiple.

    OUTPUT          nome-del-set-di-dati        ;

In alto, è necessario immettere la parola chiave OUTPUT letteralmente e farla seguire da una o più
ripetizioni del nome-del-set-di-dati; in questo caso, non è stato necessario nessun separatore, tranne uno
spazio.

L'esempio in basso dimostra l'uso di un separatore.

                                                        16
Guida dell’utente e riferimento a Communicate
Versione 4.2

                                                    ,
    nome-della-funzione            (         argomentazione    )    ;

Opzioni
Nei diagrammi sintattici, l'opzione è illustrata mediante diversi rami paralleli.

    GETNAMES           YES               ;
                           NO

Nell'esempio illustrato in alto, è necessario immettere la parola chiave GETNAMES letteralmente e poi la
parola chiave YES o la parola chiave NO.

Frammenti
Quando la sintassi è troppo complicata per rientrare in una definizione, si potrebbe suddividere in
frammenti:

    PROC       PRINT            option

option
        DATA     =         nome-del-set-di-dati
                           LABEL

In alto, l'intera sintassi è suddivisa in frammenti di diagrammi sintattici. Il primo indica che PROC PRINT
deve essere seguito da una o più istanze di un'opzione, ciascuna delle quali deve aderire alla sintassi
fornita nel secondo diagramma.

Istruzioni globali

ENDRSUBMIT

    ENDRSUBMIT         ;

Questa istruzione indica la fine di un blocco di codice che è cominciato con un'istruzione RSUBMIT.

                                                          17
Guida dell’utente e riferimento a Communicate
Versione 4.2

RSUBMIT

   RSUBMIT                                                       ;
                     remote-id
                                                   option

option
      options AtoM

      options NtoZ

options A to M
          CMACVAR            =         'variable-name'
             MACVAR
         CONNECTPERSIST                    =        YES
               CPERSIST                              NO
               PERSIST
          CONNECTREMOTE                   =     remote-id
               CREMOTE
                REMOTE
               PROCESS
          CONNECTWAIT                 =           YES
                CWAIT                              NO
                 WAIT
          CSYSRPUTSYNC                 =          YES
             SYSRPUTSYNC                           NO
             CSCRIPT             =        signon-script
               SCRIPT
               IDENTITYFILE = identity-file

               LOG      =             KEEP
                                      PURGE
                                     filename

                                                            18
Guida dell’utente e riferimento a Communicate
Versione 4.2

options N to Z
                           NOCSCRIPT
                           NOSCRIPT
             OUTPUT        =                KEEP
                                           PURGE
                                       filename
                 PASSWORD               =      string
                   PASS
                  PASSWD
                     PW
                     PWD
            SASCMD               =      'command-name'
          LAUNCHCMD
             SIGNONWAIT          =            YES
                                              NO
          TBUFSIZE         =                bytes

                                       kilobytes K

                                       megabytes M

                   UID                 =      'string'
                   USER
                 USERID
                USERNAME
                                SSH
                               DEBUG

Questa istruzione contrassegna l'inizio di un blocco del codice programma da inviare ad un host (di solito
remoto) per l'esecuzione.

CMACVAR, MACVAR
Questa opzione specifica una variabile della macro il cui valore è associato allo stato di completamento
del blocco attuale di RSUBMIT.

CONNECTPERSIST, CPERSIST, PERSIST
Questa opzione significa se o meno una disconnessione automatica si verifica dopo un SIGNON e
RSUBMIT.

CONNECTREMOTE, CREMOTE, REMOTE, PROCESS
Questa opzione individua il computer remoto a cui si stabilirà una connessione, direttamente o
denominando una variabile della macro che contiene l'indirizzo.

                                                         19
Guida dell’utente e riferimento a Communicate
Versione 4.2

Nota:
Se l'opzione CONNECTREMOTE viene utilizzata con il nome dell'host remoto appositamente fornito come
variabile della macro, nessuna E commerciale si dovrebbe collocare prima del nome della variabile della
macro. La sintassi corretta è illustrata nel seguente frammento:
...
%LET HostName = RemoteHost;

options ssh_hostvalidation=none;
signon connectremote=HostName ssh /* Not &HostName */
user = 
password = 
launchcmd = ' -dmr';
...

CONNECTWAIT, CWAIT, WAIT
Questa opzione determina se il blocco RSUBMIT si deve eseguire in modalità asincrona o sincrona,
impostandola rispettivamente su NO o YES.

CSYSRPUTSYNC, SYSRPUTSYNC
Se si imposta su YES, questa opzione impone la definizione di variabili della macro quando si esegue
%SYSRPUT.

CSCCRIPT, SCRIPT
Questa opzione individua uno script di accesso.

IDENTITYFILE
Questa opzione specifica un file contenente le informazioni di autenticazione, come le chiavi SSH.

NOSCRIPT, NOCSCRIPT
Questa opzione indica che non si dovrebbe usare nessuno script a cui accedere.

LOG
Questa opzione definisce se è necessario mantenere, ripulire o inviare il registro di sistema ad un file
specifico.

OUTPUT
Questa opzione definisce se è necessario mantenere, ripulire o inviare l'output del sottoprogramma ad
un file specifico.

                                                   20
Guida dell’utente e riferimento a Communicate
Versione 4.2

PASSWORD, PASS, PASSWD, PW, PWD
Questa opzione viene utilizzata per specificare una password per l'autorizzazione remota.

SASCMD, LAUNCHCMD
Se presente, questa opzione viene utilizzata per specificare il comando necessario per avviare WPS nel
computer remoto.

SIGNONWAIT
Questa opzione stipula che un SIGNON dovrebbe terminare prima di permettere l'elaborazione
successiva.

TBUFSIZE
Questa opzione specifica le dimensioni del buffer del messaggio di WPS COMMUNICATE.

UID, USER, USERID, USERNAME
Se presente, questa opzione specifica il nome utente.

SSH
Questa opzione specifica che la connessione utilizzerà il protocollo SSH crittografato.

DEBUG
Questa opzione specifica che altri messaggi di debug sono scritti nel registro di sistema.

SIGNOFF

    SIGNOFF                                                        ;
                       remote-id
                                                  option
                         _ALL_

                                                   21
Guida dell’utente e riferimento a Communicate
Versione 4.2

option
             CMACVAR          =     'variable-name'
             MACVAR
          CONNECTREMOTE              =     remote-id
               CREMOTE
               REMOTE
               PROCESS
             CSCRIPT          =      signon-script
              SCRIPT
                         NOCSCRIPT
                         NOSCRIPT

Questa istruzione chiude una connessione con un server remoto, in seguito all'esecuzione di un blocco
di codice eseguito in modalità remota.

CMACVAR, MACVAR
Questa opzione specifica una variabile della macro associata alla sessione remota e il cui valore è
associato allo stato di completamento dell'istruzione attuale di SIGNOFF.

CONNECTREMOTE, CREMOTE, REMOTE, PROCESS
Questa opzione denomina la sessione remota da cui si desidera disconnettersi.

CSCRIPT, SCRIPT
Questa opzione individua uno script da eseguire durante la disconnessione.

NOSCRIPT, NOCSCRIPT
Questa opzione indica che non si dovrebbe coinvolgere nessuno script nel processo di disconnessione.

SIGNON

    SIGNON                                                  ;
                  remote-id
                                             option

                                                       22
Guida dell’utente e riferimento a Communicate
Versione 4.2

option
      options AtoO

      options PtoZ

options A to O
          CMACVAR               =      'variable-name'
          MACVAR
         CONNECTREMOTE                   =        remote-id
               CREMOTE
                REMOTE
               PROCESS
          CONNECTWAIT                =              YES
                CWAIT                               NO
                 WAIT
           CSCRIPT              =        signon-script
           SCRIPT
         CSYSRPUTSYNC                  =            YES
          SYSRPUTSYNC                                NO
               IDENTITYFILE = identity-file

               LOG      =            KEEP
                                     PURGE
                                    filename
                         NOCSCRIPT
                            NOSCRIPT
          OUTPUT            =              KEEP
                                         PURGE
                                      filename

                                                              23
Guida dell’utente e riferimento a Communicate
Versione 4.2

options P to Z
                 PASSWORD                =      string
                    PASS
                  PASSWD
                      PW
                      PWD
             SASCMD               =      'command-name'
           LAUNCHCMD
              SIGNONWAIT          =            YES
                                               NO
          TBUFSIZE          =                bytes

                                        kilobytes K

                                        megabytes M

                    UID                 =      'string'
                   USER
                  USERID
                 USERNAME
                                 SSH
                                DEBUG

Questa istruzione e le sue opzioni forniscono le informazioni necessarie per specificare dove si trova
l'installazione di WPS remota, oltre alle credenziali per connettersi e accedere al server remoto, prima di
richiamare un blocco di codice eseguito in modalità remota.

CMACVAR, MACVAR
Questa opzione specifica una variabile della macro associata alla sessione remota e il cui valore è
associato allo stato di completamento dell'istruzione attuale di SIGNON.

CONNECTREMOTE, CREMOTE, REMOTE, PROCESS
Questa opzione denomina la sessione remota.

                                                          24
Guida dell’utente e riferimento a Communicate
Versione 4.2

Notare che se l'opzione CONNECTREMOTE viene utilizzata con il nome dell'host remoto appositamente
fornito come variabile della macro, (forse in modo controintuitivo) nessuna E commerciale si dovrebbe
collocare prima del nome della variabile della macro. La sintassi corretta è illustrata nel seguente
frammento:
...
%LET HostName = RemoteHost;

options ssh_hostvalidation=none;
signon connectremote=HostName ssh /* Not &HostName */
user = 
password = 
launchcmd = ' -dmr';
...

CONNECTWAIT, CWAIT, WAIT
Questa opzione determina se il blocco RSUBMIT si deve eseguire in modalità asincrona o sincrona,
impostandola rispettivamente su NO o YES.

CSYSRPUTSYNC, SYSRPUTSYNC
Se si imposta su YES, questa opzione impone la definizione di variabili della macro quando si esegue
%SYSRPUT.

CSCCRIPT, SCRIPT
Questa opzione individua uno script di accesso.

IDENTITYFILE
Questa opzione specifica un file contenente le informazioni di autenticazione, come le chiavi SSH.

NOSCRIPT, NOCSCRIPT
Questa opzione indica che non si dovrebbe usare nessuno script a cui accedere.

LOG
Questa opzione definisce se è necessario mantenere, ripulire o inviare il registro di sistema ad un file
specifico.

OUTPUT
Questa opzione definisce se è necessario mantenere, ripulire o inviare l'output del sottoprogramma ad
un file specifico.

PASSWORD, PASS, PASSWD, PW, PWD
Questa opzione viene utilizzata per specificare una password per l'autorizzazione remota.

                                                   25
Guida dell’utente e riferimento a Communicate
Versione 4.2

SASCMD, LAUNCHCMD
Se presente, questa opzione viene utilizzata per specificare il comando necessario per avviare WPS nel
computer remoto.

SIGNONWAIT
Questa opzione stipula che un SIGNON dovrebbe terminare prima di permettere l'elaborazione
successiva.

TBUFSIZE
Questa opzione specifica le dimensioni del buffer del messaggio di WPS COMMUNICATE.

UID, USER, USERID, USERNAME
Se presente, questa opzione specifica il nome utente.

SSH
Questa opzione specifica che la connessione utilizzerà il protocollo SSH crittografato.

DEBUG
Questa opzione specifica che altri messaggi di debug sono scritti nel registro di sistema.

WAITFOR

    WAITFOR                                remote-id                                         ;
                        _ANY_                                  TIMEOUT = seconds
                        _ALL_

Dal momento che il diagramma in alto si applica solo a WPS Communicate, l'istruzione WAITFOR
_ALL_ sospende l'esecuzione della sessione corrente fino al completamento dell'elaborazione per tutti i
remote-id del server o finché non scade l'intervallo TIMEOUT se è stato specificato.

Se si utilizza WAITFOR _ANY_, o semplicemente WAITFOR, al posto di WAITFOR _ALL_, l'esecuzione
della sessione verrà sospesa solo fino al completamento dell'elaborazione in uno dei server remote-id
(oppure finché non scade l'intervallo TIMEOUT se è stato specificato).

Nota:
Come si insinua in alto, il valore predefinito è _ANY_ piuttosto che _ALL_ se nessuna argomentazione
viene specificata tra WAITFOR e i remote-id.

                                                   26
Guida dell’utente e riferimento a Communicate
Versione 4.2

Istruzioni del macroprocessore

%SYSLPUT
    %SYSLPUT          macro-variable     = value                                ;
                                _ALL_
                                                           /   option
                             _AUTOMATIC_
                              _GLOBAL_
                               _LOCAL_
                               _USER_

option
          LIKE = 'pattern'

       REMOTE = remote-id

Questa istruzione crea una variabile della macro in un host remoto con cui si è stabilita una sessione di
WPS Communicate. È necessario collocare al di fuori del corrispondente blocco di RSUBMIT.

%SYSRPUT
    %SYSRPUT       macro-variable        =    value    ;

Questa istruzione recupera una variabile della macro da un host remoto a cui vi è una sessione di WPS
Communicate stabilita, creando un'identica variabile della macro locale. È necessario collocare al di fuori
del corrispondente blocco di RSUBMIT.

                                                      27
Guida dell’utente e riferimento a Communicate
Versione 4.2

Procedure

Procedura di DOWNLOAD
Questa procedura scarica uno o più file, raccolte o set di dati da un host remoto. È possibile solo
richiamare dall'interno di un blocco RSUBMIT.

Istruzioni supportate
•   PROC DOWNLOAD            (pag. 28)
•   EXCLUDE      (pag. 31)
•   SELECT     (pag. 31)
•   WHERE      (pag. 32)

PROC DOWNLOAD

    PROC     DOWNLOAD                             ;

                                  option

                                                   28
Guida dell’utente e riferimento a Communicate
Versione 4.2

option
                                   AFTER = numeric
                                           BINARY
          DATA       =     server-data-set
                                                             ( dataset-options       )

                                          DATECOPY
                           EXTENDSN               =           NO
                                                             YES
                               INDEX          =             NO
                                                           YES
                           INFILE = server-file-reference
                         INLIB            =           server-library-name
                          IN
                         INDD
                          MEMTYPE         =                 ALL
                                                          CATALOG
                                                            DATA
                                                            MDDB
                                                            VIEW
        OUT      =         library.dataset

                                dataset                          ( dataset-options       )

                          OUTFILE = client-file-reference
                         OUTLIB            =           client-library-name
                         OUTDD
                          OUT
                                       V6TRANSPORT

AFTER
Specifica una data di modifica numerica, assicurandosi che vengano scaricati solo i set di dati o le
raccolte modificate dopo questa data. Questa opzione non è valida per i download dei file esterni.

BINARY
Valido solo quando si scaricano file esterni, questa opzione specifica che il trasferimento dovrebbe
essere una esatta copia binaria.

DATA
Specifica il nome di un set di dati da scaricare.

                                                                   29
Guida dell’utente e riferimento a Communicate
Versione 4.2

DATECOPY
Se presente, questa opzione indica che la data e ora di creazione di un set di dati remoto si devono
mantenere quando viene scaricato. Questa opzione non è valida per i download dei file esterni.

EXTENDSN
Specifica se le brevi variabili numeriche dovrebbero avere le loro lunghezze estese. Questa opzione
non è valida per i download dei file esterni e si può considerare se si trasferiscono i set di dati da un
mainframe ad un PC.

INDEX
Per i set di dati remoti che hanno indici, indica se questi indici si devono ristabilire nel computer locale
dopo il download. Questa opzione non è valida per i download dei file esterni.

INFILE
Specifica il nome di un file remoto esterno da scaricare. Se questa opzione è presente, lo deve essere
l'opzione OUTFILE=.

INLIB
Specifica il nome della raccolta remota. Questa opzione non è valida per i download dei file esterni.

OUT
Specifica il nome del set di dati locale ricevente. Questa opzione non è valida per i download dei file
esterni.

OUTFILE
Specifica il nome del file locale per ricevere un download del file esterno. Se questa opzione è presente,
lo deve essere l'opzione INFILE.

OUTLIB
Specifica il nome della raccolta locale in cui viene scaricato un set di dati remoto. Questa opzione non è
valida per i download dei file esterni.

V6TRANSPORT
Questa è un'opzione di conversione quando si scambiano i dati tra due diverse versioni.

                                                     30
Guida dell’utente e riferimento a Communicate
Versione 4.2

EXCLUDE

    EXCLUDE          data-set                               ;
                                         /    option

data-set
    data-set-name
                               :         (      MEMTYPE         =        DATA          )
                                                 MTYPE                   VIEW
                                                       M               CATALOG

option
    MEMTYPE      =              DATA
                                VIEW
                           CATALOG
                                   ALL

MEMTYPE
Questa opzione specifica i tipi di membro da scaricare, vedere il diagramma sintattico in alto. Questa
opzione non è valida per i download dei file esterni.

SELECT

    SELECT          data-set                                ;
                                         /   option

data-set
    data-set-name
                               :         (      MEMTYPE         =        DATA          )
                                                 MTYPE                   VIEW
                                                       M               CATALOG

                                                       31
Guida dell’utente e riferimento a Communicate
Versione 4.2

option
    MEMTYPE      =             DATA
                               VIEW
                             CATALOG
                               ALL

MEMTYPE
Vedere l'istruzione EXCLUDE.

WHERE

    WHERE      condition       ;

Procedura UPLOAD
Questa procedura carica uno/a o più file, raccolte o set di dati a un host remoto. È possibile solo
richiamare dall'interno di un blocco RSUBMIT.

Istruzioni supportate
•   PROC UPLOAD            (pag. 32)
•   EXCLUDE      (pag. 35)
•   SELECT     (pag. 35)
•   WHERE      (pag. 36)

PROC UPLOAD

    PROC      UPLOAD                           ;

                                   option

                                                   32
Guida dell’utente e riferimento a Communicate
Versione 4.2

option
                                 AFTER = numeric
                                         BINARY
                               DATA = client-data-set
                                        DATECOPY
                          EXTENDSN              =          NO
                                                           YES
                              INDEX         =            NO
                                                         YES
                         INFILE = client-file-reference
                       INLIB            =           client-library-name
                         IN
                       INDD
                        MEMTYPE         =                 ALL
                                                       CATALOG
                                                         DATA
                                                         MDDB
                                                         VIEW
        OUT     =        library.dataset

                              dataset                         ( dataset-options   )

                      OUTLIB             =          server-library-name
                      OUTDD
                        OUT
                        OUTFILE = server-file-reference
                                      V6TRANSPORT

AFTER
Specifica una data di modifica numerica, assicurandosi che vengano caricati solo i set di dati o le
raccolte modificate dopo questa data. Questa opzione non è valida per gli upload di file esterni.

BINARY
Valido solo quando si caricano file esterni, questa opzione specifica che il trasferimento dovrebbe essere
una esatta copia binaria.

DATA
Specifica il nome di un set di dati da caricare.

                                                                33
Guida dell’utente e riferimento a Communicate
Versione 4.2

DATECOPY
Se presente, questa opzione indica che la data e ora di creazione di un set di dati locale si devono
mantenere quando viene caricato. Questa opzione non è valida per gli upload di file esterni.

EXTENDSN
Specifica se le brevi variabili numeriche dovrebbero avere le loro lunghezze estese. Questa opzione non
è valida per gli upload di file esterni e si può considerare se si trasferiscono i set di dati ad un mainframe
da un PC.

INDEX
Per i set di dati locali che hanno indici, indica se questi indici si devono ristabilire nel computer remoto
dopo l'upload. Questa opzione non è valida per gli upload di file esterni.

INFILE
Specifica il nome di un file esterno locale da caricare. Se questa opzione è presente, lo deve essere
l'opzione OUTFILE=.

INLIB
Specifica il nome della raccolta locale. Questa opzione non è valida per gli upload di file esterni.

MEMTYPE
Questa opzione specifica i tipi di membro da caricare, vedere il diagramma sintattico in alto. Questa
opzione non è valida per gli upload di file esterni.

OUT
Specifica il nome del set di dati remoto ricevente. Questa opzione non è valida per gli upload di file
esterni.

OUTFILE
Specifica il nome del file remoto per ricevere un upload del file esterno. Se questa opzione è presente, lo
deve essere l'opzione INFILE.

OUTLIB
Specifica il nome della raccolta remota in cui si carica un set di dati locale. Questa opzione non è valida
per gli upload di file esterni.

V6TRANSPORT
Questa è un'opzione di conversione quando si scambiano i dati tra due diverse versioni.

                                                     34
Guida dell’utente e riferimento a Communicate
Versione 4.2

EXCLUDE

   EXCLUDE          data-set                               ;
                                        /    option

data-set
   data-set-name
                              :         (      MEMTYPE         =    DATA     )
                                                MTYPE               VIEW
                                                      M            CATALOG

option
   MEMTYPE     =               DATA
                               VIEW
                          CATALOG
                                  ALL

SELECT

   SELECT          data-set                                ;
                                        /   option

data-set
   data-set-name
                              :         (      MEMTYPE         =    DATA     )
                                                MTYPE               VIEW
                                                      M            CATALOG

option
   MEMTYPE     =               DATA
                               VIEW
                          CATALOG
                                  ALL

                                                      35
Guida dell’utente e riferimento a Communicate
Versione 4.2

WHERE

    WHERE      condition       ;

Opzioni di sistema

AUTOSIGNON
        AUTOSIGNON
       NOAUTOSIGNON

Valido in:                 Istruzione OPTIONS, file di configurazione e riga di comando
Valore predefinito:        NOAUTOSIGNON

Descrizione
Quando è attiva questa opzione di sistema, l'invio remoto tenterà l'accesso automatico.

COMAMID
    COMAMID      =     communication-method

Valido in:                 Istruzione OPTIONS, file di configurazione e riga di comando
Valore predefinito:        TCP
Lunghezza massima: 8

Descrizione
Questa opzione di sistema specifica il metodo di comunicazione da utilizzare per stabilire le
comunicazioni remote.

CONNECTPERSIST
        CONNECTPERSIST
       NOCONNECTPERSIST

                                                     36
Guida dell’utente e riferimento a Communicate
Versione 4.2

Valido in:             Istruzione OPTIONS, file di configurazione e riga di comando
Valore predefinito:    CONNECTPERSIST

Descrizione
Se è impostata, questa opzione di sistema specifica che una connessione remota sarà permanente dopo
un blocco RSUBMIT. Questa opzione di sistema è un alias di CPERSIST.

CONNECTREMOTE
    CONNECTREMOTE       =      server-name

Valido in:             Istruzione OPTIONS, file di configurazione e riga di comando
Valore predefinito:    vuoto
Lunghezza massima: 1024

Descrizione
Questa opzione di sistema individua uno specifico server remoto a cui connettersi. È vuoto (stringa
vuota) per impostazione predefinita.

DMR
        DMR
       NODMR

Valido in:             Solo riga di comando
Valore predefinito:    NODMR

Descrizione
Questa opzione di sistema richiama una sessione del server WPS COMMUNICATE. È inattivo per
impostazione predefinita e può avere effetto solo tramite la riga di comando.

SASCMD
    SASCMD     =      command

                                                  37
Guida dell’utente e riferimento a Communicate
Versione 4.2

Valido in:                Istruzione OPTIONS, file di configurazione e riga di comando
Valore predefinito:       ""
Lunghezza massima: 32767

Descrizione
Questa opzione di sistema specifica il comando utilizzato da WPS COMMUNICATE per avviare un'altra
sessione di WPS locale. È vuoto (stringa vuota) per impostazione predefinita.

SASSCRIPT

    SASSCRIPT         =    (      location      )

Valido in:                Istruzione OPTIONS, file di configurazione e riga di comando
Valore predefinito:       ""
Lunghezza massima: 1024

Descrizione
Questa opzione di sistema specifica il percorso degli script di accesso a WPS COMMUNICATE. È vuoto
(stringa vuota) per impostazione predefinita.

                                                    38
Guida dell’utente e riferimento a Communicate
Versione 4.2

Guida all'amministrazione del
sistema
Questa parte della guida è concepita per gli amministratori di sistema che sono responsabili per
l'autenticazione del server relativa a WPS Communicate e WPS Link e per la generazione e la
distribuzione delle chiavi pubbliche e private richieste.

Nota:
WPS Communicate e WPS Link sono funzionalità separate che si possono eseguire
indipendentemente. Vale a dire, non è necessario uno per eseguire l'altro. Si usa WPS Communicate
per eseguire il codice selettivo negli host del server remoto o un mainframe z/OS, e WPS Link per
eseguire interi programmi, tramite la GUI di Workbench, solo negli host del server remoto. Le due
funzionalità sono descritte insieme qui dato che entrambe richiedono mezzi di autenticazione remota.

Segue un riepilogo dei metodi di autenticazione poiché si applicano a entrambi WPS Communicate e
WPS Link.

Metodo di autenticazione                                   WPS Communicate        WPS Link
Password                                                   Sì                     Sì
Chiave pubblica con passphrase e agente portachiavi        Sì                     Sì
Chiave pubblica con passphrase e nessun agente             No                     Sì
portachiavi
Kerberos                                                   Sì                     Sì
Telnet in z/OS                                             Sì                     No

Autenticazione in z/OS con Telnet
WPS Communicate può usare un accesso Telnet ad un host z/OS remoto per avviare un server WPS
tramite una CLIST in dotazione, denominata TSOWPS. Nessuna configurazione USS (UNX System
Services) è necessaria e la parte USS di WPS non viene utilizzata.

                                                  39
Guida dell’utente e riferimento a Communicate
Versione 4.2

1. In primo luogo, assicurarsi che la TSOWPS CLIST sia operativa per l'installazione, eseguendo un
   normale accesso TN3270 con un emulatore del terminale 3270 all'host z/OS e richiamando la
   TSOWPS CLIST in dotazione. Normalmente, si potrebbe usare l'Option 6 di ISPF (Interactive System
   Productivity Facility) e digitare TSOWPS al prompt.

   Se si riceve un messaggio simile al seguente, potrebbe essere necessario apportare modifiche alla
   TSOWPS CLIST o all'installazione di WPS:
   WPS CANNOT BE INVOKED AS WPSPFX HAS NOT BEEN DEFINED

   Questo messaggio informa l'utente che il prefisso del set di dati di installazione non è risolto e che
   WPS non è in grado di individuare i suoi vari componenti.

                                                   40
Guida dell’utente e riferimento a Communicate
Versione 4.2

2. Acquisire i prompt di accesso Telnet eseguendo un accesso manuale all'host z/OS con un client
   Telnet, quale il client PuTTYtel. Avviare il client e immettere il nome dell'host nel campo di immissione
   Host Name (or IP address) (Nome Host (o indirizzo IP)). Assicurarsi di selezionare il pulsante di
   opzione Telnet.

   I prompt successivi dipenderanno da come è stato configurato l'host z/OS. Lo scopo di questo
   passaggio è duplice:

   •   Il primo è quello di verificare che è possibile eseguire una connessione Telnet all'host.
   •   Il secondo è quello di acquisire i prompt ed eventuali risposte necessarie.

   Il seguente registro acquisisce una tipica sequenza di prompt quando si esegue un accesso Telnet
   ad un host z/OS. L'obiettivo è quello di comprendere questa sequenza, quindi utilizzarla per scrivere
   uno script che automatizzerà il processo.

   Nota:
   Le risposte immesse dall'utente non sono state ripetute in questo output per la ragione che l'esatta
   sequenza di input e risposte dipende spesso dall'installazione. Ne consegue che potrebbe essere
   necessario regolare lo script di accesso codificato manualmente.

   IKJ56700A     ENTER USERID -
   IKJ56714A     ENTER CURRENT PASSWORD FOR XXXX-
   ICH70001I     XXXX LAST ACCESS AT 13:59:30 ON THURSDAY, JANUARY 15, 2015
   IKJ56496I     DEFAULT ACCOUNT NUMBERS COULD NOT BE OBTAINED - ENTER ACCOUNT NUMBER

                                                    41
Puoi anche leggere