]> wagnertech.de Git - mfinanz.git/blobdiff - doc/html/ch02s09.html
date error in mapping
[mfinanz.git] / doc / html / ch02s09.html
index cf0b9c5ebd4af621fc942fc8d0cd05c363152e7e..2a385fae95f3e89c39b6b469bb0d9e7d1a0bb95a 100644 (file)
@@ -1,73 +1,89 @@
 <html><head>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-   <title>2.9. Benutzer- und Gruppenverwaltung</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="kivitendo 3.0.0: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s08.html" title="2.8. Benutzerauthentifizierung und Administratorpasswort"><link rel="next" href="ch02s10.html" title="2.10. E-Mail-Versand aus kivitendo heraus"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.9. Benutzer- und Gruppenverwaltung</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s08.html">Zurück</a>&nbsp;</td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="ch02s10.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.9. Benutzer- und Gruppenverwaltung"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="Benutzer--und-Gruppenverwaltung"></a>2.9. Benutzer- und Gruppenverwaltung</h2></div></div></div><p>Nach der Installation müssen Benutzer, Gruppen und Datenbanken
-      angelegt werden. Dieses geschieht im Administrationsmenü, das Sie unter
-      folgender URL finden:</p><p>
-            <a class="ulink" href="http://localhost/kivitendo-erp/admin.pl" target="_top">http://localhost/kivitendo-erp/admin.pl</a>
-         </p><p>Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
-      <code class="filename">config/kivitendo.conf</code> eingetragen haben.</p><div class="sect2" title="2.9.1. Zusammenhänge"><div class="titlepage"><div><div><h3 class="title"><a name="Zusammenh%C3%A4nge"></a>2.9.1. Zusammenhänge</h3></div></div></div><p>kivitendo verwendet eine Datenbank zum Speichern all seiner
-        Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
-        mit kivitendo arbeiten zu können, muss eine Person einen
-        Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
-        Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
-        möglich und normal, dass mehreren Benutzern die selbe Datenbank
-        zugewiesen wird, sodass sie alle mit den selben Daten arbeiten
-        können.</p><p>Die Basisdaten der Benutzer, die in der Administration
-        eingegeben werden können, werden in einer zweiten Datenbank
-        gespeichert, der bereits erwähnten Authentifizierungsdatenbank. Diese
-        ist also den Produktivdaten enthaltenden Datenbanken vorgeschaltet.
-        Pro kivitendo-Installation gibt es nur eine
-        Authentifizierungsdatenbank, aber beliebig viele Datenbanken mit
-        Firmendaten.</p><p>kivitendo kann seinen Benutzern Zugriff auf bestimmte
-        Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
-        gestattet, so werden der entsprechenden Menüpunkte auch nicht
-        angezeigt. Diese Rechte werden ebenfalls in der
-        Authentifizierungsdatenbank gespeichert.</p><p>Um Rechte verteilen zu können, verwendet kivitendo ein
-        Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
-        erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
-        mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
-        Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
-        Benutzer Mitglied ist.</p><p>Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und
-        Benutzer angelegt werden sollten, lautet:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Datenbank anlegen</p></li><li class="listitem"><p>Gruppen anlegen</p></li><li class="listitem"><p>Benutzer anlegen</p></li><li class="listitem"><p>Benutzer den Gruppen zuordnen</p></li></ol></div></div><div class="sect2" title="2.9.2. Datenbanken anlegen"><div class="titlepage"><div><div><h3 class="title"><a name="Datenbanken-anlegen"></a>2.9.2. Datenbanken anlegen</h3></div></div></div><p>Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für
-        den Datenbankzugriff den vorhin angelegten Benutzer (in unseren
-        Beispielen ist dies ‘<code class="literal">kivitendo</code>’).</p><p>Wenn Sie für die kivitendo-Installation nicht Unicode (UTF-8) sondern den europäischen Schriftsatz ISO-8859-15 benutzen
-        wollen, so müssen Sie vor dem Anlegen der Datenbank in der Datei <code class="filename">config/kivitendo.conf</code> die Variable
-        <code class="literal">dbcharset</code> im Abschnitt <code class="literal">system</code> auf den Wert ‘<code class="literal">ISO-8859-15</code>’ setzen.</p><p>Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
-        verwenden müssen, da diese Einstellungen momentan global in kivitendo
-        vorgenommen wird und nicht nach Datenbank unterschieden werden kann.
-        Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
-        angelegt worden sein.</p></div><div class="sect2" title="2.9.3. Gruppen anlegen"><div class="titlepage"><div><div><h3 class="title"><a name="Gruppen-anlegen"></a>2.9.3. Gruppen anlegen</h3></div></div></div><p>Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein
-        Name gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
-        Anlegen können Sie die verschiedenen Bereiche wählen, auf die
-        Mitglieder dieser Gruppe Zugriff haben sollen.</p><p>Benutzergruppen sind unabhängig von Datenbanken, da sie in der
-        Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
-        Datenbanken, die in dieser Installation verwaltet werden.</p></div><div class="sect2" title="2.9.4. Benutzer anlegen"><div class="titlepage"><div><div><h3 class="title"><a name="Benutzer-anlegen"></a>2.9.4. Benutzer anlegen</h3></div></div></div><p>Beim Anlegen von Benutzern werden für viele Parameter
-        Standardeinstellungen vorgenommen, die den Gepflogenheiten des
-        deutschen Raumes entsprechen.</p><p>Zwingend anzugeben sind der Loginname sowie die komplette
-        Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
-        Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
-        gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
-        aktiv, so ist das Passwort-Feld deaktiviert.</p><p>In der Datenbankkonfiguration müssen die Zugriffsdaten einer der
-        eben angelegten Datenbanken eingetragen werden.</p></div><div class="sect2" title="2.9.5. Gruppenmitgliedschaften verwalten"><div class="titlepage"><div><div><h3 class="title"><a name="Gruppenmitgliedschaften-verwalten"></a>2.9.5. Gruppenmitgliedschaften verwalten</h3></div></div></div><p>Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den
-        Gruppen zugewiesen werden. Dazu gibt es zwei Möglichkeiten:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>In der Gruppenverwaltung wählt man eine Gruppe aus. Im
-            folgenden Dialog kann man dann einzeln die Benutzer der Gruppe
-            hinzufügen.</p></li><li class="listitem"><p>In der Gruppenverwaltung wählt man das Tool zur Verwaltung
-            der Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die
-            alle im System angelegten Gruppen und Benutzer enthält. Durch
-            Setzen der Häkchen wird der Benutzer in der ausgewählten Zeile der
-            Gruppe in der ausgewählten Spalte hinzugefügt.</p></li></ol></div></div><div class="sect2" title="2.9.6. Migration alter Installationen"><div class="titlepage"><div><div><h3 class="title"><a name="Migration-alter-Installationen"></a>2.9.6. Migration alter Installationen</h3></div></div></div><p>Wenn kivitendo 2.6.3 über eine ältere Version installiert wird,
-        in der die Benutzerdaten noch im Dateisystem im Verzeichnis
-        <code class="literal">users</code> verwaltet wurden, so bietet kivitendo die
-        Möglichkeit, diese Benutzerdaten automatisch in die
-        Authentifizierungsdatenbank zu übernehmen. Dies geschieht, wenn man
-        sich nach dem Update der Installation das erste Mal im
-        Administrationsbereich anmeldet. Findet kivitendo die Datei
-        <code class="literal">users/members</code>, so wird der Migrationsprozess
-        gestartet.</p><p>Der Migrationsprozess ist nahezu vollautomatisch. Alle
-        Benutzerdaten können übernommen werden. Nach den Benutzerdaten bietet
-        kivitendo noch die Möglichkeit an, dass automatisch eine
-        Benutzergruppe angelegt wird. Dieser Gruppe wird Zugriff auf alle
-        Funktionen von kivitendo gewährt. Alle migrierten Benutzern werden
-        Mitglied in dieser Gruppe. Damit wird das Verhalten von kivitendo bis
-        Version 2.4.3 inklusive wiederhergestellt, und die Benutzer können
-        sich sofort wieder anmelden und mit dem System arbeiten.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s08.html">Zurück</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="ch02s10.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.8. Benutzerauthentifizierung und Administratorpasswort&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top">&nbsp;2.10. E-Mail-Versand aus kivitendo heraus</td></tr></table></div></body></html>
\ No newline at end of file
+   <title>2.9. Konfiguration der Hintergrund-Jobs</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="kivitendo 3.9.2: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s08.html" title="2.8. Der Task-Server"><link rel="next" href="ch02s10.html" title="2.10. Benutzerauthentifizierung und Administratorpasswort"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.9. Konfiguration der Hintergrund-Jobs</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s08.html">Zurück</a>&nbsp;</td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="ch02s10.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.9. Konfiguration der Hintergrund-Jobs"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="Hintergrund-Jobs konfigurieren"></a>2.9. Konfiguration der Hintergrund-Jobs</h2></div></div></div><p>Hintergrund-Jobs werden über System -&gt; Hintergrund-Jobs und Task-Server -&gt; Aktuelle Hintergrund-Jobs anzeigen -&gt; Aktions-Knopf 'erfassen' angelegt. </p><p>Nachdem wir über das Menü dort angelangt sind, legen wir hier unseren Hintergrund-Jobs an:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
+                  <code class="literal">Aktiv:</code> Hier ein 'Ja' auswählen</p></li><li class="listitem"><p>
+                  <code class="literal">Ausführungsart:</code> 'wiederholte Ausführung' auswählen</p></li><li class="listitem"><p>
+                  <code class="literal">Paketname:</code> Hintergrundjob auswählen</p></li><li class="listitem"><p>
+                  <code class="literal">Ausführungszeitplan:</code> Hier entsprechend Werte wie in der crontab eingeben.</p><p>Syntax:</p><pre class="programlisting">* * * * *
+┬ ┬ ┬ ┬ ┬
+│ │ │ │ │
+│ │ │ │ └──── Wochentag (0-7, Sonntag ist 0 oder 7)
+│ │ │ └────── Monat (1-12)
+│ │ └──────── Tag (1-31)
+│ └────────── Stunde (0-23)
+└──────────── Minute (0-59)  </pre><p>Die Sterne können folgende Werte haben:</p><pre class="programlisting">
+1 2 3 4 5
+
+1 = Minute (0-59)
+2 = Stunde (0-23)
+3 = Tag (0-31)
+4 = Monat (1-12)
+5 = Wochentag (0-7, Sonntag ist 0 oder 7)
+</pre><p>Um die Ausführung auf eine Minute vor den Jahreswechsel zu setzen, müssen die folgenden Werte eingetragen werden:</p><pre class="programlisting">59 23 31 12 *</pre></li><li class="listitem"><p>
+                  <code class="literal">Daten:</code>In diesem Feld können optionale Parameter für den Hintergrund im YAML-Format gesetzt werden.</p></li></ul></div><div class="sect2" title="2.9.1. SetNumberRange"><div class="titlepage"><div><div><h3 class="title"><a name="Hintergrund-Job SetNumberRange"></a>2.9.1. SetNumberRange</h3></div></div></div><p>Der Hintergrund-Job <code class="literal">SetNumberRange</code> kann entweder jährlich oder monatlich/täglich den Nummernkreis verändern. Der Standardmodus 'jährlich' kodiert die nächste Jahreszahl in alle Nummernkreise und initialisiert diese von Beginn, bpsw. 202500001. Zusätzlich bleiben Präfixe in den Nummernkreis erhalten und es gibt drei konfigurierbare Parameter in diesem Modus:</p><p>Der jährliche Modus (default) akzeptiert im Feld <code class="literal">Daten</code> drei optionale Parameter, nämlich <code class="literal">digit_year</code>, <code class="literal">multiplier</code> so wie <code class="literal">current_year</code>.</p><p> 
+               <code class="literal">digit_year</code> kann zwei Werte haben entweder 2 oder 4, darüber wird gesteuert ob die Jahreszahl zwei oder vierstellig kodiert wird (für 2019, dann entweder 19 oder 2019). Der Standardwert ist vierstellig.</p><p> 
+               <code class="literal">multiplier</code> ist ein Vielfaches von 10, darüber wird die erste Nummer im Nummernkreis (die Anzahl der Stellen) wie folgt bestimmt:</p><pre class="programlisting">
+multiplier     Nummernkreis 2020
+10        -&gt;   20200
+100       -&gt;   202000
+1000      -&gt;   2020000
+</pre><p>Falls der Parameter <code class="literal">current_year</code> bspw. so gesetzt ist:
+</p><pre class="programlisting">current_year: 1</pre><p>
+ wird der Nummernkreis nicht um eins hochgezählt. Das ist sinnvoll wenn vom 31.12. auf den 01.01. sowieso keine Rechnungsläufe stattfinden und man die Nummernkreise dann am 01.01. des neuen Jahres automatisch hochsetzen möchte. </p><p>Wir gehen jetzt beispielhaft von einer letzten Rechnungsnummer von RE2019456 aus. Demnach sollte ab Januar 2020 die erste Nummer RE2020001 sein. Da der Task auch Präfixe berücksichtigt, kann dies mit folgenden JSON-kodierten Werten umgesetzt werden:</p><p>
+               <code class="literal">Daten:</code>
+            </p><pre class="programlisting">multiplier: 100
+digits_year: 4</pre><p>Dieser Job müsste dann zwingend vor Mitternacht des 31.12. ausgeführt werden.</p><p>
+               <code class="literal">Daten:</code>
+            </p><pre class="programlisting">multiplier: 100
+digits_year: 4
+current_year: 1</pre><p>Mit dieser Einstellung kann der Job auf 00:01h des 01.01. gesetzt werden.</p><p>Der (wahrscheinliche) monatliche Modus wird über den Parameter <code class="literal">monthly</code> gesteuert und erzeugt standardmäßig folgende Nummernkreise JJ-MM-000, bspw. am 01.04.2025 25-04-000. Dieser Modus akzeptiert die zwei optionalen Parameter <code class="literal">monthly_postfix</code> für die Überlagerung am Ende der Zeichenkette und <code class="literal">monthly_strftime</code> für die beliebige Formatierung der strftime C-Methode, s.a. <a class="ulink" href="https://metacpan.org/pod/DateTime#strftime-Patterns" target="_top">strftime-Patterns</a>.
+Folgende Parameter erzeugen am 01.04.2025 folgenden Nummernkreis: 2025-04-01-A0001.
+</p><p>
+                  <code class="literal">Daten:</code>
+               </p><p>
+
+               </p><pre class="programlisting">
+monthly: 1
+monthly_postfix: '-A0001'
+monthly_strftime: '%Y-%m-%d'
+</pre><p>
+
+            </p></div><div class="sect2" title="2.9.2. ImportRecordEmails"><div class="titlepage"><div><div><h3 class="title"><a name="Hintergrund-Job ImportRecordEmails"></a>2.9.2. ImportRecordEmails</h3></div></div></div><p> Der Hintergrund-Job <code class="literal">ImportRecordEmails</code> kann vollständig über das Feld Daten konfiguriert werden. Er benötigt folgende Variablen:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
+                     <code class="literal">hostname:</code> Hier wird der E-Mail-Server (IMAP) eingetragen</p></li><li class="listitem"><p>
+                     <code class="literal">username:</code> Benutzername, für den IMAP-Server (häufig die E-Mail-Adresse)</p></li><li class="listitem"><p>
+                     <code class="literal">password:</code> Passwort des Benutzers</p></li><li class="listitem"><p>
+                     <code class="literal">folder:</code> Hier wird der Ordner eingetragen, aus dem die E-Mails importert werden sollen, bspw. 'INBOX'</p></li><li class="listitem"><p>
+                     <code class="literal">port:</code> Port am E-Mail-Server. Default ist 993</p></li><li class="listitem"><p>
+                     <code class="literal">ssl:</code> Gibt an ob SSL verwendet werden soll. Default: 1</p></li></ul></div><p> Optional können außerdem folgende Variablen verwendet werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
+                     <code class="literal">email_import_ids_to_delete:</code> Hier können IDs von Importen eingetragen werden, deren E-Mails aus dem E-Mail-Journal gelöscht werden sollen.</p></li><li class="listitem"><p>
+                     <code class="literal">process_imported_emails:</code> Wenn nach dem Import noch weitere Verarbeitung der angehangenen Dokumente erfolgen soll, müssen hier die jeweiligen Schritte eingetragen werden. Aktuell ist es möglich, dass angehangene ZUGFeRD-Rechnung direkt verbucht und mit der E-Mail verknüpft werden. Dazu muss hier 'zugferd' eingetragen werden.</p></li><li class="listitem"><p>
+                     <code class="literal">processed_imap_flag:</code> Das hier eingetragenen Flag wird nach dem Verarbeiten in der E-Mail auf den IMAP-Server gesetzt.</p></li><li class="listitem"><p>
+                     <code class="literal">not_processed_imap_flag:</code> Dieses Flag wird gesetzt, wenn die E-Mail nicht verarbeitet werden konnte.</p></li><li class="listitem"><p>
+                     <code class="literal">record_type:</code> Einträge im E-Mail-Journal können direkt einem Belegtypen zugeordnet werden. Wenn alle E-Mails, die mit einem Hintergrundjob importiert werden, den gleichen Belegtypen haben, kann man diesen hier festlegen und alle Einträge im E-Mail-Journal werden entsprechend zugeordnet. Für Eingangsrechnungen kann man hier bspw. 'ap_transaction' setzen.</p></li></ul></div><p>Wie die IMAP Flags von den jeweiligen Clients angezeigt und eingerichtet werden, ist aktuell im Thunderbird (Version 115.8.0 und Version 115.8.1) und SoGo (Version 5.9.1) getestet:</p><p>In Thunderbird heißen die Flags Schlagwörter. In unseren beiden Testfälle, war das Verfahren unterschiedlich:</p><p>Thunderbird 115.8.0:  Sie werden durchnummeriert mit dem Prefix "$label". Über die Einstellungen kann man Schlagwort und Farbe für den jeweiligen Tag setzen und berabeiten. Um die vordefenierten Tags in Thunderbird zu nutzen kann man $label1 - $label5 nutzen. Eigene Labels werden dann von thunderbird automatisch hochgezählt. Um das korrekte Tag für ein Label zu finden oder auch selbst ein Tag mit einer selbst gewählten Zahl zu definieren kann man in den Einstellunge ganz am Ende über den Button <code class="literal">Konfiguration berabeiten...</code> die Werte in der Kofiguration einsehen, ändern und berabeiten. Hier muss man nach <code class="literal">mailnews.tags</code> suchen.</p><p>Thunderbird 115.8.1: Einstellungen -&gt; Schlagwörter -&gt; hinzufügen. Das Schlagwort wird mit dem 'Label' 'name_mit_unterstrichen' zu Verfügung gestellt. Was wirklich passiert kann man dann ganz unten in den Einstellungen unter 'Konfiguration bearbeiten' und einer darauf folgenden Filtersuche nach 'mailnews.tag' erkennen.</p><p>In SoGo kann man unter Einstellungen -&gt; Mail -&gt; Labels beliebige Label mit $ als Prefix anlegen und Namen und Farbe zuweisen.</p><p>Eine beispielhafte Konfiguration im YAML-Format für das Feld 'Daten' im Hintergrund-Job könnte bspw. so aussehen:
+            </p><pre class="programlisting">
+record_type: ap_transaction
+folder: INBOX/Eingangsrechnung
+processed_imap_flag: zugferd_verarbeitet
+not_processed_imap_flag: zugferd_geht_net
+process_imported_emails: zugferd
+hostname:  www.meine-domaene.de
+username: alpha39@meine-domaene.de
+password: supipass8
+            </pre><p>
+        
+            </p></div><div class="sect2" title="2.9.3. InventoryClearAll"><div class="titlepage"><div><div><h3 class="title"><a name="Hintergrund-Job InventoryClearAll"></a>2.9.3. InventoryClearAll</h3></div></div></div><p>Besteht die Anforderung, vor einer Inventur sämtliche Lagerplätze mittels Korrekturbuchungen auf Bestand 0 zu bringen, so kann dies mit dem Hintergrund-Job <code class="literal">InventoryClearAll</code> erledigt werden.</p><div class="note" title="Anmerkung" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Anmerkung]" src="system/docbook-xsl/images/note.png"></td><th align="left">Anmerkung</th></tr><tr><td align="left" valign="top">Damit diese Korrekturbuchungen nur einmalig auf Nutzerwunsch ausgeführt werden und nicht ausversehen periodisch das Lager leer räumen, muss die Variable <code class="literal">correction_date</code> auf das aktuelle Datum gesetzt sein. Die Korrekturbuchungen können nicht ohne Weiteres rückgängig gemacht werden.
+          Nachdem der Job im Menü System -&gt; Hintergrund-Jobs und Task-Server -&gt; Aktuelle Hintergrund-Jobs anzeigen erfasst wurde, kann er einmalig ausgeführt werden, indem beim Bearbeiten der Button <code class="literal">Speichern und Ausführen</code> gewählt wird.</td></tr></table></div><p>Im Feld Daten werden folgende Variablen akzeptiert:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
+                     <code class="literal">correction_date:</code> Das aktuelle Datum in der Form <code class="literal">YYYY-MM-DD</code>, sonst läuft der Job nicht</p></li><li class="listitem"><p>
+                     <code class="literal">comment:</code> (optional) Wird in den Korrekturbuchungen als Kommentar gesetzt. Falls kein Wert gegeben ist, wird der Kommentar <code class="literal">vor Inventur</code> gesetzt</p></li><li class="listitem"><p>
+                     <code class="literal">dry_run:</code> (optional) Falls <code class="literal">dry_run: 1</code> gesetzt ist, werden keine Korrekturbuchungen ausgeführt, die notwenigen Korrekturbuchungen werden lediglich im Ergebnis des Jobs angezeigt</p></li><li class="listitem"><p>
+                     <code class="literal">warehouse:</code> (optional) Schränkt die Korrekturbuchungen auf ein bestimmtes Lager ein; andernfalls werden Korrekturbuchungen für alle Lager ausgeführt</p></li></ul></div><p>Ein Konfigurationsbeispiel ist:</p><pre class="programlisting">
+correction_date: 2025-03-11
+comment: vor Inventur
+dry_run: 1
+# warehouse: Stahllager Industriepark Gallin
+          </pre></div><div class="sect2" title="2.9.4. CloseQuotations"><div class="titlepage"><div><div><h3 class="title"><a name="Hintergrund-Job CloseQuotations"></a>2.9.4. CloseQuotations</h3></div></div></div><p>Gibt es viele alte offene Preisanfragen im Einkauf und Angebote im Verkauf, so können diese komfortabel mit dem Hintergrund-Job <code class="literal">CloseQuotations</code> geschlossen werden.</p><p>Im Feld Daten werden folgende Variablen akzeptiert:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
+                     <code class="literal">dry_run:</code> (optional) Falls <code class="literal">dry_run: 1</code> gesetzt ist, werden keine Belege geschlossen, die Nummern der betroffenen Belege werden lediglich im Ergebnis des Jobs angezeigt</p></li><li class="listitem"><p>
+                     <code class="literal">years:</code> (optional) Anzahl der Jahre, die offene Preisanfragen und Angebote alt sein müssen, damit sie geschlossen werden. Standardwert: <code class="literal">years: 1</code> (ein Jahr)</p></li></ul></div><p>Ein Konfigurationsbeispiel ist:</p><pre class="programlisting">
+dry_run: 1
+years: 1
+          </pre></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s08.html">Zurück</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="ch02s10.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.8. Der Task-Server&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top">&nbsp;2.10. Benutzerauthentifizierung und Administratorpasswort</td></tr></table></div></body></html>
\ No newline at end of file