Kunden Mandanten ID fuer SEPA Lastschrift implementiert.
[kivitendo-erp.git] / SL / DB / MetaSetup / Customer.pm
index 181f6e6..52414ea 100644 (file)
@@ -6,75 +6,88 @@ use strict;
 
 use base qw(SL::DB::Object);
 
-__PACKAGE__->meta->setup(
-  table   => 'customer',
+__PACKAGE__->meta->table('customer');
 
-  columns => [
-    id             => { type => 'integer', not_null => 1, sequence => 'id' },
-    name           => { type => 'text', not_null => 1 },
-    department_1   => { type => 'varchar', length => 75 },
-    department_2   => { type => 'varchar', length => 75 },
-    street         => { type => 'varchar', length => 75 },
-    zipcode        => { type => 'varchar', length => 10 },
-    city           => { type => 'varchar', length => 75 },
-    country        => { type => 'varchar', length => 75 },
-    contact        => { type => 'text' },
-    phone          => { type => 'varchar', length => 30 },
-    fax            => { type => 'varchar', length => 30 },
-    homepage       => { type => 'text' },
-    email          => { type => 'text' },
-    notes          => { type => 'text' },
-    discount       => { type => 'float', precision => 4 },
-    taxincluded    => { type => 'boolean' },
-    creditlimit    => { type => 'numeric', default => '0', precision => 5, scale => 15 },
-    terms          => { type => 'integer', default => '0' },
-    customernumber => { type => 'text' },
-    cc             => { type => 'text' },
-    bcc            => { type => 'text' },
-    business_id    => { type => 'integer' },
-    taxnumber      => { type => 'text' },
-    account_number => { type => 'text' },
-    bank_code      => { type => 'text' },
-    bank           => { type => 'text' },
-    language       => { type => 'varchar', length => 5 },
-    datevexport    => { type => 'integer' },
-    itime          => { type => 'timestamp', default => 'now()' },
-    mtime          => { type => 'timestamp' },
-    obsolete       => { type => 'boolean', default => 'false' },
-    username       => { type => 'varchar', length => 50 },
-    user_password  => { type => 'text' },
-    salesman_id    => { type => 'integer' },
-    c_vendor_id    => { type => 'text' },
-    klass          => { type => 'integer', default => '0' },
-    language_id    => { type => 'integer' },
-    payment_id     => { type => 'integer' },
-    taxzone_id     => { type => 'integer', default => '0', not_null => 1 },
-    greeting       => { type => 'text' },
-    ustid          => { type => 'text' },
-    direct_debit   => { type => 'boolean', default => 'false' },
-    iban           => { type => 'varchar', length => 100 },
-    bic            => { type => 'varchar', length => 100 },
-    curr           => { type => 'character', length => 3 },
-  ],
+__PACKAGE__->meta->columns(
+  account_number      => { type => 'text' },
+  bank                => { type => 'text' },
+  bank_code           => { type => 'text' },
+  bcc                 => { type => 'text' },
+  bic                 => { type => 'varchar', length => 100 },
+  business_id         => { type => 'integer' },
+  c_vendor_id         => { type => 'text' },
+  cc                  => { type => 'text' },
+  city                => { type => 'varchar', length => 75 },
+  contact             => { type => 'text' },
+  country             => { type => 'varchar', length => 75 },
+  creditlimit         => { type => 'numeric', default => '0', precision => 5, scale => 15 },
+  currency_id         => { type => 'integer', not_null => 1 },
+  customernumber      => { type => 'text' },
+  delivery_term_id    => { type => 'integer' },
+  department_1        => { type => 'varchar', length => 75 },
+  department_2        => { type => 'varchar', length => 75 },
+  depositor           => { type => 'text' },
+  direct_debit        => { type => 'boolean', default => 'false' },
+  discount            => { type => 'float', precision => 4 },
+  email               => { type => 'text' },
+  fax                 => { type => 'varchar', length => 30 },
+  greeting            => { type => 'text' },
+  homepage            => { type => 'text' },
+  iban                => { type => 'varchar', length => 100 },
+  id                  => { type => 'integer', not_null => 1, sequence => 'id' },
+  itime               => { type => 'timestamp', default => 'now()' },
+  klass               => { type => 'integer', default => '0' },
+  language            => { type => 'varchar', length => 5 },
+  language_id         => { type => 'integer' },
+  mandator_id         => { type => 'text' },
+  mtime               => { type => 'timestamp' },
+  name                => { type => 'text', not_null => 1 },
+  notes               => { type => 'text' },
+  obsolete            => { type => 'boolean', default => 'false' },
+  payment_id          => { type => 'integer' },
+  phone               => { type => 'text' },
+  salesman_id         => { type => 'integer' },
+  street              => { type => 'varchar', length => 75 },
+  taxincluded         => { type => 'boolean' },
+  taxincluded_checked => { type => 'boolean' },
+  taxnumber           => { type => 'text' },
+  taxzone_id          => { type => 'integer', default => '0', not_null => 1 },
+  terms               => { type => 'integer', default => '0' },
+  user_password       => { type => 'text' },
+  username            => { type => 'varchar', length => 50 },
+  ustid               => { type => 'text' },
+  zipcode             => { type => 'varchar', length => 10 },
+);
+
+__PACKAGE__->meta->primary_key_columns([ 'id' ]);
+
+__PACKAGE__->meta->allow_inline_column_values(1);
+
+__PACKAGE__->meta->foreign_keys(
+  business => {
+    class       => 'SL::DB::Business',
+    key_columns => { business_id => 'id' },
+  },
 
-  primary_key_columns => [ 'id' ],
+  currency => {
+    class       => 'SL::DB::Currency',
+    key_columns => { currency_id => 'id' },
+  },
 
-  foreign_keys => [
-    business => {
-      class       => 'SL::DB::Business',
-      key_columns => { business_id => 'id' },
-    },
+  delivery_term => {
+    class       => 'SL::DB::DeliveryTerm',
+    key_columns => { delivery_term_id => 'id' },
+  },
 
-    language_obj => {
-      class       => 'SL::DB::Language',
-      key_columns => { language_id => 'id' },
-    },
+  language_obj => {
+    class       => 'SL::DB::Language',
+    key_columns => { language_id => 'id' },
+  },
 
-    payment => {
-      class       => 'SL::DB::PaymentTerm',
-      key_columns => { payment_id => 'id' },
-    },
-  ],
+  payment => {
+    class       => 'SL::DB::PaymentTerm',
+    key_columns => { payment_id => 'id' },
+  },
 );
 
 1;