From 9e06d0e40cb328336d6e7604ec06387a0e3b1ea7 Mon Sep 17 00:00:00 2001 From: Philip Reetz Date: Wed, 19 Mar 2008 17:58:11 +0000 Subject: [PATCH] Ueberarbeitete Buecherkontrolle --- SL/Form.pm | 15 +++++++++++++++ bin/mozilla/am.pl | 28 ++++------------------------ bin/mozilla/ap.pl | 6 +++--- bin/mozilla/ar.pl | 6 +++--- bin/mozilla/gl.pl | 2 +- bin/mozilla/ir.pl | 6 +++--- bin/mozilla/is.pl | 6 ++++-- locale/de/all | 4 +--- locale/de/am | 4 +--- locale/de/ca | 19 ++++++++++++++++--- locale/de/ic | 8 ++++++++ 11 files changed, 59 insertions(+), 45 deletions(-) diff --git a/SL/Form.pm b/SL/Form.pm index 53324c6c5..fd07f5558 100644 --- a/SL/Form.pm +++ b/SL/Form.pm @@ -1419,6 +1419,21 @@ sub get_standard_dbh { return $standard_dbh; } +sub date_closed { + $main::lxdebug->enter_sub(); + + my ($self, $date, $myconfig) = @_; + my $dbh = $self->dbconnect($myconfig); + + my $query = "SELECT 1 FROM defaults WHERE ? < closedto"; + my $sth = prepare_execute_query($self, $dbh, $query, $date); + my ($closed) = $sth->fetchrow_array; + + $main::lxdebug->leave_sub(); + + return $closed; +} + sub update_balance { $main::lxdebug->enter_sub(); diff --git a/bin/mozilla/am.pl b/bin/mozilla/am.pl index ee2b0e648..537151561 100644 --- a/bin/mozilla/am.pl +++ b/bin/mozilla/am.pl @@ -2524,12 +2524,6 @@ sub audit_control { AM->closedto(\%myconfig, \%$form); - if ($form->{revtrans}) { - $checked{Y} = "checked"; - } else { - $checked{N} = "checked"; - } - $form->header; print qq| @@ -2543,15 +2537,6 @@ sub audit_control { - - - @@ -2585,17 +2570,12 @@ sub doclose { AM->closebooks(\%myconfig, \%$form); - if ($form->{revtrans}) { + if ($form->{closedto}) { $form->redirect( - $locale->text('Transaction reversal enforced for all dates')); + $locale->text('Books closed up to') . " " + . $locale->date(\%myconfig, $form->{closedto}, 1)); } else { - if ($form->{closedto}) { - $form->redirect( - $locale->text('Transaction reversal enforced up to') . " " - . $locale->date(\%myconfig, $form->{closedto}, 1)); - } else { - $form->redirect($locale->text('Books are open')); - } + $form->redirect($locale->text('Books are open')); } $lxdebug->leave_sub(); diff --git a/bin/mozilla/ap.pl b/bin/mozilla/ap.pl index 25c219665..a252f0ec8 100644 --- a/bin/mozilla/ap.pl +++ b/bin/mozilla/ap.pl @@ -948,7 +948,7 @@ sub post_payment { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); $form->error($locale->text('Cannot post payment for a closed period!')) - if ($datepaid <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { $form->{"exchangerate_$i"} = $form->{exchangerate} @@ -982,7 +982,7 @@ sub post { $closedto = $form->datetonum($form->{closedto}, \%myconfig); $transdate = $form->datetonum($form->{transdate}, \%myconfig); - $form->error($locale->text('Cannot post transaction for a closed period!')) if ($transdate <= $closedto); + $form->error($locale->text('Cannot post transaction for a closed period!')) if ($form->date_closed($form->{"transdate"}, \%myconfig)); my $zero_amount_posting = 1; for $i (1 .. $form->{rowcount}) { @@ -1005,7 +1005,7 @@ sub post { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); $form->error($locale->text('Cannot post payment for a closed period!')) - if ($datepaid <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { $form->{"exchangerate_$i"} = $form->{exchangerate} diff --git a/bin/mozilla/ar.pl b/bin/mozilla/ar.pl index c95d0c7fb..0498e117d 100644 --- a/bin/mozilla/ar.pl +++ b/bin/mozilla/ar.pl @@ -1009,7 +1009,7 @@ sub post_payment { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); -# $form->error($locale->text('Cannot post payment for a closed period!')) if ($datepaid <= $closedto); + $form->error($locale->text('Cannot post payment for a closed period!')) if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { # $form->{"exchangerate_$i"} = $form->{exchangerate} if ($invdate == $datepaid); @@ -1050,7 +1050,7 @@ sub post { my $closedto = $form->datetonum($form->{closedto}, \%myconfig); my $transdate = $form->datetonum($form->{transdate}, \%myconfig); - $form->error($locale->text('Cannot post transaction for a closed period!')) if ($transdate <= $closedto); + $form->error($locale->text('Cannot post transaction for a closed period!')) if ($form->date_closed($form->{"transdate"}, \%myconfig)); $form->error($locale->text('Zero amount posting!')) unless grep $_*1, map $form->parse_amount(\%myconfig, $form->{"amount_$_"}), 1..$form->{rowcount}; @@ -1067,7 +1067,7 @@ sub post { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); $form->error($locale->text('Cannot post payment for a closed period!')) - if ($datepaid <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { $form->{"exchangerate_$i"} = $form->{exchangerate} if ($transdate == $datepaid); diff --git a/bin/mozilla/gl.pl b/bin/mozilla/gl.pl index 01d011441..f7dba9518 100644 --- a/bin/mozilla/gl.pl +++ b/bin/mozilla/gl.pl @@ -1457,7 +1457,7 @@ sub post_transaction { # this is just for the wise guys $form->error($locale->text('Cannot post transaction for a closed period!')) - if ($transdate <= $closedto); + if ($form->date_closed($form->{"transdate"}, \%myconfig)); if ($form->round_amount($debit, 2) != $form->round_amount($credit, 2)) { $form->error($locale->text('Out of balance transaction!')); } diff --git a/bin/mozilla/ir.pl b/bin/mozilla/ir.pl index 82239ae74..c5f6da63a 100644 --- a/bin/mozilla/ir.pl +++ b/bin/mozilla/ir.pl @@ -1043,7 +1043,7 @@ sub post_payment { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); $form->error($locale->text('Cannot post payment for a closed period!')) - if ($datepaid <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { $form->{"exchangerate_$i"} = $form->{exchangerate} @@ -1100,7 +1100,7 @@ sub post { $invdate = $form->datetonum($form->{invdate}, \%myconfig); $form->error($locale->text('Cannot post invoice for a closed period!')) - if ($invdate <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); $form->isblank("exchangerate", $locale->text('Exchangerate missing!')) if ($form->{currency} ne $form->{defaultcurrency}); @@ -1112,7 +1112,7 @@ sub post { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); $form->error($locale->text('Cannot post payment for a closed period!')) - if ($datepaid <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { $form->{"exchangerate_$i"} = $form->{exchangerate} diff --git a/bin/mozilla/is.pl b/bin/mozilla/is.pl index 41788c832..8c61d72da 100644 --- a/bin/mozilla/is.pl +++ b/bin/mozilla/is.pl @@ -1356,7 +1356,7 @@ sub post_payment { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); $form->error($locale->text('Cannot post payment for a closed period!')) - if ($datepaid <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { $form->{"exchangerate_$i"} = $form->{exchangerate} @@ -1386,6 +1386,8 @@ sub post { $form->{defaultcurrency} = $form->get_default_currency(\%myconfig); $form->isblank("invdate", $locale->text('Invoice Date missing!')); $form->isblank("customer", $locale->text('Customer missing!')); + $form->error($locale->text('Cannot post invoice for a closed period!')) + if ($form->date_closed($form->{"invdate"}, \%myconfig)); $form->{invnumber} =~ s/^\s*//g; $form->{invnumber} =~ s/\s*$//g; @@ -1417,7 +1419,7 @@ sub post { $form->isblank("datepaid_$i", $locale->text('Payment date missing!')); $form->error($locale->text('Cannot post payment for a closed period!')) - if ($datepaid <= $closedto); + if ($form->date_closed($form->{"datepaid_$i"}, \%myconfig)); if ($form->{currency} ne $form->{defaultcurrency}) { $form->{"exchangerate_$i"} = $form->{exchangerate} diff --git a/locale/de/all b/locale/de/all index 11035799c..4889ad4c6 100644 --- a/locale/de/all +++ b/locale/de/all @@ -236,6 +236,7 @@ aktualisieren wollen?', 'Body' => 'Text', 'Body:' => 'Text:', 'Books are open' => 'Die Bücher sind geöffnet.', + 'Books closed up to' => 'Bücher abgeschlossen bis zum', 'Boolean variables: If the default value is non-empty then the checkbox will be checked by default and unchecked otherwise.' => 'Ja/Nein-Variablen: Wenn der Standardwert nicht leer ist, so wird die Checkbox standardmäßig angehakt.', 'Both' => 'Beide', 'Bottom' => 'Unten', @@ -582,7 +583,6 @@ aktualisieren wollen?', 'Edit units' => 'Einheiten bearbeiten', 'Employee' => 'Bearbeiter', 'Empty transaction!' => 'Buchung ist leer!', - 'Enforce transaction reversal for all dates' => 'Gegenbuchungen für jeden Zeitraum aktualisieren', 'Enter a description for this new draft.' => 'Geben Sie eine Beschreibung für diesen Entwurf ein.', 'Enter longdescription' => 'Langtext eingeben', 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Geben Sie Ihre und weitere Währungen mit bis zu drei Buchstaben pro Währung und Währungen durch Doppelpunkte getrennt ein (z.B. EUR:USD:CAD)', @@ -1481,8 +1481,6 @@ aktualisieren wollen?', 'Transaction description' => 'Vorgangsbezeichnung', 'Transaction has already been cancelled!' => 'Diese Buchung wurde bereits storniert.', 'Transaction posted!' => 'Buchung verbucht!', - 'Transaction reversal enforced for all dates' => 'Fehleintragungen müssen für jeden Zeitraum mit einer Kontraeintragung ausgebessert werden', - 'Transaction reversal enforced up to' => 'Fehleintragungen können bis zu dem angegebenen Zeitraum nur mit einer Kontraeintragung ausgebessert werden!', 'Transactions, AR transactions, AP transactions' => 'Dialogbuchen, Debitorenrechnungen, Kreditorenrechnungen', 'Transfer' => 'Umlagern', 'Transfer Quantity' => 'Umlagermenge', diff --git a/locale/de/am b/locale/de/am index 6e31d9c86..e28e3251c 100644 --- a/locale/de/am +++ b/locale/de/am @@ -75,6 +75,7 @@ $self->{texts} = { 'Binding to the LDAP server as "#1" failed. Please check config/authentication.pl.' => 'Die Anmeldung am LDAP-Server als "#1" schlug fehl. Bitte überprüfen Sie die Angaben in config/authentication.pl.', 'Bins saved.' => 'Lagerplätze gespeichert.', 'Books are open' => 'Die Bücher sind geöffnet.', + 'Books closed up to' => 'Bücher abgeschlossen bis zum', 'Buchungsgruppe' => 'Buchungsgruppe', 'Buchungsgruppen' => 'Buchungsgruppen', 'Business deleted!' => 'Firma gelöscht.', @@ -141,7 +142,6 @@ $self->{texts} = { 'Edit Price Factor' => 'Preisfaktor bearbeiten', 'Edit Printer' => 'Drucker bearbeiten', 'Edit Warehouse' => 'Lager bearbeiten', - 'Enforce transaction reversal for all dates' => 'Gegenbuchungen für jeden Zeitraum aktualisieren', 'Enter longdescription' => 'Langtext eingeben', 'Equity' => 'Passiva', 'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s', @@ -278,8 +278,6 @@ $self->{texts} = { 'The units have been saved.' => 'Die Einheiten wurden gespeichert.', 'The warehouse could not be deleted because it has already been used.' => 'Das Lager konnte nicht gelöscht werden, da es bereits in Benutzung war.', 'To (email)' => 'An', - 'Transaction reversal enforced for all dates' => 'Fehleintragungen müssen für jeden Zeitraum mit einer Kontraeintragung ausgebessert werden', - 'Transaction reversal enforced up to' => 'Fehleintragungen können bis zu dem angegebenen Zeitraum nur mit einer Kontraeintragung ausgebessert werden!', 'Transactions, AR transactions, AP transactions' => 'Dialogbuchen, Debitorenrechnungen, Kreditorenrechnungen', 'Translation (%s)' => 'Übersetzung (%s)', 'Trying to call a sub without a name' => 'Es wurde versucht, eine Unterfunktion ohne Namen aufzurufen.', diff --git a/locale/de/ca b/locale/de/ca index 135b3eec8..a8c0493fc 100644 --- a/locale/de/ca +++ b/locale/de/ca @@ -5,6 +5,7 @@ $self->{texts} = { 'AP' => 'Einkauf', 'AR' => 'Verkauf', 'Account' => 'Konto', + 'Accrual' => 'Bilanzierung', 'Advance turnover tax return' => 'Umsatzsteuervoranmeldung', 'All reports' => 'Alle Berichte (Kontenübersicht, Summen- u. Saldenliste, GuV, BWA, Bilanz, Projektbuchungen)', 'Apr' => 'Apr', @@ -15,6 +16,7 @@ $self->{texts} = { 'Bcc' => 'Bcc', 'Bin List' => 'Lagerliste', 'Binding to the LDAP server as "#1" failed. Please check config/authentication.pl.' => 'Die Anmeldung am LDAP-Server als "#1" schlug fehl. Bitte überprüfen Sie die Angaben in config/authentication.pl.', + 'Bis' => 'bis', 'CANCELED' => 'Storniert', 'CSV export -- options' => 'CSV-Export -- Optionen', 'Cc' => 'Cc', @@ -39,6 +41,7 @@ $self->{texts} = { 'Create and edit vendor invoices' => 'Eingangsrechnungen erfassen und bearbeiten', 'Credit' => 'Haben', 'Credit Note' => 'Gutschrift', + 'Customized Report' => 'Vorgewählte Zeiträume', 'DATEV Export' => 'DATEV-Export', 'DELETED' => 'Gelöscht', 'DUNNING STARTED' => 'Mahnprozess gestartet', @@ -47,19 +50,22 @@ $self->{texts} = { 'Debit' => 'Soll', 'Dec' => 'Dez', 'December' => 'Dezember', + 'Decimalplaces' => 'Dezimalstellen', 'Delivery Order' => 'Lieferschein', 'Department' => 'Abteilung', 'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:', 'Description' => 'Beschreibung', 'Directory' => 'Verzeichnis', 'ELSE' => 'Zusatz', + 'EUR' => 'E/Ü-Rechnung', 'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s', + 'Falsches Datumsformat!' => 'Falsches Datumsformat!', 'Feb' => 'Feb', 'February' => 'Februar', 'File' => 'Datei', + 'Free report period' => 'Freier Zeitraum', 'From' => 'Von', 'General ledger and cash' => 'Finanzbuchhaltung und Zahlungsverkehr', - 'Include in Report' => 'In Bericht aufnehmen', 'Invoice' => 'Rechnung', 'Jan' => 'Jan', 'January' => 'Januar', @@ -77,9 +83,11 @@ $self->{texts} = { 'May ' => 'Mai', 'May set the BCC field when sending emails' => 'Beim Verschicken von Emails das Feld \'BCC\' setzen', 'Message' => 'Nachricht', + 'Method' => 'Verfahren', 'Missing \'description\' field.' => 'Fehlendes Feld \'description\'.', 'Missing \'tag\' field.' => 'Fehlendes Feld \'tag\'.', 'Missing parameter #1 in call to sub #2.' => 'Fehlernder Parameter \'#1\' in Funktionsaufruf \'#2\'.', + 'Monthly' => 'monatlich', 'More than one control file with the tag \'%s\' exist.' => 'Es gibt mehr als eine Kontrolldatei mit dem Tag \'%s\'.', 'No or an unknown authenticantion module specified in "config/authentication.pl".' => 'Es wurde kein oder ein unbekanntes Authentifizierungsmodul in "config/authentication.pl" angegeben.', 'Nov' => 'Nov', @@ -98,6 +106,8 @@ $self->{texts} = { 'Proforma Invoice' => 'Proformarechnung', 'Project Number' => 'Projektnummer', 'Purchase Order' => 'Lieferantenauftrag', + 'Quarter' => 'Quartal', + 'Quarterly' => 'quartalsweise', 'Quotation' => 'Angebot', 'RFQ' => 'Anfrage', 'Receipt, payment, reconciliation' => 'Zahlungseingang, Zahlungsausgang, Kontenabgleich', @@ -111,7 +121,6 @@ $self->{texts} = { 'Storno Invoice' => 'Stornorechnung', 'Storno Packing List' => 'Stornolieferschein', 'Subject' => 'Betreff', - 'Subtotal' => 'Zwischensumme', 'The \'tag\' field must only consist of alphanumeric characters or the carachters - _ ( )' => 'Das Feld \'tag\' darf nur aus alphanumerischen Zeichen und den Zeichen - _ ( ) bestehen.', 'The LDAP server "#1:#2" is unreachable. Please check config/authentication.pl.' => 'Der LDAP-Server "#1:#2" ist nicht erreichbar. Bitte überprüfen Sie die Angaben in config/authentication.pl.', 'The config file "config/authentication.pl" contained invalid Perl code:' => 'Die Konfigurationsdatei "config/authentication.pl" enthielt ungütigen Perl-Code:', @@ -121,15 +130,18 @@ $self->{texts} = { 'The connection to the template database failed:' => 'Die Verbindung zur Vorlagendatenbank schlug fehl:', 'The creation of the authentication database failed:' => 'Das Anlegen der Authentifizierungsdatenbank schlug fehl:', 'The list has been printed.' => 'Die Liste wurde ausgedruckt.', - 'To' => 'An', 'To (email)' => 'An', 'Transactions, AR transactions, AP transactions' => 'Dialogbuchen, Debitorenrechnungen, Kreditorenrechnungen', 'Unknown dependency \'%s\'.' => 'Unbekannte Abhängigkeit \'%s\'.', 'View warehouse content' => 'Lagerbestand ansehen', 'Warehouse management' => 'Lagerverwaltung/Bestandsveränderung', + 'YYYY' => 'JJJJ', + 'Year' => 'Jahr', + 'Yearly' => 'jährlich', 'You do not have the permissions to access this function.' => 'Sie verfügen nicht über die notwendigen Rechte, um auf diese Funktion zuzugreifen.', '[email]' => '[email]', 'bin_list' => 'Lagerliste', + 'button' => '?', 'chart_of_accounts' => 'kontenuebersicht', 'config/authentication.pl: Key "DB_config" is missing.' => 'config/authentication.pl: Das Schlüsselwort "DB_config" fehlt.', 'config/authentication.pl: Key "LDAP_config" is missing.' => 'config/authentication.pl: Der Schlüssel "LDAP_config" fehlt.', @@ -146,6 +158,7 @@ $self->{texts} = { 'request_quotation' => 'Angebotsanforderung', 'sales_order' => 'Kundenauftrag', 'sales_quotation' => 'Verkaufsangebot', + 'wrongformat' => 'Falsches Format', }; $self->{subs} = { diff --git a/locale/de/ic b/locale/de/ic index d3f9522a7..a316eafde 100644 --- a/locale/de/ic +++ b/locale/de/ic @@ -412,17 +412,25 @@ $self->{subs} = { 'erzeugnis_erfassen' => 'add_assembly', 'ware_erfassen' => 'add_part', 'dienstleistung_erfassen' => 'add_service', + 'erzeugnisnummer_fehlt!' => 'assembly_number_missing!', 'weiter' => 'continue', 'löschen' => 'delete', 'erzeugnis_bearbeiten' => 'edit_assembly', 'ware_bearbeiten' => 'edit_part', 'dienstleistung_bearbeiten' => 'edit_service', + 'bevor_dieses_erzeugnis_als_ungültig_markiert_werden_kann__muß_das_inventar_auf_null_sein!' => 'inventory_quantity_must_be_zero_before_you_can_set_this_assembly_obsolete!', + 'bevor_diese_ware_als_ungültig_markiert_werden_kann__muß_das_inventar_null_sein!' => 'inventory_quantity_must_be_zero_before_you_can_set_this_part_obsolete!', 'neue_ware' => 'new_part', + 'artikelnummer_fehlt!' => 'part_number_missing!', + 'waren' => 'parts', 'speichern' => 'save', 'als_neu_speichern' => 'save_as_new', + 'dienstleistungsnummer_fehlt!' => 'service_number_missing!', + 'dienstleistungen' => 'services', 'top_100' => 'top100', 'erneuern' => 'update', 'auswählen' => 'choice', + 'st.' => 'ea', 'auflisten' => 'list', }; -- 2.20.1
| - . $locale->text('Enforce transaction reversal for all dates') . qq| - | - . $locale->text('Yes') - . qq| | - . $locale->text('No') - . qq|
| . $locale->text('Close Books up to') . qq| {closedto}>