In questo esempio l'oggetto Autosignon viene utilizzato per creare una macro che usa le credenziali associate a un utente per ottenere un pass ticket da DCAS (Digital Certificate Access Server).
var macro = createMacro(function*()
{ 'use strict';
// Ottenere PresentationSpace per interagire con l'host
var ps = session.getPresentationSpace();
// Variabile per il pass ticket di accesso
var passTicket;
// ID applicazione di accesso
var appId = 'CICSV41A';
// Impostare il timeout predefinito per le funzioni "wait"
wait.setDefaultTimeout(10000);
// Inizio della macro generata
try {
yield wait.forCursor(new Position(24, 2));
// Ottenere un pass ticket da DCAS.
passTicket = yield autoSignon.getPassTicket(appId);
ps.sendKeys('cics');
ps.sendKeys(ControlKey.ENTER);
yield wait.forCursor(new Position(10, 26));
// Sostituire il nome utente generato con sendUserName(passTicket) ...
yield autoSignon.sendUserName(passTicket);
// ps.sendKeys('bvtst01' + ControlKey.TAB + ControlKey.TAB);
ps.sendKeys(ControlKey.TAB + ControlKey.TAB);
yield wait.forCursor(new Position(11, 26));
// Sostituire la password generata con sendPassword(passTicket) ...
yield autoSignon.sendPassword(passTicket);
// var userInput3 = yield ui.prompt('Password:', '', true);
// if (userInput3 === null) {
// throw new Error('Password not provided');
// }
// ps.sendKeys(userInput3);
ps.sendKeys(ControlKey.ENTER);
yield wait.forCursor(new Position(1, 1));
yield ui.message('Logged in. Log me off.');
ps.sendKeys('cesf logoff');
ps.sendKeys(ControlKey.ENTER);
} catch (error) {
yield ui.message(error);
}
//Fine della macro generata
});
// Eseguire la macro
return macro();