Azioni esterne lato client
Dal pannello di configurazione database in Konga è possibile definire un’azione esterna lato client, che equivale all’esecuzione di uno script scritto in linguaggio Python a seguito di un determinato evento.
Il contesto di esecuzione
Per tutti i tipi di eventi per cui è possibile definire un’azione esterna, lo script in questione dovrà ottenere come prima cosa un contesto di esecuzione su cui operare per ricevere i parametri (univoci per l’evento) e per impostare il o i valori di ritorno.
Per ottenere il contesto di esecuzione, è sufficiente invocare la funzione kongautil.get_context()
del modulo kongautil
, disponibile
sono all’interno di Konga:
import kongautil
context = kongautil.get_context()
Questa funzione ritornerà un oggetto di classe kongautil.ScriptContext
; fare riferimento alla sua documentazione per maggiori informazioni.
Tipologie di azioni esterne
Di seguito elenchiamo i parametri e il possibile valore di ritorno da gestire tramite il contesto di esecuzione, a seconda del tipo di azione esterna.
Al momento è definito un unico tipo di azione esterna.
Post processa documento elettronico
L’azione viene eseguita al momento della generazione di un documento elettronico, e permette di modificare l’XML prima di salvarlo nel record della tabella EB_DocumentiElettronici.
Parametri:
xml
: oggetto di classexml.etree.Element
corrispondente all’elemento con tagFatturaElettronica
(elemento radice) del documento elettronico generato da Konga.Valore di ritorno: oggetto di classe
xml.etree.Element
modificato.
Esempi
Di seguito riportiamo un esempio di script per l’azione esterna di tipo «Post processa documento elettronico»:
import kongautil
context = kongautil.get_context()
xml = context.params['xml']
node = xml.find('FatturaElettronicaHeader/DatiTrasmissione/IdTrasmittente/IdCodice')
node.text = '01234567890'
context.result = xml