From: digifoto Date: Mon, 26 Nov 2012 16:33:59 +0000 (+0100) Subject: Lieferdatum in Gutschrift und Einkaufsrechnung X-Git-Tag: release-3.1.0beta1~507 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=a2ab888de6fd1664a7b902ea1aad37b42872f4cc;p=kivitendo-erp.git Lieferdatum in Gutschrift und Einkaufsrechnung Bei der Verkaufsgutschrift und der Einkaufsrechnung hat jetzt das Lieferdatum (oder Leistungsdatum) wie bei der Rechnung Vorrang vor dem Rechnungsdatum, wenn es gesetzt ist. Einkaufsgutschriften gibt es noch nicht. Anwendungsbeispiele: * nach einer Mehrwertsteueränderung möchte man eine Rechnung mit dem alten Steuersatz gutschreiben, und braucht dafür natürlich noch den alten Steuersatz. * nach einer Mehrwertsteueränderung muß man eine Einkaufsrechnung mit dem alten Steuersatz buchen Bei Erstellung von Verkaufsgutschrift aus Verkaufsrechnung wird das Lieferdatum jetzt übernommen und mit gespeichert. Bei Einkaufsrechnungen (ap) wird jetzt auch Lieferdatum gespeichert, neue Spalte deliverydate. --- diff --git a/SL/IC.pm b/SL/IC.pm index 7a52096a0..96e3a94a1 100644 --- a/SL/IC.pm +++ b/SL/IC.pm @@ -1487,8 +1487,22 @@ sub retrieve_accounts { # transdate madness. my $transdate = ""; - if ($form->{type} eq "invoice") { - if (($form->{vc} eq "vendor") || !$form->{deliverydate}) { + if ($form->{type} eq "invoice" or $form->{type} eq "credit_note") { + # use deliverydate for sales and purchase invoice, if it exists + # also use deliverydate for credit notes + if (!$form->{deliverydate}) { + $transdate = $form->{invdate}; + } else { + $transdate = $form->{deliverydate}; + } + } elsif ($form->{script} eq 'ir.pl') { + # when a purchase invoice is opened from the report of purchase invoices + # $form->{type} isn't set, but $form->{script} is, not sure why this is or + # whether this distinction matters in some other scenario. Otherwise one + # could probably take out this elsif and add a + # " or $form->{script} eq 'ir.pl' " + # to the above if-statement + if (!$form->{deliverydate}) { $transdate = $form->{invdate}; } else { $transdate = $form->{deliverydate}; diff --git a/SL/IR.pm b/SL/IR.pm index 1f0ae58f7..22c5dc124 100644 --- a/SL/IR.pm +++ b/SL/IR.pm @@ -1218,7 +1218,9 @@ sub retrieve_item { my $transdate = ""; if ($form->{type} eq "invoice") { - $transdate = $form->{invdate} ? $dbh->quote($form->{invdate}) : "current_date"; + $transdate = $form->{deliverydate} ? $dbh->quote($form->{deliverydate}) + : $form->{invdate} ? $dbh->quote($form->{invdate}) + : "current_date"; } else { $transdate = $form->{transdate} ? $dbh->quote($form->{transdate}) : "current_date"; } diff --git a/sql/Pg-upgrade2/ap_deliverydate.sql b/sql/Pg-upgrade2/ap_deliverydate.sql new file mode 100644 index 000000000..9d06aa19d --- /dev/null +++ b/sql/Pg-upgrade2/ap_deliverydate.sql @@ -0,0 +1,5 @@ +-- @tag: ap_deliverydate +-- @description: deliverydate zu Einkaufsrechnung hinzufügen +-- @depends: release_3_0_0 +-- @charset: utf-8 +ALTER TABLE ap ADD COLUMN deliverydate date;