#
#======================================================================
-require "$form->{path}/arap.pl";
+require "bin/mozilla/arap.pl";
+require "bin/mozilla/common.pl";
use SL::PE;
use SL::RP;
+use SL::USTVA;
+use SL::Iconv;
1;
$accrual = ($eur) ? "" : "checked";
$cash = ($eur) ? "checked" : "";
- ($null, $null, $null, $null, $null, $year, $null, $null, $null) =
- localtime();
- $year += 1900;
+ $year = (localtime)[5] + 1900;
# get departments
$form->all_departments(\%myconfig);
</tr>
| 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;
+ $form->{jsscript} = 1;
$jsscript = "";
if ($form->{report} eq "ustva") {
$department = "";
if ($name_1 eq "") {
$button1 = qq|
- <input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}">|;
+ <input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}" onBlur=\"check_right_date_format(this)\">|;
$button1_2 = qq|
<input type=button name=$name_2 id="$trigger_2" value=|
. $locale->text('button') . qq|>|;
Form->write_trigger(\%myconfig, "1", "$name_2", "BR", "$trigger_2");
} else {
$button1 = qq|
- <input name=$name_1 id=$id_1 size=11 title="$myconfig{dateformat}" value=$value_1>|;
+ <input name=$name_1 id=$id_1 size=11 title="$myconfig{dateformat}" value="$value_1" onBlur=\"check_right_date_format(this)\">|;
$button1_2 = qq|
<input type=button name=$name_1 id="$trigger_1" value=|
. $locale->text('button') . qq|>|;
$button2 = qq|
- <input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}">|;
+ <input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}" onBlur=\"check_right_date_format(this)\">|;
$button2_2 = qq|
<input type=button name=$name_2 id="$trigger_2" value=|
. $locale->text('button') . qq|>
# without JavaScript Calendar
if ($name_1 eq "") {
$button1 =
- qq|<input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}">|;
+ qq|<input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}" onBlur=\"check_right_date_format(this)\">|;
} else {
$button1 =
- qq|<input name=$name_1 id=$id_1 size=11 title="$myconfig{dateformat}" value=$value_1>|;
+ qq|<input name=$name_1 id=$id_1 size=11 title="$myconfig{dateformat}" value=$value_1 onBlur=\"check_right_date_format(this)\">|;
$button2 =
- qq|<input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}">|;
+ qq|<input name=$name_2 id=$id_2 size=11 title="$myconfig{dateformat}" onBlur=\"check_right_date_format(this)\">|;
}
}
-
+ $form->{javascript} .= qq|<script type="text/javascript" src="js/common.js"></script>|;
$form->header;
-
+ $onload = qq|focus()|;
+ $onload .= qq|;setupDateFormat('|. $myconfig{dateformat} .qq|', '|. $locale->text("Falsches Datumsformat!") .qq|')|;
+ $onload .= qq|;setupPoints('|. $myconfig{numberformat} .qq|', '|. $locale->text("wrongformat") .qq|')|;
print qq|
-<body>
+<body onLoad="$onload">
<form method=post action=$form->{script}>
<td><input name=l_heading class=checkbox type=checkbox value=Y> |
. $locale->text('Heading') . qq|
<input name=l_subtotal class=checkbox type=checkbox value=Y> |
- . $locale->text('Subtotal')
- . qq|</td>
+ . $locale->text('Subtotal') . qq|</td>
</tr>
$jsscript
print qq|
<tr>
<th align=right nowrap>| . $locale->text('Project') . qq|</th>
- <td colspan=3><input name=projectnumber size=25</td>
+ <td colspan=3>$projectnumber</td>
</tr>
<input type=hidden name=nextsub value=generate_income_statement>
</table>
<table>
<tr>
<th align=left><input name=reporttype class=radio type=radio value="custom" checked> |
- . $locale->text('Customized Report')
- . qq|</th>
+ . $locale->text('Customized Report') . qq|</th>
</tr>
<tr>
<th colspan=1>| . $locale->text('Year') . qq|</th>
<td><input name=year size=11 title="|
- . $locale->text('YYYY')
- . qq|" value="$year"></td>
+ . $locale->text('YYYY') . qq|" value="$year"></td>
</tr>
|;
<td align=right> <input name=duetyp class=radio type=radio value="13"
"checked"></td>
<td><input name=duetyp class=radio type=radio value="A" $checked > 1. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
|;
$checked = "";
print qq|
<td><input name=duetyp class=radio type=radio value="1" $checked > |
- . $locale->text('January')
- . qq|</td>
+ . $locale->text('January') . qq|</td>
|;
$checked = "";
print qq|
<td><input name=duetyp class=radio type=radio value="5" $checked > |
- . $locale->text('May')
- . qq|</td>
+ . $locale->text('May') . qq|</td>
<td><input name=duetyp class=radio type=radio value="9" $checked > |
- . $locale->text('September')
- . qq|</td>
+ . $locale->text('September') . qq|</td>
</tr>
<tr>
<td align= right> </td>
<td><input name=duetyp class=radio type=radio value="B" $checked> 2. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
<td><input name=duetyp class=radio type=radio value="2" $checked > |
- . $locale->text('February')
- . qq|</td>
+ . $locale->text('February') . qq|</td>
<td><input name=duetyp class=radio type=radio value="6" $checked > |
- . $locale->text('June')
- . qq|</td>
+ . $locale->text('June') . qq|</td>
<td><input name=duetyp class=radio type=radio value="10" $checked > |
- . $locale->text('October')
- . qq|</td>
+ . $locale->text('October') . qq|</td>
</tr>
<tr>
<td> </td>
<td><input name=duetyp class=radio type=radio value="C" $checked> 3. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
<td><input name=duetyp class=radio type=radio value="3" $checked > |
- . $locale->text('March')
- . qq|</td>
+ . $locale->text('March') . qq|</td>
<td><input name=duetyp class=radio type=radio value="7" $checked > |
- . $locale->text('July')
- . qq|</td>
+ . $locale->text('July') . qq|</td>
<td><input name=duetyp class=radio type=radio value="11" $checked > |
- . $locale->text('November')
- . qq|</td>
+ . $locale->text('November') . qq|</td>
</tr>
<tr>
<td> </td>
<td><input name=duetyp class=radio type=radio value="D" $checked> 4. |
- . $locale->text('Quarter')
- . qq| </td>
+ . $locale->text('Quarter') . qq| </td>
<td><input name=duetyp class=radio type=radio value="4" $checked > |
- . $locale->text('April')
- . qq|</td>
+ . $locale->text('April') . qq|</td>
<td><input name=duetyp class=radio type=radio value="8" $checked > |
- . $locale->text('August')
- . qq|</td>
+ . $locale->text('August') . qq|</td>
<td><input name=duetyp class=radio type=radio value="12" $checked > |
- . $locale->text('December')
- . qq|</td>
+ . $locale->text('December') . qq|</td>
</tr>
<tr>
</tr>
<tr>
<th align=left><input name=reporttype class=radio type=radio value="free" $checked> |
- . $locale->text('Free report period')
- . qq|</th>
+ . $locale->text('Free report period') . qq|</th>
<td align=left colspan=4>| . $locale->text('From') . qq|
$button1
$button1_2
<td colspan=3><input name=method class=radio type=radio value=accrual $accrual>|
. $locale->text('Accrual') . qq|
<input name=method class=radio type=radio value=cash $cash>|
- . $locale->text('EUR')
- . qq|</td>
+ . $locale->text('EUR') . qq|</td>
</tr>
$jsscript
print qq|
<tr>
<th align=right nowrap>| . $locale->text('Project') . qq|</th>
- <td colspan=3><input name=projectnumber size=25</td>
+ <td colspan=3>$projectnumber</td>
</tr>
<input type=hidden name=nextsub value=generate_bwa>
</table>
<table>
<tr>
<th align=left><input name=reporttype class=radio type=radio value="custom" checked> |
- . $locale->text('Customized Report')
- . qq|</th>
+ . $locale->text('Customized Report') . qq|</th>
</tr>
<tr>
<th colspan=1>| . $locale->text('Year') . qq|</th>
<td><input name=year size=11 title="|
- . $locale->text('YYYY')
- . qq|" value="$year"></td>
+ . $locale->text('YYYY') . qq|" value="$year"></td>
</tr>
|;
<td align=right> <input name=duetyp class=radio type=radio value="13"
$checked></td>
<td><input name=duetyp class=radio type=radio value="A" $checked > 1. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
|;
$checked = "checked";
print qq|
<td><input name=duetyp class=radio type=radio value="1" $checked > |
- . $locale->text('January')
- . qq|</td>
+ . $locale->text('January') . qq|</td>
|;
$checked = "";
print qq|
<td><input name=duetyp class=radio type=radio value="5" $checked > |
- . $locale->text('May')
- . qq|</td>
+ . $locale->text('May') . qq|</td>
<td><input name=duetyp class=radio type=radio value="9" $checked > |
- . $locale->text('September')
- . qq|</td>
+ . $locale->text('September') . qq|</td>
</tr>
<tr>
<td align= right> </td>
<td><input name=duetyp class=radio type=radio value="B" $checked> 2. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
<td><input name=duetyp class=radio type=radio value="2" $checked > |
- . $locale->text('February')
- . qq|</td>
+ . $locale->text('February') . qq|</td>
<td><input name=duetyp class=radio type=radio value="6" $checked > |
- . $locale->text('June')
- . qq|</td>
+ . $locale->text('June') . qq|</td>
<td><input name=duetyp class=radio type=radio value="10" $checked > |
- . $locale->text('October')
- . qq|</td>
+ . $locale->text('October') . qq|</td>
</tr>
<tr>
<td> </td>
<td><input name=duetyp class=radio type=radio value="C" $checked> 3. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
<td><input name=duetyp class=radio type=radio value="3" $checked > |
- . $locale->text('March')
- . qq|</td>
+ . $locale->text('March') . qq|</td>
<td><input name=duetyp class=radio type=radio value="7" $checked > |
- . $locale->text('July')
- . qq|</td>
+ . $locale->text('July') . qq|</td>
<td><input name=duetyp class=radio type=radio value="11" $checked > |
- . $locale->text('November')
- . qq|</td>
+ . $locale->text('November') . qq|</td>
</tr>
<tr>
<td> </td>
<td><input name=duetyp class=radio type=radio value="D" $checked> 4. |
- . $locale->text('Quarter')
- . qq| </td>
+ . $locale->text('Quarter') . qq| </td>
<td><input name=duetyp class=radio type=radio value="4" $checked > |
- . $locale->text('April')
- . qq|</td>
+ . $locale->text('April') . qq|</td>
<td><input name=duetyp class=radio type=radio value="8" $checked > |
- . $locale->text('August')
- . qq|</td>
+ . $locale->text('August') . qq|</td>
<td><input name=duetyp class=radio type=radio value="12" $checked > |
- . $locale->text('December')
- . qq|</td>
+ . $locale->text('December') . qq|</td>
</tr>
<tr>
</tr>
<tr>
<th align=left><input name=reporttype class=radio type=radio value="free" $checked> |
- . $locale->text('Free report period')
- . qq|</th>
+ . $locale->text('Free report period') . qq|</th>
<td align=left colspan=4>| . $locale->text('From') . qq|
$button1
$button1_2
<td colspan=3><input name=method class=radio type=radio value=accrual $accrual>|
. $locale->text('Accrual') . qq|
<input name=method class=radio type=radio value=cash $cash>|
- . $locale->text('EUR')
- . qq|</td>
+ . $locale->text('EUR') . qq|</td>
</tr>
<tr>
- <th align=right colspan=4>| . $locale->text('Decimalplaces') . qq|</th>
- <td><input name=decimalplaces size=3></td>
+ <th align=right colspan=4>|
+ . $locale->text('Decimalplaces')
+ . qq|</th>
+ <td><input name=decimalplaces size=3 value="2"></td>
</tr>
$jsscript
<table>
<tr>
<th align=left><input name=reporttype class=radio type=radio value="custom" checked> |
- . $locale->text('Zeitraum')
- . qq|</th>
+ . $locale->text('Zeitraum') . qq|</th>
</tr>
<tr>
<th colspan=1>| . $locale->text('Year') . qq|</th>
<td><input name=year size=11 title="|
- . $locale->text('YYYY')
- . qq|" value="$year"></td>
+ . $locale->text('YYYY') . qq|" value="$year"></td>
</tr>
|;
<td align=right> <input name=duetyp class=radio type=radio value="13"
$checked></td>
<td><input name=duetyp class=radio type=radio value="A" $checked > 1. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
|;
$checked = "checked";
print qq|
<td><input name=duetyp class=radio type=radio value="1" $checked > |
- . $locale->text('January')
- . qq|</td>
+ . $locale->text('January') . qq|</td>
|;
$checked = "";
print qq|
<td><input name=duetyp class=radio type=radio value="5" $checked > |
- . $locale->text('May')
- . qq|</td>
+ . $locale->text('May') . qq|</td>
<td><input name=duetyp class=radio type=radio value="9" $checked > |
- . $locale->text('September')
- . qq|</td>
+ . $locale->text('September') . qq|</td>
</tr>
<tr>
<td align= right> </td>
<td><input name=duetyp class=radio type=radio value="B" $checked> 2. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
<td><input name=duetyp class=radio type=radio value="2" $checked > |
- . $locale->text('February')
- . qq|</td>
+ . $locale->text('February') . qq|</td>
<td><input name=duetyp class=radio type=radio value="6" $checked > |
- . $locale->text('June')
- . qq|</td>
+ . $locale->text('June') . qq|</td>
<td><input name=duetyp class=radio type=radio value="10" $checked > |
- . $locale->text('October')
- . qq|</td>
+ . $locale->text('October') . qq|</td>
</tr>
<tr>
<td> </td>
<td><input name=duetyp class=radio type=radio value="C" $checked> 3. |
- . $locale->text('Quarter')
- . qq|</td>
+ . $locale->text('Quarter') . qq|</td>
<td><input name=duetyp class=radio type=radio value="3" $checked > |
- . $locale->text('March')
- . qq|</td>
+ . $locale->text('March') . qq|</td>
<td><input name=duetyp class=radio type=radio value="7" $checked > |
- . $locale->text('July')
- . qq|</td>
+ . $locale->text('July') . qq|</td>
<td><input name=duetyp class=radio type=radio value="11" $checked > |
- . $locale->text('November')
- . qq|</td>
+ . $locale->text('November') . qq|</td>
</tr>
<tr>
<td> </td>
<td><input name=duetyp class=radio type=radio value="D" $checked> 4. |
- . $locale->text('Quarter')
- . qq| </td>
+ . $locale->text('Quarter') . qq| </td>
<td><input name=duetyp class=radio type=radio value="4" $checked > |
- . $locale->text('April')
- . qq|</td>
+ . $locale->text('April') . qq|</td>
<td><input name=duetyp class=radio type=radio value="8" $checked > |
- . $locale->text('August')
- . qq|</td>
+ . $locale->text('August') . qq|</td>
<td><input name=duetyp class=radio type=radio value="12" $checked > |
- . $locale->text('December')
- . qq|</td>
+ . $locale->text('December') . qq|</td>
</tr>
<tr>
<td colspan=3><input name=method class=radio type=radio value=accrual $accrual>|
. $locale->text('Accrual') . qq|
<input name=method class=radio type=radio value=cash $cash>|
- . $locale->text('EUR')
- . qq|</td>
+ . $locale->text('EUR') . qq|</td>
</tr>
<tr>
<th colspan=4>|;
</tr>
<tr>
<th align=right>| . $locale->text('Decimalplaces') . qq|</th>
- <td><input name=decimalplaces size=3></td>
+ <td><input name=decimalplaces size=3 value="2"></td>
</tr>
</table>
</td>
<td colspan=3><input name=method class=radio type=radio value=accrual $accrual>|
. $locale->text('Accrual') . qq|
<input name=method class=radio type=radio value=cash $cash>|
- . $locale->text('EUR')
- . qq|</td>
+ . $locale->text('EUR') . qq|</td>
</tr>
<tr>
<input name=l_subtotal class=checkbox type=checkbox value=Y> |
. $locale->text('Subtotal') . qq|
<input name=l_accno class=checkbox type=checkbox value=Y> |
- . $locale->text('Account Number')
- . qq|</td>
+ . $locale->text('Account Number') . qq|</td>
</tr>
$jsscript
<input name=l_subtotal class=checkbox type=checkbox value=Y> |
. $locale->text('Subtotal') . qq|
<input name=all_accounts class=checkbox type=checkbox value=Y> |
- . $locale->text('All Accounts')
- . qq|</td>
+ . $locale->text('All Accounts') . qq|</td>
</tr>
$jsscript
}
if ($form->{report} =~ /^tax_/) {
- $gifi = "";
-
$form->{db} = ($form->{report} =~ /_collected/) ? "ar" : "ap";
RP->get_taxaccounts(\%myconfig, \%$form);
</td>
</tr>
-|;
-
- if (@{ $form->{gifi_taxaccounts} }) {
- print qq|
- <tr>
- <th align=right>| . $locale->text('GIFI') . qq|</th>
- <td colspan=3>
-|;
-
- foreach $ref (@{ $form->{gifi_taxaccounts} }) {
-
- print
- qq|<input name=accno class=radio type=radio value="gifi_$ref->{accno}"> $ref->{description}
-
- <input name="gifi_$ref->{accno}_description" type=hidden value="$ref->{description}">
- <input name="gifi_$ref->{accno}_rate" type=hidden value="$ref->{rate}">|;
-
- }
-
- print qq|
- </td>
- </tr>
-|;
- }
-
- print qq|
<tr>
<th align=right>| . $locale->text('Method') . qq|</th>
<td colspan=3><input name=method class=radio type=radio value=accrual $accrual>|
. $locale->text('Accrual') . qq|
<input name=method class=radio type=radio value=cash $cash>|
- . $locale->text('EUR')
- . qq|</td>
+ . $locale->text('EUR') . qq|</td>
</tr>
</table>
</td>
}
if ($form->{report} =~ /^nontaxable_/) {
- $gifi = "";
-
$form->{db} = ($form->{report} =~ /_sales/) ? "ar" : "ap";
print qq|
<td colspan=3><input name=method class=radio type=radio value=accrual $accrual>|
. $locale->text('Accrual') . qq|
<input name=method class=radio type=radio value=cash $cash>|
- . $locale->text('EUR')
- . qq|</td>
+ . $locale->text('EUR') . qq|</td>
</tr>
<tr>
<th align=right>| . $locale->text('Include in Report') . qq|</th>
}
if (($form->{report} eq "ar_aging") || ($form->{report} eq "ap_aging")) {
- $gifi = "";
-
if ($form->{report} eq 'ar_aging') {
$label = $locale->text('Customer');
$form->{vc} = 'customer';
# above action can be removed if there is more than one input field
if ($form->{report} =~ /(receipts|payments)$/) {
- $gifi = "";
-
$form->{db} = ($form->{report} =~ /payments$/) ? "ap" : "ar";
RP->paymentaccounts(\%myconfig, \%$form);
<tr>
<td align=right><input type=checkbox style=checkbox name=fx_transaction value=1 checked></td>
<th align=left colspan=3>|
- . $locale->text('Include Exchangerate Difference')
- . qq|</td>
+ . $locale->text('Include Exchangerate Difference') . qq|</td>
</tr>
$jsscript
</table>
<br>
-<input type=hidden name=path value=$form->{path}>
<input type=hidden name=login value=$form->{login}>
<input type=hidden name=password value=$form->{password}>
. $locale->text('Continue') . qq|">
|;
- # Hier Aufruf von get_config aus bin/mozilla/fa.pl zum
- # Einlesen der Finanzamtdaten
- get_config($userspath, 'finanzamt.ini');
+ # Hier Aufruf von get_config zum Einlesen der Finanzamtdaten
+ USTVA->get_config($userspath, 'finanzamt.ini');
$disabled = qq|disabled="disabled"|;
$disabled = '' if ($form->{elster} eq '1');
$lxdebug->leave_sub();
}
-sub continue { &{ $form->{nextsub} } }
+sub continue { call_sub($form->{"nextsub"}); }
sub get_project {
$lxdebug->enter_sub();
$form->{endbold} = "</b>";
$form->{br} = "<br>";
- &get_project(generate_income_statement);
-
- $form->{projectnumber} = $form->{projectnumber_1};
-
if ($form->{reporttype} eq "custom") {
#forgotten the year --> thisyear
$longfromdate = $locale->date(\%myconfig, $form->{fromdate}, 1);
$shortfromdate = $locale->date(\%myconfig, $form->{fromdate}, 0);
- $form->{this_period} = "$shortfromdate<br>\n$shorttodate";
+ $form->{this_period} = "$shortfromdate\n$shorttodate";
$form->{period} =
$locale->text('for Period')
- . qq|<br>\n$longfromdate |
+ . qq|\n$longfromdate |
. $locale->text('Bis')
. qq| $longtodate|;
}
$longcomparetodate = $locale->date(\%myconfig, $form->{comparetodate}, 1);
$shortcomparetodate = $locale->date(\%myconfig, $form->{comparetodate}, 0);
- $form->{last_period} = "$shortcomparefromdate<br>\n$shortcomparetodate";
+ $form->{last_period} = "$shortcomparefromdate\n$shortcomparetodate";
$form->{period} .=
- "<br>\n$longcomparefromdate "
+ "\n$longcomparefromdate "
. $locale->text('Bis')
. qq| $longcomparetodate|;
}
# setup variables for the form
@a = qw(company address businessnumber);
map { $form->{$_} = $myconfig{$_} } @a;
- $form->{address} =~ s/\\n/<br>/g;
$form->{templates} = $myconfig{templates};
$form->{IN} = "balance_sheet.html";
# setup company variables for the form
- map { $form->{$_} = $myconfig{$_} }
+ map { $form->{$_} = $myconfig{$_};
+ $form->{$_} =~ s/\\n/\n/g; }
(qw(company address businessnumber nativecurr));
- $form->{address} =~ s/\\n/<br>/g;
$form->{templates} = $myconfig{templates};
$column_header{endbalance} =
qq|<th class=listheading>| . $locale->text('Balance') . qq|</th>|;
- if ($form->{accounttype} eq 'gifi') {
- $column_header{accno} =
- qq|<th class=listheading>| . $locale->text('GIFI') . qq|</th>|;
- }
-
$form->header;
print qq|
$description = $form->escape($ref->{description});
$href =
- qq|ca.pl?path=$form->{path}&action=list_transactions&accounttype=$form->{accounttype}&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&sort=transdate&l_heading=$form->{l_heading}&l_subtotal=$form->{l_subtotal}&department=$department&eur=$form->{eur}&projectnumber=$projectnumber&project_id=$form->{project_id}&title=$title&nextsub=$form->{nextsub}|;
-
- if ($form->{accounttype} eq 'gifi') {
- $href .= "&gifi_accno=$ref->{accno}&gifi_description=$description";
- $na = $locale->text('N/A');
- map { $ref->{$_} = $na } qw(accno description) unless $ref->{accno};
- } else {
- $href .= "&accno=$ref->{accno}&description=$description";
- }
+ qq|ca.pl?action=list_transactions&accounttype=$form->{accounttype}&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&sort=transdate&l_heading=$form->{l_heading}&l_subtotal=$form->{l_subtotal}&department=$department&eur=$form->{eur}&projectnumber=$projectnumber&project_id=$form->{project_id}&title=$title&nextsub=$form->{nextsub}&accno=$ref->{accno}&description=$description|;
$ml = ($ref->{category} =~ /(A|C|E)/) ? -1 : 1;
- $debit = $form->format_amount(\%myconfig, $ref->{debit}, 2, " ");
- $credit = $form->format_amount(\%myconfig, $ref->{credit}, 2, " ");
+ $debit = ($ref->{debit} != 0) ? $form->format_amount(\%myconfig, $ref->{debit}, 2, " ") : " ";
+ $credit = ($ref->{credit} != 0) ? $form->format_amount(\%myconfig, $ref->{credit}, 2, " ") : " ";
$begbalance =
$form->format_amount(\%myconfig, $ref->{balance} * $ml, 2, " ");
$endbalance =
$form->{arap} = "ar";
$form->{callback} =
- qq|$form->{script}?path=$form->{path}&action=generate_ar_aging&login=$form->{login}&password=$form->{password}&todate=$form->{todate}&customer=$customer&title=$title|;
+ qq|$form->{script}?action=generate_ar_aging&login=$form->{login}&password=$form->{password}&todate=$form->{todate}&customer=$customer&title=$title|;
RP->aging(\%myconfig, \%$form);
&aging;
$form->{arap} = "ap";
$form->{callback} =
- qq|$form->{script}?path=$form->{path}&action=generate_ap_aging&login=$form->{login}&password=$form->{password}&todate=$form->{todate}&vendor=$vendor&title=$title|;
+ qq|$form->{script}?action=generate_ap_aging&login=$form->{login}&password=$form->{password}&todate=$form->{todate}&vendor=$vendor&title=$title|;
RP->aging(\%myconfig, \%$form);
&aging;
$i++;
if ($subtotal) {
- $c0subtotal =
- $form->format_amount(\%myconfig, $c0subtotal, 2, " ");
- $c30subtotal =
- $form->format_amount(\%myconfig, $c30subtotal, 2, " ");
- $c60subtotal =
- $form->format_amount(\%myconfig, $c60subtotal, 2, " ");
- $c90subtotal =
- $form->format_amount(\%myconfig, $c90subtotal, 2, " ");
+ $c0subtotal = ($c0subtotal != 0) ?
+ $form->format_amount(\%myconfig, $c0subtotal, 2, " ") : "";
+ $c30subtotal = ($c30subtotal != 0) ?
+ $form->format_amount(\%myconfig, $c30subtotal, 2, " ") : "";
+ $c60subtotal = ($c60subtotal != 0) ?
+ $form->format_amount(\%myconfig, $c60subtotal, 2, " ") : "";
+ $c90subtotal = ($c90subtotal != 0) ?
+ $form->format_amount(\%myconfig, $c90subtotal, 2, " ") : "";
}
$column_data{ct} = qq|<th> </th>|;
$c60total += $ref->{c60};
$c90total += $ref->{c90};
- $ref->{c0} = $form->format_amount(\%myconfig, $ref->{c0}, 2, " ");
- $ref->{c30} = $form->format_amount(\%myconfig, $ref->{c30}, 2, " ");
- $ref->{c60} = $form->format_amount(\%myconfig, $ref->{c60}, 2, " ");
- $ref->{c90} = $form->format_amount(\%myconfig, $ref->{c90}, 2, " ");
+ $ref->{c0} = ($ref->{c0} != 0) ? $form->format_amount(\%myconfig, $ref->{c0}, 2, " ") : "";
+ $ref->{c30} = ($ref->{c30} != 0) ? $form->format_amount(\%myconfig, $ref->{c30}, 2, " ") : "";
+ $ref->{c60} = ($ref->{c60} != 0) ? $form->format_amount(\%myconfig, $ref->{c60}, 2, " ") : "";
+ $ref->{c90} = ($ref->{c90} != 0) ? $form->format_amount(\%myconfig, $ref->{c90}, 2, " ") : "";
$href =
- qq|$ref->{module}.pl?path=$form->{path}&action=edit&id=$ref->{id}&login=$form->{login}&password=$form->{password}&callback=|
+ qq|$ref->{module}.pl?action=edit&id=$ref->{id}&login=$form->{login}&password=$form->{password}&callback=|
. $form->escape($form->{callback});
$column_data{invnumber} = qq|<td><a href=$href>$ref->{invnumber}</a></td>|;
<input type=hidden name=department value="$form->{department}">
-<input type=hidden name=path value=$form->{path}>
<input type=hidden name=login value=$form->{login}>
<input type=hidden name=password value=$form->{password}>
<input class=submit type=submit name=action value="|
. $locale->text('Print') . qq|">
<input class=submit type=submit name=action value="|
- . $locale->text('E-mail') . qq|">
-|;
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
+ . $locale->text('E-mail') . qq|">|;
+}
- print qq|
+print qq|
</form>
</body>
$lxdebug->leave_sub();
}
-sub print_options {
- $lxdebug->enter_sub();
-
- $form->{sendmode} = "attachment";
- $form->{copies} = 2 unless $form->{copies};
-
- $form->{PD}{ $form->{type} } = "selected";
- $form->{DF}{ $form->{format} } = "selected";
- $form->{OP}{ $form->{media} } = "selected";
- $form->{SM}{ $form->{sendmode} } = "selected";
-
- $type = qq|
- <option value=statement $form->{PD}{statement}>|
- . $locale->text('Statement');
-
- if ($form->{media} eq 'email') {
- $media = qq|
- <option value=attachment $form->{SM}{attachment}>|
- . $locale->text('Attachment') . qq|
- <option value=inline $form->{SM}{inline}>| . $locale->text('In-line');
- } else {
- $media = qq|
- <option value=screen $form->{OP}{screen}>| . $locale->text('Screen');
- if ($myconfig{printer} && $latex) {
- $media .= qq|
- <option value=printer $form->{OP}{printer}>|
- . $locale->text('Printer');
- }
- }
-
- if ($latex) {
- $format .= qq|
- <option value=postscript $form->{DF}{postscript}>|
- . $locale->text('Postscript') . qq|
- <option value=pdf $form->{DF}{pdf}>| . $locale->text('PDF');
- }
-
- print qq|
-<table>
- <tr>
- <td><select name=type>$type</select></td>
- <td><select name=format>$format</select></td>
- <td><select name=media>$media</select></td>
-|;
-
- if ($myconfig{printer} && $latex && $form->{media} ne 'email') {
- print qq|
- <td>| . $locale->text('Copies') . qq|
- <input name=copies size=2 value=$form->{copies}></td>
-|;
- }
-
- print qq|
- </tr>
-</table>
-|;
-
- $lxdebug->leave_sub();
-}
-
sub e_mail {
$lxdebug->enter_sub();
sub send_email {
$lxdebug->enter_sub();
- $form->{OUT} = "$sendmail";
-
$form->{subject} = $locale->text('Statement') . qq| - $form->{todate}|
unless $form->{subject};
$form->{"statement_1"} = 1;
- &print_form;
+ $form->{media} = 'email';
+ print_form();
- $form->redirect(
- $locale->text('Statement sent to') . " $form->{$form->{ct}}");
+ $form->redirect($locale->text('Statement sent to') . " $form->{$form->{ct}}");
$lxdebug->leave_sub();
}
$form->error($locale->text('Nothing selected!')) unless $selected;
if ($form->{media} eq 'printer') {
- $form->{OUT} = "| $myconfig{printer}";
$form->{"$form->{ct}_id"} = "";
} else {
$form->{"statement_1"} = 1;
RP->aging(\%myconfig, \%$form);
- &print_form;
+ print_form();
$form->redirect($locale->text('Statements sent to printer!'))
if ($form->{media} eq 'printer');
sub print_form {
$lxdebug->enter_sub();
- $form->{statementdate} = $locale->date(\%myconfig, $form->{todate}, 1);
+ my %replacements =
+ (
+ "ä" => "ae", "ö" => "oe", "ü" => "ue",
+ "Ä" => "Ae", "Ö" => "Oe", "Ü" => "Ue",
+ "ß" => "ss",
+ " " => "_"
+ );
- $form->{templates} = "$myconfig{templates}";
+ foreach my $key (keys %replacements) {
+ my $new_key = SL::Iconv::convert("ISO-8859-15", $dbcharset, $key);
+ $replacements{$new_key} = $replacements{$key} if $new_key ne $key;
+ }
- # setup variables for the form
- @a = qw(company address businessnumber tel fax);
- map { $form->{$_} = $myconfig{$_} } @a;
- $form->format_string(@a);
+ $form->{statementdate} = $locale->date(\%myconfig, $form->{todate}, 1);
- $form->{IN} = "$form->{type}.html";
+ $form->{templates} = "$myconfig{templates}";
+ my $suffix = "html";
+ my $attachment_suffix = "html";
if ($form->{format} eq 'postscript') {
$form->{postscript} = 1;
- $form->{IN} =~ s/html$/tex/;
- }
- if ($form->{format} eq 'pdf') {
+ $suffix = "tex";
+ $attachment_suffix = "ps";
+ } elsif ($form->{format} eq 'pdf') {
$form->{pdf} = 1;
- $form->{IN} =~ s/html$/tex/;
+ $suffix = "tex";
+ $attachment_suffix = "pdf";
}
+ $form->{IN} = "$form->{type}.$suffix";
+ $form->{OUT} =
+ $form->{media} eq 'email' ? $sendmail :
+ $form->{media} eq 'printer' ? "| $myconfig{printer}" : "";
+
+ # Save $form->{email} because it will be overwritten.
+ $form->{EMAIL_RECIPIENT} = $form->{email};
+
$i = 0;
while (@{ $form->{AG} }) {
(name, street, zipcode, city, country, contact, email,
"$form->{ct}phone", "$form->{ct}fax");
map { $form->{$_} = $ref->{$_} } @a;
- $form->format_string(@a);
$form->{ $form->{ct} } = $form->{name};
$form->{"$form->{ct}_id"} = $ref->{ctid};
$form->format_amount(\%myconfig, $form->{"${_}total"}, 2)
} (c0, c30, c60, c90, "");
+ $form->{attachment_filename} = $locale->text("Statement") . "_$form->{todate}.$attachment_suffix";
+ map({ $form->{attachment_filename} =~ s/$_/$replacements{$_}/g; } keys(%replacements));
+
$form->parse_template(\%myconfig, $userspath);
}
}
}
-
+ # saving the history
+ if(!exists $form->{addition} && $form->{id} ne "") {
+ $form->{snumbers} = qq|ordnumber_| . $form->{ordnumber};
+ $form->{addition} = "PRINTED";
+ $form->{what_done} = $form->{type};
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
$lxdebug->leave_sub();
}
push @{ $form->{duedate} }, $ref->{duedate};
foreach $item (qw(c0 c30 c60 c90)) {
- eval {
+ if ($ref->{exchangerate} * 1) {
$ref->{$item} =
$form->round_amount($ref->{$item} / $ref->{exchangerate}, 2);
- };
+ }
$form->{"${item}total"} += $ref->{$item};
$form->{total} += $ref->{$item};
push @{ $form->{$item} },
$description = $form->escape($form->{$descvar});
$ratevar = "$form->{accno}_rate";
- if ($form->{accno} =~ /^gifi_/) {
- $descvar = "gifi_$form->{accno}_description";
- $description = $form->escape($form->{$descvar});
- $ratevar = "gifi_$form->{accno}_rate";
- }
-
$department = $form->escape($form->{department});
# construct href
$href =
- "$form->{script}?path=$form->{path}&action=generate_tax_report&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}";
+ "$form->{script}?&action=generate_tax_report&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}";
# construct callback
$description = $form->escape($form->{$descvar}, 1);
$department = $form->escape($form->{department}, 1);
$callback =
- "$form->{script}?path=$form->{path}&action=generate_tax_report&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}";
-
- $form->{title} = $locale->text('GIFI') . " - "
- if ($form->{accno} =~ /^gifi_/);
+ "$form->{script}?&action=generate_tax_report&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}";
$title = $form->escape($form->{title});
$href .= "&title=$title";
$column_data{id} = qq|<td>$ref->{id}</td>|;
$column_data{invnumber} =
- qq|<td><a href=$module?path=$form->{path}&action=edit&id=$ref->{id}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{invnumber}</a></td>|;
+ qq|<td><a href=$module?action=edit&id=$ref->{id}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{invnumber}</a></td>|;
$column_data{transdate} = qq|<td>$ref->{transdate}</td>|;
$column_data{name} = qq|<td>$ref->{name} </td>|;
$memo = $form->escape($form->{memo});
$href =
- "$form->{script}?path=$form->{path}&action=list_payments&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&fx_transaction=$form->{fx_transaction}&db=$form->{db}&prepayment=$form->{prepayment}&title=$title&account=$account&department=$department&paymentaccounts=$form->{paymentaccounts}&reference=$reference&source=$source&memo=$memo";
+ "$form->{script}?action=list_payments&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&fx_transaction=$form->{fx_transaction}&db=$form->{db}&prepayment=$form->{prepayment}&title=$title&account=$account&department=$department&paymentaccounts=$form->{paymentaccounts}&reference=$reference&source=$source&memo=$memo";
# construct callback
$account = $form->escape($form->{account}, 1);
$memo = $form->escape($form->{memo}, 1);
$form->{callback} =
- "$form->{script}?path=$form->{path}&action=list_payments&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&fx_transaction=$form->{fx_transaction}&db=$form->{db}&prepayment=$form->{prepayment}&title=$title&account=$account&department=$department&paymentaccounts=$form->{paymentaccounts}&reference=$reference&source=$source&memo=$memo&sort=$form->{sort}";
+ "$form->{script}?action=list_payments&login=$form->{login}&password=$form->{password}&fromdate=$form->{fromdate}&todate=$form->{todate}&fx_transaction=$form->{fx_transaction}&db=$form->{db}&prepayment=$form->{prepayment}&title=$title&account=$account&department=$department&paymentaccounts=$form->{paymentaccounts}&reference=$reference&source=$source&memo=$memo&sort=$form->{sort}";
$callback = $form->escape($form->{callback});
$column_header{name} =
$module = 'ir' if ($payment->{invoice} && $payment->{module} eq 'ap');
$href =
- qq|${module}.pl?path=$form->{path}&action=edit&id=$payment->{id}&login=$form->{login}&password=$form->{password}&callback=$callback|;
+ qq|${module}.pl?action=edit&id=$payment->{id}&login=$form->{login}&password=$form->{password}&callback=$callback|;
$column_data{name} = "<td>$payment->{name} </td>";
$column_data{reference} =
sub winston_export {
$lxdebug->enter_sub();
- print(STDERR "Winston Export1\n");
#create_winston();
$form->{winston} = 1;
$lxdebug->enter_sub();
$form->{sendmode} = "attachment";
- $form->{copies} = 2 unless $form->{copies};
+
+ $form->{"format"} =
+ $form->{"format"} ? $form->{"format"} :
+ $myconfig{"template_format"} ? $myconfig{"template_format"} :
+ "pdf";
+
+ $form->{"copies"} =
+ $form->{"copies"} ? $form->{"copies"} :
+ $myconfig{"copies"} ? $myconfig{"copies"} :
+ 2;
$form->{PD}{ $form->{type} } = "selected";
$form->{DF}{ $form->{format} } = "selected";
} else {
$media = qq|
<option value=screen $form->{OP}{screen}>| . $locale->text('Screen');
- if ($myconfig{printer} && $latex) {
+ if ($myconfig{printer} && $latex_templates) {
$media .= qq|
<option value=printer $form->{OP}{printer}>|
. $locale->text('Printer');
}
}
- if ($latex) {
+ if ($latex_templates) {
$format .= qq|
<option value=html $form->{DF}{html}>|
. $locale->text('HTML') . qq|
<td><select name=media>$media</select></td>
|;
- if ($myconfig{printer} && $latex && $form->{media} ne 'email') {
+ if ($myconfig{printer} && $latex_templates && $form->{media} ne 'email') {
print qq|
<td>| . $locale->text('Copies') . qq|
<input name=copies size=2 value=$form->{copies}></td>
$form->{endbold} = "</b>";
$form->{br} = "<br>";
- # &get_project(generate_bwa);
-
if ($form->{reporttype} eq "custom") {
#forgotten the year --> thisyear
$longfromdate = $locale->date(\%germandate, $form->{fromdate}, 1);
$shortfromdate = $locale->date(\%germandate, $form->{fromdate}, 0);
- $form->{this_period} = "$shortfromdate<br>\n$shorttodate";
+ $form->{this_period} = "$shortfromdate\n$shorttodate";
$form->{period} =
$locale->text('for Period')
- . qq|<br>\n$longfromdate |
+ . qq|\n$longfromdate |
. $locale->text('bis')
. qq| $longtodate|;
}
# setup variables for the form
@a = qw(company address businessnumber);
map { $form->{$_} = $myconfig{$_} } @a;
- $form->{address} =~ s/\\n/<br>/g;
$form->{templates} = $myconfig{templates};
$form->{IN} = "bwa.html";
sub generate_ustva {
$lxdebug->enter_sub();
- # Hier Aufruf von get_config aus bin/mozilla/fa.pl zum
- # Einlesen der Finanzamtdaten
- print(STDERR "Winston4\n");
- get_config($userspath, 'finanzamt.ini');
+ # Hier Aufruf von get_config zum Einlesen der Finanzamtdaten
+ USTVA->get_config($userspath, 'finanzamt.ini');
# &get_project(generate_bwa);
@anmeldungszeitraum =
foreach $item (@anmeldungszeitraum) {
$form->{$item} = "";
}
- print(STDERR "Winston2\n");
if ($form->{reporttype} eq "custom") {
#forgotten the year --> thisyear
$longfromdate = $locale->date(\%myconfig, $form->{fromdate}, 1);
$shortfromdate = $locale->date(\%myconfig, $form->{fromdate}, 0);
- $form->{this_period} = "$shortfromdate<br>\n$shorttodate";
+ $form->{this_period} = "$shortfromdate\n$shorttodate";
$form->{period} =
$locale->text('for Period')
. qq|<br>\n$longfromdate |
$longcomparetodate = $locale->date(\%myconfig, $form->{comparetodate}, 1);
$shortcomparetodate = $locale->date(\%myconfig, $form->{comparetodate}, 0);
- $form->{last_period} = "$shortcomparefromdate<br>\n$shortcomparetodate";
+ $form->{last_period} = "$shortcomparefromdate\n$shortcomparetodate";
$form->{period} .=
- "<br>\n$longcomparefromdate "
+ "\n$longcomparefromdate "
. $locale->text('bis')
. qq| $longcomparetodate|;
}
$form->{address} =~ s/\\n/$form->{br}/g;
if ($form->{winston} eq '1') {
- print(STDERR "fast bei winston\n");
create_winston();
} else {