Zusätzliche Rechnungsadressen: Datenbankupgrade, MetaSetup, Rose-Models
[kivitendo-erp.git] / SL / DB / MetaSetup / Order.pm
index 3e4a310..5dda642 100644 (file)
@@ -4,12 +4,13 @@ package SL::DB::Order;
 
 use strict;
 
-use base qw(SL::DB::Object);
+use parent qw(SL::DB::Object);
 
 __PACKAGE__->meta->table('oe');
 
 __PACKAGE__->meta->columns(
-  amount                  => { type => 'numeric', precision => 5, scale => 15 },
+  amount                  => { type => 'numeric', precision => 15, scale => 5 },
+  billing_address_id      => { type => 'integer' },
   closed                  => { type => 'boolean', default => 'false' },
   cp_id                   => { type => 'integer' },
   currency_id             => { type => 'integer', not_null => 1 },
@@ -21,16 +22,19 @@ __PACKAGE__->meta->columns(
   delivery_vendor_id      => { type => 'integer' },
   department_id           => { type => 'integer' },
   employee_id             => { type => 'integer' },
+  exchangerate            => { type => 'numeric', precision => 15, scale => 5 },
+  expected_billing_date   => { type => 'date' },
   globalproject_id        => { type => 'integer' },
   id                      => { type => 'integer', not_null => 1, sequence => 'id' },
   intnotes                => { type => 'text' },
   itime                   => { type => 'timestamp', default => 'now()' },
   language_id             => { type => 'integer' },
-  marge_percent           => { type => 'numeric', precision => 5, scale => 15 },
-  marge_total             => { type => 'numeric', precision => 5, scale => 15 },
+  marge_percent           => { type => 'numeric', precision => 15, scale => 5 },
+  marge_total             => { type => 'numeric', precision => 15, scale => 5 },
   mtime                   => { type => 'timestamp' },
-  netamount               => { type => 'numeric', precision => 5, scale => 15 },
+  netamount               => { type => 'numeric', precision => 15, scale => 5 },
   notes                   => { type => 'text' },
+  order_probability       => { type => 'integer', default => '0', not_null => 1 },
   ordnumber               => { type => 'text', not_null => 1 },
   payment_id              => { type => 'integer' },
   proforma                => { type => 'boolean', default => 'false' },
@@ -41,8 +45,9 @@ __PACKAGE__->meta->columns(
   shippingpoint           => { type => 'text' },
   shipto_id               => { type => 'integer' },
   shipvia                 => { type => 'text' },
+  tax_point               => { type => 'date' },
   taxincluded             => { type => 'boolean' },
-  taxzone_id              => { type => 'integer' },
+  taxzone_id              => { type => 'integer', not_null => 1 },
   transaction_description => { type => 'text' },
   transdate               => { type => 'date', default => 'now' },
   vendor_id               => { type => 'integer' },
@@ -53,6 +58,11 @@ __PACKAGE__->meta->primary_key_columns([ 'id' ]);
 __PACKAGE__->meta->allow_inline_column_values(1);
 
 __PACKAGE__->meta->foreign_keys(
+  billing_address => {
+    class       => 'SL::DB::AdditionalBillingAddress',
+    key_columns => { billing_address_id => 'id' },
+  },
+
   contact => {
     class       => 'SL::DB::Contact',
     key_columns => { cp_id => 'cp_id' },
@@ -118,6 +128,11 @@ __PACKAGE__->meta->foreign_keys(
     key_columns => { shipto_id => 'shipto_id' },
   },
 
+  taxzone => {
+    class       => 'SL::DB::TaxZone',
+    key_columns => { taxzone_id => 'id' },
+  },
+
   vendor => {
     class       => 'SL::DB::Vendor',
     key_columns => { vendor_id => 'id' },