]> wagnertech.de Git - mfinanz.git/commitdiff
Merge branch 'master' of vc.linet-services.de:public/lx-office-erp
authorMoritz Bunkus <moritz@bunkus.org>
Mon, 9 Jan 2012 16:13:33 +0000 (17:13 +0100)
committerMoritz Bunkus <moritz@bunkus.org>
Mon, 9 Jan 2012 16:13:33 +0000 (17:13 +0100)
13 files changed:
SL/DB/Customer.pm
SL/DB/MetaSetup/Customer.pm
SL/DB/MetaSetup/Part.pm
SL/DB/MetaSetup/Vendor.pm
SL/DB/Part.pm
SL/DO.pm
SL/Form.pm
SL/VK.pm
bin/mozilla/ir.pl
bin/mozilla/is.pl
doc/changelog
locale/de/special_chars
templates/webpages/do/form_header.html

index f9f890167b39c384e4004cd04e14d60119ca652a..2e3fa68562bbb50ad5d95798aa0fef1ebb4310c2 100644 (file)
@@ -26,11 +26,6 @@ __PACKAGE__->meta->add_relationship(
     column_map   => { id      => 'cp_cv_id' },
     manager_args => { sort_by => 'lower(contacts.cp_name)' },
   },
-  business => {
-    type         => 'one to one',
-    class        => 'SL::DB::Business',
-    column_map   => { business_id => 'id' },
-  },
 );
 
 __PACKAGE__->meta->initialize;
index 00bdb258f4089fd02a342fc5ca3e716c80dc0320..181f6e658374bfd8b99c0d728881c17588ab4d65 100644 (file)
@@ -51,14 +51,30 @@ __PACKAGE__->meta->setup(
     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 },
-    direct_debit   => { type => 'boolean', default => 'false' },
+    curr           => { type => 'character', length => 3 },
   ],
 
   primary_key_columns => [ 'id' ],
 
-  allow_inline_column_values => 1,
+  foreign_keys => [
+    business => {
+      class       => 'SL::DB::Business',
+      key_columns => { business_id => 'id' },
+    },
+
+    language_obj => {
+      class       => 'SL::DB::Language',
+      key_columns => { language_id => 'id' },
+    },
+
+    payment => {
+      class       => 'SL::DB::PaymentTerm',
+      key_columns => { payment_id => 'id' },
+    },
+  ],
 );
 
 1;
index d6814e8d0716f78eecd26e9a8176f36728b0fb4a..d4e142b741a3343bfe97091e8d6208f8f18c1662 100644 (file)
@@ -59,6 +59,11 @@ __PACKAGE__->meta->setup(
       class       => 'SL::DB::Buchungsgruppe',
       key_columns => { buchungsgruppen_id => 'id' },
     },
+
+    unit_obj => {
+      class       => 'SL::DB::Unit',
+      key_columns => { unit => 'name' },
+    },
   ],
 );
 
index ae71c6293d1ad9479236e3e204614bda98bff80e..2fc47cc181290c14df1f6255cf52d310d5e5666d 100644 (file)
@@ -54,6 +54,7 @@ __PACKAGE__->meta->setup(
     direct_debit   => { type => 'boolean', default => 'false' },
     iban           => { type => 'varchar', length => 100 },
     bic            => { type => 'varchar', length => 100 },
+    curr           => { type => 'character', length => 3 },
   ],
 
   primary_key_columns => [ 'id' ],
index 22fbc1b4c0b8a62dd629821a2808b2412ccc6b20..952bce278ba93057f3ef3e4523b7aaab379253f6 100644 (file)
@@ -16,11 +16,6 @@ use SL::DB::Helper::CustomVariables (
 );
 
 __PACKAGE__->meta->add_relationships(
-  unit_obj                     => {
-    type         => 'one to one',
-    class        => 'SL::DB::Unit',
-    column_map   => { unit => 'name' },
-  },
   assemblies                     => {
     type         => 'one to many',
     class        => 'SL::DB::Assembly',
index 0d2a5ec21efd109041730f63e45623888a5406e3..f241cdfb7e44fea4fd3ed2e3ee217b60cb8deb4e 100644 (file)
--- a/SL/DO.pm
+++ b/SL/DO.pm
@@ -350,7 +350,7 @@ sub save {
              conv_i($form->{salesman_id}), conv_i($form->{cp_id}),
              $form->{transaction_description},
              $form->{type} =~ /^sales/ ? 't' : 'f',
-             conv_i($form->{taxzone_id}), $form->{taxincluded} ? 't' : 'f', conv_i($form->{terms}), $form->{curr},
+             conv_i($form->{taxzone_id}), $form->{taxincluded} ? 't' : 'f', conv_i($form->{terms}), substr($form->{currency}, 0, 3),
              conv_i($form->{id}));
   do_query($form, $dbh, $query, @values);
 
@@ -601,7 +601,7 @@ sub retrieve {
          d.description AS department, dord.language_id,
          dord.shipto_id,
          dord.globalproject_id, dord.delivered, dord.transaction_description,
-         dord.taxzone_id, dord.taxincluded, dord.terms, dord.curr
+         dord.taxzone_id, dord.taxincluded, dord.terms, dord.curr AS currency
        FROM delivery_orders dord
        JOIN ${vc} cv ON (dord.${vc}_id = cv.id)
        LEFT JOIN employee e ON (dord.employee_id = e.id)
@@ -623,6 +623,9 @@ sub retrieve {
   }
   $sth->finish();
 
+  # remove any trailing whitespace
+  $form->{currency} =~ s/\s*$//;
+
   $form->{donumber_array} =~ s/\s*$//g;
 
   $form->{saved_donumber} = $form->{donumber};
index f100b8c905053ef81610a8463d0a906bc4a7b096..d0a4157b4a66bb7d4ee10f2fc5833bbcd631688b 100644 (file)
@@ -2857,7 +2857,7 @@ sub create_links {
     if ($self->{"$self->{vc}_id"}) {
 
       # only setup currency
-      ($self->{currency}) = split(/:/, $self->{currencies});
+      ($self->{currency}) = split(/:/, $self->{currencies}) if !$self->{currency};
 
     } else {
 
index 13c7d7f99fbc838fb454afab39dc501567de657a..c3a2562fd9fcc518fefbb006ad8cd2582e2afbe7 100644 (file)
--- a/SL/VK.pm
+++ b/SL/VK.pm
@@ -62,6 +62,9 @@ sub invoice_transactions {
   # Stornierte Rechnungen und Stornorechnungen in invoice rausfiltern
   $where .= " AND ar.storno is not true ";
 
+  # Bestandteile von Erzeugnissen herausfiltern
+  $where .= " AND i.assemblyitem is not true ";
+
   my $sortorder = "cus.name,i.parts_id,ar.transdate";
   if ($form->{sortby} eq 'artikelsort') {
     $sortorder = "i.parts_id,cus.name,ar.transdate";
index b550532ed52bc185802b7b192fb0cbe3893db6f2..2ace9a7b434c58c380b4e810f8846f4376b0887b 100644 (file)
@@ -116,7 +116,7 @@ sub invoice_links {
     }
   }
 
-  my ($payment_id, $language_id, $taxzone_id);
+  my ($payment_id, $language_id, $taxzone_id, $currency);
   if ($form->{payment_id}) {
     $payment_id = $form->{payment_id};
   }
@@ -126,6 +126,9 @@ sub invoice_links {
   if ($form->{taxzone_id}) {
     $taxzone_id = $form->{taxzone_id};
   }
+  if ($form->{currency}) {
+    $currency = $form->{currency};
+  }
 
   my $cp_id = $form->{cp_id};
   IR->get_vendor(\%myconfig, \%$form);
@@ -141,6 +144,9 @@ sub invoice_links {
   if ($taxzone_id) {
     $form->{taxzone_id} = $taxzone_id;
   }
+  if ($currency) {
+    $form->{currency} = $currency;
+  }
 
   my @curr = split(/:/, $form->{currencies}); #seems to be missing
   map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
index b858db1cd927c7d0646dfd7a9350bebf3efa84fc..489a6d936112e4bb5db30286b2d2628505cc3518 100644 (file)
@@ -146,7 +146,7 @@ sub invoice_links {
 
   my $editing = $form->{id};
 
-  $form->backup_vars(qw(payment_id language_id taxzone_id salesman_id taxincluded cp_id intnotes id shipto_id));
+  $form->backup_vars(qw(payment_id language_id taxzone_id salesman_id taxincluded currency cp_id intnotes id shipto_id));
 
   IS->get_customer(\%myconfig, \%$form);
 
@@ -158,7 +158,7 @@ sub invoice_links {
   $form->restore_vars(qw(id));
 
   IS->retrieve_invoice(\%myconfig, \%$form);
-  $form->restore_vars(qw(payment_id language_id taxzone_id intnotes cp_id shipto_id));
+  $form->restore_vars(qw(payment_id language_id taxzone_id currency intnotes cp_id shipto_id));
   $form->restore_vars(qw(taxincluded)) if $form->{id};
   $form->restore_vars(qw(salesman_id)) if $editing;
 
index d85e5b569036d5b853273bfdfceb5db2422d035a..841f844c4aceb9137b8e9f0ee2d38ee5928f5418 100644 (file)
@@ -75,6 +75,7 @@
   - Bugfix 1753: Benutzerdefinierte Variable f. Waren: bearbeitbar nicht auswählbar
   - Bugfix 1738:  Entwürfe können nicht gelöscht werden
   - Bugfix 1759: Währung bei Kunden / Lieferanten vorbelegen
+  - Bugfix 1770: Währung / currency überlebt Workflow über Lieferschein nicht
   - Bugfix 1773: SQL Fehler bei Anzeige von Angeboten
 
 
index 945b2392febd80e7a730ed5040024b9f851e4a75..c481fe6c945ed607d20657d828d8d30384fd15ca 100644 (file)
@@ -29,7 +29,7 @@ order=< > \n
 \n=<br>
 
 [Template/LaTeX]
-order=\\ <pagebreak> & \n \r " $ <bullet> % _ # ^ { } < > £ ± ² ³ ° § ® ©
+order=\\ <pagebreak> & \n \r " $ <bullet> % _ # ^ { } < > £ ± ² ³ ° § ® © \xad
 \\=\\textbackslash\s
 <pagebreak>=
 "=''
@@ -53,7 +53,9 @@ _=\\_
 °=$^\\circ$
 §=\\S
 ®=\\textregistered
-©=\\textcopyright
+©=\\textcopyrighta
+\xad=\\-
+
 
 [Template/OpenDocument]
 order=& < > " ' \x80 \n \r
index 393422e0c9791cb64ac3f32a597cd0afd6baace0..a83a2b91e38b5313268086cf1febfe6cc057e929 100644 (file)
@@ -64,7 +64,7 @@
   <input type="hidden" name="cc" value="[% HTML.escape(cc) %]">
   <input type="hidden" name="closed" value="[% HTML.escape(closed) %]">
   <input type="hidden" name="convert_from_oe_ids" value="[% HTML.escape(convert_from_oe_ids) %]">
-  <input type="hidden" name="curr" value="[% HTML.escape(curr) %]">
+  <input type="hidden" name="currency" value="[% HTML.escape(currency) %]">
   <input type="hidden" name="customer_klass" value="[% HTML.escape(customer_klass) %]">
   <input type="hidden" name="discount" value="[% HTML.escape(discount) %]">
   <input type="hidden" name="dunning_amount" value="[% HTML.escape(dunning_amount) %]">