Revision 9e06d0e4
Von Philip Reetz vor fast 17 Jahren hinzugefügt
SL/Form.pm | ||
---|---|---|
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();
|
||
|
bin/mozilla/am.pl | ||
---|---|---|
|
||
AM->closedto(\%myconfig, \%$form);
|
||
|
||
if ($form->{revtrans}) {
|
||
$checked{Y} = "checked";
|
||
} else {
|
||
$checked{N} = "checked";
|
||
}
|
||
|
||
$form->header;
|
||
|
||
print qq|
|
||
... | ... | |
<tr>
|
||
<td>
|
||
<table>
|
||
<tr>
|
||
<td>|
|
||
. $locale->text('Enforce transaction reversal for all dates') . qq|</th>
|
||
<td><input name=revtrans class=radio type=radio value="1" $checked{Y}> |
|
||
. $locale->text('Yes')
|
||
. qq| <input name=revtrans class=radio type=radio value="0" $checked{N}> |
|
||
. $locale->text('No')
|
||
. qq|</td>
|
||
</tr>
|
||
<tr>
|
||
<th>| . $locale->text('Close Books up to') . qq|</th>
|
||
<td><input name=closedto size=11 title="$myconfig{dateformat}" value=$form->{closedto}></td>
|
||
... | ... | |
|
||
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();
|
bin/mozilla/ap.pl | ||
---|---|---|
$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}
|
||
... | ... | |
|
||
$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}) {
|
||
... | ... | |
$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}
|
bin/mozilla/ar.pl | ||
---|---|---|
|
||
$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);
|
||
... | ... | |
|
||
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};
|
||
... | ... | |
$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);
|
bin/mozilla/gl.pl | ||
---|---|---|
|
||
# 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!'));
|
||
}
|
bin/mozilla/ir.pl | ||
---|---|---|
$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}
|
||
... | ... | |
$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});
|
||
... | ... | |
$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}
|
bin/mozilla/is.pl | ||
---|---|---|
$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}
|
||
... | ... | |
$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;
|
||
... | ... | |
$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}
|
locale/de/all | ||
---|---|---|
'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',
|
||
... | ... | |
'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)',
|
||
... | ... | |
'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',
|
locale/de/am | ||
---|---|---|
'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.',
|
||
... | ... | |
'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',
|
||
... | ... | |
'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.',
|
locale/de/ca | ||
---|---|---|
'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',
|
||
... | ... | |
'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',
|
||
... | ... | |
'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',
|
||
... | ... | |
'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',
|
||
... | ... | |
'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',
|
||
... | ... | |
'Proforma Invoice' => 'Proformarechnung',
|
||
'Project Number' => 'Projektnummer',
|
||
'Purchase Order' => 'Lieferantenauftrag',
|
||
'Quarter' => 'Quartal',
|
||
'Quarterly' => 'quartalsweise',
|
||
'Quotation' => 'Angebot',
|
||
'RFQ' => 'Anfrage',
|
||
'Receipt, payment, reconciliation' => 'Zahlungseingang, Zahlungsausgang, Kontenabgleich',
|
||
... | ... | |
'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:',
|
||
... | ... | |
'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.',
|
||
... | ... | |
'request_quotation' => 'Angebotsanforderung',
|
||
'sales_order' => 'Kundenauftrag',
|
||
'sales_quotation' => 'Verkaufsangebot',
|
||
'wrongformat' => 'Falsches Format',
|
||
};
|
||
|
||
$self->{subs} = {
|
locale/de/ic | ||
---|---|---|
'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',
|
||
};
|
||
|
Auch abrufbar als: Unified diff
Ueberarbeitete Buecherkontrolle