openerp — Odoo / PHP: как мне установить & quot; порядок по & quot; в вызове API?

С использованием разрывная веревка XML-RPC-клиент и выполнение вызова, подобного следующему, как я могу сказать, по какому полю (-ам) сортировать записи?

$models = ripcord::client($cfg['url'] . '/xmlrpc/2/object');
$srch = $models->execute_kw($cfg['db'], $cfg['uid'], $cfg['pw'], 'account.move.line', 'search_read', array(array(array('account_id', '=', 174), array('date', '>=', '2016-01-01'))));

Использование Odoo 9 Community Edition.

0

Решение

подпись search_read является:

def search_read(self, cr, uid, domain=None, fields=None, offset=0, limit=None, order=None, context=None):

Я не очень знаком с PHP, но что-то вроде этого должно работать:

$models = ripcord::client($cfg['url'] . '/xmlrpc/2/object');
$srch = $models->execute_kw(
$cfg['db'],
$cfg['uid'],
$cfg['pw'],
'account.move.line',
'search_read',
array(
array(
array('account_id', '=', 174),
array('date', '>=', '2016-01-01')
),
NULL,
NULL,
NULL,
'date desc, id',
)
);

Мы проходим NULL за fields, offset а также limit использовать значение по умолчанию и order разделенный запятыми список полей для сортировки. В приведенном выше примере он вернет линии перемещения, отсортированные по date в порядке убывания, а затем id (если некоторые строки перемещения имеют одинаковую дату) в порядке возрастания.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]