diff --git a/erpnext/translations/de.csv b/erpnext/translations/de.csv
index 2ffa94d..e850039 100644
--- a/erpnext/translations/de.csv
+++ b/erpnext/translations/de.csv
@@ -1,19 +1,22 @@
  (Half Day),(Halber Tag)
  and year: ,und Jahr:
 """ does not exists",""" Existiert nicht"
-%  Delivered,% Lieferung
-% Amount Billed,% Rechnungsbetrag
-% Billed,% Billed
-% Completed,% Abgeschlossen
+%  Delivered,%  geliefert
+% Amount Billed,% Betrag in Rechnung gestellt
+% Billed,% in Rechnung gestellt
+% Completed,% abgeschlossen
 % Delivered,Geliefert %
-% Installed,% Installierte
-% Received,% Erhaltene
-% of materials billed against this Purchase Order.,% Der Materialien gegen diese Bestellung in Rechnung gestellt.
-% of materials billed against this Sales Order,% Der Materialien gegen diesen Kundenauftrag abgerechnet
-% of materials delivered against this Delivery Note,% Der Materialien gegen diese Lieferschein
-% of materials delivered against this Sales Order,% Der Materialien gegen diesen Kundenauftrag geliefert
-% of materials ordered against this Material Request,% Der bestellten Materialien gegen diesen Werkstoff anfordern
-% of materials received against this Purchase Order,% Der Materialien erhalten gegen diese Bestellung
+% Installed,% installiert
+% Milestones Achieved,
+% Milestones Completed,
+% Received,% erhalten
+% Tasks Completed,
+% of materials billed against this Purchase Order.,% der für diese Bestellung in Rechnung gestellten Materialien.
+% of materials billed against this Sales Order,% der für diesen Kundenauftrag in Rechnung gestellten Materialien
+% of materials delivered against this Delivery Note,% der für diesen Lieferschein gelieferten Materialien
+% of materials delivered against this Sales Order,% der für diesen Kundenauftrag gelieferten Materialien
+% of materials ordered against this Material Request,% der für diese Materialanfrage bestellten Materialien
+% of materials received against this Purchase Order,% der für diese Bestellung erhaltenen Materialeien
 'Actual Start Date' can not be greater than 'Actual End Date',"' Ist- Startdatum ""nicht größer als "" Actual End Date "" sein"
 'Based On' and 'Group By' can not be same,""" Based On "" und "" Group By "" nicht gleich sein"
 'Days Since Last Order' must be greater than or equal to zero,""" Tage seit dem letzten Auftrag "" muss größer als oder gleich Null sein"
@@ -22,16 +25,20 @@
 'From Date' is required,""" Von-Datum "" ist erforderlich,"
 'From Date' must be after 'To Date',"""Von Datum "" muss nach 'To Date "" sein"
 'Has Serial No' can not be 'Yes' for non-stock item,""" Hat Seriennummer "" kann nicht sein ""Ja"" für Nicht- Lagerware"
-'Notification Email Addresses' not specified for recurring invoice,"'Benachrichtigung per E-Mail -Adressen ""nicht für wiederkehrende Rechnung angegebenen"
+'Notification Email Addresses' not specified for recurring %s,
 'Profit and Loss' type account {0} not allowed in Opening Entry,""" Gewinn und Verlust "" Typ Account {0} nicht in Öffnungs Eintrag erlaubt"
-'To Case No.' cannot be less than 'From Case No.',&#39;To Fall Nr.&#39; kann nicht kleiner sein als &quot;Von Fall Nr. &#39;
+'To Case No.' cannot be less than 'From Case No.','Bis Fall Nr.' kann nicht kleiner als 'Von Fall Nr.' sein
 'To Date' is required,"'To Date "" ist erforderlich,"
 'Update Stock' for Sales Invoice {0} must be set,'Update Auf ' für Sales Invoice {0} muss eingestellt werden
-* Will be calculated in the transaction.,* Wird in der Transaktion berechnet werden.
+* Will be calculated in the transaction.,* Wird in der Transaktion berechnet.
+"**Budget Distribution** helps you distribute your budget across months if you have seasonality in your business.
+
+To distribute a budget using this distribution, set this **Budget Distribution** in the **Cost Center**",
+**Currency** Master,**Währung** Stamm
+**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,**Geschäftsjahr** steht für ein Geschäftsjahr. Alle Buchungen und anderen großen Transaktionen werden mit dem **Geschäftsjahr** verglichen.
 "1 Currency = [?] Fraction
-For e.g. 1 USD = 100 Cent","1 Währungs = [?] Fraction 
- Für zB 1 USD = 100 Cent"
-1. To maintain the customer wise item code and to make them searchable based on their code use this option,Ein. Um den Kunden kluge Artikel Code zu pflegen und um sie durchsuchbar basierend auf ihren Code um diese Option
+For e.g. 1 USD = 100 Cent",
+1. To maintain the customer wise item code and to make them searchable based on their code use this option,"1. Um den kundenspezifischen Artikelcode zu erhalten und ihn auffindbar zu machen, verwenden Sie diese Option"
 "<a href=""#Sales Browser/Customer Group"">Add / Edit</a>","<a href=""#Sales Browser/Customer Group""> Hinzufügen / Bearbeiten </ a>"
 "<a href=""#Sales Browser/Item Group"">Add / Edit</a>","<a href=""#Sales Browser/Item Group""> Hinzufügen / Bearbeiten </ a>"
 "<a href=""#Sales Browser/Territory"">Add / Edit</a>","<a href=""#Sales Browser/Territory""> Hinzufügen / Bearbeiten </ a>"
@@ -46,41 +53,35 @@
 {% if phone %}Phone: {{ phone }}&lt;br&gt;{% endif -%}
 {% if fax %}Fax: {{ fax }}&lt;br&gt;{% endif -%}
 {% if email_id %}Email: {{ email_id }}&lt;br&gt;{% endif -%}
-</code></pre>","<h4> Standardvorlage </ h4> 
- <p> Verwendet <a href=""http://jinja.pocoo.org/docs/templates/""> Jinja Templating </ a> und alle Felder der Adresse ( einschließlich Custom Fields falls vorhanden) zur Verfügung stehen </ p> 
- {{<pre> <code> address_line1}} <br> 
- {% wenn address_line2%} {{}} address_line2 <br> { endif% -%} 
- {{city}} <br> 
- {% wenn staatliche%} {{Zustand}} {% endif <br> -%} 
- {%%}, wenn PIN-Code PIN: {{PIN-Code}} {% endif <br> -%} 
- {{Land}} <br> 
- {%%}, wenn das Telefon Tel.: {{Telefon}} {<br> endif% -%} 
- {%%}, wenn Fax Fax: {{Fax}} {% endif <br> -%} 
- {% wenn email_id%} E-Mail: {{}} email_id <br> , {% endif -%} 
- </ code> </ pre>"
+</code></pre>",
 A Customer Group exists with same name please change the Customer name or rename the Customer Group,Mit dem gleichen Namen eine Kundengruppe existiert ändern Sie bitte die Kundenname oder benennen Sie die Kundengruppe
-A Customer exists with same name,Ein Kunde gibt mit dem gleichen Namen
-A Lead with this email id should exist,Ein Lead mit dieser E-Mail-ID sollte vorhanden sein
+A Customer exists with same name,Ein Kunde mit diesem Namen existiert bereits
+A Lead with this email id should exist,Es sollte ein Lead mit dieser E-Mail-ID vorhanden sein
 A Product or Service,Ein Produkt oder Dienstleistung
-A Supplier exists with same name,Ein Lieferant existiert mit dem gleichen Namen
-A symbol for this currency. For e.g. $,Ein Symbol für diese Währung. Für z.B. $
-AMC Expiry Date,AMC Ablaufdatum
+"A Product or a Service that is bought, sold or kept in stock.","Ein Produkt oder eine Dienstleistung, die gekauft, verkauft oder auf Lager gehalten wird."
+A Supplier exists with same name,Es ist bereits ein Lieferant mit diesem Namen vorhanden
+A condition for a Shipping Rule,Eine Bedingung für eine Versandregel
+A logical Warehouse against which stock entries are made.,"Eine logisches Warenlager, für das Bestandseinträge gemacht werden."
+A symbol for this currency. For e.g. $,Ein Symbol für diese Währung. Zum Beispiel: $
+A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Ein dritter Vertriebspartner/Händler/Kommissionär/Tochterunternehmer/ Fachhändler, der die Produkte es Unternehmens auf Provision vertreibt."
+"A user with ""Expense Approver"" role",
+AMC Expiry Date,AMC Verfalldatum
 Abbr,Abk.
 Abbreviation cannot have more than 5 characters,Abkürzung kann nicht mehr als 5 Zeichen
-Above Value,Vor Wert
+Above Value,Über Wert
 Absent,Abwesend
-Acceptance Criteria,Akzeptanzkriterien
+Acceptance Criteria,Akzeptanzkriterium
 Accepted,Akzeptiert
 Accepted + Rejected Qty must be equal to Received quantity for Item {0},Akzeptierte + Abgelehnt Menge muss für den Posten gleich Received Menge {0}
-Accepted Quantity,Akzeptiert Menge
-Accepted Warehouse,Akzeptiert Warehouse
+Accepted Quantity,Akzeptierte Menge
+Accepted Warehouse,Akzeptiertes Warenlager
 Account,Konto
 Account Balance,Kontostand
 Account Created: {0},Konto Erstellt: {0}
-Account Details,Kontodetails
-Account Head,Konto Leiter
-Account Name,Account Name
-Account Type,Kontotyp
+Account Details,Kontendaten
+Account Head,Kontenführer
+Account Name,Kontenname
+Account Type,Kontenart
 "Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Kontostand bereits im Kredit, Sie dürfen nicht eingestellt ""Balance Must Be"" als ""Debit"""
 "Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Kontostand bereits in Lastschrift, sind Sie nicht berechtigt, festgelegt als ""Kredit"" ""Balance Must Be '"
 Account for the warehouse (Perpetual Inventory) will be created under this Account.,Konto für das Lager ( Perpetual Inventory) wird unter diesem Konto erstellt werden.
@@ -94,6 +95,7 @@
 Account {0} does not belong to Company {1},Konto {0} ist nicht auf Unternehmen gehören {1}
 Account {0} does not belong to company: {1},Konto {0} ist nicht auf Unternehmen gehören: {1}
 Account {0} does not exist,Konto {0} existiert nicht
+Account {0} does not exists,
 Account {0} has been entered more than once for fiscal year {1},Konto {0} hat mehr als einmal für das Geschäftsjahr eingegeben {1}
 Account {0} is frozen,Konto {0} ist eingefroren
 Account {0} is inactive,Konto {0} ist inaktiv
@@ -104,244 +106,259 @@
 Account {0}: Parent account {1} does not exist,Konto {0}: Eltern-Konto {1} existiert nicht
 Account {0}: You can not assign itself as parent account,Konto {0}: Sie können sich nicht als Hauptkonto zuweisen
 "Account: {0} can only be updated via \
-					Stock Transactions","Konto: \
- Auf Transaktionen {0} kann nur über aktualisiert werden"
+					Stock Transactions",
 Accountant,Buchhalter
 Accounting,Buchhaltung
 "Accounting Entries can be made against leaf nodes, called","Accounting Einträge können gegen Blattknoten gemacht werden , die so genannte"
-"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Buchhaltungseingaben bis zu diesem Zeitpunkt eingefroren, kann niemand / nicht ändern Eintrag außer Rolle unten angegebenen."
-Accounting journal entries.,Accounting Journaleinträge.
+Accounting Entry for Stock,
+"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Bis zu diesem Zeitpunkt eingefrorener Buchhaltungseintrag, niemand außer der unten genannten Position kann den Eintrag bearbeiten/ändern."
+Accounting journal entries.,Buchhaltungsjournaleinträge
 Accounts,Konten
 Accounts Browser,Konten Browser
-Accounts Frozen Upto,Konten Bis gefroren
-Accounts Payable,Kreditorenbuchhaltung
-Accounts Receivable,Debitorenbuchhaltung
-Accounts Settings,Konten-Einstellungen
+Accounts Frozen Upto,Eingefrorene Konten bis
+Accounts Manager,
+Accounts Payable,Kreditoren
+Accounts Receivable,Forderungen
+Accounts Settings,Kontoeinstellungen
+Accounts User,
 Active,Aktiv
 Active: Will extract emails from ,Aktiv: Werden E-Mails extrahieren
 Activity,Aktivität
-Activity Log,Activity Log
+Activity Log,Aktivitätsprotokoll
 Activity Log:,Activity Log:
-Activity Type,Art der Tätigkeit
+Activity Type,Aktivitätstyp
 Actual,Tatsächlich
-Actual Budget,Tatsächliche Budget
-Actual Completion Date,Tatsächliche Datum der Fertigstellung
-Actual Date,Aktuelles Datum
-Actual End Date,Actual End Datum
-Actual Invoice Date,Tag der Rechnungslegung
-Actual Posting Date,Tatsächliche Buchungsdatum
-Actual Qty,Tatsächliche Menge
-Actual Qty (at source/target),Tatsächliche Menge (an der Quelle / Ziel)
-Actual Qty After Transaction,Tatsächliche Menge Nach Transaction
+Actual Budget,Tatsächliches Budget
+Actual Completion Date,Tatsächliches Abschlussdatum
+Actual Date,Tatsächliches Datum
+Actual End Date,Tatsächliches Enddatum
+Actual Invoice Date,Tatsächliches Rechnungsdatum
+Actual Posting Date,Tatsächliches Buchungsdatum
+Actual Qty,Tatsächliche Anzahl
+Actual Qty (at source/target),Tatsächliche Anzahl (an Ursprung/Ziel)
+Actual Qty After Transaction,Tatsächliche Anzahl nach Transaktion
 Actual Qty: Quantity available in the warehouse.,Tatsächliche Menge: Menge verfügbar im Lager.
-Actual Quantity,Tatsächliche Menge
-Actual Start Date,Tatsächliche Startdatum
+Actual Quantity,Istmenge
+Actual Start Date,Tatsächliches Startdatum
 Add,Hinzufügen
-Add / Edit Taxes and Charges,Hinzufügen / Bearbeiten Steuern und Abgaben
+Add / Edit Taxes and Charges,Hinzufügen/Bearbeiten von Steuern und Abgaben
 Add Child,Kinder hinzufügen
 Add Serial No,In Seriennummer
 Add Taxes,Steuern hinzufügen
-Add Taxes and Charges,In Steuern und Abgaben
-Add or Deduct,Hinzufügen oder abziehen
-Add rows to set annual budgets on Accounts.,Fügen Sie Zeilen hinzu jährlichen Budgets für Konten festgelegt.
+Add or Deduct,Hinzuaddieren oder abziehen
+Add rows to set annual budgets on Accounts.,Zeilen zum Festlegen der Jahresbudgets in Konten hinzufügen.
 Add to Cart,In den Warenkorb
 Add to calendar on this date,In den an diesem Tag Kalender
-Add/Remove Recipients,Hinzufügen / Entfernen von Empfängern
+Add/Remove Recipients,Empfänger hinzufügen/entfernen
 Address,Adresse
-Address & Contact,Adresse &amp; Kontakt
-Address & Contacts,Adresse und Kontakte
-Address Desc,Adresse Desc
-Address Details,Adressdaten
+Address & Contact,Adresse & Kontakt
+Address & Contacts,Adresse & Kontakt
+Address Desc,Adresszusatz
+Address Details,Adressdetails
 Address HTML,Adresse HTML
-Address Line 1,Address Line 1
-Address Line 2,Address Line 2
+Address Line 1,Adresszeile 1
+Address Line 2,Adresszeile 2
 Address Template,Adressvorlage
-Address Title,Anrede
+Address Title,Adresse Titel
 Address Title is mandatory.,Titel Adresse ist verpflichtend.
-Address Type,Adresse Typ
+Address Type,Adresstyp
 Address master.,Adresse Master.
 Administrative Expenses,Verwaltungskosten
 Administrative Officer,Administrative Officer
-Advance Amount,Voraus Betrag
-Advance amount,Vorschuss in Höhe
-Advances,Advances
+Administrator,
+Advance Amount,Vorausbetrag
+Advance amount,Vorausbetrag
+Advances,Vorschüsse
 Advertisement,Anzeige
 Advertising,Werbung
 Aerospace,Luft-und Raumfahrt
-After Sale Installations,After Sale Installationen
+After Sale Installations,Installationen nach Verkauf
 Against,Gegen
-Against Account,Vor Konto
-Against Bill {0} dated {1},Gegen Bill {0} vom {1}
-Against Docname,Vor DocName
-Against Doctype,Vor Doctype
-Against Document Detail No,Vor Document Detailaufnahme
+Against Account,Gegen Konto
+Against Docname,Gegen Dokumentennamen
+Against Doctype,Gegen Dokumententyp
+Against Document Detail No,Gegen Dokumentendetail Nr.
 Against Document No,Gegen Dokument Nr.
-Against Expense Account,Vor Expense Konto
-Against Income Account,Vor Income Konto
-Against Journal Voucher,Vor Journal Gutschein
+Against Expense Account,Gegen Aufwandskonto
+Against Income Account,Gegen Einkommenskonto
+Against Journal Voucher,Gegen Journalgutschein
 Against Journal Voucher {0} does not have any unmatched {1} entry,Vor Blatt Gutschein {0} keine unerreichte {1} Eintrag haben
-Against Purchase Invoice,Vor Kaufrechnung
-Against Sales Invoice,Vor Sales Invoice
+Against Purchase Invoice,Gegen Einkaufsrechnung
+Against Sales Invoice,Gegen Verkaufsrechnung
 Against Sales Order,Vor Sales Order
+Against Supplier Invoice {0} dated {1},
 Against Voucher,Gegen Gutschein
-Against Voucher Type,Gegen Gutschein Type
+Against Voucher Type,Gegen Gutscheintyp
 Ageing Based On,"Altern, basiert auf"
 Ageing Date is mandatory for opening entry,Alternde Datum ist obligatorisch für die Öffnung der Eintrag
 Ageing date is mandatory for opening entry,Alternde Datum ist obligatorisch für die Öffnung der Eintrag
 Agent,Agent
-Aging Date,Aging Datum
+"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. 
+
+The package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".
+
+For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.
+
+Note: BOM = Bill of Materials",
+Aging Date,Fälligkeitsdatum
 Aging Date is mandatory for opening entry,Aging Datum ist obligatorisch für die Öffnung der Eintrag
 Agriculture,Landwirtschaft
 Airline,Fluggesellschaft
-All Addresses.,Alle Adressen.
-All Contact,Alle Kontakt
-All Contacts.,Alle Kontakte.
-All Customer Contact,All Customer Contact
+All,
+All Addresses.,Alle Adressen
+All Contact,Alle Kontakte
+All Contacts.,Alle Kontakte
+All Customer Contact,Alle Kundenkontakte
 All Customer Groups,Alle Kundengruppen
-All Day,All Day
-All Employee (Active),Alle Mitarbeiter (Active)
+All Day,Ganzer Tag
+All Employee (Active),Alle Mitarbeiter (Aktiv)
 All Item Groups,Alle Artikelgruppen
-All Lead (Open),Alle Lead (Open)
+All Lead (Open),Alle Leads (offen)
 All Products or Services.,Alle Produkte oder Dienstleistungen.
-All Sales Partner Contact,Alle Vertriebspartner Kontakt
-All Sales Person,Alle Sales Person
-All Supplier Contact,Alle Lieferanten Kontakt
+All Sales Partner Contact,Alle Vertriebspartnerkontakte
+All Sales Person,Alle Vertriebsmitarbeiter
+All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,"Alle Verkaufsvorgänge können für mehrere ** Vertriebsmitarbeiter** markiert werden, so dass Sie Ziele festlegen und überwachen können."
+All Supplier Contact,Alle Lieferantenkontakte
 All Supplier Types,Alle Lieferant Typen
 All Territories,Alle Staaten
 "All export related fields like currency, conversion rate, export total, export grand total etc are available in Delivery Note, POS, Quotation, Sales Invoice, Sales Order etc.","Alle Export verwandten Bereichen wie Währung , Conversion-Rate , Export insgesamt , Export Gesamtsumme etc sind in Lieferschein , POS, Angebot, Verkaufsrechnung , Auftrags usw."
 "All import related fields like currency, conversion rate, import total, import grand total etc are available in Purchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.","Alle Import verwandten Bereichen wie Währung , Conversion-Rate , Import insgesamt , Import Gesamtsumme etc sind in Kaufbeleg , Lieferant Angebot, Einkaufsrechnung , Bestellung usw."
 All items have already been invoiced,Alle Einzelteile sind bereits abgerechnet
 All these items have already been invoiced,Alle diese Elemente sind bereits in Rechnung gestellt
-Allocate,Zuweisen
+Allocate,Zuordnung
 Allocate leaves for a period.,Ordnen Blätter für einen Zeitraum .
-Allocate leaves for the year.,Weisen Blätter für das Jahr.
-Allocated Amount,Zugeteilten Betrag
-Allocated Budget,Zugeteilten Budget
-Allocated amount,Zugeteilten Betrag
+Allocate leaves for the year.,Jahresurlaube zuordnen.
+Allocated Amount,Zugewiesener Betrag
+Allocated Budget,Zugewiesenes Budget
+Allocated amount,Zugewiesener Betrag
 Allocated amount can not be negative,Geschätzter Betrag kann nicht negativ sein
 Allocated amount can not greater than unadusted amount,Geschätzter Betrag kann nicht größer als unadusted Menge
-Allow Bill of Materials,Lassen Bill of Materials
+Allow Bill of Materials,Stückliste zulassen
 Allow Bill of Materials should be 'Yes'. Because one or many active BOMs present for this item,"Lassen Bill of Materials sollte ""Ja"" . Da eine oder mehrere zu diesem Artikel vorhanden aktiv Stücklisten"
 Allow Children,Lassen Sie Kinder
-Allow Dropbox Access,Erlauben Dropbox-Zugang
-Allow Google Drive Access,Erlauben Sie Google Drive Zugang
-Allow Negative Balance,Lassen Negative Bilanz
-Allow Negative Stock,Lassen Negative Lager
-Allow Production Order,Lassen Fertigungsauftrag
+Allow Dropbox Access,Dropbox-Zugang zulassen
+Allow Google Drive Access,Google Drive-Zugang zulassen
+Allow Negative Balance,Negativen Saldo zulassen
+Allow Negative Stock,Negatives Inventar zulassen
+Allow Production Order,Fertigungsauftrag zulassen
 Allow User,Benutzer zulassen
-Allow Users,Ermöglichen
-Allow the following users to approve Leave Applications for block days.,Lassen Sie die folgenden Benutzer zu verlassen Anwendungen für Block Tage genehmigen.
-Allow user to edit Price List Rate in transactions,Benutzer zulassen Preis List in Transaktionen bearbeiten
-Allowance Percent,Allowance Prozent
+Allow Users,Benutzer zulassen
+Allow the following users to approve Leave Applications for block days.,"Zulassen, dass die folgenden Benutzer Urlaubsanträge für Blöcke von Tagen genehmigen können."
+Allow user to edit Price List Rate in transactions,"Benutzer erlauben, die Preislistenrate in Transaktionen zu bearbeiten"
+Allowance Percent,Zulassen Prozent
 Allowance for over-{0} crossed for Item {1},Wertberichtigungen für Über {0} drücken für Artikel {1}
 Allowance for over-{0} crossed for Item {1}.,Wertberichtigungen für Über {0} drücken für Artikel {1}.
 Allowed Role to Edit Entries Before Frozen Date,"Erlaubt Rolle , um Einträge bearbeiten Bevor Gefrorene Datum"
-Amended From,Geändert von
-Amount,Menge
-Amount (Company Currency),Betrag (Gesellschaft Währung)
+Amended From,Geändert am
+Amount,Betrag
+Amount (Company Currency),Betrag (Unternehmenswährung)
 Amount Paid,Betrag
 Amount to Bill,Belaufen sich auf Bill
+Amounts not reflected in bank,
+Amounts not reflected in system,
 An Customer exists with same name,Ein Kunde mit dem gleichen Namen existiert
 "An Item Group exists with same name, please change the item name or rename the item group","Mit dem gleichen Namen eine Artikelgruppe existiert, ändern Sie bitte die Artikel -Namen oder die Artikelgruppe umbenennen"
 "An item exists with same name ({0}), please change the item group name or rename the item","Ein Element mit dem gleichen Namen existiert ({0} ), ändern Sie bitte das Einzelgruppennamen oder den Artikel umzubenennen"
 Analyst,Analytiker
 Annual,jährlich
 Another Period Closing Entry {0} has been made after {1},Eine weitere Periode Schluss Eintrag {0} wurde nach gemacht worden {1}
-Another Salary Structure {0} is active for employee {0}. Please make its status 'Inactive' to proceed.,"Eine andere Gehaltsstruktur {0} ist für Mitarbeiter aktiv {0}. Bitte stellen Sie ihren Status ""inaktiv"" , um fortzufahren."
-"Any other comments, noteworthy effort that should go in the records.","Weitere Kommentare, bemerkenswerte Anstrengungen, die in den Aufzeichnungen gehen sollte."
+Another Salary Structure {0} is active for employee {1}. Please make its status 'Inactive' to proceed.,
+"Any other comments, noteworthy effort that should go in the records.",Alle weiteren Kommentare sind bemerkenswert und sollten aufgezeichnet werden.
 Apparel & Accessories,Kleidung & Accessoires
 Applicability,Anwendbarkeit
+Applicable Charges,
 Applicable For,Anwendbar
-Applicable Holiday List,Anwendbar Ferienwohnung Liste
+Applicable Holiday List,Geltende Urlaubsliste
 Applicable Territory,Anwendbar Territory
-Applicable To (Designation),Für (Bezeichnung)
-Applicable To (Employee),Für (Employee)
-Applicable To (Role),Anwendbar (Rolle)
+Applicable To (Designation),Geltend für (Bestimmung)
+Applicable To (Employee),Geltend für (Mitarbeiter)
+Applicable To (Role),Anwendbar auf (Rolle)
 Applicable To (User),Anwendbar auf (User)
-Applicant Name,Name des Antragstellers
-Applicant for a Job.,Antragsteller für einen Job.
+Applicant Name,Bewerbername
+Applicant for a Job,Bewerber für einen Job
+Applicant for a Job.,Bewerber für einen Job.
 Application of Funds (Assets),Mittelverwendung (Aktiva)
-Applications for leave.,Bei Anträgen auf Urlaub.
+Applications for leave.,Urlaubsanträge
 Applies to Company,Gilt für Unternehmen
+Apply / Approve Leaves,Beurlaubungen anwenden/genehmigen
 Apply On,Bewerben auf
 Appraisal,Bewertung
-Appraisal Goal,Bewertung Goal
-Appraisal Goals,Bewertung Details
-Appraisal Template,Bewertung Template
-Appraisal Template Goal,Bewertung Template Goal
-Appraisal Template Title,Bewertung Template Titel
+Appraisal Goal,Bewertungsziel
+Appraisal Goals,Bewertungsziele
+Appraisal Template,Bewertungsvorlage
+Appraisal Template Goal,Bewertungsvorlage Ziel
+Appraisal Template Title,Bewertungsvorlage Titel
 Appraisal {0} created for Employee {1} in the given date range,Bewertung {0} für Mitarbeiter erstellt {1} in der angegebenen Datumsbereich
 Apprentice,Lehrling
 Approval Status,Genehmigungsstatus
 Approval Status must be 'Approved' or 'Rejected',"Genehmigungsstatus muss ""Genehmigt"" oder "" Abgelehnt """
 Approved,Genehmigt
-Approver,Approver
-Approving Role,Genehmigung Rolle
+Approver,Genehmigender
+Approving Role,Genehmigende Rolle
 Approving Role cannot be same as role the rule is Applicable To,Genehmigen Rolle kann nicht dieselbe sein wie die Rolle der Regel ist anwendbar auf
 Approving User,Genehmigen Benutzer
 Approving User cannot be same as user the rule is Applicable To,Genehmigen Benutzer kann nicht dieselbe sein wie Benutzer die Regel ist anwendbar auf
 Are you sure you want to STOP ,
 Are you sure you want to UNSTOP ,
-Arrear Amount,Nachträglich Betrag
+Arrear Amount,Ausstehender Betrag
 "As Production Order can be made for this item, it must be a stock item.","Als Fertigungsauftrag kann für diesen Artikel gemacht werden , es muss ein Lager Titel ."
-As per Stock UOM,Wie pro Lagerbestand UOM
+As per Stock UOM,Wie pro Bestand ME
 "As there are existing stock transactions for this item, you can not change the values of 'Has Serial No', 'Is Stock Item' and 'Valuation Method'","Da gibt es bestehende Aktientransaktionen zu diesem Artikel , können Sie die Werte von "" Hat Serien Nein ' nicht ändern , Ist Auf Artikel "" und "" Bewertungsmethode """
 Asset,Vermögenswert
 Assistant,Assistent
 Associate,Mitarbeiterin
 Atleast one of the Selling or Buying must be selected,Mindestens eines der Verkauf oder Kauf ausgewählt werden muss
-Atleast one warehouse is mandatory,Mindestens eines Lagers ist obligatorisch
+Atleast one warehouse is mandatory,Mindestens ein Warenlager ist obligatorisch
 Attach Image,Bild anhängen
 Attach Letterhead,Bringen Brief
 Attach Logo,Bringen Logo
 Attach Your Picture,Bringen Sie Ihr Bild
 Attendance,Teilnahme
-Attendance Date,Teilnahme seit
-Attendance Details,Teilnahme Einzelheiten
-Attendance From Date,Teilnahme ab-Datum
+Attendance Date,Teilnahmedatum
+Attendance Details,Teilnahmedetails
+Attendance From Date,Teilnahme ab Datum
 Attendance From Date and Attendance To Date is mandatory,Die Teilnahme von Datum bis Datum und Teilnahme ist obligatorisch
-Attendance To Date,Teilnahme To Date
+Attendance To Date,Teilnahme bis Datum
 Attendance can not be marked for future dates,Die Teilnahme kann nicht für zukünftige Termine markiert werden
 Attendance for employee {0} is already marked,Die Teilnahme für Mitarbeiter {0} bereits markiert ist
-Attendance record.,Zuschauerrekord.
-Authorization Control,Authorization Control
+Attendance record.,Anwesenheitsnachweis
+Auditor,
+Authorization Control,Berechtigungskontrolle
 Authorization Rule,Autorisierungsregel
 Auto Accounting For Stock Settings,Auto Accounting for Stock -Einstellungen
-Auto Material Request,Auto Werkstoff anfordern
-Auto-raise Material Request if quantity goes below re-order level in a warehouse,"Auto-Raise Werkstoff anfordern, wenn Quantität geht unten re-order-Ebene in einer Lagerhalle"
+Auto Material Request,Automatische Materialanforderung
+Auto-raise Material Request if quantity goes below re-order level in a warehouse,"Automatische Erstellung einer Materialanforderung, wenn die Menge in einem Warenlager unter der Grenze für Neubestellungen liegt"
 Automatically compose message on submission of transactions.,Automatisch komponieren Nachricht auf Vorlage von Transaktionen.
-Automatically extract Job Applicants from a mail box ,
-Automatically extract Leads from a mail box e.g.,Extrahieren Sie automatisch Leads aus einer Mail-Box z. B.
-Automatically updated via Stock Entry of type Manufacture/Repack,Automatisch über Lager Eintrag vom Typ Manufacture / Repack aktualisiert
+Automatically updated via Stock Entry of type Manufacture/Repack,Automatisch über Lagerbuchung vom Typ Herstellung/Umpacken aktualisiert
 Automotive,Automotive
-Autoreply when a new mail is received,Autoreply wenn eine neue E-Mail empfangen
+Autoreply when a new mail is received,"Autoreply, wenn eine neue E-Mail eingegangen ist"
 Available,verfügbar
-Available Qty at Warehouse,Verfügbare Menge bei Warehouse
-Available Stock for Packing Items,Lagerbestand für Packstücke
-"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Erhältlich in Stückliste , Lieferschein, Rechnung, dem Fertigungsauftrag , Bestellung, Kaufbeleg , Verkaufsrechnung , Auftrags , Stock Erfassung, Zeiterfassung"
+Available Qty at Warehouse,Verfügbare Menge auf Lager
+Available Stock for Packing Items,Verfügbarer Bestand für Verpackungsartikel
+"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Erhältlich in Stückliste, Lieferschein, Rechnung, Fertigungsauftrag, Bestellung, Kaufbeleg, Verkaufsrechnung, Auftrag, Lagerbeleg, Zeiterfassung"
 Average Age,Durchschnittsalter
 Average Commission Rate,Durchschnittliche Kommission bewerten
-Average Discount,Durchschnittliche Discount
+Average Discount,Durchschnittlicher Rabatt
 Awesome Products,ehrfürchtig Produkte
 Awesome Services,ehrfürchtig Dienstleistungen
-BOM Detail No,BOM Detailaufnahme
-BOM Explosion Item,Stücklistenauflösung Artikel
+BOM Detail No,Stückliste Detailnr.
+BOM Explosion Item,Position der Stücklistenauflösung
 BOM Item,Stücklistenposition
-BOM No,BOM Nein
-BOM No. for a Finished Good Item,BOM-Nr für Finished Gute Artikel
-BOM Operation,BOM Betrieb
-BOM Operations,BOM Operationen
-BOM Replace Tool,BOM Replace Tool
+BOM No,Stücklistennr.
+BOM No. for a Finished Good Item,Stücklistennr. für einen fertigen Artikel
+BOM Operation,Stücklistenvorgang
+BOM Operations,Stücklistenvorgänge
+BOM Replace Tool,Stücklisten-Ersetzungstool
 BOM number is required for manufactured Item {0} in row {1},Stücklistennummer wird für hergestellte Artikel erforderlich {0} in Zeile {1}
 BOM number not allowed for non-manufactured Item {0} in row {1},Stücklistennummer für Nicht- gefertigte Artikel darf {0} in Zeile {1}
 BOM recursion: {0} cannot be parent or child of {2},BOM Rekursion : {0} kann nicht Elternteil oder Kind von {2}
-BOM replaced,BOM ersetzt
+BOM replaced,Stückliste ersetzt
 BOM {0} for Item {1} in row {2} is inactive or not submitted,Stückliste {0} für Artikel {1} in Zeile {2} ist inaktiv oder nicht vorgelegt
 BOM {0} is not active or not submitted,Stückliste {0} ist nicht aktiv oder nicht eingereicht
 BOM {0} is not submitted or inactive BOM for Item {1},Stückliste {0} nicht vorgelegt oder inaktiv Stückliste für Artikel {1}
 Backup Manager,Backup Manager
-Backup Right Now,Sichern Right Now
-Backups will be uploaded to,"Backups werden, die hochgeladen werden"
+Backup Right Now,Sofort Backup erstellen
+Backups will be uploaded to,Backups werden hierhin hochgeladen
 Balance Qty,Bilanz Menge
 Balance Sheet,Bilanz
 Balance Value,Bilanzwert
@@ -350,95 +367,98 @@
 "Balances of Accounts of type ""Bank"" or ""Cash""","Guthaben von Konten vom Typ "" Bank"" oder "" Cash"""
 Bank,Bank
 Bank / Cash Account,Bank / Geldkonto
-Bank A/C No.,Bank A / C Nr.
+Bank A/C No.,Bankkonto-Nr.
 Bank Account,Bankkonto
-Bank Account No.,Bank Konto-Nr
+Bank Account No.,Bankkonto-Nr.
 Bank Accounts,Bankkonten
-Bank Clearance Summary,Bank-Ausverkauf Zusammenfassung
+Bank Clearance Summary,Zusammenfassung Bankgenehmigung
 Bank Draft,Bank Draft
 Bank Name,Name der Bank
 Bank Overdraft Account,Kontokorrentkredit Konto
 Bank Reconciliation,Kontenabstimmung
-Bank Reconciliation Detail,Kontenabstimmung Details
-Bank Reconciliation Statement,Kontenabstimmung Statement
+Bank Reconciliation Detail,Kontenabstimmungsdetail
+Bank Reconciliation Statement,Kontenabstimmungsauszug
 Bank Voucher,Bankgutschein
-Bank/Cash Balance,Banken / Cash Balance
+Bank/Cash Balance,Bank-/Bargeldsaldo
 Banking,Bankwesen
 Barcode,Strichcode
 Barcode {0} already used in Item {1},Barcode {0} bereits im Artikel verwendet {1}
-Based On,Basierend auf
+Based On,Beruht auf
 Basic,Grund-
-Basic Info,Basic Info
-Basic Information,Grundlegende Informationen
-Basic Rate,Basic Rate
-Basic Rate (Company Currency),Basic Rate (Gesellschaft Währung)
+Basic Info,Grundlegende Info
+Basic Information,Grundinformationen
+Basic Rate,Basisrate
+Basic Rate (Company Currency),Basisrate (Unternehmenswährung)
 Batch,Stapel
-Batch (lot) of an Item.,Batch (Los) eines Item.
-Batch Finished Date,Batch Beendet Datum
-Batch ID,Batch ID
-Batch No,Batch No
-Batch Started Date,Batch gestartet Datum
-Batch Time Logs for billing.,Batch Zeit Logs für die Abrechnung.
-Batch-Wise Balance History,Batch-Wise Gleichgewicht History
-Batched for Billing,Batch für Billing
-Better Prospects,Bessere Aussichten
-Bill Date,Bill Datum
-Bill No,Bill No
-Bill No {0} already booked in Purchase Invoice {1},Bill Nein {0} bereits in Einkaufsrechnung gebucht {1}
+Batch (lot) of an Item.,Stapel (Charge) eines Artikels.
+Batch Finished Date,Enddatum des Stapels
+Batch ID,Stapel-ID
+Batch No,Stapelnr.
+Batch Started Date,Anfangsdatum Stapel
+Batch Time Logs for Billing.,Stapel-Zeitprotokolle für Abrechnung.
+Batch Time Logs for billing.,Stapel-Zeitprotokolle für Abrechnung.
+Batch-Wise Balance History,Stapelweiser Kontostand
+Batched for Billing,Für Abrechnung gebündelt
+Better Prospects,Bessere zukünftige Kunden
+Bill Date,Rechnungsdatum
+Bill No,Rechnungsnr.
 Bill of Material,Bill of Material
-Bill of Material to be considered for manufacturing,"Bill of Material, um für die Fertigung berücksichtigt werden"
-Bill of Materials (BOM),Bill of Materials (BOM)
-Billable,Billable
-Billed,Angekündigt
+Bill of Material to be considered for manufacturing,"Stückliste, die für die Herstellung berücksichtigt werden soll"
+Bill of Materials (BOM),Stückliste (SL)
+Billable,Abrechenbar
+Billed,Abgerechnet
 Billed Amount,Rechnungsbetrag
-Billed Amt,Billed Amt
-Billing,Billing
+Billed Amt,Rechnungsbetrag
+Billing,Abrechnung
+Billing (Sales Invoice),
 Billing Address,Rechnungsadresse
-Billing Address Name,Rechnungsadresse Name
-Billing Status,Billing-Status
-Bills raised by Suppliers.,Bills erhöht durch den Lieferanten.
-Bills raised to Customers.,"Bills angehoben, um Kunden."
-Bin,Kasten
+Billing Address Name,Name der Rechnungsadresse
+Billing Status,Abrechnungsstatus
+Bills raised by Suppliers.,Rechnungen von Lieferanten.
+Bills raised to Customers.,Rechnungen an Kunden.
+Bin,Lagerfach
 Bio,Bio
 Biotechnology,Biotechnologie
 Birthday,Geburtstag
-Block Date,Blockieren Datum
-Block Days,Block Tage
-Block leave applications by department.,Block verlassen Anwendungen nach Abteilung.
-Blog Post,Blog Post
-Blog Subscriber,Blog Subscriber
+Block Date,Datum sperren
+Block Days,Tage sperren
+Block Holidays on important days.,Urlaub an wichtigen Tagen sperren.
+Block leave applications by department.,Urlaubsanträge pro Abteilung sperren.
+Blog Post,Blog-Post
+Blog Subscriber,Blog-Abonnent
 Blood Group,Blutgruppe
 Both Warehouse must belong to same Company,Beide Lager müssen an derselben Gesellschaft gehören
 Box,Box
-Branch,Zweig
+Branch,Filiale
 Brand,Marke
 Brand Name,Markenname
-Brand master.,Marke Meister.
-Brands,Marken
-Breakdown,Zusammenbruch
+Brand master.,Markenstamm
+Brands,Markenartikel
+Breakdown,Aufschlüsselung
 Broadcasting,Rundfunk
 Brokerage,Maklergeschäft
 Budget,Budget
-Budget Allocated,Budget
-Budget Detail,Budget Detailansicht
-Budget Details,Budget Einzelheiten
-Budget Distribution,Budget Verteilung
-Budget Distribution Detail,Budget Verteilung Detailansicht
-Budget Distribution Details,Budget Ausschüttungsinformationen
-Budget Variance Report,Budget Variance melden
+Budget Allocated,Zugewiesenes Budget
+Budget Detail,Budgetdetail
+Budget Details,Budgetdetails
+Budget Distribution,Budgetverteilung
+Budget Distribution Detail,Budgetverteilung Details
+Budget Distribution Details,Budgetverteilung Details
+Budget Variance Report,Budget Abweichungsbericht
 Budget cannot be set for Group Cost Centers,Budget kann nicht für die Konzernkostenstelleneingerichtet werden
 Build Report,Bauen Bericht
-Bundle items at time of sale.,Bundle Artikel zum Zeitpunkt des Verkaufs.
+Bundle items at time of sale.,Artikel zum Zeitpunkt des Verkaufs zusammenfassen.
 Business Development Manager,Business Development Manager
-Buying,Kauf
+Buyer of Goods and Services.,Käufer von Waren und Dienstleistungen.
+Buying,Einkauf
 Buying & Selling,Kaufen und Verkaufen
-Buying Amount,Einkaufsführer Betrag
-Buying Settings,Einkaufsführer Einstellungen
+Buying Amount,Kaufbetrag
+Buying Settings,Kaufeinstellungen
 "Buying must be checked, if Applicable For is selected as {0}","Kaufen Sie muss überprüft werden, wenn Anwendbar ist als ausgewählt {0}"
-C-Form,C-Form
-C-Form Applicable,"C-Form,"
-C-Form Invoice Detail,C-Form Rechnungsdetails
-C-Form No,C-Form nicht
+C-Form,C-Formular
+C-Form Applicable,C-Formular Anwendbar
+C-Form Invoice Detail,C-Formular Rechnungsdetails
+C-Form No,C-Formular Nr.
 C-Form records,C- Form- Aufzeichnungen
 CENVAT Capital Goods,CENVAT Investitionsgüter
 CENVAT Edu Cess,CENVAT Edu Cess
@@ -446,10 +466,10 @@
 CENVAT Service Tax,CENVAT Service Steuer
 CENVAT Service Tax Cess 1,CENVAT Service Steuer Cess 1
 CENVAT Service Tax Cess 2,CENVAT Service Steuer Cess 2
-Calculate Based On,Berechnen Basierend auf
-Calculate Total Score,Berechnen Gesamtpunktzahl
-Calendar Events,Kalendereintrag
-Call,Rufen
+Calculate Based On,Berechnet auf Grundlage von
+Calculate Total Score,Gesamtwertung berechnen
+Calendar Events,Kalenderereignisse
+Call,Anruf
 Calls,Anrufe
 Campaign,Kampagne
 Campaign Name,Kampagnenname
@@ -462,7 +482,7 @@
 Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Kann Zeile beziehen sich nur , wenn die Ladung ist ' On Zurück Reihe Betrag ""oder"" Zurück Reihe Total'"
 Cancel Material Visit {0} before cancelling this Customer Issue,Abbrechen Werkstoff Besuchen Sie {0} vor Streichung dieses Kunden Ausgabe
 Cancel Material Visits {0} before cancelling this Maintenance Visit,Abbrechen Werkstoff Besuche {0} vor Streichung dieses Wartungsbesuch
-Cancelled,Abgesagt
+Cancelled,Abgebrochen
 Cancelling this Stock Reconciliation will nullify its effect.,Annullierung dieses Lizenz Versöhnung wird ihre Wirkung zunichte machen .
 Cannot Cancel Opportunity as Quotation Exists,Kann nicht Abbrechen Gelegenheit als Zitat vorhanden ist
 Cannot approve leave as you are not authorized to approve leaves on Block Dates,"Kann nicht genehmigen Urlaub , wie Sie sind nicht berechtigt, auf Block- Blätter Termine genehmigen"
@@ -487,116 +507,121 @@
 Cannot set as Lost as Sales Order is made.,Kann nicht als Passwort gesetzt als Sales Order erfolgt.
 Cannot set authorization on basis of Discount for {0},Kann Genehmigung nicht festgelegt auf der Basis der Rabatt für {0}
 Capacity,Kapazität
-Capacity Units,Capacity Units
+Capacity Units,Kapazitätseinheiten
 Capital Account,Kapitalkonto
 Capital Equipments,Hauptstadt -Ausrüstungen
-Carry Forward,Vortragen
-Carry Forwarded Leaves,Carry Weitergeleitete Leaves
+Carry Forward,Übertragen
+Carry Forwarded Leaves,Übertragene Urlaubsgenehmigungen
 Case No(s) already in use. Try from Case No {0},"Fall Nr. (n) bereits im Einsatz. Versuchen Sie, von Fall Nr. {0}"
 Case No. cannot be 0,Fall Nr. kann nicht 0 sein
 Cash,Bargeld
 Cash In Hand,Bargeld in der Hand
-Cash Voucher,Cash Gutschein
+Cash Voucher,Kassenbeleg
 Cash or Bank Account is mandatory for making payment entry,Barzahlung oder Bankkonto ist für die Zahlung Eintrag
-Cash/Bank Account,Cash / Bank Account
+Cash/Bank Account,Kassen-/Bankkonto
 Casual Leave,Lässige Leave
-Cell Number,Cell Number
-Change UOM for an Item.,Ändern UOM für ein Item.
-Change the starting / current sequence number of an existing series.,Ändern Sie den Start / aktuelle Sequenznummer eines bestehenden Serie.
-Channel Partner,Channel Partner
+Cell Number,Mobiltelefonnummer
+Change Abbreviation,
+Change UOM for an Item.,ME für einen Artikel ändern.
+Change the starting / current sequence number of an existing series.,Startnummer/aktuelle laufende Nummer einer bestehenden Serie ändern.
+Channel Partner,Vertriebspartner
 Charge of type 'Actual' in row {0} cannot be included in Item Rate,Verantwortlicher für Typ ' Actual ' in Zeile {0} kann nicht in Artikel bewerten aufgenommen werden
 Chargeable,Gebührenpflichtig
+Charges are updated in Purchase Receipt against each item,
+Charges will be distributed proportionately based on item amount,
 Charity and Donations,Charity und Spenden
 Chart Name,Diagrammname
 Chart of Accounts,Kontenplan
-Chart of Cost Centers,Abbildung von Kostenstellen
-Check how the newsletter looks in an email by sending it to your email.,"Prüfen Sie, wie der Newsletter in einer E-Mail aussieht, indem es an deine E-Mail."
-"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Prüfen Sie, ob wiederkehrende Rechnung, deaktivieren zu stoppen wiederkehrende oder legen richtigen Enddatum"
-"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Überprüfen Sie, ob Sie die automatische wiederkehrende Rechnungen benötigen. Nach dem Absenden eine Rechnung über den Verkauf wird Recurring Abschnitt sichtbar sein."
-Check if you want to send salary slip in mail to each employee while submitting salary slip,"Überprüfen Sie, ob Sie Gehaltsabrechnung in Mail an jeden Mitarbeiter wollen, während Einreichung Gehaltsabrechnung"
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Aktivieren Sie diese Option, wenn Sie den Benutzer zwingen, eine Reihe vor dem Speichern auswählen möchten. Es wird kein Standard sein, wenn Sie dies zu überprüfen."
-Check this if you want to show in website,"Aktivieren Sie diese Option, wenn Sie in der Website zeigen wollen"
-Check this to disallow fractions. (for Nos),Aktivieren Sie diese verbieten Fraktionen. (Für Nos)
-Check this to pull emails from your mailbox,"Aktivieren Sie diese Option, um E-Mails aus Ihrer Mailbox ziehen"
-Check to activate,Überprüfen Sie aktivieren
-Check to make Shipping Address,"Überprüfen Sie, Liefer-Adresse machen"
-Check to make primary address,Überprüfen primäre Adresse machen
+Chart of Cost Centers,Tabelle der Kostenstellen
+Check how the newsletter looks in an email by sending it to your email.,"Prüfen Sie, wie der Newsletter in einer E-Mail aussieht, indem Sie ihn an Ihre E-Mail senden."
+"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Aktivieren, wenn dies eine wiederkehrende Rechnung ist, deaktivieren, damit es keine wiederkehrende Rechnung mehr ist oder ein gültiges Enddatum angeben."
+"Check if recurring order, uncheck to stop recurring or put proper End Date",
+"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Aktivieren, wenn Sie automatisch wiederkehrende Rechnungen benötigen. Nach dem Absenden einer Verkaufsrechnung, wird der Bereich für wiederkehrende Rechnungen angezeigt."
+Check if you want to send salary slip in mail to each employee while submitting salary slip,"Aktivieren, wenn Sie die Gehaltsabrechnung per Post an jeden Mitarbeiter senden möchten."
+Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Aktivieren, wenn Sie den Benutzer zwingen möchten, vor dem Speichern eine Serie auszuwählen. Wenn Sie dies aktivieren, gibt es keine Standardeinstellung."
+Check this if you want to show in website,"Aktivieren, wenn Sie den Inhalt auf der Website anzeigen möchten."
+Check this to disallow fractions. (for Nos),"Aktivieren, um keine Brüche zuzulassen. (für Nr.)"
+Check this to pull emails from your mailbox,"Aktivieren, um E-Mails aus Ihrem Postfach zu ziehen"
+Check to activate,"Aktivieren, um zu aktivieren"
+Check to make Shipping Address,"Aktivieren, um Lieferadresse anzugeben"
+Check to make primary address,"Aktivieren, um primäre Adresse anzugeben"
 Chemical,Chemikalie
 Cheque,Scheck
-Cheque Date,Scheck Datum
-Cheque Number,Scheck-Nummer
+Cheque Date,Scheckdatum
+Cheque Number,Schecknummer
 Child account exists for this account. You can not delete this account.,Kinder Konto existiert für dieses Konto. Sie können dieses Konto nicht löschen .
-City,City
-City/Town,Stadt / Ort
-Claim Amount,Schadenhöhe
-Claims for company expense.,Ansprüche für Unternehmen Kosten.
-Class / Percentage,Klasse / Anteil
-Classic,Klassische
+City,Stadt
+City/Town,Stadt/Ort
+Claim Amount,Betrag einfordern
+Claims for company expense.,Ansprüche auf Firmenkosten.
+Class / Percentage,Klasse/Anteil
+Classic,Klassisch
+Classification of Customers by region,Klassifizierung der Kunden nach Region
 Clear Table,Tabelle löschen
-Clearance Date,Clearance Datum
+Clearance Date,Löschdatum
 Clearance Date not mentioned,Räumungsdatumnicht genannt
 Clearance date cannot be before check date in row {0},Räumungsdatum kann nicht vor dem Check- in Datum Zeile {0}
-Click on 'Make Sales Invoice' button to create a new Sales Invoice.,"Klicken Sie auf &quot;Als Sales Invoice&quot;, um einen neuen Sales Invoice erstellen."
+Click on 'Make Sales Invoice' button to create a new Sales Invoice.,"Klicken Sie auf 'Verkaufsrechnung erstellen', um eine neue Verkaufsrechnung zu erstellen."
 Click on a link to get options to expand get options ,
-Client,Auftraggeber
+Client,Kunde
 Close Balance Sheet and book Profit or Loss.,Schließen Bilanz und Gewinn-und -Verlust- Buch .
 Closed,Geschlossen
 Closing (Cr),Closing (Cr)
 Closing (Dr),Closing (Dr)
-Closing Account Head,Konto schließen Leiter
+Closing Account Head,Abschluss Kontenführer
 Closing Account {0} must be of type 'Liability',"Schluss Konto {0} muss vom Typ ""Haftung"" sein"
-Closing Date,Einsendeschluss
-Closing Fiscal Year,Schließen Geschäftsjahr
+Closing Date,Abschlussdatum
+Closing Fiscal Year,Abschluss des Geschäftsjahres
 Closing Qty,Schließen Menge
 Closing Value,Schlusswerte
-CoA Help,CoA Hilfe
+CoA Help,CoA-Hilfe
 Code,Code
-Cold Calling,Cold Calling
+Cold Calling,Kaltakquise
 Color,Farbe
 Column Break,Spaltenumbruch
-Comma separated list of email addresses,Durch Komma getrennte Liste von E-Mail-Adressen
+Comma separated list of email addresses,Durch Kommas getrennte Liste von E-Mail-Adressen
 Comment,Kommentar
 Comments,Kommentare
 Commercial,Handels-
 Commission,Provision
-Commission Rate,Kommission bewerten
-Commission Rate (%),Kommission Rate (%)
+Commission Rate,Provisionssatz
+Commission Rate (%),Provisionsrate (%)
 Commission on Sales,Provision auf den Umsatz
 Commission rate cannot be greater than 100,Provisionsrate nicht größer als 100 sein
 Communication,Kommunikation
-Communication HTML,Communication HTML
-Communication History,Communication History
-Communication log.,Communication log.
+Communication HTML,Kommunikation HTML
+Communication History,Kommunikationshistorie
+Communication log.,Kommunikationsprotokoll
 Communications,Kommunikation
-Company,Firma
+Company,Unternehmen
 Company (not Customer or Supplier) master.,Company ( nicht der Kunde oder Lieferant ) Master.
 Company Abbreviation,Firmen Abkürzung
-Company Details,Unternehmensprofil
+Company Details,Firmendetails
 Company Email,Firma E-Mail
 "Company Email ID not found, hence mail not sent","Firma E-Mail -ID nicht gefunden , daher Mail nicht gesendet"
-Company Info,Firmeninfo
-Company Name,Firmenname
-Company Settings,Gesellschaft Einstellungen
+Company Info,Unternehmensinformationen
+Company Name,Unternehmensname
+Company Settings,Unternehmenseinstellungen
 Company is missing in warehouses {0},"Unternehmen, die in Lagerhäusern fehlt {0}"
 Company is required,"Gesellschaft ist verpflichtet,"
-Company registration numbers for your reference. Example: VAT Registration Numbers etc.,Handelsregisternummer für Ihre Referenz. Beispiel: Umsatzsteuer-Identifikationsnummern usw.
-Company registration numbers for your reference. Tax numbers etc.,Handelsregisternummer für Ihre Referenz. MwSt.-Nummern etc.
+Company registration numbers for your reference. Example: VAT Registration Numbers etc.,Firmenregistrierungsnummern für Ihre Referenz. Beispiel: Umsatzsteuer-Identifikationsnummern usw.
+Company registration numbers for your reference. Tax numbers etc.,Firmenregistrierungsnummern für Ihre Referenz. Steuernummern usw.
 "Company, Month and Fiscal Year is mandatory","Unternehmen , Monat und Geschäftsjahr ist obligatorisch"
 Compensatory Off,Ausgleichs Off
-Complete,Vervollständigen
+Complete,Abschließen
 Complete Setup,Vollständige Setup
-Completed,Fertiggestellt
+Completed,Abgeschlossen
 Completed Production Orders,Abgeschlossene Fertigungsaufträge
 Completed Qty,Abgeschlossene Menge
-Completion Date,Datum der Fertigstellung
-Completion Status,Completion Status
+Completion Date,Abschlussdatum
+Completion Status,Fertigstellungsstatus
 Computer,Computer
 Computers,Computer
 Confirmation Date,Bestätigung Datum
-Confirmed orders from Customers.,Bestätigte Bestellungen von Kunden.
-Consider Tax or Charge for,Betrachten Sie Steuern oder Gebühren für die
-Considered as Opening Balance,Er gilt als Eröffnungsbilanz
-Considered as an Opening Balance,Er gilt als einer Eröffnungsbilanz
+Confirmed orders from Customers.,Bestätigte Aufträge von Kunden.
+Consider Tax or Charge for,Steuern oder Gebühren berücksichtigen für
+Considered as Opening Balance,Gilt als Anfangsbestand
+Considered as an Opening Balance,Gilt als ein Anfangsbestand
 Consultant,Berater
 Consulting,Beratung
 Consumable,Verbrauchsgut
@@ -605,239 +630,244 @@
 Consumed Qty,Verbrauchte Menge
 Consumer Products,Consumer Products
 Contact,Kontakt
-Contact Control,Kontakt Kontrolle
-Contact Desc,Kontakt Desc
-Contact Details,Kontakt Details
-Contact Email,Kontakt per E-Mail
+Contact Control,Kontaktsteuerung
+Contact Desc,Kontakt-Beschr.
+Contact Details,Kontaktinformationen
+Contact Email,Kontakt E-Mail
 Contact HTML,Kontakt HTML
-Contact Info,Kontakt Info
-Contact Mobile No,Kontakt Mobile Kein
-Contact Name,Kontakt Name
+Contact Info,Kontaktinformation
+Contact Mobile No,Kontakt Mobiltelefon
+Contact Name,Ansprechpartner
 Contact No.,Kontakt Nr.
-Contact Person,Ansprechpartner
-Contact Type,Kontakt Typ
+Contact Person,Kontaktperson
+Contact Type,Kontakttyp
 Contact master.,Kontakt Master.
 Contacts,Impressum
 Content,Inhalt
-Content Type,Content Type
-Contra Voucher,Contra Gutschein
+Content Type,Inhaltstyp
+Contra Voucher,Gegen Gutschein
 Contract,Vertrag
-Contract End Date,Contract End Date
+Contract End Date,Vertragsende
 Contract End Date must be greater than Date of Joining,Vertragsende muss größer sein als Datum für Füge sein
-Contribution (%),Anteil (%)
-Contribution to Net Total,Beitrag zum Net Total
+Contribution (%),Beitrag (%)
+Contribution to Net Total,Beitrag zum Gesamtnetto
 Conversion Factor,Umrechnungsfaktor
 Conversion Factor is required,Umrechnungsfaktor erforderlich
 Conversion factor cannot be in fractions,Umrechnungsfaktor kann nicht in den Fraktionen sein
 Conversion factor for default Unit of Measure must be 1 in row {0},Umrechnungsfaktor für Standard- Maßeinheit muss in Zeile 1 {0}
 Conversion rate cannot be 0 or 1,Die Conversion-Rate kann nicht 0 oder 1 sein
-Convert into Recurring Invoice,Konvertieren in Wiederkehrende Rechnung
 Convert to Group,Konvertieren in Gruppe
 Convert to Ledger,Convert to Ledger
-Converted,Umgerechnet
-Copy From Item Group,Kopieren von Artikel-Gruppe
+Converted,Konvertiert
+Copy From Item Group,Kopie von Artikelgruppe
 Cosmetics,Kosmetika
-Cost Center,Kostenstellenrechnung
-Cost Center Details,Kosten Center Details
-Cost Center Name,Kosten Center Name
+Cost Center,Kostenstelle
+Cost Center Details,Kostenstellendetails
+Cost Center For Item with Item Code ',
+Cost Center Name,Kostenstellenname
 Cost Center is required for 'Profit and Loss' account {0},Kostenstelle wird für ' Gewinn-und Verlustrechnung des erforderlichen {0}
 Cost Center is required in row {0} in Taxes table for type {1},Kostenstelle wird in der Zeile erforderlich {0} in Tabelle Steuern für Typ {1}
 Cost Center with existing transactions can not be converted to group,Kostenstelle mit bestehenden Geschäfte nicht zu Gruppe umgewandelt werden
 Cost Center with existing transactions can not be converted to ledger,Kostenstelle mit bestehenden Geschäfte nicht zu Buch umgewandelt werden
 Cost Center {0} does not belong to Company {1},Kostenstellen {0} ist nicht gehören Unternehmen {1}
 Cost of Goods Sold,Herstellungskosten der verkauften
-Costing,Kalkulation
+Costing,Kosten
 Country,Land
-Country Name,Land Name
+Country Name,Ländername
 Country wise default Address Templates,Land weise Standardadressvorlagen
 "Country, Timezone and Currency","Land , Zeitzone und Währung"
-Create Bank Voucher for the total salary paid for the above selected criteria,Erstellen Bankgutschein für die Lohnsumme für die oben ausgewählten Kriterien gezahlt
+Cr,
+Create Bank Voucher for the total salary paid for the above selected criteria,Bankgutschein für das Gesamtgehalt nach den oben ausgewählten Kriterien erstellen
 Create Customer,Neues Kunden
-Create Material Requests,Material anlegen Requests
+Create Material Requests,Materialanfragen erstellen
 Create New,Neu erstellen
 Create Opportunity,erstellen Sie Gelegenheit
-Create Production Orders,Erstellen Fertigungsaufträge
+Create Production Orders,Fertigungsaufträge erstellen
 Create Quotation,Angebot erstellen
-Create Receiver List,Erstellen Receiver Liste
-Create Salary Slip,Erstellen Gehaltsabrechnung
-Create Stock Ledger Entries when you submit a Sales Invoice,"Neues Lager Ledger Einträge, wenn Sie einen Sales Invoice vorlegen"
+Create Receiver List,Empfängerliste erstellen
+Create Salary Slip,Gehaltsabrechnung erstellen
+Create Stock Ledger Entries when you submit a Sales Invoice,"Lagerbucheinträge erstellen, wenn Sie eine Verkaufsrechnung einreichen"
+Create and Send Newsletters,Newsletter erstellen und senden
 "Create and manage daily, weekly and monthly email digests.","Erstellen und Verwalten von täglichen, wöchentlichen und monatlichen E-Mail verdaut ."
 Create rules to restrict transactions based on values.,"Erstellen Sie Regeln , um Transaktionen auf Basis von Werten zu beschränken."
 Created By,Erstellt von
-Creates salary slip for above mentioned criteria.,Erstellt Gehaltsabrechnung für die oben genannten Kriterien.
+Creates salary slip for above mentioned criteria.,Erstellt Gehaltsabrechnung für oben genannte Kriterien.
 Creation Date,Erstellungsdatum
 Creation Document No,Creation Dokument Nr.
 Creation Document Type,Creation Dokumenttyp
 Creation Time,Erstellungszeit
-Credentials,Referenzen
-Credit,Kredit
-Credit Amt,Kredit-Amt
+Credentials,Anmeldeinformationen
+Credit,Guthaben
+Credit Amt,Guthabenbetrag
 Credit Card,Kreditkarte
-Credit Card Voucher,Credit Card Gutschein
-Credit Controller,Credit Controller
-Credit Days,Kredit-Tage
+Credit Card Voucher,Kreditkarten-Gutschein
+Credit Controller,Kredit-Controller
+Credit Days,Kredittage
 Credit Limit,Kreditlimit
-Credit Note,Gutschrift
-Credit To,Kredite an
+Credit Note,Gutschriftsanzeige
+Credit To,Gutschreiben an
+Cross Listing of Item in multiple groups,Kreuzweise Auflistung der Artikel in mehreren Gruppen
 Currency,Währung
 Currency Exchange,Geldwechsel
-Currency Name,Währung Name
-Currency Settings,Währung Einstellungen
-Currency and Price List,Währungs-und Preisliste
+Currency Name,Währungsname
+Currency Settings,Währungseinstellungen
+Currency and Price List,Währungs- und Preisliste
 Currency exchange rate master.,Wechselkurs Master.
 Current Address,Aktuelle Adresse
 Current Address Is,Aktuelle Adresse
 Current Assets,Umlaufvermögen
-Current BOM,Aktuelle Stückliste
+Current BOM,Aktuelle SL
 Current BOM and New BOM can not be same,Aktuelle Stückliste und New BOM kann nicht gleich sein
-Current Fiscal Year,Laufenden Geschäftsjahr
+Current Fiscal Year,Laufendes Geschäftsjahr
 Current Liabilities,Kurzfristige Verbindlichkeiten
-Current Stock,Aktuelle Stock
-Current Stock UOM,Aktuelle Stock UOM
+Current Stock,Aktueller Lagerbestand
+Current Stock UOM,Aktueller Lagerbestand ME
 Current Value,Aktueller Wert
-Custom,Brauch
-Custom Autoreply Message,Benutzerdefinierte Autoreply Nachricht
-Custom Message,Custom Message
+Custom,Benutzerdefiniert
+Custom Autoreply Message,Benutzerdefinierte Autoreply-Nachricht
+Custom Message,Benutzerdefinierte Nachricht
 Customer,Kunde
-Customer (Receivable) Account,Kunde (Forderungen) Konto
-Customer / Item Name,Kunde / Item Name
+Customer (Receivable) Account,Kunde (Debitoren) Konto
+Customer / Item Name,Kunde/Artikelname
 Customer / Lead Address,Kunden / Lead -Adresse
 Customer / Lead Name,Kunden / Lead Namen
 Customer > Customer Group > Territory,Kunden> Kundengruppe> Territory
-Customer Account Head,Kundenkonto Kopf
+Customer Account Head,Kundenkontoführer
 Customer Acquisition and Loyalty,Kundengewinnung und-bindung
 Customer Address,Kundenadresse
 Customer Addresses And Contacts,Kundenadressen und Kontakte
 Customer Addresses and Contacts,Kundenadressen und Ansprechpartner
-Customer Code,Customer Code
-Customer Codes,Kunde Codes
-Customer Details,Customer Details
-Customer Feedback,Kundenfeedback
-Customer Group,Customer Group
+Customer Code,Kundencode
+Customer Codes,Kundencodes
+Customer Details,Kundendaten
+Customer Feedback,Kundenrückmeldung
+Customer Group,Kundengruppe
 Customer Group / Customer,Kundengruppe / Kunden
-Customer Group Name,Kunden Group Name
+Customer Group Name,Kundengruppenname
 Customer Intro,Kunden Intro
-Customer Issue,Das Anliegen des Kunden
-Customer Issue against Serial No.,Das Anliegen des Kunden gegen Seriennummer
-Customer Name,Name des Kunden
-Customer Naming By,Kunden Benennen von
+Customer Issue,Kundenproblem
+Customer Issue against Serial No.,Kundenproblem zu Seriennr.
+Customer Name,Kundenname
+Customer Naming By,Benennung der Kunden nach
 Customer Service,Kundenservice
-Customer database.,Kunden-Datenbank.
+Customer database.,Kundendatenbank.
 Customer is required,"Kunde ist verpflichtet,"
 Customer master.,Kundenstamm .
 Customer required for 'Customerwise Discount',Kunden für ' Customerwise Discount ' erforderlich
 Customer {0} does not belong to project {1},Customer {0} gehört nicht zum Projekt {1}
 Customer {0} does not exist,Kunden {0} existiert nicht
-Customer's Item Code,Kunden Item Code
-Customer's Purchase Order Date,Bestellung des Kunden Datum
-Customer's Purchase Order No,Bestellung des Kunden keine
+Customer's Item Code,Kunden-Artikelcode
+Customer's Purchase Order Date,Kundenbestelldatum
+Customer's Purchase Order No,Kundenbestellnr.
 Customer's Purchase Order Number,Kundenauftragsnummer
-Customer's Vendor,Kunden Hersteller
-Customers Not Buying Since Long Time,Kunden Kaufen nicht seit langer Zeit
-Customerwise Discount,Customerwise Discount
-Customize,anpassen
-Customize the Notification,Passen Sie die Benachrichtigung
-Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,"Passen Sie den einleitenden Text, der als Teil der E-Mail geht. Jede Transaktion hat einen separaten einleitenden Text."
-DN Detail,DN Detailansicht
+Customer's Vendor,Kundenverkäufer
+Customers Not Buying Since Long Time,"Kunden, die seit langer Zeit nichts gekauft haben"
+Customerwise Discount,Kundenweiser Rabatt
+Customize,Anpassen
+Customize the Notification,Mitteilung anpassen
+Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,"Einleitenden Text anpassen, der zu dieser E-Mail gehört. Jede Transaktion hat einen separaten Einleitungstext."
+DN Detail,DN-Detail
 Daily,Täglich
-Daily Time Log Summary,Täglich Log Zusammenfassung
-Database Folder ID,Database Folder ID
-Database of potential customers.,Datenbank von potentiellen Kunden.
+Daily Time Log Summary,Tägliche Zeitprotokollzusammenfassung
+Database Folder ID,Datenbankordner-ID
+Database of potential customers.,Datenbank potentieller Kunden.
 Date,Datum
 Date Format,Datumsformat
-Date Of Retirement,Datum der Pensionierung
+Date Of Retirement,Zeitpunkt der Pensionierung
 Date Of Retirement must be greater than Date of Joining,Zeitpunkt der Pensionierung muss größer sein als Datum für Füge sein
 Date is repeated,Datum wird wiederholt
 Date of Birth,Geburtsdatum
-Date of Issue,Datum der Ausgabe
-Date of Joining,Datum der Verbindungstechnik
+Date of Issue,Datum der Ausstellung
+Date of Joining,Datum des Beitritts
 Date of Joining must be greater than Date of Birth,Eintrittsdatum muss größer als sein Geburtsdatum
-Date on which lorry started from supplier warehouse,"Datum, an dem Lastwagen startete von Lieferantenlager"
-Date on which lorry started from your warehouse,"Datum, an dem Lkw begann von Ihrem Lager"
+Date on which lorry started from supplier warehouse,"Datum, an dem der LKW das Lieferantenlager verlassen hat"
+Date on which lorry started from your warehouse,"Datum, an dem der LKW Ihr Lager verlassen hat"
 Dates,Termine
 Days Since Last Order,Tage seit dem letzten Auftrag
-Days for which Holidays are blocked for this department.,"Tage, für die Feiertage sind für diese Abteilung blockiert."
+Days for which Holidays are blocked for this department.,"Tage, an denen eine Urlaubssperre für diese Abteilung gilt."
 Dealer,Händler
 Debit,Soll
-Debit Amt,Debit Amt
+Debit Amt,Sollbetrag
 Debit Note,Lastschrift
-Debit To,Debit Um
+Debit To,Lastschrift für
 Debit and Credit not equal for this voucher. Difference is {0}.,Debit-und Kreditkarten nicht gleich für diesen Gutschein. Der Unterschied ist {0}.
 Deduct,Abziehen
 Deduction,Abzug
-Deduction Type,Abzug Typ
-Deduction1,Deduction1
+Deduction Type,Abzugsart
+Deduction1,Abzug1
 Deductions,Abzüge
-Default,Default
-Default Account,Default-Konto
+Default,Standard
+Default Account,Standardkonto
 Default Address Template cannot be deleted,Standard-Adressvorlage kann nicht gelöscht werden
 Default Amount,Standard-Betrag
-Default BOM,Standard BOM
-Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,"Standard Bank / Cash-Konto werden automatisch in POS Rechnung aktualisiert werden, wenn dieser Modus ausgewählt ist."
-Default Bank Account,Standard Bank Account
+Default BOM,Standardstückliste
+Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,"Standard Bank-/Geldkonto wird automatisch in Kassenbon aktualisiert, wenn dieser Modus ausgewählt ist."
+Default Bank Account,Standardbankkonto
 Default Buying Cost Center,Standard Buying Kostenstelle
 Default Buying Price List,Standard Kaufpreisliste
-Default Cash Account,Standard Cashkonto
-Default Company,Standard Unternehmen
+Default Cash Account,Standardkassenkonto
+Default Company,Standardunternehmen
+Default Cost Center,Standardkostenstelle
 Default Currency,Standardwährung
-Default Customer Group,Standard Customer Group
-Default Expense Account,Standard Expense Konto
-Default Income Account,Standard Income Konto
-Default Item Group,Standard Element Gruppe
-Default Price List,Standard Preisliste
-Default Purchase Account in which cost of the item will be debited.,Standard Purchase Konto in dem Preis des Artikels wird abgebucht.
+Default Customer Group,Standardkundengruppe
+Default Expense Account,Standardaufwandskonto
+Default Income Account,Standard-Gewinnkonto
+Default Item Group,Standard-Artikelgruppe
+Default Price List,Standardpreisliste
+Default Purchase Account in which cost of the item will be debited.,"Standard-Einkaufskonto, von dem die Kosten des Artikels eingezogen werden."
 Default Selling Cost Center,Standard- Selling Kostenstelle
-Default Settings,Default Settings
-Default Source Warehouse,Default Source Warehouse
-Default Stock UOM,Standard Lager UOM
-Default Supplier,Standard Lieferant
-Default Supplier Type,Standard Lieferant Typ
-Default Target Warehouse,Standard Ziel Warehouse
-Default Territory,Standard Territory
-Default Unit of Measure,Standard-Maßeinheit
+Default Settings,Standardeinstellungen
+Default Source Warehouse,Standard-Ursprungswarenlager
+Default Stock UOM,Standard Lagerbestands-ME
+Default Supplier,Standardlieferant
+Default Supplier Type,Standardlieferantentyp
+Default Target Warehouse,Standard-Zielwarenlager
+Default Territory,Standardregion
+Default Unit of Measure,Standardmaßeinheit
 "Default Unit of Measure can not be changed directly because you have already made some transaction(s) with another UOM. To change default UOM, use 'UOM Replace Utility' tool under Stock module.","Standard- Maßeinheit kann nicht direkt geändert werden , weil Sie bereits eine Transaktion (en) mit einer anderen Verpackung gemacht haben. Um die Standardmengeneinheitzu ändern, verwenden ' Verpackung ersetzen Utility "" -Tool unter Auf -Modul."
-Default Valuation Method,Standard Valuation Method
-Default Warehouse,Standard Warehouse
+Default Valuation Method,Standard-Bewertungsmethode
+Default Warehouse,Standardwarenlager
 Default Warehouse is mandatory for stock Item.,Standard- Warehouse ist für Lager Artikel .
 Default settings for accounting transactions.,Standardeinstellungen für Geschäftsvorfälle .
 Default settings for buying transactions.,Standardeinstellungen für Kauf -Transaktionen.
 Default settings for selling transactions.,Standardeinstellungen für Verkaufsgeschäfte .
 Default settings for stock transactions.,Standardeinstellungen für Aktientransaktionen .
 Defense,Verteidigung
-"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Definieren Budget für diese Kostenstelle. Um Budget Aktion finden Sie unter <a href=""#!List/Company""> Firma Master </ a>"
+"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Budget für diese Kostenstelle festlegen. Zuordnen des Budgets, siehe <a href=""#!List/Company"">Unternehmensstamm</a>"
 Del,löschen
 Delete,Löschen
 Delete {0} {1}?,Löschen {0} {1} ?
-Delivered,Lieferung
-Delivered Items To Be Billed,Liefergegenstände in Rechnung gestellt werden
-Delivered Qty,Geliefert Menge
+Delivered,Geliefert
+Delivered Items To Be Billed,Gelieferte Artikel für Abrechnung
+Delivered Qty,Gelieferte Menge
 Delivered Serial No {0} cannot be deleted,Geliefert Seriennummer {0} kann nicht gelöscht werden
 Delivery Date,Liefertermin
-Delivery Details,Anlieferungs-Details
-Delivery Document No,Lieferung Dokument Nr.
-Delivery Document Type,Lieferung Document Type
+Delivery Details,Lieferdetails
+Delivery Document No,Lieferbelegnummer
+Delivery Document Type,Lieferbelegtyp
 Delivery Note,Lieferschein
-Delivery Note Item,Lieferscheinposition
+Delivery Note Item,Lieferscheingegenstand
 Delivery Note Items,Lieferscheinpositionen
-Delivery Note Message,Lieferschein Nachricht
-Delivery Note No,Lieferschein Nein
+Delivery Note Message,Lieferscheinnachricht
+Delivery Note No,Lieferscheinnummer
 Delivery Note Required,Lieferschein erforderlich
-Delivery Note Trends,Lieferschein Trends
+Delivery Note Trends,Lieferscheintrends
 Delivery Note {0} is not submitted,Lieferschein {0} ist nicht eingereicht
 Delivery Note {0} must not be submitted,Lieferschein {0} muss nicht vorgelegt werden
 Delivery Notes {0} must be cancelled before cancelling this Sales Order,Lieferscheine {0} muss vor Streichung dieses Sales Order storniert werden
 Delivery Status,Lieferstatus
 Delivery Time,Lieferzeit
-Delivery To,Liefern nach
+Delivery To,Lieferung an
 Department,Abteilung
 Department Stores,Kaufhäuser
 Depends on LWP,Abhängig von LWP
 Depreciation,Abschreibung
 Description,Beschreibung
 Description HTML,Beschreibung HTML
+Description of a Job Opening,Beschreibung eines Stellenangebot
 Designation,Bezeichnung
 Designer,Konstrukteur
-Detailed Breakup of the totals,Detaillierte Breakup der Gesamtsummen
+Detailed Breakup of the totals,Detaillierte Aufschlüsselung der Gesamtsummen
 Details,Details
 Difference (Dr - Cr),Differenz ( Dr - Cr )
 Difference Account,Unterschied Konto
@@ -846,27 +876,28 @@
 Direct Expenses,Direkte Aufwendungen
 Direct Income,Direkte Einkommens
 Disable,Deaktivieren
-Disable Rounded Total,Deaktivieren Abgerundete insgesamt
-Disabled,Behindert
-Discount  %,Discount%
-Discount %,Discount%
+Disable Rounded Total,Abgerundete Gesamtsumme deaktivieren
+Disabled,Deaktiviert
+Discount,
+Discount  %,Rabatt %
+Discount %,Rabatt %
 Discount (%),Rabatt (%)
 Discount Amount,Discount Amount
-"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Discount Felder werden in der Bestellung, Kaufbeleg Kauf Rechnung verfügbar"
+"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Rabattfelder stehen in der Bestellung, im Kaufbeleg und in der Rechnung zur Verfügung"
 Discount Percentage,Rabatt Prozent
 Discount Percentage can be applied either against a Price List or for all Price List.,Rabatt Prozent kann entweder gegen eine Preisliste oder Preisliste für alle angewendet werden.
 Discount must be less than 100,Discount muss kleiner als 100 sein
 Discount(%),Rabatt (%)
 Dispatch,Versand
-Display all the individual items delivered with the main items,Alle anzeigen die einzelnen Punkte mit den wichtigsten Liefergegenstände
-Distribute transport overhead across items.,Verteilen Transport-Overhead auf Gegenstände.
-Distribution,Aufteilung
-Distribution Id,Verteilung Id
-Distribution Name,Namen der Distribution
-Distributor,Verteiler
+Display all the individual items delivered with the main items,Alle einzelnen Positionen zu den Hauptartikeln anzeigen
+Distinct unit of an Item,Eigene Einheit eines Artikels
+Distribution,Verteilung
+Distribution Id,Verteilungs-ID
+Distribution Name,Verteilungsnamen
+Distributor,Lieferant
 Divorced,Geschieden
 Do Not Contact,Nicht berühren
-Do not show any symbol like $ etc next to currencies.,Zeigen keine Symbol wie $ etc neben Währungen.
+Do not show any symbol like $ etc next to currencies.,Kein Symbol wie $ usw. neben Währungen anzeigen.
 Do really want to unstop production order: ,
 Do you really want to STOP ,
 Do you really want to STOP this Material Request?,"Wollen Sie wirklich , diese Materialanforderung zu stoppen?"
@@ -874,27 +905,27 @@
 Do you really want to UNSTOP ,
 Do you really want to UNSTOP this Material Request?,"Wollen Sie wirklich , dieses Material anfordern aufmachen ?"
 Do you really want to stop production order: ,
-Doc Name,Doc Namen
-Doc Type,Doc Type
-Document Description,Document Beschreibung
-Document Type,Document Type
-Documents,Unterlagen
-Domain,Domain
+Doc Name,Dokumentenname
+Doc Type,Dokumententyp
+Document Description,Dokumentenbeschreibung
+Document Type,Dokumenttyp
+Documents,Dokumente
+Domain,Domäne
 Don't send Employee Birthday Reminders,Senden Sie keine Mitarbeitergeburtstagserinnerungen
-Download Materials Required,Herunterladen benötigte Materialien
+Download Materials Required,Erforderliche Materialien herunterladen
 Download Reconcilation Data,Laden Versöhnung Daten
 Download Template,Vorlage herunterladen
-Download a report containing all raw materials with their latest inventory status,Laden Sie einen Bericht mit allen Rohstoffen mit ihren neuesten Inventar Status
+Download a report containing all raw materials with their latest inventory status,"Einen Bericht herunterladen, der alle Rohstoffe mit ihrem neuesten Bestandsstatus angibt"
 "Download the Template, fill appropriate data and attach the modified file.","Laden Sie die Vorlage , füllen entsprechenden Daten und befestigen Sie die geänderte Datei ."
 "Download the Template, fill appropriate data and attach the modified file.
-All dates and employee combination in the selected period will come in the template, with existing attendance records","Laden Sie die Vorlage, füllen entsprechenden Daten und befestigen Sie die geänderte Datei.
- Alle Termine und Mitarbeiter-Kombination in der gewünschten Zeit wird in der Vorlage zu kommen, mit den bestehenden Besucherrekorde"
+All dates and employee combination in the selected period will come in the template, with existing attendance records",
+Dr,
 Draft,Entwurf
 Dropbox,Dropbox
 Dropbox Access Allowed,Dropbox-Zugang erlaubt
-Dropbox Access Key,Dropbox Access Key
-Dropbox Access Secret,Dropbox Zugang Geheimnis
-Due Date,Due Date
+Dropbox Access Key,Dropbox-Zugangsschlüssel
+Dropbox Access Secret,Dropbox-Zugangsgeheimnis
+Due Date,Fälligkeitsdatum
 Due Date cannot be after {0},Fälligkeitsdatum kann nicht nach {0}
 Due Date cannot be before Posting Date,Fälligkeitsdatum kann nicht vor dem Buchungsdatum sein
 Duplicate Entry. Please check Authorization Rule {0},Doppelten Eintrag . Bitte überprüfen Sie Autorisierungsregel {0}
@@ -905,18 +936,18 @@
 ERPNext Setup,ERPNext -Setup
 Earliest,Frühest
 Earnest Money,Angeld
-Earning,Earning
-Earning & Deduction,Earning & Abzug
-Earning Type,Earning Typ
-Earning1,Earning1
+Earning,Einkommen
+Earning & Deduction,Einkommen & Abzug
+Earning Type,Einkommensart
+Earning1,Einkommen1
 Edit,Bearbeiten
 Edu. Cess on Excise,Edu. Cess Verbrauch
 Edu. Cess on Service Tax,Edu. Cess auf Service Steuer
 Edu. Cess on TDS,Edu. Cess auf TDS
 Education,Bildung
-Educational Qualification,Educational Qualifikation
-Educational Qualification Details,Educational Qualifikation Einzelheiten
-Eg. smsgateway.com/api/send_sms.cgi,Eg. smsgateway.com / api / send_sms.cgi
+Educational Qualification,Schulische Qualifikation
+Educational Qualification Details,Einzelheiten der schulischen Qualifikation
+Eg. smsgateway.com/api/send_sms.cgi,z. B. smsgateway.com/api/send_sms.cgi
 Either debit or credit amount is required for {0},Entweder Debit-oder Kreditbetragist erforderlich für {0}
 Either target qty or target amount is mandatory,Entweder Zielmengeoder Zielmenge ist obligatorisch
 Either target qty or target amount is mandatory.,Entweder Zielmengeoder Zielmenge ist obligatorisch.
@@ -925,78 +956,82 @@
 Electricity cost per hour,Stromkosten pro Stunde
 Electronics,Elektronik
 Email,E-Mail
-Email Digest,Email Digest
-Email Digest Settings,Email Digest Einstellungen
+Email Digest,Täglicher E-Mail-Bericht
+Email Digest Settings,Einstellungen täglicher E-Mail-Bericht
 Email Digest: ,
-Email Id,Email Id
-"Email Id where a job applicant will email e.g. ""jobs@example.com""","Email Id, wo ein Bewerber beispielsweise per E-Mail wird ""Jobs@example.com"""
+Email Id,E-Mail-ID
+"Email Id where a job applicant will email e.g. ""jobs@example.com""","E-Mail-ID, an die ein Bewerber schreibt, z. B. ""jobs@example.com"""
 Email Notifications,E-Mail- Benachrichtigungen
-Email Sent?,E-Mail gesendet?
+Email Sent?,Wurde die E-Mail abgesendet?
+Email Settings for Outgoing and Incoming Emails.,E-Mail-Einstellungen für ausgehende und eingehende E-Mails.
 "Email id must be unique, already exists for {0}","E-Mail -ID muss eindeutig sein , für die bereits vorhanden {0}"
-Email ids separated by commas.,E-Mail-IDs durch Komma getrennt.
-"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","E-Mail-Einstellungen zu extrahieren Leads aus dem Verkauf email id zB ""Sales@example.com"""
+Email ids separated by commas.,E-Mail-IDs durch Kommas getrennt.
+"Email settings for jobs email id ""jobs@example.com""","E-Mail-Einstellungen für Bewerbungs-ID ""jobs@example.com"""
+"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","E-Mail-Einstellungen, mit denen Leads aus Verkaufs-E-Mail-IDs wie z. B. ""sales@example.com"" extrahiert werden."
 Emergency Contact,Notfallkontakt
-Emergency Contact Details,Notfall Kontakt
+Emergency Contact Details,Notfallkontaktdaten
 Emergency Phone,Notruf
 Employee,Mitarbeiter
-Employee Birthday,Angestellter Geburtstag
+Employee Birthday,Mitarbeiter Geburtstag
 Employee Details,Mitarbeiterdetails
 Employee Education,Mitarbeiterschulung
-Employee External Work History,Mitarbeiter Externe Arbeit Geschichte
-Employee Information,Employee Information
-Employee Internal Work History,Mitarbeiter Interner Arbeitsbereich Geschichte
-Employee Internal Work Historys,Mitarbeiter Interner Arbeitsbereich Historys
-Employee Leave Approver,Mitarbeiter Leave Approver
-Employee Leave Balance,Mitarbeiter Leave Bilanz
-Employee Name,Name des Mitarbeiters
+Employee External Work History,Mitarbeiter externe Berufserfahrung
+Employee Information,Mitarbeiterinformationen
+Employee Internal Work History,Mitarbeiter interne Berufserfahrung
+Employee Internal Work Historys,Mitarbeiter interne Berufserfahrungen
+Employee Leave Approver,Mitarbeiter Urlaubsgenehmiger
+Employee Leave Balance,Mitarbeiter Urlaubskonto
+Employee Name,Mitarbeitername
 Employee Number,Mitarbeiternummer
-Employee Records to be created by,Mitarbeiter Records erstellt werden
+Employee Records to be created by,Mitarbeiterakte wird erstellt von
 Employee Settings,Mitarbeitereinstellungen
-Employee Type,Arbeitnehmertyp
+Employee Type,Mitarbeitertyp
+Employee can not be changed,
 "Employee designation (e.g. CEO, Director etc.).","Mitarbeiterbezeichnung(z. B. Geschäftsführer , Direktor etc.)."
 Employee master.,Mitarbeiterstamm .
 Employee record is created using selected field. ,Mitarbeiter Datensatz erstellt anhand von ausgewählten Feld.
-Employee records.,Mitarbeiter-Datensätze.
+Employee records.,Mitarbeiterdatensätze.
 Employee relieved on {0} must be set as 'Left',"Angestellter auf {0} entlastet , sind als "" links"" eingestellt werden"
 Employee {0} has already applied for {1} between {2} and {3},Angestellter {0} ist bereits für {1} zwischen angewendet {2} und {3}
 Employee {0} is not active or does not exist,Angestellter {0} ist nicht aktiv oder existiert nicht
 Employee {0} was on leave on {1}. Cannot mark attendance.,Angestellter {0} war auf Urlaub auf {1} . Kann nicht markieren anwesend.
-Employees Email Id,Mitarbeiter Email Id
-Employment Details,Beschäftigung Einzelheiten
-Employment Type,Beschäftigungsart
+Employees Email Id,Mitarbeiter E-Mail-ID
+Employment Details,Beschäftigungsdetails
+Employment Type,Art der Beschäftigung
 Enable / disable currencies.,Aktivieren / Deaktivieren der Währungen.
 Enabled,Aktiviert
-Encashment Date,Inkasso Datum
+Encashment Date,Inkassodatum
 End Date,Enddatum
 End Date can not be less than Start Date,Ende Datum kann nicht kleiner als Startdatum sein
-End date of current invoice's period,Ende der laufenden Rechnung der Zeit
-End of Life,End of Life
+End date of current invoice's period,Ende der laufenden Rechnungsperiode
+End date of current order's period,
+End of Life,Lebensdauer
 Energy,Energie
 Engineer,Ingenieur
 Enter Verification Code,Sicherheitscode eingeben
-Enter campaign name if the source of lead is campaign.,"Geben Sie Namen der Kampagne, wenn die Quelle von Blei-Kampagne."
-Enter department to which this Contact belongs,"Geben Abteilung, auf die diese Kontakt gehört"
-Enter designation of this Contact,Geben Bezeichnung dieser Kontakt
-"Enter email id separated by commas, invoice will be mailed automatically on particular date","Geben Sie E-Mail-ID durch Kommata getrennt, wird Rechnung automatisch auf bestimmte Zeitpunkt zugeschickt"
-Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Geben Sie die Posten und geplante Menge für die Sie Fertigungsaufträge erhöhen oder downloaden Rohstoffe für die Analyse.
-Enter name of campaign if source of enquiry is campaign,"Geben Sie den Namen der Kampagne, wenn die Quelle der Anfrage ist Kampagne"
-"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Geben Sie statischen URL-Parameter hier (Bsp. sender = ERPNext, username = ERPNext, password = 1234 etc.)"
-Enter the company name under which Account Head will be created for this Supplier,"Geben Sie den Namen des Unternehmens, unter denen Konto Leiter für diesen Lieferant erstellt werden"
-Enter url parameter for message,Geben Sie URL-Parameter für die Nachrichtenübertragung
-Enter url parameter for receiver nos,Geben Sie URL-Parameter für Empfänger nos
+Enter campaign name if the source of lead is campaign.,"Namen der Kampagne eingeben, wenn die Lead-Quelle eine Kampagne ist."
+Enter department to which this Contact belongs,"Abteilung eingeben, zu der dieser Kontakt gehört"
+Enter designation of this Contact,Bezeichnung dieses Kontakts eingeben
+"Enter email id separated by commas, invoice will be mailed automatically on particular date","Geben Sie die durch Kommas getrennte E-Mail-ID  ein, die Rechnung wird automatisch an einem bestimmten Rechnungsdatum abgeschickt"
+"Enter email id separated by commas, order will be mailed automatically on particular date",
+Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,"Geben Sie die Posten und die geplante Menge ein, für die Sie die Fertigungsaufträge erhöhen möchten, oder laden Sie Rohstoffe für die Analyse herunter."
+Enter name of campaign if source of enquiry is campaign,"Geben Sie den Namen der Kampagne ein, wenn der Ursprung der Anfrage eine Kampagne ist"
+"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Geben Sie hier statische URL-Parameter ein (z. B. Absender=ERPNext, Benutzername=ERPNext, Passwort=1234 usw.)"
+Enter the company name under which Account Head will be created for this Supplier,"Geben Sie den Namen der Firma ein, unter dem ein Kontenführer mit diesem Lieferanten erstellt werden soll"
+Enter url parameter for message,Geben Sie den URL-Parameter für die Nachricht ein
+Enter url parameter for receiver nos,Geben Sie den URL-Parameter für die Empfängernummern an
 Entertainment & Leisure,Unterhaltung & Freizeit
 Entertainment Expenses,Bewirtungskosten
 Entries,Einträge
 Entries against ,
-Entries are not allowed against this Fiscal Year if the year is closed.,"Die Einträge sind nicht gegen diese Geschäftsjahr zulässig, wenn die Jahre geschlossen ist."
+Entries are not allowed against this Fiscal Year if the year is closed.,"Einträge sind für dieses Geschäftsjahr nicht zulässig, wenn es bereits abgeschlossen ist."
 Equity,Gerechtigkeit
 Error: {0} > {1},Fehler: {0}> {1}
-Estimated Material Cost,Geschätzter Materialkalkulationen
+Estimated Material Cost,Geschätzte Materialkosten
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Auch wenn es mehrere Preisregeln mit der höchsten Priorität, werden dann folgende interne Prioritäten angewandt:"
 Everyone can read,Jeder kann lesen
 "Example: ABCD.#####
-If series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank.",". Beispiel: ABCD # # # # # 
- Wenn Serie ist eingestellt und Seriennummer ist nicht in Transaktionen erwähnt, wird dann automatisch die Seriennummer auf der Basis dieser Serie erstellt werden. Wenn Sie wollen immer ausdrücklich erwähnt, Seriennummern zu diesem Artikel. lassen Sie dieses Feld leer."
+If series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank.",
 Exchange Rate,Wechselkurs
 Excise Duty 10,Verbrauchsteuer 10
 Excise Duty 14,Verbrauchsteuer 14
@@ -1008,332 +1043,342 @@
 Excise Duty @ 8,Verbrauchsteuer @ 8
 Excise Duty Edu Cess 2,Verbrauchsteuer Edu Cess 2
 Excise Duty SHE Cess 1,Verbrauchsteuer SHE Cess 1
-Excise Page Number,Excise Page Number
-Excise Voucher,Excise Gutschein
+Excise Page Number,Seitenzahl ausschneiden
+Excise Voucher,Gutschein ausschneiden
 Execution,Ausführung
 Executive Search,Executive Search
-Exemption Limit,Freigrenze
 Exhibition,Ausstellung
-Existing Customer,Bestehende Kunden
-Exit,Verlassen
-Exit Interview Details,Verlassen Interview Einzelheiten
+Existing Customer,Bestehender Kunde
+Exit,Beenden
+Exit Interview Details,Interview-Details beenden
 Expected,Voraussichtlich
 Expected Completion Date can not be less than Project Start Date,Erwartete Abschlussdatum kann nicht weniger als Projektstartdatumsein
 Expected Date cannot be before Material Request Date,Erwartete Datum kann nicht vor -Material anfordern Date
 Expected Delivery Date,Voraussichtlicher Liefertermin
 Expected Delivery Date cannot be before Purchase Order Date,Voraussichtlicher Liefertermin kann nicht vor Bestelldatumsein
 Expected Delivery Date cannot be before Sales Order Date,Voraussichtlicher Liefertermin kann nicht vor Auftragsdatum sein
-Expected End Date,Erwartete Enddatum
-Expected Start Date,Frühestes Eintrittsdatum
+Expected End Date,Voraussichtliches Enddatum
+Expected Start Date,Voraussichtliches Startdatum
+Expected balance as per bank,
 Expense,Ausgabe
 Expense / Difference account ({0}) must be a 'Profit or Loss' account,"Aufwand / Differenz-Konto ({0}) muss ein ""Gewinn oder Verlust""-Konto sein"
-Expense Account,Expense Konto
-Expense Account is mandatory,Expense Konto ist obligatorisch
-Expense Claim,Expense Anspruch
-Expense Claim Approved,Expense Anspruch Genehmigt
-Expense Claim Approved Message,Expense Anspruch Genehmigt Nachricht
-Expense Claim Detail,Expense Anspruch Details
-Expense Claim Details,Expense Anspruch Einzelheiten
-Expense Claim Rejected,Expense Antrag abgelehnt
-Expense Claim Rejected Message,Expense Antrag abgelehnt Nachricht
-Expense Claim Type,Expense Anspruch Type
+Expense Account,Aufwandskonto
+Expense Account is mandatory,Aufwandskonto ist obligatorisch
+Expense Approver,
+Expense Claim,Spesenabrechnung
+Expense Claim Approved,Spesenabrechnung zugelassen
+Expense Claim Approved Message,Spesenabrechnung zugelassen Nachricht
+Expense Claim Detail,Spesenabrechnungsdetail
+Expense Claim Details,Spesenabrechnungsdetails
+Expense Claim Rejected,Spesenabrechnung abgelehnt
+Expense Claim Rejected Message,Spesenabrechnung abgelehnt Nachricht
+Expense Claim Type,Spesenabrechnungstyp
 Expense Claim has been approved.,Spesenabrechnung genehmigt wurde .
 Expense Claim has been rejected.,Spesenabrechnung wurde abgelehnt.
 Expense Claim is pending approval. Only the Expense Approver can update status.,Spesenabrechnung wird vorbehaltlich der Zustimmung . Nur die Kosten genehmigende Status zu aktualisieren.
-Expense Date,Expense Datum
-Expense Details,Expense Einzelheiten
-Expense Head,Expense Leiter
+Expense Date,Datum der Aufwendung
+Expense Details,Details der Aufwendung
+Expense Head,Kopf der Aufwendungen
 Expense account is mandatory for item {0},Aufwandskonto ist für item {0}
 Expense or Difference account is mandatory for Item {0} as it impacts overall stock value,"Expense oder Differenz -Konto ist Pflicht für Artikel {0} , da es Auswirkungen gesamten Aktienwert"
 Expenses,Kosten
-Expenses Booked,Aufwand gebucht
-Expenses Included In Valuation,Aufwendungen enthalten In Bewertungstag
-Expenses booked for the digest period,Aufwendungen für den gebuchten Zeitraum Digest
-Expiry Date,Verfallsdatum
-Exports,Ausfuhr
+Expenses Booked,Gebuchte Aufwendungen
+Expenses Included In Valuation,In der Bewertung enthaltene Aufwendungen
+Expenses booked for the digest period,Gebuchte Aufwendungen für den Berichtszeitraum
+Expired,
+Expiry,
+Expiry Date,Verfalldatum
+Exports,Exporte
 External,Extern
-Extract Emails,Auszug Emails
-FCFS Rate,FCFS Rate
+Extract Emails,E-Mails extrahieren
+FCFS Rate,FCFS-Rate
 Failed: ,Failed:
 Family Background,Familiärer Hintergrund
 Fax,Fax
-Features Setup,Features Setup
-Feed,Füttern
-Feed Type,Eingabetyp
-Feedback,Rückkopplung
+Features Setup,Funktionssetup
+Feed,Feed
+Feed Type,Art des Feeds
+Feedback,Feedback
 Female,Weiblich
 Fetch exploded BOM (including sub-assemblies),Fetch explodierte BOM ( einschließlich Unterbaugruppen )
-"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Feld in Lieferschein, Angebot, Sales Invoice, Sales Order"
-Files Folder ID,Dateien Ordner-ID
+"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Feld in Lieferschein, Angebot, Verkaufsrechnung, Auftrag verfügbar"
+Files Folder ID,Dateien-Ordner-ID
 Fill the form and save it,Füllen Sie das Formular aus und speichern Sie sie
-Filter based on customer,Filtern basierend auf Kunden-
-Filter based on item,Filtern basierend auf Artikel
+Filter based on customer,Filtern nach Kunden
+Filter based on item,Filtern nach Artikeln
 Financial / accounting year.,Finanz / Rechnungsjahres.
-Financial Analytics,Financial Analytics
+Financial Analytics,Finanzielle Analyse
+Financial Chart of Accounts. Imported from file.,
 Financial Services,Finanzdienstleistungen
 Financial Year End Date,Geschäftsjahr Enddatum
 Financial Year Start Date,Geschäftsjahr Startdatum
 Finished Goods,Fertigwaren
 First Name,Vorname
-First Responded On,Zunächst reagierte am
+First Responded On,Erstmalig reagiert am
 Fiscal Year,Geschäftsjahr
 Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Geschäftsjahr Startdatum und Geschäftsjahresende Datum sind bereits im Geschäftsjahr gesetzt {0}
 Fiscal Year Start Date and Fiscal Year End Date cannot be more than a year apart.,Geschäftsjahr Startdatum und Geschäftsjahresende Datum kann nicht mehr als ein Jahr betragen.
 Fiscal Year Start Date should not be greater than Fiscal Year End Date,Geschäftsjahr Startdatum sollte nicht größer als Geschäftsjahresende Date
+Fiscal Year {0} not found.,
 Fixed Asset,Fixed Asset
 Fixed Assets,Anlagevermögen
-Follow via Email,Folgen Sie via E-Mail
-"Following table will show values if items are sub - contracted. These values will be fetched from the master of ""Bill of Materials"" of sub - contracted items.","Folgende Tabelle zeigt Werte, wenn Artikel sub sind - vergeben werden. Vertragsgegenständen - Diese Werte werden vom Meister der ""Bill of Materials"" von Sub geholt werden."
+Fold,
+Follow via Email,Per E-Mail nachverfolgen
+"Following table will show values if items are sub - contracted. These values will be fetched from the master of ""Bill of Materials"" of sub - contracted items.","Die folgende Tabelle zeigt die Werte, wenn Artikel von Zulieferern stammen. Diese Werte werden aus dem Stamm der ""Materialliste"" für Artikel von Zulieferern abgerufen."
 Food,Lebensmittel
 "Food, Beverage & Tobacco","Lebensmittel, Getränke und Tabak"
 "For 'Sales BOM' items, Warehouse, Serial No and Batch No will be considered from the 'Packing List' table. If Warehouse and Batch No are same for all packing items for any 'Sales BOM' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Für 'Sales BOM Stücke, Lagerhaus, Seriennummer und Chargen Nein wird von der ""Packliste"" Tabelle berücksichtigt werden. Wenn Lager-und Stapel Nein sind für alle Verpackungsteile aus irgendeinem 'Sales BOM' Punkt können die Werte in der Haupt Artikel-Tabelle eingetragen werden, werden die Werte zu ""Packliste"" Tabelle kopiert werden."
 For Company,Für Unternehmen
 For Employee,Für Mitarbeiter
-For Employee Name,Für Employee Name
+For Employee Name,Für Mitarbeiter Name
 For Price List,Für Preisliste
-For Production,For Production
-For Reference Only.,Nur als Referenz.
-For Sales Invoice,Für Sales Invoice
-For Server Side Print Formats,Für Server Side Druckformate
+For Production,Für Produktion
+For Reference Only.,Nur zu Referenzzwecken.
+For Sales Invoice,Für Verkaufsrechnung
+For Server Side Print Formats,Für Druckformate auf Serverseite
 For Supplier,für Lieferanten
-For Warehouse,Für Warehouse
+For Warehouse,Für Warenlager
 For Warehouse is required before Submit,"Für Warehouse erforderlich ist, bevor abschicken"
-"For e.g. 2012, 2012-13","Für z.B. 2012, 2012-13"
-For reference,Als Referenz
-For reference only.,Nur als Referenz.
-"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Für die Bequemlichkeit der Kunden, können diese Codes in Druckformate wie Rechnungen und Lieferscheine werden"
-Fraction,Bruchteil
-Fraction Units,Fraction Units
-Freeze Stock Entries,Frieren Lager Einträge
+"For e.g. 2012, 2012-13",Für z.B. 2012 2012-13
+For reference,Zu Referenzzwecken
+For reference only.,Nur zu Referenzzwecken.
+"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Um es den Kunden zu erleichtern, können diese Codes in Druckformaten wie Rechnungen und Lieferscheinen verwendet werden"
+Fraction,Bruch
+Fraction Units,Bruchteile von Einheiten
+Freeze Stock Entries,Lagerbestandseinträge einfrieren
 Freeze Stocks Older Than [Days],Frieren Stocks Älter als [ Tage ]
 Freight and Forwarding Charges,Fracht-und Versandkosten
 Friday,Freitag
 From,Von
-From Bill of Materials,Von Bill of Materials
+From Bill of Materials,Von Stückliste
 From Company,Von Unternehmen
 From Currency,Von Währung
-From Currency and To Currency cannot be same,Von Währung und To Währung dürfen nicht identisch sein
+From Currency and To Currency cannot be same,Von-Währung und Bis-Währung dürfen nicht gleich sein
 From Customer,Von Kunden
 From Customer Issue,Von Kunden Ausgabe
 From Date,Von Datum
 From Date cannot be greater than To Date,Von-Datum darf nicht größer als bisher sein
-From Date must be before To Date,Von Datum muss vor dem Laufenden bleiben
+From Date must be before To Date,Von-Datum muss vor dem Bis-Datum liegen
 From Date should be within the Fiscal Year. Assuming From Date = {0},"Von-Datum sollte im Geschäftsjahr sein. Unter der Annahme, Von-Datum = {0}"
 From Delivery Note,Von Lieferschein
 From Employee,Von Mitarbeiter
-From Lead,Von Blei
+From Lead,Von Lead
 From Maintenance Schedule,Vom Wartungsplan
 From Material Request,Von Materialanforderung
 From Opportunity,von der Chance
-From Package No.,Von Package No
+From Package No.,Von Paket-Nr.
 From Purchase Order,Von Bestellung
 From Purchase Receipt,Von Kaufbeleg
 From Quotation,von Zitat
-From Sales Order,Von Sales Order
+From Sales Order,Von Auftrag
 From Supplier Quotation,Von Lieferant Zitat
-From Time,From Time
+From Time,Von Zeit
 From Value,Von Wert
 From and To dates required,Von-und Bis Daten erforderlich
 From value must be less than to value in row {0},Vom Wert von weniger als um den Wert in der Zeile sein muss {0}
 Frozen,Eingefroren
 Frozen Accounts Modifier,Eingefrorenen Konten Modifier
-Fulfilled,Erfüllte
+Fulfilled,Erledigt
 Full Name,Vollständiger Name
 Full-time,Vollzeit-
 Fully Billed,Voll Angekündigt
-Fully Completed,Vollständig ausgefüllte
+Fully Completed,Vollständig abgeschlossen
 Fully Delivered,Komplett geliefert
 Furniture and Fixture,Möbel -und Maschinen
 Further accounts can be made under Groups but entries can be made against Ledger,"Weitere Konten können unter Gruppen gemacht werden, aber gegen Ledger Einträge können vorgenommen werden"
 "Further accounts can be made under Groups, but entries can be made against Ledger","Weitere Konten können unter Gruppen gemacht werden, aber gegen Ledger Einträge können vorgenommen werden"
 Further nodes can be only created under 'Group' type nodes,"Weitere Knoten kann nur unter Typ -Knoten ""Gruppe"" erstellt werden"
-GL Entry,GL Eintrag
-Gantt Chart,Gantt Chart
+GL Entry,HB-Eintrag
+Gantt Chart,Gantt-Diagramm
 Gantt chart of all tasks.,Gantt-Diagramm aller Aufgaben.
 Gender,Geschlecht
-General,General
-General Ledger,General Ledger
-Generate Description HTML,Generieren Beschreibung HTML
-Generate Material Requests (MRP) and Production Orders.,Generieren Werkstoff Requests (MRP) und Fertigungsaufträge.
-Generate Salary Slips,Generieren Gehaltsabrechnungen
-Generate Schedule,Generieren Zeitplan
-Generates HTML to include selected image in the description,Erzeugt HTML ausgewählte Bild sind in der Beschreibung
-Get Advances Paid,Holen Geleistete
-Get Advances Received,Holen Erhaltene Anzahlungen
-Get Current Stock,Holen Aktuelle Stock
-Get Items,Holen Artikel
-Get Items From Sales Orders,Holen Sie Angebote aus Kundenaufträgen
+General,Allgemein
+General Ledger,Hauptbuch
+General Settings,
+Generate Description HTML,Beschreibungs-HTML generieren
+Generate Material Requests (MRP) and Production Orders.,Materialanforderungen (MRP) und Fertigungsaufträge generieren.
+Generate Salary Slips,Gehaltsabrechnungen generieren
+Generate Schedule,Zeitplan generieren
+"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Packzettel für zu liefernde Pakete generieren. Wird verwendet, um Paketnummer, Packungsinhalt und das Gewicht zu dokumentieren."
+Generates HTML to include selected image in the description,"Generiert HTML, die das ausgewählte Bild in der Beschreibung enthält"
+Get Advances Paid,Gezahlte Vorschüsse aufrufen
+Get Advances Received,Erhaltene Anzahlungen aufrufen
+Get Current Stock,Aktuellen Lagerbestand aufrufen
+Get Items,Artikel aufrufen
+Get Items From Purchase Receipts,
+Get Items From Sales Orders,Artikel aus Kundenaufträgen abrufen
 Get Items from BOM,Holen Sie Angebote von Stücklisten
-Get Last Purchase Rate,Get Last Purchase Rate
-Get Outstanding Invoices,Holen Ausstehende Rechnungen
+Get Last Purchase Rate,Letzten Anschaffungskurs abrufen
+Get Outstanding Invoices,Ausstehende Rechnungen abrufen
 Get Relevant Entries,Holen Relevante Einträge
-Get Sales Orders,Holen Sie Kundenaufträge
-Get Specification Details,Holen Sie Ausschreibungstexte
-Get Stock and Rate,Holen Sie Stock und bewerten
-Get Template,Holen Template
-Get Terms and Conditions,Holen AGB
+Get Sales Orders,Kundenaufträge abrufen
+Get Specification Details,Spezifikationsdetails abrufen
+Get Stock and Rate,Lagerbestand und Rate abrufen
+Get Template,Vorlage abrufen
+Get Terms and Conditions,Allgemeine Geschäftsbedingungen abrufen
 Get Unreconciled Entries,Holen Nicht abgestimmte Einträge
-Get Weekly Off Dates,Holen Weekly Off Dates
-"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Holen Bewertungskurs und verfügbaren Bestand an der Quelle / Ziel-Warehouse am genannten Buchungsdatum-Zeit. Wenn serialisierten Objekt, drücken Sie bitte diese Taste nach Eingabe der Seriennummern nos."
-Global Defaults,Globale Defaults
+Get Weekly Off Dates,Wöchentliche Abwesenheitstermine abrufen
+"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Bewertungsrate und verfügbaren Lagerbestand an Ursprungs-/Zielwarenlager zum genannten Buchungsdatum/Uhrzeit abrufen. Bei Serienartikel, drücken Sie diese Taste nach der Eingabe der Seriennummern."
+Global Defaults,Globale Standardwerte
 Global POS Setting {0} already created for company {1},"Globale POS Einstellung {0} bereits für Unternehmen geschaffen, {1}"
 Global Settings,Globale Einstellungen
 "Go to the appropriate group (usually Application of Funds > Current Assets > Bank Accounts and create a new Account Ledger (by clicking on Add Child) of type ""Bank""","Gehen Sie auf die entsprechende Gruppe (in der Regel Anwendung des Fonds> Umlaufvermögen > Bank Accounts und erstellen ein neues Konto Ledger (durch Klicken auf Add Kind) vom Typ "" Bank"""
 "Go to the appropriate group (usually Source of Funds > Current Liabilities > Taxes and Duties and create a new Account Ledger (by clicking on Add Child) of type ""Tax"" and do mention the Tax rate.","Gehen Sie auf die entsprechende Gruppe (in der Regel Quelle der Fonds> kurzfristige Verbindlichkeiten > Steuern und Abgaben und ein neues Konto Ledger (durch Klicken auf Child ) des Typs "" Tax"" und nicht den Steuersatz zu erwähnen."
 Goal,Ziel
 Goals,Ziele
-Goods received from Suppliers.,Wareneingang vom Lieferanten.
+Goods received from Suppliers.,Von Lieferanten erhaltene Ware.
 Google Drive,Google Drive
-Google Drive Access Allowed,Google Drive Zugang erlaubt
+Google Drive Access Allowed,Google Drive-Zugang erlaubt
 Government,Regierung
-Graduate,Absolvent
-Grand Total,Grand Total
-Grand Total (Company Currency),Grand Total (Gesellschaft Währung)
+Graduate,Hochschulabsolvent
+Grand Total,Gesamtbetrag
+Grand Total (Company Currency),Gesamtbetrag (Unternehmenswährung)
 "Grid ""","Grid """
 Grocery,Lebensmittelgeschäft
-Gross Margin %,Gross Margin%
-Gross Margin Value,Gross Margin Wert
-Gross Pay,Gross Pay
-Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Gross Pay + nachträglich Betrag + Inkasso Betrag - Total Abzug
-Gross Profit,Bruttogewinn
-Gross Profit (%),Gross Profit (%)
+Gross Margin %,Bruttoergebnis %
+Gross Margin Value,Bruttoergebniswert
+Gross Pay,Bruttolohn
+Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Bruttolohn +  ausstehender Betrag +   Inkassobetrag - Gesamtabzug
+Gross Profit,Rohgewinn
+Gross Profit (%),Rohgewinn (%)
 Gross Weight,Bruttogewicht
-Gross Weight UOM,Bruttogewicht UOM
+Gross Weight UOM,Bruttogewicht ME
 Group,Gruppe
 Group by Account,Gruppe von Konto
 Group by Voucher,Gruppe von Gutschein
-Group or Ledger,Gruppe oder Ledger
+Group or Ledger,Gruppen oder Sachbuch
 Groups,Gruppen
+Guest,
 HR Manager,HR -Manager
 HR Settings,HR-Einstellungen
-HTML / Banner that will show on the top of product list.,"HTML / Banner, die auf der Oberseite des Produkt-Liste zeigen."
-Half Day,Half Day
-Half Yearly,Halbjahresfinanzbericht
+HR User,
+HTML / Banner that will show on the top of product list.,"HTML/Banner, das oben auf der der Produktliste angezeigt wird."
+Half Day,Halbtags
+Half Yearly,Halbjährlich
 Half-yearly,Halbjährlich
 Happy Birthday!,Happy Birthday!
 Hardware,Hardware
-Has Batch No,Hat Batch No
-Has Child Node,Hat Child Node
-Has Serial No,Hat Serial No
+Has Batch No,Hat Stapelnr.
+Has Child Node,Hat untergeordneten Knoten
+Has Serial No,Hat Seriennummer
 Head of Marketing and Sales,Leiter Marketing und Vertrieb
 Header,Kopfzeile
+Heads (or groups) against which Accounting Entries are made and balances are maintained.,"Vorgesetzte (oder Gruppen), für die Buchungseinträge vorgenommen und Salden geführt werden."
 Health Care,Health Care
 Health Concerns,Gesundheitliche Bedenken
-Health Details,Gesundheit Details
-Held On,Hielt
-Help HTML,Helfen Sie HTML
-"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Hilfe: Um zu einem anderen Datensatz im System zu verknüpfen, verwenden Sie &quot;# Form / Note / [Anmerkung Name]&quot;, wie der Link URL. (Verwenden Sie nicht &quot;http://&quot;)"
-"Here you can maintain family details like name and occupation of parent, spouse and children","Hier können Sie pflegen Familie Details wie Name und Beruf der Eltern, Ehepartner und Kinder"
-"Here you can maintain height, weight, allergies, medical concerns etc","Hier können Sie pflegen Größe, Gewicht, Allergien, medizinischen Bedenken etc"
-Hide Currency Symbol,Ausblenden Währungssymbol
+Health Details,Gesundheitsdetails
+Held On,Abgehalten am
+Help HTML,HTML-Hilfe
+"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Hilfe: Um eine Verknüpfung zu einem anderen Datensatz im System herzustellen, verwenden Sie ""#Formular/Anmerkung/[Anmerkungsname]"" als Link-URL. (verwenden Sie nicht ""http://"")"
+"Here you can maintain family details like name and occupation of parent, spouse and children","Hier können Sie Familiendetails wie Namen und Beruf der Eltern, Ehepartner und Kinder angeben"
+"Here you can maintain height, weight, allergies, medical concerns etc","Hier können Sie Größe, Gewicht, Allergien, medizinische Bedenken usw. eingeben"
+Hide Currency Symbol,Währungssymbol ausblenden
 High,Hoch
-History In Company,Geschichte Im Unternehmen
-Hold,Halten
+History In Company,Verlauf im Unternehmen
+Hold,Anhalten
 Holiday,Urlaub
-Holiday List,Ferienwohnung Liste
-Holiday List Name,Ferienwohnung Name
+Holiday List,Urlaubsliste
+Holiday List Name,Urlaubslistenname
 Holiday master.,Ferien Master.
-Holidays,Ferien
-Home,Zuhause
-Host,Gastgeber
-"Host, Email and Password required if emails are to be pulled","Host, E-Mail und Passwort erforderlich, wenn E-Mails gezogen werden"
+Holidays,Feiertage
+Home,Startseite
+Host,Host
+"Host, Email and Password required if emails are to be pulled","Host-, E-Mail und Passwort erforderlich, wenn E-Mails gezogen werden sollen"
 Hour,Stunde
-Hour Rate,Hour Rate
-Hour Rate Labour,Hour Rate Labour
+Hour Rate,Stundensatz
+Hour Rate Labour,Stundensatz Arbeitslohn
 Hours,Stunden
 How Pricing Rule is applied?,Wie Pricing-Regel angewendet wird?
 How frequently?,Wie häufig?
-"How should this currency be formatted? If not set, will use system defaults","Wie soll diese Währung formatiert werden? Wenn nicht gesetzt, verwenden Standardeinstellungen des Systems"
-Human Resources,Human Resources
-Identification of the package for the delivery (for print),Identifikation des Pakets für die Lieferung (für den Druck)
-If Income or Expense,Wenn Ertrags-oder Aufwandsposten
-If Monthly Budget Exceeded,Wenn Monthly Budget überschritten
-"If Sale BOM is defined, the actual BOM of the Pack is displayed as table. Available in Delivery Note and Sales Order","Wenn Sale Stückliste definiert ist, wird die tatsächliche Stückliste des Pack als Tabelle angezeigt. Erhältlich in Lieferschein und Sales Order"
-"If Supplier Part Number exists for given Item, it gets stored here","Wenn der Lieferant Teilenummer existiert für bestimmte Artikel, wird es hier gespeichert"
+"How should this currency be formatted? If not set, will use system defaults","Wie soll diese Währung formatiert werden? Wenn nicht festgelegt, werden die Systemstands verwendet"
+Human Resources,Personalwesen
+Identification of the package for the delivery (for print),Bezeichnung des Pakets für die Lieferung (für den Druck)
+If Income or Expense,Wenn Ertrag oder Aufwand
+If Monthly Budget Exceeded,Wenn Monatsbudget überschritten
+"If Supplier Part Number exists for given Item, it gets stored here","Falls für eine bestimmte Position eine Lieferantenteilenummer vorhanden ist, wird sie hier gespeichert"
 If Yearly Budget Exceeded,Wenn Jahresbudget überschritten
-"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Wenn aktiviert, wird Stückliste Baugruppe Artikel für immer Rohstoff betrachtet werden. Andernfalls werden alle Unterbaugruppe Elemente als Ausgangsmaterial behandelt werden."
-"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Wenn aktiviert, insgesamt nicht. der Arbeitstage zählen Ferien, und dies wird den Wert der Gehalt pro Tag zu reduzieren"
-"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Wenn aktiviert, wird der Steuerbetrag als bereits in der Print Rate / Print Menge aufgenommen werden"
+"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Wenn aktiviert, wird die Stückliste für Unterbaugruppen-Artikel beim Abrufen von Rohstoffen berücksichtigt. Andernfalls werden alle Unterbaugruppen-Artikel als Rohmaterial behandelt."
+"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Wenn aktiviert, beinhaltet die Gesamtanzahl der Arbeitstage auch Feiertage und dies reduziert den Wert des Gehalts pro Tag."
+"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Wenn aktiviert, wird der Steuerbetrag als bereits in der Druckrate oder im Druckbetrag enthalten betrachtet."
 If different than customer address,Wenn anders als Kundenadresse
-"If disable, 'Rounded Total' field will not be visible in any transaction",Wenn deaktivieren &#39;Abgerundete Total&#39; Feld nicht in einer Transaktion sichtbar
-"If enabled, the system will post accounting entries for inventory automatically.","Wenn aktiviert, wird das System Buchungsposten für Inventar automatisch erstellen."
-If more than one package of the same type (for print),Wenn mehr als ein Paket des gleichen Typs (print)
+"If disable, 'Rounded Total' field will not be visible in any transaction","Wenn deaktiviert, wird das Feld 'Gerundeter Gesamtbetrag' in keiner Transaktion angezeigt"
+"If enabled, the system will post accounting entries for inventory automatically.","Wenn aktiviert, veröffentlicht das System Bestandsbuchungseinträge automatisch."
+If more than one package of the same type (for print),Wenn mehr als ein Paket von der gleichen Art (für den Druck)
 "If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Wenn mehrere Preisregeln weiterhin herrschen, werden die Benutzer aufgefordert, Priorität manuell einstellen, um Konflikt zu lösen."
 "If no change in either Quantity or Valuation Rate, leave the cell blank.","Wenn keine Änderung entweder Menge oder Bewertungs bewerten , lassen Sie die Zelle leer ."
-If not applicable please enter: NA,"Soweit dies nicht zutrifft, geben Sie bitte: NA"
-"If not checked, the list will have to be added to each Department where it has to be applied.","Falls nicht, wird die Liste müssen auf jeden Abteilung, wo sie angewendet werden hinzugefügt werden."
+"If not checked, the list will have to be added to each Department where it has to be applied.","Wenn deaktiviert, muss die Liste zu jeder Abteilung hinzugefügt werden, für die sie gilt."
 "If selected Pricing Rule is made for 'Price', it will overwrite Price List. Pricing Rule price is the final price, so no further discount should be applied. Hence, in transactions like Sales Order, Purchase Order etc, it will be fetched in 'Rate' field, rather than 'Price List Rate' field.","Wenn ausgewählten Preisregel wird für 'Preis' gemacht, wird es überschrieben Preisliste. Pricing Rule Preis ist der Endpreis, so dass keine weiteren Rabatt angewendet werden sollten. Daher wird in Transaktionen wie zB Kundenauftrag, Bestellung usw., es wird im Feld 'Rate' abgerufen werden, sondern als Feld 'Preis List'."
-"If specified, send the newsletter using this email address","Wenn angegeben, senden sie den Newsletter mit dieser E-Mail-Adresse"
+"If specified, send the newsletter using this email address","Wenn angegeben, senden Sie den Newsletter mit dieser E-Mail-Adresse"
 "If the account is frozen, entries are allowed to restricted users.","Wenn das Konto eingefroren ist, werden Einträge für eingeschränkte Benutzer erlaubt."
-"If this Account represents a Customer, Supplier or Employee, set it here.","Wenn dieses Konto ein Kunde, Lieferant oder Mitarbeiter, stellen Sie es hier."
+"If this Account represents a Customer, Supplier or Employee, set it here.","Wenn dieses Konto zu einem Kunden, Lieferanten oder Mitarbeiter gehört, legen Sie dies hier fest."
 "If two or more Pricing Rules are found based on the above conditions, Priority is applied. Priority is a number between 0 to 20 while default value is zero (blank). Higher number means it will take precedence if there are multiple Pricing Rules with same conditions.","Wenn zwei oder mehrere Preisregeln werden auf der Grundlage der obigen Bedingungen festgestellt wird Priorität angewandt. Priorität ist eine Zahl zwischen 0 und 20, während Standardwert ist null (leer). Höhere Zahl bedeutet es Vorrang, wenn es mehrere Preisregeln mit gleichen Bedingungen."
 If you follow Quality Inspection. Enables Item QA Required and QA No in Purchase Receipt,Wenn Sie Qualitätsprüfung folgen . Ermöglicht Artikel QA Pflicht und QS Nein in Kaufbeleg
-If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity,Wenn Sie Sales Team und Verkauf Partners (Channel Partners) sie markiert werden können und pflegen ihren Beitrag in der Vertriebsaktivitäten
-"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Wenn Sie ein Standard-Template in Kauf Steuern und Abgaben Meister erstellt haben, wählen Sie eine aus und klicken Sie auf den Button unten."
-"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Wenn Sie ein Standard-Template in Sales Steuern und Abgaben Meister erstellt haben, wählen Sie eine aus und klicken Sie auf den Button unten."
-"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Wenn Sie lange drucken, haben Formate, kann diese Funktion dazu verwendet, um die Seite auf mehreren Seiten mit allen Kopf-und Fußzeilen auf jeder Seite gedruckt werden"
+If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity,"Wenn Sie ein Verkaufsteam und Verkaufspartner (Vertriebskanalpartner) haben, können sie markiert werden und ihren Beitrag zur Umsatztätigkeit behalten"
+"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Wenn Sie eine Standardvorlage im Stamm für Verkaufssteuern und Abgaben erstellt haben, wählen Sie eine aus und klicken Sie unten auf die Schaltfläche."
+"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Wenn Sie eine Standardvorlage im Stamm für Steuern und Abgaben erstellt haben, wählen Sie eine aus und klicken Sie unten auf die Schaltfläche."
+"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Wenn Sie lange Druckformate haben, kann diese Funktion verwendet werden, um die Seite auf mehrere Seiten mit allen Kopf- und Fußzeilen aufzuteilen"
 If you involve in manufacturing activity. Enables Item 'Is Manufactured',Wenn Sie in die produzierenden Aktivitäten einzubeziehen. Ermöglicht Item ' hergestellt '
 Ignore,Ignorieren
 Ignore Pricing Rule,Ignorieren Preisregel
 Ignored: ,Ignoriert:
 Image,Bild
-Image View,Bild anzeigen
-Implementation Partner,Implementation Partner
-Import Attendance,Import Teilnahme
+Image View,Bildansicht
+Implementation Partner,Implementierungspartner
+Import Attendance,Importteilnahme
 Import Failed!,Import fehlgeschlagen !
-Import Log,Import-Logbuch
+Import Log,Importprotokoll
 Import Successful!,Importieren Sie erfolgreich!
-Imports,Imports
+Imports,Importe
 In Hours,In Stunden
-In Process,In Process
+In Process,In Bearbeitung
 In Qty,Menge
+In Stock,
 In Value,Wert bei
-In Words,In Worte
-In Words (Company Currency),In Words (Gesellschaft Währung)
-In Words (Export) will be visible once you save the Delivery Note.,"In Words (Export) werden sichtbar, sobald Sie den Lieferschein zu speichern."
-In Words will be visible once you save the Delivery Note.,"In Worte sichtbar sein wird, sobald Sie den Lieferschein zu speichern."
-In Words will be visible once you save the Purchase Invoice.,"In Worte sichtbar sein wird, wenn Sie den Kaufbeleg speichern."
-In Words will be visible once you save the Purchase Order.,"In Worte sichtbar sein wird, wenn Sie die Bestellung zu speichern."
-In Words will be visible once you save the Purchase Receipt.,"In Worte sichtbar sein wird, wenn Sie den Kaufbeleg speichern."
-In Words will be visible once you save the Quotation.,"In Worte sichtbar sein wird, sobald Sie das Angebot zu speichern."
-In Words will be visible once you save the Sales Invoice.,"In Worte sichtbar sein wird, sobald Sie das Sales Invoice speichern."
-In Words will be visible once you save the Sales Order.,"In Worte sichtbar sein wird, sobald Sie den Sales Order zu speichern."
-Incentives,Incentives
+In Words,In Words
+In Words (Company Currency),In Words (Unternehmenswährung)
+In Words (Export) will be visible once you save the Delivery Note.,"In Words (Export) wird sichtbar, wenn Sie den Lieferschein speichern."
+In Words will be visible once you save the Delivery Note.,"In Words wird sichtbar, sobald Sie den Lieferschein speichern."
+In Words will be visible once you save the Purchase Invoice.,"In Words wird sichtbar, sobald Sie die Einkaufsrechnung speichern."
+In Words will be visible once you save the Purchase Order.,"In Words wird sichtbar, sobald Sie die Bestellung speichern."
+In Words will be visible once you save the Purchase Receipt.,"In Words wird sichtbar, sobald Sie den Kaufbeleg speichern."
+In Words will be visible once you save the Quotation.,"In Words wird sichtbar, sobald Sie den Kostenvoranschlag speichern."
+In Words will be visible once you save the Sales Invoice.,"In Words wird sichtbar, sobald Sie die Verkaufsrechnung speichern."
+In Words will be visible once you save the Sales Order.,"In Words wird sichtbar, sobald Sie den Kundenauftrag speichern."
+Incentives,Anreiz
 Include Reconciled Entries,Fügen versöhnt Einträge
-Include holidays in Total no. of Working Days,Fügen Sie Urlaub in Summe nicht. der Arbeitstage
+Include holidays in Total no. of Working Days,Urlaub in die Gesamtzahl der Arbeitstage einschließen
 Income,Einkommen
-Income / Expense,Erträge / Aufwendungen
-Income Account,Income Konto
-Income Booked,Erträge gebucht
+Income / Expense,Einnahmen/Ausgaben
+Income Account,Gewinnkonto
+Income Booked,Gebuchter Gewinn
 Income Tax,Einkommensteuer
-Income Year to Date,Income Jahr bis Datum
-Income booked for the digest period,Erträge gebucht für die Auszugsperiodeninformation
-Incoming,Eingehende
-Incoming Rate,Incoming Rate
-Incoming quality inspection.,Eingehende Qualitätskontrolle.
+Income Year to Date,Jahresertrag bis dato
+Income booked for the digest period,Gebuchter Gewinn für den Berichtszeitraum
+Incoming,Eingehend
+Incoming Rate,Eingehende Rate
+Incoming quality inspection.,Eingehende Qualitätsprüfung.
 Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Falsche Anzahl von Hauptbuch-Einträge gefunden. Sie könnten ein falsches Konto in der Transaktion ausgewählt haben.
 Incorrect or Inactive BOM {0} for Item {1} at row {2},Fehlerhafte oder Inaktive Stückliste {0} für Artikel {1} in Zeile {2}
 Indicates that the package is a part of this delivery (Only Draft),"Zeigt an, dass das Paket ist ein Teil dieser Lieferung (nur Entwurf)"
 Indirect Expenses,Indirekte Aufwendungen
 Indirect Income,Indirekte Erträge
-Individual,Einzelne
+Individual,Einzelperson
 Industry,Industrie
-Industry Type,Industry Typ
+Industry Type,Industrietyp
 Inspected By,Geprüft von
 Inspection Criteria,Prüfkriterien
-Inspection Required,Inspektion erforderlich
-Inspection Type,Prüfart
-Installation Date,Installation Date
-Installation Note,Installation Hinweis
-Installation Note Item,Installation Hinweis Artikel
+Inspection Required,Prüfung ist Pflicht
+Inspection Type,Art der Prüfung
+Installation Date,Datum der Installation
+Installation Note,Installationshinweis
+Installation Note Item,Bestandteil Installationshinweis
 Installation Note {0} has already been submitted,Installation Hinweis {0} wurde bereits eingereicht
-Installation Status,Installation Status
-Installation Time,Installation Time
+Installation Status,Installationsstatus
+Installation Time,Installationszeit
 Installation date cannot be before delivery date for Item {0},Installationsdatum kann nicht vor dem Liefertermin für Artikel {0}
-Installation record for a Serial No.,Installation Rekord für eine Seriennummer
+Installation record for a Serial No.,Installationsdatensatz für eine Seriennummer
 Installed Qty,Installierte Anzahl
-Instructions,Anleitung
-Integrate incoming support emails to Support Ticket,Integrieren eingehende Support- E-Mails an Ticket-Support
+Instructions,Anweisungen
 Interested,Interessiert
 Intern,internieren
 Internal,Intern
@@ -1345,95 +1390,98 @@
 Invalid Master Name,Ungültige Master-Name
 Invalid User Name or Support Password. Please rectify and try again.,Ungültige Benutzername oder Passwort -Unterstützung . Bitte korrigieren und versuchen Sie es erneut .
 Invalid quantity specified for item {0}. Quantity should be greater than 0.,Zum Artikel angegebenen ungültig Menge {0}. Menge sollte grßer als 0 sein.
-Inventory,Inventar
+Inventory,Lagerbestand
 Inventory & Support,Inventar & Support
 Investment Banking,Investment Banking
 Investments,Investments
 Invoice Date,Rechnungsdatum
 Invoice Details,Rechnungsdetails
-Invoice No,Rechnungsnummer
+Invoice No,Rechnungs-Nr.
 Invoice Number,Rechnungsnummer
-Invoice Period From,Rechnungszeitraum Von
-Invoice Period From and Invoice Period To dates mandatory for recurring invoice,Rechnung Zeitraum ab Rechnungszeitraumum Pflichtterminefür wiederkehrende Rechnung
-Invoice Period To,Rechnungszeitraum auf
 Invoice Type,Rechnungstyp
 Invoice/Journal Voucher Details,Rechnung / Journal Gutschein-Details
 Invoiced Amount (Exculsive Tax),Rechnungsbetrag ( Exculsive MwSt.)
-Is Active,Aktiv ist
-Is Advance,Ist Advance
-Is Cancelled,Wird abgebrochen
-Is Carry Forward,Ist Carry Forward
+Is Active,Ist aktiv
+Is Advance,Ist Voraus
+Is Cancelled,Ist storniert
+Is Carry Forward,Ist Übertrag
 Is Default,Ist Standard
-Is Encash,Ist einlösen
+Is Encash,Ist Inkasso
 Is Fixed Asset Item,Ist Posten des Anlagevermögens
 Is LWP,Ist LWP
-Is Opening,Eröffnet
-Is Opening Entry,Öffnet Eintrag
+Is Opening,Ist Öffnung
+Is Opening Entry,Ist Öffnungseintrag
 Is POS,Ist POS
-Is Primary Contact,Ist Hauptansprechpartner
-Is Purchase Item,Ist Kaufsache
+Is Primary Contact,Ist primärer Kontakt
+Is Purchase Item,Ist Einkaufsartikel
+Is Recurring,
 Is Sales Item,Ist Verkaufsartikel
-Is Service Item,Ist Service Item
-Is Stock Item,Ist Stock Item
-Is Sub Contracted Item,Ist Sub Vertragsgegenstand
-Is Subcontracted,Ist Fremdleistungen
-Is this Tax included in Basic Rate?,Wird diese Steuer in Basic Rate inbegriffen?
-Issue,Ausgabe
-Issue Date,Issue Date
-Issue Details,Issue Details
-Issued Items Against Production Order,Ausgestellt Titel Against Fertigungsauftrag
+Is Service Item,Ist Leistungsposition
+Is Stock Item,Ist Bestandsartikel
+Is Sub Contracted Item,Ist Zulieferer-Artikel
+Is Subcontracted,Ist Untervergabe
+Is this Tax included in Basic Rate?,Ist diese Steuer in der Basisrate enthalten?
+Issue,Ausstellung
+Issue Date,Ausstellungsdatum
+Issue Details,Vorgangsdetails
+Issued Items Against Production Order,Gegen Fertigungsauftrag ausgegebene Artikel
 It can also be used to create opening stock entries and to fix stock value.,"Es kann auch verwendet werden, um die Öffnung der Vorratszugänge zu schaffen und Bestandswert zu beheben."
 Item,Artikel
-Item Advanced,Erweiterte Artikel
-Item Barcode,Barcode Artikel
-Item Batch Nos,In Batch Artikel
-Item Code,Item Code
+Item #{0}: Ordered qty can not less than item's minimum order qty (defined in item master).,
+Item Advanced,Erweiterter Artikel
+Item Barcode,Artikelstrichcode
+Item Batch Nos,Artikel-Chargennummern
+Item Classification,Artikelklassifizierung
+Item Code,Artikelcode
 Item Code > Item Group > Brand,Item Code> Artikelgruppe> Marke
 Item Code and Warehouse should already exist.,Artikel-Code und Lager sollte bereits vorhanden sein .
 Item Code cannot be changed for Serial No.,Item Code kann nicht für Seriennummer geändert werden
 Item Code is mandatory because Item is not automatically numbered,"Artikel-Code ist zwingend erforderlich, da Einzelteil wird nicht automatisch nummeriert"
 Item Code required at Row No {0},Item Code in Zeile Keine erforderlich {0}
-Item Customer Detail,Artikel Kundenrezensionen
+Item Customer Detail,Kundendetail Artikel
 Item Description,Artikelbeschreibung
-Item Desription,Artikel Desription
+Item Desription,Artikelbeschreibung
 Item Details,Artikeldetails
-Item Group,Artikel-Gruppe
-Item Group Name,Artikel Group Name
+Item Group,Artikelgruppe
+Item Group Name,Name der Artikelgruppe
 Item Group Tree,Artikelgruppenstruktur
 Item Group not mentioned in item master for item {0},Im Artikelstamm für Artikel nicht erwähnt Artikelgruppe {0}
-Item Groups in Details,Details Gruppen in Artikel
-Item Image (if not slideshow),Item Image (wenn nicht Diashow)
-Item Name,Item Name
-Item Naming By,Artikel Benennen von
-Item Price,Artikel Preis
-Item Prices,Produkt Preise
-Item Quality Inspection Parameter,Qualitätsprüfung Artikel Parameter
-Item Reorder,Artikel Reorder
-Item Serial No,Artikel Serial In
-Item Serial Nos,Artikel Serial In
+Item Groups in Details,Artikelgruppen in Details
+Item Image (if not slideshow),Artikelbild (wenn keine Diashow)
+Item Name,Artikelname
+Item Naming By,Artikelbenennung nach
+Item Price,Artikelpreis
+Item Prices,Artikelpreise
+Item Quality Inspection Parameter,Parameter der Artikel-Qualitätsprüfung
+Item Reorder,Artikelaufzeichner
+Item Row {0}: Purchase Receipt {1} does not exist in above 'Purchase Receipts' table,
+Item Serial No,Artikel-Seriennummer
+Item Serial Nos,Artikel-Seriennummern
 Item Shortage Report,Artikel Mangel Bericht
-Item Supplier,Artikel Lieferant
-Item Supplier Details,Artikel Supplier Details
-Item Tax,MwSt. Artikel
-Item Tax Amount,Artikel Steuerbetrag
-Item Tax Rate,Artikel Tax Rate
+Item Supplier,Artikellieferant
+Item Supplier Details,Details Artikellieferant
+Item Tax,Artikelsteuer
+Item Tax Amount,Artikel-Steuerbetrag
+Item Tax Rate,Artikel-Steuersatz
 Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Artikel Tax Row {0} muss wegen Art oder Steuerertrag oder-aufwand oder Kostenpflichtige haben
-Item Tax1,Artikel Tax1
-Item To Manufacture,Artikel in der Herstellung
-Item UOM,Artikel UOM
-Item Website Specification,Artikelbeschreibung Webseite
-Item Website Specifications,Artikel Spezifikationen Webseite
-Item Wise Tax Detail,Artikel Wise Tax -Detail
+Item Tax1,Artikelsteuer1
+Item To Manufacture,Artikel Bis-Herstellung
+Item UOM,Artikel-ME
+Item Website Specification,Artikel-Webseitenspezifikation
+Item Website Specifications,Artikel-Webseitenspezifikationen
+Item Wise Tax Detail,Artikelweises Steuerdetail
 Item Wise Tax Detail ,Artikel Wise UST Details
 Item is required,Artikel erforderlich
 Item is updated,Artikel wird aktualisiert
 Item master.,Artikelstamm .
 "Item must be a purchase item, as it is present in one or many Active BOMs","Einzelteil muss ein Kaufsache zu sein, wie es in einem oder mehreren Active Stücklisten vorhanden ist"
+Item must be added using 'Get Items from Purchase Receipts' button,
 Item or Warehouse for row {0} does not match Material Request,Artikel- oder Lagerreihe{0} ist Materialanforderung nicht überein
 Item table can not be blank,Artikel- Tabelle kann nicht leer sein
-Item to be manufactured or repacked,Artikel hergestellt oder umgepackt werden
+Item to be manufactured or repacked,Hergestellter oder umgepackter Artikel
+Item valuation rate is recalculated considering landed cost voucher amount,
 Item valuation updated,Artikel- Bewertung aktualisiert
-Item will be saved by this name in the data base.,Einzelteil wird mit diesem Namen in der Datenbank gespeichert werden.
+Item will be saved by this name in the data base.,Einzelteil wird mit diesem Namen in der Datenbank gespeichert.
 Item {0} appears multiple times in Price List {1},Artikel {0} erscheint mehrfach in Preisliste {1}
 Item {0} does not exist,Artikel {0} existiert nicht
 Item {0} does not exist in the system or has expired,Artikel {0} ist nicht im System vorhanden oder abgelaufen
@@ -1464,155 +1512,160 @@
 Item {0} not found,Artikel {0} nicht gefunden
 Item {0} with Serial No {1} is already installed,Artikel {0} mit Seriennummer {1} ist bereits installiert
 Item {0} with same description entered twice,Artikel {0} mit derselben Beschreibung zweimal eingegeben
-"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Artikel, Garantie, wird AMC (Annual Maintenance Contract) Details werden automatisch abgerufen Wenn Serial Number ausgewählt ist."
+"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Details zu Artikel, Garantie, AMC (Jahreswartungsvertrag) werden automatisch angezeigt, wenn die Seriennummer ausgewählt wird."
 Item-wise Price List Rate,Artikel weise Preis List
-Item-wise Purchase History,Artikel-wise Kauf-Historie
-Item-wise Purchase Register,Artikel-wise Kauf Register
-Item-wise Sales History,Artikel-wise Vertrieb Geschichte
-Item-wise Sales Register,Artikel-wise Vertrieb Registrieren
+Item-wise Purchase History,Artikelweiser Einkaufsverlauf
+Item-wise Purchase Register,Artikelweises Einkaufsregister
+Item-wise Sales History,Artikelweiser Vertriebsverlauf
+Item-wise Sales Register,Artikelweises Vertriebsregister
 "Item: {0} managed batch-wise, can not be reconciled using \
-					Stock Reconciliation, instead use Stock Entry","Item: {0} verwaltet chargenweise, kann nicht in Einklang gebracht werden mit \
- Auf Versöhnung, verwenden Sie stattdessen Lizenz Eintrag"
+					Stock Reconciliation, instead use Stock Entry",
 Item: {0} not found in the system,Item: {0} nicht im System gefunden
 Items,Artikel
 Items To Be Requested,Artikel angefordert werden
 Items required,Artikel erforderlich
-"Items to be requested which are ""Out of Stock"" considering all warehouses based on projected qty and minimum order qty","Welche Gegenstände werden gebeten, sich ""Out of Stock"" unter Berücksichtigung aller Hallen auf projizierte minimale Bestellmenge und Menge der Basis"
-Items which do not exist in Item master can also be entered on customer's request,"Gegenstände, die nicht in Artikelstammdaten nicht existieren kann auch auf Wunsch des Kunden eingegeben werden"
-Itemwise Discount,Discount Itemwise
-Itemwise Recommended Reorder Level,Itemwise Empfohlene Meldebestand
-Job Applicant,Job Applicant
-Job Opening,Stellenangebot
-Job Profile,Job- Profil
-Job Title,Berufsbezeichnung
-"Job profile, qualifications required etc.","Job -Profil erforderlich , Qualifikationen usw."
-Jobs Email Settings,Jobs per E-Mail Einstellungen
-Journal Entries,Journal Entries
-Journal Entry,Journal Entry
-Journal Voucher,Journal Gutschein
-Journal Voucher Detail,Journal Voucher Detail
-Journal Voucher Detail No,In Journal Voucher Detail
+"Items to be requested which are ""Out of Stock"" considering all warehouses based on projected qty and minimum order qty","Angeforderte Artikel, die im gesamten Warenlager bezüglich der geforderten Menge und Mindestbestellmenge ""Nicht vorrätig"" sind."
+Items which do not exist in Item master can also be entered on customer's request,"Gegenstände, die nicht im Artikelstamm vorhanden sind, können auf Wunsch des Kunden auch eingetragen werden"
+Itemwise Discount,Artikelweiser Rabatt
+Itemwise Recommended Reorder Level,Artikelweise empfohlene Neubestellungsebene
+Job Applicant,Bewerber
+Job Opening,Offene Stelle
+Job Profile,Stellenbeschreibung
+Job Title,Stellenbezeichnung
+"Job profile, qualifications required etc.","Stellenbeschreibung, erforderliche Qualifikationen usw."
+Jobs Email Settings,Stellen-E-Mail-Einstellungen
+Journal Entries,Journaleinträge
+Journal Entry,Journaleintrag
+Journal Voucher,Journalgutschein
+Journal Voucher Detail,Journalgutschein Detail
+Journal Voucher Detail No,Journalgutschein Detailnr.
 Journal Voucher {0} does not have account {1} or already matched,Blatt Gutschein {0} ist nicht Konto haben {1} oder bereits abgestimmt
 Journal Vouchers {0} are un-linked,Blatt Gutscheine {0} sind un -linked
-Keep a track of communication related to this enquiry which will help for future reference.,"Verfolgen Sie die Kommunikation im Zusammenhang mit dieser Untersuchung, die für zukünftige Referenz helfen."
+"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ",
+Keep a track of communication related to this enquiry which will help for future reference.,Kommunikation bezüglich dieser Anfrage für zukünftige Zwecke aufbewahren.
 Keep it web friendly 900px (w) by 100px (h),Halten Sie es freundliche Web- 900px (w) von 100px ( h)
-Key Performance Area,Key Performance Area
-Key Responsibility Area,Key Responsibility Bereich
+Key Performance Area,Wichtigster Leistungsbereich
+Key Responsibility Area,Wichtigster Verantwortungsbereich
 Kg,kg
-LR Date,LR Datum
-LR No,In LR
+LR Date,LR-Datum
+LR No,LR-Nr.
 Label,Etikett
-Landed Cost Item,Landed Cost Artikel
-Landed Cost Items,Landed Cost Artikel
-Landed Cost Purchase Receipt,Landed Cost Kaufbeleg
-Landed Cost Purchase Receipts,Landed Cost Kaufbelege
-Landed Cost Wizard,Landed Cost Wizard
-Landed Cost updated successfully,Landed Cost erfolgreich aktualisiert
+Landed Cost Help,
+Landed Cost Item,Kostenartikel
+Landed Cost Purchase Receipt,Kosten-Kaufbeleg
+Landed Cost Taxes and Charges,
+Landed Cost Voucher,
+Landed Cost Voucher Amount,
 Language,Sprache
-Last Name,Nachname
-Last Purchase Rate,Last Purchase Rate
+Last Name,Familienname
+Last Purchase Rate,Letzter Anschaffungskurs
 Latest,neueste
-Lead,Führen
-Lead Details,Blei Einzelheiten
+Lead,Lead
+Lead Details,Lead-Details
 Lead Id,Lead- Id
-Lead Name,Name der Person
-Lead Owner,Blei Owner
-Lead Source,Blei Quelle
+Lead Name,Lead-Name
+Lead Owner,Lead-Eigentümer
+Lead Source,Lead-Ursprung
 Lead Status,Lead-Status
-Lead Time Date,Lead Time Datum
-Lead Time Days,Lead Time Tage
-Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Material Request when you select this item.,"Lead Time Tage ist die Anzahl der Tage, um die diesen Artikel in Ihrem Lager zu erwarten ist. Diese geholt Tage in Material anfordern Wenn Sie diese Option auswählen."
-Lead Type,Bleisatz
+Lead Time Date,Durchlaufzeit Datum
+Lead Time Days,Durchlaufzeit Tage
+Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Material Request when you select this item.,"""Durchlaufzeit Tage"" beschreibt die Anzahl der Tage, bis wann mit dem Eintreffen des Artikels im Lager zu rechnen ist. Diese Tage werden aus der Materialanforderung abgefragt, wenn Sie diesen Artikel auswählen."
+Lead Type,Lead-Typ
 Lead must be set if Opportunity is made from Lead,"Blei muss eingestellt werden, wenn Gelegenheit ist aus Blei hergestellt werden"
-Leave Allocation,Lassen Allocation
-Leave Allocation Tool,Lassen Allocation-Tool
-Leave Application,Lassen Anwendung
-Leave Approver,Lassen Approver
-Leave Approvers,Lassen genehmigende
-Leave Balance Before Application,Lassen Vor Saldo Anwendung
-Leave Block List,Lassen Block List
-Leave Block List Allow,Lassen Lassen Block List
-Leave Block List Allowed,Lassen Sie erlaubt Block List
-Leave Block List Date,Lassen Block List Datum
-Leave Block List Dates,Lassen Block List Termine
-Leave Block List Name,Lassen Blockieren Name
-Leave Blocked,Lassen Blockierte
-Leave Control Panel,Lassen Sie Control Panel
-Leave Encashed?,Lassen eingelöst?
-Leave Encashment Amount,Lassen Einlösung Betrag
-Leave Type,Lassen Typ
-Leave Type Name,Lassen Typ Name
-Leave Without Pay,Unbezahlten Urlaub
+Leave Allocation,Urlaubszuordnung
+Leave Allocation Tool,Urlaubszuordnungs-Tool
+Leave Application,Urlaubsantrag
+Leave Approver,Urlaubsgenehmiger
+Leave Approvers,Urlaubsgenehmiger
+Leave Balance Before Application,Urlaubskonto vor Anwendung
+Leave Block List,Urlaubssperrenliste
+Leave Block List Allow,Urlaubssperrenliste zulassen
+Leave Block List Allowed,Urlaubssperrenliste zugelassen
+Leave Block List Date,Urlaubssperrenliste Datum
+Leave Block List Dates,Urlaubssperrenliste Termine
+Leave Block List Name,Urlaubssperrenliste Name
+Leave Blocked,Gesperrter Urlaub
+Leave Control Panel,Urlaubskontrolloberfläche
+Leave Encashed?,Urlaub eingelöst?
+Leave Encashment Amount,Urlaubseinlösung Betrag
+Leave Type,Urlaubstyp
+Leave Type Name,Urlaubstyp Name
+Leave Without Pay,Unbezahlter Urlaub
 Leave application has been approved.,Urlaubsantrag genehmigt wurde .
 Leave application has been rejected.,Urlaubsantrag wurde abgelehnt.
 Leave approver must be one of {0},Lassen Genehmiger muss man von {0}
 Leave blank if considered for all branches,"Freilassen, wenn für alle Branchen betrachtet"
 Leave blank if considered for all departments,"Freilassen, wenn für alle Abteilungen betrachtet"
 Leave blank if considered for all designations,"Freilassen, wenn für alle Bezeichnungen betrachtet"
-Leave blank if considered for all employee types,"Freilassen, wenn für alle Mitarbeiter Typen betrachtet"
-"Leave can be approved by users with Role, ""Leave Approver""","Kann von Benutzern mit Role zugelassen zu verlassen, ""Leave Approver"""
+Leave blank if considered for all employee types,"Freilassen, wenn für alle Mitarbeitertypen betrachtet"
+"Leave can be approved by users with Role, ""Leave Approver""","Urlaub kann von Benutzern mit der Rolle ""Urlaubsgenehmiger"" genehmigt werden"
 Leave of type {0} cannot be longer than {1},Abschied vom Typ {0} kann nicht mehr als {1}
 Leaves Allocated Successfully for {0},Erfolgreich für zugewiesene Blätter {0}
 Leaves for type {0} already allocated for Employee {1} for Fiscal Year {0},Blätter für Typ {0} bereits für Arbeitnehmer zugeteilt {1} für das Geschäftsjahr {0}
 Leaves must be allocated in multiples of 0.5,"Blätter müssen in Vielfachen von 0,5 zugeordnet werden"
-Ledger,Hauptbuch
+Ledger,Sachkonto
 Ledgers,Ledger
 Left,Links
 Legal,Rechts-
+Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,"Juristische Einheit/Niederlassung mit einem separaten Kontenplan, der zum Unternehmen gehört."
 Legal Expenses,Anwaltskosten
 Letter Head,Briefkopf
 Letter Heads for print templates.,Schreiben Köpfe für Druckvorlagen .
 Level,Ebene
-Lft,Lft
+Lft,Li
 Liability,Haftung
 List a few of your customers. They could be organizations or individuals.,Listen Sie ein paar Ihrer Kunden. Sie könnten Organisationen oder Einzelpersonen sein .
 List a few of your suppliers. They could be organizations or individuals.,Listen Sie ein paar von Ihren Lieferanten . Sie könnten Organisationen oder Einzelpersonen sein .
-List items that form the package.,Diese Liste Artikel bilden das Paket.
-List this Item in multiple groups on the website.,Liste Diesen Artikel in mehrere Gruppen auf der Website.
+List items that form the package.,"Listenelemente, die das Paket bilden."
+List of users who can edit a particular Note,"Liste der Benutzer, die eine besondere Notiz bearbeiten können"
+List this Item in multiple groups on the website.,Diesen Artikel in mehreren Gruppen auf der Website auflisten.
 "List your products or services that you buy or sell. Make sure to check the Item Group, Unit of Measure and other properties when you start.","Listen Sie Ihre Produkte oder Dienstleistungen, die Sie kaufen oder verkaufen ."
 "List your tax heads (e.g. VAT, Excise; they should have unique names) and their standard rates. This will create a standard template, which you can edit and add more later.","Listen Sie Ihre Steuerköpfen ( z. B. Mehrwertsteuer, Verbrauchssteuern , sie sollten eindeutige Namen haben ) und ihre Standardsätze."
 Loading...,Wird geladen ...
 Loans (Liabilities),Kredite ( Passiva)
 Loans and Advances (Assets),Forderungen ( Assets)
 Local,lokal
+"Log of Activities performed by users against Tasks that can be used for tracking time, billing.","Protokoll der von Benutzern durchgeführten Aktivitäten bei Aufgaben, die zum Protokollieren von Zeit und zur Rechnungslegung verwendet werden."
 Login,Anmelden
 Login with your new User ID,Loggen Sie sich mit Ihrem neuen Benutzer-ID
 Logo,Logo
 Logo and Letter Heads,Logo und Briefbögen
 Lost,verloren
-Lost Reason,Verlorene Reason
-Low,Gering
-Lower Income,Lower Income
-MTN Details,MTN Einzelheiten
+Lost Reason,Verlustgrund
+Low,Niedrig
+Lower Income,Niedrigeres Einkommen
+MTN Details,MTN-Details
 Main,Main
-Main Reports,Haupt-Reports
-Maintain Same Rate Throughout Sales Cycle,Pflegen gleichen Rate Während Sales Cycle
-Maintain same rate throughout purchase cycle,Pflegen gleichen Rate gesamten Kauf-Zyklus
+Main Reports,Hauptberichte
+Maintain Same Rate Throughout Sales Cycle,Gleiche Rate im gesamten Verkaufszyklus beibehalten
+Maintain same rate throughout purchase cycle,Gleiche Rate im gesamten Kaufzyklus beibehalten
 Maintenance,Wartung
-Maintenance Date,Wartung Datum
-Maintenance Details,Wartung Einzelheiten
+Maintenance Date,Wartungsdatum
+Maintenance Details,Wartungsdetails
+Maintenance Manager,
 Maintenance Schedule,Wartungsplan
-Maintenance Schedule Detail,Wartungsplan Details
-Maintenance Schedule Item,Wartungsplan Artikel
+Maintenance Schedule Detail,Wartungsplandetail
+Maintenance Schedule Item,Wartungsplanposition
 Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"Wartungsplan wird nicht für alle Elemente erzeugt. Bitte klicken Sie auf "" Generieren Zeitplan '"
 Maintenance Schedule {0} exists against {0},Wartungsplan {0} gegen {0} existiert
 Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Wartungsplan {0} muss vor Streichung dieses Sales Order storniert werden
 Maintenance Schedules,Wartungspläne
 Maintenance Status,Wartungsstatus
-Maintenance Time,Wartung Zeit
-Maintenance Type,Wartung Type
-Maintenance Visit,Wartung Besuch
-Maintenance Visit Purpose,Wartung Visit Zweck
+Maintenance Time,Wartungszeit
+Maintenance Type,Wartungstyp
+Maintenance User,
+Maintenance Visit,Wartungsbesuch
+Maintenance Visit Purpose,Wartungsbesuch Zweck
 Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Wartungsbesuch {0} muss vor Streichung dieses Sales Order storniert werden
 Maintenance start date can not be before delivery date for Serial No {0},Wartung Startdatum kann nicht vor dem Liefertermin für Seriennummer {0}
-Major/Optional Subjects,Major / Wahlfächer
+Major/Optional Subjects,Wichtiger/optionaler Betreff
 Make ,
 Make Accounting Entry For Every Stock Movement,Machen Accounting Eintrag für jede Lagerbewegung
-Make Bank Voucher,Machen Bankgutschein
+Make Bank Voucher,Bankgutschein erstellen
 Make Credit Note,Machen Gutschrift
 Make Debit Note,Machen Lastschrift
 Make Delivery,machen Liefer
-Make Difference Entry,Machen Difference Eintrag
+Make Difference Entry,Differenzeintrag erstellen
 Make Excise Invoice,Machen Verbrauch Rechnung
 Make Installation Note,Machen Installation Hinweis
 Make Invoice,machen Rechnung
@@ -1630,59 +1683,66 @@
 Make Sales Invoice,Machen Sales Invoice
 Make Sales Order,Machen Sie Sales Order
 Make Supplier Quotation,Machen Lieferant Zitat
-Make Time Log Batch,Nehmen Sie sich Zeit Log Batch
+Make Time Log Batch,Zeitprotokollstapel erstellen
+Make new POS Setting,
 Male,Männlich
 Manage Customer Group Tree.,Verwalten von Kunden- Gruppenstruktur .
 Manage Sales Partners.,Vertriebspartner verwalten.
 Manage Sales Person Tree.,Verwalten Sales Person Baum .
 Manage Territory Tree.,Verwalten Territory Baum .
-Manage cost of operations,Verwalten Kosten der Operationen
+Manage cost of operations,Betriebskosten verwalten
 Management,Management
 Manager,Manager
-"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.","Obligatorisch, wenn Lager Artikel ist &quot;Ja&quot;. Auch die Standard-Lager, wo reservierte Menge von Sales Order eingestellt ist."
-Manufacture against Sales Order,Herstellung gegen Sales Order
-Manufacture/Repack,Herstellung / Repack
-Manufactured Qty,Hergestellt Menge
-Manufactured quantity will be updated in this warehouse,Menge hergestellt werden in diesem Lager aktualisiert werden
+"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.","Obligatorisch, wenn Bestandsartikel „Ja“ ist. Auch das Standardwarenlager, in dem die Menge über den Auftrag reserviert wurde."
+Manufacture against Sales Order,Herstellung laut Auftrag
+Manufacture/Repack,Herstellung/Neuverpackung
+Manufactured Item,
+Manufactured Qty,Hergestellte Menge
+Manufactured quantity will be updated in this warehouse,Hergestellte Menge wird in diesem Lager aktualisiert
 Manufactured quantity {0} cannot be greater than planned quanitity {1} in Production Order {2},Hergestellt Menge {0} kann nicht größer sein als geplant quanitity {1} in Fertigungsauftrag {2}
 Manufacturer,Hersteller
 Manufacturer Part Number,Hersteller-Teilenummer
-Manufacturing,Herstellung
-Manufacturing Quantity,Fertigung Menge
+Manufacturing,Fertigungsprozess
+Manufacturing Manager,
+Manufacturing Quantity,Fertigungsmenge
 Manufacturing Quantity is mandatory,Fertigungsmengeist obligatorisch
-Margin,Marge
+Manufacturing User,
+Margin,Gewinnspanne
 Marital Status,Familienstand
-Market Segment,Market Segment
+Market Segment,Marktsegment
 Marketing,Marketing
 Marketing Expenses,Marketingkosten
 Married,Verheiratet
-Mass Mailing,Mass Mailing
-Master Name,Master Name
+Mass Mailing,Massen-Mailing
+Master Name,Stammname
 Master Name is mandatory if account type is Warehouse,"Meister -Name ist obligatorisch, wenn Kontotyp Warehouse"
-Master Type,Master Type
-Masters,Masters
-Match non-linked Invoices and Payments.,Spiel nicht verknüpften Rechnungen und Zahlungen.
-Material Issue,Material Issue
-Material Receipt,Material Receipt
-Material Request,Material anfordern
-Material Request Detail No,Material anfordern Im Detail
-Material Request For Warehouse,Material Request For Warehouse
-Material Request Item,Material anfordern Artikel
-Material Request Items,Material anfordern Artikel
-Material Request No,Material anfordern On
-Material Request Type,Material Request Type
+Master Type,Stammtyp
+Masters,Stämme
+Match non-linked Invoices and Payments.,Zuordnung nicht verknüpfter Rechnungen und Zahlungen.
+Material Issue,Materialentnahme
+Material Manager,
+Material Master Manager,
+Material Receipt,Materialannahme
+Material Request,Materialanforderung
+Material Request Detail No,Detailnr. der Materialanforderung
+Material Request For Warehouse,Materialanforderung für Warenlager
+Material Request Item,Materialanforderungsposition
+Material Request Items,Materialanforderungspositionen
+Material Request No,Materialanforderungsnr.
+Material Request Type,Materialanforderungstyp
 Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Materialanforderung von maximal {0} kann für Artikel {1} gemacht werden gegen Sales Order {2}
-Material Request used to make this Stock Entry,"Material anfordern verwendet, um dieses Lager Eintrag machen"
+Material Request used to make this Stock Entry,Verwendete Materialanforderung für diesen Lagereintrag
 Material Request {0} is cancelled or stopped,Materialanforderung {0} wird abgebrochen oder gestoppt
 Material Requests for which Supplier Quotations are not created,"Material Anträge , für die Lieferant Zitate werden nicht erstellt"
 Material Requests {0} created,Material Requests {0} erstellt
-Material Requirement,Material Requirement
-Material Transfer,Material Transfer
+Material Requirement,Materialanforderung
+Material Transfer,Materialtransfer
+Material User,
 Materials,Materialien
-Materials Required (Exploded),Benötigte Materialien (Explosionszeichnung)
+Materials Required (Exploded),Benötigte Materialien (erweitert)
 Max 5 characters,Max 5 Zeichen
-Max Days Leave Allowed,Max Leave Tage erlaubt
-Max Discount (%),Discount Max (%)
+Max Days Leave Allowed,Maximal zulässige Urlaubstage
+Max Discount (%),Maximaler Rabatt (%)
 Max Qty,Max Menge
 Max discount allowed for item: {0} is {1}%,Max Rabatt erlaubt zum Artikel: {0} {1}%
 Maximum Amount,Höchstbetrag
@@ -1690,123 +1750,123 @@
 Maximum {0} rows allowed,Maximum {0} Zeilen erlaubt
 Maxiumm discount for Item {0} is {1}%,Maxiumm Rabatt für Artikel {0} {1}%
 Medical,Medizin-
-Medium,Medium
+Medium,Mittel
 "Merging is only possible if following properties are same in both records. Group or Ledger, Root Type, Company","Merging ist nur möglich, wenn folgenden Objekte sind in beiden Datensätzen."
 Message,Nachricht
-Message Parameter,Nachricht Parameter
+Message Parameter,Nachrichtenparameter
 Message Sent,Nachricht gesendet
 Message updated,Nachricht aktualisiert
 Messages,Nachrichten
-Messages greater than 160 characters will be split into multiple messages,Größer als 160 Zeichen Nachricht in mehrere mesage aufgeteilt werden
-Middle Income,Middle Income
-Milestone,Meilenstein
-Milestone Date,Milestone Datum
-Milestones,Meilensteine
-Milestones will be added as Events in the Calendar,Meilensteine ​​werden die Veranstaltungen in der hinzugefügt werden
+Messages greater than 160 characters will be split into multiple messages,Nachrichten mit mehr als 160 Zeichen werden in mehrere Nachrichten aufgeteilt
+Middle Income,Mittleres Einkommen
+Milestone,Ecktermin
+Milestone Date,Ecktermin Datum
+Milestones,Ecktermine
+Milestones will be added as Events in the Calendar,Ecktermine werden als Ereignisse in den Kalender aufgenommen
 Min Order Qty,Mindestbestellmenge
 Min Qty,Mindestmenge
 Min Qty can not be greater than Max Qty,Mindestmenge nicht größer als Max Menge sein
 Minimum Amount,Mindestbetrag
-Minimum Order Qty,Minimale Bestellmenge
+Minimum Order Qty,Mindestbestellmenge
 Minute,Minute
-Misc Details,Misc Einzelheiten
+Misc Details,Sonstige Einzelheiten
 Miscellaneous Expenses,Sonstige Aufwendungen
-Miscelleneous,Miscelleneous
-Mobile No,In Mobile
-Mobile No.,Handy Nr.
+Miscelleneous,Sonstiges
+Mobile No,Mobilfunknummer
+Mobile No.,Mobilfunknr.
 Mode of Payment,Zahlungsweise
-Modern,Moderne
+Modern,Modern
 Monday,Montag
 Month,Monat
 Monthly,Monatlich
 Monthly Attendance Sheet,Monatliche Anwesenheitsliste
-Monthly Earning & Deduction,Monatlichen Einkommen &amp; Abzug
+Monthly Earning & Deduction,Monatliches Einkommen & Abzug
 Monthly Salary Register,Monatsgehalt Register
-Monthly salary statement.,Monatsgehalt Aussage.
-More Details,Mehr Details
-More Info,Mehr Info
+Monthly salary statement.,Monatliche Gehaltsabrechnung
+More Details,Weitere Details
+More Info,Mehr Informationen
 Motion Picture & Video,Motion Picture & Video
-Moving Average,Moving Average
-Moving Average Rate,Moving Average Rate
+Moving Average,Gleitender Mittelwert
+Moving Average Rate,Gleitende Mittelwertsrate
 Mr,Herr
-Ms,Ms
+Ms,Frau
 Multiple Item prices.,Mehrere Artikelpreise .
 "Multiple Price Rule exists with same criteria, please resolve \
-			conflict by assigning priority. Price Rules: {0}","Mehrere Price Rule mit gleichen Kriterien gibt, lösen Sie bitte \
- Konflikt durch Zuweisung Priorität. Preis Regeln: {0}"
+			conflict by assigning priority. Price Rules: {0}",
 Music,Musik
-Must be Whole Number,Muss ganze Zahl sein
+Must be Whole Number,Muss eine Ganzzahl sein
 Name,Name
 Name and Description,Name und Beschreibung
-Name and Employee ID,Name und Employee ID
+Name and Employee ID,Name und Personalnummer
 "Name of new Account. Note: Please don't create accounts for Customers and Suppliers, they are created automatically from the Customer and Supplier master","Name des neuen Konto . Hinweis : Bitte keine Konten für Kunden und Lieferanten zu schaffen , werden sie automatisch von der Kunden-und Lieferantenstamm angelegt"
-Name of person or organization that this address belongs to.,"Name der Person oder Organisation, dass diese Adresse gehört."
-Name of the Budget Distribution,Name der Verteilung Budget
-Naming Series,Benennen Series
+Name of person or organization that this address belongs to.,"Name der Person oder des Unternehmens, zu dem diese Adresse gehört."
+Name of the Budget Distribution,Name der Budgetverteilung
+Naming Series,Benennungsreihenfolge
 Negative Quantity is not allowed,Negative Menge ist nicht erlaubt
 Negative Stock Error ({6}) for Item {0} in Warehouse {1} on {2} {3} in {4} {5},Negative Auf Error ( {6}) für Artikel {0} in {1} Warehouse auf {2} {3} {4} in {5}
 Negative Valuation Rate is not allowed,Negative Bewertungsbetrag ist nicht erlaubt
 Negative balance in Batch {0} for Item {1} at Warehouse {2} on {3} {4},Negative Bilanz in Batch {0} für {1} Artikel bei Warehouse {2} auf {3} {4}
-Net Pay,Net Pay
-Net Pay (in words) will be visible once you save the Salary Slip.,"Net Pay (in Worten) sichtbar sein wird, sobald Sie die Gehaltsabrechnung zu speichern."
+Net Pay,Nettolohn
+Net Pay (in words) will be visible once you save the Salary Slip.,"Nettolohn (in Worten) wird angezeigt, sobald Sie die Gehaltsabrechnung speichern."
 Net Profit / Loss,Nettogewinn /-verlust
-Net Total,Total Net
-Net Total (Company Currency),Net Total (Gesellschaft Währung)
+Net Total,Nettosumme
+Net Total (Company Currency),Nettosumme (Unternehmenswährung)
 Net Weight,Nettogewicht
-Net Weight UOM,Nettogewicht UOM
+Net Weight UOM,Nettogewicht-ME
 Net Weight of each Item,Nettogewicht der einzelnen Artikel
 Net pay cannot be negative,Nettolohn kann nicht negativ sein
 Never,Nie
 New ,
 New Account,Neues Konto
 New Account Name,New Account Name
-New BOM,New BOM
-New Communications,New Communications
+New BOM,Neue Stückliste
+New Communications,Neue Nachrichten
 New Company,Neue Gesellschaft
 New Cost Center,Neue Kostenstelle
 New Cost Center Name,Neue Kostenstellennamen
-New Delivery Notes,New Delivery Notes
-New Enquiries,New Anfragen
-New Leads,New Leads
-New Leave Application,New Leave Anwendung
-New Leaves Allocated,Neue Blätter Allocated
-New Leaves Allocated (In Days),New Leaves Allocated (in Tagen)
-New Material Requests,Neues Material Requests
+New Delivery Notes,Neuer Lieferschein
+New Enquiries,Neue Anfragen
+New Leads,Neue Leads
+New Leave Application,Neuer Urlaubsantrag
+New Leaves Allocated,Neue Urlaubszuordnung
+New Leaves Allocated (In Days),Neue Urlaubszuordnung (in Tagen)
+New Material Requests,Neue Materialanfragen
 New Projects,Neue Projekte
-New Purchase Orders,New Bestellungen
-New Purchase Receipts,New Kaufbelege
-New Quotations,New Zitate
-New Sales Orders,New Sales Orders
+New Purchase Orders,Neue Bestellungen
+New Purchase Receipts,Neue Kaufbelege
+New Quotations,Neue Angebote
+New Sales Orders,Neue Kundenaufträge
 New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Neue Seriennummer kann nicht sein Warehouse. Warehouse müssen von Lizenz Eintrag oder Kaufbeleg eingestellt werden
-New Stock Entries,New Stock Einträge
-New Stock UOM,New Stock UOM
+New Stock Entries,Neue Lagerbestandseinträge
+New Stock UOM,Neue Lagerbestands-ME
 New Stock UOM is required,Neue Lizenz Verpackung erforderlich
 New Stock UOM must be different from current stock UOM,Neue Lizenz Verpackung muss sich von aktuellen Aktien Verpackung sein
-New Supplier Quotations,Neuer Lieferant Zitate
-New Support Tickets,New Support Tickets
+New Supplier Quotations,Neue Lieferantenangebote
+New Support Tickets,Neue Support-Tickets
 New UOM must NOT be of type Whole Number,Neue Verpackung darf NICHT vom Typ ganze Zahl sein
-New Workplace,New Workplace
-Newsletter,Mitteilungsblatt
-Newsletter Content,Newsletter Inhalt
-Newsletter Status,Status Newsletter
+New Workplace,Neuer Arbeitsplatz
+New {0}: #{1},
+Newsletter,Newsletter
+Newsletter Content,Newsletter-Inhalt
+Newsletter Status,Newsletter-Status
 Newsletter has already been sent,Newsletter wurde bereits gesendet
-"Newsletters to contacts, leads.",Newsletters zu Kontakten führt.
+"Newsletters to contacts, leads.","Newsletter an Kontakte, Leads"
 Newspaper Publishers,Zeitungsverleger
 Next,nächste
-Next Contact By,Von Next Kontakt
-Next Contact Date,Weiter Kontakt Datum
+Next Contact By,Nächster Kontakt durch
+Next Contact Date,Nächstes Kontaktdatum
 Next Date,Nächster Termin
-Next email will be sent on:,Weiter E-Mail wird gesendet:
-No,Auf
+Next Recurring {0} will be created on {1},
+Next email will be sent on:,Nächste E-Mail wird gesendet am:
+No,Nein
 No Customer Accounts found.,Keine Kundenkonten gefunden.
 No Customer or Supplier Accounts found,Keine Kunden-oder Lieferantenkontengefunden
-No Expense Approvers. Please assign 'Expense Approver' Role to atleast one user,"Keine Kosten Genehmiger . Bitte weisen ' Expense Genehmiger "" -Rolle an einen Benutzer atleast"
 No Item with Barcode {0},Kein Artikel mit Barcode {0}
 No Item with Serial No {0},Kein Artikel mit Seriennummer {0}
 No Items to pack,Keine Artikel zu packen
-No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user,"Keine Leave Genehmiger . Bitte weisen ' Leave Genehmiger "" -Rolle an einen Benutzer atleast"
-No Permission,In Permission
+No Permission,Keine Berechtigung
 No Production Orders created,Keine Fertigungsaufträge erstellt
+No Remarks,
 No Supplier Accounts found. Supplier Accounts are identified based on 'Master Type' value in account record.,Keine Lieferantenkontengefunden. Lieferant Konten werden basierend auf dem Wert 'Master Type' in Kontodatensatz identifiziert.
 No accounting entries for the following warehouses,Keine Buchungen für die folgenden Hallen
 No addresses created,Keine Adressen erstellt
@@ -1816,8 +1876,8 @@
 No description given,Keine Beschreibung angegeben
 No employee found,Kein Mitarbeiter gefunden
 No employee found!,Kein Mitarbeiter gefunden!
-No of Requested SMS,Kein SMS Erwünschte
-No of Sent SMS,Kein SMS gesendet
+No of Requested SMS,Anzahl angeforderter SMS
+No of Sent SMS,Anzahl abgesendeter SMS
 No of Visits,Anzahl der Besuche
 No permission,Keine Berechtigung
 No record found,Kein Eintrag gefunden
@@ -1827,169 +1887,176 @@
 Non Profit,Non-Profit-
 Nos,nos
 Not Active,Nicht aktiv
-Not Applicable,Nicht zutreffend
+Not Applicable,Nicht anwendbar
 Not Available,nicht verfügbar
-Not Billed,Nicht Billed
-Not Delivered,Nicht zugestellt
+Not Billed,Nicht abgerechnet
+Not Delivered,Nicht geliefert
+Not In Stock,
+Not Sent,
 Not Set,Nicht festgelegt
 Not allowed to update stock transactions older than {0},"Nicht erlaubt, um zu aktualisieren, Aktiengeschäfte, die älter als {0}"
 Not authorized to edit frozen Account {0},Keine Berechtigung für gefrorene Konto bearbeiten {0}
 Not authroized since {0} exceeds limits,Nicht authroized seit {0} überschreitet Grenzen
 Not permitted,Nicht zulässig
-Note,Hinweis
-Note User,Hinweis: User
-"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.","Hinweis: Backups und Dateien werden nicht von Dropbox gelöscht wird, müssen Sie sie manuell löschen."
-"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.","Hinweis: Backups und Dateien nicht von Google Drive gelöscht, müssen Sie sie manuell löschen."
+Note,Anmerkung
+Note User,Anmerkungsbenutzer
+Note is a free page where users can share documents / notes,"""Anmerkung"" ist eine kostenlose Seite, wo Benutzer Dokumente/Anmerkungen freigeben können"
+"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.",Hinweis: Backups und Dateien werden nicht von Dropbox gelöscht; Sie müssen sie manuell löschen.
+"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.",Hinweis: Backups und Dateien werden nicht von Google Drive gelöscht; Sie müssen sie manuell löschen.
 Note: Due Date exceeds the allowed credit days by {0} day(s),Hinweis: Due Date übersteigt die zulässigen Kredit Tage von {0} Tag (e)
-Note: Email will not be sent to disabled users,Hinweis: E-Mail wird nicht für behinderte Nutzer gesendet werden
+Note: Email will not be sent to disabled users,Hinweis: E-Mail wird nicht an behinderte Nutzer gesendet
 Note: Item {0} entered multiple times,Hinweis: Artikel {0} mehrfach eingegeben
 Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,"Hinweis: Zahlung Eintrag nicht da ""Cash oder Bankkonto ' wurde nicht angegeben erstellt werden"
 Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Hinweis: Das System wird nicht über Lieferung und Überbuchung überprüfen zu Artikel {0} als Menge oder die Menge ist 0
 Note: There is not enough leave balance for Leave Type {0},Hinweis: Es ist nicht genügend Urlaubsbilanz für Leave Typ {0}
 Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Hinweis: Diese Kostenstelle ist eine Gruppe. Kann nicht machen Buchungen gegen Gruppen .
 Note: {0},Hinweis: {0}
-Notes,Aufzeichnungen
+Notes,Anmerkungen
 Notes:,Hinweise:
 Nothing to request,"Nichts zu verlangen,"
 Notice (days),Unsere (Tage)
-Notification Control,Meldungssteuervorrichtung
-Notification Email Address,Benachrichtigung per E-Mail-Adresse
-Notify by Email on creation of automatic Material Request,Benachrichtigen Sie per E-Mail bei der Erstellung von automatischen Werkstoff anfordern
-Number Format,Number Format
+Notification Control,Benachrichtigungssteuerung
+Notification Email Address,Benachrichtigungs-E-Mail-Adresse
+Notify by Email on creation of automatic Material Request,Bei Erstellung einer automatischen Materialanforderung per E-Mail benachrichtigen
+Number Format,Zahlenformat
 Offer Date,Angebot Datum
-Office,Geschäftsstelle
+Office,Büro
 Office Equipments,Büro Ausstattung
 Office Maintenance Expenses,Office-Wartungskosten
 Office Rent,Büromiete
-Old Parent,Old Eltern
-On Net Total,On Net Total
-On Previous Row Amount,Auf Previous Row Betrag
-On Previous Row Total,Auf Previous Row insgesamt
+Old Parent,Alte übergeordnete Position
+On Net Total,Auf Nettosumme
+On Previous Row Amount,Auf vorherigen Zeilenbetrag
+On Previous Row Total,Auf vorherige Zeilensumme
 Online Auctions,Online-Auktionen
 Only Leave Applications with status 'Approved' can be submitted,"Nur Lassen Anwendungen mit dem Status ""Genehmigt"" eingereicht werden können"
 "Only Serial Nos with status ""Available"" can be delivered.","Nur Seriennummernmit dem Status ""Verfügbar"" geliefert werden."
-Only leaf nodes are allowed in transaction,Nur Blattknoten in Transaktion zulässig
+Only leaf nodes are allowed in transaction,In der Transaktion sind nur Blattknoten erlaubt
 Only the selected Leave Approver can submit this Leave Application,Nur der ausgewählte Datum Genehmiger können diese Urlaubsantrag einreichen
-Open,Öffnen
+Open,Offen
 Open Production Orders,Offene Fertigungsaufträge
-Open Tickets,Open Tickets
+Open Tickets,Tickets eröffnen
 Opening (Cr),Eröffnung (Cr)
 Opening (Dr),Opening ( Dr)
-Opening Date,Eröffnungsdatum
-Opening Entry,Öffnungszeiten Eintrag
+Opening Date,Öffnungsdatum
+Opening Entry,Öffnungseintrag
 Opening Qty,Öffnungs Menge
 Opening Time,Öffnungszeit
 Opening Value,Öffnungs Wert
-Opening for a Job.,Öffnung für den Job.
+Opening for a Job.,Stellenausschreibung
 Operating Cost,Betriebskosten
-Operation Description,Operation Beschreibung
-Operation No,In Betrieb
+Operation Description,Vorgangsbeschreibung
+Operation No,Vorgangsnr.
 Operation Time (mins),Betriebszeit (Min.)
 Operation {0} is repeated in Operations Table,Bedienung {0} ist in Operations Tabelle wiederholt
 Operation {0} not present in Operations Table,Bedienung {0} nicht in Operations Tabelle vorhanden
-Operations,Geschäftstätigkeit
+Operations,Vorgänge
 Opportunity,Gelegenheit
-Opportunity Date,Gelegenheit Datum
-Opportunity From,Von der Chance
-Opportunity Item,Gelegenheit Artikel
-Opportunity Items,Gelegenheit Artikel
-Opportunity Lost,Chance vertan
-Opportunity Type,Gelegenheit Typ
+Opportunity Date,Datum der Gelegenheit
+Opportunity From,Gelegenheit von
+Opportunity Item,Gelegenheitsartikel
+Opportunity Items,Gelegenheitsartikel
+Opportunity Lost,Gelegenheit verpasst
+Opportunity Type,Gelegenheitstyp
 Optional. This setting will be used to filter in various transactions.,"Optional. Diese Einstellung wird verwendet, um in verschiedenen Transaktionen zu filtern."
-Order Type,Auftragsart
+Order Type,Bestelltyp
 Order Type must be one of {0},Auftragstyp muss einer der {0}
 Ordered,Bestellt
-Ordered Items To Be Billed,Bestellte Artikel in Rechnung gestellt werden
-Ordered Items To Be Delivered,Bestellte Artikel geliefert werden
+Ordered Items To Be Billed,"Abzurechnende, bestellte Artikel"
+Ordered Items To Be Delivered,"Zu liefernde, bestellte Artikel"
 Ordered Qty,bestellte Menge
 "Ordered Qty: Quantity ordered for purchase, but not received.","Bestellte Menge: Bestellmenge für den Kauf, aber nicht empfangen ."
 Ordered Quantity,Bestellte Menge
-Orders released for production.,Bestellungen für die Produktion freigegeben.
+Orders released for production.,Für die Produktion freigegebene Bestellungen.
 Organization Name,Name der Organisation
 Organization Profile,Unternehmensprofil
 Organization branch master.,Organisation Niederlassung Master.
 Organization unit (department) master.,Organisationseinheit ( Abteilung ) Master.
-Other,Andere
+Other,Sonstige
 Other Details,Weitere Details
 Others,andere
 Out Qty,out Menge
 Out Value,out Wert
-Out of AMC,Von AMC
+Out of AMC,Außerhalb AMC
 Out of Warranty,Außerhalb der Garantie
-Outgoing,Abgehend
-Outstanding Amount,Ausstehenden Betrag
+Outgoing,Postausgang
+Outstanding Amount,Ausstehender Betrag
 Outstanding for {0} cannot be less than zero ({1}),Herausragende für {0} kann nicht kleiner als Null sein ({1})
-Overhead,Oben
+Overdue,
+Overdue: ,
+Overhead,Overhead
 Overheads,Gemeinkosten
 Overlapping conditions found between:,Overlapping Bedingungen zwischen gefunden:
 Overview,Überblick
-Owned,Besitz
+Owned,Im Besitz
 Owner,Eigentümer
 P L A - Cess Portion,PLA - Cess Portion
 PL or BS,PL oder BS
 PO Date,Bestelldatum
 PO No,PO Nein
-POP3 Mail Server,POP3 Mail Server
+POP3 Mail Server,POP3-Mail-Server
 POP3 Mail Settings,POP3-Mail-Einstellungen
-POP3 mail server (e.g. pop.gmail.com),POP3-Mail-Server (pop.gmail.com beispielsweise)
-POP3 server e.g. (pop.gmail.com),POP3-Server beispielsweise (pop.gmail.com)
-POS Setting,POS Setting
+POP3 mail server (e.g. pop.gmail.com),POP3-Mail-Server (z. B. pop.gmail.com)
+POP3 server e.g. (pop.gmail.com),POP3-Server (z. B. pop.gmail.com)
+POS,
+POS Setting,POS-Einstellung
 POS Setting required to make POS Entry,"POS -Einstellung erforderlich, um POS- Eintrag machen"
 POS Setting {0} already created for user: {1} and company {2},POS -Einstellung {0} bereits Benutzer angelegt : {1} und {2} Unternehmen
-POS View,POS anzeigen
-PR Detail,PR Detailansicht
-Package Item Details,Package Artikeldetails
-Package Items,Package Angebote
-Package Weight Details,Paket-Details Gewicht
-Packed Item,Lieferschein Verpackung Artikel
+POS View,POS-Ansicht
+PR Detail,PR-Detail
+Package Item Details,Artikeldetails zum Paket
+Package Items,Artikel im Paket
+Package Weight Details,Details Paketgewicht
+Packed Item,Verpackter Artikel
 Packed quantity must equal quantity for Item {0} in row {1},Lunch Menge muss Menge für Artikel gleich {0} in Zeile {1}
-Packing Details,Verpackungs-Details
-Packing List,Packliste
+Packing Details,Verpackungsdetails
+Packing List,Lieferschein
 Packing Slip,Packzettel
 Packing Slip Item,Packzettel Artikel
 Packing Slip Items,Packzettel Artikel
 Packing Slip(s) cancelled,Lieferschein (e) abgesagt
-Page Break,Seitenwechsel
-Page Name,Page Name
-Paid Amount,Gezahlten Betrag
+Page Break,Seitenumbruch
+Page Name,Seitenname
+Paid,bezahlt
+Paid Amount,Gezahlter Betrag
 Paid amount + Write Off Amount can not be greater than Grand Total,Bezahlte Betrag + Write Off Betrag kann nicht größer als Gesamtsumme sein
 Pair,Paar
 Parameter,Parameter
-Parent Account,Hauptkonto
-Parent Cost Center,Eltern Kostenstellenrechnung
-Parent Customer Group,Eltern Customer Group
-Parent Detail docname,Eltern Detailansicht docname
-Parent Item,Übergeordneter Artikel
-Parent Item Group,Übergeordneter Artikel Gruppe
+Parent Account,Übergeordnetes Konto
+Parent Cost Center,Übergeordnete Kostenstelle
+Parent Customer Group,Übergeordnete Kundengruppe
+Parent Detail docname,Übergeordnetes Detail Dokumentenname
+Parent Item,Übergeordnete Position
+Parent Item Group,Übergeordnete Artikelgruppe
 Parent Item {0} must be not Stock Item and must be a Sales Item,Eltern Artikel {0} muss nicht Stock Artikel sein und ein Verkaufsartikel sein
 Parent Party Type,Eltern -Party -Typ
-Parent Sales Person,Eltern Sales Person
-Parent Territory,Eltern Territory
-Parent Website Page,Eltern- Website Seite
+Parent Sales Person,Übergeordneter Verkäufer
+Parent Territory,Übergeordnete Region
 Parent Website Route,Eltern- Webseite Routen
-Parenttype,ParentType
+Parenttype,Übergeordnete Position
 Part-time,Teilzeit-
 Partially Completed,Teilweise abgeschlossen
-Partly Billed,Teilweise Billed
-Partly Delivered,Teilweise Lieferung
-Partner Target Detail,Partner Zieldetailbericht
-Partner Type,Partner Typ
-Partner's Website,Partner Website
+Partly Billed,Teilweise abgerechnet
+Partly Delivered,Teilweise geliefert
+Partner Target Detail,Partner Zieldetail
+Partner Type,Partnertyp
+Partner's Website,Webseite des Partners
 Party,Gruppe
 Party Account,Party Account
 Party Type,Party- Typ
 Party Type Name,Party- Typ Name
-Passive,Passive
+Passive,Passiv
 Passport Number,Passnummer
-Password,Kennwort
-Pay To / Recd From,Pay To / From RECD
+Password,Passwort
+Pay To / Recd From,Zahlen an/Zurücktreten von
 Payable,zahlbar
 Payables,Verbindlichkeiten
 Payables Group,Verbindlichkeiten Gruppe
 Payment Days,Zahltage
 Payment Due Date,Zahlungstermin
+Payment Pending,
 Payment Period Based On Invoice Date,Zahlungszeitraum basiert auf Rechnungsdatum
-Payment Reconciliation,Zahlung Versöhnung
+Payment Reconciliation,Zahlungsabstimmung
 Payment Reconciliation Invoice,Zahlung Versöhnung Rechnung
 Payment Reconciliation Invoices,Zahlung Versöhnung Rechnungen
 Payment Reconciliation Payment,Payment Zahlungs Versöhnung
@@ -1998,47 +2065,48 @@
 Payment cannot be made for empty cart,Die Zahlung kann nicht für leere Korb gemacht werden
 Payment of salary for the month {0} and year {1},Die Zahlung der Gehälter für den Monat {0} und {1} Jahre
 Payments,Zahlungen
-Payments Made,Zahlungen
-Payments Received,Erhaltene Anzahlungen
-Payments made during the digest period,Zahlungen während der Auszugsperiodeninformation gemacht
-Payments received during the digest period,Einzahlungen während der Auszugsperiodeninformation
+Payments Made,Getätigte Zahlungen
+Payments Received,Erhaltene Zahlungen
+Payments made during the digest period,Während des Berichtszeitraums vorgenommene Zahlungen
+Payments received during the digest period,Während des Berichtszeitraums erhaltene Zahlungen
 Payroll Settings,Payroll -Einstellungen
-Pending,Schwebend
+Pending,Ausstehend
 Pending Amount,Bis Betrag
 Pending Items {0} updated,Ausstehende Elemente {0} aktualisiert
-Pending Review,Bis Bewertung
-Pending SO Items For Purchase Request,Ausstehend SO Artikel zum Kauf anfordern
+Pending Review,Wartet auf Bewertung
+Pending SO Items For Purchase Request,SO-Artikel stehen für Einkaufsanforderung aus
 Pension Funds,Pensionsfonds
-Percent Complete,Percent Complete
 Percentage Allocation,Prozentuale Aufteilung
 Percentage Allocation should be equal to 100%,Prozentuale Aufteilung sollte gleich 100%
-Percentage variation in quantity to be allowed while receiving or delivering this item.,Prozentuale Veränderung in der Menge zu dürfen während des Empfangs oder der Lieferung diesen Artikel werden.
-Percentage you are allowed to receive or deliver more against the quantity ordered. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units.,"Prozentual Sie erlaubt zu empfangen oder zu liefern, mehr gegen die Menge bestellt werden. Zum Beispiel: Wenn Sie 100 Einheiten bestellt. und Ihre Allowance ist 10%, dann dürfen Sie 110 Einheiten erhalten."
-Performance appraisal.,Leistungsbeurteilung.
+Percentage variation in quantity to be allowed while receiving or delivering this item.,"Prozentuale Abweichung in der Menge, die beim Empfang oder bei der Lieferung dieses Artikels zulässig ist."
+Percentage you are allowed to receive or deliver more against the quantity ordered. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units.,"Zusätzlich zur bestellten Menge zulässiger Prozentsatz, der empfangen oder geliefert werden kann. Zum Beispiel: Wenn Sie 100 Einheiten bestellt haben und Ihre Spanne beträgt 10 %, dann können Sie 110 Einheiten empfangen."
+Performance appraisal.,Mitarbeiterbeurteilung
 Period,Zeit
-Period Closing Voucher,Periodenverschiebung Gutschein
+Period Closing Entry,
+Period Closing Voucher,Zeitraum Abschluss Gutschein
+Period From and Period To dates mandatory for recurring %s,
 Periodicity,Periodizität
-Permanent Address,Permanent Address
+Permanent Address,Dauerhafte Adresse
 Permanent Address Is,Permanent -Adresse ist
-Permission,Permission
-Personal,Persönliche
-Personal Details,Persönliche Details
+Permission,Berechtigung
+Personal,Persönlich
+Personal Details,Persönliche Daten
 Personal Email,Persönliche E-Mail
 Pharmaceutical,pharmazeutisch
 Pharmaceuticals,Pharmaceuticals
 Phone,Telefon
-Phone No,Phone In
+Phone No,Telefonnummer
 Piecework,Akkordarbeit
 Pincode,Pincode
 Place of Issue,Ausstellungsort
-Plan for maintenance visits.,Plan für die Wartung Besuche.
+Plan for maintenance visits.,Wartungsbesuche planen
 Planned Qty,Geplante Menge
 "Planned Qty: Quantity, for which, Production Order has been raised, but is pending to be manufactured.","Geplante Menge : Menge , für die , Fertigungsauftrag ausgelöst wurde , aber steht noch hergestellt werden ."
 Planned Quantity,Geplante Menge
 Planning,Planung
-Plant,Pflanze
+Plant,Fabrik
 Plant and Machinery,Anlagen und Maschinen
-Please Enter Abbreviation or Short Name properly as it will be added as Suffix to all Account Heads.,Bitte geben Abkürzung oder das Kurzer Name enquiry.c es auf alle Suffix Konto Heads hinzugefügt werden.
+Please Enter Abbreviation or Short Name properly as it will be added as Suffix to all Account Heads.,"Geben Sie das Kürzel oder den Kurznamen richtig ein, weil dieser als Suffix allen Kontenführern hinzugefügt wird."
 Please Update SMS Settings,Bitte aktualisiere SMS-Einstellungen
 Please add expense voucher details,Bitte fügen Sie Kosten Gutschein Details
 Please add to Modes of Payment from Setup.,Bitte um Zahlungsmodalitäten legen aus einrichten.
@@ -2058,9 +2126,9 @@
 Please enter BOM for Item {0} at row {1},Bitte geben Sie Stückliste für Artikel {0} in Zeile {1}
 Please enter Company,Bitte geben Sie Firmen
 Please enter Cost Center,Bitte geben Sie Kostenstelle
-Please enter Delivery Note No or Sales Invoice No to proceed,"Bitte geben Sie Lieferschein oder No Sales Invoice Nein, um fortzufahren"
+Please enter Delivery Note No or Sales Invoice No to proceed,"Geben Sie die Lieferschein- oder die Verkaufsrechnungsnummer ein, um fortzufahren"
 Please enter Employee Id of this sales parson,Bitte geben Sie die Mitarbeiter-ID dieses Verkaufs Pfarrer
-Please enter Expense Account,Bitte geben Sie Expense Konto
+Please enter Expense Account,Geben Sie das Aufwandskonto ein
 Please enter Item Code to get batch no,Bitte geben Sie Artikel-Code zu Charge nicht bekommen
 Please enter Item Code.,Bitte geben Sie Artikel-Code .
 Please enter Item first,Bitte geben Sie zuerst Artikel
@@ -2068,8 +2136,11 @@
 Please enter Master Name once the account is created.,"Bitte geben Sie Namen , wenn der Master- Account erstellt ."
 Please enter Planned Qty for Item {0} at row {1},Bitte geben Sie Geplante Menge für Artikel {0} in Zeile {1}
 Please enter Production Item first,Bitte geben Sie zuerst Herstellungs Artikel
-Please enter Purchase Receipt No to proceed,"Bitte geben Kaufbeleg Nein, um fortzufahren"
+Please enter Purchase Receipt No to proceed,"Geben Sie 'Kaufbeleg Nein' ein, um fortzufahren"
+Please enter Purchase Receipt first,
+Please enter Purchase Receipts,
 Please enter Reference date,Bitte geben Sie Stichtag
+Please enter Taxes and Charges,
 Please enter Warehouse for which Material Request will be raised,Bitte geben Sie für die Warehouse -Material anfordern wird angehoben
 Please enter Write Off Account,Bitte geben Sie Write Off Konto
 Please enter atleast 1 invoice in the table,Bitte geben Sie atleast 1 Rechnung in der Tabelle
@@ -2080,7 +2151,7 @@
 Please enter email address,Bitte geben Sie E-Mail -Adresse
 Please enter item details,Bitte geben Sie Artikel-Seite
 Please enter message before sending,Bitte geben Sie eine Nachricht vor dem Versenden
-Please enter parent account group for warehouse account,Bitte geben Sie Eltern Kontengruppe für Lagerkonto
+Please enter parent account group for warehouse {0},
 Please enter parent cost center,Bitte geben Sie Mutterkostenstelle
 Please enter quantity for Item {0},Bitte geben Sie Menge für Artikel {0}
 Please enter relieving date.,Bitte geben Sie Linderung Datum.
@@ -2089,15 +2160,15 @@
 Please enter valid Email Id,Bitte geben Sie eine gültige E-Mail -ID
 Please enter valid Personal Email,Bitte geben Sie eine gültige E-Mail- Personal
 Please enter valid mobile nos,Bitte geben Sie eine gültige Mobil nos
-Please find attached Sales Invoice #{0},Im Anhang finden Sie Sales Invoice # {0}
-Please install dropbox python module,Bitte installieren Sie Dropbox Python-Modul
+Please find attached {0} #{1},
+Please install dropbox python module,Installieren Sie das Dropbox-Modul Python
 Please mention no of visits required,Bitte erwähnen Sie keine Besuche erforderlich
 Please pull items from Delivery Note,Bitte ziehen Sie Elemente aus Lieferschein
 Please save the Newsletter before sending,Bitte bewahren Sie den Newsletter vor dem Senden
 Please save the document before generating maintenance schedule,Bitte speichern Sie das Dokument vor der Erzeugung Wartungsplan
 Please see attachment,S. Anhang
-Please select Bank Account,Bitte wählen Sie Bank Account
-Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,Bitte wählen Sie Carry Forward Auch wenn Sie zum vorherigen Geschäftsjahr die Blätter aufnehmen möchten zum Ausgleich in diesem Geschäftsjahr
+Please select Bank Account,Wählen Sie ein Bankkonto aus
+Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,"Klicken Sie auf 'Übertragen', wenn Sie auch die Bilanz des vorangegangenen Geschäftsjahrs in dieses Geschäftsjahr einbeziehen möchten."
 Please select Category first,Bitte wählen Sie zuerst Kategorie
 Please select Charge Type first,Bitte wählen Sie Entgeltart ersten
 Please select Fiscal Year,Bitte wählen Geschäftsjahr
@@ -2105,10 +2176,10 @@
 Please select Incharge Person's name,Bitte wählen Sie Incharge Person Name
 Please select Invoice Type and Invoice Number in atleast one row,Bitte wählen Sie Rechnungstyp und Rechnungsnummer in einer Zeile atleast
 "Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Sales BOM","Bitte wählen Sie Artikel , wo ""Ist Auf Item"" ist ""Nein"" und ""Ist Verkaufsartikel "" ist "" Ja"", und es gibt keinen anderen Vertriebsstückliste"
-Please select Price List,Bitte wählen Preisliste
+Please select Price List,Wählen Sie eine Preisliste aus
 Please select Start Date and End Date for Item {0},Bitte wählen Sie Start -und Enddatum für den Posten {0}
-Please select Time Logs.,Bitte wählen Sie Zeitprotokolle.
-Please select a csv file,Bitte wählen Sie eine CSV-Datei
+Please select Time Logs.,Wählen Sie Zeitprotokolle aus.
+Please select a csv file,Wählen Sie eine CSV-Datei aus.
 Please select a valid csv file with data,Bitte wählen Sie eine gültige CSV-Datei mit Daten
 Please select a value for {0} quotation_to {1},Bitte wählen Sie einen Wert für {0} {1} quotation_to
 "Please select an ""Image"" first","Bitte wählen Sie einen ""Bild"" erste"
@@ -2116,9 +2187,9 @@
 Please select company first,Bitte wählen Unternehmen zunächst
 Please select company first.,Bitte wählen Sie Firma .
 Please select item code,Bitte wählen Sie Artikel Code
-Please select month and year,Bitte wählen Sie Monat und Jahr
+Please select month and year,Wählen Sie Monat und Jahr aus
 Please select prefix first,Bitte wählen Sie zunächst Präfix
-Please select the document type first,Bitte wählen Sie den Dokumententyp ersten
+Please select the document type first,Wählen Sie zuerst den Dokumententyp aus
 Please select weekly off day,Bitte wählen Sie Wochen schlechten Tag
 Please select {0},Bitte wählen Sie {0}
 Please select {0} first,Bitte wählen Sie {0} zuerst
@@ -2128,48 +2199,51 @@
 Please set default Cash or Bank account in Mode of Payment {0},Bitte setzen Standard Bargeld oder Bank- Konto in Zahlungsmodus {0}
 Please set default value {0} in Company {0},Bitte setzen Standardwert {0} in Gesellschaft {0}
 Please set {0},Bitte setzen Sie {0}
-Please setup Employee Naming System in Human Resource > HR Settings,Bitte Setup Mitarbeiter Naming System in Human Resource&gt; HR Einstellungen
+Please setup Employee Naming System in Human Resource > HR Settings,Richten Sie das Mitarbeiterbenennungssystem unter Personalwesen > HR-Einstellungen ein
 Please setup numbering series for Attendance via Setup > Numbering Series,Bitte Setup Nummerierungsserie für Besucher über Setup> Nummerierung Serie
+Please setup your POS Preferences,
 Please setup your chart of accounts before you start Accounting Entries,"Bitte Einrichtung Ihrer Kontenbuchhaltung, bevor Sie beginnen Einträge"
-Please specify,Bitte geben Sie
-Please specify Company,Bitte geben Unternehmen
-Please specify Company to proceed,"Bitte geben Sie Unternehmen, um fortzufahren"
+Please specify,Geben Sie Folgendes an
+Please specify Company,Geben Sie das Unternehmen an
+Please specify Company to proceed,"Geben Sie das Unternehmen an, um fortzufahren"
 Please specify Default Currency in Company Master and Global Defaults,Bitte geben Sie Standardwährung in Unternehmen und Global Master- Defaults
-Please specify a,Bitte geben Sie eine
-Please specify a valid 'From Case No.',Bitte geben Sie eine gültige &quot;Von Fall Nr. &#39;
+Please specify a,Legen Sie Folgendes fest
+Please specify a valid 'From Case No.',Geben Sie eine gültige 'Von Fall Nr.' an
 Please specify a valid Row ID for {0} in row {1},Bitte geben Sie eine gültige Zeilen-ID für {0} in Zeile {1}
 Please specify either Quantity or Valuation Rate or both,Bitte geben Sie entweder Menge oder Bewertungs bewerten oder beide
 Please submit to update Leave Balance.,"Bitte reichen Sie zu verlassen, Bilanz zu aktualisieren."
 Plot,Grundstück
 Plot By,Grundstück von
-Point of Sale,Point of Sale
-Point-of-Sale Setting,Point-of-Sale-Einstellung
-Post Graduate,Post Graduate
-Postal,Postal
+Point of Sale,Verkaufsstelle
+Point-of-Sale Setting,Verkaufsstellen-Einstellung
+Post Graduate,Graduiert
+Postal,Post
 Postal Expenses,Post Aufwendungen
 Posting Date,Buchungsdatum
-Posting Time,Posting Zeit
+Posting Time,Buchungszeit
 Posting date and posting time is mandatory,Buchungsdatum und Buchungszeit ist obligatorisch
 Posting timestamp must be after {0},Buchungszeitmarkemuss nach {0}
-Potential opportunities for selling.,Potenzielle Chancen für den Verkauf.
+Potential Sales Deal,Mögliches Umsatzgeschäft
+Potential opportunities for selling.,Mögliche Gelegenheiten für den Verkauf.
 Preferred Billing Address,Bevorzugte Rechnungsadresse
 Preferred Shipping Address,Bevorzugte Lieferadresse
 Prefix,Präfix
-Present,Präsentieren
-Prevdoc DocType,Prevdoc DocType
-Prevdoc Doctype,Prevdoc Doctype
+Present,Gegenwart
+Prevdoc DocType,Dokumententyp Prevdoc
+Prevdoc Doctype,Dokumententyp Prevdoc
 Preview,Vorschau
 Previous,früher
-Previous Work Experience,Berufserfahrung
+Previous Work Experience,Vorherige Berufserfahrung
 Price,Preis
 Price / Discount,Preis / Rabatt
 Price List,Preisliste
-Price List Currency,Währung Preisliste
+Price List Currency,Preislistenwährung
 Price List Currency not selected,Preisliste Währung nicht ausgewählt
 Price List Exchange Rate,Preisliste Wechselkurs
-Price List Name,Preis Name
-Price List Rate,Preis List
-Price List Rate (Company Currency),Preisliste Rate (Gesellschaft Währung)
+Price List Master,Preislistenstamm
+Price List Name,Preislistenname
+Price List Rate,Preislistenrate
+Price List Rate (Company Currency),Preislistenrate (Unternehmenswährung)
 Price List master.,Preisliste Master.
 Price List must be applicable for Buying or Selling,Preisliste ist gültig für Kauf oder Verkauf sein
 Price List not selected,Preisliste nicht ausgewählt
@@ -2180,19 +2254,20 @@
 "Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Pricing-Regel wird zunächst basierend auf 'Anwenden auf' Feld, die Artikel, Artikelgruppe oder Marke sein kann, ausgewählt."
 "Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Pricing-Regel gemacht wird, überschreiben Preisliste / Rabattsatz definieren, nach bestimmten Kriterien."
 Pricing Rules are further filtered based on quantity.,Preisregeln sind weiter auf Quantität gefiltert.
-Print Format Style,Druckformat Stil
-Print Heading,Unterwegs drucken
-Print Without Amount,Drucken ohne Amount
+Print Format Style,Druckformatstil
+Print Heading,Überschrift drucken
+Print Without Amount,Drucken ohne Betrag
 Print and Stationary,Print-und Schreibwaren
 Printing and Branding,Druck-und Branding-
 Priority,Priorität
+Private,Privat
 Private Equity,Private Equity
 Privilege Leave,Privilege Leave
 Probation,Bewährung
-Process Payroll,Payroll-Prozess
+Process Payroll,Gehaltsabrechnung bearbeiten
 Produced,produziert
-Produced Quantity,Produziert Menge
-Product Enquiry,Produkt-Anfrage
+Produced Quantity,Produzierte Menge
+Product Enquiry,Produktanfrage
 Production,Produktion
 Production Order,Fertigungsauftrag
 Production Order status is {0},Fertigungsauftragsstatusist {0}
@@ -2200,94 +2275,102 @@
 Production Order {0} must be submitted,Fertigungsauftrag {0} muss vorgelegt werden
 Production Orders,Fertigungsaufträge
 Production Orders in Progress,Fertigungsaufträge
-Production Plan Item,Production Plan Artikel
-Production Plan Items,Production Plan Artikel
-Production Plan Sales Order,Production Plan Sales Order
-Production Plan Sales Orders,Production Plan Kundenaufträge
-Production Planning Tool,Production Planning-Tool
+Production Plan Item,Produktionsplan Artikel
+Production Plan Items,Produktionsplan Artikel
+Production Plan Sales Order,Produktionsplan Kundenauftrag
+Production Plan Sales Orders,Produktionsplan Kundentaufträge
+Production Planning Tool,Produktionsplanungstool
 Products,Produkte
-"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Die Produkte werden Gew.-age in Verzug Suchbegriffe sortiert werden. Mehr das Gewicht-Alter, wird das Produkt höher erscheinen in der Liste."
+"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Die Produkte werden bei der Standardsuche nach Gewicht-Alter sortiert. Je höher das Gewicht-Alter, desto weiter oben wird das Produkt in der Liste angezeigt."
 Professional Tax,Professionelle Steuer
 Profit and Loss,Gewinn-und Verlust
 Profit and Loss Statement,Gewinn-und Verlustrechnung
 Project,Projekt
 Project Costing,Projektkalkulation
-Project Details,Project Details
+Project Details,Projektdetails
 Project Manager,Project Manager
-Project Milestone,Projekt Milestone
-Project Milestones,Projektmeilensteine
-Project Name,Project Name
-Project Start Date,Projekt Startdatum
+Project Milestone,Projekt-Ecktermin
+Project Milestones,Projekt-Ecktermine
+Project Name,Projektname
+Project Start Date,Projektstartdatum
 Project Type,Projekttyp
-Project Value,Projekt Wert
-Project activity / task.,Projektaktivität / Aufgabe.
-Project master.,Projekt Meister.
-Project will get saved and will be searchable with project name given,Projekt wird gespeichert und erhalten werden durchsuchbare mit Projekt-Namen
-Project wise Stock Tracking,Projekt weise Rohteilnachführung
+Project Value,Projektwert
+Project activity / task.,Projektaktivität/Aufgabe
+Project master.,Projektstamm
+Project will get saved and will be searchable with project name given,Projekt wird gespeichert und kann unter dem Projektnamen durchsucht werden
+Project wise Stock Tracking,Projektweise Lagerbestandsverfolgung
 Project-wise data is not available for Quotation,Projekt - weise Daten nicht verfügbar Angebots
 Projected,projektiert
-Projected Qty,Prognostizierte Anzahl
+Projected Qty,Projektspezifische Menge
 Projects,Projekte
 Projects & System,Projekte & System
-Prompt for Email on Submission of,Eingabeaufforderung für E-Mail auf Vorlage von
+Projects Manager,
+Projects User,
+Prompt for Email on Submission of,Eingabeaufforderung per E-Mail bei Einreichung von
 Proposal Writing,Proposal Writing
-Provide email id registered in company,Bieten E-Mail-ID in Unternehmen registriert
+Provide email id registered in company,Geben Sie die im Unternehmen registrierte E-Mail an
 Provisional Profit / Loss (Credit),Vorläufige Gewinn / Verlust (Kredit)
-Public,Öffentlichkeit
+Public,Öffentlich
 Published on website at: {0},Veröffentlicht auf der Website unter: {0}
 Publishing,Herausgabe
-Pull sales orders (pending to deliver) based on the above criteria,"Ziehen Sie Kundenaufträge (anhängig zu liefern), basierend auf den oben genannten Kriterien"
-Purchase,Kaufen
+Pull sales orders (pending to deliver) based on the above criteria,Aufträge (deren Lieferung aussteht) entsprechend der oben genannten Kriterien ziehen
+Purchase,Einkauf
 Purchase / Manufacture Details,Kauf / Herstellung Einzelheiten
-Purchase Analytics,Kauf Analytics
-Purchase Common,Erwerb Eigener
+Purchase Analytics,Einkaufsanalyse
+Purchase Common,Einkauf Allgemein
 Purchase Details,Kaufinformationen
-Purchase Discounts,Kauf Rabatte
-Purchase Invoice,Kaufrechnung
-Purchase Invoice Advance,Advance Purchase Rechnung
-Purchase Invoice Advances,Kaufrechnung Advances
-Purchase Invoice Item,Kaufrechnung Artikel
-Purchase Invoice Trends,Kauf Rechnung Trends
+Purchase Discounts,Einkaufsrabatte
+Purchase Invoice,Einkaufsrechnung
+Purchase Invoice Advance,Einkaufsrechnung Vorschuss
+Purchase Invoice Advances,Einkaufsrechnung Vorschüsse
+Purchase Invoice Item,Rechnungsposition Einkauf
+Purchase Invoice Trends,Einkauf Rechnungstrends
 Purchase Invoice {0} is already submitted,Einkaufsrechnung {0} ist bereits eingereicht
-Purchase Order,Auftragsbestätigung
+Purchase Item,
+Purchase Manager,
+Purchase Master Manager,
+Purchase Order,Bestellung
 Purchase Order Item,Bestellposition
-Purchase Order Item No,In der Bestellposition
+Purchase Order Item No,Bestellposition Nr.
 Purchase Order Item Supplied,Bestellposition geliefert
 Purchase Order Items,Bestellpositionen
-Purchase Order Items Supplied,Bestellung Lieferumfang
-Purchase Order Items To Be Billed,Bestellpositionen in Rechnung gestellt werden
-Purchase Order Items To Be Received,Bestellpositionen empfangen werden
-Purchase Order Message,Purchase Order Nachricht
+Purchase Order Items Supplied,Gelieferte Bestellpositionen
+Purchase Order Items To Be Billed,Abzurechnende Bestellpositionen
+Purchase Order Items To Be Received,Eingehende Bestellpositionen
+Purchase Order Message,Bestellung Nachricht
 Purchase Order Required,Bestellung erforderlich
-Purchase Order Trends,Purchase Order Trends
+Purchase Order Trends,Bestellungstrends
 Purchase Order number required for Item {0},Auftragsnummer für den Posten erforderlich {0}
 Purchase Order {0} is 'Stopped',"Purchase Order {0} ""Kasse"""
 Purchase Order {0} is not submitted,Bestellung {0} ist nicht eingereicht
-Purchase Orders given to Suppliers.,Bestellungen Angesichts zu Lieferanten.
+Purchase Orders given to Suppliers.,An Lieferanten weitergegebene Bestellungen.
 Purchase Receipt,Kaufbeleg
-Purchase Receipt Item,Kaufbeleg Artikel
-Purchase Receipt Item Supplied,Kaufbeleg Liefergegenstand
-Purchase Receipt Item Supplieds,Kaufbeleg Artikel Supplieds
+Purchase Receipt Item,Kaufbelegposition
+Purchase Receipt Item Supplied,Kaufbeleg gelieferter Artikel
+Purchase Receipt Item Supplieds,Kaufbeleg gelieferte Artikel
 Purchase Receipt Items,Kaufbeleg Artikel
 Purchase Receipt Message,Kaufbeleg Nachricht
-Purchase Receipt No,Kaufbeleg
-Purchase Receipt Required,Kaufbeleg erforderlich
+Purchase Receipt No,Kaufbeleg Nr.
+Purchase Receipt Required,Kaufbeleg Erforderlich
 Purchase Receipt Trends,Kaufbeleg Trends
+Purchase Receipt must be submitted,
 Purchase Receipt number required for Item {0},Kaufbeleg Artikelnummer für erforderlich {0}
 Purchase Receipt {0} is not submitted,Kaufbeleg {0} ist nicht eingereicht
-Purchase Register,Erwerben Registrieren
-Purchase Return,Kauf zurückgeben
-Purchase Returned,Kehrte Kauf
-Purchase Taxes and Charges,Purchase Steuern und Abgaben
-Purchase Taxes and Charges Master,Steuern und Gebühren Meister Kauf
+Purchase Receipts,
+Purchase Register,Einkaufsregister
+Purchase Return,Warenrücksendung
+Purchase Returned,Zurückgegebene Ware
+Purchase Taxes and Charges,Einkauf Steuern und Abgaben
+Purchase Taxes and Charges Master,Einkaufssteuern und Abgabenstamm
+Purchase User,
 Purchse Order number required for Item {0},Purchse Bestellnummer für Artikel erforderlich {0}
 Purpose,Zweck
 Purpose must be one of {0},Zweck muss man von {0}
-QA Inspection,QA Inspection
-Qty,Menge
-Qty Consumed Per Unit,Menge pro verbrauchter
-Qty To Manufacture,Um Qty Herstellung
-Qty as per Stock UOM,Menge pro dem Stock UOM
+QA Inspection,QA-Inspektion
+Qty,Mng
+Qty Consumed Per Unit,Verbrauchte Menge pro Einheit
+Qty To Manufacture,Herzustellende Menge
+Qty as per Stock UOM,Menge nach Bestand-ME
 Qty to Deliver,Menge zu liefern
 Qty to Order,Menge zu bestellen
 Qty to Receive,Menge zu erhalten
@@ -2295,157 +2378,161 @@
 Qualification,Qualifikation
 Quality,Qualität
 Quality Inspection,Qualitätsprüfung
-Quality Inspection Parameters,Qualitätsprüfung Parameter
-Quality Inspection Reading,Qualitätsprüfung Lesen
-Quality Inspection Readings,Qualitätsprüfung Readings
+Quality Inspection Parameters,Qualitätsprüfungsparameter
+Quality Inspection Reading,Qualitätsprüfung Ablesen
+Quality Inspection Readings,Qualitätsprüfung Ablesungen
 Quality Inspection required for Item {0},Qualitätsprüfung für den Posten erforderlich {0}
 Quality Management,Qualitätsmanagement
+Quality Manager,
 Quantity,Menge
-Quantity Requested for Purchase,Beantragten Menge für Kauf
-Quantity and Rate,Menge und Preis
-Quantity and Warehouse,Menge und Warehouse
+Quantity Requested for Purchase,Erforderliche Menge für Einkauf
+Quantity and Rate,Menge und Rate
+Quantity and Warehouse,Menge und Warenlager
 Quantity cannot be a fraction in row {0},Menge kann nicht ein Bruchteil in Zeile {0}
 Quantity for Item {0} must be less than {1},Menge Artikel für {0} muss kleiner sein als {1}
 Quantity in row {0} ({1}) must be same as manufactured quantity {2},Menge in Zeile {0} ( {1}) muss die gleiche sein wie hergestellte Menge {2}
-Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Anzahl der Artikel nach der Herstellung / Umpacken vom Angesichts quantities von Rohstoffen Erhalten
+Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Menge eines Artikels nach der Herstellung / Menge durch Umpacken von bestimmten Mengen an Rohstoffen
 Quantity required for Item {0} in row {1},Menge Artikel für erforderlich {0} in Zeile {1}
 Quarter,Quartal
-Quarterly,Vierteljährlich
+Quarterly,Quartalsweise
 Quick Help,schnelle Hilfe
-Quotation,Zitat
-Quotation Item,Zitat Artikel
+Quotation,Angebot
+Quotation Item,Angebotsposition
 Quotation Items,Angebotspositionen
-Quotation Lost Reason,Zitat Passwort Reason
-Quotation Message,Quotation Nachricht
-Quotation To,Um Angebot
+Quotation Lost Reason,Angebot verloren Grund
+Quotation Message,Angebotsnachricht
+Quotation To,Angebot an
 Quotation Trends,Zitat Trends
 Quotation {0} is cancelled,Zitat {0} wird abgebrochen
 Quotation {0} not of type {1},Zitat {0} nicht vom Typ {1}
-Quotations received from Suppliers.,Zitate von Lieferanten erhalten.
-Quotes to Leads or Customers.,Zitate oder Leads zu Kunden.
-Raise Material Request when stock reaches re-order level,"Heben Anfrage Material erreicht, wenn der Vorrat re-order-Ebene"
-Raised By,Raised By
-Raised By (Email),Raised By (E-Mail)
+Quotations received from Suppliers.,Angebote von Lieferanten
+Quotes to Leads or Customers.,Angebote an Leads oder Kunden.
+Raise Material Request when stock reaches re-order level,"Materialanforderung starten, wenn Vorrat den Stand für Nachbestellung erreicht"
+Raised By,Erhoben durch
+Raised By (Email),Erhoben durch (E-Mail)
 Random,Zufällig
-Range,Reichweite
-Rate,Rate
+Range,Bandbreite
+Rate,Kurs
 Rate ,Rate
 Rate (%),Rate ( %)
-Rate (Company Currency),Rate (Gesellschaft Währung)
-Rate Of Materials Based On,Rate Of Materialien auf Basis von
-Rate and Amount,Geschwindigkeit und Menge
-Rate at which Customer Currency is converted to customer's base currency,"Kunden Rate, mit der Währung wird nach Kundenwunsch Basiswährung umgerechnet"
-Rate at which Price list currency is converted to company's base currency,"Geschwindigkeit, mit der Währung der Preisliste zu Unternehmen der Basiswährung umgewandelt wird"
-Rate at which Price list currency is converted to customer's base currency,"Geschwindigkeit, mit der Währung der Preisliste des Kunden Basiswährung umgewandelt wird"
-Rate at which customer's currency is converted to company's base currency,"Rate, mit der Kunden Währung ist an Unternehmen Basiswährung umgerechnet"
-Rate at which supplier's currency is converted to company's base currency,"Geschwindigkeit, mit der Lieferanten Währung Unternehmens Basiswährung umgewandelt wird"
-Rate at which this tax is applied,"Geschwindigkeit, mit der dieser Steuer an"
+Rate (Company Currency),Kurs (Unternehmenswährung)
+Rate Of Materials Based On,Rate der zu Grunde liegenden Materialien
+Rate and Amount,Kurs und Menge
+Rate at which Customer Currency is converted to customer's base currency,"Kurs, zu dem die Kundenwährung in die Basiswährung des Kunden umgerechnet wird"
+Rate at which Price list currency is converted to company's base currency,"Kurs, zu dem die Preislistenwährung in die Basiswährung des Unternehmens umgerechnet wird"
+Rate at which Price list currency is converted to customer's base currency,"Kurs, zu dem die Preislistenwährung in die Basiswährung des Kunden umgerechnet wird"
+Rate at which customer's currency is converted to company's base currency,"Kurs, zu dem die Kundenwährung in die Basiswährung des Kunden umgerechnet wird"
+Rate at which supplier's currency is converted to company's base currency,"Kurs, zu dem die Lieferantenwährung in die Basiswährung des Unternehmens umgerechnet wird"
+Rate at which this tax is applied,"Kurs, zu dem dieser Steuersatz angewendet wird"
 Raw Material,Rohstoff
-Raw Material Item Code,Artikel Raw Material Code
-Raw Materials Supplied,Rohstoffe verfügbar
-Raw Materials Supplied Cost,Kostengünstige Rohstoffe geliefert
+Raw Material Item Code,Artikelcode Rohstoffe
+Raw Materials Supplied,Gelieferte Rohstoffe
+Raw Materials Supplied Cost,Kosten gelieferter Rohstoffe
 Raw material cannot be same as main Item,Raw Material nicht wie Haupt Titel
-Re-Order Level,Re-Order Stufe
-Re-Order Qty,Re-Order Menge
-Re-order,Re-Order
-Re-order Level,Re-Order-Ebene
-Re-order Qty,Re-Bestellung Menge
+Re-Order Level,Nachbestellungsebene
+Re-Order Qty,Nachbestellungsmenge
+Re-order,Nachbestellung
+Re-order Level,Nachbestellungsebene
+Re-order Qty,Nachbestellungsmenge
 Read,Lesen
-Reading 1,Reading 1
-Reading 10,Lesen 10
-Reading 2,Reading 2
-Reading 3,Reading 3
-Reading 4,Reading 4
-Reading 5,Reading 5
-Reading 6,Lesen 6
-Reading 7,Lesen 7
-Reading 8,Lesen 8
-Reading 9,Lesen 9
+Reading 1,Ablesung 1
+Reading 10,Ablesung 10
+Reading 2,Ablesung 2
+Reading 3,Ablesung 3
+Reading 4,Ablesung 4
+Reading 5,Ablesung 5
+Reading 6,Ablesung 6
+Reading 7,Ablesung 7
+Reading 8,Ablesung 8
+Reading 9,Ablesung 9
 Real Estate,Immobilien
 Reason,Grund
 Reason for Leaving,Grund für das Verlassen
-Reason for Resignation,Grund zur Resignation
+Reason for Resignation,Grund für Rücktritt
 Reason for losing,Grund für den Verlust
-Recd Quantity,Menge RECD
+Recd Quantity,Zurückgegebene Menge
 Receivable,Forderungen
-Receivable / Payable account will be identified based on the field Master Type,Forderungen / Verbindlichkeiten Konto wird basierend auf dem Feld Meister Typ identifiziert werden
+Receivable / Payable account will be identified based on the field Master Type,Debitoren-/Kreditorenkonto wird auf der Grundlage des Feld-Stammtyps identifiziert
 Receivables,Forderungen
 Receivables / Payables,Forderungen / Verbindlichkeiten
-Receivables Group,Forderungen Gruppe
-Received Date,Datum empfangen
-Received Items To Be Billed,Empfangene Nachrichten in Rechnung gestellt werden
-Received Qty,Erhaltene Menge
-Received and Accepted,Erhalten und angenommen
-Receiver List,Receiver Liste
+Receivables Group,Forderungen-Gruppe
+Received,Received
+Received Date,Empfangsdatum
+Received Items To Be Billed,"Empfangene Artikel, die in Rechnung gestellt werden"
+Received Qty,Empfangene Menge
+Received and Accepted,Empfangen und angenommen
+Receiver List,Empfängerliste
 Receiver List is empty. Please create Receiver List,Empfängerliste ist leer. Bitte erstellen Sie Empfängerliste
-Receiver Parameter,Empfänger Parameter
+Receiver Parameter,Empfängerparameter
 Recipients,Empfänger
 Reconcile,versöhnen
-Reconciliation Data,Datenabgleich
-Reconciliation HTML,HTML Versöhnung
-Reconciliation JSON,Überleitung JSON
-Record item movement.,Notieren Sie Artikel Bewegung.
-Recurring Id,Wiederkehrende Id
+Reconciliation Data,Tilgungsdatum
+Reconciliation HTML,Tilgung HTML
+Reconciliation JSON,Tilgung JSON
+Record item movement.,Verschiebung Datenposition
+Recurring Id,Wiederkehrende ID
 Recurring Invoice,Wiederkehrende Rechnung
-Recurring Type,Wiederkehrende Typ
-Reduce Deduction for Leave Without Pay (LWP),Reduzieren Abzug für unbezahlten Urlaub (LWP)
-Reduce Earning for Leave Without Pay (LWP),Reduzieren Sie verdienen für unbezahlten Urlaub (LWP)
+Recurring Order,
+Recurring Type,Wiederkehrender Typ
+Reduce Deduction for Leave Without Pay (LWP),Abzug für unbezahlten Urlaub (LWP) senken
+Reduce Earning for Leave Without Pay (LWP),Verdienst für unbezahlten Urlaub (LWP) senken
 Ref,Ref.
-Ref Code,Ref Code
-Ref SQ,Ref SQ
+Ref Code,Ref-Code
+Ref SQ,Ref-SQ
 Reference,Referenz
 Reference #{0} dated {1},Referenz # {0} vom {1}
-Reference Date,Stichtag
-Reference Name,Reference Name
+Reference Date,Referenzdatum
+Reference Name,Referenzname
 Reference No & Reference Date is required for {0},Referenz Nr & Stichtag ist erforderlich für {0}
 Reference No is mandatory if you entered Reference Date,"Referenznummer ist obligatorisch, wenn Sie Stichtag eingegeben"
-Reference Number,Reference Number
+Reference Number,Referenznummer
 Reference Row #,Referenz Row #
-Refresh,Erfrischen
-Registration Details,Registrierung Details
-Registration Info,Registrierung Info
+Refresh,Aktualisieren
+Registration Details,Details zur Anmeldung
+Registration Info,Anmeldungsinfo
 Rejected,Abgelehnt
-Rejected Quantity,Abgelehnt Menge
-Rejected Serial No,Abgelehnt Serial In
-Rejected Warehouse,Abgelehnt Warehouse
+Rejected Quantity,Abgelehnte Menge
+Rejected Serial No,Abgelehnte Seriennummer
+Rejected Warehouse,Abgelehntes Warenlager
 Rejected Warehouse is mandatory against regected item,Abgelehnt Warehouse ist obligatorisch gegen regected Artikel
-Relation,Relation
-Relieving Date,Entlastung Datum
+Relation,Beziehung
+Relieving Date,Ablösedatum
 Relieving Date must be greater than Date of Joining,Entlastung Datum muss größer sein als Datum für Füge sein
 Remark,Bemerkung
 Remarks,Bemerkungen
-Remarks Custom,Bemerkungen Custom
+Remove item if charges is not applicable to that item,
 Rename,umbenennen
-Rename Log,Benennen Anmelden
-Rename Tool,Umbenennen-Tool
+Rename Log,Protokoll umbenennen
+Rename Tool,Tool umbenennen
 Rent Cost,Mieten Kosten
 Rent per hour,Miete pro Stunde
 Rented,Gemietet
-Repeat on Day of Month,Wiederholen Sie auf Tag des Monats
+Repeat on Day of Month,Wiederholen am Tag des Monats
 Replace,Ersetzen
-Replace Item / BOM in all BOMs,Ersetzen Item / BOM in allen Stücklisten
+Replace Item / BOM in all BOMs,Artikel/Stückliste in allen Stücklisten ersetzen
+"Replace a particular BOM in all other BOMs where it is used. It will replace the old BOM link, update cost and regenerate ""BOM Explosion Item"" table as per new BOM","Eine bestimmte Stückliste in allen anderen Stücklisten austauschen, in denen sie eingesetzt. Ersetzt den alten Stücklisten-Link, aktualisiert Kosten und erstellt die Tabelle ""Stücklistenerweiterung Artikel"" nach der neuen Stückliste"
 Replied,Beantwortet
-Report Date,Report Date
-Report Type,Melden Typ
+Report Date,Berichtsdatum
+Report Type,Berichtstyp
 Report Type is mandatory,Berichtstyp ist verpflichtend
 Reports to,Berichte an
-Reqd By Date,Reqd Nach Datum
+Reqd By Date,Erf nach Datum
 Reqd by Date,Reqd nach Datum
-Request Type,Art der Anfrage
-Request for Information,Request for Information
-Request for purchase.,Ankaufsgesuch.
+Request Type,Anfragetyp
+Request for Information,Informationsanfrage
+Request for purchase.,Einkaufsanfrage
 Requested,Angeforderte
 Requested For,Für Anfrage
-Requested Items To Be Ordered,Erwünschte Artikel bestellt werden
-Requested Items To Be Transferred,Erwünschte Objekte übertragen werden
+Requested Items To Be Ordered,"Angeforderte Artikel, die bestellt werden sollen"
+Requested Items To Be Transferred,"Angeforderte Artikel, die übertragen werden sollen"
 Requested Qty,Angeforderte Menge
 "Requested Qty: Quantity requested for purchase, but not ordered.","Angeforderte Menge : Menge für den Kauf erbeten, aber nicht bestellt ."
-Requests for items.,Anfragen für Einzelteile.
-Required By,Erforderliche By
-Required Date,Erforderlich Datum
-Required Qty,Erwünschte Stückzahl
-Required only for sample item.,Nur erforderlich für die Probe Element.
-Required raw materials issued to the supplier for producing a sub - contracted item.,Erforderliche Rohstoffe Ausgestellt an den Lieferanten produziert eine sub - Vertragsgegenstand.
+Requests for items.,Artikelanfragen
+Required By,Erforderlich nach
+Required Date,Erforderliches Datum
+Required Qty,Erforderliche Anzahl
+Required only for sample item.,Nur erforderlich für Probenartikel.
+Required raw materials issued to the supplier for producing a sub - contracted item.,"Erforderliche Rohstoffe, die an den Zulieferer zur Herstellung eines beauftragten Artikels ausgeliefert wurden."
 Research,Forschung
 Research & Development,Forschung & Entwicklung
 Researcher,Forscher
@@ -2453,221 +2540,223 @@
 Reserved,reserviert
 Reserved Qty,reservierte Menge
 "Reserved Qty: Quantity ordered for sale, but not delivered.","Reservierte Menge: bestellte Menge zu verkaufen, aber nicht geliefert ."
-Reserved Quantity,Reserviert Menge
-Reserved Warehouse,Warehouse Reserved
-Reserved Warehouse in Sales Order / Finished Goods Warehouse,Reserviert Warehouse in Sales Order / Fertigwarenlager
-Reserved Warehouse is missing in Sales Order,Reserviert Warehouse ist in Sales Order fehlt
+Reserved Quantity,Reservierte Menge
+Reserved Warehouse,Reserviertes Warenlager
+Reserved Warehouse in Sales Order / Finished Goods Warehouse,Reserviertes Warenlager in Kundenauftrag / Fertigwarenlager
+Reserved Warehouse is missing in Sales Order,Reserviertes Warenlager fehlt in Kundenauftrag
 Reserved Warehouse required for stock Item {0} in row {1},Reserviert Lagerhaus Lager Artikel erforderlich {0} in Zeile {1}
 Reserved warehouse required for stock item {0},Reserviert Lager für Lagerware erforderlich {0}
 Reserves and Surplus,Rücklagen und Überschüsse
 Reset Filters,Filter zurücksetzen
-Resignation Letter Date,Rücktrittsschreiben Datum
+Resignation Letter Date,Kündigungsschreiben Datum
 Resolution,Auflösung
-Resolution Date,Resolution Datum
-Resolution Details,Auflösung Einzelheiten
+Resolution Date,Auflösung Datum
+Resolution Details,Auflösungsdetails
 Resolved By,Gelöst von
 Rest Of The World,Rest der Welt
 Retail,Einzelhandel
 Retail & Wholesale,Retail & Wholesale
 Retailer,Einzelhändler
-Review Date,Bewerten Datum
-Rgt,Rgt
-Role Allowed to edit frozen stock,Rolle erlaubt den gefrorenen bearbeiten
-Role that is allowed to submit transactions that exceed credit limits set.,"Rolle, die erlaubt, Transaktionen, die Kreditlimiten gesetzt überschreiten vorlegen wird."
+Review Date,Bewertung
+Rgt,Rt
+Role Allowed to edit frozen stock,Rolle darf eingefrorenen Bestand bearbeiten
+Role that is allowed to submit transactions that exceed credit limits set.,"Rolle darf Transaktionen einreichen, die das gesetzte Kreditlimit überschreiten."
 Root Type,root- Typ
 Root Type is mandatory,Root- Typ ist obligatorisch
 Root account can not be deleted,Root-Konto kann nicht gelöscht werden
 Root cannot be edited.,Wurzel kann nicht bearbeitet werden.
-Root cannot have a parent cost center,Wurzel kann kein übergeordnetes Kostenstelle
+Root cannot have a parent cost center,Stamm darf keine übergeordnete Kostenstelle haben
 Rounded Off,abgerundet
-Rounded Total,Abgerundete insgesamt
-Rounded Total (Company Currency),Abgerundete Total (Gesellschaft Währung)
+Rounded Total,Abgerundete Gesamtsumme
+Rounded Total (Company Currency),Abgerundete Gesamtsumme (Unternehmenswährung)
 Row # ,Zeile #
 Row # {0}: ,
-Row #{0}: Ordered qty can not less than item's minimum order qty (defined in item master).,Row # {0}: Bestellmenge kann nicht weniger als Mindestbestellmenge Elements (in Artikelstamm definiert).
 Row #{0}: Please specify Serial No for Item {1},Row # {0}: Bitte Seriennummer für Artikel {1}
 "Row {0}: Account does not match with \
-						Purchase Invoice Credit To account","Row {0}: \
- Einkaufsrechnung dem Konto Konto nicht mit überein"
+						Purchase Invoice Credit To account",
 "Row {0}: Account does not match with \
-						Sales Invoice Debit To account","Row {0}: \
- Sales Invoice Debit Zur Account Konto nicht mit überein"
+						Sales Invoice Debit To account",
 Row {0}: Conversion Factor is mandatory,Row {0}: Umrechnungsfaktor ist obligatorisch
 Row {0}: Credit entry can not be linked with a Purchase Invoice,Row {0} : Kredit Eintrag kann nicht mit einer Einkaufsrechnung verknüpft werden
 Row {0}: Debit entry can not be linked with a Sales Invoice,Row {0} : Debit- Eintrag kann nicht mit einer Verkaufsrechnung verknüpft werden
 Row {0}: Payment amount must be less than or equals to invoice outstanding amount. Please refer Note below.,Row {0}: Zahlungsbetrag muss kleiner als oder gleich zu ausstehenden Betrag in Rechnung stellen können. Bitte beachten Sie folgenden Hinweis.
 Row {0}: Qty is mandatory,Row {0}: Menge ist obligatorisch
 "Row {0}: Qty not avalable in warehouse {1} on {2} {3}.
-					Available Qty: {4}, Transfer Qty: {5}","Row {0}: Menge nicht in der Lager Avalable {1} auf {2} {3}.
- Verfügbare Stückzahl: {4}, Transfer Stück: {5}"
+					Available Qty: {4}, Transfer Qty: {5}",
 "Row {0}: To set {1} periodicity, difference between from and to date \
-						must be greater than or equal to {2}","Row {0}: Um {1} Periodizität Unterschied zwischen von und nach Datum \
- muss größer als oder gleich sein {2}"
+						must be greater than or equal to {2}",
 Row {0}:Start Date must be before End Date,Row {0}: Startdatum muss vor dem Enddatum liegen
 Rules for adding shipping costs.,Regeln für das Hinzufügen von Versandkosten.
 Rules for applying pricing and discount.,Regeln für die Anwendung von Preis-und Rabatt .
-Rules to calculate shipping amount for a sale,Regeln zum Versand Betrag für einen Verkauf berechnen
+Rules to calculate shipping amount for a sale,Regeln zum Berechnen des Versandbetrags für einen Verkauf
 S.O. No.,S.O. Nein.
 SHE Cess on Excise,SHE Cess Verbrauch
 SHE Cess on Service Tax,SHE Cess auf Service Steuer
 SHE Cess on TDS,SHE Cess auf TDS
-SMS Center,SMS Center
-SMS Gateway URL,SMS Gateway URL
-SMS Log,SMS Log
-SMS Parameter,SMS Parameter
-SMS Sender Name,SMS Absender Name
+SMS Center,SMS-Center
+SMS Gateway URL,SMS-Gateway-URL
+SMS Log,SMS-Protokoll
+SMS Parameter,SMS-Parameter
+SMS Sender Name,SMS-Absendername
 SMS Settings,SMS-Einstellungen
-SO Date,SO Datum
-SO Pending Qty,SO Pending Menge
+SO Date,SO-Datum
+SO Pending Qty,SO Ausstehende Menge
 SO Qty,SO Menge
 Salary,Gehalt
-Salary Information,Angaben über den Lohn
-Salary Manager,Manager Gehalt
-Salary Mode,Gehalt Modus
+Salary Information,Gehaltsinformationen
+Salary Manager,Gehaltsmanager
+Salary Mode,Gehaltsmodus
 Salary Slip,Gehaltsabrechnung
-Salary Slip Deduction,Lohnabzug Rutsch
-Salary Slip Earning,Earning Gehaltsabrechnung
+Salary Slip Deduction,Gehaltsabrechnung Abzug
+Salary Slip Earning,Gehaltsabrechnung Verdienst
 Salary Slip of employee {0} already created for this month,Gehaltsabrechnung der Mitarbeiter {0} bereits für diesen Monat erstellt
 Salary Structure,Gehaltsstruktur
 Salary Structure Deduction,Gehaltsstruktur Abzug
-Salary Structure Earning,Earning Gehaltsstruktur
-Salary Structure Earnings,Ergebnis Gehaltsstruktur
-Salary breakup based on Earning and Deduction.,Gehalt Trennung auf die Ertragskraft und Deduktion basiert.
-Salary components.,Gehaltsbestandteile.
+Salary Structure Earning,Gehaltsstruktur Verdienst
+Salary Structure Earnings,Gehaltsstruktur Verdienst
+Salary breakup based on Earning and Deduction.,Gehaltsaufteilung nach Verdienst und Abzug.
+Salary components.,Gehaltskomponenten
 Salary template master.,Gehalt Master -Vorlage .
 Sales,Vertrieb
-Sales Analytics,Sales Analytics
-Sales BOM,Vertrieb BOM
-Sales BOM Help,Vertrieb BOM Hilfe
-Sales BOM Item,Vertrieb Stücklistenposition
-Sales BOM Items,Vertrieb Stücklistenpositionen
+Sales Analytics,Vertriebsanalyse
+Sales BOM,Verkaufsstückliste
+Sales BOM Help,Verkaufsstückliste Hilfe
+Sales BOM Item,Verkaufsstücklistenposition
+Sales BOM Items,Verkaufsstücklistenpositionen
 Sales Browser,Verkauf Browser
-Sales Details,Sales Details
-Sales Discounts,Sales Rabatte
+Sales Details,Verkaufsdetails
+Sales Discounts,Verkaufsrabatte
 Sales Email Settings,Vertrieb E-Mail-Einstellungen
 Sales Expenses,Vertriebskosten
 Sales Extras,Verkauf Extras
 Sales Funnel,Sales Funnel
-Sales Invoice,Sales Invoice
-Sales Invoice Advance,Sales Invoice Geleistete
-Sales Invoice Item,Sales Invoice Artikel
-Sales Invoice Items,Sales Invoice Artikel
-Sales Invoice Message,Sales Invoice Nachricht
-Sales Invoice No,Sales Invoice In
-Sales Invoice Trends,Sales Invoice Trends
+Sales Invoice,Verkaufsrechnung
+Sales Invoice Advance,Verkaufsrechnung Vorschuss
+Sales Invoice Item,Verkaufsrechnungsposition
+Sales Invoice Items,Verkaufsrechnungspositionen
+Sales Invoice Message,Verkaufsrechnungsnachricht
+Sales Invoice No,Verkaufsrechnung Nr.
+Sales Invoice Trends,Verkaufsrechnungstrends
 Sales Invoice {0} has already been submitted,Sales Invoice {0} wurde bereits eingereicht
 Sales Invoice {0} must be cancelled before cancelling this Sales Order,Sales Invoice {0} muss vor Streichung dieses Sales Order storniert werden
-Sales Order,Sales Order
-Sales Order Date,Sales Order Datum
+Sales Item,
+Sales Manager,
+Sales Master Manager,
+Sales Order,Auftrag
+Sales Order Date,Auftragsdatum
 Sales Order Item,Auftragsposition
-Sales Order Items,Kundenauftragspositionen
-Sales Order Message,Sales Order Nachricht
-Sales Order No,In Sales Order
-Sales Order Required,Sales Order erforderlich
+Sales Order Items,Auftragspositionen
+Sales Order Message,Auftragsnachricht
+Sales Order No,Auftragsnr.
+Sales Order Required,Erforderlicher Auftrag
 Sales Order Trends,Sales Order Trends
 Sales Order required for Item {0},Sales Order für den Posten erforderlich {0}
 Sales Order {0} is not submitted,Sales Order {0} ist nicht eingereicht
 Sales Order {0} is not valid,Sales Order {0} ist nicht gültig
 Sales Order {0} is stopped,Sales Order {0} gestoppt
 Sales Partner,Vertriebspartner
-Sales Partner Name,Sales Partner Name
-Sales Partner Target,Partner Sales Target
-Sales Partners Commission,Vertriebspartner Kommission
-Sales Person,Sales Person
-Sales Person Name,Sales Person Vorname
+Sales Partner Name,Vertriebspartnername
+Sales Partner Target,Vertriebspartner Ziel
+Sales Partners Commission,Vertriebspartner-Kommission
+Sales Person,Vertriebsmitarbeiter
+Sales Person Name,Vertriebsmitarbeitername
 Sales Person Target Variance Item Group-Wise,Sales Person ZielabweichungsartikelgruppeWise -
-Sales Person Targets,Sales Person Targets
-Sales Person-wise Transaction Summary,Sales Person-wise Transaction Zusammenfassung
-Sales Register,Verkäufe registrieren
-Sales Return,Umsatzrendite
+Sales Person Targets,Vertriebsmitarbeiter Ziele
+Sales Person-wise Transaction Summary,Vertriebsmitarbeiterweise Zusammenfassung der Transaktion
+Sales Register,Vertriebsregister
+Sales Return,Absatzertrag
 Sales Returned,Verkaufszurück
-Sales Taxes and Charges,Vertrieb Steuern und Abgaben
-Sales Taxes and Charges Master,Vertrieb Steuern und Abgaben Meister
-Sales Team,Sales Team
-Sales Team Details,Sales Team Details
-Sales Team1,Vertrieb Team1
-Sales and Purchase,Verkauf und Kauf
+Sales Taxes and Charges,Umsatzsteuern und Abgaben
+Sales Taxes and Charges Master,Umsatzsteuern und Abgabenstamm
+Sales Team,Verkaufsteam
+Sales Team Details,Verkaufsteamdetails
+Sales Team1,Verkaufsteam1
+Sales User,
+Sales and Purchase,Verkauf und Einkauf
 Sales campaigns.,Vertriebskampagnen.
-Salutation,Gruß
+Salutation,Anrede
 Sample Size,Stichprobenumfang
-Sanctioned Amount,Sanktioniert Betrag
+Sanctioned Amount,Sanktionierter Betrag
 Saturday,Samstag
-Schedule,Planen
+Schedule,Zeitplan
 Schedule Date,Termine Datum
-Schedule Details,Termine Details
+Schedule Details,Zeitplandetails
 Scheduled,Geplant
-Scheduled Date,Voraussichtlicher
+Scheduled Date,Geplantes Datum
 Scheduled to send to {0},Planmäßig nach an {0}
 Scheduled to send to {0} recipients,Planmäßig nach {0} Empfänger senden
 Scheduler Failed Events,Scheduler fehlgeschlagen Events
-School/University,Schule / Universität
-Score (0-5),Score (0-5)
-Score Earned,Ergebnis Bekommen
+School/University,Schule/Universität
+Score (0-5),Punktzahl (0-5)
+Score Earned,Erreichte Punktzahl
 Score must be less than or equal to 5,Score muß weniger als oder gleich 5 sein
-Scrap %,Scrap%
-Seasonality for setting budgets.,Saisonalität setzt Budgets.
+Scrap %,Ausschuss %
+Seasonality for setting budgets.,Saisonalität für die Budgeterstellung.
 Secretary,Sekretärin
 Secured Loans,Secured Loans
 Securities & Commodity Exchanges,Securities & Warenbörsen
 Securities and Deposits,Wertpapiere und Einlagen
-"See ""Rate Of Materials Based On"" in Costing Section",Siehe &quot;Rate Of Materials Based On&quot; in der Kalkulation Abschnitt
-"Select ""Yes"" for sub - contracting items","Wählen Sie ""Ja"" für - Zulieferer Artikel"
-"Select ""Yes"" if this item is used for some internal purpose in your company.","Wählen Sie ""Ja"", wenn dieser Punkt für einige interne Zwecke in Ihrem Unternehmen verwendet wird."
-"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Wählen Sie ""Ja"", wenn dieser Artikel stellt einige Arbeiten wie Ausbildung, Gestaltung, Beratung etc.."
-"Select ""Yes"" if you are maintaining stock of this item in your Inventory.","Wählen Sie ""Ja"", wenn Sie Pflege stock dieses Artikels in Ihrem Inventar."
-"Select ""Yes"" if you supply raw materials to your supplier to manufacture this item.","Wählen Sie ""Ja"", wenn Sie Rohstoffe an Ihren Lieferanten liefern, um diesen Artikel zu fertigen."
+"See ""Rate Of Materials Based On"" in Costing Section",Siehe „Rate der zu Grunde liegenden Materialien“ im Abschnitt Kalkulation
+"Select ""Yes"" for sub - contracting items",Wählen Sie „Ja“ für  Zulieferer-Artikel
+"Select ""Yes"" if this item is used for some internal purpose in your company.","Wählen Sie „Ja“, wenn diese Position zu internen Zwecke in Ihrem Unternehmen verwendet wird."
+"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Wählen Sie „Ja“, wenn diese Position Arbeit wie Schulung, Entwurf, Beratung usw. beinhaltet."
+"Select ""Yes"" if you are maintaining stock of this item in your Inventory.","Wählen Sie „Ja“, wenn Sie den Bestand dieses Artikels in Ihrem Inventar verwalten."
+"Select ""Yes"" if you supply raw materials to your supplier to manufacture this item.","Wählen Sie „Ja“, wenn Sie Rohstoffe an Ihren Lieferanten zur Herstellung dieses Artikels liefern."
 Select Brand...,Wählen Brand ...
-Select Budget Distribution to unevenly distribute targets across months.,Wählen Budget Verteilung ungleichmäßig Targets über Monate verteilen.
-"Select Budget Distribution, if you want to track based on seasonality.","Wählen Budget Distribution, wenn Sie basierend auf Saisonalität verfolgen möchten."
+Select Budget Distribution to unevenly distribute targets across months.,"Wählen Sie Budgetverteilung aus, um Ziele ungleichmäßig über Monate hinweg zu verteilen."
+"Select Budget Distribution, if you want to track based on seasonality.","Wählen Sie Budgetverteilung, wenn Sie nach Saisonalität verfolgen möchten."
 Select Company...,Wählen Gesellschaft ...
-Select DocType,Wählen DocType
+Select DocType,Dokumenttyp auswählen
 Select Fiscal Year...,Wählen Sie das Geschäftsjahr ...
-Select Items,Elemente auswählen
+Select Items,Artikel auswählen
 Select Project...,Wählen Sie Projekt ...
-Select Purchase Receipts,Wählen Kaufbelege
-Select Sales Orders,Wählen Sie Kundenaufträge
-Select Sales Orders from which you want to create Production Orders.,Wählen Sie Aufträge aus der Sie Fertigungsaufträge erstellen.
-Select Time Logs and Submit to create a new Sales Invoice.,"Wählen Sie Zeit Logs und abschicken, um einen neuen Sales Invoice erstellen."
-Select Transaction,Wählen Sie Transaction
+Select Sales Orders,Kundenaufträge auswählen
+Select Sales Orders from which you want to create Production Orders.,"Kundenaufträge auswählen, aus denen Sie Fertigungsaufträge erstellen möchten."
+Select Time Logs and Submit to create a new Sales Invoice.,"Wählen Sie Zeitprotokolle und ""Absenden"" aus, um eine neue Verkaufsrechnung zu erstellen."
+Select Transaction,Transaktion auswählen
 Select Warehouse...,Wählen Sie Warehouse ...
 Select Your Language,Wählen Sie Ihre Sprache
-Select account head of the bank where cheque was deposited.,"Wählen Sie den Kopf des Bankkontos, wo Kontrolle abgelagert wurde."
-Select company name first.,Wählen Firmennamen erste.
-Select template from which you want to get the Goals,"Wählen Sie aus, welche Vorlage Sie die Ziele erhalten möchten"
-Select the Employee for whom you are creating the Appraisal.,"Wählen Sie den Mitarbeiter, für den Sie erstellen Appraisal."
-Select the period when the invoice will be generated automatically,Wählen Sie den Zeitraum auf der Rechnung wird automatisch erzeugt werden
-Select the relevant company name if you have multiple companies,"Wählen Sie den entsprechenden Firmennamen, wenn Sie mehrere Unternehmen haben"
-Select the relevant company name if you have multiple companies.,"Wählen Sie den entsprechenden Firmennamen, wenn Sie mehrere Unternehmen haben."
-Select who you want to send this newsletter to,"Wählen Sie, wer Sie diesen Newsletter senden möchten"
+Select account head of the bank where cheque was deposited.,"Wählen Sie den Kontenführer der Bank, bei der der Scheck eingereicht wurde."
+Select company name first.,Wählen Sie zuerst den Firmennamen aus.
+Select template from which you want to get the Goals,"Wählen Sie eine Vorlage aus, von der Sie die Ziele abrufen möchten"
+Select the Employee for whom you are creating the Appraisal.,"Wählen Sie den Mitarbeiter aus, für den Sie die Bewertung erstellen."
+Select the period when the invoice will be generated automatically,"Wählen Sie den Zeitraum aus, zu dem die Rechnung automatisch erstellt werden soll."
+Select the relevant company name if you have multiple companies,"Wählen Sie den entsprechenden Firmennamen aus, wenn mehrere Unternehmen vorhanden sind"
+Select the relevant company name if you have multiple companies.,"Wählen Sie den entsprechenden Firmennamen aus, wenn mehrere Unternehmen vorhanden sind."
+Select type of transaction,
+Select who you want to send this newsletter to,"Wählen Sie aus, an wen dieser Newsletter gesendet werden soll"
 Select your home country and check the timezone and currency.,Wählen Sie Ihr Heimatland und überprüfen Sie die Zeitzone und Währung.
-"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Wählen Sie ""Ja"" können diesen Artikel in Bestellung, Kaufbeleg erscheinen."
-"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Wählen Sie ""Ja"" können diesen Artikel in Sales Order herauszufinden, Lieferschein"
-"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.","Wählen Sie ""Ja"" ermöglicht es Ihnen, Bill of Material zeigt Rohstoffe und Betriebskosten anfallen, um diesen Artikel herzustellen erstellen."
-"Selecting ""Yes"" will allow you to make a Production Order for this item.","Wählen Sie ""Ja"" ermöglicht es Ihnen, einen Fertigungsauftrag für diesen Artikel machen."
-"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.","Wählen Sie ""Ja"" wird eine einzigartige Identität zu jeder Einheit dieses Artikels, die in der Serial No Master eingesehen werden kann geben."
-Selling,Verkauf
-Selling Settings,Verkauf Einstellungen
+"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Wenn Sie „Ja“ auswählen, wird dieser Artikel in Bestellung und Kaufbeleg angezeigt."
+"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Wenn Sie „Ja“ auswählen, wird dieser Artikel in Auftrag und Lieferschein angezeigt"
+"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.","Wenn Sie „Ja“ auswählen, können Sie eine Materialliste erstellen, die Rohstoff- und Betriebskosten anzeigt, die bei der Herstellung dieses Artikels anfallen."
+"Selecting ""Yes"" will allow you to make a Production Order for this item.","Wenn Sie „Ja“ auswählen, können Sie einen Fertigungsauftrag für diesen Artikel erstellen."
+"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.","Wenn Sie „Ja“ auswählen, wird jeder Einheit dieses Artikels eine eindeutige Identität zugeteilt, die im Seriennummernstamm angezeigt werden kann."
+Selling,Verkaufen
+Selling Settings,Verkaufseinstellungen
 "Selling must be checked, if Applicable For is selected as {0}","Selling muss überprüft werden, wenn Anwendbar ist als gewählte {0}"
-Send,Senden
-Send Autoreply,Senden Autoreply
-Send Email,E-Mail senden
-Send From,Senden Von
-Send Notifications To,Benachrichtigungen an
+Send,Absenden
+Send Autoreply,Autoreply absenden
+Send Email,E-Mail absenden
+Send From,Absenden von
+Send Notifications To,Benachrichtigungen senden an
 Send Now,Jetzt senden
-Send SMS,Senden Sie eine SMS
-Send To,Send To
-Send To Type,Send To Geben
-Send mass SMS to your contacts,Senden Sie Massen-SMS an Ihre Kontakte
-Send to this list,Senden Sie zu dieser Liste
-Sender Name,Absender Name
-Sent On,Sent On
-Separate production order will be created for each finished good item.,Separate Fertigungsauftrag wird für jeden fertigen gute Position geschaffen werden.
-Serial No,Serial In
+Send SMS,SMS senden
+Send To,Senden an
+Send To Type,Senden an Typ
+Send automatic emails to Contacts on Submitting transactions.,Beim Einreichen von Transaktionen automatische E-Mails an Kontakte senden.
+Send mass SMS to your contacts,Massen-SMS an Ihre Kontakte senden
+Send regular summary reports via Email.,Regelmäßig zusammenfassende Berichte per E-Mail senden.
+Send to this list,An diese Liste senden
+Sender Name,Absendername
+Sent,Sent
+Sent On,Gesendet am
+Separate production order will be created for each finished good item.,Separater Fertigungsauftrag wird für jeden fertigen Warenartikel erstellt.
+Serial No,Seriennummer
 Serial No / Batch,Seriennummer / Charge
-Serial No Details,Serial No Einzelheiten
-Serial No Service Contract Expiry,Serial No Service Contract Verfall
-Serial No Status,Serielle In-Status
-Serial No Warranty Expiry,Serial No Scheckheftgepflegt
+Serial No Details,Details Seriennummer
+Serial No Service Contract Expiry,Seriennr. Ende des Wartungsvertrags
+Serial No Status,Seriennr. Status
+Serial No Warranty Expiry,Seriennr. Garantieverfall
 Serial No is mandatory for Item {0},Seriennummer ist für Artikel {0}
 Serial No {0} created,Seriennummer {0} erstellt
 Serial No {0} does not belong to Delivery Note {1},Seriennummer {0} nicht auf Lieferschein gehören {1}
@@ -2677,6 +2766,7 @@
 Serial No {0} has already been received,Seriennummer {0} bereits empfangen
 Serial No {0} is under maintenance contract upto {1},Seriennummer {0} ist unter Wartungsvertrag bis {1}
 Serial No {0} is under warranty upto {1},Seriennummer {0} ist unter Garantie bis {1}
+Serial No {0} not found,
 Serial No {0} not in stock,Seriennummer {0} nicht auf Lager
 Serial No {0} quantity {1} cannot be a fraction,Seriennummer {0} Menge {1} kann nicht ein Bruchteil sein
 Serial No {0} status must be 'Available' to Deliver,"Seriennummer {0} Status muss ""verfügbar"" sein, Deliver"
@@ -2684,70 +2774,73 @@
 Serial Number Series,Seriennummer Series
 Serial number {0} entered more than once,Seriennummer {0} trat mehr als einmal
 "Serialized Item {0} cannot be updated \
-					using Stock Reconciliation","Serialisierten Artikel {0} kann nicht aktualisiert werden, \
- mit Lizenz Versöhnung"
+					using Stock Reconciliation",
 Series,Serie
-Series List for this Transaction,Serien-Liste für diese Transaktion
+Series List for this Transaction,Serienliste für diese Transaktion
 Series Updated,Aktualisiert Serie
 Series Updated Successfully,Serie erfolgreich aktualisiert
 Series is mandatory,Serie ist obligatorisch
 Series {0} already used in {1},Serie {0} bereits verwendet {1}
 Service,Service
-Service Address,Service Adresse
+Service Address,Serviceadresse
 Service Tax,Service Steuer
-Services,Dienstleistungen
+Services,Services
 Set,Set
 "Set Default Values like Company, Currency, Current Fiscal Year, etc.","Vorschlagswerte wie Unternehmen , Währung, aktuelle Geschäftsjahr usw."
-Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,"Set Artikel gruppenweise Budgets auf diesem Gebiet. Sie können Saisonalität auch gehören, indem Sie die Distribution."
+Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Artikelgruppenweise Budgets in dieser Region erstellen. Durch Einrichten der Verteilung können Sie auch Saisonalität mit einbeziehen.
 Set Status as Available,Set Status als Verfügbar
 Set as Default,Als Standard
 Set as Lost,Als Passwort
-Set prefix for numbering series on your transactions,Nummerierung einstellen Serie Präfix für Ihre Online-Transaktionen
-Set targets Item Group-wise for this Sales Person.,Set zielt Artikel gruppenweise für diesen Sales Person.
-Setting Account Type helps in selecting this Account in transactions.,Einstellung Kontotyp hilft bei der Auswahl der Transaktionen in diesem Konto.
+Set prefix for numbering series on your transactions,Präfix für die Seriennummerierung Ihrer Transaktionen festlegen
+Set targets Item Group-wise for this Sales Person.,Ziele artikelgruppenweise für diesen Vertriebsmitarbeiter festlegen.
+Setting Account Type helps in selecting this Account in transactions.,Das Festlegen des Kontotyps hilft bei der Auswahl dieses Kontos in Transaktionen.
 Setting this Address Template as default as there is no other default,"Die Einstellung dieses Adressvorlage als Standard, da es keine anderen Standard"
 Setting up...,Einrichten ...
 Settings,Einstellungen
+Settings for Accounts,Einstellungen für Konten
+Settings for Buying Module,Einstellungen für Einkaufsmodul
 Settings for HR Module,Einstellungen für das HR -Modul
-"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""","Einstellungen für Bewerber aus einer Mailbox zB ""jobs@example.com"" extrahieren"
+Settings for Selling Module,Einstellungen für das Verkaufsmodul
+"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""","Einstellungen, um Bewerber aus einem Postfach, z.B. ""jobs@example.com"", zu extrahieren."
 Setup,Setup
 Setup Already Complete!!,Bereits Komplett -Setup !
 Setup Complete,Setup Complete
 Setup SMS gateway settings,Setup-SMS-Gateway-Einstellungen
-Setup Series,Setup-Series
+Setup Series,Setup-Reihenfolge
 Setup Wizard,Setup-Assistenten
 Setup incoming server for jobs email id. (e.g. jobs@example.com),Setup- Eingangsserver für Jobs E-Mail -ID . (z. B. jobs@example.com )
 Setup incoming server for sales email id. (e.g. sales@example.com),Setup- Eingangsserver für den Vertrieb E-Mail -ID . (z. B. sales@example.com )
 Setup incoming server for support email id. (e.g. support@example.com),Setup- Eingangsserver für die Unterstützung E-Mail -ID . (z. B. support@example.com )
-Share,Teilen
-Share With,Anziehen
+Share,Freigeben
+Share With,Freigeben für
 Shareholders Funds,Aktionäre Fonds
 Shipments to customers.,Lieferungen an Kunden.
-Shipping,Schifffahrt
-Shipping Account,Liefer-Konto
+Shipping,Versand
+Shipping Account,Versandkonto
 Shipping Address,Versandadresse
-Shipping Amount,Liefer-Betrag
-Shipping Rule,Liefer-Regel
-Shipping Rule Condition,Liefer-Rule Condition
-Shipping Rule Conditions,Liefer-Rule AGB
-Shipping Rule Label,Liefer-Rule Etikett
-Shop,Im Shop
+Shipping Amount,Versandbetrag
+Shipping Rule,Versandregel
+Shipping Rule Condition,Versandbedingung
+Shipping Rule Conditions,Versandbedingungen
+Shipping Rule Label,Versandbedingungsetikett
+Shop,Shop
 Shopping Cart,Einkaufswagen
-Short biography for website and other publications.,Kurzbiographie für die Website und anderen Publikationen.
-"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Anzeigen ""Im Lager"" oder ""Nicht auf Lager"", basierend auf verfügbaren Bestand in diesem Lager."
+Short biography for website and other publications.,Kurzbiographie für die Website und andere Publikationen.
+"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Details zu ""Auf Lager"" oder ""Nicht auf Lager"" entsprechend des in diesem Warenlager verfügbaren Bestands anzeigen."
 "Show / Hide features like Serial Nos, POS etc.","Show / Hide Funktionen wie Seriennummern, POS , etc."
-Show In Website,Zeigen Sie in der Webseite
-Show a slideshow at the top of the page,Zeige die Slideshow an der Spitze der Seite
-Show in Website,Zeigen Sie im Website
-Show rows with zero values,Zeige Zeilen mit Nullwerten
-Show this slideshow at the top of the page,Zeige diese Slideshow an der Spitze der Seite
+Show In Website,Auf der Webseite anzeigen
+Show a slideshow at the top of the page,Diaschau oben auf der Seite anzeigen
+Show in Website,Auf der Webseite anzeigen
+Show this slideshow at the top of the page,Diese Diaschau oben auf der Seite anzeigen
+Show zero values,
+Shown in Website,
 Sick Leave,Sick Leave
 Signature,Unterschrift
-Signature to be appended at the end of every email,Unterschrift am Ende jeder E-Mail angehängt werden
-Single,Single
-Single unit of an Item.,Einzelgerät eines Elements.
+Signature to be appended at the end of every email,"Signatur, die am Ende jeder E-Mail angehängt werden soll"
+Single,Einzeln
+Single unit of an Item.,Einzeleinheit eines Artikels.
 Sit tight while your system is being setup. This may take a few moments.,"Sitzen fest , während Ihr System wird Setup . Dies kann einige Zeit dauern."
-Slideshow,Slideshow
+Slideshow,Diaschau
 Soap & Detergent,Soap & Reinigungsmittel
 Software,Software
 Software Developer,Software-Entwickler
@@ -2755,223 +2848,289 @@
 "Sorry, companies cannot be merged","Sorry, Unternehmen können nicht zusammengeführt werden"
 Source,Quelle
 Source File,Source File
-Source Warehouse,Quelle Warehouse
+Source Warehouse,Quellenwarenlager
 Source and target warehouse cannot be same for row {0},Quell-und Ziel-Warehouse kann nicht gleich sein für die Zeile {0}
 Source of Funds (Liabilities),Mittelherkunft ( Passiva)
 Source warehouse is mandatory for row {0},Quelle Lager ist für Zeile {0}
-Spartan,Spartan
+Spartan,Spartanisch
 "Special Characters except ""-"" and ""/"" not allowed in naming series","Sonderzeichen außer ""-"" und ""/"" nicht in der Benennung Serie erlaubt"
-Specification Details,Ausschreibungstexte
+Specification Details,Spezifikationsdetails
 Specifications,Technische Daten
-"Specify a list of Territories, for which, this Price List is valid","Geben Sie eine Liste der Gebiete, für die ist diese Preisliste gültig"
-"Specify a list of Territories, for which, this Shipping Rule is valid","Geben Sie eine Liste der Gebiete, für die ist diese Regel gültig Versand"
-"Specify a list of Territories, for which, this Taxes Master is valid","Geben Sie eine Liste der Gebiete, für die ist diese Steuern Meister gültig"
+Specify Exchange Rate to convert one currency into another,Geben Sie den Wechselkurs zum Umrechnen einer Währung in eine andere an
+"Specify a list of Territories, for which, this Price List is valid","Geben Sie eine Liste der Regionen an, für die diese Preisliste gilt"
+"Specify a list of Territories, for which, this Shipping Rule is valid","Geben Sie eine Liste der Regionen an, für die diese Versandregel gilt"
+"Specify a list of Territories, for which, this Taxes Master is valid","Geben Sie eine Liste der Regionen an, für die dieser Steuerstamm gilt"
+Specify conditions to calculate shipping amount,Geben Sie die Bedingungen zur Berechnung der Versandkosten an
 "Specify the operations, operating cost and give a unique Operation no to your operations.","Geben Sie die Vorgänge , Betriebskosten und geben einen einzigartigen Betrieb nicht für Ihren Betrieb ."
-Split Delivery Note into packages.,Aufgeteilt in Pakete Lieferschein.
+Split Delivery Note into packages.,Lieferschein in Pakete aufteilen.
 Sports,Sport
 Sr,Sr
 Standard,Standard
 Standard Buying,Standard- Einkaufsführer
 Standard Reports,Standardberichte
 Standard Selling,Standard- Selling
+"Standard Terms and Conditions that can be added to Sales and Purchases.
+
+Examples:
+
+1. Validity of the offer.
+1. Payment Terms (In Advance, On Credit, part advance etc).
+1. What is extra (or payable by the Customer).
+1. Safety / usage warning.
+1. Warranty if any.
+1. Returns Policy.
+1. Terms of shipping, if applicable.
+1. Ways of addressing disputes, indemnity, liability, etc.
+1. Address and Contact of your Company.",
 Standard contract terms for Sales or Purchase.,Übliche Vertragsbedingungen für den Verkauf oder Kauf .
+"Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like ""Shipping"", ""Insurance"", ""Handling"" etc.
+
+#### Note
+
+The tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.
+
+#### Description of Columns
+
+1. Calculation Type: 
+    - This can be on **Net Total** (that is the sum of basic amount).
+    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.
+    - **Actual** (as mentioned).
+2. Account Head: The Account ledger under which this tax will be booked
+3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.
+4. Description: Description of the tax (that will be printed in invoices / quotes).
+5. Rate: Tax rate.
+6. Amount: Tax amount.
+7. Total: Cumulative total to this point.
+8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).
+9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.
+10. Add or Deduct: Whether you want to add or deduct the tax.",
+"Standard tax template that can be applied to all Sales Transactions. This template can contain list of tax heads and also other expense / income heads like ""Shipping"", ""Insurance"", ""Handling"" etc.
+
+#### Note
+
+The tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.
+
+#### Description of Columns
+
+1. Calculation Type: 
+    - This can be on **Net Total** (that is the sum of basic amount).
+    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.
+    - **Actual** (as mentioned).
+2. Account Head: The Account ledger under which this tax will be booked
+3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.
+4. Description: Description of the tax (that will be printed in invoices / quotes).
+5. Rate: Tax rate.
+6. Amount: Tax amount.
+7. Total: Cumulative total to this point.
+8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).
+9. Is this Tax included in Basic Rate?: If you check this, it means that this tax will not be shown below the item table, but will be included in the Basic Rate in your main item table. This is useful where you want give a flat price (inclusive of all taxes) price to customers.",
 Start,Start-
 Start Date,Startdatum
-Start date of current invoice's period,Startdatum der laufenden Rechnung der Zeit
+Start date of current invoice's period,Startdatum der laufenden Rechnungsperiode
+Start date of current order's period,
 Start date should be less than end date for Item {0},Startdatum sollte weniger als Enddatum für Artikel {0}
-State,Zustand
+State,Land
 Statement of Account,Kontoauszug
 Static Parameters,Statische Parameter
 Status,Status
 Status must be one of {0},Der Status muss man von {0}
 Status of {0} {1} is now {2},Status {0} {1} ist jetzt {2}
 Status updated to {0},Status aktualisiert {0}
-Statutory info and other general information about your Supplier,Gesetzliche Informationen und andere allgemeine Informationen über Ihr Lieferant
+Statutory info and other general information about your Supplier,Gesetzliche und andere allgemeine Informationen über Ihren Lieferanten
 Stay Updated,Bleiben Aktualisiert
-Stock,Lager
+Stock,Lagerbestand
 Stock Adjustment,Auf Einstellung
-Stock Adjustment Account,Auf Adjustment Konto
-Stock Ageing,Lager Ageing
-Stock Analytics,Lager Analytics
+Stock Adjustment Account,Bestandskorrektur-Konto
+Stock Ageing,Bestandsalterung
+Stock Analytics,Bestandsanalyse
 Stock Assets,Auf Assets
-Stock Balance,Bestandsliste
+Stock Balance,Bestandsbilanz
 Stock Entries already created for Production Order ,
-Stock Entry,Lager Eintrag
-Stock Entry Detail,Lager Eintrag Details
+Stock Entry,Bestandseintrag
+Stock Entry Detail,Bestandseintragsdetail
 Stock Expenses,Auf Kosten
-Stock Frozen Upto,Lager Bis gefroren
-Stock Ledger,Lager Ledger
-Stock Ledger Entry,Lager Ledger Eintrag
+Stock Frozen Upto,Bestand eingefroren bis
+Stock Item,
+Stock Ledger,Bestands-Hauptkonto
+Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,
+Stock Ledger Entry,Bestands-Hauptkonto Eintrag
 Stock Ledger entries balances updated,Auf BucheinträgeSalden aktualisiert
-Stock Level,Stock Level
+Stock Level,Bestandsebene
 Stock Liabilities,Auf Verbindlichkeiten
 Stock Projected Qty,Auf Projizierte Menge
-Stock Queue (FIFO),Lager Queue (FIFO)
-Stock Received But Not Billed,"Auf empfangen, aber nicht Angekündigt"
+Stock Queue (FIFO),Bestands-Warteschlange (FIFO)
+Stock Received But Not Billed,"Empfangener, aber nicht abgerechneter Bestand"
 Stock Reconcilation Data,Auf Versöhnung Daten
 Stock Reconcilation Template,Auf Versöhnung Vorlage
-Stock Reconciliation,Lager Versöhnung
+Stock Reconciliation,Bestandsabgleich
 "Stock Reconciliation can be used to update the stock on a particular date, usually as per physical inventory.","Auf Versöhnung kann verwendet werden, um die Aktie zu einem bestimmten Zeitpunkt zu aktualisieren , in der Regel nach Inventur werden."
-Stock Settings,Auf Einstellungen
-Stock UOM,Lager UOM
-Stock UOM Replace Utility,Lager UOM ersetzen Dienstprogramm
+Stock Settings,Bestandseinstellungen
+Stock UOM,Bestands-ME
+Stock UOM Replace Utility,Dienstprogramm zum Ersetzen der Bestands-ME
 Stock UOM updatd for Item {0},"Auf ME fortgeschrieben, für den Posten {0}"
-Stock Uom,Lager ME
+Stock Uom,Bestands-ME
 Stock Value,Bestandswert
-Stock Value Difference,Auf Wertdifferenz
+Stock Value Difference,Wertdifferenz Bestand
 Stock balances updated,Auf Salden aktualisiert
 Stock cannot be updated against Delivery Note {0},Auf kann nicht gegen Lieferschein aktualisiert werden {0}
 Stock entries exist against warehouse {0} cannot re-assign or modify 'Master Name',Auf Einträge vorhanden sind gegen Lager {0} kann nicht neu zuweisen oder ändern 'Master -Name'
 Stock transactions before {0} are frozen,Aktiengeschäfte vor {0} werden eingefroren
-Stop,Stoppen
+Stock: ,
+Stop,Anhalten
 Stop Birthday Reminders,Stop- Geburtstagserinnerungen
-Stop Material Request,Stopp -Material anfordern
-Stop users from making Leave Applications on following days.,Stoppen Sie den Nutzer von Leave Anwendungen auf folgenden Tagen.
-Stop!,Stop!
-Stopped,Gestoppt
+Stop users from making Leave Applications on following days.,"Benutzer davon abhalten, Urlaubsanträge für folgende Tage zu machen."
+Stopped,Angehalten
 Stopped order cannot be cancelled. Unstop to cancel.,"Gestoppt Auftrag kann nicht abgebrochen werden. Aufmachen , um abzubrechen."
 Stores,Shops
 Stub,Stummel
 Sub Assemblies,Unterbaugruppen
-"Sub-currency. For e.g. ""Cent""","Sub-Währung. Für z.B. ""Cent"""
-Subcontract,Vergeben
-Subject,Thema
-Submit Salary Slip,Senden Gehaltsabrechnung
-Submit all salary slips for the above selected criteria,Reichen Sie alle Gehaltsabrechnungen für die oben ausgewählten Kriterien
+"Sub-currency. For e.g. ""Cent""","Unterwährung. Zum Beispiel ""Cent"""
+Subcontract,Zulieferer
+Subcontracted,
+Subject,Betreff
+Submit Salary Slip,Gehaltsabrechnung absenden
+Submit all salary slips for the above selected criteria,Alle Gehaltsabrechnungen für die oben gewählten Kriterien absenden
 Submit this Production Order for further processing.,Senden Sie dieses Fertigungsauftrag für die weitere Verarbeitung .
-Submitted,Eingereicht
+Submitted,Abgesendet/Eingereicht
 Subsidiary,Tochtergesellschaft
 Successful: ,Erfolgreich:
 Successfully Reconciled,Erfolgreich versöhnt
 Suggestions,Vorschläge
 Sunday,Sonntag
 Supplier,Lieferant
-Supplier (Payable) Account,Lieferant (zahlbar) Konto
-Supplier (vendor) name as entered in supplier master,Lieferant (Kreditor) Namen wie im Lieferantenstamm eingetragen
+Supplier (Payable) Account,Lieferantenkonto (zahlbar)
+Supplier (vendor) name as entered in supplier master,Lieferantenname (Verkäufer) wie im Lieferantenstamm eingetragen
 Supplier > Supplier Type,Lieferant> Lieferantentyp
-Supplier Account Head,Lieferant Konto Leiter
-Supplier Address,Lieferant Adresse
+Supplier Account Head,Lieferant Kontenführer
+Supplier Address,Lieferantenadresse
 Supplier Addresses and Contacts,Lieferant Adressen und Kontakte
-Supplier Details,Supplier Details
+Supplier Details,Lieferantendetails
 Supplier Intro,Lieferant Intro
-Supplier Invoice Date,Lieferantenrechnung Datum
-Supplier Invoice No,Lieferant Rechnung Nr.
-Supplier Name,Name des Anbieters
-Supplier Naming By,Lieferant Benennen von
+Supplier Invoice Date,Lieferantenrechnungsdatum
+Supplier Invoice No,Lieferantenrechnungsnr.
+Supplier Name,Lieferantenname
+Supplier Naming By,Benennung des Lieferanten nach
 Supplier Part Number,Lieferant Teilenummer
-Supplier Quotation,Lieferant Angebot
-Supplier Quotation Item,Lieferant Angebotsposition
-Supplier Reference,Lieferant Reference
-Supplier Type,Lieferant Typ
+Supplier Quotation,Lieferantenangebot
+Supplier Quotation Item,Angebotsposition Lieferant
+Supplier Reference,Referenznummer des Lieferanten
+Supplier Type,Lieferantentyp
 Supplier Type / Supplier,Lieferant Typ / Lieferant
 Supplier Type master.,Lieferant Typ Master.
-Supplier Warehouse,Lieferant Warehouse
+Supplier Warehouse,Lieferantenlager
 Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Lieferantenlager obligatorisch für Unteraufträge vergeben Kaufbeleg
-Supplier database.,Lieferanten-Datenbank.
+Supplier database.,Lieferantendatenbank
 Supplier master.,Lieferant Master.
-Supplier warehouse where you have issued raw materials for sub - contracting,Lieferantenlager wo Sie Rohstoffe ausgegeben haben - Zulieferer
+Supplier of Goods or Services.,Lieferant von Waren oder Dienstleistungen.
+Supplier warehouse where you have issued raw materials for sub - contracting,"Lieferantenlager, wo Sie Rohstoffe für Zulieferer ausgegeben haben."
 Supplier-Wise Sales Analytics,HerstellerverkaufsWise Analytics
-Support,Unterstützen
+Support,Support
 Support Analtyics,Unterstützung Analtyics
-Support Analytics,Unterstützung Analytics
-Support Email,Unterstützung per E-Mail
+Support Analytics,Support-Analyse
+Support Email,Support-E-Mail
 Support Email Settings,Support- E-Mail -Einstellungen
-Support Password,Support Passwort
-Support Ticket,Support Ticket
+Support Manager,
+Support Password,Support-Passwort
+Support Team,
+Support Ticket,Support-Ticket
 Support queries from customers.,Support-Anfragen von Kunden.
 Symbol,Symbol
-Sync Support Mails,Sync Unterstützung Mails
-Sync with Dropbox,Sync mit Dropbox
-Sync with Google Drive,Sync mit Google Drive
+Sync Support Mails,Support-Mails synchronisieren
+Sync with Dropbox,Mit Dropbox synchronisieren
+Sync with Google Drive,Mit Google Drive synchronisieren
 System,System
+System Balance,
+System Manager,
 System Settings,Systemeinstellungen
-"System User (login) ID. If set, it will become default for all HR forms.","System User (login) ID. Wenn gesetzt, wird es standardmäßig für alle HR-Formulare werden."
+"System User (login) ID. If set, it will become default for all HR forms.","Systembenutzer-ID (Anmeldung) Wenn gesetzt, wird sie standardmäßig für alle HR-Formulare verwendet."
+System for managing Backups,System zur Verwaltung von Backups
 TDS (Advertisement),TDS (Anzeige)
 TDS (Commission),TDS (Kommission)
 TDS (Contractor),TDS (Auftragnehmer)
 TDS (Interest),TDS (Zinsen)
 TDS (Rent),TDS (Mieten)
 TDS (Salary),TDS (Salary)
+Table for Item that will be shown in Web Site,"Tabelle für Artikel, die auf der Webseite angezeigt werden"
 Target  Amount,Zielbetrag
-Target Detail,Ziel Detailansicht
+Target Detail,Zieldetail
 Target Details,Zieldetails
-Target Details1,Ziel Details1
-Target Distribution,Target Distribution
+Target Details1,Zieldetails1
+Target Distribution,Zielverteilung
 Target On,Ziel Auf
-Target Qty,Ziel Menge
-Target Warehouse,Ziel Warehouse
+Target Qty,Zielmenge
+Target Warehouse,Zielwarenlager
 Target warehouse in row {0} must be same as Production Order,Ziel-Warehouse in Zeile {0} muss gleiche wie Fertigungsauftrag
 Target warehouse is mandatory for row {0},Ziel-Warehouse ist für Zeile {0}
 Task,Aufgabe
-Task Details,Task Details
+Task Details,Aufgabendetails
 Tasks,Aufgaben
 Tax,Steuer
 Tax Amount After Discount Amount,Steuerbetrag nach Rabatt Betrag
 Tax Assets,Steueransprüche
 Tax Category can not be 'Valuation' or 'Valuation and Total' as all items are non-stock items,"Steuerkategorie kann nicht ""Bewertungstag "" oder "" Bewertung und Total ' als alle Einzelteile sind nicht auf Lager gehalten werden"
-Tax Rate,Tax Rate
-Tax and other salary deductions.,Steuer-und sonstige Lohnabzüge.
+Tax Rate,Steuersatz
+Tax and other salary deductions.,Steuer und sonstige Gehaltsabzüge
 "Tax detail table fetched from item master as a string and stored in this field.
-Used for Taxes and Charges","MwSt. Detailtabelle geholt von Artikelstamm als String und in diesem Bereich gespeichert.
- Für Steuern und Abgaben Gebraucht"
+Used for Taxes and Charges",
 Tax template for buying transactions.,Tax -Vorlage für Kauf -Transaktionen.
 Tax template for selling transactions.,Tax -Vorlage für Verkaufsgeschäfte .
-Taxable,Steuerpflichtig
-Taxes,Steuern
+Taxes,Steuer
 Taxes and Charges,Steuern und Abgaben
-Taxes and Charges Added,Steuern und Abgaben am
-Taxes and Charges Added (Company Currency),Steuern und Gebühren Added (Gesellschaft Währung)
-Taxes and Charges Calculation,Steuern und Gebühren Berechnung
-Taxes and Charges Deducted,Steuern und Gebühren Abgezogen
-Taxes and Charges Deducted (Company Currency),Steuern und Gebühren Abzug (Gesellschaft Währung)
-Taxes and Charges Total,Steuern und Gebühren gesamt
-Taxes and Charges Total (Company Currency),Steuern und Abgaben insgesamt (Gesellschaft Währung)
+Taxes and Charges Added,Steuern und Abgaben hinzugefügt
+Taxes and Charges Added (Company Currency),Steuern und Abgaben hinzugefügt (Unternehmenswährung)
+Taxes and Charges Calculation,Berechnung der Steuern und Abgaben
+Taxes and Charges Deducted,Steuern und Abgaben abgezogen
+Taxes and Charges Deducted (Company Currency),Steuern und Abgaben abgezogen (Unternehmenswährung)
+Taxes and Charges Total,Steuern und Abgaben Gesamt
+Taxes and Charges Total (Company Currency),Steuern und Abgaben Gesamt (Unternehmenswährung)
 Technology,Technologie
 Telecommunications,Telekommunikation
 Telephone Expenses,Telefonkosten
 Television,Fernsehen
 Template,Vorlage
 Template for performance appraisals.,Vorlage für Leistungsbeurteilungen .
-Template of terms or contract.,Vorlage von Begriffen oder Vertrag.
+Template of terms or contract.,Vorlage für Geschäftsbedingungen oder Vertrag.
 Temporary Accounts (Assets),Temporäre Accounts ( Assets)
 Temporary Accounts (Liabilities),Temporäre Konten ( Passiva)
 Temporary Assets,Temporäre Assets
 Temporary Liabilities,Temporäre Verbindlichkeiten
-Term Details,Begriff Einzelheiten
+Term Details,Details Geschäftsbedingungen
 Terms,Bedingungen
-Terms and Conditions,AGB
-Terms and Conditions Content,AGB Inhalt
-Terms and Conditions Details,AGB Einzelheiten
-Terms and Conditions Template,AGB Template
-Terms and Conditions1,Allgemeine Bedingungen1
+Terms and Conditions,Allgemeine Geschäftsbedingungen
+Terms and Conditions Content,Allgemeine Geschäftsbedingungen Inhalt
+Terms and Conditions Details,Allgemeine Geschäftsbedingungen Details
+Terms and Conditions Template,Allgemeine Geschäftsbedingungen Vorlage
+Terms and Conditions1,Allgemeine Geschäftsbedingungen1
 Terretory,Terretory
-Territory,Gebiet
+Territory,Region
 Territory / Customer,Territory / Kunden
-Territory Manager,Territory Manager
-Territory Name,Territory Namen
+Territory Manager,Gebietsleiter
+Territory Name,Name der Region
 Territory Target Variance Item Group-Wise,Territory ZielabweichungsartikelgruppeWise -
-Territory Targets,Territory Targets
+Territory Targets,Ziele der Region
 Test,Test
-Test Email Id,Test Email Id
-Test the Newsletter,Testen Sie den Newsletter
-The BOM which will be replaced,"Die Stückliste, die ersetzt werden"
+Test Email Id,E-Mail-ID testen
+Test the Newsletter,Newsletter testen
+The BOM which will be replaced,"Die Stückliste, die ersetzt wird"
 The First User: You,Der erste Benutzer : Sie
-"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""","Das Element, das das Paket darstellt. Dieser Artikel muss ""Ist Stock Item"" als ""Nein"" und ""Ist Vertrieb Item"" als ""Ja"""
+"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""","Der Artikel, der das Paket darstellt. Bei diesem Artikel muss ""Ist Lagerartikel"" als ""Nein"" und ""Ist Verkaufsartikel"" als ""Ja"" gekennzeichnet sein"
 The Organization,Die Organisation
 "The account head under Liability, in which Profit/Loss will be booked","Das Konto, Kopf unter Haftung , in der Gewinn / Verlust wird gebucht werden"
+The date on which next invoice will be generated. It is generated on submit.,"Das Datum, an dem die nächste Rechnung erstellt wird. Sie wird beim Einreichen erzeugt."
 "The date on which next invoice will be generated. It is generated on submit.
-","Der Tag, an dem nächsten Rechnung wird erzeugt. Es basiert auf einreichen erzeugt.
-"
-The date on which recurring invoice will be stop,"Der Tag, an dem wiederkehrende Rechnung werden aufhören wird"
+",
+The date on which recurring invoice will be stop,"Das Datum, an dem die wiederkehrende Rechnung angehalten wird"
+The date on which recurring order will be stop,
 "The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","Der Tag des Monats, an dem auto Rechnung zB 05, 28 usw. generiert werden"
+"The day of the month on which auto order will be generated e.g. 05, 28 etc ",
 The day(s) on which you are applying for leave are holiday. You need not apply for leave.,"Der Tag (e) , auf dem Sie sich bewerben für Urlaub sind Ferien. Sie müssen nicht, um Urlaub ."
-The first Leave Approver in the list will be set as the default Leave Approver,Die erste Leave Approver in der Liste wird als Standard-Leave Approver eingestellt werden
+The first Leave Approver in the list will be set as the default Leave Approver,Der erste Urlaubsgenehmiger auf der Liste wird als standardmäßiger Urlaubsgenehmiger festgesetzt
 The first user will become the System Manager (you can change that later).,"Der erste Benutzer wird der System-Manager (du , dass später ändern können ) ."
-The gross weight of the package. Usually net weight + packaging material weight. (for print),Das Bruttogewicht des Pakets. Normalerweise Eigengewicht + Verpackungsmaterial Gewicht. (Zum Drucken)
+The gross weight of the package. Usually net weight + packaging material weight. (for print),Das Bruttogewicht des Pakets. Normalerweise Nettogewicht + Gewicht des Verpackungsmaterials (Für den Ausdruck)
 The name of your company for which you are setting up this system.,"Der Name der Firma, für die Sie die Einrichtung dieses Systems."
-The net weight of this package. (calculated automatically as sum of net weight of items),Das Nettogewicht dieses Pakets. (Automatisch als Summe der Netto-Gewicht der Sendungen berechnet)
-The new BOM after replacement,Der neue BOM nach dem Austausch
-The rate at which Bill Currency is converted into company's base currency,"Die Rate, mit der Bill Währung in Unternehmen Basiswährung umgewandelt wird"
+The net weight of this package. (calculated automatically as sum of net weight of items),Das Nettogewicht dieses Pakets. (automatisch als Summe der einzelnen Nettogewichte berechnet)
+The new BOM after replacement,Die neue Stückliste nach dem Austausch
+The rate at which Bill Currency is converted into company's base currency,"Der Kurs, mit dem die Rechnungswährung in die Basiswährung des Unternehmens umgerechnet wird"
 The unique id for tracking all recurring invoices. It is generated on submit.,Die eindeutige ID für Tracking alle wiederkehrenden Rechnungen. Es basiert auf einreichen generiert.
 "Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Dann Preisregeln werden auf Basis von Kunden gefiltert, Kundengruppe, Territory, Lieferant, Lieferant Typ, Kampagne, Vertriebspartner usw."
 There are more holidays than working days this month.,Es gibt mehr Feiertage als Arbeitstage in diesem Monat.
@@ -2982,8 +3141,8 @@
 There were errors.,Es gab Fehler .
 This Currency is disabled. Enable to use in transactions,"Diese Währung ist deaktiviert . Aktivieren, um Transaktionen in"
 This Leave Application is pending approval. Only the Leave Apporver can update status.,Dieser Urlaubsantrag ist bis zur Genehmigung . Nur das Datum Apporver können Status zu aktualisieren.
-This Time Log Batch has been billed.,This Time Log Batch abgerechnet hat.
-This Time Log Batch has been cancelled.,This Time Log Batch wurde abgebrochen.
+This Time Log Batch has been billed.,Dieser Zeitprotokollstapel wurde abgerechnet.
+This Time Log Batch has been cancelled.,Dieser Zeitprotokollstapel wurde abgebrochen.
 This Time Log conflicts with {0},This Time Log Konflikt mit {0}
 This format is used if country specific format is not found,"Dieses Format wird verwendet, wenn länderspezifischen Format wird nicht gefunden"
 This is a root account and cannot be edited.,Dies ist ein Root-Account und können nicht bearbeitet werden.
@@ -2992,223 +3151,227 @@
 This is a root sales person and cannot be edited.,Dies ist ein Root- Verkäufer und können nicht editiert werden .
 This is a root territory and cannot be edited.,Dies ist ein Root- Gebiet und können nicht bearbeitet werden.
 This is an example website auto-generated from ERPNext,Dies ist ein Beispiel -Website von ERPNext automatisch generiert
-This is the number of the last created transaction with this prefix,Dies ist die Nummer des zuletzt erzeugte Transaktion mit diesem Präfix
-This will be used for setting rule in HR module,Dies wird für die Einstellung der Regel im HR-Modul verwendet werden
-Thread HTML,Themen HTML
+This is the number of the last created transaction with this prefix,Dies ist die Nummer der letzten erstellten Transaktion mit diesem Präfix
+This tool helps you to update or fix the quantity and valuation of stock in the system. It is typically used to synchronise the system values and what actually exists in your warehouses.,"Dieses Tool hilft Ihnen, die Menge und die Bewertung von Bestand im System zu aktualisieren oder zu ändern. Sie wird in der Regel verwendet, um die Systemwerte und den aktuellen Bestand Ihrer Warenlager zu synchronisieren."
+This will be used for setting rule in HR module,Dies wird für die Festlegung der Regel im HR-Modul verwendet
+Thread HTML,Thread HTML
 Thursday,Donnerstag
-Time Log,Log Zeit
-Time Log Batch,Zeit Log Batch
-Time Log Batch Detail,Zeit Log Batch Detailansicht
-Time Log Batch Details,Zeit Log Chargendetails
+Time Log,Zeitprotokoll
+Time Log Batch,Zeitprotokollstapel
+Time Log Batch Detail,Zeitprotokollstapel-Detail
+Time Log Batch Details,Zeitprotokollstapel-Details
 Time Log Batch {0} must be 'Submitted',"Zeit Log Batch {0} muss "" Eingereicht "" werden"
-Time Log Status must be Submitted.,Zeit Protokollstatus vorzulegen.
-Time Log for tasks.,Log Zeit für Aufgaben.
-Time Log is not billable,Anmelden Zeit ist nicht abrechenbar
+Time Log Status must be Submitted.,Status des Zeitprotokolls muss 'Eingereicht/Abgesendet' sein
+Time Log for tasks.,Zeitprotokoll für Aufgaben.
+Time Log is not billable,Zeitprotokoll ist nicht abrechenbar
 Time Log {0} must be 'Submitted',"Anmelden Zeit {0} muss "" Eingereicht "" werden"
 Time Zone,Zeitzone
-Time Zones,Time Zones
+Time Zones,Zeitzonen
 Time and Budget,Zeit und Budget
-Time at which items were delivered from warehouse,"Zeit, mit dem Gegenstände wurden aus dem Lager geliefert"
-Time at which materials were received,"Zeitpunkt, an dem Materialien wurden erhalten"
+Time at which items were delivered from warehouse,"Zeitpunkt, zu dem Gegenstände aus dem Lager geliefert wurden"
+Time at which materials were received,"Zeitpunkt, zu dem Materialien empfangen wurden"
 Title,Titel
 Titles for print templates e.g. Proforma Invoice.,Titel für Druckvorlagen z. B. Proforma-Rechnung .
-To,Auf
-To Currency,Um Währung
-To Date,To Date
+To,An
+To Currency,In Währung
+To Date,Bis dato
 To Date should be same as From Date for Half Day leave,Bis Datum sollten gleiche wie von Datum für Halbtagesurlaubsein
 To Date should be within the Fiscal Year. Assuming To Date = {0},"Bis Datum sollte im Geschäftsjahr sein. Unter der Annahme, bis Datum = {0}"
-To Discuss,Zu diskutieren
-To Do List,To Do List
-To Package No.,Um Nr. Paket
+To Discuss,Zur Diskussion
+To Do List,Aufgabenliste
+To Package No.,Bis Paket Nr.
 To Produce,Um Produzieren
-To Time,Um Zeit
-To Value,To Value
-To Warehouse,Um Warehouse
+To Time,Bis Uhrzeit
+To Value,Bis Wert
+To Warehouse,An Warenlager
 "To add child nodes, explore tree and click on the node under which you want to add more nodes.","Um geordneten Knoten hinzufügen , erkunden Baum und klicken Sie auf den Knoten , unter dem Sie mehrere Knoten hinzufügen möchten."
-"To assign this issue, use the ""Assign"" button in the sidebar.","Um dieses Problem zu zuzuweisen, verwenden Sie die Schaltfläche ""Zuordnen"" in der Seitenleiste."
+"To assign this issue, use the ""Assign"" button in the sidebar.","Um dieses Problem zu zuzuweisen, verwenden Sie die Schaltfläche ""Zuweisen"" auf der Seitenleiste."
 To create a Bank Account,Um ein Bankkonto zu erstellen
 To create a Tax Account,Um ein Steuerkonto erstellen
-"To create an Account Head under a different company, select the company and save customer.","Um ein Konto Kopf unter einem anderen Unternehmen zu erstellen, wählen das Unternehmen und sparen Kunden."
+"To create an Account Head under a different company, select the company and save customer.","Um einen Kontenführer unter einem anderen Unternehmen zu erstellen, wählen Sie das Unternehmen aus und speichern Sie den Kunden."
 To date cannot be before from date,Bis heute kann nicht vor von aktuell sein
-To enable <b>Point of Sale</b> features,Zum <b> Point of Sale </ b> Funktionen ermöglichen
+To enable <b>Point of Sale</b> features,Um Funktionen der <b>Verkaufsstelle</b> zu aktivieren
 To enable <b>Point of Sale</b> view,Um <b> Point of Sale </ b> Ansicht aktivieren
-To get Item Group in details table,Zu Artikelnummer Gruppe im Detail Tisch zu bekommen
+To get Item Group in details table,So rufen sie eine Artikelgruppe in die Detailtabelle ab
 "To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Um Steuer in Zeile enthalten {0} in Artikel Rate , Steuern in Reihen {1} müssen ebenfalls enthalten sein"
 "To merge, following properties must be same for both items","Um mischen können, müssen folgende Eigenschaften für beide Produkte sein"
 "To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Um Pricing Regel in einer bestimmten Transaktion nicht zu, sollten alle geltenden Preisregeln deaktiviert zu sein."
 "To set this Fiscal Year as Default, click on 'Set as Default'","Zu diesem Geschäftsjahr als Standard festzulegen, klicken Sie auf "" Als Standard festlegen """
-To track any installation or commissioning related work after sales,Um jegliche Installation oder Inbetriebnahme verwandte Arbeiten After Sales verfolgen
+To track any installation or commissioning related work after sales,So verfolgen Sie eine Installation oder eine mit Kommissionierung verbundene Arbeit nach dem Verkauf
 "To track brand name in the following documents Delivery Note, Opportunity, Material Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No","Um Markennamen in der folgenden Dokumente Lieferschein , Gelegenheit, Materialanforderung , Punkt , Bestellung , Einkauf Gutschein , Käufer Beleg, Angebot, Verkaufsrechnung , Vertriebsstückliste, Kundenauftrag, Seriennummer verfolgen"
-To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.,"Um Artikel in Vertrieb und Einkauf Dokumente auf ihrem Werknummern Basis zu verfolgen. Dies wird auch verwendet, um Details zum Thema Gewährleistung des Produktes zu verfolgen."
-To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,Um Elemente in An-und Verkauf von Dokumenten mit Batch-nos <br> <b> Preferred Industry verfolgen: Chemicals etc </ b>
-To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,"Um Objekte mit Barcode verfolgen. Sie werden in der Lage sein, um Elemente in Lieferschein und Sales Invoice durch Scannen Barcode einzusteigen."
+To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.,"So verfolgen Sie Artikel in Einkaufs-und Verkaufsdokumenten auf der Grundlage ihrer Seriennummern. Diese Funktion kann auch verwendet werden, um die Garantieangaben des Produkts zu verfolgen."
+To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,So verfolgen Sie Artikel in Einkaufs-und Verkaufsdokumenten mit Stapelnummern<b>Bevorzugte Branche: Chemikalien usw.</b>
+To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,So verfolgen Sie Artikel über den Barcode. Durch das Scannen des Artikel-Barcodes können Sie ihn in den Lieferschein und die Rechnung aufnehmen.
 Too many columns. Export the report and print it using a spreadsheet application.,Zu viele Spalten. Exportieren Sie den Bericht und drucken Sie es mit einem Tabellenkalkulationsprogramm.
-Tools,Werkzeuge
+Tools,Extras
 Total,Gesamt
 Total ({0}),Gesamt ({0})
-Total Advance,Insgesamt Geleistete
+Total Advance,Gesamtvoraus
 Total Amount,Gesamtbetrag
-Total Amount To Pay,Insgesamt zu zahlenden Betrag
-Total Amount in Words,Insgesamt Betrag in Worten
+Total Amount To Pay,Fälliger Gesamtbetrag
+Total Amount in Words,Gesamtbetrag in Worten
 Total Billing This Year: ,Insgesamt Billing Dieses Jahr:
 Total Characters,Insgesamt Charaktere
-Total Claimed Amount,Insgesamt geforderten Betrag
-Total Commission,Gesamt Kommission
-Total Cost,Total Cost
-Total Credit,Insgesamt Kredit
-Total Debit,Insgesamt Debit
+Total Claimed Amount,Summe des geforderten Betrags
+Total Commission,Gesamtbetrag Kommission
+Total Cost,Gesamtkosten
+Total Credit,Gesamtkredit
+Total Debit,Gesamtschuld
 Total Debit must be equal to Total Credit. The difference is {0},Insgesamt muss Debit gleich Gesamt-Credit ist.
-Total Deduction,Insgesamt Abzug
-Total Earning,Insgesamt Earning
-Total Experience,Total Experience
+Total Deduction,Gesamtabzug
+Total Earning,Gesamteinnahmen
+Total Experience,Intensive Erfahrung
 Total Hours,Gesamtstunden
-Total Hours (Expected),Total Hours (Erwartete)
-Total Invoiced Amount,Insgesamt Rechnungsbetrag
-Total Leave Days,Insgesamt Leave Tage
-Total Leaves Allocated,Insgesamt Leaves Allocated
+Total Hours (Expected),Gesamtstunden (erwartet)
+Total Invoiced Amount,Gesamtrechnungsbetrag
+Total Leave Days,Urlaubstage insgesamt
+Total Leaves Allocated,Insgesamt zugewiesene Urlaubstage
 Total Message(s),Insgesamt Nachricht (en)
-Total Operating Cost,Gesamten Betriebskosten
-Total Points,Total Points
-Total Raw Material Cost,Insgesamt Rohstoffkosten
-Total Sanctioned Amount,Insgesamt Sanctioned Betrag
-Total Score (Out of 5),Gesamtpunktzahl (von 5)
-Total Tax (Company Currency),Total Tax (Gesellschaft Währung)
-Total Taxes and Charges,Insgesamt Steuern und Abgaben
-Total Taxes and Charges (Company Currency),Insgesamt Steuern und Gebühren (Gesellschaft Währung)
+Total Operating Cost,Gesamtbetriebskosten
+Total Points,Gesamtpunkte
+Total Raw Material Cost,Gesamtkosten für Rohstoffe
+Total Sanctioned Amount,Gesamtsumme genehmigter Betrag
+Total Score (Out of 5),Gesamtwertung (von 5)
+Total Tax (Company Currency),Gesamtsteuerlast (Unternehmenswährung)
+Total Taxes and Charges,Steuern und Ausgaben insgesamt
+Total Taxes and Charges (Company Currency),Steuern und Ausgaben insgesamt (Unternehmenswährung)
 Total allocated percentage for sales team should be 100,Insgesamt zugeordnet Prozentsatz für Vertriebsteam sollte 100 sein
-Total amount of invoices received from suppliers during the digest period,Gesamtbetrag der erhaltenen Rechnungen von Lieferanten während der Auszugsperiodeninformation
-Total amount of invoices sent to the customer during the digest period,Gesamtbetrag der Rechnungen an die Kunden während der Auszugsperiodeninformation
+Total amount of invoices received from suppliers during the digest period,Gesamtbetrag der vom Lieferanten während des Berichtszeitraums eingereichten Rechnungen
+Total amount of invoices sent to the customer during the digest period,"Gesamtbetrag der Rechnungen, die während des Berichtszeitraums an den Kunden gesendet wurden"
 Total cannot be zero,Insgesamt darf nicht Null sein
-Total in words,Total in Worten
+Total in words,Gesamt in Worten
 Total points for all goals should be 100. It is {0},Gesamtpunkte für alle Ziele sollten 100 sein. Es ist {0}
 Total valuation for manufactured or repacked item(s) can not be less than total valuation of raw materials,Gesamtbewertungs für hergestellte oder umgepackt Artikel (s) kann nicht kleiner als die Gesamt Bewertung der Rohstoffe sein
 Total weightage assigned should be 100%. It is {0},Insgesamt Gewichtung zugeordnet sollte 100 % sein. Es ist {0}
-Totals,Totals
+Totals,Gesamtsummen
 Track Leads by Industry Type.,Spur führt nach Branche Typ .
-Track this Delivery Note against any Project,Verfolgen Sie diesen Lieferschein gegen Projekt
-Track this Sales Order against any Project,Verfolgen Sie diesen Kundenauftrag gegen Projekt
+Track separate Income and Expense for product verticals or divisions.,Einnahmen und Ausgaben für Produktbereiche oder Abteilungen separat verfolgen.
+Track this Delivery Note against any Project,Diesen Lieferschein für jedes Projekt nachverfolgen
+Track this Sales Order against any Project,Diesen Kundenauftrag für jedes Projekt nachverfolgen
 Transaction,Transaktion
-Transaction Date,Transaction Datum
+Transaction Date,Transaktionsdatum
 Transaction not allowed against stopped Production Order {0},Transaktion nicht gegen gestoppt Fertigungsauftrag erlaubt {0}
-Transfer,Übertragen
+Transfer,Übertragung
 Transfer Material,Transfermaterial
 Transfer Raw Materials,Übertragen Rohstoffe
 Transferred Qty,Die übertragenen Menge
 Transportation,Transport
-Transporter Info,Transporter Info
-Transporter Name,Transporter Namen
-Transporter lorry number,Transporter Lkw-Zahl
+Transporter Info,Informationen zum Transportunternehmer
+Transporter Name,Name des Transportunternehmers
+Transporter lorry number,LKW-Nr. des Transportunternehmers
 Travel,Reise
 Travel Expenses,Reisekosten
 Tree Type,Baum- Typ
 Tree of Item Groups.,Baum der Artikelgruppen .
 Tree of finanial Cost Centers.,Baum des finanial Kostenstellen .
 Tree of finanial accounts.,Baum des finanial Konten.
-Trial Balance,Rohbilanz
+Trial Balance,Allgemeine Kontenbilanz
 Tuesday,Dienstag
 Type,Typ
 Type of document to rename.,Art des Dokuments umbenennen.
-"Type of leaves like casual, sick etc.","Art der Blätter wie beiläufig, krank usw."
-Types of Expense Claim.,Arten von Expense Anspruch.
-Types of activities for Time Sheets,Arten von Aktivitäten für Time Sheets
+"Type of leaves like casual, sick etc.","Grund für Beurlaubung, wie Urlaub, krank usw."
+Types of Expense Claim.,Spesenabrechnungstypen
+Types of activities for Time Sheets,Art der Aktivität für Tätigkeitsnachweis
 "Types of employment (permanent, contract, intern etc.).","Art der Beschäftigung (permanent , Vertrag, Praktikanten etc.)."
-UOM Conversion Detail,UOM Conversion Details
-UOM Conversion Details,UOM Conversion Einzelheiten
-UOM Conversion Factor,UOM Umrechnungsfaktor
+UOM Conversion Detail,ME-Umrechnung Detail
+UOM Conversion Details,ME-Umrechnung Details
+UOM Conversion Factor,ME-Umrechnungsfaktor
 UOM Conversion factor is required in row {0},Verpackung Umrechnungsfaktor wird in der Zeile erforderlich {0}
-UOM Name,UOM Namen
+UOM Name,ME-Namen
 UOM coversion factor required for UOM: {0} in Item: {1},Verpackung coverFaktor für Verpackung benötigt: {0} in Item: {1}
 Under AMC,Unter AMC
-Under Graduate,Unter Graduate
+Under Graduate,Schulabgänger
 Under Warranty,Unter Garantie
 Unit,Einheit
 Unit of Measure,Maßeinheit
 Unit of Measure {0} has been entered more than once in Conversion Factor Table,Maßeinheit {0} hat mehr als einmal in Umrechnungsfaktor Tabelle eingetragen
-"Unit of measurement of this item (e.g. Kg, Unit, No, Pair).","Maßeinheit für diesen Artikel (zB kg, Einheit, Nein, Pair)."
-Units/Hour,Einheiten / Stunde
-Units/Shifts,Units / Shifts
-Unpaid,Unbezahlte
+"Unit of measurement of this item (e.g. Kg, Unit, No, Pair).","Maßeinheit für diesen Artikel (z.B. Kg, Einheit, Nein, Paar)."
+Units/Hour,Einheiten/Stunde
+Units/Shifts,Einheiten/Schichten
+Unpaid,Unbezahlt
 Unreconciled Payment Details,Nicht abgestimmte Zahlungsdetails
 Unscheduled,Außerplanmäßig
 Unsecured Loans,Unbesicherte Kredite
 Unstop,aufmachen
 Unstop Material Request,Unstop -Material anfordern
 Unstop Purchase Order,Unstop Bestellung
-Unsubscribed,Unsubscribed
-Update,Aktualisieren
-Update Clearance Date,Aktualisieren Restposten Datum
+Unsubscribed,Abgemeldet
+Update,Aktualisierung
+Update Clearance Date,Tilgungsdatum aktualisieren
 Update Cost,Update- Kosten
 Update Finished Goods,Aktualisieren Fertigwaren
-Update Landed Cost,Aktualisieren Landed Cost
-Update Series,Update Series
-Update Series Number,Update Series Number
-Update Stock,Aktualisieren Lager
-Update bank payment dates with journals.,Update Bank Zahlungstermine mit Zeitschriften.
+Update Series,Serie aktualisieren
+Update Series Number,Seriennummer aktualisieren
+Update Stock,Lagerbestand aktualisieren
+Update additional costs to calculate landed cost of items,
+Update bank payment dates with journals.,Aktualisieren Sie die Zahlungstermine anhand der Journale.
 Update clearance date of Journal Entries marked as 'Bank Vouchers',"Update- Clearance Datum der Journaleinträge als ""Bank Gutscheine 'gekennzeichnet"
 Updated,Aktualisiert
 Updated Birthday Reminders,Aktualisiert Geburtstagserinnerungen
-Upload Attendance,Hochladen Teilnahme
-Upload Backups to Dropbox,Backups auf Dropbox hochladen
-Upload Backups to Google Drive,Laden Sie Backups auf Google Drive
-Upload HTML,Hochladen HTML
-Upload a .csv file with two columns: the old name and the new name. Max 500 rows.,Laden Sie eine CSV-Datei mit zwei Spalten:. Den alten Namen und der neue Name. Max 500 Zeilen.
-Upload attendance from a .csv file,Fotogalerie Besuch aus einer. Csv-Datei
-Upload stock balance via csv.,Hochladen Bestandsliste über csv.
+Upload Attendance,Teilnahme hochladen
+Upload Backups to Dropbox,Backups in Dropbox hochladen
+Upload Backups to Google Drive,Backups auf Google Drive hochladen
+Upload HTML,Upload-HTML
+Upload a .csv file with two columns: the old name and the new name. Max 500 rows.,"Laden Sie eine CSV-Datei mit zwei Spalten hoch: In der einen der alte, in der anderen der neue Name. Höchstens 500 Zeilen."
+Upload attendance from a .csv file,Teilnahme aus  einer CSV-Datei hochladen
+Upload stock balance via csv.,Bestandsbilanz über CSV hochladen
 Upload your letter head and logo - you can edit them later.,Laden Sie Ihr Briefkopf und Logo - Sie können sie später zu bearbeiten.
-Upper Income,Obere Income
+Upper Income,Oberes Einkommen
 Urgent,Dringend
-Use Multi-Level BOM,Verwenden Sie Multi-Level BOM
-Use SSL,Verwenden Sie SSL
+Use Multi-Level BOM,Mehrstufige Stückliste verwenden
+Use SSL,SSL verwenden
 Used for Production Plan,Wird für Produktionsplan
 User,Benutzer
-User ID,Benutzer-ID
+User ID,Benutzerkennung
 User ID not set for Employee {0},Benutzer-ID nicht für Mitarbeiter eingestellt {0}
-User Name,User Name
+User Name,Benutzername
 User Name or Support Password missing. Please enter and try again.,Benutzername oder Passwort -Unterstützung fehlt. Bitte geben Sie und versuchen Sie es erneut .
-User Remark,Benutzer Bemerkung
-User Remark will be added to Auto Remark,Benutzer Bemerkung auf Auto Bemerkung hinzugefügt werden
+User Remark,Benutzerbemerkung
+User Remark will be added to Auto Remark,Benutzerbemerkung wird der automatischen Bemerkung hinzugefügt
 User Remarks is mandatory,Benutzer Bemerkungen ist obligatorisch
 User Specific,Benutzerspezifisch
-User must always select,Der Benutzer muss immer wählen
+User must always select,Benutzer muss immer auswählen
 User {0} is already assigned to Employee {1},Benutzer {0} ist bereits an Mitarbeiter zugewiesen {1}
 User {0} is disabled,Benutzer {0} ist deaktiviert
 Username,Benutzername
+Users who can approve a specific employee's leave applications,"Benutzer, die die Urlaubsanträge eines bestimmten Mitarbeiters genehmigen können"
 Users with this role are allowed to create / modify accounting entry before frozen date,Benutzer mit dieser Rolle sind erlaubt zu erstellen / Verbuchung vor gefrorenen Datum ändern
 Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Benutzer mit dieser Rolle erlaubt sind auf eingefrorenen Konten setzen und / Buchungen gegen eingefrorene Konten ändern
 Utilities,Dienstprogramme
 Utility Expenses,Utility- Aufwendungen
-Valid For Territories,Gültig für Territories
+Valid For Territories,Gültig für Regionen
 Valid From,Gültig ab
-Valid Upto,Gültig Bis
-Valid for Territories,Gültig für Territories
-Validate,Bestätigen
+Valid Upto,Gültig bis
+Valid for Territories,Gültig für Regionen
+Validate,Prüfen
 Valuation,Bewertung
-Valuation Method,Valuation Method
-Valuation Rate,Valuation bewerten
+Valuation Method,Bewertungsmethode
+Valuation Rate,Bewertungsrate
 Valuation Rate required for Item {0},Artikel für erforderlich Bewertungs Bewerten {0}
-Valuation and Total,Bewertung und insgesamt
+Valuation and Total,Bewertung und Gesamt
 Value,Wert
 Value or Qty,Wert oder Menge
-Vehicle Dispatch Date,Fahrzeug Versanddatum
-Vehicle No,Kein Fahrzeug
+Vehicle Dispatch Date,Fahrzeugversanddatum
+Vehicle No,Fahrzeug Nr.
 Venture Capital,Risikokapital
-Verified By,Verified By
+Verified By,Geprüft durch
+View Details,
 View Ledger,Ansicht Ledger
 View Now,Jetzt ansehen
-Visit report for maintenance call.,Bericht über den Besuch für die Wartung Anruf.
+Visit report for maintenance call.,Besuchsbericht für Wartungsabruf.
 Voucher #,Gutschein #
-Voucher Detail No,Gutschein Detailaufnahme
+Voucher Detail No,Gutscheindetail Nr.
 Voucher Detail Number,Gutschein Detail Anzahl
-Voucher ID,Gutschein ID
-Voucher No,Gutschein Nein
-Voucher Type,Gutschein Type
-Voucher Type and Date,Gutschein Art und Datum
-Walk In,Walk In
-Warehouse,Lager
-Warehouse Contact Info,Warehouse Kontakt Info
-Warehouse Detail,Warehouse Details
-Warehouse Name,Warehouse Namen
-Warehouse and Reference,Warehouse und Referenz
+Voucher ID,Gutschein-ID
+Voucher No,Gutscheinnr.
+Voucher Type,Gutscheintyp
+Voucher Type and Date,Art und Datum des Gutscheins
+Walk In,Hereinspazieren
+Warehouse,Warenlager
+Warehouse Contact Info,Kontaktinformation Warenlager
+Warehouse Detail,Detail Warenlager
+Warehouse Name,Warenlagername
+Warehouse and Reference,Warenlager und Referenz
 Warehouse can not be deleted as stock ledger entry exists for this warehouse.,"Warehouse kann nicht gelöscht werden, da Aktienbuch Eintrag für diese Lager gibt."
 Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Warehouse kann nur über Lizenz Entry / Lieferschein / Kaufbeleg geändert werden
 Warehouse cannot be changed for Serial No.,Warehouse kann nicht für Seriennummer geändert werden
@@ -3216,88 +3379,88 @@
 Warehouse is missing in Purchase Order,Warehouse ist in der Bestellung fehlen
 Warehouse not found in the system,Warehouse im System nicht gefunden
 Warehouse required for stock Item {0},Lagerhaus Lager Artikel erforderlich {0}
-Warehouse where you are maintaining stock of rejected items,"Warehouse, wo Sie erhalten Bestand abgelehnt Elemente werden"
+Warehouse where you are maintaining stock of rejected items,"Warenlager, in dem Sie Bestand oder abgelehnte Artikel lagern"
 Warehouse {0} can not be deleted as quantity exists for Item {1},"Warehouse {0} kann nicht gelöscht werden, Menge für Artikel existiert {1}"
 Warehouse {0} does not belong to company {1},Warehouse {0} ist nicht gehören Unternehmen {1}
 Warehouse {0} does not exist,Warehouse {0} existiert nicht
 Warehouse {0}: Company is mandatory,Warehouse {0}: Unternehmen ist obligatorisch
 Warehouse {0}: Parent account {1} does not bolong to the company {2},Warehouse {0}: Eltern-Konto {1} nicht Bolong an die Firma {2}
-Warehouse-Wise Stock Balance,Warehouse-Wise Bestandsliste
-Warehouse-wise Item Reorder,Warehouse-weise Artikel Reorder
-Warehouses,Gewerberäume
+Warehouse-Wise Stock Balance,Warenlagerweise Bestandsbilanz
+Warehouse-wise Item Reorder,Warenlagerweise Artikelaufzeichnung
+Warehouses,Warenlager
 Warehouses.,Gewerberäume .
 Warn,Warnen
-Warning: Leave application contains following block dates,Achtung: Leave Anwendung enthält folgende Block Termine
+Warning: Leave application contains following block dates,Achtung: Die Urlaubsanwendung enthält die folgenden gesperrten Daten
 Warning: Material Requested Qty is less than Minimum Order Qty,Achtung : Material Gewünschte Menge weniger als Mindestbestellmengeist
 Warning: Sales Order {0} already exists against same Purchase Order number,Warnung: Sales Order {0} gegen gleiche Auftragsnummer ist bereits vorhanden
 Warning: System will not check overbilling since amount for Item {0} in {1} is zero,"Achtung: Das System wird nicht zu überprüfen, da überhöhte Betrag für Artikel {0} in {1} Null"
-Warranty / AMC Details,Garantie / AMC Einzelheiten
+Warranty / AMC Details,Garantie / AMC-Details
 Warranty / AMC Status,Garantie / AMC-Status
-Warranty Expiry Date,Garantie Ablaufdatum
-Warranty Period (Days),Garantiezeitraum (Tage)
-Warranty Period (in days),Gewährleistungsfrist (in Tagen)
+Warranty Expiry Date,Garantieablaufdatum
+Warranty Period (Days),Gewährleistungsfrist
+Warranty Period (in days),Garantiezeitraum (in Tagen)
 We buy this Item,Wir kaufen Artikel
 We sell this Item,Wir verkaufen Artikel
 Website,Webseite
-Website Description,Website Beschreibung
-Website Item Group,Website-Elementgruppe
-Website Item Groups,Website Artikelgruppen
-Website Settings,Website-Einstellungen
-Website Warehouse,Website Warehouse
+Website Description,Website Beschreibung
+Website Item Group,Webseite Artikelgruppe
+Website Item Groups,Webseite Artikelgruppen
+Website Manager,
+Website Settings,Webseiteneinstellungen
+Website Warehouse,Webseite Warenlager
 Wednesday,Mittwoch
 Weekly,Wöchentlich
-Weekly Off,Wöchentliche Off
-Weight UOM,Gewicht UOM
+Weekly Off,Wöchentlich frei
+Weight UOM,Gewicht ME
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Das Gewicht wird erwähnt, \ nBitte erwähnen "" Gewicht Verpackung "" zu"
 Weightage,Gewichtung
 Weightage (%),Gewichtung (%)
-Welcome,willkommen
+Welcome,Willkommen
 Welcome to ERPNext. Over the next few minutes we will help you setup your ERPNext account. Try and fill in as much information as you have even if it takes a bit longer. It will save you a lot of time later. Good Luck!,"Willkommen auf ERPNext . In den nächsten Minuten werden wir Ihnen helfen, Ihre Setup ERPNext Konto. Versuchen Sie, und füllen Sie so viele Informationen wie Sie haben , auch wenn es etwas länger dauert . Es wird Ihnen eine Menge Zeit später. Viel Glück!"
 Welcome to ERPNext. Please select your language to begin the Setup Wizard.,"Willkommen auf ERPNext . Bitte wählen Sie Ihre Sprache , um den Setup-Assistenten zu starten."
 What does it do?,Was macht sie?
-"When any of the checked transactions are ""Submitted"", an email pop-up automatically opened to send an email to the associated ""Contact"" in that transaction, with the transaction as an attachment. The user may or may not send the email.","Wenn eine der überprüften Transaktionen werden ""Eingereicht"", ein E-Mail-pop-up automatisch geöffnet, um eine E-Mail mit dem zugehörigen ""Kontakt"" in dieser Transaktion zu senden, mit der Transaktion als Anhang. Der Benutzer kann oder nicht-Mail senden."
+"When any of the checked transactions are ""Submitted"", an email pop-up automatically opened to send an email to the associated ""Contact"" in that transaction, with the transaction as an attachment. The user may or may not send the email.","Wenn eine der geprüften Transaktionen den Status ""Abgesendet/Eingereicht"" hat, wird automatisch eine Popup-E-Mail geöffnet, damit die Transaktion als Anhang per E-Mail an den zugeordneten ""Kontakt"" dieser Transaktion gesendet werden kann.  Der Benutzer kann diese E-Mail absenden oder nicht."
 "When submitted, the system creates difference entries to set the given stock and valuation on this date.","Wenn vorgelegt , erstellt das System Unterschied Einträge, um die Lager -und Bewertungs gegeben an diesem Tag eingestellt ."
-Where items are stored.,Wo Elemente gespeichert werden.
-Where manufacturing operations are carried out.,Wo Herstellungsvorgänge werden durchgeführt.
-Widowed,Verwitwet
+Where items are stored.,Wo Artikel gelagert werden.
+Where manufacturing operations are carried out.,Wo Herstellungsvorgänge durchgeführt werden.
+Widowed,Verwaist
 Will be calculated automatically when you enter the details,"Wird automatisch berechnet, wenn Sie die Daten eingeben"
-Will be updated after Sales Invoice is Submitted.,Wird aktualisiert After-Sales-Rechnung vorgelegt werden.
-Will be updated when batched.,"Wird aktualisiert, wenn dosiert werden."
+Will be updated after Sales Invoice is Submitted.,"Wird aktualisiert, nachdem die Verkaufsrechnung eingereicht wird."
+Will be updated when batched.,"Wird aktualisiert, wenn Stapel erstellt werden."
 Will be updated when billed.,"Wird aktualisiert, wenn in Rechnung gestellt."
 Wire Transfer,Überweisung
-With Operations,Mit Operations
-With Period Closing Entry,Mit Periode Schluss Eintrag
-Work Details,Werk Details
-Work Done,Arbeit
-Work In Progress,Work In Progress
-Work-in-Progress Warehouse,Work-in-Progress Warehouse
+With Operations,Mit Vorgängen
+Work Details,Arbeitsdetails
+Work Done,Erledigte Arbeit
+Work In Progress,Laufende Arbeiten
+Work-in-Progress Warehouse,Warenlager laufende Arbeit
 Work-in-Progress Warehouse is required before Submit,"Arbeit - in -Progress Warehouse erforderlich ist, bevor abschicken"
 Working,Arbeit
 Working Days,Arbeitstage
-Workstation,Arbeitsplatz
+Workstation,Arbeitsstation
 Workstation Name,Name der Arbeitsstation
-Write Off Account,Write Off Konto
-Write Off Amount,Write Off Betrag
-Write Off Amount <=,Write Off Betrag <=
-Write Off Based On,Write Off Based On
-Write Off Cost Center,Write Off Kostenstellenrechnung
-Write Off Outstanding Amount,Write Off ausstehenden Betrag
-Write Off Voucher,Write Off Gutschein
-Wrong Template: Unable to find head row.,Falsche Vorlage: Kann Kopfzeile zu finden.
+Write Off Account,"Abschreiben, Konto"
+Write Off Amount,"Abschreiben, Betrag"
+Write Off Amount <=,"Abschreiben, Betrag <="
+Write Off Based On,Abschreiben basiert auf
+Write Off Cost Center,"Abschreiben, Kostenstelle"
+Write Off Outstanding Amount,"Abschreiben, ausstehender Betrag"
+Write Off Voucher,"Abschreiben, Gutschein"
+Wrong Template: Unable to find head row.,Falsche Vorlage: Kopfzeile nicht gefunden
 Year,Jahr
 Year Closed,Jahr geschlossen
 Year End Date,Year End Datum
-Year Name,Jahr Name
-Year Start Date,Jahr Startdatum
-Year of Passing,Jahr der Übergabe
+Year Name,Name des Jahrs
+Year Start Date,Startdatum des Jahrs
+Year of Passing,Jahr des Übergangs
 Yearly,Jährlich
 Yes,Ja
 You are not authorized to add or update entries before {0},"Sie sind nicht berechtigt , um Einträge hinzuzufügen oder zu aktualisieren , bevor {0}"
 You are not authorized to set Frozen value,"Sie sind nicht berechtigt, Gefrorene Wert eingestellt"
 You are the Expense Approver for this record. Please Update the 'Status' and Save,Sie sind der Kosten Genehmiger für diesen Datensatz . Bitte aktualisiere den 'Status' und Sparen
 You are the Leave Approver for this record. Please Update the 'Status' and Save,Sie sind der Leave Genehmiger für diesen Datensatz . Bitte aktualisiere den 'Status' und Sparen
-You can enter any date manually,Sie können ein beliebiges Datum manuell eingeben
-You can enter the minimum quantity of this item to be ordered.,Sie können die minimale Menge von diesem Artikel bestellt werden.
+You can enter any date manually,Sie können jedes Datum manuell eingeben
+You can enter the minimum quantity of this item to be ordered.,"Sie können die Mindestmenge dieses Artikels eingeben, die bestellt werden soll."
 You can not change rate if BOM mentioned agianst any item,"Sie können Rate nicht ändern, wenn BOM agianst jeden Artikel erwähnt"
 You can not enter both Delivery Note No and Sales Invoice No. Please enter any one.,Sie können nicht sowohl Lieferschein Nein und Sales Invoice Nr. Bitte geben Sie eine beliebige .
 You can not enter current voucher in 'Against Journal Voucher' column,"Sie können keine aktuellen Gutschein in ""Gegen Blatt Gutschein -Spalte"
@@ -3309,7 +3472,7 @@
 You have entered duplicate items. Please rectify and try again.,Sie haben doppelte Elemente eingetragen. Bitte korrigieren und versuchen Sie es erneut .
 You may need to update: {0},Sie müssen möglicherweise aktualisiert werden: {0}
 You must Save the form before proceeding,"Sie müssen das Formular , bevor Sie speichern"
-Your Customer's TAX registration numbers (if applicable) or any general information,Ihre Kunden TAX Kennzeichen (falls zutreffend) oder allgemeine Informationen
+Your Customer's TAX registration numbers (if applicable) or any general information,Steuernummern Ihres Kunden (falls zutreffend) oder allgemeine Informationen
 Your Customers,Ihre Kunden
 Your Login Id,Ihre Login-ID
 Your Products or Services,Ihre Produkte oder Dienstleistungen
@@ -3317,41 +3480,46 @@
 Your email address,Ihre E-Mail -Adresse
 Your financial year begins on,Ihr Geschäftsjahr beginnt am
 Your financial year ends on,Ihr Geschäftsjahr endet am
-Your sales person who will contact the customer in future,"Ihr Umsatz Person, die die Kunden in Zukunft in Verbindung setzen"
-Your sales person will get a reminder on this date to contact the customer,"Ihre Vertriebsmitarbeiter erhalten eine Erinnerung an diesem Tag, um den Kunden an"
+Your sales person who will contact the customer in future,"Ihr Vertriebsmitarbeiter, der den Kunden in Zukunft kontaktiert"
+Your sales person will get a reminder on this date to contact the customer,"Ihr Vertriebsmitarbeiter erhält an diesem Datum eine Erinnerung, den Kunden zu kontaktieren"
 Your setup is complete. Refreshing...,Ihre Einrichtung ist abgeschlossen. Erfrischend ...
-Your support email id - must be a valid email - this is where your emails will come!,"Ihre Unterstützung email id - muss eine gültige E-Mail-sein - das ist, wo Ihre E-Mails wird kommen!"
-[Error],[Fehler]
+Your support email id - must be a valid email - this is where your emails will come!,Ihre Support-E-Mail-ID - muss eine gültige E-Mail sein. An diese Adresse erhalten Sie Ihre E-Mails!
+[Error],[Error]
 [Select],[Select ]
 `Freeze Stocks Older Than` should be smaller than %d days.,`Frost Stocks Älter als ` sollte kleiner als% d Tage.
 and,und
 are not allowed.,sind nicht erlaubt.
-assigned by,zugewiesen durch
-cannot be greater than 100,nicht größer als 100 sein
+assigned by,zugewiesen von
+cannot be greater than 100,darf nicht größer als 100 sein
 "e.g. ""Build tools for builders""","z.B. ""Build -Tools für Bauherren """
 "e.g. ""MC""","z.B. ""MC"""
 "e.g. ""My Company LLC""","z.B. "" My Company LLC"""
 e.g. 5,z.B. 5
 "e.g. Bank, Cash, Credit Card","z.B. Bank, Bargeld, Kreditkarte"
-"e.g. Kg, Unit, Nos, m","z.B. Kg, Einheit, Nos, m"
+"e.g. Kg, Unit, Nos, m","z.B. Kg, Einheit, Nr, m"
 e.g. VAT,z.B. Mehrwertsteuer
-eg. Cheque Number,zB. Scheck-Nummer
+eg. Cheque Number,z. B. Schecknummer
 example: Next Day Shipping,Beispiel: Versand am nächsten Tag
-lft,lft
+fold,
+hidden,
+hours,
+lft,li
 old_parent,old_parent
-rgt,rgt
+rgt,Rt
 subject,Betreff
-to,auf
+to,bis
 website page link,Website-Link
 {0} '{1}' not in Fiscal Year {2},{0} ' {1}' nicht im Geschäftsjahr {2}
-{0} Credit limit {0} crossed,{0} Kreditlimit {0} gekreuzt
+{0} Credit limit {1} crossed,
 {0} Serial Numbers required for Item {0}. Only {0} provided.,{0} Seriennummern für Artikel erforderlich {0}. Nur {0} ist.
 {0} budget for Account {1} against Cost Center {2} will exceed by {3},{0} Budget für Konto {1} gegen Kostenstelle {2} wird von {3} überschreiten
 {0} can not be negative,{0} kann nicht negativ sein
 {0} created,{0} erstellt
+{0} days from {1},
 {0} does not belong to Company {1},{0} ist nicht auf Unternehmen gehören {1}
 {0} entered twice in Item Tax,{0} trat zweimal in Artikel Tax
-{0} is an invalid email address in 'Notification Email Address',{0} ist eine ungültige E-Mail- Adresse in 'Benachrichtigung per E-Mail -Adresse'
+"{0} is an invalid email address in 'Notification \
+					Email Address'",
 {0} is mandatory,{0} ist obligatorisch
 {0} is mandatory for Item {1},{0} Artikel ist obligatorisch für {1}
 {0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} ist obligatorisch. Vielleicht Devisenwechsel Datensatz nicht für {1} bis {2} erstellt.
