Am 25.04.2017 um 18:24 schrieb Mark Shane Hayden: > Hi...see my comments within your message below: > > On Apr 25, 2017 10:16, "Ul" <[email protected] <mailto:[email protected]>> wrote: > > Hello, > > i have a Problem with domains on a fields.Reference: > > I want to restrict the value of a Many2One field depending on a > fields.Reference in the target. > > The target is a stock.lot that i extended with a field.Reference called > 'origin'. > > Now i want to restrict the lots in a M2O-field in another Model to a > certain lot.origin. > > One try was giving the value of the Reverence as a tuple: > > supplier_lot = fields.Many2One('stock.lot', 'Supplier Lot', > domain=[ ('origin', '=', > ('party.party', Eval('context', {}).get('supplier', -1)) > ), > ('product', '=', Eval('product')) > ]) > > This way it works fine when creating: > - only the right Lots are sugested in the search > - creating new lots the origin fields are filled with the right values > - the new lot is saved to all right with the right origin > but when i want to save the record with the field 'supplier_lot' > containing the domain, i get a popup stating that i cant save because of > a domain mismach in this field. Did i miss anything here, or is this a > bug? Unfortunaltelly i was not able to spot the very place this domain > is validated and fails. > > The other try was using a fouth parameter in the domain with even worse > result: > > supplier_lot = fields.Many2One('stock.lot', 'Supplier Lot', > domain=[ ('origin', '=', > Eval('context', {}).get('supplier', -1), > 'party.party' > ), > ('product', '=', Eval('product')) > ]) > > > This four parameter version may seem "worse" but it is closer to the > correct answer. > > You need to compare on origin.id <http://origin.id> not just origin: > > domain=[ ('origin.id <http://origin.id>', '=', > Eval(... > > See if that works for you. > Thanks, like this I did get as far as with the tuple: i can find or create the lot, but still can't save the record containing the domain because of domain mismatch. And now the origin field is not filled automatically when i create a new lot according to the domain as it was with the tuple.
-- You received this message because you are subscribed to the Google Groups "tryton" group. To view this discussion on the web visit https://groups.google.com/d/msgid/tryton/b3e97a8e-f4b5-1412-2b73-b4d7d7c949c0%40gmx.de.
