Italiano - English

Configure WebDAV with OpenERP 7.0

Table of Contents

    OpenERP 7.0
    1. Gestione dei permessi in OpenERP 7.0
    2. Resources, Expenses and TimeSheet in OpenERP 7.0
    3. Configure WebDAV with OpenERP 7.0
    4. Windows with WebDAV from OpenERP 7.0 over HTTPS/SSL
    Translation for this document is not available or is not complete,
    if you are intrested to receive information please write to

      This article explains how to configure Document Management and WebDav with OpenERP 7.0

    Installare WebDAV su OpenERP 7.0

    Prima di tutto bisogna installare il modulo Python per WebDav

    yum install pywebdav

    Modificare la il file di configurazione globale di openerp

    E' necessario inserire le seguenti righe nel file di configurazione globale di openerp, (solitamente openerp-server.conf).

    ##
    # WEBDAV Settings
    
    # Serve webdav over the http(s) servers
    enable = True
    
    # the directory that webdav will be served at this default val 
    # means that webdav will be on "http://your-server:8069/webdav/" 
    # or "https://your-server:443/webdav/" 
    vdir = webdav
    
    # Turn on the verbose messages of webdav
    verbose = True
    
    #Turn on the debugging messages of webdav
    debug = True

    Le ultime impostazione sono opzionali.

    Installare i moduli OpenERP

    E' necessario installare i moduli relativi alla gestione documentale e webdav. Installando: Shared Repositories (WebDAV). vengono anche installate tutte le dipendenze necessarie.

    Al termine della installazione OpenERP esegue la procedura automatica di configurazione delle cartelle e appare la voce Knowledge nel menu principale.

    A questo punto la connessione WebDav è disponibile ed è possibile accedere ai documenti con qualsiasi cliente di utilizzando l'indirizzo: https://TUO-SERVER:443/webdav/NOME-DB/Documents/

    Vedi l'articolo specifico per la connessione con Windows utilizzando "Connetti Unità di Rete"

    Salvare gli allegati su filesystem

    Con la gestione documentale è possibile allegare qualsiasi file a qualsiasi oggetto di OpenERP. Di defualt gli allegati vengono salvati nel Database. La gestione FTP dei documenti richiede il filesystem come deposito degli allegati, mentre con WebDAV l'impostazione filesystem non è obbligatoria.

    Per istruire OpenERP a salvare i gli allegati sul filesystem è necessario creare un parametro di sistema tramite

    • menu principale di OpenERP
    • >Impostazioni>Technical>Parametri>Parametri di Sistema
    • Crea un nuovo parametro con i seguenti valori:
      • Chiave: ir_attachment.location
      • Valore: file:///filestore

    Da questo momento OpenERP salva gli allegati sul filesystem alla posizione /root-di-openerp/filestore/nome-db/

    Per maggiori informazioni e un ottimo script per trasferire gli eventuali allegati inseriti in precedenza nel DB vedi: http://help.openerp.com/question/529/where-are-document-attachments-stored/

    Configurare le cartelle in OpenERP (per webdav e/o ftp)

    Le cartelle vengono impostate automaticamente alla installazione del modulo per la gestione documentale, tuttavia è possibile impostare la struttura delle cartelle a proprio piacimento da Menu Principale>Knowledge>Configurazione>Gestione Documentale>Cartelle (il menu è disponibile solo se si hanno i permessi  Funzionalità tecniche)

    Si distinguono le Cartelle statiche e le Cartelle per risorsa.

    Una cartella risorsa, è una cartella dinamica collegata ad un oggetto OpenERP. Ad esempio per creare (o impostare) una cartella che contine tutti i preventivi procedere come indicato in figura

    Create Resource Folder in Openerp

    Questa impostazione crea una cartella Documents/All Sales Order/ WebDav (o FTP) che conterrà una cartella per ogni preventivo generato in openerp. Il campo Name filed permette di impostare il nome della cartella dei singoli oggetti. Di default viene utilizzato il campo name, quindi nel caso dei preventivi le cartelle saranno Documents/All Sales Order/SO0001/, Documents/All Sales Order/SO0002/ ecc..

    E' possibile avere delle sotto cartelle risorse, ovvero che raccolgono gli oggetti collegati (vedi di seguito).

    File funzionali (Generated Files)

    In ogni cartella è possibile definire uno o piu' file funzionali che richiamano la stampa di uno dei report definiti sull'oggetto. Ad esempio si potrebbe evitare di salvare la stampa PDF di un preventivo ma avere un file funzionale che quando viene richiamato dall'utente esegue e stampa il report così come definito al momento attuale.

    Per impostare un file funzionale, procedere come indicato in figura:

    In questo modo si avranno dei files Documents/All Sales Order/SO0001/SO0001_PrintNow().pdf a zero byte che quando richiesti, visualizzano il report Quotation / Order in tempo reale.

    Si fa notare che il preventivo stampato corrisponde alla versione del preventivo al momento corrente, che potrebbe essere diversa dal preventivo stampato tempo indietro e magari inviato al cliente.

    Salvare il documento al momento della stampa

    Questa funzione è attiva solo sulle fatture ma è possibile attivarla su tutti ri report disponibili tra cui anche i Preventivi.

    Basta andare in Settings > Technical > Actions > Reports e definire un Attachment Prefix.

    E' bene associare questa opzione agli stati del documento e impostare Reload From Attachment, altrimenti verranno generati tanti PDF con nome identico quante stampe verranno lanciate sul documento. Inoltre i Client WebDAV vedono n copie identiche alla prima copia generata. D'altra parte l'opzione Reload From Attachment evita di salvare il report quindi in caso di modifiche al documento queste non verranno salvate nel PDF (ma verranno salvate nell'oggetto OpenERP). Insomma utilizzare queste opzioni con molta cautela.

    Creare una sotto cartella risorsa di una cartella risorsa

    Ad esempio si potrebbe desiderare una cartella Partners\Partner Quotations dove i preventivi sono solo quelli del singolo Partner. Quindi avere:

    Il collegamento avviene tramite la variabile “active_id” . Per ottenere questa funzionalità basta creare una cartella Partner Quotations come sotto cartella di Partners e definire il dominio (filtro) Domain: [( 'partner_id', '=', active_id )] per la cartella Partner Quotations.

    dove active_id è una variabile definita nella funzione e contiene l'id associato all'oggetto nella cartella padre (quindi in questo caso res_partner.id) mentre 'partner_id' è il nome del campo dell'oggetto Sales Order di OpenERP. Nel caso sia attiva l'opzione Vendite>Consenti indirizzi diversi> l'oggetto Preventivi (Tabella sale_order) ha anche il campo partner_invoice_id e partner_shipping_id quindi il dominio potrebbe essere:

    • Domain: ['|',( 'partner_id', '=', active_id ), ( 'partner_invoice_id', '=', active_id ) ]

    Oppure

    • Domain: ['|','|',( 'partner_id', '=', active_id ), ( 'partner_invoice_id', '=', active_id ), ('partner_shipping_id', '=', active_id)]

    Da notare l'utilizzo dell'operatore '|' (bitwise OR) è a notazione inversa infatti la seguente istruzione non funziona:

    [( 'partner_id', '=', active_id ), '|',( 'partner_invoice_id', '=', active_id ) ]
    

    Gli operatori logici hanno due operandi quindi la regola è

    operatore, operando1, operando2

    la seconda notazione è del tipo:

    operatore1, operatore2, operando1, operando2, operando3
    

    ed equivale a:

    operatore1, operando4, operando3

    dove:

    operando4 =(operatore2, operando1, operando2)
    

    che piu' leggibile in questo modo, anche se scritta con le parentesi non funziona:

    operatore1, (operatore 2, operando1,operando2), operando3
    
    vedi https://doc.openerp.com/trunk/server/api_models/ e cerca: Expressing a search domain (args) per ulteriori informazioni
    Vote this page:

    0 Comments:

    Leave your comment:

    Note:
    • Your email email will not be visible or used in any way, and is not required
    • Please keep comments relevant
    • Any content deemed inappropriate or offensive may be edited and/or deleted
    • HTML code is not allowed. Please use BBCode to format your text
      [b]bold[/b], [u]underline[/u], [i]italic[/i], [code]code[/code]
    The coding examples presented here are for illustration purposes only. The author takes no responsibility for end-user use
    This work is property of Pk Lab. You can use it for free but you must retain author's copyright.