Questo sito utilizza cookie per le proprie funzionalità e per inviarti pubblicità e servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Accedendo al link http://www.odoo-italia.org/index.php/home/cookie-policy puoi leggere in dettaglio le modalità di trattamento dei cookie da parte dell'Associazione Odoo Italia.

Benvenuto, Ospite
Nome utente: Password: Ricordami
Ricordati di dichiarare la versione di Odoo a cui riferisce la domanda

ARGOMENTO: Moduli con funzionalità opzionali

Moduli con funzionalità opzionali 3 Anni 9 Mesi fa #20511

  • gbonline
  • Avatar di gbonline
  • Offline
  • Senior Boarder
  • Messaggi: 45
  • Ringraziamenti ricevuti 1
  • Karma: 0
Salve
sto lavorando ad un modulo che come attività principale deve registrare in oe dei dati di sistemi di vendita.

A lato di questa attività vorrei permettere la gestione degli operatori e e vorrei fare in modo che il modulo HR e HR-timesheet se installati, mi permettono di aggiungere le registrazioni relative agli ingressi/uscite degli operatori.

Per cui la funzionalità di gestione operatori è opzionale, ma come posso fare per far si che sia attiva solo se anche i moduli hr e timesheet sono installati?

Ho trovato documentazione solamente relativa alla impostazione di "auto_install" e altre voci nel file __openerp_.py che permettono di specificare le dipendenze del modulo.
nel mio caso dovrei estendere la tabella "hr.employee" con alcuni campi, per cui volevo capire se si può fare ugualmente anche se il modulo hr non è installato, e quindi eseguire certe fz solo se sono installati i moduli .

qualche idea? consiglio?

grazie
Giorgio
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Moduli con funzionalità opzionali 3 Anni 9 Mesi fa #20512

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • Offline
  • Platinum Boarder
  • Messaggi: 1952
  • Ringraziamenti ricevuti 156
  • Karma: 46
Non ho proprio bene capito cosa vuoi fare, se metti il modulo hr come dipendenze in __openerp__ si installa, eventualmente potresti poi nascondere il menù HR (magari mettendogli un gruppo a cui non appartiene nessun utente) per fare sparire tutta la gestione utilizzando solo gli oggetti per le tue cose (ovviamente non puoi importare hr.employee ed esterndelo se non carichi hr (almeno ... non conviene farlo...)
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Moduli con funzionalità opzionali 3 Anni 9 Mesi fa #20514

  • gbonline
  • Avatar di gbonline
  • Offline
  • Senior Boarder
  • Messaggi: 45
  • Ringraziamenti ricevuti 1
  • Karma: 0
grazie per l'attenzione e la risposta

per spiegarmi meglio:
la funzione principale del modulo è gestire le rilevazioni dei sistemi di cassa, mentre la possibilità di registrare anche le attività degli operatori tipo in/out, sarà messa come opzione per il cliente che utilizza il modulo.
Per cui essendo una opzione, non voglio che sia obbligatorio installare i moduli hr e hr.timesheet, mentre il sistema delle dipendenze __openerp__ mi forza ad installare i moduli
per cui volevo sapere come si può fare a verificare runtime se i moduli sono installati e agire di conseguenza salvando i dati corrispondenti, cioè if modulo hr installato: salva else: pass
il problema che mi si apre è che dovendo aggiungere alcuni campi in più nella tabella hr tramite inherit, come si comporta oe se si eredita da un modulo non installato?
se non ci sono altre soluzioni, l'idea di nascondere il menu può essere interessante. ma la visibilità del menu si può condizionare?
grazie
Giorgio
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Moduli con funzionalità opzionali 3 Anni 9 Mesi fa #20515

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • Offline
  • Platinum Boarder
  • Messaggi: 1952
  • Ringraziamenti ricevuti 156
  • Karma: 46
Per nascondere il menù, la maniera pulita, è quella di fare in un tuo modulo l'override del menuitem aggiungendo un gruppo (clausola groups) a cui attivare la visualizzazione, cosa che è già presente ma ovviamente con i gruppi standard; il tuo group lo puoi creare all'interno del tuo modulo e non associargli nessun utente, quando deciderai di utilizzarlo li aggiungerai (cosa che puoi fare anche da codice, tipo caricare tutti gli utenti appartenenti agli user o manager HR).
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Moduli con funzionalità opzionali 3 Anni 9 Mesi fa #20516

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • Offline
  • Platinum Boarder
  • Messaggi: 1952
  • Ringraziamenti ricevuti 156
  • Karma: 46
Non li ho mai utilizzati però nel tuo caso potresti pacchettizzare in un modulo la versione che carica HR e metterla nel menù di configurazione, li trovi infatti delle "finte" spunte che sembrano opzioni, cliccandole di fatto vai ad installare o disinstallare moduli...
Forse nel tuo caso si può decidere tutto li che fare una gestione per decidere se caricare o meno hr. Di fatto una dipendenza o di serve o non ti serve, non l'ho mai vista in maniera condizionale... (fino ad ora :) )
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Moduli con funzionalità opzionali 3 Anni 9 Mesi fa #20522

  • Antoniov
  • Avatar di Antoniov
  • Online
  • Administrator
  • Messaggi: 1555
  • Ringraziamenti ricevuti 283
  • Karma: -115
Ho cercato senza successo di trovare una soluzione al tuo problema: mi ero imbattuto un paio di mesi fa in una situazione analoga.

Il programma di installazione legge il file __openerp__.py e esegue tramite la funzione builtin eval()
Tramite questa funzione crea un dictionary locale con il contenuto del file.

Questo è il pezzo di codice eseguito (esempio molto sempificato):
info = {'name': '', 'depends': '', ...}
info.update(eval('__openep__.py'))

Non puoi usare istruzione condizionali, perché eval() fallisce; inoltre per ragioni di sicurezza non ha accesso all'ambiente che la richiama.
Modificare module.py sarebbe follia per l'instabilità che introdurrebbe.

Se ti viene in mente qualcosa, spero che quanto sopra ti possa aiutare.
Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo. - Presidente eletto dell'associazione
Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
Ultima modifica: 3 Anni 9 Mesi fa da Antoniov.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
Tempo creazione pagina: 0.136 secondi

Odoo Italia Associazione - C.F: 94200470485 - Sede: Viale dei Cadorna, 83 - Firenze - Italy

Protected by R Antispam