X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=inline;f=SL%2FDB%2FMetaSetup%2FOrderItem.pm;h=e83b65bda7d61aba4e91a4d506e8d75c27a6337c;hb=b403498c677894ec7802563777b754e3c26df875;hp=732d4c92e06e03e891cf38c349567cfb37b54f50;hpb=b632cee8434442efd8ae3962126c34123172daac;p=kivitendo-erp.git diff --git a/SL/DB/MetaSetup/OrderItem.pm b/SL/DB/MetaSetup/OrderItem.pm index 732d4c92e..e83b65bda 100644 --- a/SL/DB/MetaSetup/OrderItem.pm +++ b/SL/DB/MetaSetup/OrderItem.pm @@ -4,71 +4,78 @@ package SL::DB::OrderItem; use strict; -use base qw(SL::DB::Object); +use parent qw(SL::DB::Object); -__PACKAGE__->meta->setup( - table => 'orderitems', +__PACKAGE__->meta->table('orderitems'); - columns => [ - trans_id => { type => 'integer' }, - parts_id => { type => 'integer' }, - description => { type => 'text' }, - qty => { type => 'float', precision => 4 }, - sellprice => { type => 'numeric', precision => 5, scale => 15 }, - discount => { type => 'float', precision => 4 }, - project_id => { type => 'integer' }, - reqdate => { type => 'date' }, - ship => { type => 'float', precision => 4 }, - serialnumber => { type => 'text' }, - id => { type => 'integer', not_null => 1, sequence => 'orderitemsid' }, - itime => { type => 'timestamp', default => 'now()' }, - mtime => { type => 'timestamp' }, - pricegroup_id => { type => 'integer' }, - ordnumber => { type => 'text' }, - transdate => { type => 'text' }, - cusordnumber => { type => 'text' }, - unit => { type => 'varchar', length => 20 }, - base_qty => { type => 'float', precision => 4 }, - subtotal => { type => 'boolean', default => 'false' }, - longdescription => { type => 'text' }, - marge_total => { type => 'numeric', precision => 5, scale => 15 }, - marge_percent => { type => 'numeric', precision => 5, scale => 15 }, - lastcost => { type => 'numeric', precision => 5, scale => 15 }, - price_factor_id => { type => 'integer' }, - price_factor => { type => 'numeric', default => 1, precision => 5, scale => 15 }, - marge_price_factor => { type => 'numeric', default => 1, precision => 5, scale => 15 }, - ], +__PACKAGE__->meta->columns( + active_discount_source => { type => 'text', default => '', not_null => 1 }, + active_price_source => { type => 'text', default => '', not_null => 1 }, + base_qty => { type => 'float', precision => 4, scale => 4 }, + cusordnumber => { type => 'text' }, + description => { type => 'text' }, + discount => { type => 'float', precision => 4, scale => 4 }, + id => { type => 'integer', not_null => 1, sequence => 'orderitemsid' }, + itime => { type => 'timestamp', default => 'now()' }, + lastcost => { type => 'numeric', precision => 15, scale => 5 }, + longdescription => { type => 'text' }, + marge_percent => { type => 'numeric', precision => 15, scale => 5 }, + marge_price_factor => { type => 'numeric', default => 1, precision => 15, scale => 5 }, + marge_total => { type => 'numeric', precision => 15, scale => 5 }, + mtime => { type => 'timestamp' }, + optional => { type => 'boolean', default => 'false' }, + ordnumber => { type => 'text' }, + parts_id => { type => 'integer' }, + position => { type => 'integer', not_null => 1 }, + price_factor => { type => 'numeric', default => 1, precision => 15, scale => 5 }, + price_factor_id => { type => 'integer' }, + pricegroup_id => { type => 'integer' }, + project_id => { type => 'integer' }, + qty => { type => 'numeric', precision => 25, scale => 5 }, + reqdate => { type => 'date' }, + sellprice => { type => 'numeric', precision => 15, scale => 5 }, + serialnumber => { type => 'text' }, + ship => { type => 'float', precision => 4, scale => 4 }, + subtotal => { type => 'boolean', default => 'false' }, + trans_id => { type => 'integer' }, + transdate => { type => 'text' }, + unit => { type => 'varchar', length => 20 }, +); + +__PACKAGE__->meta->primary_key_columns([ 'id' ]); - primary_key_columns => [ 'id' ], +__PACKAGE__->meta->allow_inline_column_values(1); - allow_inline_column_values => 1, +__PACKAGE__->meta->foreign_keys( + order => { + class => 'SL::DB::Order', + key_columns => { trans_id => 'id' }, + }, - foreign_keys => [ - parts => { - class => 'SL::DB::Part', - key_columns => { parts_id => 'id' }, - }, + part => { + class => 'SL::DB::Part', + key_columns => { parts_id => 'id' }, + }, - price_factor_obj => { - class => 'SL::DB::PriceFactor', - key_columns => { price_factor_id => 'id' }, - }, + price_factor_obj => { + class => 'SL::DB::PriceFactor', + key_columns => { price_factor_id => 'id' }, + }, - pricegroup => { - class => 'SL::DB::Pricegroup', - key_columns => { pricegroup_id => 'id' }, - }, + pricegroup => { + class => 'SL::DB::Pricegroup', + key_columns => { pricegroup_id => 'id' }, + }, - project => { - class => 'SL::DB::Project', - key_columns => { project_id => 'id' }, - }, + project => { + class => 'SL::DB::Project', + key_columns => { project_id => 'id' }, + }, - trans => { - class => 'SL::DB::Order', - key_columns => { trans_id => 'id' }, - }, - ], + unit_obj => { + class => 'SL::DB::Unit', + key_columns => { unit => 'name' }, + }, ); 1;