Merge branch 'master' of lx-office.linet-services.de:lx-office-erp
authorSven Schöling <s.schoeling@linet-services.de>
Fri, 7 Oct 2011 13:13:58 +0000 (15:13 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Fri, 7 Oct 2011 13:13:58 +0000 (15:13 +0200)
SL/DB/MetaSetup/Invoice.pm
SL/DB/MetaSetup/Order.pm
sql/Pg-upgrade2/oe_customer_vendor_fkeys.sql [new file with mode: 0644]

index be3466d..d300a7e 100644 (file)
@@ -10,51 +10,52 @@ __PACKAGE__->meta->setup(
   table   => 'ar',
 
   columns => [
-    id                      => { type => 'integer', not_null => 1, sequence => 'glid' },
-    invnumber               => { type => 'text', not_null => 1 },
-    transdate               => { type => 'date', default => 'now' },
-    gldate                  => { type => 'date', default => 'now' },
-    customer_id             => { type => 'integer' },
-    taxincluded             => { type => 'boolean' },
-    amount                  => { type => 'numeric', precision => 5, scale => 15 },
-    netamount               => { type => 'numeric', precision => 5, scale => 15 },
-    paid                    => { type => 'numeric', precision => 5, scale => 15 },
-    datepaid                => { type => 'date' },
-    duedate                 => { type => 'date' },
-    deliverydate            => { type => 'date' },
-    invoice                 => { type => 'boolean', default => 'false' },
-    shippingpoint           => { type => 'text' },
-    terms                   => { type => 'integer', default => '0' },
-    notes                   => { type => 'text' },
-    curr                    => { type => 'character', length => 3 },
-    ordnumber               => { type => 'text' },
-    employee_id             => { type => 'integer' },
-    quonumber               => { type => 'text' },
-    cusordnumber            => { type => 'text' },
-    intnotes                => { type => 'text' },
-    department_id           => { type => 'integer', default => '0' },
-    shipvia                 => { type => 'text' },
-    itime                   => { type => 'timestamp', default => 'now()' },
-    mtime                   => { type => 'timestamp' },
-    cp_id                   => { type => 'integer' },
-    language_id             => { type => 'integer' },
-    payment_id              => { type => 'integer' },
-    delivery_customer_id    => { type => 'integer' },
-    delivery_vendor_id      => { type => 'integer' },
-    storno                  => { type => 'boolean', default => 'false' },
-    taxzone_id              => { type => 'integer' },
-    shipto_id               => { type => 'integer' },
-    type                    => { type => 'text' },
-    dunning_config_id       => { type => 'integer' },
-    orddate                 => { type => 'date' },
-    quodate                 => { type => 'date' },
-    globalproject_id        => { type => 'integer' },
-    salesman_id             => { type => 'integer' },
-    transaction_description => { type => 'text' },
-    storno_id               => { type => 'integer' },
-    marge_total             => { type => 'numeric', precision => 5, scale => 15 },
-    marge_percent           => { type => 'numeric', precision => 5, scale => 15 },
-    donumber                => { type => 'text' },
+    id                        => { type => 'integer', not_null => 1, sequence => 'glid' },
+    invnumber                 => { type => 'text', not_null => 1 },
+    transdate                 => { type => 'date', default => 'now' },
+    gldate                    => { type => 'date', default => 'now' },
+    customer_id               => { type => 'integer' },
+    taxincluded               => { type => 'boolean' },
+    amount                    => { type => 'numeric', precision => 5, scale => 15 },
+    netamount                 => { type => 'numeric', precision => 5, scale => 15 },
+    paid                      => { type => 'numeric', precision => 5, scale => 15 },
+    datepaid                  => { type => 'date' },
+    duedate                   => { type => 'date' },
+    deliverydate              => { type => 'date' },
+    invoice                   => { type => 'boolean', default => 'false' },
+    shippingpoint             => { type => 'text' },
+    terms                     => { type => 'integer', default => '0' },
+    notes                     => { type => 'text' },
+    curr                      => { type => 'character', length => 3 },
+    ordnumber                 => { type => 'text' },
+    employee_id               => { type => 'integer' },
+    quonumber                 => { type => 'text' },
+    cusordnumber              => { type => 'text' },
+    intnotes                  => { type => 'text' },
+    department_id             => { type => 'integer', default => '0' },
+    shipvia                   => { type => 'text' },
+    itime                     => { type => 'timestamp', default => 'now()' },
+    mtime                     => { type => 'timestamp' },
+    cp_id                     => { type => 'integer' },
+    language_id               => { type => 'integer' },
+    payment_id                => { type => 'integer' },
+    delivery_customer_id      => { type => 'integer' },
+    delivery_vendor_id        => { type => 'integer' },
+    storno                    => { type => 'boolean', default => 'false' },
+    taxzone_id                => { type => 'integer' },
+    shipto_id                 => { type => 'integer' },
+    type                      => { type => 'text' },
+    dunning_config_id         => { type => 'integer' },
+    orddate                   => { type => 'date' },
+    quodate                   => { type => 'date' },
+    globalproject_id          => { type => 'integer' },
+    salesman_id               => { type => 'integer' },
+    transaction_description   => { type => 'text' },
+    storno_id                 => { type => 'integer' },
+    marge_total               => { type => 'numeric', precision => 5, scale => 15 },
+    marge_percent             => { type => 'numeric', precision => 5, scale => 15 },
+    donumber                  => { type => 'text' },
+    invnumber_for_credit_note => { type => 'text' },
   ],
 
   primary_key_columns => [ 'id' ],
index e616aa3..3595026 100644 (file)
@@ -53,6 +53,11 @@ __PACKAGE__->meta->setup(
   allow_inline_column_values => 1,
 
   foreign_keys => [
+    customer => {
+      class       => 'SL::DB::Customer',
+      key_columns => { customer_id => 'id' },
+    },
+
     employee => {
       class       => 'SL::DB::Employee',
       key_columns => { employee_id => 'id' },
@@ -67,6 +72,11 @@ __PACKAGE__->meta->setup(
       class       => 'SL::DB::Employee',
       key_columns => { salesman_id => 'id' },
     },
+
+    vendor => {
+      class       => 'SL::DB::Vendor',
+      key_columns => { vendor_id => 'id' },
+    },
   ],
 );
 
diff --git a/sql/Pg-upgrade2/oe_customer_vendor_fkeys.sql b/sql/Pg-upgrade2/oe_customer_vendor_fkeys.sql
new file mode 100644 (file)
index 0000000..0ac6c8b
--- /dev/null
@@ -0,0 +1,11 @@
+-- @tag: oe_customer_vendor_fkeys
+-- @encoding: utf-8
+-- @description: Foreign Keys für customer und vendor in oe
+-- @depends: release_2_6_3
+-- @timestamp: 1317380460
+UPDATE oe SET customer_id = NULL WHERE customer_id = 0;
+UPDATE oe SET   vendor_id = NULL WHERE   vendor_id = 0;
+
+
+ALTER TABLE oe ADD FOREIGN KEY (customer_id) REFERENCES customer(id);
+ALTER TABLE oe ADD FOREIGN KEY (vendor_id)   REFERENCES vendor(id);