как связать два поля, чьи они не являются главными ключами?

У меня есть 3 таблицы:

class users
    columns={
          name=fields.char(....
          sucursal_user:fields.many2one('sucursales',...}
users()

class sucursales
    columns={
          name=fields.char(....
          }
sucursales()

class orders
    columns={
          name=fields.char(....
          sucursal_order:fields.many2one('sucursales',...}
orders()

Как я могу перечислить, если я войду в систему, и я из итальянского sucursal, я хочу перечислить все заказы из Италии

Поэтому мне нужно перечислить таблицы пользователей и заказов, где sucursal_user и sucursal_order равны.

Я сделал запрос и работает, но я не знаю, как это сделать в openerp.

select * from res_users, ordenes_orden
where sucursal_u = sucursal 

person FC Hackers    schedule 24.03.2015    source источник


Ответы (1)


Чтобы просмотреть пользователей и заказы, связанные с определенной записью sucursales, вы можете создать поле one2many, чтобы вам отображались эти значения.

class sucursales
    columns = {
       'user_ids': fields.one2many('res.users', 'sucursal_user', string="Related users"),
       'order_ids': fields.one2many('sale.order', 'sucursal_order', string='Related Orders'),
    }
person atchuthan    schedule 25.03.2015
comment
domain=[('user_ids[uid].sucursal_u','=','orden_ids.sucursal')] и как я могу сделать фильтр домена, я хочу, чтобы все заказы от sucursal текущего (зарегистрированного) пользователя - person FC Hackers; 25.03.2015
comment
попробуйте этот домен = [('sucursal_order','=',user.sucursal_user.id)] мы собираемся использовать значение sucursal_user, доступное пользователю, для фильтрации заказов на продажу - person atchuthan; 26.03.2015
comment
он показал мне в виде дерева (41 запись), и все в порядке, но не показывает мне 41 запись, которую мне нужно отобразить в представлении в виде дерева, 41 запись, - person FC Hackers; 27.03.2015
comment
извините, не понял ваш предыдущий комментарий - person atchuthan; 30.03.2015
comment
Я предполагаю, что некоторые из ваших заказов на продажу находятся в состоянии предложения и подтверждены. Если они имеют разное состояние, очевидно, что все 41 запись не будут отображаться в меню «Предложение» или «Заказ на продажу». - person atchuthan; 30.03.2015
comment
у меня sucursal значит другие магазины в других городах если пользователь из того что звонит в италию мне нужны все заказы только из италии я посчитал на экране сколько их было а их 41 так в дереве просмотра появляется пользователь и в скобках (41 запись) и это нормально, но я хочу 41 запись в виде дерева jejeje мой мозг болит я пробовал много вещей - person FC Hackers; 30.03.2015