Ergänzung in Rose
[kivitendo-erp.git] / SL / DB / MetaSetup / Part.pm
1 # This file has been auto-generated. Do not modify it; it will be overwritten
2 # by rose_auto_create_model.pl automatically.
3 package SL::DB::Part;
4
5 use strict;
6
7 use base qw(SL::DB::Object);
8
9 __PACKAGE__->meta->setup(
10   table   => 'parts',
11
12   columns => [
13     id                 => { type => 'integer', not_null => 1, sequence => 'id' },
14     partnumber         => { type => 'text', not_null => 1 },
15     description        => { type => 'text' },
16     listprice          => { type => 'numeric', precision => 5, scale => 15 },
17     sellprice          => { type => 'numeric', precision => 5, scale => 15 },
18     lastcost           => { type => 'numeric', precision => 5, scale => 15 },
19     priceupdate        => { type => 'date', default => 'now' },
20     weight             => { type => 'float', precision => 4 },
21     notes              => { type => 'text' },
22     makemodel          => { type => 'boolean', default => 'false' },
23     assembly           => { type => 'boolean', default => 'false' },
24     alternate          => { type => 'boolean', default => 'false' },
25     rop                => { type => 'float', precision => 4 },
26     inventory_accno_id => { type => 'integer' },
27     income_accno_id    => { type => 'integer' },
28     expense_accno_id   => { type => 'integer' },
29     shop               => { type => 'boolean', default => 'false' },
30     obsolete           => { type => 'boolean', default => 'false' },
31     bom                => { type => 'boolean', default => 'false' },
32     image              => { type => 'text' },
33     drawing            => { type => 'text' },
34     microfiche         => { type => 'text' },
35     partsgroup_id      => { type => 'integer' },
36     ve                 => { type => 'integer' },
37     gv                 => { type => 'numeric', precision => 5, scale => 15 },
38     itime              => { type => 'timestamp', default => 'now()' },
39     mtime              => { type => 'timestamp' },
40     unit               => { type => 'varchar', length => 20, not_null => 1 },
41     formel             => { type => 'text' },
42     not_discountable   => { type => 'boolean', default => 'false' },
43     buchungsgruppen_id => { type => 'integer' },
44     payment_id         => { type => 'integer' },
45     ean                => { type => 'text' },
46     price_factor_id    => { type => 'integer' },
47     onhand             => { type => 'numeric', default => '0', precision => 5, scale => 25 },
48     stockable          => { type => 'boolean', default => 'false' },
49     has_sernumber      => { type => 'boolean', default => 'false' },
50     warehouse_id       => { type => 'integer' },
51     bin_id             => { type => 'integer' },
52   ],
53
54   primary_key_columns => [ 'id' ],
55
56   allow_inline_column_values => 1,
57   unique_key => [ 'partnumber' ],
58
59   foreign_keys => [
60     bin => {
61       class       => 'SL::DB::Bin',
62       key_columns => { bin_id => 'id' },
63     },
64
65     buchungsgruppen => {
66       class       => 'SL::DB::Buchungsgruppe',
67       key_columns => { buchungsgruppen_id => 'id' },
68     },
69
70     partsgroup => {
71       class       => 'SL::DB::PartsGroup',
72       key_columns => { partsgroup_id => 'id' },
73     },
74
75     payment => {
76       class       => 'SL::DB::PaymentTerm',
77       key_columns => { payment_id => 'id' },
78     },
79
80     price_factor => {
81       class       => 'SL::DB::PriceFactor',
82       key_columns => { price_factor_id => 'id' },
83     },
84
85     unit_obj => {
86       class       => 'SL::DB::Unit',
87       key_columns => { unit => 'name' },
88     },
89
90     warehouse => {
91       class       => 'SL::DB::Warehouse',
92       key_columns => { warehouse_id => 'id' },
93     },
94   ],
95 );
96
97 1;
98 ;