Revision c9860c6f
Von Moritz Bunkus vor mehr als 16 Jahren hinzugefügt
SL/OE.pm | ||
---|---|---|
201 | 201 |
|
202 | 202 |
$query = |
203 | 203 |
qq|SELECT oe.id, oe.transdate, oe.reqdate, oe.quonumber, oe.transaction_description, oe.amount, |
204 |
CASE WHEN (COALESCE(0, oe.customer_id) = 0) THEN 'vendor' ELSE 'customer' END AS vc, |
|
204 | 205 |
c.name AS customer, |
206 |
v.name AS vendor, |
|
205 | 207 |
e.name AS employee |
206 | 208 |
FROM oe |
207 | 209 |
LEFT JOIN customer c ON (oe.customer_id = c.id) |
210 |
LEFT JOIN vendor v ON (oe.vendor_id = v.id) |
|
208 | 211 |
LEFT JOIN employee e ON (oe.employee_id = e.id) |
209 | 212 |
WHERE (COALESCE(quotation, FALSE) = TRUE) |
210 | 213 |
AND (COALESCE(closed, FALSE) = FALSE) |
bin/mozilla/oe.pl | ||
---|---|---|
1964 | 1964 |
my $content; |
1965 | 1965 |
|
1966 | 1966 |
if (@{ $quotations }) { |
1967 |
my $edit_url = build_std_url('script=oe.pl', 'action=edit', 'type=sales_quotation', 'vc=customer');
|
|
1967 |
my $edit_url = build_std_url('script=oe.pl', 'action=edit'); |
|
1968 | 1968 |
|
1969 | 1969 |
$content = $form->parse_html_template('oe/report_for_todo_list', { 'QUOTATIONS' => $quotations, |
1970 | 1970 |
'edit_url' => $edit_url }); |
locale/de/all | ||
---|---|---|
994 | 994 |
'Out of balance!' => 'Summen stimmen nicht berein!', |
995 | 995 |
'Output Number Format' => 'Zahlenformat (Ausgabe)', |
996 | 996 |
'Outputformat' => 'Ausgabeformat', |
997 |
'Overdue sales quotations' => 'Überfällige Angebote',
|
|
997 |
'Overdue sales quotations and requests for quotations' => '?berf?llige Angebote und Preisanfragen',
|
|
998 | 998 |
'Own Product' => 'eigenes Produkt', |
999 | 999 |
'PAYMENT POSTED' => 'Rechung gebucht', |
1000 | 1000 |
'PDF' => 'PDF', |
... | ... | |
1266 | 1266 |
'Show details' => 'Details anzeigen', |
1267 | 1267 |
'Show follow ups...' => 'Zeige Wiedervorlagen...', |
1268 | 1268 |
'Show old dunnings' => 'Alte Mahnungen anzeigen', |
1269 |
'Show overdue sales quotations...' => 'Zeige überfällige Angebote...',
|
|
1269 |
'Show overdue sales quotations and requests for quotations...' => '?berf?llige Angebote und Preisanfragen anzeigen...',
|
|
1270 | 1270 |
'Show your TODO list after loggin in' => 'Aufgabenliste nach dem Anmelden anzeigen', |
1271 | 1271 |
'Signature' => 'Unterschrift', |
1272 | 1272 |
'Since bin is not enforced in the parts data, please specify a bin where goods without a specified bin will be put.' => 'Da Lagerplätze kein Pflichtfeld sind, geben Sie bitte einen Lagerplatz an, in dem Waren ohne spezifizierten Lagerplatz eingelagert werden sollen.', |
templates/webpages/am/config_de.html | ||
---|---|---|
228 | 228 |
|
229 | 229 |
[%- IF AUTH_RIGHTS_SALES_QUOTATION_EDIT %] |
230 | 230 |
<tr> |
231 |
<th align="right">Zeige überfällige Angebote...</th>
|
|
231 |
<th align="right">?berf?llige Angebote und Preisanfragen anzeigen...</th>
|
|
232 | 232 |
<td> |
233 | 233 |
<input type="checkbox" name="todo_cfg.show_overdue_sales_quotations" id="todo_cfg_show_overdue_sales_quotations" value="1"[% IF todo_cfg.show_overdue_sales_quotations %] checked[% END %]> |
234 | 234 |
<label for="todo_cfg_show_overdue_sales_quotations">...auf der Aufgabenliste</label> |
templates/webpages/am/config_master.html | ||
---|---|---|
228 | 228 |
|
229 | 229 |
[%- IF AUTH_RIGHTS_SALES_QUOTATION_EDIT %] |
230 | 230 |
<tr> |
231 |
<th align="right"><translate>Show overdue sales quotations...</translate></th> |
|
231 |
<th align="right"><translate>Show overdue sales quotations and requests for quotations...</translate></th>
|
|
232 | 232 |
<td> |
233 | 233 |
<input type="checkbox" name="todo_cfg.show_overdue_sales_quotations" id="todo_cfg_show_overdue_sales_quotations" value="1"[% IF todo_cfg.show_overdue_sales_quotations %] checked[% END %]> |
234 | 234 |
<label for="todo_cfg_show_overdue_sales_quotations"><translate>...on the TODO list</translate></label> |
templates/webpages/oe/report_for_todo_list_de.html | ||
---|---|---|
1 | 1 |
[% USE HTML %][% USE LxERP %] |
2 | 2 |
|
3 |
<div class="listtop">Überfällige Angebote</div>
|
|
3 |
<div class="listtop">?berf?llige Angebote und Preisanfragen</div>
|
|
4 | 4 |
|
5 | 5 |
<p> |
6 | 6 |
<table width="100%"> |
7 | 7 |
<tr> |
8 | 8 |
<td class="listheading">Datum</td> |
9 | 9 |
<td class="listheading">g?ltig bis</td> |
10 |
<td class="listheading">Auftrag</td>
|
|
11 |
<td class="listheading">Kunde</td> |
|
10 |
<td class="listheading">Angebot / Preisanfrage</td>
|
|
11 |
<td class="listheading">Kunde / Lieferant</td>
|
|
12 | 12 |
<td class="listheading">Vorgangsbezeichnung</td> |
13 | 13 |
<td class="listheading">Betrag</td> |
14 | 14 |
<td class="listheading">Bearbeiter</td> |
... | ... | |
18 | 18 |
<tr class="listrow[% loop.count % 2 %]"> |
19 | 19 |
<td>[% HTML.escape(row.transdate) %]</td> |
20 | 20 |
<td>[% HTML.escape(row.reqdate) %]</td> |
21 |
<td><a href="[% edit_url %]&id=[% HTML.url(row.id) %]">[% HTML.escape(row.quonumber) %]</a></td> |
|
22 |
<td>[% HTML.escape(row.customer) %]</td> |
|
21 |
<td> |
|
22 |
<a href="[% edit_url %]&vc=[% HTML.url(row.vc) %]&type=[% IF row.vc == 'customer' %]sales_quotation[% ELSE %]request_quotation[% END %]&id=[% HTML.url(row.id) %]"> |
|
23 |
[% IF row.vc == 'customer' %] |
|
24 |
Angebot |
|
25 |
[% ELSE %] |
|
26 |
Preisanfrage |
|
27 |
[% END %] |
|
28 |
[% HTML.escape(row.quonumber) %] |
|
29 |
</a> |
|
30 |
</td> |
|
31 |
<td> |
|
32 |
[% IF row.vc == 'customer' %] |
|
33 |
[% HTML.escape(row.customer) %] |
|
34 |
[% ELSE %] |
|
35 |
[% HTML.escape(row.vendor) %] |
|
36 |
[% END %] |
|
37 |
</td> |
|
23 | 38 |
<td>[% HTML.escape(row.transaction_description) %]</td> |
24 | 39 |
<td>[% HTML.escape(LxERP.format_amount(row.amount, 2)) %]</td> |
25 | 40 |
<td>[% HTML.escape(row.employee) %]</td> |
templates/webpages/oe/report_for_todo_list_master.html | ||
---|---|---|
1 | 1 |
[% USE HTML %][% USE LxERP %] |
2 | 2 |
|
3 |
<div class="listtop"><translate>Overdue sales quotations</translate></div> |
|
3 |
<div class="listtop"><translate>Overdue sales quotations and requests for quotations</translate></div>
|
|
4 | 4 |
|
5 | 5 |
<p> |
6 | 6 |
<table width="100%"> |
7 | 7 |
<tr> |
8 | 8 |
<td class="listheading"><translate>Date</translate></td> |
9 | 9 |
<td class="listheading"><translate>Valid until</translate></td> |
10 |
<td class="listheading"><translate>Order</translate></td>
|
|
11 |
<td class="listheading"><translate>Customer</translate></td> |
|
10 |
<td class="listheading"><translate>Sales quotation</translate> / <translate>Request quotation</translate></td>
|
|
11 |
<td class="listheading"><translate>Customer</translate> / <translate>Vendor</translate></td>
|
|
12 | 12 |
<td class="listheading"><translate>Transaction description</translate></td> |
13 | 13 |
<td class="listheading"><translate>Amount</translate></td> |
14 | 14 |
<td class="listheading"><translate>Employee</translate></td> |
... | ... | |
18 | 18 |
<tr class="listrow[% loop.count % 2 %]"> |
19 | 19 |
<td>[% HTML.escape(row.transdate) %]</td> |
20 | 20 |
<td>[% HTML.escape(row.reqdate) %]</td> |
21 |
<td><a href="[% edit_url %]&id=[% HTML.url(row.id) %]">[% HTML.escape(row.quonumber) %]</a></td> |
|
22 |
<td>[% HTML.escape(row.customer) %]</td> |
|
21 |
<td> |
|
22 |
<a href="[% edit_url %]&vc=[% HTML.url(row.vc) %]&type=[% IF row.vc == 'customer' %]sales_quotation[% ELSE %]request_quotation[% END %]&id=[% HTML.url(row.id) %]"> |
|
23 |
[% IF row.vc == 'customer' %] |
|
24 |
<translate>Sales quotation</translate> |
|
25 |
[% ELSE %] |
|
26 |
<translate>Request quotation</translate> |
|
27 |
[% END %] |
|
28 |
[% HTML.escape(row.quonumber) %] |
|
29 |
</a> |
|
30 |
</td> |
|
31 |
<td> |
|
32 |
[% IF row.vc == 'customer' %] |
|
33 |
[% HTML.escape(row.customer) %] |
|
34 |
[% ELSE %] |
|
35 |
[% HTML.escape(row.vendor) %] |
|
36 |
[% END %] |
|
37 |
</td> |
|
23 | 38 |
<td>[% HTML.escape(row.transaction_description) %]</td> |
24 | 39 |
<td>[% HTML.escape(LxERP.format_amount(row.amount, 2)) %]</td> |
25 | 40 |
<td>[% HTML.escape(row.employee) %]</td> |
Auch abrufbar als: Unified diff
TODO-Liste: Preisanfragen und Angebote richtig anzeigen.