X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FRP.pm;h=99595c1666daa761d141994bf91154d0308a002a;hb=32ee774ff3674951d5e2402750c1a3053ad63afa;hp=2aa1e8d980533a6f51c815ee1ad74b08d6c5326b;hpb=c510d88bbfea6818ffafaddb7286e88aec96d3b8;p=kivitendo-erp.git diff --git a/SL/RP.pm b/SL/RP.pm index 2aa1e8d98..99595c166 100644 --- a/SL/RP.pm +++ b/SL/RP.pm @@ -215,6 +215,8 @@ sub get_accounts { } if ($form->{project_id}) { + # Diese Bedingung wird derzeit niemals wahr sein, da man in Bericht->Bilanz keine + # Projekte auswählen kann $project = qq| AND (ac.project_id = | . conv_i($form->{project_id}, 'NULL') . qq|) |; } @@ -231,8 +233,8 @@ sub get_accounts { AND ac.trans_id IN ( SELECT trans_id - FROM acc_trans - JOIN chart ON (chart_id = id) + FROM acc_trans a + JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%AR_paid%') $subwhere ) @@ -252,8 +254,8 @@ sub get_accounts { AND ac.trans_id IN ( SELECT trans_id - FROM acc_trans - JOIN chart ON (chart_id = id) + FROM acc_trans a + JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%AP_paid%') $subwhere ) @@ -276,6 +278,7 @@ sub get_accounts { GROUP BY c.accno, c.description, c.category |; if ($form->{project_id}) { + # s.o. keine Projektauswahl in Bilanz $query .= qq| UNION ALL @@ -293,8 +296,8 @@ sub get_accounts { AND ac.trans_id IN ( SELECT trans_id - FROM acc_trans - JOIN chart ON (chart_id = id) + FROM acc_trans a + JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%AR_paid%') $subwhere ) @@ -315,8 +318,8 @@ sub get_accounts { AND ac.trans_id IN ( SELECT trans_id - FROM acc_trans - JOIN chart ON (chart_id = id) + FROM acc_trans a + JOIN chart c ON (a.chart_id = c.id) WHERE link LIKE '%AP_paid%' $subwhere ) @@ -325,10 +328,12 @@ sub get_accounts { } } else { # if ($form->{method} eq 'cash') - if ($department_id) { - $dpt_join = qq| JOIN dpt_trans t ON (t.trans_id = ac.trans_id) |; - $dpt_where = qq| AND t.department_id = $department_id |; - } + # ich sehe keinen sinn das nochmal explizit ohne conv_i aufzurufen + # bitte prüfen und löschen jan 15.11.2009 + # if ($department_id) { + # $dpt_join = qq| JOIN dpt_trans t ON (t.trans_id = ac.trans_id) |; + # $dpt_where = qq| AND t.department_id = $department_id |; + # } $query = qq| SELECT c.accno, sum(ac.amount) AS amount, c.description, c.category @@ -342,6 +347,7 @@ sub get_accounts { GROUP BY c.accno, c.description, c.category |; if ($form->{project_id}) { + # s.o. keine Projektauswahl in Bilanz $query .= qq| UNION ALL @@ -513,7 +519,7 @@ sub get_accounts_g { JOIN ar a ON (a.id = ac.trans_id) $dpt_join WHERE $where $dpt_where - AND ac.trans_id IN ( SELECT trans_id FROM acc_trans JOIN chart ON (chart_id = id) WHERE (link LIKE '%AR_paid%') $subwhere) + AND ac.trans_id IN ( SELECT trans_id FROM acc_trans a JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%AR_paid%') $subwhere) $project GROUP BY c.$category */ @@ -525,7 +531,7 @@ sub get_accounts_g { JOIN ap a ON (a.id = ac.trans_id) $dpt_join WHERE $where $dpt_where - AND ac.trans_id IN ( SELECT trans_id FROM acc_trans JOIN chart ON (chart_id = id) WHERE (link LIKE '%AP_paid%') $subwhere) + AND ac.trans_id IN ( SELECT trans_id FROM acc_trans a JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%AP_paid%') $subwhere) $project GROUP BY c.$category @@ -553,7 +559,7 @@ sub get_accounts_g { JOIN chart c on (p.income_accno_id = c.id) $dpt_join WHERE (c.category = 'I') $prwhere $dpt_where - AND ac.trans_id IN ( SELECT trans_id FROM acc_trans JOIN chart ON (chart_id = id) WHERE (link LIKE '%AR_paid%') $subwhere) + AND ac.trans_id IN ( SELECT trans_id FROM acc_trans a JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%AR_paid%') $subwhere) $project GROUP BY c.$category @@ -566,17 +572,17 @@ sub get_accounts_g { JOIN chart c on (p.expense_accno_id = c.id) $dpt_join WHERE (c.category = 'E') $prwhere $dpt_where - AND ac.trans_id IN ( SELECT trans_id FROM acc_trans JOIN chart ON (chart_id = id) WHERE (link LIKE '%AP_paid%') $subwhere) + AND ac.trans_id IN ( SELECT trans_id FROM acc_trans a JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%AP_paid%') $subwhere) $project GROUP BY c.$category |; } } else { # if ($form->{method} eq 'cash') - if ($department_id) { - $dpt_join = qq| JOIN dpt_trans t ON (t.trans_id = ac.trans_id) |; - $dpt_where = qq| AND (t.department_id = | . conv_i($department_id, 'NULL') . qq|) |; - } + # s.o. jan 15.11.2009 +# if ($department_id) { +# ($dpt_join, $dpt_where) = sql_department($department_id); +# } $query = qq| SELECT sum(ac.amount * chart_category_to_sgn(c.category)) AS amount, c.$category @@ -1176,9 +1182,19 @@ sub aging { $dpt_join = qq| JOIN department d ON (a.department_id = d.id) |; $where .= qq| AND (a.department_id = | . conv_i($department_id, 'NULL') . qq|)|; } + my $review_of_aging_list; + if ($form->{review_of_aging_list}) { + if ($form->{review_of_aging_list} =~ m "-"){ + my @period = split(/-/, $form->{review_of_aging_list}); + $review_of_aging_list = " AND $period[0] < date_part('days', now() - duedate) + AND date_part('days', now() - duedate) < $period[1]"; + } else { + $form->{review_of_aging_list} =~ s/[^0-9]//g; + $review_of_aging_list = " AND $form->{review_of_aging_list} < date_part('days', now() - duedate)"; + } + } my $q_details = qq| - -- between 0-30 days SELECT ${ct}.id AS ctid, ${ct}.name, street, zipcode, city, country, contact, email, @@ -1192,11 +1208,11 @@ sub aging { AND (exchangerate.transdate = ${arap}.transdate)) AS exchangerate FROM ${arap}, ${ct} WHERE ((paid != amount) OR (datepaid > (date $todate) AND datepaid is not null)) - AND (${arap}.storno IS FALSE) + AND NOT COALESCE (${arap}.storno, 'f') AND (${arap}.${ct}_id = ${ct}.id) AND (${ct}.id = ?) AND (transdate <= (date $todate) $fromwhere ) - + $review_of_aging_list ORDER BY ctid, transdate, invnumber |; my $sth_details = prepare_query($form, $dbh, $q_details); @@ -1328,8 +1344,8 @@ sub tax_report { AND ac.trans_id IN ( SELECT trans_id - FROM acc_trans - JOIN chart ON (chart_id = id) + FROM acc_trans a + JOIN chart c ON (a.chart_id = c.id) WHERE (link LIKE '%${ARAP}_paid%') AND (transdate <= $todate) ) @@ -1806,26 +1822,26 @@ sub ustva { &get_accounts_g($dbh, $last_period, $form->{fromdate}, $form->{todate}, $form, "pos_ustva"); # foreach $item (@categories_cent) { - # if ($form->{$item}{"jetzt"} > 0) { - # $form->{$item} = $form->{$item}{"jetzt"}; - # delete $form->{$item}{"jetzt"}; - # } + # if ($form->{$item}{"jetzt"} > 0) { + # $form->{$item} = $form->{$item}{"jetzt"}; + # delete $form->{$item}{"jetzt"}; + # } # } # foreach $item (@categories_euro) { - # if ($form->{$item}{"jetzt"} > 0) { - # $form->{$item} = $form->{$item}{"jetzt"}; - # delete $form->{$item}{"jetzt"}; - # } foreach $item (@categories_cent) { - # if ($form->{$item}{"jetzt"} > 0) { - # $form->{$item} = $form->{$item}{"jetzt"}; - # delete $form->{$item}{"jetzt"}; - # } + # if ($form->{$item}{"jetzt"} > 0) { + # $form->{$item} = $form->{$item}{"jetzt"}; + # delete $form->{$item}{"jetzt"}; + # } foreach $item (@categories_cent) { + # if ($form->{$item}{"jetzt"} > 0) { + # $form->{$item} = $form->{$item}{"jetzt"}; + # delete $form->{$item}{"jetzt"}; + # } # } # foreach $item (@categories_euro) { - # if ($form->{$item}{"jetzt"} > 0) { - # $form->{$item} = $form->{$item}{"jetzt"}; - # delete $form->{$item}{"jetzt"}; - # } + # if ($form->{$item}{"jetzt"} > 0) { + # $form->{$item} = $form->{$item}{"jetzt"}; + # delete $form->{$item}{"jetzt"}; + # } # } # # }