Beispiel #1
0
    def __init__(self, config):
        self.config = config

        self.salesOrderSQL = sqlutil.crudSQLFactory(SalesOrder.__table__, SalesOrder._attrs[0:1], SalesOrder._attrs[1:])
        self.salesOrderItemSQL = sqlutil.crudSQLFactory(SalesOrderItem.__table__, SalesOrderItem._attrs[0:1], SalesOrderItem._attrs[1:])

        salesOrderColumns = ['so.%s'%attr for attr in SalesOrder._attrs]
        salesOrderItemColumns = ['soi.%s'%attr for attr in SalesOrderItem._attrs]
        self.combinedColumns = salesOrderColumns + salesOrderItemColumns

        self.combinedSelect = """select %(cols)s 
            from %(sales_order_table)s so
            join %(sales_order_item_table)s soi on soi.sales_order_id = so.sales_order_id"""% {
                'sales_order_table': SalesOrder.__table__,
                'sales_order_item_table': SalesOrderItem.__table__,
                'cols': ', '.join( self.combinedColumns )}
Beispiel #2
0
    def __init__(self, voucherType):
        self.voucherType = voucherType
        

        self.voucherDefinitionSQL = sqlutil.crudSQLFactory(
            self.voucherType.getType().__table__, 
            self.voucherType.getType()._attrs[0:1], 
            self.voucherType.getType()._attrs[1:])

        self.voucherSQL = sqlutil.crudSQLFactory(
            base.Voucher.__table__, 
            base.Voucher._attrs[0:1], 
            base.Voucher._attrs[1:])

        voucherDefinitionColumns = ['d.%s'%attr for attr in self.voucherType.getType()._attrs]
        voucherColumns = ['v.%s'%attr for attr in base.Voucher._attrs]
        self.combinedColumns = voucherDefinitionColumns + voucherColumns

        self.combinedSelect = """select %(cols)s 
            from %(voucher_definition_table)s d
            join %(voucher_table)s v on d.voucher_definition_id = v.voucher_definition_id"""% {
                'voucher_definition_table': self.voucherType.getType().__table__,
                'voucher_table': base.Voucher.__table__,
                'cols': ', '.join( self.combinedColumns )}