Automazione
L'automazione è un aspetto pervasivo della piattaforma LogicalDOC e rappresenta il modo che hai di programmare cose utilizzando un semplice linguaggio di scripting. A volte si desidera che LogicalDOC esegua la tua propria logica quando accade qualcosa di speciale durante un flusso di lavoro o in reazione ad eventi specifici che si verificano all'interno del repositorio: con l'automazione è possibile iniettare il proprio algoritmo per eseguire automaticamente le azioni corrette. Molti oggetti supportano l'automazione e consentono di definire script di automazione personalizzati (cartelle, flussi di lavoro, e-mail, ecc.)
Per cortesia leggi la guida Sintassi dell'Automatione per familiarizzare con la sintassi. Puoi anche consultare gli Esempi di Automazione.
Nel tuo script di automazione, puoi referenziare le seguenti variabili(alcune di esse sono disponibili solo in certi contesti):
CONTESTO DI AUTOMAZIONE: GENERALE | ||
---|---|---|
Variabile | Classe Java | Descrizione |
nl | String | rappresenta la nuova linea |
product | String | nome del prodotto |
locale | Locale | locale corrente |
CURRENT_DATE | Date | data corrente |
tenantId | long | identificatore del tenant corrente |
dictionary | Map | mappa con tutte le variabili (nome_variabile > valore) |
keys | Set | set di tutte le chiavi nel dizionario |
parameters | Map | mappa con tutti i parametri di invocazione della routine (nome_parametro > valore) |
parametersnames | Set | set di tutti i nomi dei parametri di invocazione della routine |
systemDictionary | Map | Una mappa transitoria e a livello di sistema utile per archiviare i dati tra le esecuzioni di automazione |
log | LogTool | dà accesso al registro di sistema |
I18N | I18NTool | gestisce le traduzioni |
DateTool | AutomationDateTool | manipolazione e formattazione delle date |
NumberTool | AutomationNumberTool | formatta un numero usando il formato dato |
CollectionTool | CollectionTool | metodi di utilità per lavorare con le collezioni |
RegexTool | RegexTool | funzioni per manipolare le espressioni regolari |
DocTool | DocTool | gestisce documenti e risorse correlate |
FolderTool | FolderTool | gestisce le cartelle e le risorse correlate |
ClassTool | ClassTool | crea nuove istanze di una determinata classe |
SystemTool | SystemTool | funzioni per l'interazione con il sistema operativo |
MailTool | MailTool | funzioni per inviare e-mail |
BarcodeTool | BarcodeTool | classe per estrarre il contenuto del codice a barre dai documenti |
StampTool | StampTool | applica timbri ai documenti |
SignTool | SignTool | firma digitalmente un documento con il certificato digitale dell'utente |
AutomationTool | AutomationTool | esegue una routine di automazione nello stesso thread di esecuzione o in uno nuovo |
ContextTool | ContextTool | metodi per accedere al contesto dell'applicazione |
SplitTool | SplitTool | consente la suddivisione di un PDF in segmenti utilizzando criteri diversi |
SecurityTool | SecurityTool | gestisce alcune operazioni relative alla sicurezza |
WorkflowTool | WorkflowTool | metodi per gestire i flussi di lavoro e interagire con essi |
WebsocketTool | WebsocketTool | funzioni di utilità per interagire con l'interfaccia utente |
UserTool | UserTool | metodi di utilità per gestire alcune operazioni relative all'utente |
SearchTool | SearchTool | metodi di utilità per eseguire ricerche |
FormTool | FormTool | metodi di utilità per operare con i moduli |
ReportTool | ReportTool | metodi di utilità per eseguire rapporti personalizzati |
CalendarTool | CalendarTool | strumento per interagire col calendario |
StringTool | StringTool | strumento per interagire con le stringhe |
CONTESTO DI AUTOMAZIONE: WORKFLOW | ||
---|---|---|
Variabile | Classe Java | Descrizione |
candidates | User | elenco degli utenti candidati dell'attività corrente |
documents | Document | elenco dei documenti allegati |
document | Document | primo elemento della lista documents |
task | Task | l'attività corrente |
taskName | String | nome dell'attività corrente |
initiator | User | l'utente che ha lanciato il workflow |
workflow | String | nome del workflow |
processId | String | identificatore del processo corrente |
definitionId | String | identificatore della definizione del processo |
actions | List | lista di possibili azioni(transazioni) dichiarate per l'attività corrente |
action | String | nome dell'azione(transizione) corrente, disponibile solo all'interno della transizione |
assignee | User | utente assegnato all'attività corrente |
CONTESTO DI AUTOMAZIONE: AZIONI PERSONALIZZATE | ||
---|---|---|
Variabile | Classe Java | Descrizione |
user | User | l'utente correntemente collegato |
session | la sessione corrente | |
document | il documento selezionato | |
documents | i documenti selezionati | |
folder | la cartella selezionata | |
folders | le cartelle selezionate |
CONTESTO DI AUTOMAZIONE: IMPORTAZIONE E-MAIL | ||
---|---|---|
Variabile | Classe Java | Descrizione |
l'email che viene importata | ||
account | l'account da cui viene importata l'e-mail | |
message | la rappresentazione del messaggio restituita dal server di posta | |
document | il documento che verrà utilizzato per salvare l'e-mail nel repository | |
documents | elenco di documenti che verranno utilizzati per salvare l'e-mail e i suoi allegati nel repository |
CONTESTO DI AUTOMAZIONE: OCR ZONALE | ||
---|---|---|
Variabile | Classe Java | Descrizione |
document | il documento in elaborazione | |
sample | il testo estratto dalla zona | |
value | l'oggetto valore (String, Date, Decimal ...) convertito dal campione | |
zone | la zona in elaborazione, utilizzare zone.value se si desidera modificare il valore che verrà salvato nel documento |
CONTESTO DI AUTOMAZIONE: AUTENTICAZIONE ESTERNA | ||
---|---|---|
Variabile | Classe Java | Descrizione |
ldapUser | l'utente che viene autenticato |
CONTESTO DI AUTOMAZIONE: MODULI WEB | ||
---|---|---|
Variabile | Classe Java | Descrizione |
form | il modulo in elaborazione | |
template | la classe documentale associata al modulo | |
sender | User | l'utente mittente |
responder | indirizzo e-mail del rispondente | |
title | il titolo del modulo web | |
description | descrizione del modulo web | |
footer | il piè di pagina del modulo web | |
message | corpo del messaggio di posta elettronica | |
prefilled | Map | una mappa contenente risposte precompilate (usata quando si invitano persone) |
CONTESTO DI AUTOMAZIONE: TIMBRI | ||
---|---|---|
Variabile | Classe Java | Descrizione |
stamp | il timbro che viene applicato | |
user | l'utente che applica il timbro | |
document | il documento da timbrare | |
parameters | mappa con tutti i parametri inseriti dall'utente (nome parametro > valore) | |
parametersnames | insieme di tutti i nomi dei parametri di input | |
page | Integer | numero di pagina corrente |
DATE | data corrente formattata utilizzando le impostazioni locali dell'utente | |
TIMESTAMP | timestamp corrente formattato utilizzando le impostazioni locali dell'utente |
CONTESTO DI AUTOMAZIONE: VALIDAZIONE | ||
---|---|---|
Variabile | Classe Java | Descrizione |
object | ExtensibleObject | l'oggetto in validazione, ad esempio un Document o un Folder |
event | History | l'evento corrente |
errors | mappa delle stringhe. Chiave è il nome dell'attributo, Valore è la descrizione dell'errore | |
attributeName | nome dell'attributo corrente in fase di convalida (disponibile solo nel validatore di attributo) | |
attribute | Attribute | l'attributo corrente in fase di convalida (disponibile solo nel validatore di attributi) |
value | valore dell'attributo corrente in fase di convalida (disponibile solo nel validatore di attributo) | |
error | ValidationError | mantiene la descrizione dell'errore dell'attributo corrente in fase di convalida (disponibile solo nel validatore di attributo) |
CONTESTO DI AUTOMAZIONE: INIZIALIZZAZIONE | ||
---|---|---|
Variabile | Classe Java | Descrizione |
object | ExtensibleObject | l'oggetto da inizializzare, ad esempio Document o Folder |
event | History | l'evento corrent |
attributeName | nome dell'attributo correntemente inizializzato | |
attribute | Attribute | attributo correntemente inizializzato |