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
  • Pagina:
  • 1
  • 2

ARGOMENTO: codice python action server

codice python action server 5 Anni 3 Mesi fa #13749

  • salvino
  • Avatar di salvino
  • Offline
  • Junior Boarder
  • Messaggi: 21
  • Karma: 0
Salve, ho una domanda credo molto banale.
Nelle server action, scegliendo la modalità python come posso settare una variabile?.
Es. oggetto project, voglio settare un campo utente project_XXX = false.
Ho provato con object.project_XXX = False, ma non sono riuscito.
Avete qualche idea?.

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

codice python action server 5 Anni 3 Mesi fa #13753

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • Offline
  • Platinum Boarder
  • Messaggi: 1952
  • Ringraziamenti ricevuti 156
  • Karma: 46
variabile = campo?

se si credo tu debba farlo utilizzando i metodi ORM (write in questo caso), se ho capito bene cosa vuoi fare... (prova a fare un esempio di quello che vuoi realizzare)
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

codice python action server 5 Anni 3 Mesi fa #13776

  • salvino
  • Avatar di salvino
  • Offline
  • Junior Boarder
  • Messaggi: 21
  • Karma: 0
Si forse mi sono spiegato male.

Ho inserito un campo utente sull'oggetto project che ho chiamato project_XXX. Questo è un booleano settato a false.
Durante la gestione del progetto questo campo può essere modificato in true.
Allora deve partire la automatic action, che sarà:
befor filter update: u'project_XXX', u'=', u't'

la server action che richiama è di tipo multiplo:
1- invia mail
2- crea oggetto notifica da visualizzare sul menu comunicazioni
3- setta project_XXX = false

il passo 2 ho provato con crea oggetto "notifiche", copia da un oggetto notifiche
il passo 3 ho provato con codice python e inserito "object.flag_residuo_ore = 'f'", dove object è progetto.

Non so se è il procedimento giusto per fare quello che ho in mente..

grazie dell'aiuto
Ciao
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

codice python action server 5 Anni 3 Mesi fa #13784

  • salvino
  • Avatar di salvino
  • Offline
  • Junior Boarder
  • Messaggi: 21
  • Karma: 0
nel passo 3 come codice python ho anche provato:

if object is not None:
self.write(cr, uid, object.id, {'project_XXX': False}, context)

ma non sembra andare bene perchè non modifica il valore.
Ultima modifica: 5 Anni 3 Mesi fa da salvino.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

codice python action server 5 Anni 3 Mesi fa #13785

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • Offline
  • Platinum Boarder
  • Messaggi: 1952
  • Ringraziamenti ricevuti 156
  • Karma: 46
te la butto avendo solo una cultura teorica delle server action:
non so a cosa riferisca self, prova a mettere la chiamanta all'oggetto forzando il nome dell'oggetto project:

self.pool.get("metti.oggetto.project").write(cr, uid, object.id, {'project_XXX': False}, context=context)
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

codice python action server 5 Anni 3 Mesi fa #13799

  • salvino
  • Avatar di salvino
  • Offline
  • Junior Boarder
  • Messaggi: 21
  • Karma: 0
grazie ho risolto..
nel modo che mi suggerivi te mi dava errore, invece mi è andato con

if object is not None:
self.write(cr, uid, object.id, {'project_XXX': False}, context=context)

In pratica mi mancava il context finale = context.

Ora devo solo capire come far apparire la notifica nel menu comunicazioni e ho concluso questa azione server.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
  • Pagina:
  • 1
  • 2
Tempo creazione pagina: 0.151 secondi

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

Protected by R Antispam