1 # This file has been auto-generated. Do not modify it; it will be overwritten
2 # by rose_auto_create_model.pl automatically.
7 use parent qw(SL::DB::Object);
9 __PACKAGE__->meta->table('parts');
11 __PACKAGE__->meta->columns(
12 bin_id => { type => 'integer' },
13 bom => { type => 'boolean', default => 'false' },
14 buchungsgruppen_id => { type => 'integer' },
15 classification_id => { type => 'integer', default => '0' },
16 description => { type => 'text' },
17 drawing => { type => 'text' },
18 ean => { type => 'text' },
19 formel => { type => 'text' },
20 gv => { type => 'numeric', precision => 15, scale => 5 },
21 has_sernumber => { type => 'boolean', default => 'false' },
22 id => { type => 'integer', not_null => 1, sequence => 'id' },
23 image => { type => 'text' },
24 itime => { type => 'timestamp', default => 'now()' },
25 lastcost => { type => 'numeric', precision => 15, scale => 5 },
26 listprice => { type => 'numeric', precision => 15, scale => 5 },
27 makemodel => { type => 'boolean', default => 'false' },
28 microfiche => { type => 'text' },
29 mtime => { type => 'timestamp' },
30 not_discountable => { type => 'boolean', default => 'false' },
31 notes => { type => 'text' },
32 obsolete => { type => 'boolean', default => 'false', not_null => 1 },
33 onhand => { type => 'numeric', default => '0', precision => 25, scale => 5 },
34 order_locked => { type => 'boolean', default => 'false' },
35 order_qty => { type => 'numeric', default => '0', not_null => 1, precision => 15, scale => 5 },
36 part_type => { type => 'enum', check_in => [ 'part', 'service', 'assembly', 'assortment' ], db_type => 'part_type_enum', not_null => 1 },
37 partnumber => { type => 'text', not_null => 1 },
38 partsgroup_id => { type => 'integer' },
39 payment_id => { type => 'integer' },
40 price_factor_id => { type => 'integer' },
41 priceupdate => { type => 'date', default => 'now' },
42 rop => { type => 'float', precision => 4, scale => 4 },
43 sellprice => { type => 'numeric', precision => 15, scale => 5 },
44 shop => { type => 'boolean', default => 'false' },
45 stockable => { type => 'boolean', default => 'false' },
46 tariff_code => { type => 'text' },
47 unit => { type => 'varchar', length => 20, not_null => 1 },
48 ve => { type => 'integer' },
49 warehouse_id => { type => 'integer' },
50 weight => { type => 'float', precision => 4, scale => 4 },
53 __PACKAGE__->meta->primary_key_columns([ 'id' ]);
55 __PACKAGE__->meta->unique_keys([ 'partnumber' ]);
57 __PACKAGE__->meta->allow_inline_column_values(1);
59 __PACKAGE__->meta->foreign_keys(
61 class => 'SL::DB::Bin',
62 key_columns => { bin_id => 'id' },
66 class => 'SL::DB::Buchungsgruppe',
67 key_columns => { buchungsgruppen_id => 'id' },
71 class => 'SL::DB::PartClassification',
72 key_columns => { classification_id => 'id' },
76 class => 'SL::DB::PartsGroup',
77 key_columns => { partsgroup_id => 'id' },
81 class => 'SL::DB::PaymentTerm',
82 key_columns => { payment_id => 'id' },
86 class => 'SL::DB::PriceFactor',
87 key_columns => { price_factor_id => 'id' },
91 class => 'SL::DB::Unit',
92 key_columns => { unit => 'name' },
96 class => 'SL::DB::Warehouse',
97 key_columns => { warehouse_id => 'id' },