Automation Snippets

Iterate over the documents

#foreach( $doc in $documents )
...
#end

Move the documents into a target folder computed dinamically

#foreach( $doc in $documents )
#set( $fld = $doc.getValue('InvoiceNo') )
$DocTool.move($doc, "/Default/approved/$fld")
#end

The variable fld is declared with the extended attribute InvoiceNo of the document

Apply a stamp in the documents

#set($stampTool = $ClassTool.newInstance('stamp.automation.StampTool'))
#foreach( $doc in $documents )
$stampTool.stamp($doc, 'name_of_stamp', 'username')
#end

Print logs (useful for debuging)

#set($now = $ClassTool.newInstance('java.util.Date'))
$log.debug( "debug current date: $DateTool.format($now, true)")

#set($lastEvent = $WorkflowTool.getLastHistory($processId,'task.end'))
$log.info("The user that completed the last task was: $lastEvent.user.fullName")

$log.warn( "Just print a row in warn priority")
$log.error( "Just print a row in error priority")

The log is printed in the file <LDOC_HOME>/repository/logs/automation.log

Send documents to a set of recipients

#set( $recipients= ["Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.", "Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.", "Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo."] )
$MailTool.sendDocuments($documents, Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.', $recipients, 'subject', 'message');

Execute a routine

$AutomationTool.execute('Routine', $tenantId, $dictionary);