documentFrame

Il widget documentFrame permette di costruire un frame con all’interno un documento in pdf o html, generato direttamente partendo da una risorsa di stampa o un template dell’applicativo.


La sintassi del documentFrame è la seguente:

frame.documentFrame(resource='fatt.fattura:html_res/mia_fattura',
                          pkey='^#FORM.pkey',
                          html=True,
                          letterhead_id='^.curr_letterhead_id',
                          missingContent='NO FATTURA',
                          _if='pkey', _delay=100)

Verrà così generata la stampa del documento relativo al record selezionato, utilizzando come carta intestata la letterhead_id presente al path indicato e la resource specificata. Il frame verrà però caricato solo se presente la pkey, e con un ritardo di 100 millisecondi (questo per consentire alla pagina di caricarsi correttamente). Se non sarà possibile effettuare la stampa verrà mostrato il missingContent, alternativamente ne verrà mostrato il contenuto in html.

Sarà quindi necessario definire una risorsa di stampa, che potrà essere sfruttata per modificare il layout della stampa o i record oggetto della stampa, o anche solo specificare a sua volta un template da utilizzare. In questo secondo caso la risorsa sarebbe limitata a queste poche righe di codice:

from gnr.web.gnrbaseclasses import TableScriptToHtml

class Main(TableScriptToHtml):

  record_template = 'fattura_template'

ovvero a indicare il record_template da utilizzare.

Si noti che il documento così generato non sarà salvato nella cache, bensi verrà effettivamente rigenerato ogni volta che si attiverà l’area designata, o al caricamento della pagina.


Parametri:

Nome parametro

Tipo

Descrizione

resource

T

Permette di indicare il percorso della risorsa da utilizzare per la stampa (es: fatt.fattura:html_res/fattura_template)

pkey

T

Permette di indicare la pkey o il path (es: pkey=”^#FORM.pkey”)

html

T

Se True, verrà mostrato l’html della risorsa stampata, altrimenti il pdf.

letterhead_id

T

Permette di indicare la carta intestata da utilizzare o il suo path (es: letterhead_id=”^.curr_letterhead_id”)

missingContent

T

Permette di indicare un testo da mostrare se la stampa non è presente (es: missingContent=”NO FATTURA”)

_if

T

Permette di indicare un parametro sulla base della cui esistenza innescare o meno la generazione del documento (es: _if=”pkey”)

_delay

L

Permette di indicare un ritardo in millisecondi (es: _delay=100)

Autore della sezione: Davide Paci