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

ARGOMENTO: Correzione ordine vendita

Re:Correzione ordine vendita 8 Anni 5 Mesi fa #2833

  • domfitty
  • Avatar di domfitty
  • Offline
  • Junior Boarder
  • Messaggi: 25
  • Karma: 0
outs ha scritto:
effettivamente il problema esiste io ho risolto aggirando l'ostacolo, ovvero ho creato un pulsante "modifica ordine confermato" e tutte le modifiche in quel caso aggiungono un flag "modified" nelle righe su cui interviene l'operatore o su quelle che aggiunge.
L'ordine integrativo male si abbina alla variazione di quantità dell'originale

E i pack? Come li modifichi?
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Correzione ordine vendita 8 Anni 5 Mesi fa #2840

  • outs
  • Avatar di outs
  • Offline
  • Senior Boarder
  • Messaggi: 58
  • Karma: 0
quando si conferma di voler modificare un ordine bisogna eliminare da stock.move, stock.picking, wkf_instance, mrp_procurement, rimettere righe e ordine in draft, mettere sulle righe e sull'ordine modified e mettere 47 su wkf_workitem
def modifica_ordine(self, cr, uid, ids, *args):
        order_obj=self.pool.get('sale.order').browse(cr, uid, ids[0])
        self.pool.get('sale.order').write(cr, uid, ids, {'x_modified':1, 'state':'draft', 'x_stock_print':0})
        event_id=self.pool.get('res.partner.event').search(cr, uid, [('name', '=', 'Ordine Nr.: '+ order_obj.name)])
        for i in event_id:
            self.pool.get('res.partner.event').unlink(cr, uid, i)
        instance=self.pool.get('workflow.instance').search(cr, uid, [('res_id', '=', ids[0]), ('res_type','=','sale.order')])
        workitem=self.pool.get('workflow.workitem').search(cr, uid, [('inst_id', '=', instance[0])])
        self.pool.get('workflow.workitem').write(cr, uid, workitem[0], {'act_id':47})
        pickings=self.pool.get('stock.picking').search(cr, uid, [('sale_id', '=', ids[0])])
        for i in pickings:
            self.pool.get('stock.picking').unlink(cr, uid, [i])
            for s in self.pool.get('workflow.instance').search(cr, uid, [('res_id', '=', i), ('res_type','=','stock.picking')]):
                self.pool.get('workflow.instance').unlink(cr, uid, [s])   
        for i in self.pool.get('sale.order.line').search(cr, uid, [('order_id', '=', ids[0])]):
            self.pool.get('sale.order.line').write(cr, uid, i, {'state':'draft'})
            for r in self.pool.get('stock.move').search(cr, uid, [('sale_line_id', '=', i)]):
                self.pool.get('stock.move').unlink(cr, uid, [r])
                for t in self.pool.get('mrp.procurement').search(cr, uid, [('move_id', '=', r)]):
                    self.pool.get('mrp.procurement').unlink(cr, uid, [t])
                    for s in self.pool.get('workflow.instance').search(cr, uid, [('res_id', '=', t), ('res_type','=','mrp.procurement')]):
                        self.pool.get('workflow.instance').unlink(cr, uid, s)
                 
        return True

io ho fatto così e mi funziona, considera che x_modified segnala che è un ordine modificate e anche su quali righe mentre x_stock_print è un flag che mi dice se in magazzino lo avevano già stampato (e presumibilmente evaso dice a chi modifica l'ordine di segnalarlo in magazzino per non fare doppioni) considera che nel magazzino vengono evasi circa 250 ordini al giorno e le correzioni sono frequenti.
Quando ri-confermi l'ordine il pack viene ricreato
Ultima modifica: 8 Anni 5 Mesi fa da outs.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
  • Pagina:
  • 1
  • 2
Tempo creazione pagina: 0.133 secondi

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

Protected by R Antispam