Exemple #1
0
    def table_query(cls):
        Opportunity = Pool().get('sale.opportunity')
        opportunity_history = Opportunity.__table_history__()
        columns = [
            Min(Column(opportunity_history, '__id')).as_('id'),
            opportunity_history.id.as_('opportunity'),
            Min(
                Coalesce(opportunity_history.write_date,
                         opportunity_history.create_date)).as_('date'),
            Coalesce(opportunity_history.write_uid,
                     opportunity_history.create_uid).as_('user'),
        ]
        group_by = [
            opportunity_history.id,
            Coalesce(opportunity_history.write_uid,
                     opportunity_history.create_uid),
        ]
        for name, field in cls._fields.iteritems():
            if name in ('id', 'opportunity', 'date', 'user'):
                continue
            if hasattr(field, 'set'):
                continue
            column = Column(opportunity_history, name)
            columns.append(column.as_(name))
            group_by.append(column)

        return opportunity_history.select(*columns, group_by=group_by)
Exemple #2
0
    def table_query(cls):
        Opportunity = Pool().get('sale.opportunity')
        opportunity_history = Opportunity.__table_history__()
        columns = [
            Min(Column(opportunity_history, '__id')).as_('id'),
            opportunity_history.id.as_('opportunity'),
            Min(Coalesce(opportunity_history.write_date,
                    opportunity_history.create_date)).as_('date'),
            Coalesce(opportunity_history.write_uid,
                opportunity_history.create_uid).as_('user'),
            ]
        group_by = [
            opportunity_history.id,
            Coalesce(opportunity_history.write_uid,
                opportunity_history.create_uid),
            ]
        for name, field in cls._fields.iteritems():
            if name in ('id', 'opportunity', 'date', 'user'):
                continue
            if hasattr(field, 'set'):
                continue
            column = Column(opportunity_history, name)
            columns.append(column.as_(name))
            group_by.append(column)

        return opportunity_history.select(*columns, group_by=group_by)
Exemple #3
0
 def table_query(cls):
     pool = Pool()
     Product = pool.get('product.product')
     product = Product.__table__()
     columns = []
     for fname, field in cls._fields.items():
         if not hasattr(field, 'set'):
             if (isinstance(field, fields.Many2One)
                     and field.get_target() == Product):
                 column = Column(product, 'id')
             else:
                 column = Column(product, fname)
             columns.append(column.as_(fname))
     return product.select(*columns)
Exemple #4
0
 def table_query(cls):
     pool = Pool()
     Lot = pool.get('stock.lot')
     lot = Lot.__table__()
     columns = []
     for fname, field in cls._fields.items():
         if not hasattr(field, 'set'):
             if (isinstance(field, fields.Many2One)
                     and field.get_target() == Lot):
                 column = Column(lot, 'id')
             else:
                 column = Column(lot, fname)
             columns.append(column.as_(fname))
     return lot.select(*columns)