X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fgl.pl;h=2d8d31d3abcaddfabc57e15fedc10f190bcaeeff;hb=15f549fdb43fba2d99817c659533dfa02638bf27;hp=6e4d1d017301b19c43f087cb97e519568225ae6e;hpb=656824184939043cb4b8aa1edafef926f7ed1e8e;p=kivitendo-erp.git
diff --git a/bin/mozilla/gl.pl b/bin/mozilla/gl.pl
index 6e4d1d017..2d8d31d3a 100644
--- a/bin/mozilla/gl.pl
+++ b/bin/mozilla/gl.pl
@@ -35,6 +35,7 @@ use SL::GL;
use SL::PE;
require "$form->{path}/arap.pl";
+require "bin/mozilla/common.pl";
1;
@@ -154,8 +155,6 @@ sub edit {
my $tax = 0;
my $taxaccno = "";
foreach $ref (@{ $form->{GL} }) {
- $form->{"projectnumber_$i"} = "$ref->{projectnumber}--$ref->{project_id}";
-
$j = $i - 1;
if ($tax && ($ref->{accno} eq $taxaccno)) {
$form->{"tax_$j"} = abs($ref->{amount});
@@ -228,6 +227,21 @@ sub search {
| if $form->{selectdepartment};
+ $form->get_lists("projects" => { "key" => "ALL_PROJECTS",
+ "all" => 1 });
+
+ my %project_labels = ();
+ my @project_values = ("");
+ foreach my $item (@{ $form->{"ALL_PROJECTS"} }) {
+ push(@project_values, $item->{"id"});
+ $project_labels{$item->{"id"}} = $item->{"projectnumber"};
+ }
+
+ my $projectnumber =
+ NTI($cgi->popup_menu('-name' => "project_id",
+ '-values' => \@project_values,
+ '-labels' => \%project_labels));
+
# use JavaScript Calendar or not
$form->{jsscript} = $jscalendar;
$jsscript = "";
@@ -290,9 +304,14 @@ sub search {
| . $locale->text('Notes') . qq| |
|
+
+ | . $locale->text('Project Number') . qq| |
+ $projectnumber |
+
| . $locale->text('From') . qq| |
$button1
+ | . $locale->text('To (time)') . qq| |
$button2
@@ -342,6 +361,8 @@ sub search {
|
| . $locale->text('Subtotal') . qq| |
+ |
+ | . $locale->text('Project Number') . qq| |
@@ -447,6 +468,10 @@ sub generate_report {
$option .= "\n
" if $option;
$option .= $locale->text('Notes') . " : $form->{notes}";
}
+ if ($form->{project_id}) {
+ $href .= "&project_id=" . $form->escape($form->{project_id});
+ $callback .= "&project_id=" . $form->escape($form->{project_id});
+ }
if ($form->{datefrom}) {
$href .= "&datefrom=$form->{datefrom}";
@@ -469,8 +494,13 @@ sub generate_report {
. $locale->date(\%myconfig, $form->{dateto}, 1);
}
- @columns = $form->sort_columns(
- qw(transdate id reference description notes source debit debit_accno credit credit_accno debit_tax debit_tax_accno credit_tax credit_tax_accno accno gifi_accno)
+ @columns = $form->sort_columns( qw(
+ transdate id reference description
+ notes source debit debit_accno
+ credit credit_accno debit_tax debit_tax_accno
+ credit_tax credit_tax_accno accno gifi_accno
+ projectnumbers
+ )
);
if ($form->{accno} || $form->{gifi_accno}) {
@@ -560,6 +590,8 @@ sub generate_report {
. $locale->text('GIFI')
. "";
$column_header{balance} = "" . $locale->text('Balance') . " | ";
+ $column_header{projectnumbers} =
+ "" . $locale->text('Project Numbers') . " | ";
$form->{landscape} = 1;
@@ -749,16 +781,23 @@ sub generate_report {
}
}
+ $transdate = "";
+ foreach $key (sort keys(%{ $ref->{transdate} })) {
+ if ($key == 0) {
+ $transdate = "$ref->{transdate}{$key}";
+ } else {
+ $transdate .= "
$ref->{transdate}{$key}";
+ }
+ }
+
# $ref->{debit} = $form->format_amount(\%myconfig, $ref->{debit}, 2, " ");
# $ref->{credit} = $form->format_amount(\%myconfig, $ref->{credit}, 2, " ");
$column_data{id} = " $ref->{id} | ";
- $column_data{transdate} =
- " $ref->{transdate} | ";
+ $column_data{transdate} = "$transdate | ";
$column_data{reference} =
"{module}.pl?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{reference} | ";
- $column_data{description} =
- "$ref->{description} | ";
+ $column_data{description} = "$ref->{description} | ";
$column_data{source} = "$ref->{source} | ";
$column_data{notes} = "$ref->{notes} | ";
$column_data{debit} = "$debit | ";
@@ -782,6 +821,8 @@ sub generate_report {
$column_data{balance} =
""
. $form->format_amount(\%myconfig, $form->{balance}, 2, 0) . " | ";
+ $column_data{projectnumbers} =
+ "" . join(", ", sort({ lc($a) cmp lc($b) } keys(%{ $ref->{projectnumbers} }))) . " | ";
$i++;
$i %= 2;
@@ -796,6 +837,12 @@ sub generate_report {
map { $column_data{$_} = " | " } @column_index;
+ my $balanced_ledger = $totaldebit
+ + $totaldebittax
+ - $totalcredit
+ - $totalcredittax;
+ # = 0 for balanced ledger
+
$column_data{debit} =
""
. $form->format_amount(\%myconfig, $totaldebit, 2, " ") . " | ";
@@ -820,6 +867,27 @@ sub generate_report {
print qq|
+ |;
+
+
+ if ( abs($balanced_ledger) > 0.001 ) {
+
+ print qq||
+ . $locale->text('Unbalanced Ledger')
+ . ": "
+ . $form->format_amount(\%myconfig, $balanced_ledger, 3, " ")
+
+ } elsif ( abs($balanced_ledger) <= 0.001 ) {
+
+ print qq| | |
+ . $locale->text('Balanced Ledger')
+
+ }
+
+
+ print qq|
+ |
+
@@ -848,14 +916,7 @@ sub generate_report {
|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
+ . $locale->text('Vendor Invoice') . qq|">
@@ -894,21 +955,7 @@ sub gl_subtotal {
sub update {
$lxdebug->enter_sub();
- if ($form->{transdate} ne $form->{oldtransdate}) {
- if ($form->{selectprojectnumber}) {
- $form->all_projects(\%myconfig, undef, $form->{transdate});
- if (@{ $form->{all_project} }) {
- $form->{selectprojectnumber} = "