.. _widgetpedia/genro/components/document_frame: 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. .. raw:: html
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. .. raw:: html
**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) | +------------------------+------+--------------------------------------------------+ .. sectionauthor:: Davide Paci