Flag "Vertreter" bei Kunden-/Lieferantentypen bearbeitbar gemacht
authorMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 4 Mar 2010 09:31:03 +0000 (10:31 +0100)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 4 Mar 2010 09:31:03 +0000 (10:31 +0100)
Aber nur, wenn $::vertreter aktiv ist. Fix für Bug 1278.

SL/AM.pm
bin/mozilla/am.pl
locale/de/am

index 11b32ca..1dbf9d8 100644 (file)
--- a/SL/AM.pm
+++ b/SL/AM.pm
@@ -647,7 +647,7 @@ sub business {
   # connect to database
   my $dbh = $form->dbconnect($myconfig);
 
-  my $query = qq|SELECT id, description, discount, customernumberinit
+  my $query = qq|SELECT id, description, discount, customernumberinit, salesman
                  FROM business
                  ORDER BY 2|;
 
@@ -673,7 +673,7 @@ sub get_business {
   my $dbh = $form->dbconnect($myconfig);
 
   my $query =
-    qq|SELECT b.description, b.discount, b.customernumberinit
+    qq|SELECT b.description, b.discount, b.customernumberinit, b.salesman
        FROM business b
        WHERE b.id = ?|;
   my $sth = $dbh->prepare($query);
@@ -699,20 +699,20 @@ sub save_business {
   # connect to database
   my $dbh = $form->dbconnect($myconfig);
 
-  my @values = ($form->{description}, $form->{discount},
-                $form->{customernumberinit});
+  my @values = ($form->{description}, $form->{discount}, $form->{customernumberinit}, $form->{salesman} ? 't' : 'f');
   # id is the old record
   if ($form->{id}) {
     $query = qq|UPDATE business SET
                 description = ?,
                 discount = ?,
-                customernumberinit = ?
+                customernumberinit = ?,
+                salesman = ?
                 WHERE id = ?|;
     push(@values, $form->{id});
   } else {
     $query = qq|INSERT INTO business
-                (description, discount, customernumberinit)
-                VALUES (?, ?, ?)|;
+                (description, discount, customernumberinit, salesman)
+                VALUES (?, ?, ?, ?)|;
   }
   do_query($form, $dbh, $query, @values);
 
index 3cb5ac3..fe9199e 100644 (file)
@@ -1107,6 +1107,7 @@ sub list_business {
   $form->{title} = $locale->text('Type of Business');
 
   my @column_index = qw(description discount customernumberinit);
+  push @column_index, 'salesman' if $::vertreter;
   my %column_header;
   $column_header{description} =
       qq|<th class=listheading width=60%>|
@@ -1120,6 +1121,10 @@ sub list_business {
       qq|<th class=listheading>|
     . $locale->text('Customernumberinit')
     . qq|</th>|;
+  $column_header{salesman} =
+      qq|<th class=listheading>|
+    . $locale->text('Representative')
+    . qq|</th>|;
 
   $form->header;
 
@@ -1159,6 +1164,7 @@ sub list_business {
     $column_data{discount}           = qq|<td align=right>$discount</td>|;
     $column_data{customernumberinit} =
       qq|<td align=right>$ref->{customernumberinit}</td>|;
+    $column_data{salesman} = '<td>' . ($ref->{salesman} ? $::locale->text('Yes') : $::locale->text('No')) . '</td>';
 
     map { print "$column_data{$_}\n" } @column_index;
 
@@ -1213,6 +1219,18 @@ sub business_header {
   $form->{discount} =
     $form->format_amount(\%myconfig, $form->{discount} * 100);
 
+  my $salesman_code;
+  if ($::vertreter) {
+    $salesman_code = qq|
+  <tr>
+    <th align="right">| . $locale->text('Representative') . qq|</th>
+    <td>| . $::cgi->checkbox(-name => "salesman", -value => 1, -label => '', 'checked' => $form->{salesman} ? 1 : 0) . qq|</td>
+  </tr>
+|;
+  } else {
+    $salesman_code = $::cgi->hidden(-name => 'salesman', -value => $form->{salesman} ? 1 : 0);
+  }
+
   $form->header;
 
   print qq|
@@ -1240,6 +1258,7 @@ sub business_header {
     <th align=right>| . $locale->text('Customernumberinit') . qq|</th>
     <td><input name=customernumberinit size=10 value=$form->{customernumberinit}></td>
   </tr>
+$salesman_code
   <td colspan=2><hr size=3 noshade></td>
   </tr>
 </table>
index 179517e..b395a0c 100644 (file)
@@ -250,6 +250,7 @@ $self->{texts} = {
   'Ranges of numbers and default accounts' => 'Nummernkreise und Standardkonten',
   'Receipt, payment, reconciliation' => 'Zahlungseingang, Zahlungsausgang, Kontenabgleich',
   'Reports'                     => 'Berichte',
+  'Representative'              => 'Vertreter',
   'Revenue'                     => 'Erlöskonto',
   'Revenues EU with UStId'      => 'Erl&ouml;se EU m. UStId',
   'Revenues EU without UStId'   => 'Erl&ouml;se EU o. UStId',