X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Frp.pl;h=bf1270ece208814a21cfb725197fdf166841e424;hb=1974df3353b9c43a8c53c699f430a8767438b341;hp=0106afdaaaebe15eababc796b86c48a04ff97075;hpb=4dbb09950c9f5596646537c12d991c99086fe7c1;p=kivitendo-erp.git diff --git a/bin/mozilla/rp.pl b/bin/mozilla/rp.pl index 0106afdaa..bf1270ece 100644 --- a/bin/mozilla/rp.pl +++ b/bin/mozilla/rp.pl @@ -32,15 +32,23 @@ #====================================================================== # # module for preparing Income Statement and Balance Sheet -# +# #====================================================================== -require "$form->{path}/arap.pl"; +use POSIX qw(strftime); use SL::PE; use SL::RP; +use SL::Iconv; +use SL::ReportGenerator; +use Data::Dumper; + +require "bin/mozilla/arap.pl"; +require "bin/mozilla/common.pl"; +require "bin/mozilla/reportgenerator.pl"; 1; + # end of main # this is for our long dates @@ -84,150 +92,158 @@ use SL::RP; # $locale->text('Non-taxable Sales') # $locale->text('Non-taxable Purchases') +# $form->parse_html_template('rp/html_report_susa') + +my $rp_access_map = { + 'projects' => 'report', + 'ar_aging' => 'general_ledger', + 'ap_aging' => 'general_ledger', + 'receipts' => 'cash', + 'payments' => 'cash', + 'trial_balance' => 'report', + 'income_statement' => 'report', + 'bwa' => 'report', + 'balance_sheet' => 'report', +}; + +sub check_rp_access { + my $right = $rp_access_map->{$form->{report}}; + $right ||= 'DOES_NOT_EXIST'; + + $auth->assert($right); +} + sub report { $lxdebug->enter_sub(); - %title = ( 'balance_sheet' => 'Balance Sheet', - 'income_statement' => 'Income Statement', - 'trial_balance' => 'Trial Balance', - 'ar_aging' => 'AR Aging', - 'ap_aging' => 'Offene Verbindlichkeiten', - 'tax_collected' => 'Tax collected', - 'tax_paid' => 'Tax paid', - 'nontaxable_sales' => 'Non-taxable Sales', - 'nontaxable_purchases' => 'Non-taxable Purchases', - 'receipts' => 'Receipts', - 'payments' => 'Payments', - 'projects' => 'Project Transactions', - 'bwa' => 'Betriebswirtschaftliche Auswertung', - 'ustva' => 'Umsatzsteuervoranmeldung', - ); - - $form->{title} = $locale->text($title{$form->{report}}); - - $accrual = ($eur) ? "" : "checked"; - $cash = ($eur) ? "checked" : ""; - - ($null,$null,$null,$null,$null,$year,$null,$null,$null) = localtime(); - $year += 1900; - + check_rp_access(); + + %title = ('balance_sheet' => 'Balance Sheet', + 'income_statement' => 'Income Statement', + 'trial_balance' => 'Trial Balance', + 'ar_aging' => 'AR Aging', + 'ap_aging' => 'Offene Verbindlichkeiten', + 'tax_collected' => 'Tax collected', + 'tax_paid' => 'Tax paid', + 'nontaxable_sales' => 'Non-taxable Sales', + 'nontaxable_purchases' => 'Non-taxable Purchases', + 'receipts' => 'Receipts', + 'payments' => 'Payments', + 'projects' => 'Project Transactions', + 'bwa' => 'Betriebswirtschaftliche Auswertung',); + + $form->{title} = $locale->text($title{ $form->{report} }); + + $accrual = ($eur) ? "" : "checked"; + $cash = ($eur) ? "checked" : ""; + + $year = (localtime)[5] + 1900; + # get departments $form->all_departments(\%myconfig); if (@{ $form->{all_departments} }) { $form->{selectdepartment} = "