Neue Rechte für Anzeige der Debitoren- und Kreditorenbuchungen
authorG. Richardson <information@kivitendo-premium.de>
Mon, 5 Aug 2013 08:29:52 +0000 (10:29 +0200)
committerG. Richardson <information@kivitendo-premium.de>
Mon, 5 Aug 2013 11:51:11 +0000 (13:51 +0200)
Damit kann man in den Berichten für Einkaufs- und Verkaufsrechnungen die
Debitoren- und Kreditorenbuchungen herausfiltern, so daß z.B. die
Einkäufer nicht mehr Kreditorenbuchungen aus dem Fibu-Bereich sehen
können.

SL/AP.pm
SL/AR.pm
SL/Auth.pm
doc/changelog
locale/de/all
sql/Pg-upgrade2-auth/rights_for_showing_ar_and_ap_transactions.pl [new file with mode: 0644]

index f754137..bcd6d83 100644 (file)
--- a/SL/AP.pm
+++ b/SL/AP.pm
@@ -491,6 +491,11 @@ sub ap_transactions {
     qq|LEFT JOIN payment_terms pt ON (pt.id = v.payment_id)|;
 
   my $where = '';
+
+  unless ( $main::auth->check_right($form->{login}, 'show_ap_transactions') ) {
+    $where .= " AND NOT invoice = 'f' ";  # remove ap transactions from Sales -> Reports -> Invoices
+  };
+
   my @values;
 
   if ($form->{vendor_id}) {
index b6a7376..d97c443 100644 (file)
--- a/SL/AR.pm
+++ b/SL/AR.pm
@@ -515,6 +515,11 @@ sub ar_transactions {
     qq|LEFT JOIN department d ON (d.id = a.department_id)|;
 
   my $where = "1 = 1";
+
+  unless ( $main::auth->check_right($form->{login}, 'show_ar_transactions') ) { 
+    $where .= " AND NOT invoice = 'f' ";  # remove ar transactions from Sales -> Reports -> Invoices
+  };
+
   if ($form->{customernumber}) {
     $where .= " AND c.customernumber = ?";
     push(@values, $form->{customernumber});
index 74ccd4e..59542d6 100644 (file)
@@ -1066,11 +1066,13 @@ sub all_rights_full {
     ["dunning_edit",                   $locale->text("Create and edit dunnings")],
     ["sales_all_edit",                 $locale->text("View/edit all employees sales documents")],
     ["edit_prices",                    $locale->text("Edit prices and discount (if not used, textfield is ONLY set readonly)")],
+    ["show_ar_transactions",           $locale->text("Show AR transactions as part of AR invoice report")],
     ["--ap",                           $locale->text("AP")],
     ["request_quotation_edit",         $locale->text("Create and edit RFQs")],
     ["purchase_order_edit",            $locale->text("Create and edit purchase orders")],
     ["purchase_delivery_order_edit",   $locale->text("Create and edit purchase delivery orders")],
     ["vendor_invoice_edit",            $locale->text("Create and edit vendor invoices")],
+    ["show_ap_transactions",           $locale->text("Show AP transactions as part of AP invoice report")],
     ["--warehouse_management",         $locale->text("Warehouse management")],
     ["warehouse_contents",             $locale->text("View warehouse content")],
     ["warehouse_management",           $locale->text("Warehouse management")],
index 5d4664e..088435b 100644 (file)
@@ -39,6 +39,14 @@ Größere neue Features:
 
 Kleinere neue Features und Detailverbesserungen:
 
+- Rechte für die Anzeige von Debitoren- und Kreditorenbuchungen in Berichten
+__Es kann sinnvoll sein, den Standardeinkäufern und Verkäufern keinen Zugriff
+__auf Debitoren- oder Kreditorenbuchungen zu geben. Debitorenbuchungen werden 
+__meist nur für die Mahngebührenrechnungen verwendet, da ist das nicht so
+__interessant, aber bei Kreditorenbuchungen werden oft Sachen gebucht, die
+__nichts mit Wareneinkauf zu tun haben, und nicht jeder sehen soll. Für diesen
+__Fall kann man diese Buchungen also per neuem Recht herausfiltern.
+
 - Recht für die Anzeige von Details und Berichte von Waren, Dienstleistungen und Erzeugnissen
   Statt nur ein Recht für die Bearbeitung von Artikeln zu haben, das gleichzeitig auch das Recht
   für die Anzeige von Details und Berichten über Artikel umfasst, wurde nun ein neues Recht eingeführt.
index dabbeb6..c920748 100755 (executable)
@@ -1835,6 +1835,8 @@ $self->{texts} = {
   'Show "mark as paid" in ar transactions' => '"als bezahlt markieren" bei Debitorenbuchungen anzeigen',
   'Show "mark as paid" in purchase invoices' => '"als bezahlt markieren" bei Einkaufsrechnungen anzeigen',
   'Show "mark as paid" in sales invoices' => '"als bezahlt markieren" bei Verkaufsrechnungen anzeigen',
+  'Show AP transactions as part of AP invoice report' => 'Kreditorenbuchungen zusammen mit Verkaufsrechnungen anzeigen',
+  'Show AR transactions as part of AR invoice report' => 'Debitorenbuchungen zusammen mit Verkaufsrechnungen anzeigen',
   'Show Bestbefore'             => 'Mindesthaltbarkeit anzeigen',
   'Show Filter'                 => 'Filter zeigen',
   'Show Salesman'               => 'Verkäufer anzeigen',
diff --git a/sql/Pg-upgrade2-auth/rights_for_showing_ar_and_ap_transactions.pl b/sql/Pg-upgrade2-auth/rights_for_showing_ar_and_ap_transactions.pl
new file mode 100644 (file)
index 0000000..9eaab72
--- /dev/null
@@ -0,0 +1,27 @@
+# @tag: rights_for_showing_ar_and_ap_transactions
+# @description: Setzt das Recht zur Anzeige von Debitoren- und Kreditorenbuchungen im Rechnungsbericht
+# @depends: release_3_0_0
+package SL::DBUpgrade2::rights_for_showing_ar_and_ap_transactions;
+
+use strict;
+use utf8;
+
+use parent qw(SL::DBUpgrade2::Base);
+
+use SL::DBUtils;
+
+sub run {
+  my ($self) = @_;
+
+  my $groups = $main::auth->read_groups();
+
+  foreach my $group (values %{$groups}) {
+    $group->{rights}->{show_ar_transactions} = 1;
+    $group->{rights}->{show_ap_transactions} = 1;
+    $main::auth->save_group($group);
+  }
+
+  return 1;
+} # end run
+
+1;