 (Half Day),(Halber Tag)
 and year: ,und Jahr:
""" does not exists",""" Existiert nicht"
%  Delivered,%  geliefert
% Amount Billed,% Betrag in Rechnung gestellt
% Billed,% in Rechnung gestellt
% Completed,% abgeschlossen
% Delivered,Geliefert %
% 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"
'Entries' cannot be empty,' Einträge ' darf nicht leer sein
'Expected Start Date' can not be greater than 'Expected End Date',""" Erwartete Startdatum "" nicht größer als "" voraussichtlich Ende Datum "" sein"
'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 %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.','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.
"**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 = [?] FractionFor 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>"
"<h4>Default Template</h4><p>Uses <a href=""http://jinja.pocoo.org/docs/templates/"">Jinja Templating</a> and all the fields of Address (including Custom Fields if any) will be available</p><pre><code>{{ address_line1 }}&lt;br&gt;{% if address_line2 %}{{ address_line2 }}&lt;br&gt;{% endif -%}{{ city }}&lt;br&gt;{% if state %}{{ state }}&lt;br&gt;{% endif -%}{% if pincode %} PIN:  {{ pincode }}&lt;br&gt;{% endif -%}{{ country }}&lt;br&gt;{% 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>",
A Customer Group exists with same name please change the Customer name or rename the Customer Group,Eine Kundengruppe mit dem gleichen Namen existiert bereits. Ändern Sie den Kundennamen oder nennen Sie die Kundengruppe um
A Customer exists with same name,Ein Kunde mit dem gleichen Namen existiert bereits
A Lead with this email id should exist,Ein Lead mit dieser E-Mail Adresse sollte vorhanden sein
A Product or Service,Ein Produkt oder Dienstleistung
"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,Ein Lieferant mit dem gleichen Namen existiert bereits
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, z.B. €"
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 darf nicht länger als 5 Zeichen sein
Above Value,Über Wert
Absent,Abwesend
Acceptance Criteria,Akzeptanzkriterium
Accepted,Akzeptiert
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Akzeptierte + Abgelehnte Menge muss für den Posten {0} gleich der Erhaltenen Menge sein
Accepted Quantity,Akzeptierte Menge
Accepted Warehouse,Akzeptiertes Lager
Account,Konto
Account Balance,Kontostand
Account Created: {0},Konto {0} erstellt
Account Details,Kontendaten
Account Head,Konto Kopf
Account Name,Konto Name
Account Type,Konto Typ
"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 (Laufende Inventur) wird unter diesem Konto erstellt.
Account head {0} created,Konto Kopf {0} erstellt
Account must be a balance sheet account,Konto muss ein Bilanzkonto sein
Account with child nodes cannot be converted to ledger,Ein Konto mit Kind-Knoten kann nicht in ein Kontoblatt umgewandelt werden
Account with existing transaction can not be converted to group.,Ein Konto mit bestehenden Transaktion kann nicht in eine Gruppe umgewandelt werden
Account with existing transaction can not be deleted,Ein Konto mit bestehenden Transaktion kann nicht gelöscht werden
Account with existing transaction cannot be converted to ledger,Ein Konto mit bestehenden Transaktion kann nicht in ein Kontoblatt umgewandelt werden
Account {0} cannot be a Group,Konto {0} kann keine Gruppe sein
Account {0} does not belong to Company {1},Konto {0} gehört nicht zum Unternehmen {1}
Account {0} does not belong to company: {1},Konto {0} gehört nicht zum Unternehmen {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} wurde mehr als einmal für das Geschäftsjahr {1} eingegeben 
Account {0} is frozen,Konto {0} ist eingefroren
Account {0} is inactive,Konto {0} ist inaktiv
Account {0} is not valid,Konto {0} ist nicht gültig
Account {0} must be of type 'Fixed Asset' as Item {1} is an Asset Item,"Konto {0} muss vom Typ ""Aktivposten"" sein, weil der Artikel {1} ein Aktivposten ist"
Account {0}: Parent account {1} can not be a ledger,Konto {0}: Eltern-Konto {1} kann kein Kontenblatt sein
Account {0}: Parent account {1} does not belong to company: {2},Konto {0}: Eltern-Konto {1} gehört nicht zur Firma {2}
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 {0} kann nur über Lagerbewegungen aktualisiert werden
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 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,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,Aktivitätsprotokoll
Activity Log:,Activity Log:
Activity Type,Aktivitätstyp
Actual,Tatsächlich
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,Istmenge
Actual Start Date,Tatsächliches Startdatum
Add,Hinzufügen
Add / Edit Taxes and Charges,Hinzufügen/Bearbeiten von Steuern und Abgaben
Add Child,Kind hinzufügen
Add Serial No,In Seriennummer
Add Taxes,Steuern hinzufügen
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,Empfänger hinzufügen/entfernen
Address,Adresse
Address & Contact,Adresse & Kontakt
Address & Contacts,Adresse & Kontakt
Address Desc,Adresszusatz
Address Details,Adressdetails
Address HTML,Adresse HTML
Address Line 1,Adresszeile 1
Address Line 2,Adresszeile 2
Address Template,Adressvorlage
Address Title,Adresse Titel
Address Title is mandatory.,Titel Adresse ist verpflichtend.
Address Type,Adresstyp
Address master.,Adresse Master.
Administrative Expenses,Verwaltungskosten
Administrative Officer,Administrative Officer
Administrator,
Advance Amount,Vorausbetrag
Advance amount,Vorausbetrag
Advances,Vorschüsse
Advertisement,Anzeige
Advertising,Werbung
Aerospace,Luft-und Raumfahrt
After Sale Installations,Installationen nach Verkauf
Against,Gegen
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,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,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 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
"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,
All Addresses.,Alle Adressen
All Contact,Alle Kontakte
All Contacts.,Alle Kontakte
All Customer Contact,Alle Kundenkontakte
All Customer Groups,Alle Kundengruppen
All Day,Ganzer Tag
All Employee (Active),Alle Mitarbeiter (Aktiv)
All Item Groups,Alle Artikelgruppen
All Lead (Open),Alle Leads (offen)
All Products or Services.,Alle Produkte oder Dienstleistungen.
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,Zuordnung
Allocate leaves for a period.,Ordnen Blätter für einen Zeitraum .
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,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,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,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 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 {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,Geltende Urlaubsliste
Applicable Territory,Anwendbar Territory
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,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.,Urlaubsanträge
Applies to Company,Gilt für Unternehmen
Apply / Approve Leaves,Beurlaubungen anwenden/genehmigen
Apply On,Bewerben auf
Appraisal,Bewertung
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,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,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 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 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,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 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.,Anwesenheitsnachweis
Auditor,
Authorization Control,Berechtigungskontrolle
Authorization Rule,Autorisierungsregel
Auto Accounting For Stock Settings,Auto Accounting for Stock -Einstellungen
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 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 eingegangen ist"
Available,verfügbar
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,Durchschnittlicher Rabatt
Awesome Products,ehrfürchtig Produkte
Awesome Services,ehrfürchtig Dienstleistungen
BOM Detail No,Stückliste Detailnr.
BOM Explosion Item,Position der Stücklistenauflösung
BOM Item,Stücklistenposition
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,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,Datensicherungsverwaltung
Backup Right Now,Jetzt eine Datensicherung durchführen
Backups will be uploaded to,Datensicherungen werden hochgeladen nach
Balance Qty,Bilanz Menge
Balance Sheet,Bilanz
Balance Value,Bilanzwert
Balance for Account {0} must always be {1},Saldo für Konto {0} muss immer {1} sein
Balance must be,Saldo muss sein
"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.,Bankkonto-Nr.
Bank Account,Bankkonto
Bank Account No.,Bankkonto-Nr.
Bank Accounts,Bankkonten
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,Kontenabstimmungsdetail
Bank Reconciliation Statement,Kontenabstimmungsauszug
Bank Voucher,Bankgutschein
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,Beruht auf
Basic,Grundlagen
Basic Info,Basis Informationen
Basic Information,Basis Informationen
Basic Rate,Basisrate
Basic Rate (Company Currency),Basisrate (Unternehmenswährung)
Batch,Stapel
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,"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,Rechnungsbetrag
Billing,Abrechnung
Billing (Sales Invoice),
Billing Address,Rechnungsadresse
Billing Address Name,Name der Rechnungsadresse
Billing Status,Abrechnungsstatus
Bills raised by Suppliers.,Rechnungen an Lieferanten
Bills raised to Customers.,Rechnungen an Kunden
Bin,Lagerfach
Bio,Bio
Biotechnology,Biotechnologie
Birthday,Geburtstag
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 der selben Gesellschaft gehören
Box,Kiste
Branch,Filiale
Brand,Firmenmarke
Brand Name,Markenname
Brand master.,Firmenmarke Vorlage
Brands,Firmenmarken
Breakdown,Übersicht
Broadcasting,Rundfunk
Brokerage,Provision
Budget,Budget
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.,Artikel zum Zeitpunkt des Verkaufs zusammenfassen.
Business Development Manager,Business Development Manager
Buyer of Goods and Services.,Käufer von Waren und Dienstleistungen.
Buying,Einkauf
Buying & Selling,Einkaufen und Verkaufen
Buying Amount,Kaufbetrag
Buying Settings,Einkaufs Einstellungen
"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-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
CENVAT SHE Cess,CENVAT SHE Cess
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,Berechnet auf Grundlage von
Calculate Total Score,Gesamtwertung berechnen
Calendar Events,Kalenderereignisse
Call,Anruf
Calls,Anrufe
Campaign,Kampagne
Campaign Name,Kampagnenname
Campaign Name is required,Kampagnenname ist erforderlich
Campaign Naming By,Kampagne benannt durch
Campaign-.####,Kampagnen . # # # #
Can be approved by {0},Kann von {0} genehmigt werden
"Can not filter based on Account, if grouped by Account","Basierend auf Konto kann nicht filtern, wenn sie von Konto gruppiert"
"Can not filter based on Voucher No, if grouped by Voucher","Basierend auf Gutschein kann nicht auswählen, Nein, wenn durch Gutschein gruppiert"
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,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"
Cannot cancel because Employee {0} is already approved for {1},"Kann nicht kündigen, weil Mitarbeiter {0} ist bereits genehmigt {1}"
Cannot cancel because submitted Stock Entry {0} exists,"Kann nicht kündigen, weil eingereichten Lizenz Eintrag {0} existiert"
Cannot carry forward {0},Kann nicht mitnehmen {0}
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,"Geschäftsjahr Startdatum und Geschäftsjahresende Datum, wenn die Geschäftsjahr wird gespeichert nicht ändern kann."
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Kann nicht ändern Standardwährung des Unternehmens , weil es bestehende Transaktionen. Transaktionen müssen aufgehoben werden, um die Standardwährung zu ändern."
Cannot convert Cost Center to ledger as it has child nodes,"Kann nicht konvertieren Kostenstelle zu Buch , wie es untergeordnete Knoten hat"
Cannot covert to Group because Master Type or Account Type is selected.,"Kann nicht auf verdeckte Gruppe , weil Herr Art oder Kontotyp gewählt wird."
Cannot deactive or cancle BOM as it is linked with other BOMs,"Kann nicht deaktiv oder cancle Stückliste , wie es mit anderen Stücklisten verknüpft"
"Cannot declare as lost, because Quotation has been made.","Kann nicht erklären, wie verloren, da Zitat gemacht worden ."
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',"Kann nicht abziehen , wenn Kategorie ist für ""Bewertungstag "" oder "" Bewertung und Total '"
"Cannot delete Serial No {0} in stock. First remove from stock, then delete.","Kann nicht Seriennummer {0} in Lager löschen . Erstens ab Lager entfernen, dann löschen."
"Cannot directly set amount. For 'Actual' charge type, use the rate field","Kann nicht direkt Betrag gesetzt . Für ""tatsächlichen"" Ladungstyp , verwenden Sie das Kursfeld"
"Cannot overbill for Item {0} in row {0} more than {1}. To allow overbilling, please set in Stock Settings",Kann nicht für Artikel {0} in Zeile overbill {0} mehr als {1}. Um Überfakturierung erlauben Sie bitte Lizenzeinstellungen festgelegt
Cannot produce more Item {0} than Sales Order quantity {1},Mehr Artikel kann nicht produzieren {0} als Sales Order Menge {1}
Cannot refer row number greater than or equal to current row number for this Charge type,Kann nicht Zeilennummer größer oder gleich aktuelle Zeilennummer für diesen Ladetypbeziehen
Cannot return more than {0} for Item {1},Kann nicht mehr als {0} zurück zur Artikel {1}
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,"Kann nicht verantwortlich Typ wie 'On Zurück Reihe Betrag ""oder"" Auf Vorherige Row Total' für die erste Zeile auswählen"
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for valuation. You can select only 'Total' option for previous row amount or previous row total,"Kann nicht verantwortlich Typ wie 'On Zurück Reihe Betrag ""oder"" Auf Vorherige Row Total' für die Bewertung zu wählen. Sie können nur die Option ""Total"" für die vorherige Zeile Betrag oder vorherigen Zeile Gesamt wählen"
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,Kapazitätseinheiten
Capital Account,Kapitalkonto
Capital Equipments,Hauptstadt -Ausrüstungen
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,Kassenbeleg
Cash or Bank Account is mandatory for making payment entry,Barzahlung oder Bankkonto ist für die Zahlung Eintrag
Cash/Bank Account,Kassen-/Bankkonto
Casual Leave,Lässige Leave
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,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,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,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,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 'Verkaufsrechnung erstellen', um eine neue Verkaufsrechnung zu erstellen."
Click on a link to get options to expand get options ,
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,Abschluss Kontenführer
Closing Account {0} must be of type 'Liability',"Schluss Konto {0} muss vom Typ ""Haftung"" sein"
Closing Date,Abschlussdatum
Closing Fiscal Year,Abschluss des Geschäftsjahres
Closing Qty,Schließen Menge
Closing Value,Schlusswerte
CoA Help,CoA-Hilfe
Code,Code
Cold Calling,Kaltakquise
Color,Farbe
Column Break,Spaltenumbruch
Comma separated list of email addresses,Durch Kommas getrennte Liste von E-Mail-Adressen
Comment,Kommentar
Comments,Kommentare
Commercial,Handels-
Commission,Provision
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,Kommunikation HTML
Communication History,Kommunikationshistorie
Communication log.,Kommunikationsprotokoll
Communications,Kommunikation
Company,Unternehmen
Company (not Customer or Supplier) master.,Company ( nicht der Kunde oder Lieferant ) Master.
Company Abbreviation,Firmen Abkürzung
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,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.,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,Abschließen
Complete Setup,Vollständige Setup
Completed,Abgeschlossen
Completed Production Orders,Abgeschlossene Fertigungsaufträge
Completed Qty,Abgeschlossene Menge
Completion Date,Abschlussdatum
Completion Status,Fertigstellungsstatus
Computer,Computer
Computers,Computer
Confirmation Date,Bestätigung Datum
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
Consumable Cost,Verbrauchskosten
Consumable cost per hour,Verbrauchskosten pro Stunde
Consumed Qty,Verbrauchte Menge
Consumer Products,Consumer Products
Contact,Kontakt
Contact Control,Kontaktsteuerung
Contact Desc,Kontakt-Beschr.
Contact Details,Kontaktinformationen
Contact Email,Kontakt E-Mail
Contact HTML,Kontakt HTML
Contact Info,Kontaktinformation
Contact Mobile No,Kontakt Mobiltelefon
Contact Name,Ansprechpartner
Contact No.,Kontakt Nr.
Contact Person,Kontaktperson
Contact Type,Kontakttyp
Contact master.,Kontakt Master.
Contacts,Impressum
Content,Inhalt
Content Type,Inhaltstyp
Contra Voucher,Gegen Gutschein
Contract,Vertrag
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 (%),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 to Group,Konvertieren in Gruppe
Convert to Ledger,Convert to Ledger
Converted,Konvertiert
Copy From Item Group,Kopie von Artikelgruppe
Cosmetics,Kosmetika
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,Kosten
Country,Land
Country Name,Ländername
Country wise default Address Templates,Land weise Standardadressvorlagen
"Country, Timezone and Currency","Land , Zeitzone und Währung"
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,Materialanfragen erstellen
Create New,Neu erstellen
Create Opportunity,erstellen Sie Gelegenheit
Create Production Orders,Fertigungsaufträge erstellen
Create Quotation,Angebot erstellen
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 oben genannte Kriterien.
Creation Date,Erstellungsdatum
Creation Document No,Creation Dokument Nr.
Creation Document Type,Creation Dokumenttyp
Creation Time,Erstellungszeit
Credentials,Anmeldeinformationen
Credit,Guthaben
Credit Amt,Guthabenbetrag
Credit Card,Kreditkarte
Credit Card Voucher,Kreditkarten-Gutschein
Credit Controller,Kredit-Controller
Credit Days,Kredittage
Credit Limit,Kreditlimit
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ä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 SL
Current BOM and New BOM can not be same,Aktuelle Stückliste und New BOM kann nicht gleich sein
Current Fiscal Year,Laufendes Geschäftsjahr
Current Liabilities,Kurzfristige Verbindlichkeiten
Current Stock,Aktueller Lagerbestand
Current Stock UOM,Aktueller Lagerbestand ME
Current Value,Aktueller Wert
Custom,Benutzerdefiniert
Custom Autoreply Message,Benutzerdefinierte Autoreply-Nachricht
Custom Message,Benutzerdefinierte Nachricht
Customer,Kunde
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,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,Kundencode
Customer Codes,Kundencodes
Customer Details,Kundendaten
Customer Feedback,Kundenrückmeldung
Customer Group,Kundengruppe
Customer Group / Customer,Kundengruppe / Kunden
Customer Group Name,Kundengruppenname
Customer Intro,Kunden Intro
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.,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-Artikelcode
Customer's Purchase Order Date,Kundenbestelldatum
Customer's Purchase Order No,Kundenbestellnr.
Customer's Purchase Order Number,Kundenauftragsnummer
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ägliche Zeitprotokollzusammenfassung
Database Folder ID,Datenbankordner-ID
Database of potential customers.,Datenbank potentieller Kunden.
Date,Datum
Date Format,Datumsformat
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 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 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, an denen eine Urlaubssperre für diese Abteilung gilt."
Dealer,Händler
Debit,Soll
Debit Amt,Sollbetrag
Debit Note,Lastschrift
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,Abzugsart
Deduction1,Abzug1
Deductions,Abzüge
Default,Standard
Default Account,Standardkonto
Default Address Template cannot be deleted,Standard-Adressvorlage kann nicht gelöscht werden
Default Amount,Standard-Betrag
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,Standardkassenkonto
Default Company,Standardunternehmen
Default Cost Center,Standardkostenstelle
Default Currency,Standardwährung
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,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-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>","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,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,Lieferdetails
Delivery Document No,Lieferbelegnummer
Delivery Document Type,Lieferbelegtyp
Delivery Note,Lieferschein
Delivery Note Item,Lieferscheingegenstand
Delivery Note Items,Lieferscheinpositionen
Delivery Note Message,Lieferscheinnachricht
Delivery Note No,Lieferscheinnummer
Delivery Note Required,Lieferschein erforderlich
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,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 Aufschlüsselung der Gesamtsummen
Details,Details
Difference (Dr - Cr),Differenz ( Dr - Cr )
Difference Account,Unterschied Konto
"Difference Account must be a 'Liability' type account, since this Stock Reconciliation is an Opening Entry","Unterschied Konto muss ""Haftung"" Typ Konto sein , da diese Lizenz Versöhnung ist ein Eintrag Eröffnung"
Different UOM for items will lead to incorrect (Total) Net Weight value. Make sure that Net Weight of each item is in the same UOM.,"Unterschiedliche Verpackung für Einzelteile werden zu falschen (Gesamt ) Nettogewichtswertführen . Stellen Sie sicher, dass die Netto-Gewicht der einzelnen Artikel ist in der gleichen Verpackung ."
Direct Expenses,Direkte Aufwendungen
Direct Income,Direkte Einkommens
Disable,Deaktivieren
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","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 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.,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?"
Do you really want to Submit all Salary Slip for month {0} and year {1},"Glauben Sie wirklich , alle Gehaltsabrechnung für den Monat Absenden {0} und {1} Jahr wollen"
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,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,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,"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",
Dr,
Draft,Entwurf
Dropbox,Dropbox
Dropbox Access Allowed,Dropbox-Zugang erlaubt
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}
Duplicate Serial No entered for Item {0},Doppelte Seriennummer für Posten {0}
Duplicate entry,Duplizieren Eintrag
Duplicate row {0} with same {1},Doppelte Zeile {0} mit dem gleichen {1}
Duties and Taxes,Zölle und Steuern
ERPNext Setup,ERPNext -Setup
Earliest,Frühest
Earnest Money,Angeld
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,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.
Electrical,elektrisch
Electricity Cost,Stromkosten
Electricity cost per hour,Stromkosten pro Stunde
Electronics,Elektronik
Email,E-Mail
Email Digest,Täglicher E-Mail-Bericht
Email Digest Settings,Einstellungen täglicher E-Mail-Bericht
Email Digest: ,
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?,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 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,Notfallkontaktdaten
Emergency Phone,Notruf
Employee,Mitarbeiter
Employee Birthday,Mitarbeiter Geburtstag
Employee Details,Mitarbeiterdetails
Employee Education,Mitarbeiterschulung
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,Mitarbeiterakte wird erstellt von
Employee Settings,Mitarbeitereinstellungen
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.,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 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,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 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.,"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.,"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ä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.",
Exchange Rate,Wechselkurs
Excise Duty 10,Verbrauchsteuer 10
Excise Duty 14,Verbrauchsteuer 14
Excise Duty 4,Excise Duty 4
Excise Duty 8,Verbrauchsteuer 8
Excise Duty @ 10,Verbrauchsteuer @ 10
Excise Duty @ 14,Verbrauchsteuer @ 14
Excise Duty @ 4,Verbrauchsteuer @ 4
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,Seitenzahl ausschneiden
Excise Voucher,Gutschein ausschneiden
Execution,Ausführung
Executive Search,Executive Search
Exhibition,Ausstellung
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,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,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,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,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,E-Mails extrahieren
FCFS Rate,FCFS-Rate
Failed: ,Failed:
Family Background,Familiärer Hintergrund
Fax,Fax
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, 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 nach Kunden
Filter based on item,Filtern nach Artikeln
Financial / accounting year.,Finanz / Rechnungsjahres.
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,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
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 Mitarbeiter Name
For Price List,Für Preisliste
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 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,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 Stückliste
From Company,Von Unternehmen
From Currency,Von Währung
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 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,Aus Lieferschein
From Employee,Von Mitarbeiter
From Lead,Aus Lead
From Maintenance Schedule,Vom Wartungsplan
From Material Request,Von Materialanforderung
From Opportunity,von der Chance
From Package No.,Von Paket-Nr.
From Purchase Order,Von Bestellung
From Purchase Receipt,Von Kaufbeleg
From Quotation,von Zitat
From Sales Order,Aus Verkaufsauftrag
From Supplier Quotation,Von Lieferant Zitat
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,Erledigt
Full Name,Vollständiger Name
Full-time,Vollzeit-
Fully Billed,Voll Angekündigt
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,HB-Eintrag
Gantt Chart,Gantt-Diagramm
Gantt chart of all tasks.,Gantt-Diagramm aller Aufgaben.
Gender,Geschlecht
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,Letzten Anschaffungskurs abrufen
Get Outstanding Invoices,Ausstehende Rechnungen abrufen
Get Relevant Entries,Holen Relevante Einträge
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,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.,Von Lieferanten erhaltene Ware.
Google Drive,Google Drive
Google Drive Access Allowed,Google Drive-Zugang erlaubt
Government,Regierung
Graduate,Hochschulabsolvent
Grand Total,Gesamtbetrag
Grand Total (Company Currency),Gesamtbetrag (Unternehmenswährung)
"Grid ""","Grid """
Grocery,Lebensmittelgeschäft
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 ME
Group,Gruppe
Group by Account,Gruppe von Konto
Group by Voucher,Gruppe von Gutschein
Group or Ledger,Gruppen oder Sachbuch
Groups,Gruppen
Guest,
HR Manager,HR -Manager
HR Settings,HR-Einstellungen
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 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,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,Historie im Unternehmen
Hold,Anhalten
Holiday,Urlaub
Holiday List,Urlaubsliste
Holiday List Name,Urlaubslistenname
Holiday master.,Ferien Master.
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,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 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 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 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 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 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 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 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,Bildansicht
Implementation Partner,Implementierungspartner
Import Attendance,Importteilnahme
Import Failed!,Import fehlgeschlagen !
Import Log,Importprotokoll
Import Successful!,Importieren Sie erfolgreich!
Imports,Importe
In Hours,In Stunden
In Process,In Bearbeitung
In Qty,Menge
In Stock,
In Value,Wert bei
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,Urlaub in die Gesamtzahl der Arbeitstage einschließen
Income,Einkommen
Income / Expense,Einnahmen/Ausgaben
Income Account,Gewinnkonto
Income Booked,Gebuchter Gewinn
Income Tax,Einkommensteuer
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,Einzelperson
Industry,Industrie
Industry Type,Industrietyp
Inspected By,Geprüft von
Inspection Criteria,Prüfkriterien
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,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.,Installationsdatensatz für eine Seriennummer
Installed Qty,Installierte Anzahl
Instructions,Anweisungen
Interested,Interessiert
Intern,internieren
Internal,Intern
Internet Publishing,Internet Publishing
Introduction,Einführung
Invalid Barcode,Ungültige Barcode
Invalid Barcode or Serial No,Ungültige Barcode oder Seriennummer
Invalid Mail Server. Please rectify and try again.,Ungültige E-Mail -Server. Bitte korrigieren und versuchen Sie es erneut .
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,Lagerbestand
Inventory & Support,Inventar & Support
Investment Banking,Investment Banking
Investments,Investments
Invoice Date,Rechnungsdatum
Invoice Details,Rechnungsdetails
Invoice No,Rechnungs-Nr.
Invoice Number,Rechnungsnummer
Invoice Type,Rechnungstyp
Invoice/Journal Voucher Details,Rechnung / Journal Gutschein-Details
Invoiced Amount (Exculsive Tax),Rechnungsbetrag ( Exculsive MwSt.)
Is Active,Ist aktiv
Is Advance,Ist Voraus
Is Cancelled,Ist storniert
Is Carry Forward,Ist Übertrag
Is Default,Ist Standard
Is Encash,Ist Inkasso
Is Fixed Asset Item,Ist Posten des Anlagevermögens
Is LWP,Ist LWP
Is Opening,Ist Öffnung
Is Opening Entry,Ist Öffnungseintrag
Is POS,Ist POS
Is Primary Contact,Ist primärer Kontakt
Is Purchase Item,Ist Einkaufsartikel
Is Recurring,
Is Sales Item,Ist Verkaufsartikel
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 #{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,Kundendetail Artikel
Item Description,Artikelbeschreibung
Item Desription,Artikelbeschreibung
Item Details,Artikeldetails
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,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,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,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,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.
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
Item {0} does not exist in {1} {2},Artikel {0} existiert nicht in {1} {2}
Item {0} has already been returned,Artikel {0} wurde bereits zurück
Item {0} has been entered multiple times against same operation,Artikel {0} wurde mehrmals gegen dieselbe Operation eingegeben
Item {0} has been entered multiple times with same description or date,Artikel {0} wurde mehrmals mit der gleichen Beschreibung oder Datum eingegeben
Item {0} has been entered multiple times with same description or date or warehouse,Artikel {0} wurde mehrmals mit der gleichen Beschreibung oder Datum oder Lager eingetragen
Item {0} has been entered twice,Artikel {0} wurde zweimal eingegeben
Item {0} has reached its end of life on {1},Artikel {0} hat das Ende ihrer Lebensdauer erreicht auf {1}
Item {0} ignored since it is not a stock item,"Artikel {0} ignoriert, da es sich nicht um Lagerware"
Item {0} is cancelled,Artikel {0} wird abgebrochen
Item {0} is not Purchase Item,Artikel {0} ist nicht Kaufsache
Item {0} is not a serialized Item,Artikel {0} ist keine serialisierten Artikel
Item {0} is not a stock Item,Artikel {0} ist kein Lagerartikel
Item {0} is not active or end of life has been reached,Artikel {0} ist nicht aktiv oder Ende des Lebens ist erreicht
Item {0} is not setup for Serial Nos. Check Item master,Artikel {0} ist kein Setup für den Seriennummern prüfen Artikelstamm
Item {0} is not setup for Serial Nos. Column must be blank,Artikel {0} ist kein Setup für den Seriennummern Spalte muss leer sein
Item {0} must be Sales Item,Artikel {0} muss sein Verkaufsartikel
Item {0} must be Sales or Service Item in {1},Artikel {0} muss Vertriebs-oder Service Artikel in {1}
Item {0} must be Service Item,Artikel {0} muss sein Service- Artikel
Item {0} must be a Purchase Item,Artikel {0} muss ein Kaufsache sein
Item {0} must be a Sales Item,Artikel {0} muss ein Verkaufsartikel sein
Item {0} must be a Service Item.,Artikel {0} muss ein Service- Element sein.
Item {0} must be a Sub-contracted Item,Artikel {0} muss ein Subunternehmer vergebene Titel
Item {0} must be a stock Item,Artikel {0} muss ein Lager Artikel sein
Item {0} must be manufactured or sub-contracted,Artikel {0} hergestellt werden muss oder Unteraufträge vergeben
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.","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,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} 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","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 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,Wichtigster Leistungsbereich
Key Responsibility Area,Wichtigster Verantwortungsbereich
Kg,kg
LR Date,LR-Datum
LR No,LR-Nr.
Label,Etikett
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,Familienname
Last Purchase Rate,Letzter Anschaffungskurs
Latest,neueste
Lead,Lead
Lead Details,Lead-Details
Lead Id,Lead- Id
Lead Name,Lead-Name
Lead Owner,Lead-Eigentümer
Lead Source,Lead-Ursprung
Lead Status,Lead-Status
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,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 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,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,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.,"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,Verlustgrund
Low,Niedrig
Lower Income,Niedrigeres Einkommen
MTN Details,MTN-Details
Main,Main
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,Wartungsdatum
Maintenance Details,Wartungsdetails
Maintenance Manager,
Maintenance Schedule,Wartungsplan
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,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,Wichtiger/optionaler Betreff
Make ,
Make Accounting Entry For Every Stock Movement,Machen Accounting Eintrag für jede Lagerbewegung
Make Bank Voucher,Bankgutschein erstellen
Make Credit Note,Machen Gutschrift
Make Debit Note,Machen Lastschrift
Make Delivery,machen Liefer
Make Difference Entry,Differenzeintrag erstellen
Make Excise Invoice,Machen Verbrauch Rechnung
Make Installation Note,Machen Installation Hinweis
Make Invoice,machen Rechnung
Make Maint. Schedule,Machen Wa. . Zeitplan
Make Maint. Visit,Machen Wa. . Besuchen Sie
Make Maintenance Visit,Machen Wartungsbesuch
Make Packing Slip,Machen Packzettel
Make Payment,Zahlung durchführen
Make Payment Entry,Machen Zahlungs Eintrag
Make Purchase Invoice,Machen Einkaufsrechnung
Make Purchase Order,Machen Bestellung
Make Purchase Receipt,Machen Kaufbeleg
Make Salary Slip,Machen Gehaltsabrechnung
Make Salary Structure,Machen Gehaltsstruktur
Make Sales Invoice,Machen Sales Invoice
Make Sales Order,Machen Sie Sales Order
Make Supplier Quotation,Machen Lieferant Zitat
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,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 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,Fertigungsprozess
Manufacturing Manager,
Manufacturing Quantity,Fertigungsmenge
Manufacturing Quantity is mandatory,Fertigungsmengeist obligatorisch
Manufacturing User,
Margin,Gewinnspanne
Marital Status,Familienstand
Market Segment,Marktsegment
Marketing,Marketing
Marketing Expenses,Marketingkosten
Married,Verheiratet
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,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,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,Materialanforderung
Material Transfer,Materialtransfer
Material User,
Materials,Materialien
Materials Required (Exploded),Benötigte Materialien (erweitert)
Max 5 characters,Max 5 Zeichen
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
Maximum allowed credit is {0} days after posting date,Die maximal zulässige Kredit ist {0} Tage nach Buchungsdatum
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,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,Nachrichtenparameter
Message Sent,Nachricht gesendet
Message updated,Nachricht aktualisiert
Messages,Nachrichten
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,Mindestbestellmenge
Minute,Minute
Misc Details,Sonstige Einzelheiten
Miscellaneous Expenses,Sonstige Aufwendungen
Miscelleneous,Sonstiges
Mobile No,Mobilfunknummer
Mobile No.,Mobilfunknr.
Mode of Payment,Zahlungsweise
Modern,Modern
Monday,Montag
Month,Monat
Monthly,Monatlich
Monthly Attendance Sheet,Monatliche Anwesenheitsliste
Monthly Earning & Deduction,Monatliches Einkommen & Abzug
Monthly Salary Register,Monatsgehalt Register
Monthly salary statement.,Monatliche Gehaltsabrechnung
More Details,Weitere Details
More Info,Mehr Informationen
Motion Picture & Video,Motion Picture & Video
Moving Average,Gleitender Mittelwert
Moving Average Rate,Gleitende Mittelwertsrate
Mr,Herr
Ms,Frau
Multiple Item prices.,Mehrere Artikelpreise .
"Multiple Price Rule exists with same criteria, please resolve \			conflict by assigning priority. Price Rules: {0}",
Music,Musik
Must be Whole Number,Muss eine Ganzzahl sein
Name,Name
Name and Description,Name und Beschreibung
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 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,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,Nettosumme
Net Total (Company Currency),Nettosumme (Unternehmenswährung)
Net Weight,Nettogewicht
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,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,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,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,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,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,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.","Newsletter an Kontakte, Leads"
Newspaper Publishers,Zeitungsverleger
Next,nächste
Next Contact By,Nächster Kontakt durch
Next Contact Date,Nächstes Kontaktdatum
Next Date,Nächster Termin
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 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 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
No contacts created,Keine Kontakte erstellt
No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template.,Kein Standardadressvorlage gefunden. Bitte erstellen Sie ein neues Setup> Druck-und Branding-> Adressvorlage.
No default BOM exists for Item {0},Kein Standardstücklisteexistiert für Artikel {0}
No description given,Keine Beschreibung angegeben
No employee found,Kein Mitarbeiter gefunden
No employee found!,Kein Mitarbeiter gefunden!
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
No records found in the Invoice table,Keine Einträge in der Rechnungstabelle gefunden
No records found in the Payment table,Keine Datensätze in der Tabelle gefunden Zahlung
No salary slip found for month: ,Kein Gehaltsabrechnung für den Monat gefunden:
Non Profit,Non-Profit-
Nos,nos
Not Active,Nicht aktiv
Not Applicable,Nicht anwendbar
Not Available,nicht verfügbar
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,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 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,Notizen
Notes:,Notizen:
Nothing to request,"Nichts zu verlangen,"
Notice (days),Kenntnis (Tage)
Notification Control,Benachrichtungseinstellungen
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,Büro
Office Equipments,Büro Ausstattung
Office Maintenance Expenses,Office-Wartungskosten
Office Rent,Büromiete
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,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,Offen
Open Production Orders,Offene Fertigungsaufträge
Open Tickets,Tickets eröffnen
Opening (Cr),Eröffnung (Cr)
Opening (Dr),Opening ( Dr)
Opening Date,Öffnungsdatum
Opening Entry,Öffnungseintrag
Opening Qty,Öffnungs Menge
Opening Time,Öffnungszeit
Opening Value,Öffnungs Wert
Opening for a Job.,Stellenausschreibung
Operating Cost,Betriebskosten
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,Vorgänge
Opportunity,Gelegenheit
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,Bestelltyp
Order Type must be one of {0},Auftragstyp muss einer der {0}
Ordered,Bestellt
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.,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,Sonstige
Other Details,Weitere Details
Others,andere
Out Qty,out Menge
Out Value,out Wert
Out of AMC,Außerhalb AMC
Out of Warranty,Außerhalb der Garantie
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})
Overdue,
Overdue: ,
Overhead,Overhead
Overheads,Gemeinkosten
Overlapping conditions found between:,Overlapping Bedingungen zwischen gefunden:
Overview,Überblick
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 Settings,POP3-Mail-Einstellungen
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-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,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,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,Ü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,Übergeordneter Verkäufer
Parent Territory,Übergeordnete Region
Parent Website Route,Eltern- Webseite Routen
Parenttype,Übergeordnete Position
Part-time,Teilzeit-
Partially Completed,Teilweise abgeschlossen
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,Passiv
Passport Number,Passnummer
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,Zahlungsabstimmung
Payment Reconciliation Invoice,Zahlung Versöhnung Rechnung
Payment Reconciliation Invoices,Zahlung Versöhnung Rechnungen
Payment Reconciliation Payment,Payment Zahlungs Versöhnung
Payment Reconciliation Payments,Zahlung Versöhnung Zahlungen
Payment Type,Zahlungsart
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,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,Ausstehend
Pending Amount,Bis Betrag
Pending Items {0} updated,Ausstehende Elemente {0} aktualisiert
Pending Review,Wartet auf Bewertung
Pending SO Items For Purchase Request,SO-Artikel stehen für Einkaufsanforderung aus
Pension Funds,Pensionsfonds
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 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 Entry,
Period Closing Voucher,Zeitraum Abschluss Gutschein
Period From and Period To dates mandatory for recurring %s,
Periodicity,Periodizität
Permanent Address,Dauerhafte Adresse
Permanent Address Is,Permanent -Adresse ist
Permission,Berechtigung
Personal,Persönlich
Personal Details,Persönliche Daten
Personal Email,Persönliche E-Mail
Pharmaceutical,pharmazeutisch
Pharmaceuticals,Pharmaceuticals
Phone,Telefon
Phone No,Telefonnummer
Piecework,Akkordarbeit
Pincode,Pincode
Place of Issue,Ausstellungsort
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,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.,"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.
Please check 'Is Advance' against Account {0} if this is an advance entry.,"Bitte prüfen ' Ist Voraus ' gegen Konto {0} , wenn dies ein Fortschritt Eintrag ."
Please click on 'Generate Schedule',"Bitte klicken Sie auf "" Generieren Zeitplan '"
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Bitte klicken Sie auf "" Generieren Zeitplan ' zu holen Seriennummer für Artikel hinzugefügt {0}"
Please click on 'Generate Schedule' to get schedule,"Bitte klicken Sie auf "" Generieren Schedule ' Plan bekommen"
Please create Customer from Lead {0},Bitte erstellen Sie Kunde aus Blei {0}
Please create Salary Structure for employee {0},Legen Sie bitte Gehaltsstruktur für Mitarbeiter {0}
Please create new account from Chart of Accounts.,Bitte neues Konto erstellen von Konten .
Please do NOT create Account (Ledgers) for Customers and Suppliers. They are created directly from the Customer / Supplier masters.,Bitte nicht erstellen Account ( Ledger ) für Kunden und Lieferanten . Sie werden direkt von den Kunden- / Lieferanten -Master erstellt.
Please enter 'Expected Delivery Date',"Bitte geben Sie "" Voraussichtlicher Liefertermin """
Please enter 'Is Subcontracted' as Yes or No,"Bitte geben Sie "" Untervergabe "" als Ja oder Nein"
Please enter 'Repeat on Day of Month' field value,"Bitte geben Sie 'Repeat auf Tag des Monats "" Feldwert"
Please enter Account Receivable/Payable group in company master,Bitte geben Sie Debitoren / Kreditorengruppein der Firma Master
Please enter Approving Role or Approving User,Bitte geben Sie die Genehmigung von Rolle oder Genehmigung Benutzer
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,"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,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
Please enter Maintaince Details first,Bitte geben Sie Maintaince Einzelheiten ersten
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,"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
Please enter company first,Bitte geben Sie Unternehmen zunächst
Please enter company name first,Bitte geben erste Firmennamen
Please enter default Unit of Measure,Bitte geben Sie Standard Maßeinheit
Please enter default currency in Company Master,Bitte geben Sie die Standardwährung in Firmen Meister
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 {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.
Please enter sales order in the above table,Bitte geben Sie Kundenauftrag in der obigen Tabelle
Please enter valid Company Email,Bitte geben Sie eine gültige E-Mail- Gesellschaft
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 {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,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
Please select Group or Ledger value,Bitte wählen Sie Gruppen-oder Buchwert
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,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.,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"
Please select charge type first,Bitte wählen Sie zunächst Ladungstyp
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,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,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
Please select {0} first.,Bitte wählen Sie {0} zuerst.
Please set Dropbox access keys in your site config,Bitte setzen Dropbox Zugriffstasten auf Ihrer Website Config
Please set Google Drive access keys in {0},Bitte setzen Google Drive Zugriffstasten in {0}
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,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,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,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,Verkaufsstelle
Point-of-Sale Setting,Verkaufsstellen-Einstellung
Post Graduate,Graduiert
Postal,Post
Postal Expenses,Post Aufwendungen
Posting Date,Buchungsdatum
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 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,Gegenwart
Prevdoc DocType,Dokumententyp Prevdoc
Prevdoc Doctype,Dokumententyp Prevdoc
Preview,Vorschau
Previous,früher
Previous Work Experience,Vorherige Berufserfahrung
Price,Preis
Price / Discount,Preis / Rabatt
Price List,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 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
Price List {0} is disabled,Preisliste {0} ist deaktiviert
Price or Discount,Preis -oder Rabatt-
Pricing Rule,Preisregel
Pricing Rule Help,Pricing Rule Hilfe
"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,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,Gehaltsabrechnung bearbeiten
Produced,produziert
Produced Quantity,Produzierte Menge
Product Enquiry,Produktanfrage
Production,Produktion
Production Order,Fertigungsauftrag
Production Order status is {0},Fertigungsauftragsstatusist {0}
Production Order {0} must be cancelled before cancelling this Sales Order,Fertigungsauftrag {0} muss vor Streichung dieses Sales Order storniert werden
Production Order {0} must be submitted,Fertigungsauftrag {0} muss vorgelegt werden
Production Orders,Fertigungsaufträge
Production Orders in Progress,Fertigungsaufträge
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 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,Projektdetails
Project Manager,Project Manager
Project Milestone,Projekt-Ecktermin
Project Milestones,Projekt-Ecktermine
Project Name,Projektname
Project Start Date,Projektstartdatum
Project Type,Projekttyp
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,Projektspezifische Menge
Projects,Projekte
Projects & System,Projekte & System
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,Geben Sie die im Unternehmen registrierte E-Mail an
Provisional Profit / Loss (Credit),Vorläufige Gewinn / Verlust (Kredit)
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,Aufträge (deren Lieferung aussteht) entsprechend der oben genannten Kriterien ziehen
Purchase,Einkauf
Purchase / Manufacture Details,Kauf / Herstellung Einzelheiten
Purchase Analytics,Einkaufsanalyse
Purchase Common,Einkauf Allgemein
Purchase Details,Kaufinformationen
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 Item,
Purchase Manager,
Purchase Master Manager,
Purchase Order,Bestellung
Purchase Order Item,Bestellposition
Purchase Order Item No,Bestellposition Nr.
Purchase Order Item Supplied,Bestellposition geliefert
Purchase Order Items,Bestellpositionen
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,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.,An Lieferanten weitergegebene Bestellungen.
Purchase Receipt,Kaufbeleg
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 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 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-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
Qty to Transfer,Menge in den Transfer
Qualification,Qualifikation
Quality,Qualität
Quality Inspection,Qualitätsprüfung
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,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,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,Quartalsweise
Quick Help,schnelle Hilfe
Quotation,Angebot
Quotation Item,Angebotsposition
Quotation Items,Angebotspositionen
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.,Angebote von Lieferanten
Quotes to Leads or Customers.,Angebote an Leads oder Kunden.
Raise Material Request when stock reaches re-order level,"Materialanfrage erstellen, wenn der Lagerbestand unter einen Wert sinkt"
Raised By,Gemeldet von
Raised By (Email),Gemeldet von (E-Mail)
Random,Zufällig
Range,Bandbreite
Rate,Satz
Rate ,Rate
Rate (%),Satz ( %)
Rate (Company Currency),Satz (Firmen Wä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,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,Nachbestellungsebene
Re-Order Qty,Nachbestellungsmenge
Re-order,Nachbestellung
Re-order Level,Nachbestellungsebene
Re-order Qty,Nachbestellungsmenge
Read,Lesen
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 für Rücktritt
Reason for losing,Grund für den Verlust
Recd Quantity,Zurückgegebene Menge
Receivable,Forderung
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,Erhalten
Received Date,Empfangsdatum
Received Items To Be Billed,"Empfangene Artikel, die in Rechnung gestellt werden"
Received Qty,Empfangene Menge
Received and Accepted,Erhalten und akzeptiert
Receiver List,Empfängerliste
Receiver List is empty. Please create Receiver List,Empfängerliste ist leer. Bitte erstellen Sie Empfängerliste
Receiver Parameter,Empfängerparameter
Recipients,Empfänger
Reconcile,versöhnen
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 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
Reference,Referenz
Reference #{0} dated {1},Referenz # {0} vom {1}
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,Referenznummer
Reference Row #,Referenz Row #
Refresh,Aktualisieren
Registration Details,Details zur Anmeldung
Registration Info,Anmeldungsinfo
Rejected,Abgelehnt
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,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
Remove item if charges is not applicable to that item,
Rename,umbenennen
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 am Tag des Monats
Replace,Ersetzen
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,Berichtsdatum
Report Type,Berichtstyp
Report Type is mandatory,Berichtstyp ist verpflichtend
Reports to,Berichte an
Reqd By Date,Erf nach Datum
Reqd by Date,Reqd nach Datum
Request Type,Anfragetyp
Request for Information,Informationsanfrage
Request for purchase.,Einkaufsanfrage
Requested,Angeforderte
Requested For,Für Anfrage
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.,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
Reseller,Wiederverkäufer
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,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,Kündigungsschreiben Datum
Resolution,Auflösung
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,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,Stamm darf keine übergeordnete Kostenstelle haben
Rounded Off,abgerundet
Rounded Total,Abgerundete Gesamtsumme
Rounded Total (Company Currency),Abgerundete Gesamtsumme (Unternehmenswährung)
Row # ,Zeile #
Row # {0}: ,
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}: Account does not match with \						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}: To set {1} periodicity, difference between from and to date \						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 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-Protokoll
SMS Parameter,SMS-Parameter
SMS Sender Name,SMS-Absendername
SMS Settings,SMS-Einstellungen
SO Date,SO-Datum
SO Pending Qty,SO Ausstehende Menge
SO Qty,SO Menge
Salary,Gehalt
Salary Information,Gehaltsinformationen
Salary Manager,Gehaltsmanager
Salary Mode,Gehaltsmodus
Salary Slip,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,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,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,Verkaufsdetails
Sales Discounts,Verkaufsrabatte
Sales Email Settings,Vertrieb E-Mail-Einstellungen
Sales Expenses,Vertriebskosten
Sales Extras,Verkauf Extras
Sales Funnel,Sales Funnel
Sales Invoice,Verkaufsrechnung
Sales Invoice Advance,Verkaufsrechnung Geleistete
Sales Invoice Item,Verkaufsrechnung Artikel
Sales Invoice Items,Verkaufsrechnung Artikel
Sales Invoice Message,Verkaufsrechnung Nachricht
Sales Invoice No,Verkaufsrechnungsnummer
Sales Invoice Trends,Verkaufsrechnungstrends
Sales Invoice {0} has already been submitted,Verkaufsrechnung {0} wurde bereits eingereicht
Sales Invoice {0} must be cancelled before cancelling this Sales Order,Verkaufsrechnung {0} muss vor Streichung dieses Verkaufsauftrages storniert werden
Sales Item,
Sales Manager,
Sales Master Manager,
Sales Order,Verkaufsauftrag
Sales Order Date,Verkaufsauftrag Datum
Sales Order Item,Auftragsposition
Sales Order Items,Verkaufsauftragspositionen
Sales Order Message,Verkaufsauftrag Nachricht
Sales Order No,Verkaufsauftragsnummer
Sales Order Required,Verkaufsauftrag erforderlich
Sales Order Trends,Sales Order Trends
Sales Order required for Item {0},Verkaufsauftrag für den Posten {0} erforderlich 
Sales Order {0} is not submitted,Verkaufsauftrag {0} ist nicht eingereicht
Sales Order {0} is not valid,Verkaufsauftrag {0} ist nicht gültig
Sales Order {0} is stopped,Verkaufsauftrag {0} ist angehalten
Sales Partner,Vertriebspartner
Sales Partner Name,Vertriebspartner Name
Sales Partner Target,Vertriebspartner Ziel
Sales Partners Commission,Vertriebspartner-Kommission
Sales Person,Verkäufer
Sales Person Name,Verkäufer Name
Sales Person Target Variance Item Group-Wise,Sales Person ZielabweichungsartikelgruppeWise -
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,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,Anrede
Sample Size,Stichprobenumfang
Sanctioned Amount,Sanktionierter Betrag
Saturday,Samstag
Schedule,Zeitplan
Schedule Date,Termine Datum
Schedule Details,Zeitplandetails
Scheduled,Geplant
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),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 %,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 „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 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,Dokumenttyp auswählen
Select Fiscal Year...,Wählen Sie das Geschäftsjahr ...
Select Items,Artikel auswählen
Select Project...,Wählen Sie Projekt ...
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 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.","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,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,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,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}
Serial No {0} does not belong to Item {1},Seriennummer {0} nicht auf Artikel gehören {1}
Serial No {0} does not belong to Warehouse {1},Seriennummer {0} ist nicht im Warehouse gehören {1}
Serial No {0} does not exist,Seriennummer {0} existiert nicht
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"
Serial Nos Required for Serialized Item {0},SeriennummernErforderlich für Artikel mit Seriennummer {0}
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,
Series,Serie
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,Serviceadresse
Service Tax,Service Steuer
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.,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,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 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-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,Freigeben
Share With,Freigeben für
Shareholders Funds,Aktionäre Fonds
Shipments to customers.,Lieferungen an Kunden.
Shipping,Versand
Shipping Account,Versandkonto
Shipping Address,Versandadresse
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 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,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,"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,Diaschau
Soap & Detergent,Soap & Reinigungsmittel
Software,Software
Software Developer,Software-Entwickler
"Sorry, Serial Nos cannot be merged","Sorry, Seriennummernkönnen nicht zusammengeführt werden,"
"Sorry, companies cannot be merged","Sorry, Unternehmen können nicht zusammengeführt werden"
Source,Quelle
Source File,Source File
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,Spartanisch
"Special Characters except ""-"" and ""/"" not allowed in naming series","Sonderzeichen außer ""-"" und ""/"" nicht in der Benennung Serie erlaubt"
Specification Details,Spezifikationsdetails
Specifications,Technische Daten
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.,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.#### NoteThe 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 Columns1. 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 booked3. 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.#### NoteThe 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 Columns1. 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 booked3. 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 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,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 und andere allgemeine Informationen über Ihren Lieferanten
Stay Updated,Bleiben Aktualisiert
Stock,Lagerbestand
Stock Adjustment,Auf Einstellung
Stock Adjustment Account,Bestandskorrektur-Konto
Stock Ageing,Bestandsalterung
Stock Analytics,Bestandsanalyse
Stock Assets,Auf Assets
Stock Balance,Bestandsbilanz
Stock Entries already created for Production Order ,
Stock Entry,Bestandseintrag
Stock Entry Detail,Bestandseintragsdetail
Stock Expenses,Auf Kosten
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,Bestandsebene
Stock Liabilities,Auf Verbindlichkeiten
Stock Projected Qty,Auf Projizierte Menge
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,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,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,Bestands-ME
Stock Value,Bestandswert
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
Stock: ,
Stop,Anhalten
Stop Birthday Reminders,Stop- Geburtstagserinnerungen
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""","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,Abgesendet/Eingereicht
Subsidiary,Tochtergesellschaft
Successful: ,Erfolgreich:
Successfully Reconciled,Erfolgreich versöhnt
Suggestions,Vorschläge
Sunday,Sonntag
Supplier,Lieferant
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 Kontenführer
Supplier Address,Lieferantenadresse
Supplier Addresses and Contacts,Lieferant Adressen und Kontakte
Supplier Details,Lieferantendetails
Supplier Intro,Lieferant Intro
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,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,Lieferantenlager
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Lieferantenlager obligatorisch für Unteraufträge vergeben Kaufbeleg
Supplier database.,Lieferantendatenbank
Supplier master.,Lieferant Vorlage
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,Support
Support Analtyics,Unterstützung Analtyics
Support Analytics,Support-Analyse
Support Email,Support per E-Mail
Support Email Settings,Support E-Mail Einstellungen
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ützungs E-Mails
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.","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,Zieldetail
Target Details,Zieldetails
Target Details1,Zieldetails1
Target Distribution,Zielverteilung
Target On,Ziel Auf
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,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,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,
Tax template for buying transactions.,Tax -Vorlage für Kauf -Transaktionen.
Tax template for selling transactions.,Tax -Vorlage für Verkaufsgeschäfte .
Taxes,Steuer
Taxes and Charges,Steuern und Abgaben
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 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,Details Geschäftsbedingungen
Terms,Bedingungen
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,Region
Territory / Customer,Territory / Kunden
Territory Manager,Gebietsleiter
Territory Name,Name der Region
Territory Target Variance Item Group-Wise,Territory ZielabweichungsartikelgruppeWise -
Territory Targets,Ziele der Region
Test,Test
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""","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 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,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 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 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.
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Es kann nur einen Versand Regel sein Zustand mit 0 oder Blindwert für "" auf den Wert"""
There is not enough leave balance for Leave Type {0},Es ist nicht genügend Urlaubsbilanz für Leave Typ {0}
There is nothing to edit.,Es gibt nichts zu bearbeiten.
There was an error. One probable reason could be that you haven't saved the form. Please contact support@erpnext.com if the problem persists.,"Es ist ein Fehler aufgetreten . Ein möglicher Grund könnte sein, dass Sie das Formular nicht gespeichert haben. Bitte kontaktieren Sie support@erpnext.com wenn das Problem weiterhin besteht ."
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.,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.
This is a root customer group and cannot be edited.,Dies ist eine Wurzel Kundengruppe und können nicht editiert werden .
This is a root item group and cannot be edited.,Dies ist ein Stammelement -Gruppe und können nicht editiert werden .
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 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,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.,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,Zeitzonen
Time and Budget,Zeit und Budget
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,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,Zur Diskussion
To Do List,Aufgabenliste
To Package No.,Bis Paket Nr.
To Produce,Um Produzieren
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 ""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 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,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,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,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.,"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,Extras
Total,Gesamt
Total ({0}),Gesamt ({0})
Total Advance,Gesamtvoraus
Total Amount,Gesamtbetrag
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,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,Gesamtabzug
Total Earning,Gesamteinnahmen
Total Experience,Intensive Erfahrung
Total Hours,Gesamtstunden
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,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 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,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,Summen
Track Leads by Industry Type.,Spur führt nach Branche Typ .
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,Transaktionsdatum
Transaction not allowed against stopped Production Order {0},Transaktion nicht gegen gestoppt Fertigungsauftrag erlaubt {0}
Transfer,Übertragung
Transfer Material,Transfermaterial
Transfer Raw Materials,Übertragen Rohstoffe
Transferred Qty,Die übertragenen Menge
Transportation,Transport
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,Allgemeine Kontenbilanz
Tuesday,Dienstag
Type,Typ
Type of document to rename.,Art des Dokuments umbenennen.
"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,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,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,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 (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,Abgemeldet
Update,Aktualisierung
Update Clearance Date,Tilgungsdatum aktualisieren
Update Cost,Update- Kosten
Update Finished Goods,Aktualisieren Fertigwaren
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,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,Oberes Einkommen
Urgent,Dringend
Use Multi-Level BOM,Mehrstufige Stückliste verwenden
Use SSL,SSL verwenden
Used for Production Plan,Wird für Produktionsplan
User,Benutzer
User ID,Benutzerkennung
User ID not set for Employee {0},Benutzer-ID nicht für Mitarbeiter eingestellt {0}
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,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,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 Regionen
Valid From,Gültig ab
Valid Upto,Gültig bis
Valid for Territories,Gültig für Regionen
Validate,Prüfen
Valuation,Bewertung
Valuation Method,Bewertungsmethode
Valuation Rate,Bewertungsrate
Valuation Rate required for Item {0},Artikel für erforderlich Bewertungs Bewerten {0}
Valuation and Total,Bewertung und Gesamt
Value,Wert
Value or Qty,Wert oder Menge
Vehicle Dispatch Date,Fahrzeugversanddatum
Vehicle No,Fahrzeug Nr.
Venture Capital,Risikokapital
Verified By,Geprüft durch
View Details,
View Ledger,Ansicht Ledger
View Now,Jetzt ansehen
Visit report for maintenance call.,Besuchsbericht für Wartungsabruf.
Voucher #,Gutschein #
Voucher Detail No,Gutscheindetail Nr.
Voucher Detail Number,Gutschein Detail Anzahl
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
Warehouse is mandatory for stock Item {0} in row {1},Warehouse ist für Lager Artikel {0} in Zeile {1}
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,"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,Warenlagerweise Bestandsbilanz
Warehouse-wise Item Reorder,Warenlagerweise Artikelaufzeichnung
Warehouses,Warenlager
Warehouses.,Gewerberäume .
Warn,Warnen
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-Details
Warranty / AMC Status,Garantie / AMC-Status
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,Webseite Artikelgruppe
Website Item Groups,Webseite Artikelgruppen
Website Manager,
Website Settings,Webseiteneinstellungen
Website Warehouse,Webseite Warenlager
Wednesday,Mittwoch
Weekly,Wöchentlich
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 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 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 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, 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 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,Arbeitsstation
Workstation Name,Name der Arbeitsstation
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,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 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"
You can set Default Bank Account in Company master,Sie können Standard- Bank-Konto in Firmen Master eingestellt
You can start by selecting backup frequency and granting access for sync,Sie können durch Auswahl Backup- Frequenz und den Zugang für die Gewährung Sync starten
You can submit this Stock Reconciliation.,Sie können diese Vektor Versöhnung vorzulegen.
You can update either Quantity or Valuation Rate or both.,Sie können entweder Menge oder Bewertungs bewerten oder beides aktualisieren.
You cannot credit and debit same account at the same time,Sie können keine Kredit-und Debit gleiche Konto in der gleichen Zeit
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,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
Your Suppliers,Ihre Lieferanten
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 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 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 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, Nr, m"
e.g. VAT,z.B. Mehrwertsteuer
eg. Cheque Number,z. B. Schecknummer
example: Next Day Shipping,Beispiel: Versand am nächsten Tag
fold,
hidden,
hours,
lft,li
old_parent,old_parent
rgt,Rt
subject,Betreff
to,bis
website page link,Website-Link
{0} '{1}' not in Fiscal Year {2},{0} ' {1}' nicht im Geschäftsjahr {2}
{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} 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.
{0} is not a stock Item,{0} ist kein Lagerartikel
{0} is not a valid Batch Number for Item {1},{0} ist keine gültige Chargennummer für Artikel {1}
{0} is not a valid Leave Approver. Removing row #{1}.,{0} ist kein gültiges Datum Genehmiger. Entfernen Folge # {1}.
{0} is not a valid email id,{0} ist keine gültige E-Mail -ID
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,"{0} ist jetzt der Standardgeschäftsjahr. Bitte aktualisieren Sie Ihren Browser , damit die Änderungen wirksam werden."
{0} is required,{0} ist erforderlich
{0} must be a Purchased or Sub-Contracted Item in row {1},{0} muss ein Gekaufte oder Subunternehmer vergebene Artikel in Zeile {1}
{0} must be reduced by {1} or you should increase overflow tolerance,"{0} muss {1} reduziert werden, oder sollten Sie Überlauftoleranz zu erhöhen"
{0} must have role 'Leave Approver',"{0} muss Rolle "" Genehmiger Leave ' haben"
{0} valid serial nos for Item {1},{0} gültige Seriennummernfür Artikel {1}
{0} {1} against Bill {2} dated {3},{0} {1} gegen Bill {2} {3} vom
{0} {1} against Invoice {2},{0} {1} gegen Rechnung {2}
{0} {1} has already been submitted,{0} {1} wurde bereits eingereicht
{0} {1} has been modified. Please refresh.,{0} {1} wurde geändert . Bitte aktualisieren.
{0} {1} is not submitted,{0} {1} nicht vorgelegt
{0} {1} must be submitted,{0} {1} muss vorgelegt werden
{0} {1} not in any Fiscal Year,{0} {1} nicht in jedem Geschäftsjahr
{0} {1} status is 'Stopped',"{0} {1} Status "" Stopped """
{0} {1} status is Stopped,{0} {1} Status beendet
{0} {1} status is Unstopped,{0} {1} Status unstopped
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Kostenstelle ist obligatorisch für Artikel {2}
{0}: {1} not found in Invoice Details table,{0}: {1} nicht in der Rechnungs Details-Tabelle gefunden
