Vai al contenuto

Oggetti dell'API Macro

È possibile creare macro utilizzando l'API Macro. Per impostazione predefinita sono disponibili quattro oggetti principali da utilizzare nelle macro:

  • Session - Il punto di entrata principale per accedere all'host. L'oggetto Session viene utilizzato per eseguire la connessione, la disconnessione e per fornire accesso all'oggetto PresentationSpace.

  • PresentationSpace - Rappresenta lo schermo e fornisce molte capacità comuni, ad esempio il recupero e l'impostazione della posizione del cursore, l'invio di dati all'host e la lettura dello schermo. Viene ottenuto chiamando session.getPresentationSpace().

  • Wait - Fornisce un modo semplice per attendere che si verifichino i vari stati dell'host prima di continuare a inviare altri dati o a leggere dallo schermo. Ad esempio, è possibile attendere che il cursore si trovi in una determinata posizione, che il testo sia presente in una certa posizione sullo schermo o attendere semplicemente che trascorra un periodo di tempo fissato. Tutte le funzioni "wait" richiedono la parola chiave yield, spiegata più avanti.

  • User Interface - Disponibile automaticamente nella macro come variabile "ui". Fornisce capacità di interfaccia utente di base. È possibile utilizzare questo oggetto per mostrare i dati all'utente o richiedergli informazioni. Tutte le chiamate alla funzione "UI" richiedono la parola chiave yield.

Tutti gli oggetti disponibili

Vedere l'elenco degli oggetti disponibili nel riquadro di navigazione a destra, "In questa pagina" (potrebbe essere necessario espandere il browser).


Attributo

Utilizzare l'oggetto Attribute, insieme ad AttributeSet, per decodificare le informazioni di formattazione presenti nella cella dati.

Attributo Indica...
PROTECTED una cella dati protetta
MODIFIED una cella dati modificata
NUMERIC_ONLY l'inizio di una cella dati esclusivamente numerica
ALPHA_NUMERIC una cella dati alfanumerica
HIGH_INTENSITY se la cella dati contiene testo ad alta intensità
HIDDEN se la cella dati contiene testo nascosto
PEN_DETECTABLE se la cella dati è rilevabile dalla penna ottica
ALPHA_ONLY una cella dati esclusivamente alfabetica
NUMERIC_SHIFT l'inizio di un campo di spostamento numerico
NUMERIC_SPECIAL che la cella dati contrassegna l'inizio di un campo numerico speciale
KATAKANA_SHIFT una sezione di testo Katakana
MAGNETIC_STRIPE che la cella dati contrassegna l'inizio di un campo banda magnetica
SIGNED_NUMERIC_ONLY che la cella dati è un campo numerico con segno
TRANSMIT_ONLY che la cella dati è un campo di sola trasmissione
FIELD_END_MARKER che la cella dati contrassegna la fine di un campo modificato
FIELD_START_MARKER che la cella dati contrassegna l'inizio di un campo modificato
SPECIAL_EMPHASIS_PROTECTED un campo protetto con enfasi speciale
TAB_STOP che la cella dati contiene un arresto di tabulazione
REVERSE che la cella dati viene visualizzata in modalità video inverso
BLINKING che la cella dati contiene testo intermittente
RIGHT_JUSTIFIED che la cella dati contrassegna l'inizio di un campo con giustificazione a destra
LEFT_JUSTIFIED che la cella dati contrassegna l'inizio di un campo con giustificazione a sinistra
LOW_INTENSITY che la cella dati contiene testo a bassa intensità
UNDERLINE che la cella dati contiene testo sottolineato
DOUBLE_BYTE che la cella dati contiene testo a doppio byte
COLUMN_SEPARATOR che la cella dati contiene un separatore di colonna
BOLD che la cella dati contiene testo in grassetto
DOUBLE_WIDTH che la cella dati contrassegna un campo a doppia larghezza
DOUBLE_HEIGHT_TOP una cella dati a doppia altezza superiore
DOUBLE_HEIGHT_BOTTOM una cella dati a doppia altezza inferiore
CONTROL_PAGE_DATA che la cella dati contiene dati pagina di controllo
RIGHT_COLUMN_SEPARATOR che la cella dati contiene un separatore di colonna a destra
LEFT_COLUMN_SEPARATOR che la cella dati contiene un separatore di colonna a sinistra
UPPERSCORE che la cella dati contiene un sopralineato
STRIKE_THROUGH che la cella dati contiene testo barrato

AttributeSet

L'oggetto AttributeSet consente all'utente di decodificare gli attributi presenti nella cella dati. L'oggetto AttributeSet restituisce i valori definiti nell'oggetto Attribute e, se utilizzati insieme, è possibile ottenere informazioni sulla formattazione dalla cella dati.

Metodo Descrizione
contains(attribute) Determina se il set contiene l'Attribute specificato.
Parametri
{Number} attributo da controllare
Restituisce
{Boolean} True se l'attributo è presente nel set
isEmpty() Determina se il set di attributi è vuoto.
Restituisce
{Boolean}True se il set è vuoto.
size() Indica il numero di attributi in un set.
Restituisce
{Number} Il numero di attributi.
toArray() Converte il set di attributi interno in una matrice.
Restituisce
{Number[]}Matrice dei valori degli attributi nel set.
toString() Converte il set di attributi interno in una stringa.
Restituisce
{String} Nomi delimitati da spazi degli attributi nel set.
forEach(callback, thisArg) Funzione per reiterare ogni elemento nel set di attributi.
Parametri
{forEachCallback} Richiamata per eseguire l'operazione specifica. Chiamato con il nome di ogni attributo nel set.
{Object} thisArg puntatore facoltativo a un oggetto di contesto.
forEachCallback(string, object) Una funzione di richiamata fornita dall'utente in cui fornire il comportamento, da usare come parametro di richiamata per forEach.
Parametri
{String} Nome stringa dell'attributo nel set di attributi.
{Object} thisArg puntatore facoltativo a un oggetto di contesto.

AutoSignOn

Metodo Descrizione
getPassTicket() Ottiene un pass ticket da utilizzare per accedere a un'applicazione mainframe. È possibile richiedere più pass ticket utilizzando ID di applicazioni diversi.
Parametri
{String} L'ID applicazione indica all'host a quale applicazione è destinato l'accesso
Restituisce
{Promise} completata con la chiave pass ticket o rifiutata se l'operazione non riesce. Il pass ticket ottenuto da DCAS funziona solo per la sessione host corrente ed è valido per dieci minuti.
sendUserName() Applica il nome utente contenuto nel pass ticket al campo nella posizione del cursore corrente sullo schermo host corrente. Il nome utente deve essere inviato prima della password. Se viene inviata prima la password, il pass ticket verrà invalidato e sarà necessario ottenerne un altro.
Parametri
{String} passTicketKey ottenuto da getPassTicket
Restituisce
{Promise} completata se il nome utente viene inviato correttamente. Rifiutata se l'operazione non riesce.
sendPassword() Applica la password contenuta nel pass ticket al campo nella posizione del cursore corrente sullo schermo host corrente. Il nome utente deve essere inviato prima della password. Se viene inviata prima la password, il pass ticket verrà invalidato e sarà necessario ottenerne un altro.
Parametri
{String} passTicketKey ottenuto da getPassTicket
Restituisce
{Promise} completata se la password viene inviata correttamente. Rifiutata se l'operazione non riesce.

Colore

Costanti di colore da usare per i colori di primo piano e sfondo dell'oggetto DataCell.

Colore Descrizione Valore numerico
BLANK_UNSPECIFIED Nessun colore specificato 0
BLUE Blu 1
GREEN Verde 2
CYAN Ciano 3
RED Rosso 4
MAGENTA Magenta 5
YELLOW Giallo 6
WHITE_NORMAL_INTENSITY Bianco con intensità normale 7
GRAY Grigio 8
LIGHT_BLUE Blu chiaro 9
LIGHT_GREEN Verde chiaro 10
LIGHT_CYAN Ciano chiaro 11
LIGHT_RED Rosso chiaro 12
LIGHT_MAGENTA Magenta chiaro 13
BLACK Nero 14
WHITE_HIGH_INTENSITY Bianco con intensità alta 15
BROWN Marrone 16
PINK Rosa 17
TURQUOISE Turchese 18

ControlKey

L'oggetto ControlKey definisce le costanti per inviare i tasti di controllo del cursore e i comandi dell'host utilizzando il metodo sendKeys. Sono disponibili costanti per i tipi di host seguenti:


IBM 3270

Parola chiave Descrizione
ALTVIEW Alterna visualizzazione
ATTN Attenzione
BACKSPACE Backspace
BACKTAB Tab indietro
CLEAR Cancella o cancella display
CURSOR_SELECT Selezione cursore
DELETE_CHAR Elimina, elimina carattere
DELETE_WORD Elimina parola
DEST_BACK Backspace distruttivo
DEV_CANCEL Annulla dispositivo
DOWN Cursore giù
DSPSOSI Visualizza SO/SI
DUP Duplica campo
END_FILE Fine del campo
ENTER Invio
ERASE_EOF Cancella fino a fine del campo
ERASE_FIELD Cancella campo
ERASE_INPUT Cancella input
FIELD_MARK Field Mark
HOME Cursore in posizione Home
IDENT Identità
INSERT Inserisci
LEFT_ARROW Cursore a sinistra
LEFT2 Due posizioni verso sinistra
NEW_LINE Nuova riga
PA1 - PA3 PA1 - PA3
PF1 - PF24 PF1 - PF24
PAGE_DOWN Pagina giù
PAGE_UP Pagina su
RESET Ripristina, ripristina terminale
RIGHT2 Due posizioni verso destra
RIGHT_ARROW Cursore a destra, destra
SYSTEM_REQUEST Richiesta di sistema
TAB Tasto tabulazione
UP Cursore su

IBM 5250

Parola chiave Descrizione
ALTVIEW Alterna visualizzazione
ATTN Attenzione
AU1 - AU16 AU1 - AU16
BACKSPACE Backspace
BACKTAB Tab indietro
BEGIN_FIELD Inizio campo
CLEAR Cancella o cancella display
DELETE_CHAR Elimina, elimina carattere
DEST_BACK Backspace distruttivo
DOWN Cursore giù
DSPSOSI Visualizza SO/SI
DUP Duplica campo
END_FILE Fine del campo
ENTER Invio
ERASE_EOF Cancella fino a fine del campo
ERASE_FIELD Cancella campo
ERASE_INPUT Cancella input
FIELD_EXT Uscita campo
FIELD_MINUS Campo meno
FIELD_PLUS Campo più
FIELD_MARK Field Mark
HELP Richiesta guida
HEXMODE Modalità esadecimale
HOME Cursore in posizione Home
INSERT Inserisci
LEFT_ARROW Cursore a sinistra
NEW_LINE Nuova riga
PA1 - PA3 PA1 - PA3
PF1 - PF24 PF1 - PF24
PAGE_DOWN Pagina giù
PAGE_UP Pagina su
[stampare] Stampa
RESET Ripristina, ripristina terminale
RIGHT_ARROW Cursore a destra, destra
SYSTEM_REQUEST Richiesta di sistema
TAB Tasto tabulazione
UP Cursore su

VT

Parola chiave Descrizione
BACKSPACE Backspace
BREAK Interruzione
CLEAR Cancella o cancella display
CURSOR_SELECT Selezione cursore
DELETE_CHAR Elimina, elimina carattere
DOWN Cursore giù
EK_FIND Modifica ricerca tastierino
EK_INSERT Modifica inserimento tastierino
EK_NEXT Modifica tastierino successivo
EK_PREV Modifica tastierino precedente
EK_REMOVE Modifica rimozione tastierino
EK_SELECT Modifica selezione tastierino
END_FILE Fine del campo
ENTER Invio
F1 - F24 F1 - F24
HOLD In attesa
HOME Home
INSERT Ins
KEYPAD_COMMA Virgola tastierino
KEYPAD_DOT Decimale tastierino
KEYPAD_ENTER Invio tastierino
KEYPAD_MINUS Meno tastierino
KEYPAD0 - KEYPAD9 0 tastierino - 9 tastierino
LEFT_ARROW Cursore a sinistra
PF1 - PF20 PF1 - PF20
PAGE_DOWN Pagina giù
PAGE_UP Pagina su
RESET Ripristina, ripristina terminale
RETURN Invio, ritorno a capo
RIGHT_ARROW Cursore a destra, destra
TAB Tasto tabulazione
UDK16 - UDK20 Tasto 6 definito dall'utente - Tasto 20 definito dall'utente
UP Cursore su

UTS

Parola chiave Descrizione
BACKSPACE Backspace
BACKTAB Tab indietro
CHAR_ERASE Cancella il carattere nella posizione del cursore e sposta il cursore in avanti.
CLEAR_DISPLAY Cancella il display
CLEAR_EOD Cancella fino a fine display
CLEAR_EOF Cancella fino a fine campo
CLEAR_EOL Cancella fino a fine riga
CLEAR_FCC Cancella il carattere di controllo del campo
CLEAR_HOME Cancella il contenuto del display e porta il cursore in posizione Home
CONTROL_PAGE Attiva/Disattiva la pagina di controllo
DELETE_LINE Elimina la riga che contiene il cursore e sposta di una riga in alto le righe rimanenti
DELIN_LINE Elimina il carattere nella posizione del cursore e sposta a sinistra i caratteri rimanenti sulla riga.
DELIN_PAGE Elimina il carattere nella posizione del cursore e sposta a sinistra i caratteri rimanenti sulla pagina.
DOWN Sposta il cursore in basso di una riga. A capo in fondo.
DUP_LINE Crea una copia della riga corrente e sovrascrive la riga successiva con il duplicato.
END_FIELD Sposta il cursore alla fine del campo corrente.
END_PAGE Sposta il cursore alla fine della pagina corrente.
EURO Inserisce il carattere Euro
F1 - F22 Tasti funzione F1-F22
HOME Sposta il cursore all'inizio della pagina corrente (riga 1, colonna 1)
INSERT Attiva/Disattiva la modalità inserimento/sovrascrittura.
INSERT_IN_LINE Inserisce uno spazio alla posizione del cursore e sposta a destra i caratteri rimanenti sulla riga. Il carattere nella colonna all'estrema destra della riga viene rimosso.
INSERT_IN_PAGE Inserisce uno spazio alla posizione del cursore e sposta a destra i caratteri rimanenti sulla pagina. Il carattere nella colonna all'estrema destra di ogni riga viene rimosso.
INSERT_LINE Inerisce una nuova riga nella riga del cursore e sposta in basso le righe rimanenti. L'ultima riga nella pagina viene rimossa.
LEFT_ARROW Sposta il cursore di una posizione a sinistra e sposta a capo se necessario.
LOCATE_FCC Trova il carattere di controllo del campo successivo sullo schermo.
MSG_WAIT Recupera i messaggi in coda al terminale.
RETURN A capo
RIGHT_ARROW Sposta il cursore di una posizione a destra e sposta a capo se necessario.
SOE Inserisce il carattere di inizio immissione
START_OF_FIELD Sposta il cursore all'inizio del campo.
START_OF_LINE Sposta il cursore alla colonna 1 della riga corrente.
TAB Sposta il cursore alla posizione di tabulazione successiva sullo schermo.
TOGGLE_COL_SEP Attiva/Disattiva l'attributo del separatore di colonna.
TOGGLE_STRIKE_THRU Attiva/Disattiva l'attributo di testo barrato sulla cella dati corrente.
TOGGLE_UNDERLINE Attiva/Disattiva l'attributo di testo sottolineato sulla cella dati corrente.
TRANSMIT Trasmette i dati dei campi cambiati all'host.
UNLOCK Invia il tasto UNLOCK all'host.
UP Sposta il cursore in alto di una riga, a capo se necessario.

DataCell

L'oggetto DataCell fornisce informazioni su una posizione particolare su uno schermo di terminale.

Metodo Descrizione
getPosition() Restituisce la posizione di questa cella dati sullo schermo.
Restituisce
{Position} La posizione della cella dati sullo schermo
getChar() Ottiene il carattere associato alla cella.
Restituisce
{String}Il carattere associato alla cella.
getAttributes() Restituisce il set di attributi specificato per questa istanza della cella dati. Vedere AttributeSet.
Restituisce
{AttributeSet} Il set di attributi specificato per questa istanza della cella dati.
getForegroundColor() Restituisce il colore del primo piano, come definito nell'oggetto Color, per questa cella dati.
Restituisce
{Number} Colore in primo piano per questa cella dati. Il colore è definito nell'oggetto Color.
getBackgroundColor() Restituisce il colore dello sfondo, come definito nell'oggetto Color, per questa cella dati.
Restituisce
{Number} Colore di sfondo per questa cella dati. Il colore è definito nell'oggetto Color.
toString Converte la cella dati interna in una stringa.
Restituisce
{String}La rappresentazione in formato stringa di una cella dati.
isFieldDelimiter() Verifica se questa cella rappresenta un delimitatore di campo.
Restituisce
{Boolean} True se la cella è un delimitatore di campo, altrimenti false.

Dimension

Rappresenta le dimensioni dello schermo o l'area dello schermo.

Metodo Descrizione
Dimension(rows,cols) Crea una nuova istanza Dimension.
Parametri
{Number} rows dimensione delle righe sullo schermo
{Number} cols dimensione delle colonne sullo schermo

Field

Utilizzare l'oggetto Field, insieme a FieldList, per ottenere le informazioni presenti in un campo sullo schermo.

Metodo Descrizione
getAttributes() Restituisce il set di attributi specificato per questa istanza del campo. Vedere AttributeSet.
Restituisce
{AttributeSet} Il set di attributi per questo campo.
getForegroundColor() Restituisce il colore in primo piano del campo.
Restituisce
{Number} Colore in primo piano per questo campo. Questi valori sono definiti nell'oggetto Color.
getBackgroundColor() Restituisce il colore dello sfondo del campo.
Restituisce
{Number} Colore di sfondo per questo campo. Questi valori sono definiti nell'oggetto Color.
getStart() Restituisce la posizione iniziale del campo. La posizione iniziale è la posizione del primo carattere del campo. Alcuni tipi di host utilizzano una posizione del carattere per memorizzare attributi a livello di campo. In questo caso la posizione dell'attributo non è considerata la posizione iniziale.
Restituisce
{Position} Posizione iniziale del campo.
Genera
{RangeError} Per campi con lunghezza pari a zero.
getEnd() Restituisce la posizione finale del campo. La posizione finale è la posizione nello spazio di presentazione che contiene l'ultimo carattere del campo.
Restituisce
{Position} Posizione finale del campo.
Genera
{RangeError} Per campi con lunghezza pari a zero.
getLength() Restituisce la lunghezza del campo. Per i tipi di host che utilizzano una posizione del carattere per memorizzare gli attributi del campo, la lunghezza del campo non include la posizione dell'attributo del campo
Restituisce
{Number} Lunghezza del campo.
getDataCells() Ottiene le celle dati che compongono questo campo. Vedere DataCell.
Restituisce
{DataCell[]} Le celle dati che compongono questo campo.
getText() Ottiene il testo dal campo.
Restituisce
{String} Il testo del campo.
setText() Imposta il testo del campo. Per alcuni tipi di host, ad esempio VT, il testo viene trasmesso immediatamente all'host, ma in altri tipi di host il testo non viene trasmesso all'host fino a quando viene richiamato il tasto AID. Se il testo è più breve del campo, viene inserito nel campo dell'host e il resto del campo viene cancellato. Se il testo è più lungo del campo dell'host, verrà inserito nel campo tutto il testo che può essere contenuto.
Parametro
{String} Testo da impostare nel campo.
Genera
{Error} Se il campo è protetto.
clearField() Cancella il campo corrente in modo specifico all'emulazione.
Genera
{Error} Se il campo è protetto o se la cancellazione non è supportata.
getPresentationSpace() Ottiene l'oggetto PresentationSpace che ha creato questo campo.
Restituisce
{PresentationSpace} Elemento superiore di questa istanza del campo.
toString() Crea una una descrizione del campo.
Restituisce
{String} Una conversione del campo leggibile dall'utente.

FieldList

Utilizzare l'oggetto FieldList, insieme all'oggetto Field, per ottenere informazioni sull'elenco dei campi.

Metodo Descrizione
getPresentationSpace() Ottiene l'oggetto PresentationSpace che ha creato questo campo.
Restituisce
{PresentationSpace} Elemento superiore di questa istanza del campo.
findField(position, text, direction) Restituisce il campo che contiene il testo specificato. La ricerca inizia nella posizione specificata e continua in avanti o indietro. Se una stringa comprende più campi, viene restituito il campo che contiene la posizione iniziale. Nella ricerca in avanti, la ricerca non andrà a capo all'inizio dello schermo. Nella ricerca all'indietro, la ricerca non andrà a capo alla fine dello schermo.
Parametri
{Position} Posizione dalla quale iniziare la ricerca. Vedere l'oggetto Position.
{String} Il testo da cercare (facoltativo). Se non fornito, restituisce il successivo campo a destra della posizione specificata o sotto di essa.
{Number} direzione della ricerca (facoltativo). Utilizzare PresentationSpace. Costanti SearchDirection per questo parametro. Ad esempio, PresentationSpace.SearchDirection.FORWARD o PresentationSpace.SearchDirection.BACKWARD. Se questo parametro non viene fornito, la ricerca è in avanti.
Restituisce
{Field} contenente la stringa o null se non viene trovato un campo che soddisfa i criteri specificati.
Genera
{RangeError} Se la posizione è al di fuori dell'intervallo.
get(index) Ottiene il campo all'indice specificato.
Parametri
{Number} Indice nell'elenco dei campi.
Restituisce
{Field} situato all'indice specificato.
Genera
{RangeError} Se l'indice è al di fuori dell'intervallo.
isEmpty() Determina se l'elenco dei campi è vuoto.
Restituisce
{Boolean} True se l'elenco è vuoto.
size() Indica il numero di campi nell'elenco.
Restituisce
{Number} Il numero di campi.
toString() Crea una una descrizione dell'elenco dei campi.
Restituisce
{String} Una conversione dell'elenco di campi leggibile dall'utente.

FileTransfer

Utilizzare l'oggetto FileTransfer per elencare e trasferire i file fra il sistema host e il client.

L'API di trasferimento dei file di Host Access for the Cloud astrae le convenzioni del percorso del file utilizzate dalle diverse implementazioni di file host. Seguire i formati dei percorsi URL o del file system Linux durante la formattazione dei percorsi di file utilizzati dall'API. Ad esempio, /root/directory/file.

È importante attenersi alle regole specifiche dei sistemi host, ad esempio i caratteri consentiti o la lunghezza dei nomi.

Nota

I browser impongono limitazioni di sicurezza considerevoli sulla possibilità di interazione di Javascript con i file system dei client.

Metodo Descrizione
getHostFileListing(remotePath)() Richiede un elenco di file host. Se viene omesso RemotePath, viene visualizzato un elenco di file per la directory di lavoro remota corrente.
Parametri
{String} (facoltativo) Se è specificato, si otterrà un elenco di file per il percorso remoto specificato. Se non è specificato, si otterrà un elenco di file per la directory di lavoro remota corrente.
Restituisce
{Promise} Si risolve in una matrice di oggetti HostFile contenuti in remoteName. Rifiutato se non è possibile leggere il percorso remoto.
sendFile(localFile, remoteName) Invia il file specificato all'host.
Parametri
{File} Oggetto file Javascript che punta al file locale da inviare.
{String} (facoltativo) Nome file remoto completo, come consentito dal sistema remoto (Unix, Windows, MVS, VAX).
Restituisce
{Promise} completato con un oggetto HostFile che rappresenta il file inviato correttamente. Rifiutato se si è verificato un errore nell'invio del file.
getDownloadURL(remoteName) Costruisce un collegamento per scaricare un file dal sistema host.
Parametri
{String} Nome file remoto completo, come consentito dal sistema remoto (Unix, Windows, MVS, VAX).
Restituisce
{URL} che può essere utilizzato per recuperare il file dal server di sessione di Host Access for the Cloud.
setTransferOptions(options) Imposta le opzioni di trasferimento per la sessione FileTransfer corrente. Le opzioni di trasferimento vengono applicate a tutti i trasferimenti futuri fino a quando la sessione viene chiusa o sostituita da un'altra chiamata a setTransferOptions.
Parametri
{JSON} vedere FileTransferOptions per i nomi e i valori consentiti.
Restituisce
{Promise} completata quando la chiamata viene completata. Rifiutato se si è verificato un errore nell'impostazione delle opzioni.
cancel() Annulla il trasferimento del file in corso.
Parametri
{String} Nome file remoto completo, come consentito dal sistema remoto (Unix, Windows, MVS, VAX).
Restituisce
{Promise} completata quando la chiamata viene completata. Rifiutata se si è verificato un errore nell'annullamento del trasferimento.

FileTransferFactory

Per tutte le macro è disponibile un oggetto fileTransferFactory. Se per la sessione sono configurati dei trasferimenti di file, è possibile usarlo per ottenere un riferimento all'oggetto FileTransfer.

Metodo Descrizione
getIND$File() Restituisce un oggetto FileTransfer per l'interazione con il tipo Ind$File configurato per la sessione.
Restituisce
{FileTransfer}
Genera
{Error} Se la sessione non è stata configurata per consentire i trasferimenti IND$File.

FileTransferOptions

Specifiche dell'oggetto opzioni di trasferimento file. Esempio:
`fileTransfer.setTransferOptions({ transferMethod : 'ascii' });```

Metodo Descrizione
transferMethod {String}Valori consentiti:
  • "ascii"
  • "binary"

HostFile

Un oggetto HostFile rappresenta un file nel file system host.

Metodo Descrizione
getName() Ottiene il nome del file.
Restituisce
{String} il nome del file.
getParent() Ottiene il padre di questo file host..
Restituisce
{String} l'elemento superiore di questo file host. Il risultato dipende dal tipo di host. Ad esempio in TST si tratta del nome del catalogo nel quale risiede il file.
getSize() Le dimensioni in byte del file.
Restituisce
{Number} le dimensioni del file in byte.
getType() Il tipo di file rappresentato.
Restituisce

HostFileType

L'oggetto HostFileType definisce le costanti per determinare il tipo di oggetto HostFile.

Valore Descrizione
FILE Rappresenta un file nel sistema host.
DIR Rappresenta una directory nel sistema host.
UNKNOWN Rappresenta un file host di origini sconosciute.

OIA

Interfaccia Operator Information Area (OIA). L'oggetto OIA restituisce i valori definiti nell'oggetto OIAStatus.

Metodo Descrizione
getStatus () Restituisce il set di flag di stato attivi. Vedere StatusSet.
Restituisce
{StatusSet} Contenente le informazioni sullo stato.
getCommErrorCode() Restituisce il codice di errore di comunicazione corrente.
Restituisce
{Number} il codice di errore di comunicazione corrente. Se non ne esiste uno, verrà restituito 0.
getProgErrorCode() Restituisce il codice di errore del programma corrente..
Restituisce
{Number} il codice di errore del programma corrente. Se non ne esiste uno, verrà restituito 0.

OIAStatus

OIAStatus Descrizione
CONTROLLER_READY Controller pronto
A_ONLINE Online con una connessione non SNA
MY_JOB Connesso a un'applicazione host
OP_SYS Connesso a un SSCP (SNA)
UNOWNED Non connesso
TIME Tastiera disattivata
SYS_LOCK Blocco sistema dopo tasto AID
COMM_CHECK Controllo comunicazione
PROG_CHECK Controllo programma
ELSEWHERE Sequenza di tasti non valida nella posizione del cursore.
FN_MINUS Funzione non disponibile
WHAT_KEY Sequenza di tasti non valida
MORE_THAN Troppi caratteri immessi nel campo
SYM_MINUS Immesso simbolo non disponibile
INPUT_ERROR Errore di input dell'operatore (solo 5250)
DO_NOT_ENTER Non immettere
INSERT Cursore in modalità inserimento
GR_CURSOR Cursore in modalità grafica
COMM_ERR_REM Promemoria errore di comunicazione
MSG_WAITING Indicatore di messaggio in attesa
ENCRYPT La sessione è crittografata
NUM_FIELD Carattere non valido in campo esclusivamente numerico

Position

Metodo Descrizione
Position(row,col) Crea una nuova istanza Position.
Parametri
{Number} row coordinata della riga sullo schermo
{Number} col coordinata della colonna sullo schermo

PresentationSpace

Utilizzare l'oggetto PresentationSpace per interagire con lo schermo del terminale. Le interazioni disponibili includono l'impostazione e l'ottenimento della posizione del cursore, l'invio di chiavi e la lettura del testo.

Metodo Descrizione
getCursorPosition() Restituisce un'istanza di Position che rappresenta la posizione corrente del cursore. In una sessione non connessa la posizione del cursore è 0,0.
Restituisce
{Position} posizione corrente del cursore
setCursorPosition(position) Sposta il cursore dell'host alla posizione specificata nella riga e nella colonna. Per alcuni host, ad esempio VT, l'host potrebbe limitare gli spostamenti del cursore.
Parametri
{Position} Position nuova posizione del cursore.
Restituisce
Nessun valore
Genera
{RangeError} Se la posizione non è valida sullo schermo corrente.
isCursorVisible() Verifica che il cursore sia attualmente visibile nello spazio di presentazione. Se la sessione non è connessa il cursore è considerato non visibile.
Restituisce
{Boolean} True se il cursore è visibile. False se il cursore non è visibile.
sendKeys(keys) Trasmette una stringa di testo o ControlKey all'host nella posizione corrente del cursore nello spazio di presentazione. Se il cursore non è nella posizione desiderata, utilizzare prima la funzione setCursorPosition.
La stringa di testo può contenere qualsiasi numero di caratteri e oggetti ControlKey.
Ad esempio: "myname" + ControlKey.TAB + "mypass" + ControlKey.ENTER trasmetterà un ID utente, il tasto Tab per passare al campo successivo, una password, quindi il tasto Invio.
Se è necessario trasmettere una parentesi quadra, raddoppiare le parentesi ([[ o ]]).
Parametri
{String} testo dei tasti e/o tasti di controllo da trasmettere
getText(start,length) Restituisce una stringa che rappresenta un'area lineare dello spazio di presentazione. Se vengono rilevati limiti di riga, non vengono inseriti caratteri di nuova riga.
Parametri
{Position} posizione iniziale dalla quale recuperare il testo
{Number}lunghezza del numero massimo di caratteri da restituire. Se il parametro della lunghezza causa il superamento dell'ultima posizione dello spazio di presentazione, verranno restituiti solo i caratteri fino all'ultima posizione.
Restituisce
{String) che rappresenta un'area lineare dello spazio di presentazione che potrebbe essere vuoto se la sessione non è connessa.
Genera
{RangeError} Se la posizione o la lunghezza non sono valide sullo schermo corrente.
getSize() Ottiene le dimensioni dello schermo come un oggetto Dimension.
Restituisce
{Dimension} Contenente il numero di righe e colonne. Le dimensioni dello schermo sono [row:0, col:0] se la sessione non è connessa.
getDataCells(start, length) Restituisce istanze di DataCell in cui il primo membro sarà la posizione specificata dal parametro start. Il numero massimo di istanze di DataCell nell'elenco è specificato dal parametro length.
Parametri
{Position} posizione iniziale sullo schermo dell'host in cui recuperare le istanze di DataCell. Vedere Position.
{Number} lunghezza del numero massimo di istanze di DataCell da recuperare. Se non è specificato, restituisce DataCell dalla posizione iniziale fino alla fine dello schermo.
Restituisce
{DataCell[]} Istanze che possono essere vuote se la sessione non è connessa. Se la posizione non è specificata, restituisce tutti i DataCell. Se la lunghezza non è specificata, restituisce i DataCell dalla posizione iniziale alla fine dello schermo.
Genera
{RangeError}se l'inizio o la lunghezza sono al di fuori dell'intervallo.
getFields() Restituisce un elenco di campi nello spazio di presentazione. Se il tipo di host non supporta i campi o lo schermo corrente non è formattato, il valore restituito sarà sempre un elenco vuoto. Vedere FieldList.
Restituisce
{FieldList} di campi definiti dall'host nello spazio di presentazione.

Session

L'oggetto Session è il punto di ingresso principale per l'interazione con l'host. Contiene funzioni per la connessione, la disconnessione e l'ottenimento dell'oggetto PresentationSpace.

Metodo Descrizione
connect() Connette all'host configurato. Se necessario, utilizzare wait.forConnect() per bloccare l'esecuzione della macro fino a quando non viene eseguita la connessione alla sessione.
Restituisce
Nessun valore
disconnect() Disconnette dall'host configurato. Se necessario, utilizzare wait.forDisconnect() per bloccare l'esecuzione della macro fino a quando la sessione è connessa.
Restituisce
Nessun valore
isConnected() Determina se la connessione all'host è stata stabilita.
Restituisce
{Boolean} true se la connessione all'host è stata stabilita; in caso contrario, false.
getPresentationSpace() Fornisce accesso all'istanza di PresentationSpace per questa sessione.
Restituisce
{PresentationSpace} istanza associata a questa sessione.
getDeviceName() Restituisce il nome del dispositivo per una sessione connessa oppure una stringa vuota se la sessione viene disconnessa o non dispone del nome del dispositivo.
Restituisce
{String} Il nome del dispositivo connesso.
getType() Restituisce il tipo di sessione host. Vedere SessionType.
Restituisce
{String} Il tipo di sessione host.
setDeviceName() Fornisce un modo per modificare il nome del dispositivo in un'istanza della sessione.
Parametri
{String} name Nome del dispositivo da utilizzare nella connessione a un host.
Genera
{Error}Se viene effettuato un tentativo di impostare il nome del dispositivo mentre la sessione è connessa.
getOIA() Fornisce accesso all'istanza di OIA per questa sessione.
Restituisce
{OIA} Associata alla sessione

SessionType

Costanti utilizzate per identificare il tipo di host con il quale viene stabilita la connessione. Vedere l'oggetto Session.

Tipo host Descrizione
IBM_3270 Indica una sessione di terminale IBM 3270
IBM_5250 Indica una sessione di terminale IBM 5250
VT Indica una sessione VT

StatusSet

È possibile utilizzare l'oggetto StatusSet per codificare lo stato di OIA. L'oggetto StatusSet restituisce i valori definiti nell'oggetto OIAStatus e, quando utilizzati insieme, è possibile ottenere informazioni sullo stato da OIA.

Metodo Descrizione
contains(statusFlag) Determina se il set contiene il flag di stato specificato dalle costanti OIAStatus.
Parametri
{Number} statusFlag di stato da controllare
Restituisce
{Boolean}True se il flag di stato è presente nel set.
isEmpty() Determina se il set di stati è vuoto.
Restituisce
{Boolean}True se il set è vuoto.
size() Indica il numero di flag di stato nel set.
Restituisce
{Number} Il numero di stati.
toArray() Converte il set di stati interno in una matrice.
Restituisce
{Object []} Matrice di flag di stato nel set.
toString() Converte il set di stati interno in una stringa.
Restituisce
{String} Nomi delimitati da spazi dei flag di stato nel set.
forEach(callback, thisArg) Funzione per reiterare ogni elemento nel set di stati.
Parametri
{forEachCallback} Richiamata per eseguire l'operazione specifica. Chiamato con il nome di ogni stato nel set.
forEachCallback(string, thisArg) Una funzione di richiamata fornita dall'utente in cui specificare il comportamento, da usare come parametro di richiamata per forEach.
Parametri
{String} String Il nome dello stato nel set di stati.
{Object} thisArg Puntatore facoltativo a un oggetto di contesto.

Interfaccia utente

L'oggetto User Interface fornisce le funzioni per l'interazione con l'utente, la richiesta di informazioni e la visualizzazione di informazioni di base. L'oggetto UI è reso disponibile automaticamente nella macro come variabile "ui".

Nota

Importante: Tutte le funzioni dell'interfaccia utente devono essere precedute dalla parola chiave "yield". Questo consente alla macro di bloccare l'esecuzione fino a quando sono soddisfatte le condizioni della funzione UI.
[parameter] denota un parametro facoltativo.

Metodo Descrizione
prompt(message,[defaultAnswer], [mask]) Richiede all'utente di inserire informazioni nell'interfaccia utente.
Parametri
{String} titolo del messaggio da visualizzare all'utente. Impostazione di default: stringa vuota.
{String} defaultRisposta da utilizzare se l'utente non inserisce l'informazione richiesta. Impostazione di default: stringa vuota
{Boolean} la maschera indica se nascondere il prompt (come con la password)
Restituisce
{Promise} Completata quando l'utente chiude la finestra di dialogo. Restituisce l'input dell'utente quando sceglie "OK", null quando sceglie "Annulla".
message([message]) Visualizza un messaggio nell'interfaccia utente.
Parametri
{String} messaggio da visualizzare all'utente. Impostazione di default: stringa vuota.
Restituisce
{Promise} Completata quando l'utente chiude la finestra del messaggio.

Wait

Utilizzare l'oggetto Wait per attendere un particolare stato di una sessione o di uno schermo. Ad esempio, è possibile attendere che il cursore si trovi in una determinata posizione o che in una certa posizione sia presente il testo sia presente un testo prima di continuare l'esecuzione della macro.

Le funzioni Wait sono spesso utilizzare insieme alle funzioni asincrone quali connect() e sendKeys().

Nota

Tutte le funzioni accettano i timeout come parametro facoltativo e hanno un valore di timeout di default di 10 secondi (10000 ms).
Importante: tutte le funzioni Wait devono essere precedute dalla parola chiave "yield". Questo consente alla macro di bloccare l'esecuzione fino a quando sono soddisfatte le condizioni della funzione Wait.
[parameter] denota un parametro facoltativo.

Metodo Descrizione
setDefaultTimeout(timeout) Imposta il valore di timeout di default per tutte le funzioni.
Parametri
{Number} timeout di default da utilizzare per tutte le funzioni Wait in millisecondi.
Restituisce
{None}
Genera
{RangeError} Se il timeout specificato è minore di zero.
forConnect([timeout]) Attende il completamento di una richiesta di connessione.
Parametri
{Number} in millisecondi.
Restituisce
{Promise} Completata se la sessione è già connessa o quando si verifica la connessione. Rifiutata in caso di timeout.
forDisconnect([timeout]) Attende il completamento di una richiesta di disconnessione.
Parametri
{Number} timeout in millisecondi.
Restituisce
{Promise} Completata se la sessione è già disconnessa o quando si verifica la disconnessione. Rifiutata in caso di timeout.
forFixedTime([timeout]) Attende incondizionatamente per il tempo stabilito. Il tempo è stabilito in millisecondi (ms).
Parametri
{Number} timeout in millisecondi.
Restituisce
{Promise} Completata quando il tempo scade.
forScreenChange([timeout]) Attende la modifica della schermata host. Questa funzione restituisce il risultato quando viene rilevato un aggiornamento di schermata. Non fornisce alcuna garanzia in merito al numero di aggiornamenti successivi che possono essere ricevuti prima che la schermata venga completata. Si consiglia di prolungare l'attesa finché il contenuto della schermata soddisfi determinati criteri di interruzione noti.)
Parametri
{Number} timeout in millisecondi.
Restituisce
{Promise} Risolto se lo schermo cambia. Rifiutata in caso di timeout.
forCursor(position, [timeout]) Attende che il cursore arrivi alla posizione specificata.
Parametri
{Position} La posizione che specifica la riga e la colonna
Restituisce
{Promise} Completata se il cursore è già posizionato o quando ha raggiunto la posizione. Rifiutata in caso di timeout.
forText(text, position, [timeout]) Attende che il testo si trovi in una posizione specifica sullo schermo
Parametri
{String} testo previsto
{Position} posizione che specifica la riga e la colonna
{Number} timeout in millisecondi
Restituisce
{Promise} Completata se il testo è già nella posizione specificata o quando ha raggiunto la posizione. Rifiutata in caso di timeout.
Genera
{RangeError} se la posizione non è valida.
forHostPrompt(text, column,[timeout]) Attende un prompt dei comandi posizionato in una colonna specifica sullo schermo.
Parametri
{String} testo del prompt previsto
{Position} colonna in cui è previsto il cursore
{Number} timeout in millisecondi.
Restituisce
{Promise} Completata se le condizioni sono già soddisfatte o quando vengono soddisfatte. Rifiutata in caso di timeout.
Genera
{RangeError} se la colonna è al di fuori dell'intervallo.
forHostSettle([settleTime],[timeout]) NOTA: wait.forHostSettle deve essere utilizzato solo se altre funzioni di attesa più mirate risultano insufficienti.
Controlla i dati dello schermo in entrata e risolve settleTime ms dopo l'ultimo aggiornamento e lo sblocco della tastiera. Questa funzione è utile quando i dati arrivano in più pacchetti e si desidera essere certi che sia stato ricevuto l'intero schermo prima di procedere.
Parametri
{Number} tempo di attesa dopo l'ultimo aggiornamento per essere certi che non vengano ricevuti altri dati in modo imprevisto. Il default è 200 millisecondi.
{Number} timeout in millisecondi.
Restituisce
{Promise}Completata quando il tempo di risoluzione è scaduto dopo la ricezione dell'ultimo aggiornamento dello schermo e lo sblocco della tastiera.