Bei Einkaufs- und Verkaufsmasken Felder für Angebots- und Auftragsdatum hinzugefügt.
authorMoritz Bunkus <m.bunkus@linet-services.de>
Tue, 6 Feb 2007 11:30:23 +0000 (11:30 +0000)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Tue, 6 Feb 2007 11:30:23 +0000 (11:30 +0000)
SL/DBUtils.pm
SL/IR.pm
SL/IS.pm
bin/mozilla/ir.pl
bin/mozilla/is.pl
bin/mozilla/oe.pl
doc/dokumentenvorlagen-und-variablen.html
locale/de/ir
locale/de/is
sql/Pg-upgrade2/ap_ar_orddate_quodate.sql [new file with mode: 0644]

index 38acf12..ecb809b 100644 (file)
@@ -3,7 +3,7 @@ package SL::DBUtils;
 require Exporter;
 @ISA = qw(Exporter);
 
-@EXPORT = qw(conv_i conv_date do_query selectrow_query do_statement dump_query);
+@EXPORT = qw(conv_i conv_date conv_dateq do_query selectrow_query do_statement dump_query);
 
 sub conv_i {
   my ($value, $default) = @_;
@@ -15,6 +15,15 @@ sub conv_date {
   return (defined($value) && "$value" ne "") ? $value : undef;
 }
 
+sub conv_dateq {
+  my ($value) = @_;
+  if (defined($value) && "$value" ne "") {
+    $value =~ s/\'/\'\'/g;
+    return "'$value'";
+  }
+  return "NULL";
+}
+
 sub do_query {
   my ($form, $dbh, $query) = splice(@_, 0, 3);
 
index d79e0fd..2077e6b 100644 (file)
--- a/SL/IR.pm
+++ b/SL/IR.pm
@@ -35,6 +35,7 @@
 package IR;
 
 use SL::AM;
+use SL::DBUtils;
 
 sub post_invoice {
   $main::lxdebug->enter_sub();
@@ -624,6 +625,8 @@ sub post_invoice {
              ordnumber = '$form->{ordnumber}',
              quonumber = '$form->{quonumber}',
               transdate = '$form->{invdate}',
+              orddate = | . conv_dateq($form->{"orddate"}) . qq|,
+              quodate = | . conv_dateq($form->{"quodate"}) . qq|,
               vendor_id = $form->{vendor_id},
               amount = $amount,
               netamount = $netamount,
@@ -845,6 +848,7 @@ sub retrieve_invoice {
 
     # retrieve invoice
     $query = qq|SELECT a.cp_id, a.invnumber, a.transdate AS invdate, a.duedate,
+                a.orddate, a.quodate,
                 a.ordnumber, a.quonumber, a.paid, a.taxincluded, a.notes, a.taxzone_id, a.storno, a.gldate,
                a.intnotes, a.curr AS currency
                FROM ap a
index 615b2ee..12b5b7c 100644 (file)
--- a/SL/IS.pm
+++ b/SL/IS.pm
@@ -36,6 +36,7 @@ package IS;
 
 use Data::Dumper;
 use SL::AM;
+use SL::DBUtils;
 
 sub invoice_details {
   $main::lxdebug->enter_sub();
@@ -982,6 +983,8 @@ Message: $form->{message}\r| if $form->{message};
               quonumber = '$form->{quonumber}',
               cusordnumber = '$form->{cusordnumber}',
               transdate = '$form->{invdate}',
+              orddate = | . conv_dateq($form->{orddate}) . qq|,
+              quodate = | . conv_dateq($form->{quodate}) . qq|,
               customer_id = $form->{customer_id},
               amount = $amount,
               netamount = $netamount,
@@ -1484,6 +1487,7 @@ sub retrieve_invoice {
 
     # retrieve invoice
     $query = qq|SELECT a.invnumber, a.ordnumber, a.quonumber, a.cusordnumber,
+                a.orddate, a.quodate,
                 a.transdate AS invdate, a.deliverydate, a.paid, a.storno, a.gldate,
                 a.shippingpoint, a.shipvia, a.terms, a.notes, a.intnotes, a.taxzone_id,
                a.duedate, a.taxincluded, a.curr AS currency, a.shipto_id, a.cp_id,
index 466d44b..3736fbe 100644 (file)
@@ -356,6 +356,11 @@ sub form_header {
 
   $form->{"javascript"} .= qq|<script type="text/javascript" src="js/show_form_details.js"></script>|;
 
+  $jsscript .=
+    $form->write_trigger(\%myconfig, 2,
+                         "orddate", "BL", "trigger_orddate",
+                         "quodate", "BL", "trigger_quodate");
+
   $form->header;
 
   print qq|
@@ -448,6 +453,16 @@ sub form_header {
                <td><input name=ordnumber size=11 value="$form->{ordnumber}"></td>
 <input type=hidden name=quonumber value="$form->{quonumber}">
              </tr>
+        <tr>
+          <th align="right" nowrap>| . $locale->text('Order Date') . qq|</th>
+          <td><input name="orddate" id="orddate" size="11" title="$myconfig{dateformat}" value="| . Q($form->{orddate}) . qq|"></td>
+          <td><input type="button" name="b_orddate" id="trigger_orddate" value="?"></td>
+        </tr>
+        <tr>
+          <th align="right" nowrap>| . $locale->text('Quotation Date') . qq|</th>
+          <td><input name="quodate" id="quodate" size="11" title="$myconfig{dateformat}" value="| . Q($form->{quodate}) . qq|"></td>
+          <td><input type="button" name="b_quodate" id="trigger_quodate" value="?"></td>
+        </tr>
            </table>
          </td>
        </tr>
index 0334843..4637f6b 100644 (file)
@@ -582,6 +582,11 @@ sub form_header {
 
   $form->{"javascript"} .= qq|<script type="text/javascript" src="js/show_form_details.js"></script>|;
 
+  $jsscript .=
+    $form->write_trigger(\%myconfig, 2,
+                         "orddate", "BL", "trigger_orddate",
+                         "quodate", "BL", "trigger_quodate");
+
   $form->header;
 
   print qq|
@@ -748,10 +753,20 @@ print qq|     <tr>
                <th align=right nowrap>| . $locale->text('Order Number') . qq|</th>
                <td><input name=ordnumber size=11 value="$form->{ordnumber}"></td>
              </tr>
+        <tr>
+          <th align="right" nowrap>| . $locale->text('Order Date') . qq|</th>
+          <td><input name="orddate" id="orddate" size="11" title="$myconfig{dateformat}" value="| . Q($form->{orddate}) . qq|"></td>
+          <td><input type="button" name="b_orddate" id="trigger_orddate" value="?"></td>
+        </tr>
              <tr>
                <th align=right nowrap>| . $locale->text('Quotation Number') . qq|</th>
                <td><input name=quonumber size=11 value="$form->{quonumber}"></td>
              </tr>
+        <tr>
+          <th align="right" nowrap>| . $locale->text('Quotation Date') . qq|</th>
+          <td><input name="quodate" id="quodate" size="11" title="$myconfig{dateformat}" value="| . Q($form->{quodate}) . qq|"></td>
+          <td><input type="button" name="b_quodate" id="trigger_quodate" value="?"></td>
+        </tr>
              <tr>
                <th align=right nowrap>| . $locale->text('Customer Order Number') . qq|</th>
                <td><input name=cusordnumber size=11 value="$form->{cusordnumber}"></td>
index 10e71ac..f7a52e9 100644 (file)
@@ -2140,10 +2140,12 @@ sub invoice {
 
     # also copy deliverydate from the order
     $form->{deliverydate} = $form->{reqdate} if $form->{reqdate};
+    $form->{orddate} = $form->{transdate};
   } else {
     $form->isblank("quonumber", $locale->text('Quotation Number missing!'));
     $form->isblank("transdate", $locale->text('Quotation Date missing!'));
     $form->{ordnumber} = "";
+    $form->{quodate} = $form->{transdate};
   }
 
   # if the name changed get new values
index 0620af3..d035044 100644 (file)
@@ -507,6 +507,10 @@ td {
     <td><code>notes</code></td>
     <td>Bemerkungen der Rechnung</td>
    </tr>
+   <tr>
+    <td><code>orddate</code></td>
+    <td>Auftragsdatum</td>
+   </tr>
    <tr>
     <td><code>ordnumber</code></td>
     <td>Auftragsnummer, wenn die Rechnung aus einem Auftrag erstellt wurde</td>
@@ -515,6 +519,10 @@ td {
     <td><code>payment_terms</code></td>
     <td>Zahlungskonditionen</td>
    </tr>
+   <tr>
+    <td><code>quodate</code></td>
+    <td>Angebotsdatum</td>
+   </tr>
    <tr>
     <td><code>quonumber</code></td>
     <td>Angebotsnummer</td>
index b521636..2e14867 100644 (file)
@@ -104,6 +104,7 @@ $self->{texts} = {
   'Oct'                         => 'Okt',
   'October'                     => 'Oktober',
   'OpenDocument/OASIS'          => 'OpenDocument/OASIS',
+  'Order Date'                  => 'Auftragsdatum',
   'Order Date missing!'         => 'Auftragsdatum fehlt!',
   'Order Number'                => 'Auftragsnummer',
   'Order Number missing!'       => 'Auftragsnummer fehlt!',
@@ -138,6 +139,7 @@ $self->{texts} = {
   'Queue'                       => 'Warteschlange',
   'Queued'                      => 'In Warteschlange eingereiht.',
   'Quotation'                   => 'Angebot',
+  'Quotation Date'              => 'Angebotsdatum',
   'Quotation Date missing!'     => 'Angebotsdatum fehlt!',
   'Quotation Number missing!'   => 'Angebotsnummer fehlt!',
   'RFQ'                         => 'Anfrage',
index 2b4da0f..cd4ca7f 100644 (file)
@@ -122,6 +122,7 @@ $self->{texts} = {
   'October'                     => 'Oktober',
   'OpenDocument/OASIS'          => 'OpenDocument/OASIS',
   'Order'                       => 'Auftrag',
+  'Order Date'                  => 'Auftragsdatum',
   'Order Date missing!'         => 'Auftragsdatum fehlt!',
   'Order Number'                => 'Auftragsnummer',
   'Order Number missing!'       => 'Auftragsnummer fehlt!',
@@ -160,6 +161,7 @@ $self->{texts} = {
   'Queue'                       => 'Warteschlange',
   'Queued'                      => 'In Warteschlange eingereiht.',
   'Quotation'                   => 'Angebot',
+  'Quotation Date'              => 'Angebotsdatum',
   'Quotation Date missing!'     => 'Angebotsdatum fehlt!',
   'Quotation Number'            => 'Angebotsnummer',
   'Quotation Number missing!'   => 'Angebotsnummer fehlt!',
diff --git a/sql/Pg-upgrade2/ap_ar_orddate_quodate.sql b/sql/Pg-upgrade2/ap_ar_orddate_quodate.sql
new file mode 100644 (file)
index 0000000..e3e62f5
--- /dev/null
@@ -0,0 +1,7 @@
+-- @tag: ap_ar_orddate_quodate
+-- @description: Spalten f&uuml;r Angebots- und Auftragsdatum bei Einkaufs- und Verkaufsrechnungen
+-- @depends: release_2_4_1
+ALTER TABLE ar ADD COLUMN orddate date;
+ALTER TABLE ar ADD COLUMN quodate date;
+ALTER TABLE ap ADD COLUMN orddate date;
+ALTER TABLE ap ADD COLUMN quodate date;