From: Moritz Bunkus Date: Tue, 30 Jan 2007 08:57:55 +0000 (+0000) Subject: Bei Auftragsbestätigungen und Lieferantenaufträgen ein Feld "Geliefert" eingeführt... X-Git-Tag: release-2.4.2~214 X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/kivitendo-erp.git/commitdiff_plain/222c7e21002f029efe1e9af5579b8464187a1a53 Bei Auftragsbestätigungen und Lieferantenaufträgen ein Feld "Geliefert" eingeführt, das komplett manuell zu setzen ist. --- diff --git a/SL/OE.pm b/SL/OE.pm index 7bd3853ca..e12369ead 100644 --- a/SL/OE.pm +++ b/SL/OE.pm @@ -65,7 +65,7 @@ sub transactions { my $query = qq|SELECT o.id, o.ordnumber, o.transdate, o.reqdate, o.amount, ct.name, o.netamount, o.$form->{vc}_id, ex.$rate AS exchangerate, - o.closed, o.quonumber, o.shippingpoint, o.shipvia, + o.closed, o.delivered, o.quonumber, o.shippingpoint, o.shipvia, e.name AS employee FROM oe o JOIN $form->{vc} ct ON (o.$form->{vc}_id = ct.id) @@ -126,6 +126,12 @@ sub transactions { $query .= ($form->{open}) ? " AND o.closed = '0'" : " AND o.closed = '1'"; } + if (($form->{"notdelivered"} || $form->{"delivered"}) && + ($form->{"notdelivered"} ne $form->{"delivered"})) { + $query .= $form->{"delivered"} ? + " AND o.delivered " : " AND NOT o.delivered"; + } + my $sortorder = join ', ', ("o.id", $form->sort_columns(transdate, $ordnumber, name)); $sortorder = $form->{sort} if $form->{sort}; @@ -460,6 +466,7 @@ Message: $form->{message}\r| if $form->{message}; intnotes = '$form->{intnotes}', curr = '$form->{currency}', closed = '$form->{closed}', + delivered = '| . ($form->{delivered} ? "t" : "f") . qq|', proforma = '$form->{proforma}', quotation = '$quotation', department_id = $form->{department_id}, @@ -724,7 +731,9 @@ sub retrieve { o.curr AS currency, e.name AS employee, o.employee_id, o.$form->{vc}_id, cv.name AS $form->{vc}, o.amount AS invtotal, o.closed, o.reqdate, o.quonumber, o.department_id, o.cusordnumber, - d.description AS department, o.payment_id, o.language_id, o.taxzone_id, o.delivery_customer_id, o.delivery_vendor_id, o.proforma, o.shipto_id + d.description AS department, o.payment_id, o.language_id, o.taxzone_id, + o.delivery_customer_id, o.delivery_vendor_id, o.proforma, o.shipto_id, + o.delivered FROM oe o JOIN $form->{vc} cv ON (o.$form->{vc}_id = cv.id) LEFT JOIN employee e ON (o.employee_id = e.id) diff --git a/bin/mozilla/oe.pl b/bin/mozilla/oe.pl index bb6684858..aabb659d4 100644 --- a/bin/mozilla/oe.pl +++ b/bin/mozilla/oe.pl @@ -328,8 +328,8 @@ sub prepare_order { sub form_header { $lxdebug->enter_sub(); - $checkedopen = ($form->{closed}) ? "" : "checked"; - $checkedclosed = ($form->{closed}) ? "checked" : ""; + my $checkedclosed = $form->{"closed"} ? "checked" : ""; + my $checkeddelivered = $form->{"delivered"} ? "checked" : ""; map { $form->{$_} =~ s/\"/"/g } qw(ordnumber quonumber shippingpoint shipvia notes intnotes shiptoname @@ -380,15 +380,20 @@ sub form_header { $openclosed = qq| - - - - - -
| - . $locale->text('Open') . qq| | - . $locale->text('Closed') . qq|
- + + +|; + + if (($form->{"type"} eq "sales_order") || + ($form->{"type"} eq "purchase_order")) { + $openclosed .= qq| + + +|; + } + + $openclosed .= qq| + |; } @@ -1383,6 +1388,19 @@ sub search { |; } + my $delivered; + if (($form->{"type"} eq "sales_order") || + ($form->{"type"} eq "purchase_order")) { + $delivered = qq| + + + + + + +|; + } + # use JavaScript Calendar or not $form->{jsscript} = $jscalendar; $jsscript = ""; @@ -1450,6 +1468,7 @@ sub search { $openclosed + $delivered @@ -1525,7 +1544,7 @@ sub orders { # construct href $href = - "$form->{script}?path=$form->{path}&action=orders&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&password=$form->{password}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&open=$form->{open}&closed=$form->{closed}&$ordnumber=$number&$form->{vc}=$name&department=$department&warehouse=$warehouse"; + "$form->{script}?path=$form->{path}&action=orders&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&password=$form->{password}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&open=$form->{open}&closed=$form->{closed}¬delivered=$form->{notdelivered}&delivered=$form->{delivered}&$ordnumber=$number&$form->{vc}=$name&department=$department&warehouse=$warehouse"; # construct callback $number = $form->escape($form->{$ordnumber}, 1); @@ -1534,17 +1553,20 @@ sub orders { $warehouse = $form->escape($form->{warehouse}, 1); $callback = - "$form->{script}?path=$form->{path}&action=orders&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&password=$form->{password}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&open=$form->{open}&closed=$form->{closed}&$ordnumber=$number&$form->{vc}=$name&department=$department&warehouse=$warehouse"; + "$form->{script}?path=$form->{path}&action=orders&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&password=$form->{password}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&open=$form->{open}&closed=$form->{closed}¬delivered=$form->{notdelivered}&delivered=$form->{delivered}&$ordnumber=$number&$form->{vc}=$name&department=$department&warehouse=$warehouse"; @columns = $form->sort_columns("transdate", "reqdate", "id", "$ordnumber", "name", "netamount", "tax", "amount", "curr", "employee", "shipvia", "open", - "closed"); + "closed", "delivered"); $form->{l_open} = $form->{l_closed} = "Y" if ($form->{open} && $form->{closed}); + $form->{"l_delivered"} = "Y" + if ($form->{"delivered"} && $form->{"notdelivered"}); + foreach $item (@columns) { if ($form->{"l_$item"} eq "Y") { push @column_index, $item; @@ -1630,6 +1652,8 @@ sub orders { qq||; $column_header{closed} = qq||; + $column_header{"delivered"} = + qq||; $column_header{employee} = qq||; @@ -1757,6 +1781,9 @@ sub orders { $column_data{closed} = ""; $column_data{open} = ""; } + $column_data{"delivered"} = ""; $i++; $i %= 2; diff --git a/locale/de/all b/locale/de/all index 1632e4e39..8d7e7bde2 100644 --- a/locale/de/all +++ b/locale/de/all @@ -317,6 +317,7 @@ aktualisieren wollen?', 'Delete' => 'Löschen', 'Delete Account' => 'Konto löschen', 'Delete Dataset' => 'Datenbank löschen', + 'Delivered' => 'Geliefert', 'Delivery Date' => 'Lieferdatum', 'Department' => 'Abteilung', 'Department deleted!' => 'Abteilung gelöscht.', @@ -658,6 +659,7 @@ gestartet', 'Non-taxable Purchases' => 'Nicht zu versteuernde Einkäufe', 'Non-taxable Sales' => 'Nicht zu versteuernde Verkäufe', 'Not Discountable' => 'Nicht rabattierfähig', + 'Not delivered' => 'Nicht geliefert', 'Notes' => 'Bemerkungen', 'Nothing entered!' => 'Es wurde nichts eingegeben.', 'Nothing selected!' => 'Es wurde nichts ausgewählt!', diff --git a/locale/de/oe b/locale/de/oe index 7b994f007..05817170b 100644 --- a/locale/de/oe +++ b/locale/de/oe @@ -63,6 +63,7 @@ $self->{texts} = { 'Dec' => 'Dez', 'December' => 'Dezember', 'Delete' => 'Löschen', + 'Delivered' => 'Geliefert', 'Delivery Date' => 'Lieferdatum', 'Department' => 'Abteilung', 'Description' => 'Beschreibung', @@ -116,12 +117,14 @@ $self->{texts} = { 'May ' => 'Mai', 'Message' => 'Nachricht', 'Name' => 'Name', + 'No' => 'Nein', 'No Customer was found matching the search parameters.' => 'Zu dem Suchbegriff wurde kein Endkunde gefunden', 'No Vendor was found matching the search parameters.' => 'Zu dem Suchbegriff wurde kein Händler gefunden', 'No employee was found matching the search parameters.' => 'Es wurde kein Angestellter gefunden, auf den die Suchparameter zutreffen.', 'No part was found matching the search parameters.' => 'Es wurde kein Artikel gefunden, auf den die Suchparameter zutreffen.', 'No project was found matching the search parameters.' => 'Es wurde kein Projekt gefunden, auf das die Suchparameter zutreffen.', 'No.' => 'Position', + 'Not delivered' => 'Nicht geliefert', 'Notes' => 'Bemerkungen', 'Nothing entered!' => 'Es wurde nichts eingegeben.', 'Nothing to transfer!' => 'Es gibt nichts zum Umlagern!', diff --git a/sql/Pg-upgrade2/oe_delivered.sql b/sql/Pg-upgrade2/oe_delivered.sql new file mode 100644 index 000000000..718c08370 --- /dev/null +++ b/sql/Pg-upgrade2/oe_delivered.sql @@ -0,0 +1,6 @@ +-- @tag: oe_delivered +-- @description: Neues Feld für Status "geliefert" bei Auftragsbestätigungen und Lieferantenaufträgen +-- @depends: release_2_4_1 +ALTER TABLE oe ADD COLUMN delivered boolean; +ALTER TABLE oe ALTER COLUMN delivered SET DEFAULT 'f'; +UPDATE oe SET delivered = 'f';
| . $locale->text('ID') . qq|| . $locale->text('O') . qq|| . $locale->text('C') . qq|| . $locale->text("Delivered") . qq|$employee X" . + ($oe->{"delivered"} ? $locale->text("Yes") : $locale->text("No")) . + "