Ich versuche, nach einem bestimmten Produktcode mit odoo PHP API zu filtern. Wenn ich von qty_available > 0
filtern funktioniert es gut:Filter nach 'Code' mit odoo Produkt API
$records = $models->execute_kw($db, $uid, $pass, 'product.product', 'search_read', array(
array(
array('qty_available', '>', 0),
),
), array(
'fields' => array('code', 'display_name', 'qty_available')
));
... aber wenn ich von Code filtern, gibt es alle Ergebnisse, im Wesentlichen alle Filter ignorieren:
$records = $models->execute_kw($db, $uid, $pass, 'product.product', 'search_read', array(
array(
array('code', '=', 'T-0001'),
),
), array(
'fields' => array('code', 'display_name', 'qty_available')
));
Weiß jemand, warum dies auch sein mag passiert bitte? Es funktioniert auch gut mit einer Ganzzahl-ID, nur nicht den String-Code. Vielen Dank!
Ich sehe, danke für Ihre Antwort. Gestern war meine erste Erfahrung mit odoo, so dass mir Details wie nicht indexierbare Felder nicht bekannt waren. Was sind Nachteile von "speichern = wahr"? –
Kann ein Feld auch als durch das Front-End durchsuchbar festgelegt werden, oder würde ich nur über die API darauf zugreifen können? –
Was sind Nachteile von store = True: Sobald ein Rechenfeld als store = True markiert ist, wird es danach nicht mehr berechnet. Um dies zu verarbeiten, müssen Sie @ api.depends mit der compute Funktion verwenden, damit es auf die Änderung des Feldes hängt ab. – prakash