С использованием разрывная веревка 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.
подпись 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
(если некоторые строки перемещения имеют одинаковую дату) в порядке возрастания.
Других решений пока нет …