"""Customer Provided Item"" cannot be Purchase Item also","""Kundens leverede vare"" kan ikke være købsartikel også",
"""Customer Provided Item"" cannot have Valuation Rate","""Kundens leverede vare"" kan ikke have værdiansættelsesrate",
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""Er anlægsaktiv"" kan ikke være umarkeret, da der eksisterer et anlægsaktiv på varen",
'Based On' and 'Group By' can not be same,'Baseret på' og 'Sortér efter ' ikke kan være samme,
'Days Since Last Order' must be greater than or equal to zero,'Dage siden sidste ordre' skal være større end eller lig med nul,
'Entries' cannot be empty,'Indlæg' kan ikke være tomt,
'From Date' is required,'Fra dato' er nødvendig,
'From Date' must be after 'To Date','Fra dato' skal være efter 'Til dato',
'Has Serial No' can not be 'Yes' for non-stock item,'Har serienummer' kan ikke være 'Ja' for ikke-lagerførte vare,
'Opening','Åbner',
'To Case No.' cannot be less than 'From Case No.','Til sag nr.' kan ikke være mindre end 'Fra sag nr.',
'To Date' is required,&#39;Til dato&#39; er nødvendig,
'Total','I alt',
'Update Stock' can not be checked because items are not delivered via {0},"'Opdater lager' kan ikke markeres, fordi varerne ikke leveres via {0}",
'Update Stock' cannot be checked for fixed asset sale,'Opdater lager' kan ikke kontrolleres pga. salg af anlægsaktiver,
1 exact match.,1 nøjagtigt match.,
90-Above,90-Over,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,En kundegruppe med samme navn findes. Ret Kundens navn eller omdøb kundegruppen,
A Default Service Level Agreement already exists.,En standard serviceniveauaftale findes allerede.,
A Lead requires either a person's name or an organization's name,En kunde kræver enten en persons navn eller en organisations navn,
A customer with the same name already exists,En kunde med samme navn eksisterer allerede,
A question must have more than one options,Et spørgsmål skal have mere end en mulighed,
A qustion must have at least one correct options,Et spørgsmål skal have mindst én korrekte indstillinger,
A4,A4,
API Endpoint,API Endpoint,
API Key,API nøgle,
Abbr can not be blank or space,Forkortelsen kan ikke være tom eller bestå af mellemrum,
Abbreviation already used for another company,Forkortelse allerede brugt til et andet selskab,
Abbreviation cannot have more than 5 characters,Forkortelse kan ikke have mere end 5 tegn,
Abbreviation is mandatory,Forkortelsen er obligatorisk,
About the Company,Om virksomheden,
About your company,Om din virksomhed,
Above,Frem,
Academic Term,Akademisk betegnelse,
Academic Term: ,Akademisk Term:,
Academic Year,Skoleår,
Academic Year: ,Akademi år:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Accepteret + Afvist antal skal være lig med modtaget antal for vare {0},
Access Token,Adgangs token,
Accessable Value,Tilgængelig værdi,
Account,Konto,
Account Number,Kontonummer,
Account Number {0} already used in account {1},"Kontonummer {0}, der allerede er brugt i konto {1}",
Account Pay Only,Konto Betal kun,
Account Type,Kontotype,
Account Type for {0} must be {1},Kontotype for {0} skal være {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Konto balance er kredit, Du har ikke lov til at ændre 'Balancetype' til 'debet'",
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'",Konto balance er debit. Du har ikke lov til at ændre 'Balancetype' til 'kredit',
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,Kontonummer for konto {0} er ikke tilgængeligt. <br> Opsæt venligst dit kontoplan korrekt.,
Account with child nodes cannot be converted to ledger,Konto med barneknudepunkter kan ikke konverteres til finans,
Account with child nodes cannot be set as ledger,Konto med barn noder kan ikke indstilles som hovedbog,
Account with existing transaction can not be converted to group.,Konto med eksisterende transaktion kan ikke konverteres til gruppen.,
Account with existing transaction can not be deleted,Konto med eksisterende transaktion kan ikke slettes,
Account with existing transaction cannot be converted to ledger,Konto med eksisterende transaktion kan ikke konverteres til finans,
Account {0} does not belong to company: {1},Konto {0} tilhører ikke virksomheden: {1},
Account {0} does not belongs to company {1},Konto {0} ikke hører til virksomheden {1},
Account {0} does not exist,Konto {0} findes ikke,
Account {0} does not exists,Konto {0} findes ikke,
Account {0} does not match with Company {1} in Mode of Account: {2},Konto {0} stemmer ikke overens med virksomhed {1} i kontoens tilstand: {2},
Account {0} has been entered multiple times,Konto {0} er indtastet flere gange,
Account {0} is added in the child company {1},Konto {0} tilføjes i børneselskabet {1},
Account {0} is frozen,Konto {0} er spærret,
Account {0} is invalid. Account Currency must be {1},Konto {0} er ugyldig. Konto Valuta skal være {1},
Account {0}: Parent account {1} can not be a ledger,Konto {0}: Forældre-konto {1} kan ikke være en finanskonto,
Account {0}: Parent account {1} does not belong to company: {2},Konto {0}: overordnet konto {1} tilhører ikke firma: {2},
Account {0}: Parent account {1} does not exist,Konto {0}: Forældre-konto {1} findes ikke,
Account {0}: You can not assign itself as parent account,Konto {0}: Konto kan ikke samtidig være forældre-konto,
Account: {0} can only be updated via Stock Transactions,Konto: {0} kan kun opdateres via lagertransaktioner,
Account: {0} with currency: {1} can not be selected,Konto: {0} med valuta: kan ikke vælges {1},
Accountant,Revisor,
Accounting,Regnskab,
Accounting Entry for Asset,Regnskabsføring for aktiv,
Accounting Entry for Stock,Regnskab Punktet for lager,
Accounting Entry for {0}: {1} can only be made in currency: {2},Regnskab Punktet om {0}: {1} kan kun foretages i valuta: {2},
Accounting Ledger,Hovedbog,
Accounting journal entries.,Regnskab journaloptegnelser.,
Accounts,Regnskab,
Accounts Manager,Regnskabschef,
Accounts Payable,Kreditor,
Accounts Payable Summary,Kreditorer Resumé,
Accounts Receivable,Tilgodehavender,
Accounts Receivable Summary,Debitor Resumé,
Accounts User,Regnskabsbruger,
Accounts table cannot be blank.,Regnskab tabel kan ikke være tom.,
Accumulated Depreciation,Akkumulerede afskrivninger,
Accumulated Depreciation Amount,Akkumuleret Afskrivninger Beløb,
Accumulated Depreciation as on,Akkumulerede afskrivninger som på,
Accumulated Monthly,Akkumuleret Månedlig,
Accumulated Values,Akkumulerede værdier,
Accumulated Values in Group Company,Akkumulerede værdier i koncernselskabet,
Achieved ({}),Opnået ({}),
Action,Handling,
Action Initialised,Handling initieret,
Actions,Handlinger,
Active,Aktiv,
Activity Cost exists for Employee {0} against Activity Type - {1},Aktivitetsomkostninger eksisterer for Medarbejder {0} for aktivitetstype - {1},
Activity Cost per Employee,Aktivitet Omkostninger per Medarbejder,
Activity Type,Aktivitetstype,
Actual Cost,Faktiske omkostninger,
Actual Delivery Date,Faktisk Leveringsdato,
Actual Qty,Faktiske Antal,
Actual Qty is mandatory,Faktiske Antal er obligatorisk,
Actual Qty {0} / Waiting Qty {1},Faktisk antal {0} / ventende antal {1},
Actual Qty: Quantity available in the warehouse.,Faktisk antal: Mængde tilgængeligt på lageret.,
Actual qty in stock,Faktisk antal på lager,
Actual type tax cannot be included in Item rate in row {0},"Faktiske type skat, kan ikke indgå i vare sats i række {0}",
Add,Tilføj,
Add / Edit Prices,Tilføj / Rediger Priser,
Add Comment,Tilføj kommentar,
Add Customers,Tilføj kunder,
Add Employees,Tilføj medarbejdere,
Add Item,Tilføj vare,
Add Items,Tilføj varer,
Add Leads,Tilføj emner,
Add Multiple Tasks,Tilføj flere opgaver,
Add Row,Tilføj række,
Add Sales Partners,Tilføj salgspartnere,
Add Serial No,Tilføj serienummer,
Add Students,Tilføj studerende,
Add Suppliers,Tilføj leverandører,
Add Time Slots,Tilføj ledige tider,
Add Timesheets,Tilføj Tidsregistreringskladder,
Add Timeslots,Tilføj timespor,
Add Users to Marketplace,Tilføj brugere til Marketplace,
Add a new address,Tilføj en ny adresse,
Add cards or custom sections on homepage,Tilføj kort eller brugerdefinerede sektioner på startsiden,
Add more items or open full form,Tilføj flere varer eller åben fulde form,
Add notes,Tilføj noter,
Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Tilsæt resten af din organisation som dine brugere. Du kan også tilføje invitere kunder til din portal ved at tilføje dem fra Kontakter,
Add/Remove Recipients,Tilføj / fjern modtagere,
Added,Tilføjet,
Added {0} users,Tilføjet {0} brugere,
Additional Salary Component Exists.,Der findes yderligere lønkomponenter.,
Address,Adresse,
Address Line 2,Adresse 2,
Address Name,Adresse Navn,
Address Title,Adresse Titel,
Address Type,Adressetype,
Administrative Expenses,Administrationsomkostninger,
Administrative Officer,Kontorfuldmægtig,
Administrator,Administrator,
Admission,Optagelse,
Admission and Enrollment,Optagelse og tilmelding,
Admissions for {0},Optagelser til {0},
Admit,Optag,
Admitted,Indlagt,
Advance Amount,Advance Beløb,
Advance Payments,Forudbetalinger,
Advance account currency should be same as company currency {0},Advance-valuta skal være den samme som virksomhedens valuta {0},
Advance amount cannot be greater than {0} {1},Advance beløb kan ikke være større end {0} {1},
Advertising,Reklame,
Aerospace,Luftfart,
Against,Imod,
Against Account,Imod konto,
Against Journal Entry {0} does not have any unmatched {1} entry,Imod Kassekladde {0} har ikke nogen uovertruffen {1} indgang,
Against Journal Entry {0} is already adjusted against some other voucher,Imod Kassekladde {0} er allerede justeret mod et andet bilag,
Against Supplier Invoice {0} dated {1},Imod Leverandør Faktura {0} dateret {1},
Against Voucher,Modbilag,
Against Voucher Type,Mod Bilagstype,
Age,Alder,
Age (Days),Alder (dage),
Ageing Based On,Aldring Baseret på,
Ageing Range 1,Ageing Range 1,
Ageing Range 2,Ageing Range 2,
Ageing Range 3,Ageing Range 3,
Agriculture,Landbrug,
Agriculture (beta),Landbrug (beta),
Airline,Flyselskab,
All Accounts,Alle konti,
All Addresses.,Alle adresser.,
All Assessment Groups,Alle vurderingsgrupper,
All BOMs,Alle styklister,
All Contacts.,Alle kontakter.,
All Customer Groups,Alle kundegrupper,
All Day,Hele dagen,
All Departments,Alle afdelinger,
All Healthcare Service Units,Alle sundhedsvæsener,
All Item Groups,Alle varegrupper,
All Products,Alle produkter,
All Products or Services.,Alle produkter eller tjenesteydelser.,
All Student Admissions,Alle Student Indlæggelser,
All Supplier Groups,Alle leverandørgrupper,
All Supplier scorecards.,Alle leverandør scorecards.,
All Territories,Alle områder,
All Warehouses,Alle lagre,
All communications including and above this shall be moved into the new Issue,Alle meddelelser inklusive og over dette skal flyttes til det nye udgave,
All items have already been transferred for this Work Order.,Alle elementer er allerede overført til denne Arbejdsordre.,
All other ITC,Alt andet ITC,
All the mandatory Task for employee creation hasn't been done yet.,Al den obligatoriske opgave for medarbejderskabelse er endnu ikke blevet udført.,
Allocate Payment Amount,Tildel Betaling Beløb,
Allocated Amount,Tildelte beløb,
Allocating leaves...,Tildele blade ...,
Already record exists for the item {0},Der findes allerede en rekord for varen {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Angiv allerede standard i pos profil {0} for bruger {1}, venligt deaktiveret standard",
Alternate Item,Alternativt element,
Alternative item must not be same as item code,Alternativt element må ikke være det samme som varekode,
Amended From,Ændret Fra,
Amount,Beløb,
Amount After Depreciation,Antal efter afskrivninger,
Amount of Integrated Tax,Beløb på integreret skat,
Amount of TDS Deducted,Antal af TDS fratrukket,
Amount should not be less than zero.,Beløbet bør ikke være mindre end nul.,
Amount to Bill,Antal til fakturering,
Amount {0} {1} against {2} {3},Mængden {0} {1} mod {2} {3},
Amount {0} {1} deducted against {2},Mængden {0} {1} trækkes mod {2},
Amount {0} {1} transferred from {2} to {3},Mængden {0} {1} overført fra {2} til {3},
Amount {0} {1} {2} {3},Mængden {0} {1} {2} {3},
Amt,Amt,
"An Item Group exists with same name, please change the item name or rename the item group","Der eksisterer en varegruppe med samme navn, og du bedes derfor ændre varenavnet eller omdøbe varegruppen",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,"En akademisk betegnelse for denne ""skoleår '{0} og"" betingelsesnavn' {1} findes allerede. Korrigér venligst og prøv igen.",
An error occurred during the update process,Der opstod en fejl under opdateringsprocessen,
"An item exists with same name ({0}), please change the item group name or rename the item","En vare eksisterer med samme navn ({0}), og du bedes derfor ændre navnet på varegruppen eller omdøbe varen",
Analyst,Analytiker,
Analytics,Analyser,
Annual Billing: {0},Årlig fakturering: {0},
Anonymous,Anonym,
Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},En anden budgetpost &#39;{0}&#39; eksisterer allerede mod {1} &#39;{2}&#39; og konto &#39;{3}&#39; for regnskabsår {4},
Another Period Closing Entry {0} has been made after {1},En anden Periode Lukning indtastning {0} er blevet foretaget efter {1},
Another Sales Person {0} exists with the same Employee id,En anden salgsmedarbejder {0} eksisterer med samme Medarbejder-id,
Antibiotic,Antibiotikum,
Apparel & Accessories,Beklædning og tilbehør,
Applicable For,Gældende For,
"Applicable if the company is SpA, SApA or SRL","Gælder hvis virksomheden er SpA, SApA eller SRL",
Applicable if the company is a limited liability company,"Gælder, hvis virksomheden er et aktieselskab",
Applicable if the company is an Individual or a Proprietorship,"Gælder, hvis virksomheden er et individ eller et ejerskab",
Application of Funds (Assets),Anvendelse af midler (aktiver),
Applied,Ansøgt,
Appointment Confirmation,Bekræft konsultation,
Appointment Duration (mins),Aftale Varighed (minutter),
Appointment Type,Aftale type,
Appointment {0} and Sales Invoice {1} cancelled,Aftale {0} og salgsfaktura {1} annulleret,
Appointments and Encounters,Aftaler og møder,
Appointments and Patient Encounters,Aftaler og konsultationer,
Appraisal {0} created for Employee {1} in the given date range,Vurdering {0} dannet for medarbejder {1} i det givne datointerval,
Approving Role cannot be same as role the rule is Applicable To,Godkendelse Rolle kan ikke være det samme som rolle reglen gælder for,
Approving User cannot be same as user the rule is Applicable To,Godkendelse Brugeren kan ikke være det samme som brugeren er reglen gælder for,
"Apps using current key won't be able to access, are you sure?","Apps, der bruger den nuværende nøgle, vil ikke kunne få adgang til, er du sikker?",
Are you sure you want to cancel this appointment?,"Er du sikker på, at du vil annullere denne aftale?",
Arrear,bagud,
As Examiner,Som eksaminator,
As On Date,Som på dato,
As Supervisor,Som Supervisor,
As per rules 42 & 43 of CGST Rules,I henhold til reglerne 42 og 43 i CGST-reglerne,
As per section 17(5),I henhold til afsnit 17 (5),
Assessment,Vurdering,
Assessment Criteria,Vurderingskriterier,
Assessment Group,Vurderings gruppe,
Assessment Group: ,Vurderings gruppe:,
Assessment Plan,Vurdering Plan,
Assessment Plan Name,Evalueringsplan Navn,
Assessment Report,Vurderingsrapport,
Assessment Reports,Vurderingsrapporter,
Assessment Result,Vurdering Resultat,
Assessment Result record {0} already exists.,Vurdering Resultatoptegnelsen {0} eksisterer allerede.,
Asset,Anlægsaktiv,
Asset Category,Aktiver kategori,
Asset Category is mandatory for Fixed Asset item,Aktivkategori er obligatorisk for en anlægsaktivvare,
Asset Maintenance,Aktiver vedligeholdelse,
Asset Movement,Aktiver flytning,
Asset Movement record {0} created,Aktiver flytnings rekord {0} oprettet,
Asset Name,Aktivnavn,
Asset Received But Not Billed,Aktiver modtaget men ikke faktureret,
Asset Value Adjustment,Aktiver værdiregulering,
"Asset cannot be cancelled, as it is already {0}","Aktiver kan ikke annulleres, da det allerede er {0}",
Asset scrapped via Journal Entry {0},Anlægsasset er kasseret via finanspost {0},
"Asset {0} cannot be scrapped, as it is already {1}","Anlægsaktiv {0} kan ikke kasseres, da det allerede er {1}",
Asset {0} does not belong to company {1},Aktiver {0} hører ikke til selskab {1},
Asset {0} must be submitted,Aktiv {0} skal godkendes,
Assets,Aktiver,
Assign To,Tildel til,
Associate,Medarbejder,
At least one mode of payment is required for POS invoice.,Mindst én form for betaling er nødvendig for POS faktura.,
Atleast one item should be entered with negative quantity in return document,Mindst ét element skal indtastes med negativt mængde gengæld dokument,
Atleast one of the Selling or Buying must be selected,Mindst en af salg eller køb skal vælges,
Atleast one warehouse is mandatory,Mindst ét lager skal angives,
Attach Logo,Vedhæft logo,
Attachment,Vedhæftet,
Attachments,Vedhæftede filer,
Attendance can not be marked for future dates,Fremmøde kan ikke markeres for fremtidige datoer,
Attendance date can not be less than employee's joining date,Fremmødedato kan ikke være mindre end medarbejderens ansættelsesdato,
Attendance for employee {0} is already marked,Fremmøde til medarbejder {0} er allerede markeret,
Attendance has been marked successfully.,Deltagelse er mærket korrekt.,
Attendance not submitted for {0} as {1} on leave.,Tilstedeværelse er ikke indsendt til {0} som {1} med orlov.,
Attribute table is mandatory,Attributtabellen er obligatorisk,
Attribute {0} selected multiple times in Attributes Table,Attribut {0} valgt flere gange i attributter Tabel,
Author,Forfatter,
Authorized Signatory,Tegningsberettiget,
Auto Material Requests Generated,Automatisk materialeanmodning dannet,
Auto Repeat,Automatisk gentagelse,
Auto repeat document updated,Automatisk gentag dokument opdateret,
Automotive,Bil,
Available,Tilgængelig,
Available Leaves,Tilgængelige blade,
Available Qty,Tilgængelig antal,
Available Selling,Tilgængelig salg,
Available for use date is required,Tilgængelig til brug dato er påkrævet,
Available slots,Tilgængelige pladser,
Available {0},Tilgængelige {0},
Available-for-use Date should be after purchase date,Tilgængelig til brug Dato bør være efter købsdato,
Average Age,Gennemsnitlig alder,
Average Rate,Gennemsnitlig sats,
Avg Daily Outgoing,Gennemsnitlig daglige udgående,
Avg. Buying Price List Rate,Gennemsnitlig. Pris for købsprisliste,
Avg. Selling Price List Rate,Gennemsnitlig. Salgsprisliste Pris,
Avg. Selling Rate,Gns. Salgssats,
BOM,Stykliste,
BOM Browser,Styklistesøgning,
BOM No,Styklistenr.,
BOM Rate,BOM Rate,
BOM Stock Report,BOM Stock Rapport,
BOM and Manufacturing Quantity are required,Stykliste and produceret mængde skal angives,
BOM does not contain any stock item,Stykliste indeholder ikke nogen lagervarer,
BOM {0} does not belong to Item {1},Stykliste {0} hører ikke til vare {1},
BOM {0} must be active,Stykliste {0} skal være aktiv,
BOM {0} must be submitted,Stykliste {0} skal godkendes,
Balance,Balance,
Balance (Dr - Cr),Balance (Dr - Cr),
Balance ({0}),Balance ({0}),
Balance Qty,Balance Antal,
Balance Sheet,Balance,
Balance Value,Balance Value,
Balance for Account {0} must always be {1},Balance for konto {0} skal altid være {1},
Bank,Bank,
Bank Account,Bankkonto,
Bank Accounts,Bankkonti,
Bank Draft,Bank Draft,
Bank Name,Bank navn,
Bank Overdraft Account,Bank kassekredit,
Bank Reconciliation,Bank Afstemning,
Bank Reconciliation Statement,Bank Saldoopgørelsen,
Bank Statement,Kontoudtog,
Bank Statement Settings,Indstillinger for bankerklæring,
Bank Statement balance as per General Ledger,Kontoudskrift balance pr Finans,
Bank account cannot be named as {0},Bankkonto kan ikke blive navngivet som {0},
Bank/Cash transactions against party or for internal transfer,Bank/Kontante transaktioner ved selskab eller intern overførsel,
Banking,Banking,
Banking and Payments,Bank- og betalinger,
Barcode {0} already used in Item {1},Stregkode {0} allerede brugt i vare {1},
Barcode {0} is not a valid {1} code,Stregkode {0} er ikke en gyldig {1} kode,
Base URL,Basiswebadresse,
Based On,Baseret på,
Based On Payment Terms,Baseret på betalingsbetingelser,
Basic,Grundlæggende,
Batch,Parti,
Batch Entries,Batchindgange,
Batch ID is mandatory,Parti-id er obligatorisk,
Batch Inventory,Partilager,
Batch Name,Partinavn,
Batch No,Partinr.,
Batch number is mandatory for Item {0},Partinummer er obligatorisk for vare {0},
Batch {0} of Item {1} has expired.,Batch {0} af varer {1} er udløbet.,
Batch {0} of Item {1} is disabled.,Batch {0} i vare {1} er deaktiveret.,
Batch: ,Parti:,
Batches,partier,
Become a Seller,Bliv sælger,
Bill,Faktureres,
Bill Date,Bill dato,
Bill No,Bill Ingen,
Bill of Materials,Styklister,
Bill of Materials (BOM),Styklister,
Billable Hours,Fakturerbare timer,
Billed,billed,
Billed Amount,Faktureret beløb,
Billing,Fakturering,
Billing Address,Faktureringsadresse,
Billing Address is same as Shipping Address,Faktureringsadresse er den samme som forsendelsesadresse,
Billing Amount,Faktureret beløb,
Billing Status,Faktureringsstatus,
Billing currency must be equal to either default company's currency or party account currency,Faktureringsvaluta skal være ens med enten standardfirmaets valuta eller selskabskontoens valuta,
Bills raised by Suppliers.,Regninger oprettet af leverandører.,
Bills raised to Customers.,Regninger sendt til kunder.,
Biotechnology,Bioteknologi,
Black,Sort,
Blanket Orders from Costumers.,Tæppe ordrer fra kunder.,
Block Invoice,Blokfaktura,
Boms,styklister,
Both Trial Period Start Date and Trial Period End Date must be set,Begge prøveperiode Startdato og prøveperiode Slutdato skal indstilles,
Both Warehouse must belong to same Company,Begge lagre skal høre til samme firma,
Branch,Filial,
Broadcasting,Broadcasting,
Brokerage,Brokerage,
Browse BOM,Gennemse styklister,
Budget Against,Budget Against,
Budget List,Budgetliste,
Budget Variance Report,Budget Variance Report,
Budget cannot be assigned against Group Account {0},Budget kan ikke tildeles mod Group konto {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","Budget kan ikke tildeles mod {0}, da det ikke er en indtægt eller omkostning konto",
Buildings,Bygninger,
Bundle items at time of sale.,Bundle elementer på salgstidspunktet.,
Business Development Manager,Business Development Manager,
Buy,Køb,
Buying,Køb,
Buying Amount,Køb Beløb,
Buying Price List,Købsprisliste,
Buying Rate,Købspris,
"Buying must be checked, if Applicable For is selected as {0}","Indkøb skal kontrolleres, om nødvendigt er valgt som {0}",
By {0},Af {0},
Bypass credit check at Sales Order ,Bypass kreditcheck på salgsordre,
C-Form records,C-Form optegnelser,
C-form is not applicable for Invoice: {0},C-formen er ikke for faktura: {0},
CEO,direktør,
CESS Amount,CESS-beløb,
CGST Amount,CGST beløb,
CRM,CRM,
CWIP Account,CWIP-konto,
Calculated Bank Statement balance,Beregnede kontoudskrift balance,
Campaign,Kampagne,
Can be approved by {0},Kan godkendes af {0},
"Can not filter based on Account, if grouped by Account","Kan ikke filtrere baseret på Konto, hvis grupperet efter Konto",
"Can not filter based on Voucher No, if grouped by Voucher",Kan ikke filtrere baseret på bilagsnr. hvis der sorteres efter Bilagstype,
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Kan ikke markere Inpatient Record Discharged, der er Unbilled Fakturaer {0}",
Can only make payment against unbilled {0},Kan kun gøre betaling mod faktureret {0},
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Kan henvise rækken, hvis gebyret type er &#39;On Forrige Row Beløb &quot;eller&quot; Forrige Row alt&#39;",
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","Kan ikke ændre værdiansættelsesmetode, da der er transaktioner mod nogle poster, der ikke har egen værdiansættelsesmetode",
Can't create standard criteria. Please rename the criteria,Kan ikke oprette standard kriterier. Venligst omdøber kriterierne,
Cancel,Annullere,
Cancel Material Visit {0} before cancelling this Warranty Claim,"Annuller Materiale Besøg {0}, før den annullerer denne garanti krav",
Cancel Material Visits {0} before cancelling this Maintenance Visit,"Annuller Materiale Besøg {0}, før den annullerer denne vedligeholdelse Besøg",
Cancel Subscription,Annuller abonnement,
Cancel the journal entry {0} first,Annuller journalindtastningen {0} først,
Canceled,Aflyst,
"Cannot Submit, Employees left to mark attendance","Kan ikke indsende, Medarbejdere tilbage for at markere deltagelse",
Cannot be a fixed asset item as Stock Ledger is created.,"Kan ikke være en fast aktivpost, da lagerliste oprettes.",
Cannot cancel because submitted Stock Entry {0} exists,"Kan ikke annullere, for en godkendt lagerindtastning {0} eksisterer",
Cannot cancel transaction for Completed Work Order.,Kan ikke annullere transaktionen for Afsluttet Arbejdsordre.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},Kan ikke annullere {0} {1} fordi serienummer {2} ikke tilhører lageret {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,Kan ikke ændre attributter efter aktiehandel. Lav en ny vare og overfør lager til den nye vare,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Kan ikke ændre regnskabsår Start Dato og Skatteårsafslutning Dato når regnskabsår er gemt.,
Cannot change Service Stop Date for item in row {0},Kan ikke ændre Service Stop Date for element i række {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,Kan ikke ændre Variantegenskaber efter aktiehandel. Du bliver nødt til at lave en ny vare til at gøre dette.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Kan ikke ændre virksomhedens standard valuta, fordi den anvendes i eksisterende transaktioner. Transaktioner skal annulleres for at ændre standard valuta.",
Cannot change status as student {0} is linked with student application {1},Kan ikke ændre status som studerende {0} er forbundet med student ansøgning {1},
Cannot convert Cost Center to ledger as it has child nodes,"Kan ikke konvertere Cost Center til hovedbog, som det har barneknudepunkter",
Cannot covert to Group because Account Type is selected.,"Kan ikke skjult til gruppen, fordi Kontotype er valgt.",
Cannot create Retention Bonus for left Employees,Kan ikke oprette tilbageholdelsesbonus for venstre medarbejdere,
Cannot create a Delivery Trip from Draft documents.,Kan ikke oprette en leveringstur fra udkast til dokumenter.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,"Kan ikke deaktivere eller annullere en stykliste, som det er forbundet med andre styklister",
"Cannot declare as lost, because Quotation has been made.","Kan ikke erklæres tabt, fordi tilbud er afgivet.",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',"Ikke kan fradrage, når kategorien er for &quot;Værdiansættelse&quot; eller &quot;Værdiansættelse og Total &#39;",
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',Kan ikke fratrække når kategori er for &quot;Værdiansættelse&quot; eller &quot;Vaulation og Total &#39;,
"Cannot delete Serial No {0}, as it is used in stock transactions","Kan ikke slette serienummer {0}, eftersom det bruges på lagertransaktioner",
Cannot enroll more than {0} students for this student group.,Kan ikke tilmelde mere end {0} studerende til denne elevgruppe.,
Cannot produce more Item {0} than Sales Order quantity {1},Kan ikke producere mere Item {0} end Sales Order mængde {1},
Cannot promote Employee with status Left,Kan ikke fremme medarbejder med status til venstre,
Cannot refer row number greater than or equal to current row number for this Charge type,Kan ikke henvise rækken tal større end eller lig med aktuelle række nummer til denne Charge typen,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,Kan ikke vælge charge type som &#39;On Forrige Row Beløb&#39; eller &#39;On Forrige Row alt &quot;for første række,
Cannot set as Lost as Sales Order is made.,Kan ikke indstilles som Lost som Sales Order er foretaget.,
Cannot set authorization on basis of Discount for {0},Kan ikke sætte godkendelse på grundlag af Rabat for {0},
Cannot set multiple Item Defaults for a company.,Kan ikke indstille flere standardindstillinger for en virksomhed.,
Cannot set quantity less than delivered quantity,Kan ikke indstille antal mindre end leveret mængde,
Cannot set quantity less than received quantity,Kan ikke angive antal mindre end modtaget mængde,
Cannot set the field <b>{0}</b> for copying in variants,Kan ikke indstille feltet <b>{0}</b> til kopiering i varianter,
Cannot transfer Employee with status Left,Kan ikke overføre medarbejder med status til venstre,
Cannot {0} {1} {2} without any negative outstanding invoice,Kan ikke {0} {1} {2} uden nogen negativ udestående faktura,
Capital Equipments,Capital Udstyr,
Capital Stock,Capital Stock,
Capital Work in Progress,Kapitalarbejde i fremskridt,
Cart,Kurv,
Cart is Empty,Indkøbskurv er tom,
Case No(s) already in use. Try from Case No {0},"(E), der allerede er i brug Case Ingen. Prøv fra sag {0}",
Cash,Kontanter,
Cash Flow Statement,Pengestrømsanalyse,
Cash Flow from Financing,Pengestrømme fra finansaktiviteter,
Cash Flow from Investing,Pengestrømme fra investeringsaktiviteter,
Cash Flow from Operations,Pengestrøm fra driften,
Cash In Hand,Kassebeholdning,
Cash or Bank Account is mandatory for making payment entry,Kontant eller bankkonto skal indtastes for post,
Cashier Closing,Cashier Closing,
Category,Kategori,
Category Name,Kategori Navn,
Caution,Advarsel,
Central Tax,Central Skat,
Certification,Certificering,
Cess,Cess,
Change Amount,ændring beløb,
Change Item Code,Skift varekode,
Change Release Date,Skift Udgivelsesdato,
Change Template Code,Skift skabelonkode,
Changing Customer Group for the selected Customer is not allowed.,Ændring af kundegruppe for den valgte kunde er ikke tilladt.,
Chapter,Kapitel,
Chapter information.,Kapitelinformation.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Afgift af typen &#39;Actual &quot;i rækken {0} kan ikke indgå i Item Rate,
Chargeble,chargeble,
Charges are updated in Purchase Receipt against each item,Afgifter er opdateret i købskvitteringen for hver enkelt vare,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Afgifter vil blive fordelt forholdsmæssigt baseret på post qty eller mængden, som pr dit valg",
Chart of Cost Centers,Diagram af omkostningssteder,
Check all,Vælg alle,
Checkout,bestilling,
Chemical,Kemisk,
Cheque,Anvendes ikke,
Cheque/Reference No,Anvendes ikke,
Cheques Required,Checks påkrævet,
Cheques and Deposits incorrectly cleared,Anvendes ikke,
Child Task exists for this Task. You can not delete this Task.,Børneopgave eksisterer for denne opgave. Du kan ikke slette denne opgave.,
Child nodes can be only created under 'Group' type nodes,Child noder kan kun oprettes under &#39;koncernens typen noder,
Child warehouse exists for this warehouse. You can not delete this warehouse.,eksisterer Child lager for dette lager. Du kan ikke slette dette lager.,
Circular Reference Error,Cirkulær reference Fejl,
City,by,
City/Town,By,
Clay,Ler,
Clear filters,Ryd filtre,
Clear values,Ryd værdier,
Clearance Date,Clearance Dato,
Clearance Date not mentioned,Clearance Dato ikke nævnt,
Clearance Date updated,Clearance Dato opdateret,
Client,Klient,
Client ID,Klient-id,
Client Secret,Client Secret,
Clinical Procedure,Klinisk procedure,
Clinical Procedure Template,Klinisk procedureskabelon,
Close Balance Sheet and book Profit or Loss.,Luk Balance og book resultatopgørelsen.,
Close Loan,Luk lån,
Close the POS,Luk POS,
Closed,Lukket,
Closed order cannot be cancelled. Unclose to cancel.,Lukket ordre kan ikke annulleres. Unclose at annullere.,
Closing (Cr),Lukning (Cr),
Closing (Dr),Lukning (Dr),
Closing (Opening + Total),Lukning (Åbning + I alt),
Closing Account {0} must be of type Liability / Equity,Lukningskonto {0} skal være af typen Passiver / Egenkapital,
Closing Balance,Afslutningsbalance,
Code,Kode,
Collapse All,Skjul alle,
Color,Farve,
Colour,Farve,
Combined invoice portion must equal 100%,Kombineret faktura del skal svare til 100%,
Commercial,Kommerciel,
Commission,Provision,
Commission Rate %,Kommissionens sats%,
Commission on Sales,Salgsprovisioner,
Commission rate cannot be greater than 100,Provisionssats kan ikke være større end 100,
Community Forum,Fællesskab Forum,
Company (not Customer or Supplier) master.,Company (ikke kunde eller leverandør) herre.,
Company Abbreviation,Firma-forkortelse,
Company Abbreviation cannot have more than 5 characters,Virksomhedsforkortelse kan ikke have mere end 5 tegn,
Company Name,Firmaets navn,
Company Name cannot be Company,Firmaets navn kan ikke være Firma,
Company currencies of both the companies should match for Inter Company Transactions.,Selskabets valutaer for begge virksomheder skal matche for Inter Company Transactions.,
Company is manadatory for company account,Virksomheden er manadatorisk for virksomhedskonto,
Company name not same,Virksomhedens navn er ikke det samme,
Company {0} does not exist,Firma {0} findes ikke,
Compensatory leave request days not in valid holidays,Forsøgsfrihed anmodningsdage ikke i gyldige helligdage,
Complaint,Symptom,
Completion Date,Afslutning Dato,
Computer,Computer,
Condition,Tilstand,
Configure,Konfigurer,
Configure {0},Konfigurer {0},
Confirmed orders from Customers.,Bekræftede ordrer fra kunder.,
Connect Amazon with ERPNext,Forbind Amazon med ERPNext,
Connect Shopify with ERPNext,Tilslut Shopify med ERPNext,
Connect to Quickbooks,Opret forbindelse til Quickbooks,
Connected to QuickBooks,Tilsluttet QuickBooks,
Connecting to QuickBooks,Tilslutning til QuickBooks,
Consultation,Konsultation,
Consultations,Høringer,
Consulting,Rådgivning,
Consumable,Forbrugsmaterialer,
Consumed,forbrugt,
Consumed Amount,Forbrugt Mængde,
Consumed Qty,Forbrugt antal,
Consumer Products,Forbrugerprodukter,
Contact,Kontakt,
Contact Details,Kontaktoplysninger,
Contact Us,Kontakt os,
Content,Indhold,
Content Masters,Content Masters,
Content Type,Indholdstype,
Continue Configuration,Fortsæt konfigurationen,
Contract,Kontrakt,
Contract End Date must be greater than Date of Joining,Fratrædelsesdato skal være større end ansættelsesdato,
Contribution %,Bidrag%,
Contribution Amount,Bidrag Beløb,
Conversion factor for default Unit of Measure must be 1 in row {0},Omregningsfaktor for standard Måleenhed skal være 1 i række {0},
Conversion rate cannot be 0 or 1,Omregningskurs kan ikke være 0 eller 1,
Convert to Group,Konverter til Group,
Convert to Non-Group,Konverter til ikke-Group,
Cosmetics,Kosmetik,
Cost Center,Omkostningssted,
Cost Center Number,Omkostningscenter nummer,
Cost Center and Budgeting,Omkostningscenter og budgettering,
Cost Center is required in row {0} in Taxes table for type {1},Omkostningssted kræves i række {0} i Skattetabellen for type {1},
Cost Center with existing transactions can not be converted to group,Omkostningssted med eksisterende transaktioner kan ikke konverteres til gruppe,
Cost Center with existing transactions can not be converted to ledger,Cost Center med eksisterende transaktioner kan ikke konverteres til finans,
Cost Centers,Omkostningssteder,
Cost Updated,Omkostninger opdateret,
Cost as on,Omkostninger som på,
Cost of Delivered Items,Omkostninger ved leverede varer,
Cost of Goods Sold,Vareforbrug,
Cost of Issued Items,Omkostninger ved Udstedte Varer,
Cost of New Purchase,Udgifter til nye køb,
Cost of Purchased Items,Omkostninger ved købte varer,
Cost of Scrapped Asset,Udgifter kasseret anlægsaktiv,
Cost of Sold Asset,Udgifter Solgt Asset,
Cost of various activities,Omkostninger ved forskellige aktiviteter,
"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again",Kunne ikke oprette kreditnota automatisk. Fjern venligst afkrydsningsfeltet &quot;Udsted kreditnota&quot; og send igen,
Could not generate Secret,Kunne ikke generere Secret,
Could not retrieve information for {0}.,Kunne ikke hente oplysninger for {0}.,
Could not solve criteria score function for {0}. Make sure the formula is valid.,"Kunne ikke løse kriteriernes scorefunktion for {0}. Sørg for, at formlen er gyldig.",
Could not solve weighted score function. Make sure the formula is valid.,"Kunne ikke løse vægtet scoringsfunktion. Sørg for, at formlen er gyldig.",
Could not submit some Salary Slips,Kunne ikke indsende nogle Lønslister,
"Could not update stock, invoice contains drop shipping item.","Kunne ikke opdatere lager, faktura indeholder drop shipping element.",
Country wise default Address Templates,Standard-adresseskabeloner sorteret efter lande,
Course Code: ,Kursuskode:,
Course Enrollment {0} does not exists,Tilmelding af kursus {0} findes ikke,
Course Schedule,Kursusskema,
Course: ,Rute:,
Cr,Cr,
Create,Opret,
Create BOM,Opret BOM,
Create Delivery Trip,Opret leveringstur,
Create Employee,Opret medarbejder,
Create Employee Records,Opret Medarbejder Records,
"Create Employee records to manage leaves, expense claims and payroll","Opret Medarbejder optegnelser til at styre blade, udgiftsopgørelser og løn",
Create Fee Schedule,Opret gebyrplan,
Create Fees,Opret gebyrer,
Create Inter Company Journal Entry,Oprettelse af Inter Company-journal,
Create Invoice,Opret faktura,
Create Invoices,Opret fakturaer,
Create Job Card,Opret jobkort,
Create Journal Entry,Opret journalpost,
Create Lead,Opret bly,
Create Leads,Opret emner,
Create Maintenance Visit,Opret vedligeholdelsesbesøg,
Create Material Request,Opret materialeanmodning,
Create Multiple,Opret flere,
Create Opening Sales and Purchase Invoices,Opret åbnings- og købsfakturaer,
Create Payment Entries,Opret betalingsindlæg,
Create Payment Entry,Opret betalingsindtastning,
Create Print Format,Opret Print Format,
Create Purchase Order,Opret indkøbsordre,
Create Purchase Orders,Opret indkøbsordrer,
Create Quotation,Opret citat,
Create Sales Invoice,Opret salgsfaktura,
Create Sales Order,Opret salgsordre,
Create Sales Orders to help you plan your work and deliver on-time,Opret salgsordrer for at hjælpe dig med at planlægge dit arbejde og levere til tiden,
Create Sample Retention Stock Entry,Opret prøveopbevaring lagerindtastning,
Create Student,Opret studerende,
Create Student Batch,Opret Student Batch,
Create Student Groups,Opret elevgrupper,
Create Supplier Quotation,Opret leverandørnotering,
Create Tax Template,Opret skatteskabelon,
Create Timesheet,Opret timeseddel,
Create User,Opret bruger,
Create Users,Opret brugere,
Create Variant,Opret variant,
Create Variants,Opret varianter,
"Create and manage daily, weekly and monthly email digests.","Opret og administrér de daglige, ugentlige og månedlige e-mail-nyhedsbreve.",
Create customer quotes,Opret tilbud til kunder,
Create rules to restrict transactions based on values.,Oprette regler til at begrænse transaktioner baseret på værdier.,
Created {0} scorecards for {1} between: ,Oprettet {0} scorecards for {1} mellem:,
Creating Company and Importing Chart of Accounts,Oprettelse af firma og import af kontoplan,
Creating Fees,Oprettelse af gebyrer,
Creating student groups,Oprettelse af elevgrupper,
Creating {0} Invoice,Oprettelse af {0} faktura,
Credit,Kredit,
Credit ({0}),Kredit ({0}),
Credit Account,Kreditkonto,
Credit Balance,Kreditsaldo,
Credit Card,Kreditkort,
Credit Days cannot be a negative number,Kreditdage kan ikke være et negativt tal,
Credit Limit,Kreditgrænse,
Credit Note,Kreditnota,
Credit Note Amount,Kredit Note Beløb,
Credit Note Issued,Kreditnota udstedt,
Credit Note {0} has been created automatically,Kreditnota {0} er oprettet automatisk,
Credit limit has been crossed for customer {0} ({1}/{2}),Kreditgrænsen er overskredet for kunden {0} ({1} / {2}),
Creditors,Kreditorer,
Criteria weights must add up to 100%,Kriterier vægt skal tilføje op til 100%,
Crop Cycle,Afgrødecyklus,
Crops & Lands,Afgrøder og lande,
Currency Exchange must be applicable for Buying or for Selling.,Valutaveksling skal være gældende for køb eller salg.,
Currency can not be changed after making entries using some other currency,Valuta kan ikke ændres efter at poster ved hjælp af nogle anden valuta,
Currency exchange rate master.,Valutakursen mester.,
Currency for {0} must be {1},Valuta for {0} skal være {1},
Currency is required for Price List {0},Valuta er nødvendig for prisliste {0},
Currency of the Closing Account must be {0},Valuta for Lukning Der skal være {0},
Currency of the price list {0} must be {1} or {2},Valuta på prislisten {0} skal være {1} eller {2},
Currency should be same as Price List Currency: {0},Valuta bør være den samme som Prisliste Valuta: {0},
Current Assets,Omsætningsaktiver,
Current BOM and New BOM can not be same,Nuværende stykliste og ny stykliste må ikke være ens,
Current Liabilities,Kortfristede forpligtelser,
Current Qty,Aktuel Antal,
Current invoice {0} is missing,Nuværende faktura {0} mangler,
Custom HTML,Tilpasset HTML,
Custom?,Brugerdefineret?,
Customer,Kunde,
Customer Addresses And Contacts,Kundeadresser og kontakter,
Customer Contact,Kundeservicekontakt,
Customer Database.,Kundedatabase.,
Customer Group,Kundegruppe,
Customer LPO,Kunde LPO,
Customer LPO No.,Kunde LPO nr.,
Customer Name,Kundennavn,
Customer POS Id,Kundens POS-id,
Customer Service,Kundeservice,
Customer and Supplier,Kunde og leverandør,
Customer is required,Kunde skal angives,
Customer isn't enrolled in any Loyalty Program,Kunden er ikke indskrevet i noget loyalitetsprogram,
Customer required for 'Customerwise Discount',Kunden kræves for &#39;Customerwise Discount&#39;,
Customer {0} does not belong to project {1},Kunden {0} hører ikke til sag {1},
Customer {0} is created.,Kunden {0} er oprettet.,
Customers in Queue,Kunder i kø,
Customize Homepage Sections,Tilpas hjemmesidesektioner,
Customizing Forms,Tilpasning Forms,
Daily Project Summary for {0},Daglig projektoversigt for {0},
Daily Reminders,Daglige påmindelser,
Data Import and Export,Dataind- og udlæsning,
Data Import and Settings,Dataimport og indstillinger,
Database of potential customers.,Database over potentielle kunder.,
Date Format,Datoformat,
Date Of Retirement must be greater than Date of Joining,Pensioneringsdato skal være større end ansættelsesdato,
Date of Birth,Fødselsdato,
Date of Birth cannot be greater than today.,Fødselsdato kan ikke være større end i dag.,
Date of Commencement should be greater than Date of Incorporation,Dato for påbegyndelse skal være større end oprettelsesdato,
Date of Joining,Ansættelsesdato,
Date of Joining must be greater than Date of Birth,Ansættelsesdato skal være større end fødselsdato,
Date of Transaction,Dato for transaktion,
Datetime,Datetime,
Day,Dag,
Debit,Debet,
Debit ({0}),Debitering ({0}),
Debit Account,Debetkonto,
Debit Note,Debitnota,
Debit Note Amount,Debet Note Beløb,
Debit Note Issued,Debit Note Udstedt,
Debit To is required,Debet-til skal angives,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,Debet og kredit ikke ens for {0} # {1}. Forskellen er {2}.,
Debtors,Debitorer,
Debtors ({0}),Debitorer ({0}),
Declare Lost,Erklær tabt,
Default Activity Cost exists for Activity Type - {0},Standard Aktivitets Omkostninger findes for Aktivitets Type - {0},
Default BOM ({0}) must be active for this item or its template,Standard stykliste ({0}) skal være aktiv for denne vare eller dens skabelon,
Default BOM for {0} not found,Standard stykliste for {0} blev ikke fundet,
Default BOM not found for Item {0} and Project {1},Standard BOM ikke fundet for Item {0} og Project {1},
Default Letter Head,Standard brevhoved,
Default Tax Template,Standard skat skabelon,
Default Unit of Measure for Item {0} cannot be changed directly because you have already made some transaction(s) with another UOM. You will need to create a new Item to use a different Default UOM.,"Standard måleenhed for Item {0} kan ikke ændres direkte, fordi du allerede har gjort nogle transaktion (er) med en anden UOM. Du bliver nødt til at oprette en ny konto for at bruge en anden Standard UOM.",
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Standard måleenhed for variant &#39;{0}&#39; skal være samme som i skabelon &#39;{1}&#39;,
Default settings for buying transactions.,Standardindstillinger for købstransaktioner.,
Default settings for selling transactions.,Standardindstillinger for salgstransaktioner.,
Default tax templates for sales and purchase are created.,Standard skat skabeloner til salg og køb oprettes.,
Defaults,Standardværdier,
Defense,Forsvar,
Define Project type.,Definer projekttype.,
Define budget for a financial year.,Definer budget for et regnskabsår.,
Define various loan types,Definer forskellige låneformer,
Del,Slet,
Delay in payment (Days),Forsinket betaling (dage),
Delete all the Transactions for this Company,Slette alle transaktioner for denne Company,
Deletion is not permitted for country {0},Sletning er ikke tilladt for land {0},
Delivered,Leveret,
Delivered Amount,Leveres Beløb,
Delivered Qty,Leveres Antal,
Delivered: {0},Leveret: {0},
Delivery,Levering,
Delivery Date,Leveringsdato,
Delivery Note,Følgeseddel,
Delivery Note {0} is not submitted,Følgeseddel {0} er ikke godkendt,
Delivery Note {0} must not be submitted,Følgeseddel {0} må ikke godkendes,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,"Følgesedler {0} skal annulleres, før den salgsordre annulleres",
Delivery Notes {0} updated,Leveringsnotater {0} opdateret,
Delivery Status,Levering status,
Delivery Trip,Leveringsrejse,
Delivery warehouse required for stock item {0},Levering lager kræves for lagervare {0},
Department,Afdeling,
Department Stores,Varehuse,
Depreciation,Afskrivninger,
Depreciation Amount,Afskrivningsbeløb,
Depreciation Amount during the period,Afskrivningsbeløb i perioden,
Depreciation Date,Afskrivningsdato,
Depreciation Eliminated due to disposal of assets,Bortfaldne afskrivninger grundet afhændelse af aktiver,
Depreciation Entry,Afskrivninger indtastning,
Depreciation Method,Afskrivningsmetode,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Afskrivningsrække {0}: Afskrivning Startdato er indtastet som tidligere dato,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Afskrivningsrække {0}: Forventet værdi efter brugstid skal være større end eller lig med {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Afskrivnings række {0}: Næste afskrivningsdato kan ikke være før tilgængelig dato,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Afskrivningsrække {0}: Næste afskrivningsdato kan ikke være før købsdato,
Designer,Designer,
Detailed Reason,Detaljeret grund,
Details,Detaljer,
Details of Outward Supplies and inward supplies liable to reverse charge,Detaljer om udgående forsyninger og indgående forsyninger med tilbageførsel,
Details of the operations carried out.,Oplysninger om de gennemførte transaktioner.,
Diagnosis,Diagnose,
Did not find any item called {0},"Fandt ikke nogen post, kaldet {0}",
Diff Qty,Diff Antal,
Difference Account,Differencekonto,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Differencebeløbet skal være af kontotypen Aktiv / Fordring, da denne lagerafstemning er en åbningsbalance",
Difference Amount,Differencebeløb,
Difference Amount must be zero,Differencebeløb skal være nul,
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.,"Forskellige UOM for elementer vil føre til forkert (Total) Vægt værdi. Sørg for, at Nettovægt for hvert punkt er i den samme UOM.",
Direct Expenses,Direkte udgifter,
Direct Income,Direkte indkomst,
Disable,Deaktiver,
Disabled template must not be default template,Deaktiveret skabelon må ikke være standardskabelon,
Disburse Loan,Udbetalingslån,
Disbursed,udbetalt,
Disc,Disc,
Discharge,udledning,
Discount,Rabat,
Discount Percentage can be applied either against a Price List or for all Price List.,Rabat Procent kan anvendes enten mod en prisliste eller for alle prisliste.,
Discount must be less than 100,Rabat skal være mindre end 100,
Diseases & Fertilizers,Sygdomme og gødninger,
Dispatch,Dispatch,
Dispatch Notification,Dispatch Notification,
Dispatch State,Afsendelsesstat,
Distance,Afstand,
Distribution,Distribution,
Distributor,Distributør,
Dividends Paid,Betalt udbytte,
Do you really want to restore this scrapped asset?,Vil du virkelig gendanne dette kasserede anlægsaktiv?,
Do you really want to scrap this asset?,Vil du virkelig kassere dette anlægsaktiv?,
Do you want to notify all the customers by email?,Vil du anmelde alle kunderne via e-mail?,
Doc Date,Dok Dato,
Doc Name,Doc Navn,
Doc Type,Doc Type,
Docs Search,Doksøgning,
Document Name,Dokumentnavn,
Document Type,Dokumenttype,
Domain,Domæne,
Domains,Domæner,
Done,Udført,
Donor,Donor,
Donor Type information.,Donor Type oplysninger.,
Donor information.,Donor information.,
Download JSON,Download JSON,
Draft,Udkast,
Drop Ship,Drop Ship,
Drug,Medicin,
Due / Reference Date cannot be after {0},Due / reference Dato kan ikke være efter {0},
Due Date cannot be before Posting / Supplier Invoice Date,Forfaldsdato kan ikke være før udstationering / leverandørfakturadato,
Due Date is mandatory,Forfaldsdato er obligatorisk,
Duplicate Entry. Please check Authorization Rule {0},Duplicate indtastning. Forhør Authorization Rule {0},
Duplicate Serial No entered for Item {0},Doppelte serienumre er indtastet for vare {0},
Duplicate customer group found in the cutomer group table,Doppelt kundegruppe forefindes i Kundegruppetabellen,
Duplicate entry,Duplicate entry,
Duplicate item group found in the item group table,Samme varegruppe findes to gange i varegruppetabellen,
Duplicate roll number for student {0},Dupliceringsrulle nummer for studerende {0},
Duplicate row {0} with same {1},Duplikér række {0} med samme {1},
Duplicate {0} found in the table,Duplikat {0} findes i tabellen,
Duration in Days,Varighed i dage,
Duties and Taxes,Skatter og afgifter,
E-Invoicing Information Missing,Oplysninger om e-fakturering mangler,
ERPNext Demo,ERPNext Demo,
ERPNext Settings,ERPNæste indstillinger,
Earliest,tidligste,
Earnest Money,Earnest Money,
Edit,Redigér,
Edit Publishing Details,Rediger udgivelsesoplysninger,
"Edit in full page for more options like assets, serial nos, batches etc.","Rediger på fuld side for flere muligheder som aktiver, serienummer, partier osv.",
Education,Uddannelse,
Either location or employee must be required,Enten placering eller medarbejder skal være påkrævet,
Either target qty or target amount is mandatory,Enten target qty eller målbeløbet er obligatorisk,
Either target qty or target amount is mandatory.,Enten target qty eller målbeløbet er obligatorisk.,
Electrical,Elektrisk,
Electronic Equipments,Elektronisk udstyr,
Electronics,Elektronik,
Eligible ITC,Kvalificeret ITC,
Email Account,E-mailkonto,
Email Address,Email adresse,
"Email Address must be unique, already exists for {0}","E-mailadresse skal være unik, findes allerede for {0}",
Email Digest: ,E-mail nyhedsbrev:,
Email Reminders will be sent to all parties with email contacts,Email påmindelser vil blive sendt til alle parter med e-mail kontakter,
Email Sent,E-mail sendt,
Email Template,E-mail-skabelon,
Email not found in default contact,Email ikke fundet i standardkontakt,
Email sent to {0},E-mail sendt til {0},
Employee,medarbejder,
Employee Advances,Medarbejderudviklingen,
Employee ID,Medarbejder-ID,
Employee Lifecycle,Ansattes livscyklus,
Employee Name,Medarbejdernavn,
Employee Promotion cannot be submitted before Promotion Date ,Medarbejderfremme kan ikke indsendes før Kampagnedato,
Employee Transfer cannot be submitted before Transfer Date ,Medarbejderoverførsel kan ikke indsendes før overførselsdato,
Employee cannot report to himself.,Medarbejder kan ikke referere til sig selv.,
Employee {0} has already applied for {1} between {2} and {3} : ,Medarbejder {0} har allerede ansøgt om {1} mellem {2} og {3}:,
Employee {0} of grade {1} have no default leave policy,Medarbejder {0} i lønklasse {1} har ingen standardlovspolitik,
Enable,Aktiver,
Enable / disable currencies.,Aktivér / deaktivér valuta.,
Enabled,Aktiv,
"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Aktivering »anvendelse til indkøbskurv"", som indkøbskurv er aktiveret, og der skal være mindst én momsregel til Indkøbskurven",
End Date,Slutdato,
End Date can not be less than Start Date,Slutdato kan ikke være mindre end startdato,
End Date cannot be before Start Date.,Slutdato kan ikke være før startdato.,
End Year,Slutår,
End Year cannot be before Start Year,Slutår kan ikke være før startår,
End on,Slut på,
Ends On date cannot be before Next Contact Date.,Slutter På dato kan ikke være før næste kontaktdato.,
Energy,Energi,
Engineer,Ingeniør,
Enough Parts to Build,Nok Dele til Build,
Enroll,Indskrive,
Enrolling student,tilmelding elev,
Enrolling students,Tilmelding til studerende,
Enter depreciation details,Indtast afskrivningsoplysninger,
Enter the Bank Guarantee Number before submittting.,Indtast bankgarantienummeret før indsendelse.,
Enter the name of the Beneficiary before submittting.,Indtast modtagerens navn før indsendelse.,
Enter the name of the bank or lending institution before submittting.,Indtast navnet på banken eller låneinstitutionen før indsendelse.,
Enter value betweeen {0} and {1},Indtast værdi mellem {0} og {1},
Entertainment & Leisure,Entertainment &amp; Leisure,
Entertainment Expenses,Repræsentationsudgifter,
Equity,Egenkapital,
Error Log,Fejllog,
Error evaluating the criteria formula,Fejl ved evaluering af kriterieformlen,
Error in formula or condition: {0},Fejl i formel eller betingelse: {0},
Error: Not a valid id?,Fejl: Ikke et gyldigt id?,
Estimated Cost,Anslåede omkostninger,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Selv hvis der er flere Priser Regler med højeste prioritet, derefter følgende interne prioriteringer anvendt:",
Event,Begivenhed,
Exchange Gain/Loss,Exchange Gevinst / Tab,
Exchange Rate Revaluation master.,Valutakursrevalueringsmester.,
Exchange Rate must be same as {0} {1} ({2}),Vekselkurs skal være det samme som {0} {1} ({2}),
Excise Invoice,Skattestyrelsen Faktura,
Execution,Udførelse,
Executive Search,Executive Search,
Expand All,Se alt,
Expected Delivery Date,Forventet Leveringsdato,
Expected Delivery Date should be after Sales Order Date,Forventet leveringsdato skal være efter salgsordredato,
Expected End Date,Forventet Slutdato,
Expected Hrs,Forventet tid,
Expected Start Date,Forventet startdato,
Expense,Udlæg,
Expense / Difference account ({0}) must be a 'Profit or Loss' account,Udgifts- differencekonto ({0}) skal være en resultatskonto,
Expense Account,Udgiftskonto,
Expense Claim,Udlæg,
Expense Claims,Udlæg,
Expense account is mandatory for item {0},Udgiftskonto er obligatorisk for element {0},
Expenses,Udgifter,
Expenses Included In Asset Valuation,Udgifter inkluderet i Asset Valuation,
Expenses Included In Valuation,Udgifter inkluderet i værdiansættelse,
Expired Batches,Udløbet Batcher,
Expires On,Udløber på,
Expiring On,Udløbsdato,
Expiry (In Days),Udløb (i dage),
Explore,Udforske,
Export E-Invoices,Eksporter e-fakturaer,
Extra Large,Extra Large,
Extra Small,Extra Small,
Fail,Svigte,
Failed,Mislykkedes,
Failed to create website,Kunne ikke oprette websted,
Failed to install presets,Kan ikke installere forudindstillinger,
Failed to login,Kunne ikke logge ind,
Failed to setup company,Kunne ikke opsætte firmaet,
Failed to setup defaults,Kunne ikke konfigurere standardindstillinger,
Failed to setup post company fixtures,Kunne ikke opsætte postfirmaet inventar,
Fax,Telefax,
Fee,Betaling,
Fee Created,Gebyr oprettet,
Fee Creation Failed,Fee Creation mislykkedes,
Fee Creation Pending,Gebyr oprettelse afventer,
Fee Records Created - {0},Fee Records Oprettet - {0},
Feedback,Feedback,
Fees,Gebyrer,
Female,Kvinde,
Fetch Data,Hent data,
Fetch Subscription Updates,Hent abonnementsopdateringer,
Fetch exploded BOM (including sub-assemblies),Hent eksploderede BOM (herunder underenheder),
Fetching records......,Henter poster ......,
Field Name,Feltnavn,
Fieldname,Feltnavn,
Fields,Felter,
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Filterfelter Række nr. {0}: Feltnavn <b>{1}</b> skal være af typen &quot;Link&quot; eller &quot;Tabel MultiSelect&quot;,
Filter Total Zero Qty,Filter Total Nul Antal,
Finance Book,Finans Bog,
Financial / accounting year.,Finansiel / regnskabsår.,
Financial Services,Financial Services,
Financial Statements,Finansrapporter,
Financial Year,Finansielt år,
Finish,Slutte,
Finished Good,Færdig godt,
Finished Good Item Code,Færdig god varekode,
Finished Goods,Færdigvarer,
Finished Item {0} must be entered for Manufacture type entry,Færdig element {0} skal indtastes for Fremstilling typen post,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,Færdig produktmængde <b>{0}</b> og For mængde <b>{1}</b> kan ikke være anderledes,
First Name,Fornavn,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","Skattesystem er obligatorisk, skal du indstille skatteordningen i virksomheden {0}",
Fiscal Year,Regnskabsår,
Fiscal Year End Date should be one year after Fiscal Year Start Date,Regnskabsårets slutdato skal være et år efter regnskabsårets startdato,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Regnskabsår Start Dato og Skatteårsafslutning Dato allerede sat i regnskabsåret {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,Startdato for regnskabsåret skal være et år tidligere end slutdatoen for regnskabsåret,
Fiscal Year {0} does not exist,Regnskabsår {0} findes ikke,
Fiscal Year {0} is required,Regnskabsår {0} er påkrævet,
Fixed Asset,Anlægsaktiv,
Fixed Asset Item must be a non-stock item.,Anlægsaktiv-varen skal være en ikke-lagervare.,
Fixed Assets,Anlægsaktiver,
Following Material Requests have been raised automatically based on Item's re-order level,Følgende materialeanmodninger er blevet dannet automatisk baseret på varens genbestillelsesniveau,
Following accounts might be selected in GST Settings:,Følgende konti kan vælges i GST-indstillinger:,
Following course schedules were created,Følgende kursusplaner blev oprettet,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,Følgende element {0} er ikke markeret som {1} element. Du kan aktivere dem som {1} element fra dets Item master,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Følgende elementer {0} er ikke markeret som {1} element. Du kan aktivere dem som {1} element fra dets Item master,
"Food, Beverage & Tobacco","Mad, drikke og tobak",
For,For,
"For 'Product Bundle' 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 'Product Bundle' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","For produktpakke-varer, lagre, serienumre og partier vil blive betragtet fra pakkelistetabellen. Hvis lager og parti er ens for alle pakkede varer for enhver produktpakkevare, kan disse værdier indtastes for den vigtigste vare, og værdierne vil blive kopieret til pakkelistetabellen.",
For Quantity (Manufactured Qty) is mandatory,For Mængde (Fremstillet Antal) er obligatorisk,
For Supplier,For Leverandøren,
For Warehouse,Til lager,
For Warehouse is required before Submit,Til lager skal angives før godkendelse,
"For an item {0}, quantity must be negative number",For en vare {0} skal mængden være negativt tal,
"For an item {0}, quantity must be positive number",For en vare {0} skal mængden være positivt tal,
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry",For jobkort {0} kan du kun foretage lagerstatus &#39;Materialeoverførsel til fremstilling&#39;,
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","For rækken {0} i {1}. For at inkludere {2} i Item sats, rækker {3} skal også medtages",
For row {0}: Enter Planned Qty,For række {0}: Indtast Planlagt antal,
"For {0}, only credit accounts can be linked against another debit entry",For {0} kan kun kredit konti knyttes mod en anden debet post,
"For {0}, only debit accounts can be linked against another credit entry",For {0} kan kun betalingskort konti knyttes mod en anden kredit post,
Forum Activity,Forumaktivitet,
Free item code is not selected,Gratis varekode er ikke valgt,
Freight and Forwarding Charges,Fragt og Forwarding Afgifter,
Frequency,Frekvens,
Friday,Fredag,
From,Fra,
From Address 1,Fra adresse 1,
From Address 2,Fra adresse 2,
From Currency and To Currency cannot be same,Fra Valuta og Til valuta ikke kan være samme,
From Date and To Date lie in different Fiscal Year,Fra dato og til dato ligger i forskellige regnskabsår,
From Date cannot be greater than To Date,Fra dato ikke kan være større end til dato,
From Date must be before To Date,Fra dato skal være før til dato,
From Date should be within the Fiscal Year. Assuming From Date = {0},Fra dato skal være inden regnskabsåret. Antages Fra dato = {0},
From Datetime,Fra datotid,
From Delivery Note,Fra følgeseddel,
From Fiscal Year,Fra Skatteår,
From GSTIN,Fra GSTIN,
From Party Name,Fra Selskabsnavn,
From Pin Code,Fra Pin Code,
From Place,Fra Sted,
From Range has to be less than To Range,Fra Range skal være mindre end at ligge,
From State,Fra stat,
From Time,Fra Time,
From Time Should Be Less Than To Time,Fra tiden skal være mindre end til tiden,
From Time cannot be greater than To Time.,Fra Tiden kan ikke være større end til anden.,
"From a supplier under composition scheme, Exempt and Nil rated",Fra en leverandør under sammensætningsplan vurderede Exempt og Nil,
From and To dates required,Fra og Til dato kræves,
From value must be less than to value in row {0},Fra værdi skal være mindre end at værdien i række {0},
From {0} | {1} {2},Fra {0} | {1} {2},
Fulfillment,Opfyldelse,
Full,Fuld,
Full Name,Navn,
Fully Depreciated,fuldt afskrevet,
Furnitures and Fixtures,Havemøbler og Kampprogram,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Kan gøres yderligere konti under grupper, men oplysningerne kan gøres mod ikke-grupper",
Further cost centers can be made under Groups but entries can be made against non-Groups,Yderligere omkostninger centre kan foretages under Grupper men indtastninger kan foretages mod ikke-grupper,
Further nodes can be only created under 'Group' type nodes,Yderligere noder kan kun oprettes under &#39;koncernens typen noder,
GSTIN,GSTIN,
GSTR3B-Form,GSTR3B-Form,
Gain/Loss on Asset Disposal,Gevinst/tab vedr. salg af anlægsaktiv,
Gantt Chart,Gantt-diagram,
Gantt chart of all tasks.,Gantt-diagram af alle opgaver.,
Gender,Køn,
General,Generelt,
General Ledger,Finansbogholderi,
Generate Material Requests (MRP) and Work Orders.,Generer materialeanmodninger (MRP) og arbejdsordrer.,
Generate Secret,Generer Secret,
Get Invocies,Få kald,
Get Invoices,Få fakturaer,
Get Invoices based on Filters,Hent fakturaer baseret på filtre,
Get Items from BOM,Hent varer fra stykliste,
Get Items from Healthcare Services,Få artikler fra sundhedsydelser,
Get Items from Prescriptions,Få artikler fra recepter,
Get Items from Product Bundle,Hent varer fra produktpakke,
Get Suppliers,Få leverandører,
Get Suppliers By,Få leverandører af,
Get Updates,Modtag nyhedsbrev,
Get customers from,Få kunder fra,
Get from Patient Encounter,Hent fra patientens konsultationer,
Getting Started,Kom godt i gang,
GitHub Sync ID,GitHub Sync ID,
Global settings for all manufacturing processes.,Globale indstillinger for alle produktionsprocesser.,
Go to the Desktop and start using ERPNext,Gå til skrivebordet og begynd at bruge ERPNext,
GoCardless SEPA Mandate,GoCardless SEPA Mandat,
GoCardless payment gateway settings,GoCardless betalings gateway indstillinger,
Goal and Procedure,Mål og procedure,
Goals cannot be empty,Mål kan ikke være tom,
Goods In Transit,Varer i transit,
Goods Transferred,Varer overført,
Goods and Services Tax (GST India),Varer og tjenesteydelser Skat (GST Indien),
Goods are already received against the outward entry {0},Varer er allerede modtaget mod den udgående post {0},
Government,Regeringen,
Grand Total,Beløb i alt,
Grant,Give,
Grant Application,Grant ansøgning,
Grant Leaves,Grant Leaves,
Grant information.,Giv oplysninger.,
Grocery,Købmand,
Gross Profit,Gross Profit,
Gross Profit %,Gross Profit%,
Gross Profit / Loss,Gross Profit / Loss,
Gross Purchase Amount,Bruttokøbesum,
Gross Purchase Amount is mandatory,Bruttokøbesummen er obligatorisk,
Group by Account,Sortér efter konto,
Group by Party,Gruppér efter Selskab,
Group by Voucher,Sortér efter Bilagstype,
Group by Voucher (Consolidated),Gruppe af voucher (konsolideret),
Group node warehouse is not allowed to select for transactions,Gruppe node lager er ikke tilladt at vælge for transaktioner,
Group to Non-Group,Gruppe til ikke-Group,
Group your students in batches,Opdel dine elever i grupper,
Groups,grupper,
Guardian1 Email ID,Guardian1 Email ID,
Guardian1 Mobile No,Formynder 1 mobiltelefonnr.,
Guardian1 Name,Guardian1 Navn,
Guardian2 Email ID,Guardian2 Email ID,
Guardian2 Mobile No,Formynder 2 mobiltelefonnr.,
Guardian2 Name,Guardian2 Navn,
HR Manager,HR-chef,
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Yearly,Halvårlig,
Half-Yearly,Halvårlig,
Hardware,Hardware,
Head of Marketing and Sales,Salg- og marketingschef,
Health Care,Sundhed,
Healthcare,Healthcare,
Healthcare (beta),Sundhedspleje (beta),
Healthcare Practitioner,Sundhedsmedarbejder,
Healthcare Practitioner not available on {0},Sundhedsmedarbejder er ikke tilgængelig den {0},
Healthcare Practitioner {0} not available on {1},Healthcare Practitioner {0} ikke tilgængelig på {1},
Healthcare Service Unit,Sundhedsvæsen Service Unit,
Healthcare Service Unit Tree,Healthcare Service Unit Tree,
Healthcare Service Unit Type,Servicetyper,
Healthcare Services,Sundhedsydelser,
Healthcare Settings,Sundhedsindstillinger,
Help Results for,Hjælp Resultater til,
High,Høj,
High Sensitivity,Høj følsomhed,
Hold,Hold,
Hold Invoice,Hold faktura,
Holiday,Holiday,
Holiday List,Helligdagskalender,
Hotel Rooms of type {0} are unavailable on {1},Hotelværelser af typen {0} er ikke tilgængelige på {1},
Hotels,Hoteller,
Hourly,Hver time,
Hours,timer,
How Pricing Rule is applied?,Hvordan anvendes en prisfastsættelsesregel?,
Hub Category,Nav kategori,
Hub Sync ID,Hub Sync ID,
Human Resource,Menneskelige ressourcer,
Human Resources,Medarbejdere,
IFSC Code,IFSC-kode,
IGST Amount,IGST Beløb,
IP Address,IP-adresse,
ITC Available (whether in full op part),ITC tilgængelig (uanset om det er i fuld op-del),
ITC Reversed,ITC vendt,
Identifying Decision Makers,Identificerende beslutningstagere,
"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Hvis Auto Opt In er markeret, bliver kunderne automatisk knyttet til det berørte loyalitetsprogram (ved at gemme)",
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Hvis flere Priser Regler fortsat gældende, er brugerne bedt om at indstille prioritet manuelt for at løse konflikter.",
"If selected Pricing Rule is made for 'Rate', it will overwrite Price List. Pricing Rule rate is the final rate, 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.","Hvis den valgte prissætningsregel er lavet til &#39;Rate&#39;, overskrives den Prisliste. Prissætning Regelpris er den endelige sats, så ingen yderligere rabat bør anvendes. Derfor vil i transaktioner som salgsordre, indkøbsordre osv. Blive hentet i feltet &#39;Rate&#39; i stedet for &#39;Prislistefrekvens&#39;.",
"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.","Hvis to eller flere Priser Regler er fundet på grundlag af de ovennævnte betingelser, er Priority anvendt. Prioritet er et tal mellem 0 og 20, mens Standardværdien er nul (blank). Højere antal betyder, at det vil have forrang, hvis der er flere Priser Regler med samme betingelser.",
"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Hvis ubegrænset udløb for loyalitetspoint, skal du holde udløbsperioden tom eller 0.",
"If you have any questions, please get back to us.","Hvis du har spørgsmål, er du velkommen til at kontakte os.",
Ignore Existing Ordered Qty,Ignorer eksisterende bestilt antal,
Image,Billede,
Image View,Billede View,
Import Data,Importer data,
Import Day Book Data,Importer dagbogsdata,
Import Log,Import-log,
Import Master Data,Importer stamdata,
Import in Bulk,Indlæsning,
Import of goods,Import af varer,
Import of services,Import af tjenester,
Importing Items and UOMs,Import af varer og UOM&#39;er,
Importing Parties and Addresses,Import af parter og adresser,
In Maintenance,Ved vedligeholdelse,
In Production,I produktion,
In Qty,I antal,
In Stock Qty,På lager Antal,
In Stock: ,På lager:,
In Value,I Value,
"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","I tilfælde af multi-tier program, vil kunder automatisk blive tildelt den pågældende tier som per deres brugt",
Inactive,inaktive,
Incentives,Incitamenter,
Include Default Book Entries,Inkluder standardbogsindlæg,
Include Exploded Items,Inkluder eksploderede elementer,
Include POS Transactions,Inkluder POS-transaktioner,
Include UOM,Inkluder UOM,
Included in Gross Profit,Inkluderet i bruttoresultat,
Income,Indtægter,
Income Account,Indtægtskonto,
Income Tax,Indkomstskat,
Incoming,Indgående,
Incoming Rate,Indgående sats,
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Forkert antal finansposter fundet. Du har muligvis valgt en forkert konto.,
Increment cannot be 0,Tilvækst kan ikke være 0,
Increment for Attribute {0} cannot be 0,Tilvækst til Attribut {0} kan ikke være 0,
Indirect Expenses,Indirekte udgifter,
Indirect Income,Indirekte Indkomst,
Individual,Privatperson,
Ineligible ITC,Ikke-støtteberettiget ITC,
Initiated,Indledt,
Inpatient Record,Inpatient Record,
Insert,Indsæt,
Installation Note,Installation Bemærk,
Installation Note {0} has already been submitted,Installation Bemærk {0} er allerede blevet indsendt,
Installation date cannot be before delivery date for Item {0},Installation dato kan ikke være før leveringsdato for Item {0},
Installing presets,Installation af forudindstillinger,
Institute Abbreviation,Institut forkortelse,
Institute Name,Institut Navn,
Instructor,Instruktør,
Insufficient Stock,Utilstrækkelig Stock,
Insurance Start date should be less than Insurance End date,Forsikring Startdato skal være mindre end Forsikring Slutdato,
Integrated Tax,Integreret Skat,
Inter-State Supplies,Mellemstatlige forsyninger,
Interests,Interesser,
Internet Publishing,Internet Publishing,
Intra-State Supplies,Mellemstatlige forsyninger,
Introduction,Introduktion,
Invalid Attribute,Ugyldig attribut,
Invalid Blanket Order for the selected Customer and Item,Ugyldig ordreordre for den valgte kunde og vare,
Invalid Company for Inter Company Transaction.,Ugyldigt firma til transaktion mellem virksomheder.,
Invalid GSTIN! A GSTIN must have 15 characters.,Ugyldig GSTIN! En GSTIN skal have 15 tegn.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,Ugyldig GSTIN! De første 2 cifre i GSTIN skal matche med statens nummer {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,Ugyldig GSTIN! Det indtastede input stemmer ikke overens med GSTIN-formatet.,
Invalid Posting Time,Ugyldig postetid,
Invalid attribute {0} {1},Ugyldig attribut {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Ugyldig mængde angivet for element {0}. Mængde bør være større end 0.,
Invalid reference {0} {1},Ugyldig henvisning {0} {1},
Invalid {0},Ugyldig {0},
Invalid {0} for Inter Company Transaction.,Ugyldig {0} til transaktion mellem virksomheder.,
Invalid {0}: {1},Ugyldig {0}: {1},
Inventory,Inventory,
Investment Banking,Investment Banking,
Investments,Investeringer,
Invoice,Faktura,
Invoice Created,Faktura er oprettet,
Invoice Discounting,Faktura diskontering,
Invoice Patient Registration,Faktura Patientregistrering,
Invoice Posting Date,Faktura Bogføringsdato,
Invoice Type,Fakturatype,
Invoice already created for all billing hours,Faktura er allerede oprettet for alle faktureringstimer,
Invoice can't be made for zero billing hour,Fakturaen kan ikke laves for nul faktureringstid,
Invoice {0} no longer exists,Faktura {0} eksisterer ikke længere,
Invoiced,faktureret,
Invoiced Amount,Faktureret beløb,
Invoices,Fakturaer,
Invoices for Costumers.,Fakturaer for kunder.,
Inward supplies from ISD,Indgående forsyninger fra ISD,
Inward supplies liable to reverse charge (other than 1 & 2 above),"Indgående leverancer, der kan tilbageføres (undtagen 1 og 2 ovenfor)",
Is Active,Er Aktiv,
Is Default,Er standard,
Is Existing Asset,Er eksisterende aktiv,
Is Frozen,Er Frozen,
Is Group,Er en kontogruppe,
Issue,Issue,
Issue Material,Issue Materiale,
Issued,Udstedt,
Issues,Spørgsmål,
It is needed to fetch Item Details.,Det er nødvendigt at hente Elementdetaljer.,
Item,Vare,
Item 1,Vare 1,
Item 2,Vare 2,
Item 3,Vare 3,
Item 4,Vare 4,
Item 5,Vare 5,
Item Cart,Varekurv,
Item Code,Varenr.,
Item Code cannot be changed for Serial No.,Varenr. kan ikke ændres for Serienummer,
Item Code required at Row No {0},Varenr. kræves på rækkenr. {0},
Item Description,Varebeskrivelse,
Item Group,Varegruppe,
Item Group Tree,Varegruppetræ,
Item Group not mentioned in item master for item {0},Varegruppe ikke er nævnt i vare-masteren for vare {0},
Item Name,Varenavn,
Item Price added for {0} in Price List {1},Varepris tilføjet for {0} i prisliste {1},
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","Varepris vises flere gange baseret på prisliste, leverandør / kunde, valuta, vare, uom, antal og datoer.",
Item Price updated for {0} in Price List {1},Vareprisen opdateret for {0} i prisliste {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,Vare række {0}: {1} {2} findes ikke i ovenstående &#39;{1}&#39; tabel,
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,"Varemoms række {0} skal have en konto med \ntypen moms, indtægt, omkostning eller kan debiteres",
Item Template,Vareskabelon,
Item Variant Settings,Variantindstillinger,
Item Variant {0} already exists with same attributes,Item Variant {0} findes allerede med samme attributter,
Item Variants,Varevarianter,
Item Variants updated,Produktvarianter opdateret,
Item has variants.,Vare har varianter.,
Item must be added using 'Get Items from Purchase Receipts' button,"Varer skal tilføjes ved hjælp af knappen: ""Hent varer fra købskvitteringer""",
Item valuation rate is recalculated considering landed cost voucher amount,Item værdiansættelse sats genberegnes overvejer landede omkostninger kupon beløb,
Item variant {0} exists with same attributes,Vare variant {0} eksisterer med samme attributter,
Item {0} does not exist,Element {0} eksisterer ikke,
Item {0} does not exist in the system or has expired,Vare {0} findes ikke i systemet eller er udløbet,
Item {0} has already been returned,Element {0} er allerede blevet returneret,
Item {0} has been disabled,Vare {0} er blevet deaktiveret,
Item {0} has reached its end of life on {1},Vare {0} har nået slutningen af sin levetid på {1},
Item {0} ignored since it is not a stock item,"Vare {0} ignoreres, da det ikke er en lagervare",
"Item {0} is a template, please select one of its variants",Vare {0} er en skabelon. Vælg venligst en af dens varianter,
Item {0} is cancelled,Vare {0} er aflyst,
Item {0} is disabled,Vare {0} er deaktiveret,
Item {0} is not a serialized Item,Vare {0} er ikke en serienummervare,
Item {0} is not a stock Item,Vare {0} er ikke en lagervare,
Item {0} is not active or end of life has been reached,Vare {0} er ikke aktiv eller slutningen af livet er nået,
Item {0} is not setup for Serial Nos. Check Item master,Vare {0} er ikke sat op til serienumre. Tjek vare-masteren,
Item {0} is not setup for Serial Nos. Column must be blank,Vare {0} er ikke opsat til serienumre. Kolonnen skal være tom,
Item {0} must be a Fixed Asset Item,Vare {0} skal være en anlægsaktiv-vare,
Item {0} must be a Sub-contracted Item,Vare {0} skal være en underentreprise Vare,
Item {0} must be a non-stock item,Vare {0} skal være en ikke-lagervare,
Item {0} must be a stock Item,Vare {0} skal være en lagervare,
Item {0} not found,Vare {0} ikke fundet,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},Vare {0} ikke fundet i &quot;Raw Materials Leveres &#39;bord i Indkøbsordre {1},
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Vare {0}: Bestilte qty {1} kan ikke være mindre end minimum ordreantal {2} (defineret i punkt).,
Item: {0} does not exist in the system,Item: {0} findes ikke i systemet,
Items,Varer,
Items Filter,Elementer Filter,
Items and Pricing,Varer og priser,
Items for Raw Material Request,Varer til anmodning om råvarer,
Job Card,Jobkort,
Job card {0} created,Jobkort {0} oprettet,
Join,Tilslutte,
Journal Entries {0} are un-linked,Journaloptegnelser {0} er un-forbundet,
Journal Entry,Kassekladde,
Journal Entry {0} does not have account {1} or already matched against other voucher,Kassekladde {0} har ikke konto {1} eller allerede matchet mod andre kupon,
Kanban Board,Kanbantavle,
Key Reports,Nøglerapporter,
LMS Activity,LMS-aktivitet,
Lab Test,Laboratorieprøve,
Lab Test Report,Laboratorieprøveliste,
Lab Test Sample,Laboratorieprøver,
Lab Test Template,Laboratorieprøveskabelon,
Lab Test UOM,Laboratorieprøve enhedskode,
Lab Tests and Vital Signs,Lab Tests og Vital Signs,
Lab result datetime cannot be before testing datetime,Lab resultatet datetime kan ikke være før testen datetime,
Lab testing datetime cannot be before collection datetime,Lab testning datetime kan ikke være før datetime samling,
Label,Label,
Laboratory,Laboratorium,
Language Name,Sprognavn,
Large,Stor,
Last Communication,Sidste Kommunikation,
Last Communication Date,Sidste kommunikationsdato,
Last Name,Efternavn,
Last Order Amount,Sidste ordrebeløb,
Last Order Date,Sidste ordredato,
Last Purchase Price,Sidste købspris,
Last Purchase Rate,Sidste købsværdi,
Latest,Seneste,
Latest price updated in all BOMs,Seneste pris opdateret i alle BOMs,
Lead,Emne,
Lead Count,Lead Count,
Lead Owner,Emneejer,
Lead Owner cannot be same as the Lead,Emneejer kan ikke være den samme som emnet,
Lead Time Days,Lead Time dage,
Lead to Quotation,Emne til tilbud,
"Leads help you get business, add all your contacts and more as your leads","Leads hjælpe dig virksomhed, tilføje alle dine kontakter, og flere som din fører",
Learn,Hjælp,
Leave Management,Fraværsadministration,
Leave and Attendance,Fravær og fremmøde,
Leave application {0} already exists against the student {1},Forlad ansøgning {0} eksisterer allerede mod den studerende {1},
Leaves has been granted sucessfully,Blade er blevet givet succesfuldt,
Leaves must be allocated in multiples of 0.5,"Fravær skal angives i multipla af 0,5",
Ledger,Ledger,
Legal,Juridisk,
Legal Expenses,Advokatudgifter,
Letter Head,Brevhoved,
Letter Heads for print templates.,Brevhoveder til udskriftsskabeloner.,
Level,Niveau,
Liability,Passiver,
License,Licens,
Limit,Begrænse,
Limit Crossed,Grænse overskredet,
Link to Material Request,Link til materialeanmodning,
List of all share transactions,Liste over alle aktietransaktioner,
List of available Shareholders with folio numbers,Liste over tilgængelige aktionærer med folio numre,
Loading Payment System,Indlæser betalingssystem,
Loan,Lån,
Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,Lånets startdato og låneperiode er obligatorisk for at gemme fakturadiskontering,
Loans (Liabilities),Lån (passiver),
Loans and Advances (Assets),Udlån (aktiver),
Local,Lokal,
Log,Log,
Logs for maintaining sms delivery status,Logs for opretholdelse sms leveringsstatus,
Lost,Tabt,
Lost Reasons,Tabte grunde,
Low,Lav,
Low Sensitivity,Lav følsomhed,
Lower Income,Lavere indkomst,
Loyalty Amount,Loyalitetsbeløb,
Loyalty Point Entry,Loyalitetspunkt indtastning,
Loyalty Points,Loyalitetspoint,
"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Loyalitetspoint beregnes ud fra det brugte udbytte (via salgsfakturaen), baseret på den nævnte indsamlingsfaktor.",
Loyalty Points: {0},Loyalitetspoint: {0},
Loyalty Program,Loyalitetsprogram,
Main,Hoved,
Maintenance,Vedligeholdelse,
Maintenance Log,Vedligeholdelseslog,
Maintenance Manager,Vedligeholdelseschef,
Maintenance Schedule,Vedligeholdelsesplan,
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"Vedligeholdelsesplan er ikke dannet for alle varer. Klik på ""Generér plan'",
Maintenance Schedule {0} exists against {1},Vedligeholdelsesplan {0} eksisterer imod {1},
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,"Vedligeholdelsesplan {0} skal annulleres, før denne salgsordre kan annulleres",
Maintenance Status has to be Cancelled or Completed to Submit,Vedligeholdelsesstatus skal annulleres eller afsluttes for at indsende,
Maintenance User,Vedligeholdelsesbruger,
Maintenance Visit,Vedligeholdelsesbesøg,
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,"Vedligeholdelsesbesøg {0} skal annulleres, før den denne salgordre annulleres",
Maintenance start date can not be before delivery date for Serial No {0},Vedligeholdelsesstartdato kan ikke være før leveringsdato for serienummer {0},
Make,Opret,
Make Payment,Foretag indbetaling,
Make project from a template.,Opret et projekt fra en skabelon.,
Making Stock Entries,Making Stock Angivelser,
Male,Mand,
Manage Customer Group Tree.,Administrer kundegruppetræ.,
Manage Sales Partners.,Administrér forhandlere.,
Manage Sales Person Tree.,Administrer Sales Person Tree.,
Manage Territory Tree.,Administrer Område-træ.,
Manage your orders,Administrer dine ordrer,
Management,Ledelse,
Manager,Leder,
Managing Projects,Håndtering af sager,
Managing Subcontracting,Håndtering af underleverancer,
Mandatory,Obligatorisk,
Mandatory field - Academic Year,Obligatorisk felt - skoleår,
Mandatory field - Get Students From,Obligatorisk felt - Få studerende fra,
Mandatory field - Program,Obligatorisk felt - Program,
Manufacture,Fremstilling,
Manufacturer,Producent,
Manufacturer Part Number,Producentens varenummer,
Manufacturing,Produktion,
Manufacturing Quantity is mandatory,Produktionmængde er obligatorisk,
Mapping,Kortlægning,
Mapping Type,Kortlægningstype,
Mark Absent,Markér ikke-tilstede,
Mark Half Day,Mark Halvdags,
Mark Present,Marker tilstede,
Marketing,Marketing,
Marketing Expenses,Markedsføringsomkostninger,
Marketplace,Marketplace,
Marketplace Error,Markedspladsfejl,
Masters,Masters,
Match Payments with Invoices,Match betalinger med fakturaer,
Match non-linked Invoices and Payments.,Match ikke-forbundne fakturaer og betalinger.,
Material,Materiale,
Material Consumption,Materialeforbrug,
Material Consumption is not set in Manufacturing Settings.,Materialforbrug er ikke angivet i fremstillingsindstillinger.,
Material Receipt,Materiale Kvittering,
Material Request,Materialeanmodning,
Material Request Date,Materialeanmodningsdato,
Material Request No,Materiale Request Nej,
"Material Request not created, as quantity for Raw Materials already available.","Materialeanmodning ikke oprettet, da der allerede findes mængde råvarer.",
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Materialeanmodning af maksimum {0} kan oprettes for vare {1} mod salgsordre {2},
Material Request to Purchase Order,Materialeanmodning til indkøbsordre,
Material Request {0} is cancelled or stopped,Materialeanmodning {0} er annulleret eller stoppet,
Material Request {0} submitted.,Materiellanmodning {0} indsendt.,
Material Transfer,Materiale Transfer,
Material Transferred,Materiale overført,
Material to Supplier,Materiale til leverandøren,
Max discount allowed for item: {0} is {1}%,Maksimal rabat tilladt for vare: {0} er {1}%,
Max: {0},Max: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Maksimale prøver - {0} kan beholdes for Batch {1} og Item {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Maksimale prøver - {0} er allerede bevaret for Batch {1} og Item {2} i Batch {3}.,
Maximum discount for Item {0} is {1}%,Maksimal rabat for vare {0} er {1}%,
Medical Code,Medicinske koder,
Medical Code Standard,Medicinske standardkoder,
Medical Department,Medicinsk afdeling,
Medical Record,Medicinsk journal,
Medium,Medium,
Meeting,Møde,
Member Activity,Medlem Aktivitet,
Member ID,Medlems ID,
Member Name,Medlems navn,
Member information.,Medlemsoplysninger.,
Membership,Medlemskab,
Membership Details,Medlemskabsdetaljer,
Membership ID,Medlemskab ID,
Membership Type,Medlemskabstype,
Memebership Details,Memebership Detaljer,
Memebership Type Details,Memebership Type Detaljer,
Merge,Fusionere,
Merge Account,Fusionskonto,
Merge with Existing Account,Flet sammen med eksisterende konto,
"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","Sammenlægning er kun muligt, hvis følgende egenskaber er ens i begge poster: Er en kontogruppe, Rodtype og firma",
Message Examples,Besked Eksempler,
Message Sent,Besked sendt,
Method,Metode,
Middle Income,Midterste indkomst,
Middle Name,Mellemnavn,
Middle Name (Optional),Mellemnavn (Valgfrit),
Min Amt can not be greater than Max Amt,Min Amt kan ikke være større end Max Amt,
Min Qty can not be greater than Max Qty,Min Antal kan ikke være større end Max Antal,
Minimum Lead Age (Days),Mindste levealder (dage),
Miscellaneous Expenses,Diverse udgifter,
Missing Currency Exchange Rates for {0},Manglende Valutakurser for {0},
Missing email template for dispatch. Please set one in Delivery Settings.,Der mangler en e-mailskabelon til forsendelsen. Vælg venligst en e-mailskabelon under Leveringsindstillinger.,
"Missing value for Password, API Key or Shopify URL","Manglende værdi for Password, API Key eller Shopify URL",
Mode of Payment,Betalingsmåde,
Mode of Payments,Betalingsmåde,
Mode of Transport,Transportform,
Mode of Transportation,Transportform,
Model,Model,
Moderate Sensitivity,Moderat følsomhed,
Monday,Mandag,
Monthly,Månedlig,
Monthly Distribution,Månedlig distribution,
More,Mere,
More Information,Mere information,
More...,Mere...,
Motion Picture & Video,Motion Picture &amp; Video,
Move,flytte,
Move Item,Flyt vare,
Multi Currency,Multi Valuta,
Multiple Item prices.,Flere varepriser.,
Multiple Loyalty Program found for the Customer. Please select manually.,Flere loyalitetsprogram fundet for kunden. Vælg venligst manuelt.,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Flere Pris Regler eksisterer med samme kriterier, skal du løse konflikter ved at tildele prioritet. Pris Regler: {0}",
Multiple Variants,Flere varianter,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Flere regnskabsår findes for den dato {0}. Indstil selskab i regnskabsåret,
Music,musik,
My Account,Min konto,
Name error: {0},Navn fejl: {0},
Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Navn på ny konto. Bemærk: Du må ikke oprette konti for kunder og leverandører,
Name or Email is mandatory,Navn eller e-mail er obligatorisk,
Nature Of Supplies,Forsyningens art,
Navigating,Navigering,
Needs Analysis,Behovsanalyse,
Negative Quantity is not allowed,Negative Mængde er ikke tilladt,
Negative Valuation Rate is not allowed,Negative Værdiansættelses Rate er ikke tilladt,
Negotiation/Review,Forhandling / anmeldelse,
Net Asset value as on,Indre værdi som på,
Net Cash from Financing,Netto kontant fra finansiering,
Net Cash from Investing,Netto kontant fra Investering,
Net Cash from Operations,Netto kontant fra drift,
Net Change in Accounts Payable,Netto Ændring i Kreditor,
Net Change in Accounts Receivable,Nettoændring i Debitor,
Net Change in Cash,Nettoændring i kontanter,
Net Change in Equity,Nettoændring i Equity,
Net Change in Fixed Asset,Nettoændring i anlægsaktiver,
Net Change in Inventory,Netto Ændring i Inventory,
Net ITC Available(A) - (B),Net ITC tilgængelig (A) - (B),
Net Profit,Nettovinst,
Net Total,Netto i alt,
New Account Name,Ny Kontonavn,
New Address,Ny adresse,
New BOM,Ny stykliste,
New Batch ID (Optional),Nyt partinr. (valgfri),
New Batch Qty,Ny partimængde,
New Company,Nyt firma,
New Cost Center Name,Ny Cost center navn,
New Customer Revenue,Omsætning nye kunder,
New Customers,Nye kunder,
New Department,Ny afdeling,
New Employee,Ny medarbejder,
New Location,Ny placering,
New Quality Procedure,Ny kvalitetsprocedure,
New Sales Invoice,Nye salgsfaktura,
New Sales Person Name,Navn på ny salgsmedarbejder,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Nyt serienummer kan ikke have lager angivet. Lageret skal sættes ved lagerindtastning eller købskvittering,
New Warehouse Name,Nyt lagernavn,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Ny kreditmaksimum er mindre end nuværende udestående beløb for kunden. Credit grænse skal være mindst {0},
New task,Ny opgave,
New {0} pricing rules are created,Nye {0} prisregler oprettes,
Newsletters,Nyhedsbreve,
Newspaper Publishers,Dagbladsudgivere,
Next,Næste,
Next Contact By cannot be same as the Lead Email Address,Næste kontakt af kan ikke være den samme som emnets e-mailadresse,
Next Contact Date cannot be in the past,Næste kontakt d. kan ikke være i fortiden,
Next Steps,Næste skridt,
No Action,Ingen handling,
No Customers yet!,Ingen kunder endnu!,
No Data,Ingen data,
No Delivery Note selected for Customer {},Ingen leveringskort valgt til kunden {},
No Item with Barcode {0},Ingen vare med stregkode {0},
No Item with Serial No {0},Ingen vare med serienummer {0},
No Items available for transfer,Ingen emner til overførsel,
No Items selected for transfer,Ingen emner valgt til overførsel,
No Items to pack,Ingen varer at pakke,
No Items with Bill of Materials to Manufacture,Ingen stykliste-varer at fremstille,
No Items with Bill of Materials.,Ingen varer med materialeregning.,
No Permission,Ingen tilladelse,
No Remarks,Ingen bemærkninger,
No Result to submit,Intet resultat at indsende,
No Student Groups created.,Ingen elevgrupper oprettet.,
No Students in,Ingen studerende i,
No Tax Withholding data found for the current Fiscal Year.,Ingen skat indeholdende data fundet for indeværende regnskabsår.,
No Work Orders created,Ingen arbejdsordrer er oprettet,
No accounting entries for the following warehouses,Ingen bogføring for følgende lagre,
No contacts with email IDs found.,Ingen kontakter med e-mail-id&#39;er fundet.,
No data for this period,Ingen data for denne periode,
No description given,Ingen beskrivelse,
No employees for the mentioned criteria,Ingen ansatte for de nævnte kriterier,
No gain or loss in the exchange rate,Ingen gevinst eller tab i valutakursen,
No items listed,Ingen emner opført,
No items to be received are overdue,"Ingen emner, der skal modtages, er for sent",
No material request created,Ingen væsentlig forespørgsel oprettet,
No of Interactions,Ingen af interaktioner,
No of Shares,Antal aktier,
No pending Material Requests found to link for the given items.,Ingen afventer materialeanmodninger fundet for at linke for de givne varer.,
No products found,Ingen produkter fundet,
No products found.,Ingen produkter fundet.,
No record found,Ingen post fundet,
No records found in the Invoice table,Ingen poster i faktureringstabellen,
No records found in the Payment table,Ingen resultater i Payment tabellen,
No tasks,Ingen opgaver,
No time sheets,Ingen tidsregistreringer,
No values,Ingen værdier,
No {0} found for Inter Company Transactions.,Nej {0} fundet for Inter Company Transactions.,
Non GST Inward Supplies,Ikke-leverancer inden for GST,
Non Profit,Non Profit,
Non Profit (beta),Ikke-profit (beta),
Non-GST outward supplies,Ikke-GST udgående forsyninger,
Non-Group to Group,Ikke-gruppe til gruppe,
None,Ingen,
None of the items have any change in quantity or value.,Ingen af varerne har nogen ændring i mængde eller værdi.,
Nos,Nummerserie,
Not Available,Ikke tilgængelig,
Not Marked,Ikke markeret,
Not Paid and Not Delivered,Ikke betalte og ikke leveret,
Not Permitted,Ikke Tilladt,
Not Started,Ikke igangsat,
Not active,Ikke aktiv,
Not allow to set alternative item for the item {0},Tillad ikke at indstille alternativt element til varen {0},
Not allowed to update stock transactions older than {0},Ikke tilladt at opdatere lagertransaktioner ældre end {0},
Not authorized to edit frozen Account {0},Ikke autoriseret til at redigere låst konto {0},
Not authroized since {0} exceeds limits,Ikke authroized da {0} overskrider grænser,
Not permitted for {0},Ikke tilladt for {0},
"Not permitted, configure Lab Test Template as required","Ikke tilladt, konfigurere Lab Test Template efter behov",
Not permitted. Please disable the Service Unit Type,Ikke muligt. Deaktiver venligst serviceenhedstypen,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Bemærk: forfalden / reference Dato overstiger tilladte kredit dage efter {0} dag (e),
Note: Item {0} entered multiple times,Bemærk: Varer {0} indtastet flere gange,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Bemærk: Betaling indtastning vil ikke blive oprettet siden &#39;Kontant eller bank konto&#39; er ikke angivet,
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Bemærk: Systemet vil ikke kontrollere over-levering og over-booking for Item {0} som mængde eller beløb er 0,
Note: There is not enough leave balance for Leave Type {0},Bemærk: Der er ikke nok dage til rådighed til fraværstype {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Bemærk: Dette omkostningssted er en gruppe. Kan ikke postere mod grupper.,
Note: {0},Bemærk: {0},
Notes,Noter,
Nothing is included in gross,Intet er inkluderet i brutto,
Nothing more to show.,Intet mere at vise.,
Notify Customers via Email,Underret kunder via e-mail,
Number,Nummer,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Antal Afskrivninger Reserverede kan ikke være større end alt Antal Afskrivninger,
Number of Interaction,Antal interaktioner,
Number of Order,Antal Order,
"Number of new Account, it will be included in the account name as a prefix","Antal nye konti, det vil blive inkluderet i kontonavnet som et præfiks",
"Number of new Cost Center, it will be included in the cost center name as a prefix","Antal nye Omkostningscenter, det vil blive inkluderet i priscenternavnet som et præfiks",
Number of root accounts cannot be less than 4,Antallet af rodkonti kan ikke være mindre end 4,
Odometer,kilometertæller,
Office Equipments,Kontorudstyr,
Office Maintenance Expenses,Kontorholdudgifter,
Office Rent,Kontorleje,
On Hold,I venteposition,
On Net Total,On Net Total,
One customer can be part of only single Loyalty Program.,En kunde kan kun indgå i et enkelt loyalitetsprogram.,
Online Auctions,Online auktioner,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",Kun den studerendes ansøger med statusen &quot;Godkendt&quot; vælges i nedenstående tabel.,
Only users with {0} role can register on Marketplace,Kun brugere med {0} rolle kan registrere sig på Marketplace,
Open BOM {0},Åben stykliste {0},
Open Item {0},Åbent Item {0},
Open Notifications,Åbne Meddelelser,
Open Orders,Åbn ordrer,
Open a new ticket,Åbn en ny billet,
Opening,Åbning,
Opening (Cr),Åbning (Cr),
Opening (Dr),Åbning (Dr),
Opening Accounting Balance,Åbning Regnskab Balance,
Opening Accumulated Depreciation,Åbning Akkumulerede afskrivninger,
Opening Accumulated Depreciation must be less than equal to {0},Åbning Akkumuleret afskrivning skal være mindre end lig med {0},
Opening Balance,Åbnings balance,
Opening Balance Equity,Åbning Balance Egenkapital,
Opening Date and Closing Date should be within same Fiscal Year,Åbning Dato og Closing Datoen skal ligge inden samme regnskabsår,
Opening Date should be before Closing Date,"Åbning Dato bør være, før Closing Dato",
Opening Entry Journal,Åbning Entry Journal,
Opening Invoice Creation Tool,Åbning af fakturaoprettelsesværktøj,
Opening Invoice Item,Åbning af fakturaelement,
Opening Invoices,Åbning af fakturaer,
Opening Invoices Summary,Åbning af fakturaoversigt,
Opening Qty,Åbning Antal,
Opening Stock,Åbning Stock,
Opening Stock Balance,Åbning Stock Balance,
Opening Value,åbning Value,
Opening {0} Invoice created,Åbning {0} Faktura oprettet,
Operation,Operation,
Operation Time must be greater than 0 for Operation {0},Driftstid skal være større end 0 til drift {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Betjening {0} længere end alle tilgængelige arbejdstimer i arbejdsstation {1}, nedbryde driften i flere operationer",
Operations,operationer,
Operations cannot be left blank,Operationer kan ikke være tomt,
Opp Count,Opp Count,
Opp/Lead %,Opp / Lead%,
Opportunities,Salgsmuligheder,
Opportunities by lead source,Muligheder ved hjælp af blykilde,
Opportunity,Salgsmulighed,
Opportunity Amount,Mulighedsbeløb,
"Optional. Sets company's default currency, if not specified.","Valgfri. Sætter virksomhedens standard valuta, hvis ikke angivet.",
Optional. This setting will be used to filter in various transactions.,Valgfri. Denne indstilling vil blive brugt til at filtrere i forskellige transaktioner.,
Options,Optioner,
Order Count,Ordreantal,
Order Entry,Ordreindgang,
Order Value,Ordreværdi,
Order rescheduled for sync,Ordre omlagt til synkronisering,
Order/Quot %,Ordre / Quot%,
Ordered,bestilt,
Ordered Qty,Bestilt Antal,
"Ordered Qty: Quantity ordered for purchase, but not received.","Bestilt antal: Mængde bestilt til køb, men ikke modtaget.",
Orders,ordrer,
Orders released for production.,Ordrer frigivet til produktion.,
Organization,Organisation,
Organization Name,Organisationens navn,
Other,Andre,
Other Reports,Andre rapporter,
"Other outward supplies(Nil rated,Exempted)","Andre udgående leverancer (Nul bedømt, undtaget)",
Others,Andre,
Out Qty,Out Antal,
Out Value,Out Value,
Out of Order,Virker ikke,
Outgoing,Udgående,
Outstanding,Udestående,
Outstanding Amount,Udestående beløb,
Outstanding Amt,Enestående Amt,
Outstanding Cheques and Deposits to clear,Anvendes ikke,
Outstanding for {0} cannot be less than zero ({1}),Enestående for {0} kan ikke være mindre end nul ({1}),
Outward taxable supplies(zero rated),Udgående afgiftspligtige forsyninger (nul nominel),
Overdue,Forfalden,
Overlap in scoring between {0} and {1},Overlappe i scoring mellem {0} og {1},
Overlapping conditions found between:,Overlappende betingelser fundet mellem:,
Owner,Ejer,
PAN,PANDE,
POS,Kassesystem,
POS Profile,Kassesystemprofil,
POS Profile is required to use Point-of-Sale,POS-profil er påkrævet for at bruge Point-of-Sale,
POS Profile required to make POS Entry,POS profil kræves for at gøre POS indtastning,
POS Settings,POS-indstillinger,
Packed quantity must equal quantity for Item {0} in row {1},Pakket mængde skal være lig mængde for vare {0} i række {1},
Packing Slip,Pakkeseddel,
Packing Slip(s) cancelled,Pakkeseddel (ler) annulleret,
Paid,betalt,
Paid Amount,Betalt beløb,
Paid Amount cannot be greater than total negative outstanding amount {0},Betalt beløb kan ikke være større end det samlede negative udestående beløb {0},
Paid amount + Write Off Amount can not be greater than Grand Total,Betalt beløb + Skriv Off Beløb kan ikke være større end beløb i alt,
Paid and Not Delivered,Betalt og ikke leveret,
Parameter,Parameter,
Parent Item {0} must not be a Stock Item,Overordnet bare {0} må ikke være en lagervare,
Parents Teacher Meeting Attendance,Forældres lærermøde,
Partially Depreciated,Delvist afskrevet,
Partially Received,Delvist modtaget,
Party,Selskab,
Party Name,Selskabsnavn,
Party Type,Selskabstype,
Party Type and Party is mandatory for {0} account,Selskabstype og Selskab er obligatorisk for {0} konto,
Party Type is mandatory,Selskabstypen er obligatorisk,
Party is mandatory,Party er obligatorisk,
Password,Adgangskode,
Past Due Date,Forfaldsdato,
Patient,Patient,
Patient Appointment,Patientaftale,
Patient Encounter,Konsultation,
Patient not found,Patient ikke fundet,
Pay Remaining,Betal resten,
Pay {0} {1},Betal {0} {1},
Payable,betales,
Payable Account,Betales konto,
Payment,Betaling,
Payment Cancelled. Please check your GoCardless Account for more details,Betaling annulleret. Tjek venligst din GoCardless-konto for flere detaljer,
Payment Confirmation,Betalingsbekræftelse,
Payment Document,Betaling dokument,
Payment Due Date,Sidste betalingsdato,
Payment Entries {0} are un-linked,Betalings Entries {0} er un-linked,
Payment Entry,Betaling indtastning,
Payment Entry already exists,Betaling indtastning findes allerede,
Payment Entry has been modified after you pulled it. Please pull it again.,"Betaling indtastning er blevet ændret, efter at du trak det. Venligst trække det igen.",
Payment Entry is already created,Betalingspost er allerede dannet,
Payment Failed. Please check your GoCardless Account for more details,Betaling mislykkedes. Tjek venligst din GoCardless-konto for flere detaljer,
Payment Gateway,Betaling Gateway,
"Payment Gateway Account not created, please create one manually.","Betaling Gateway konto ikke oprettet, skal du oprette en manuelt.",
Payment Gateway Name,Betalings gateway navn,
Payment Mode,Betaling tilstand,
Payment Receipt Note,Betalingskvittering,
Payment Request,Betalingsanmodning,
Payment Request for {0},Betalingsanmodning om {0},
Payment Tems,Betalingstemmer,
Payment Term,Betalingsbetingelser,
Payment Terms,Betalingsbetingelser,
Payment Terms Template,Betalingsbetingelser skabelon,
Payment Terms based on conditions,Betalingsbetingelser baseret på betingelser,
Payment Type,Betalingstype,
"Payment Type must be one of Receive, Pay and Internal Transfer","Betaling Type skal være en af Modtag, Pay og Intern Transfer",
Payment against {0} {1} cannot be greater than Outstanding Amount {2},Betaling mod {0} {1} kan ikke være større end Udestående beløb {2},
Payment request {0} created,Betalingsanmodning {0} oprettet,
Payments,Betalinger,
Payroll Payable,Udbetalt løn,
Payslip,Lønseddel,
Pending Activities,Afventende aktiviteter,
Pending Amount,Afventende beløb,
Pending Leaves,Afventer blade,
Pending Qty,Afventende antal,
Pending Quantity,Venter mængde,
Pending Review,Afventende anmeldelse,
Pending activities for today,Afventende aktiviteter for i dag,
Pension Funds,Pensionskasser,
Percentage Allocation should be equal to 100%,Procentdel fordeling bør være lig med 100%,
Perception Analysis,Perception Analysis,
Period,Periode,
Period Closing Entry,Periode Lukning indtastning,
Period Closing Voucher,Periode Lukning Voucher,
Periodicity,hyppighed,
Personal Details,Personlige oplysninger,
Pharmaceutical,Farmaceutiske,
Pharmaceuticals,Lægemidler,
Physician,Læge,
Pincode,Pinkode,
Place Of Supply (State/UT),Leveringssted (Stat / UT),
Place Order,Angiv bestilling,
Plan Name,Plan navn,
Plan for maintenance visits.,Plan for vedligeholdelse besøg.,
Planned Qty,Planlagt mængde,
"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Planlagt antal: Mængde, hvor arbejdsordren er hævet, men afventer at blive fremstillet.",
Planning,Planlægning,
Plants and Machineries,Planter og Machineries,
Please Set Supplier Group in Buying Settings.,Angiv leverandørgruppe i købsindstillinger.,
Please add a Temporary Opening account in Chart of Accounts,Tilføj venligst en midlertidig åbningskonto i kontoplan,
Please add the account to root level Company - ,Tilføj kontoen til rodniveau Firma -,
Please check Multi Currency option to allow accounts with other currency,Kontroller venligst Multi Valuta indstilling for at tillade konti med anden valuta,
Please click on 'Generate Schedule',Klik på &quot;Generer Schedule &#39;,
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Klik på ""Generer plan"" for at hente serienummeret tilføjet til vare {0}",
Please click on 'Generate Schedule' to get schedule,Klik på &quot;Generer Schedule &#39;for at få tidsplan,
Please create purchase receipt or purchase invoice for the item {0},Opret venligst købskvittering eller købsfaktura for varen {0},
Please define grade for Threshold 0%,Angiv venligst lønklasse for Tærskel 0%,
Please enable Applicable on Booking Actual Expenses,Aktivér venligst ved bestilling af faktiske udgifter,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Aktivér venligst ved købsordre og gældende ved bestilling af faktiske udgifter,
Please enable pop-ups,Slå pop-ups til,
Please enter 'Is Subcontracted' as Yes or No,Indtast &quot;underentreprise&quot; som Ja eller Nej,
Please enter API Consumer Key,Indtast venligst API forbrugernøgle,
Please enter API Consumer Secret,Indtast venligst API Consumer Secret,
Please enter Account for Change Amount,Indtast konto for returbeløb,
Please enter Approving Role or Approving User,Indtast Godkendelse Rolle eller godkender Bruger,
Please enter Cost Center,Indtast omkostningssted,
Please enter Delivery Date,Indtast venligst Leveringsdato,
Please enter Employee Id of this sales person,Indtast venligst Medarbejder Id dette salg person,
Please enter Expense Account,Indtast venligst udgiftskonto,
Please enter Item Code to get Batch Number,Indtast venligst varenr. for at få partinr.,
Please enter Item Code to get batch no,Indtast venligst varenr. for at få partinr.,
Please enter Item first,Indtast vare først,
Please enter Maintaince Details first,Indtast venligst Maintaince Detaljer først,
Please enter Planned Qty for Item {0} at row {1},Indtast venligst Planned Antal for Item {0} på rækken {1},
Please enter Preferred Contact Email,Indtast foretrukket kontakt e-mail,
Please enter Production Item first,Indtast venligst Produktion Vare først,
Please enter Purchase Receipt first,Indtast venligst købskvittering først,
Please enter Receipt Document,Indtast Kvittering Dokument,
Please enter Reference date,Indtast referencedato,
Please enter Reqd by Date,Indtast venligst Reqd by Date,
Please enter Woocommerce Server URL,Indtast venligst Woocommerce Server URL,
Please enter Write Off Account,Indtast venligst Skriv Off konto,
Please enter atleast 1 invoice in the table,Indtast venligst mindst en faktura i tabellen,
Please enter company first,Indtast venligst firma først,
Please enter company name first,Indtast venligst firmanavn først,
Please enter default currency in Company Master,Indtast standardvaluta i Firma-masteren,
Please enter message before sending,"Indtast venligst en meddelelse, før du sender",
Please enter parent cost center,Indtast overordnet omkostningssted,
Please enter quantity for Item {0},Indtast mængde for vare {0},
Please enter relieving date.,Indtast lindre dato.,
Please enter valid Financial Year Start and End Dates,Indtast venligst det gyldige regnskabsårs start- og slutdatoer,
Please enter valid email address,Indtast venligst en gyldig e-mailadresse,
Please enter {0} first,Indtast venligst {0} først,
Please fill in all the details to generate Assessment Result.,Udfyld alle detaljer for at generere vurderingsresultatet.,
Please identify/create Account (Group) for type - {0},Identificer / opret konto (gruppe) for type - {0},
Please identify/create Account (Ledger) for type - {0},Identificer / opret konto (Ledger) for type - {0},
Please login as another user to register on Marketplace,Log venligst ind som en anden bruger for at registrere dig på Marketplace,
Please make sure you really want to delete all the transactions for this company. Your master data will remain as it is. This action cannot be undone.,"Kontroller, at du virkelig ønsker at slette alle transaktioner for dette selskab. Dine stamdata vil forblive som den er. Denne handling kan ikke fortrydes.",
Please mention Basic and HRA component in Company,Nævn venligst Basic og HRA komponent i Company,
Please mention Round Off Account in Company,Henvis Round Off-konto i selskabet,
Please mention Round Off Cost Center in Company,Henvis afrunde omkostningssted i selskabet,
Please mention no of visits required,"Henvis ikke af besøg, der kræves",
Please mention the Lead Name in Lead {0},Angiv Lead Name in Lead {0},
Please pull items from Delivery Note,Træk varene fra følgeseddel,
Please register the SIREN number in the company information file,Indtast venligst SIREN-nummeret i virksomhedens informationsfil,
Please remove this Invoice {0} from C-Form {1},Fjern denne faktura {0} fra C-Form {1},
Please save the patient first,Gem venligst patienten først,
Please save the report again to rebuild or update,Gem rapporten igen for at genopbygge eller opdatere,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Vælg tildelte beløb, Faktura Type og Fakturanummer i mindst én række",
Please select Apply Discount On,Vælg Anvend Rabat på,
Please select BOM against item {0},Vælg venligst BOM mod punkt {0},
Please select BOM for Item in Row {0},Vælg BOM for Item i række {0},
Please select BOM in BOM field for Item {0},Vælg BOM i BOM vilkår for Item {0},
Please select Category first,Vælg kategori først,
Please select Charge Type first,Vælg Charge Type først,
Please select Company,Vælg firma,
Please select Company and Posting Date to getting entries,Vælg venligst Company og Posting Date for at få poster,
Please select Company first,Vælg venligst firma først,
Please select Completion Date for Completed Asset Maintenance Log,Vælg venligst Afslutningsdato for Udfyldt Asset Maintenance Log,
Please select Completion Date for Completed Repair,Vælg venligst Afslutningsdato for Afsluttet Reparation,
Please select Course,Vælg kursus,
Please select Drug,Vælg venligst medicin,
Please select Existing Company for creating Chart of Accounts,Vælg eksisterende firma for at danne kontoplanen,
Please select Healthcare Service,Vælg venligst Healthcare Service,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Vælg venligst en vare, hvor ""Er lagervare"" er ""nej"" og ""Er salgsvare"" er ""Ja"", og der er ingen anden produktpakke",
Please select Maintenance Status as Completed or remove Completion Date,Vælg venligst Vedligeholdelsesstatus som Afsluttet eller fjern Afslutningsdato,
Please select Party Type first,Vælg Selskabstype først,
Please select Patient,Vælg venligst en patient,
Please select Patient to get Lab Tests,Vælg patient for at få laboratorieprøver,
Please select Posting Date before selecting Party,Vælg Bogføringsdato før du vælger Selskab,
Please select Posting Date first,Vælg bogføringsdato først,
Please select Price List,Vælg venligst prisliste,
Please select Program,Vælg venligst Program,
Please select Qty against item {0},Vælg venligst antal imod vare {0},
Please select Sample Retention Warehouse in Stock Settings first,Vælg venligst Sample Retention Warehouse i lagerindstillinger først,
Please select Start Date and End Date for Item {0},Vælg Start og slutdato for Item {0},
Please select Student Admission which is mandatory for the paid student applicant,"Vælg venligst Student Admission, som er obligatorisk for den betalte studentansøger",
Please select a BOM,Vælg venligst en BOM,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,"Vælg venligst et parti for vare {0}. Kunne ikke finde et eneste parti, der opfylder dette krav",
Please select a Company,Vælg firma,
Please select a batch,Vælg venligst et parti,
Please select a field to edit from numpad,Vælg venligst et felt for at redigere fra numpad,
Please select a table,Vælg venligst en tabel,
Please select a valid Date,Vælg venligst en gyldig dato,
Please select a value for {0} quotation_to {1},Vælg en værdi for {0} quotation_to {1},
Please select a warehouse,Vælg venligst et lager,
Please select at least one domain.,Vælg mindst et domæne.,
Please select correct account,Vælg korrekt konto,
Please select date,Vælg venligst dato,
Please select item code,Vælg Varenr.,
Please select month and year,Vælg måned og år,
Please select prefix first,Vælg venligst præfiks først,
Please select the Company,Vælg venligst firmaet,
Please select the Multiple Tier Program type for more than one collection rules.,Vælg venligst flere tierprogramtype for mere end én samlingsregler.,
Please select the assessment group other than 'All Assessment Groups',Vælg venligst vurderingsgruppen bortset fra &#39;Alle vurderingsgrupper&#39;,
Please select the document type first,Vælg dokumenttypen først,
Please select weekly off day,Vælg ugentlig fridag,
Please select {0},Vælg {0},
Please select {0} first,Vælg {0} først,
Please set 'Apply Additional Discount On',Venligst sæt &#39;Anvend Ekstra Rabat på&#39;,
Please set 'Asset Depreciation Cost Center' in Company {0},Venligst sæt &#39;Asset Afskrivninger Omkostninger Centers i Company {0},
Please set 'Gain/Loss Account on Asset Disposal' in Company {0},"Sæt venligst ""Gevinst/tabskonto vedr. salg af anlægsaktiv"" i firma {0}",
Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Indstil konto i lager {0} eller standard lagerkonto i firma {1},
Please set B2C Limit in GST Settings.,Indstil venligst B2C-begrænsning i GST-indstillinger.,
Please set Company,Angiv venligst firma,
Please set Company filter blank if Group By is 'Company',"Indstil Firmafilter blankt, hvis Group By er &#39;Company&#39;",
Please set Default Payroll Payable Account in Company {0},Venligst sæt Standard Payroll Betales konto i Company {0},
Please set Depreciation related Accounts in Asset Category {0} or Company {1},Venligst sæt Afskrivninger relaterede konti i Asset kategori {0} eller Company {1},
Please set Email Address,Angiv e-mail adresse,
Please set GST Accounts in GST Settings,Indstil venligst GST-konti i GST-indstillinger,
Please set Hotel Room Rate on {},Indstil hotelpris på {},
Please set Number of Depreciations Booked,Venligst sæt Antal Afskrivninger Reserveret,
Please set Unrealized Exchange Gain/Loss Account in Company {0},Indstil Urealiseret Exchange Gain / Loss-konto i firma {0},
Please set User ID field in an Employee record to set Employee Role,Indstil Bruger-id feltet i en Medarbejder rekord at indstille Medarbejder Rolle,
Please set a default Holiday List for Employee {0} or Company {1},Angiv en standard helligdagskalender for medarbejder {0} eller firma {1},
Please set account in Warehouse {0},Venligst indstil konto i lager {0},
Please set an active menu for Restaurant {0},Indstil en aktiv menu for Restaurant {0},
Please set associated account in Tax Withholding Category {0} against Company {1},Indstil tilknyttet konto i Skatholdigheds kategori {0} mod firma {1},
Please set at least one row in the Taxes and Charges Table,Angiv mindst en række i skatter og afgifter tabellen,
Please set default Cash or Bank account in Mode of Payment {0},Indstil standard Kontant eller bank konto i mode for betaling {0},
Please set default account in Salary Component {0},Angiv standardkonto i lønart {0},
Please set default customer in Restaurant Settings,Indstil standardkunde i Restaurantindstillinger,
Please set default {0} in Company {1},Indstil standard {0} i Company {1},
Please set filter based on Item or Warehouse,Indstil filter baseret på Item eller Warehouse,
Please set leave policy for employee {0} in Employee / Grade record,Venligst indstil afgangspolitik for medarbejder {0} i medarbejder- / bedømmelsesrekord,
Please set recurring after saving,Venligst sæt tilbagevendende efter besparelse,
Please set the Customer Address,Angiv kundeadresse,
Please set the Default Cost Center in {0} company.,Angiv standardkostningscenteret i {0} firmaet.,
Please set the Email ID for the Student to send the Payment Request,Angiv e-mail-id til den studerende for at sende betalingsanmodningen,
Please set the Item Code first,Indstil varenummeret først,
Please set the Payment Schedule,Angiv betalingsplanen,
Please set the series to be used.,"Indstil den serie, der skal bruges.",
Please set {0} for address {1},Angiv {0} for adresse {1},
Please setup Students under Student Groups,Opsæt venligst studerende under elevgrupper,
Please specify Company,Angiv venligst firma,
Please specify Company to proceed,Angiv venligst firma for at fortsætte,
Please specify a valid 'From Case No.',Angiv en gyldig &quot;Fra sag nr &#39;,
Please specify a valid Row ID for row {0} in table {1},Angiv en gyldig Row ID for rækken {0} i tabel {1},
Please specify at least one attribute in the Attributes table,Angiv mindst én attribut i Attributter tabellen,
Please specify currency in Company,Angiv venligst valuta i firmaet,
Please specify either Quantity or Valuation Rate or both,Angiv venligst enten mængde eller værdiansættelsebeløb eller begge,
Please specify from/to range,Angiv fra / til spænder,
Please supply the specified items at the best possible rates,Angiv venligst de angivne poster på de bedste mulige priser,
Please wait 3 days before resending the reminder.,Vent venligst 3 dage før genudsender påmindelsen.,
Point of Sale,Kassesystem,
Point-of-Sale,Kassesystem,
Point-of-Sale Profile,Kassesystemprofil,
Portal,Portal,
Portal Settings,Portal Indstillinger,
Possible Supplier,Mulig leverandør,
Postal Expenses,Portoudgifter,
Posting Date,Bogføringsdato,
Posting Date cannot be future date,Bogføringsdato kan ikke være en fremtidig dato,
Posting Time,Bogføringsdato og -tid,
Posting date and posting time is mandatory,Bogføringsdato og -tid er obligatorisk,
Posting timestamp must be after {0},Udstationering tidsstempel skal være efter {0},
Potential opportunities for selling.,Potentielle muligheder for at sælge.,
Practitioner Schedule,Behandlingskalender,
Pre Sales,Pre-Sale,
Preference,Preference,
Prescribed Procedures,Foreskrevne procedurer,
Prescription,Recept,
Prescription Dosage,Receptpligtig dosering,
Prescription Duration,Receptpligtig varighed,
Prescriptions,Recepter,
Prev,forrige,
Preview,Eksempel,
Previous Financial Year is not closed,Foregående regnskabsår er ikke lukket,
Price,Pris,
Price List,Prisliste,
Price List Currency not selected,Prisliste Valuta ikke valgt,
Price List Rate,Prisliste Rate,
Price List master.,Master-Prisliste.,
Price List must be applicable for Buying or Selling,Prisliste skal være gældende for at købe eller sælge,
Price List {0} is disabled or does not exist,Prisliste {0} er deaktiveret eller findes ikke,
Price or product discount slabs are required,Pris eller produktrabatplader kræves,
Pricing,Priser,
Pricing Rule,Prisfastsættelsesregel,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Prisfastsættelsesregel skal først baseres på feltet 'Gælder for', som kan indeholde vare, varegruppe eller varemærke.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.",Prisfastsættelseregler laves for at overskrive prislisten og for at fastlægge rabatprocenter baseret på forskellige kriterier.,
Pricing Rule {0} is updated,Prisregel {0} opdateres,
Pricing Rules are further filtered based on quantity.,Prisfastsættelsesregler er yderligere filtreret på mængden.,
Primary Address Details,Primær adresseoplysninger,
Primary Contact Details,Primær kontaktoplysninger,
Print Format,Udskriftsformat,
Print IRS 1099 Forms,Udskriv IRS 1099-formularer,
Print Report Card,Udskriv rapportkort,
Print Settings,Udskriftsindstillinger,
Print and Stationery,Print og papirvarer,
Print settings updated in respective print format,Udskriftsindstillinger opdateret i respektive print format,
Print taxes with zero amount,Udskriv skatter med nul beløb,
Printing and Branding,Udskriving,
Private Equity,Private Equity,
Procedure,Procedure,
Process Day Book Data,Behandl data fra dagbogen,
Process Master Data,Behandle stamdata,
Processing Chart of Accounts and Parties,Behandler oversigt over konti og parter,
Processing Items and UOMs,Behandler varer og UOM&#39;er,
Processing Party Addresses,Behandler parti-adresser,
Processing Vouchers,Behandler værdikuponer,
Procurement,indkøb,
Produced Qty,Produceret antal,
Product,Produkt,
Product Bundle,Produktpakke,
Product Search,Søg efter vare,
Production,Produktion,
Production Item,Produktion Vare,
Products,Produkter,
Profit and Loss,Resultatopgørelse,
Profit for the year,Årets resultat,
Program,Program,
Program in the Fee Structure and Student Group {0} are different.,Program i gebyrstrukturen og studentegruppen {0} er forskellige.,
Program {0} does not exist.,Program {0} findes ikke.,
Program: ,Program:,
Progress % for a task cannot be more than 100.,Fremskridt-% for en opgave kan ikke være mere end 100.,
Project Collaboration Invitation,Invitation til sagssamarbejde,
Project Id,Sags-id,
Project Manager,Projektleder,
Project Name,Sagsnavn,
Project Start Date,Sag startdato,
Project Status,Sagsstatus,
Project Summary for {0},Projektoversigt for {0},
Project Update.,Projektopdatering.,
Project Value,Sagsværdi,
Project activity / task.,Sagsaktivitet / opgave.,
Project master.,Sags-master.,
Project-wise data is not available for Quotation,Sagsdata er ikke tilgængelige for tilbuddet,
Projected,Forventet,
Projected Qty,Projiceret antal,
Projected Quantity Formula,Projekteret mængdeformel,
Projects,Sager,
Proposal Writing,Forslag Skrivning,
Proposal/Price Quote,Forslag / pris citat,
Prospecting,Forundersøgelse,
Provisional Profit / Loss (Credit),Foreløbig Profit / Loss (Credit),
Publications,Publikationer,
Publish Items on Website,Vis varer på hjemmesiden,
Published,Udgivet,
Publishing,Udgivning,
Purchase,Indkøb,
Purchase Amount,Indkøbsbeløb,
Purchase Date,Købsdato,
Purchase Invoice,Købsfaktura,
Purchase Invoice {0} is already submitted,Købsfaktura {0} er allerede godkendt,
Purchase Manager,Indkøbschef,
Purchase Master Manager,Indkøb Master manager,
Purchase Order,Indkøbsordre,
Purchase Order Amount,Indkøbsordremængde,
Purchase Order Amount(Company Currency),Indkøbsordremængde (virksomhedsvaluta),
Purchase Order Date,Indkøbsordringsdato,
Purchase Order Items not received on time,Indkøbsordre Varer ikke modtaget i tide,
Purchase Order number required for Item {0},Indkøbsordrenr. påkrævet for vare {0},
Purchase Order to Payment,Indkøbsordre til betaling,
Purchase Order {0} is not submitted,Indkøbsordre {0} er ikke godkendt,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Indkøbsordrer er ikke tilladt for {0} på grund af et scorecard stående på {1}.,
Purchase Orders given to Suppliers.,Indkøbsordrer givet til leverandører.,
Purchase Price List,Indkøbsprisliste,
Purchase Receipt,Købskvittering,
Purchase Receipt {0} is not submitted,Købskvittering {0} er ikke godkendt,
Purchase Tax Template,Indgående moms-skabelon,
Purchase User,Indkøbsbruger,
Purchase orders help you plan and follow up on your purchases,Indkøbsordrer hjælpe dig med at planlægge og følge op på dine køb,
Purchasing,Indkøb,
Purpose must be one of {0},Formålet skal være en af {0},
Qty,Antal,
Qty To Manufacture,Antal at producere,
Qty Total,Antal i alt,
Qty for {0},Antal for {0},
Qualification,Kvalifikation,
Quality,Kvalitet,
Quality Action,Kvalitetshandling,
Quality Goal.,Kvalitetsmål.,
Quality Inspection,Kvalitetskontrol,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Kvalitetskontrol: {0} indsendes ikke for varen: {1} i række {2},
Quality Management,Kvalitetssikring,
Quality Meeting,Kvalitetsmøde,
Quality Procedure,Kvalitetsprocedure,
Quality Procedure.,Kvalitetsprocedure.,
Quality Review,Kvalitetsanmeldelse,
Quantity,Mængde,
Quantity for Item {0} must be less than {1},Mængde for vare {0} skal være mindre end {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},"Antal i række {0} ({1}), skal være det samme som den fremstillede mængde {2}",
Quantity must be less than or equal to {0},Antal skal være mindre end eller lig med {0},
Quantity must not be more than {0},Antal må ikke være mere end {0},
Quantity required for Item {0} in row {1},"Mængde, der kræves for Item {0} i række {1}",
Quantity should be greater than 0,Mængde bør være større end 0,
Quantity to Make,Mængde at gøre,
Quantity to Manufacture must be greater than 0.,Mængde til Fremstilling skal være større end 0.,
Quantity to Produce,Mængde at fremstille,
Quantity to Produce can not be less than Zero,"Mængden, der skal produceres, kan ikke være mindre end Nul",
Query Options,Query Options,
Queued for replacing the BOM. It may take a few minutes.,Kø for at erstatte BOM. Det kan tage et par minutter.,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,Kø for opdatering af seneste pris i alle Materialebevis. Det kan tage et par minutter.,
Quick Journal Entry,Hurtig kassekladde,
Quot Count,Citeringsantal,
Quot/Lead %,Tilbud/emne %,
Quotation,Tilbud,
Quotation {0} is cancelled,Tilbud {0} er ikke længere gyldigt,
Quotation {0} not of type {1},Tilbud {0} ikke af typen {1},
Quotations,Tilbud,
"Quotations are proposals, bids you have sent to your customers","Citater er forslag, bud, du har sendt til dine kunder",
Quotations received from Suppliers.,Tilbud modtaget fra Leverandører.,
Quotations: ,Tilbud:,
Quotes to Leads or Customers.,Tilbud til emner eller kunder.,
RFQs are not allowed for {0} due to a scorecard standing of {1},RFQ&#39;er er ikke tilladt for {0} på grund af et scorecard stående på {1},
Range,Periode,
Rate,Sats,
Rate:,Sats:,
Rating,Bedømmelse,
Raw Material,Råmateriale,
Raw Materials,Råmateriale,
Raw Materials cannot be blank.,Råmaterialer kan ikke være tom.,
Re-open,Genåbne,
Read blog,Læs blog,
Read the ERPNext Manual,Læs ERPNext-håndbogen,
Reading Uploaded File,Læsning af uploadet fil,
Real Estate,Real Estate,
Reason For Putting On Hold,Årsag til at sætte på hold,
Reason for Hold,Årsag til hold,
Reason for hold: ,Årsag til hold:,
Receipt,Kvittering,
Receipt document must be submitted,Kvittering skal godkendes,
Receivable,tilgodehavende,
Receivable Account,Tilgodehavende konto,
Received,Modtaget,
Received On,Modtaget On,
Received Quantity,Modtaget mængde,
Received Stock Entries,Modtagne aktieindgange,
Receiver List is empty. Please create Receiver List,Modtager List er tom. Opret Modtager liste,
Recipients,Modtagere,
Reconcile,Forene,
"Record of all communications of type email, phone, chat, visit, etc.","Registrering af al kommunikation af type e-mail, telefon, chat, besøg osv",
Records,Records,
Redirect URL,Omdiriger URL,
Ref,Ref,
Ref Date,Ref Dato,
Reference,Henvisning,
Reference #{0} dated {1},Henvisning # {0} dateret {1},
Reference Date,Henvisning Dato,
Reference Doctype must be one of {0},Henvisning Doctype skal være en af {0},
Reference Document,referencedokument,
Reference Document Type,Referencedokument type,
Reference No & Reference Date is required for {0},Referencenummer &amp; Reference Dato er nødvendig for {0},
Reference No and Reference Date is mandatory for Bank transaction,Referencenummer og reference Dato er obligatorisk for Bank transaktion,
Reference No is mandatory if you entered Reference Date,"Referencenummer er obligatorisk, hvis du har indtastet reference Dato",
Reference No.,Referencenummer.,
Reference Number,Referencenummer,
Reference Owner,henvisning Ejer,
Reference Type,Henvisning Type,
"Reference: {0}, Item Code: {1} and Customer: {2}","Reference: {0}, varekode: {1} og kunde: {2}",
References,Referencer,
Refresh Token,Opdater Token,
Region,Region,
Register,Tilmeld,
Rejected,Afvist,
Related,Relaterede,
Relation with Guardian1,Forholdet til Guardian1,
Relation with Guardian2,Forholdet til Guardian2,
Release Date,Udgivelses dato,
Reload Linked Analysis,Genindlæs tilknyttet analyse,
Remaining,Resterende,
Remaining Balance,Resterende saldo,
Remarks,Bemærkninger,
Reminder to update GSTIN Sent,Påmindelse om at opdatere GSTIN Sendt,
Remove item if charges is not applicable to that item,"Fjern element, hvis afgifter ikke finder anvendelse på denne post",
Removed items with no change in quantity or value.,Fjernede elementer uden nogen ændringer i mængde eller værdi.,
Reopen,Genåben,
Reorder Level,Genbestil Level,
Reorder Qty,Genbestil Antal,
Repeat Customer Revenue,Omsætning gamle kunder,
Repeat Customers,Gamle kunder,
Replace BOM and update latest price in all BOMs,Erstat BOM og opdater seneste pris i alle BOM&#39;er,
Replied,Svarede,
Report,Rapport,
Report Builder,Rapportgenerator,
Report Type,Kontotype,
Report Type is mandatory,Kontotype er obligatorisk,
Reports,Rapporter,
Reqd By Date,Reqd efter dato,
Reqd Qty,Reqd Antal,
Request for Quotation,Anmodning om tilbud,
Request for Quotations,Anmodning om tilbud,
Request for Raw Materials,Anmodning om råvarer,
Request for purchase.,Indkøbsanmodning.,
Request for quotation.,Anmodning om tilbud.,
Requested Qty,Anmodet mængde,
"Requested Qty: Quantity requested for purchase, but not ordered.","Anmodet antal: Antal anmodet om køb, men ikke bestilt.",
Requesting Site,Anmoder om websted,
Requesting payment against {0} {1} for amount {2},Anmodning betaling mod {0} {1} for beløb {2},
Requestor,Anmoders,
Required On,Forfalder den,
Required Qty,Nødvendigt antal,
Required Quantity,Påkrævet mængde,
Reschedule,Omlæg,
Research,Forskning,
Research & Development,Forskning &amp; Udvikling,
Researcher,Forsker,
Resend Payment Email,Gensend Betaling E-mail,
Reserve Warehouse,Reserve Warehouse,
Reserved Qty,Reserveret mængde,
Reserved Qty for Production,Reserveret Antal for Produktion,
Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Reserveret antal til produktion: Råvaremængde til fremstilling af produktionsartikler.,
"Reserved Qty: Quantity ordered for sale, but not delivered.","Reserveret antal: Mængde bestilt til salg, men ikke leveret.",
Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,Reserveret lager er obligatorisk for vare {0} i råvarer leveret,
Reserved for manufacturing,Reserveret til fremstilling,
Reserved for sale,Reserveret til salg,
Reserved for sub contracting,Reserveret til underentreprise,
Resistant,Resistente,
Resolve error and upload again.,Løs fejl og upload igen.,
Rest Of The World,Resten af verden,
Restart Subscription,Genstart abonnement,
Restaurant,Restaurant,
Result Date,Resultatdato,
Result already Submitted,Resultat allerede indsendt,
Resume,Genoptag,
Retail,Retail,
Retail & Wholesale,Detail &amp; Wholesale,
Retail Operations,Detailoperationer,
Retained Earnings,Overført overskud,
Retention Stock Entry,Retention Stock Entry,
Retention Stock Entry already created or Sample Quantity not provided,Retention Stock Entry allerede oprettet eller Sample Mængde ikke angivet,
Return,Retur,
Return / Credit Note,Retur / kreditnota,
Return / Debit Note,Retur / debetnota,
Returns,Retur,
Reverse Journal Entry,Reverse Journal Entry,
Review Invitation Sent,Gennemgå invitation sendt,
Review and Action,Gennemgang og handling,
Rooms Booked,Værelser reserveret,
Root Company,Root Company,
Root Type,Rodtype,
Root Type is mandatory,Rodtypen er obligatorisk,
Root cannot be edited.,Root kan ikke redigeres.,
Root cannot have a parent cost center,Root kan ikke have en forælder cost center,
Round Off,Afrundninger,
Rounded Total,Afrundet i alt,
Route,Rute,
Row # {0}: ,Række # {0}:,
Row # {0}: Batch No must be same as {1} {2},Række # {0}: Partinr. skal være det samme som {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Row # {0}: Kan ikke returnere mere end {1} for Item {2},
Row # {0}: Rate cannot be greater than the rate used in {1} {2},"Row # {0}: Prisen kan ikke være større end den sats, der anvendes i {1} {2}",
Row # {0}: Serial No is mandatory,Række # {0}: serienummer er obligatorisk,
Row # {0}: Serial No {1} does not match with {2} {3},Række # {0}: serienummer {1} matcher ikke med {2} {3},
Row #{0} (Payment Table): Amount must be negative,Row # {0} (Betalingstabel): Beløbet skal være negativt,
Row #{0} (Payment Table): Amount must be positive,Row # {0} (Betalingstabel): Beløbet skal være positivt,
Row #{0}: Account {1} does not belong to company {2},Række nr. {0}: Konto {1} tilhører ikke firma {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Row # {0}: Allokeret beløb kan ikke være større end udestående beløb.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Row # {0}: Asset {1} kan ikke indsendes, er det allerede {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Row # {0}: Kan ikke indstille Rate hvis beløb er større end faktureret beløb for Item {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Anvendes ikke {0} {1} {2},
Row #{0}: Duplicate entry in References {1} {2},Row # {0}: Duplicate entry i Referencer {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Række nr. {0}: Forventet leveringsdato kan ikke være før købsdato,
Row #{0}: Item added,Række nr. {0}: Element tilføjet,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Row # {0}: Kassekladde {1} har ikke konto {2} eller allerede matchet mod en anden kupon,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,"Række # {0}: Ikke tilladt at skifte leverandør, da indkøbsordre allerede findes",
Row #{0}: Please set reorder quantity,Række # {0}: Venligst sæt genbestille mængde,
Row #{0}: Please specify Serial No for Item {1},Række # {0}: Angiv serienummer for vare {1},
Row #{0}: Qty increased by 1,Række nr. {0}: Antal steg med 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Row # {0}: Pris skal være samme som {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Row # {0}: Reference Document Type skal være en af Expense Claim eller Journal Entry,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Row # {0}: referencedokument Type skal være en af indkøbsordre, købsfaktura eller Kassekladde",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Row # {0}: Afvist Antal kan ikke indtastes i Indkøb Return,
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Række # {0}: Afvist Warehouse er obligatorisk mod afvist element {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,Row # {0}: Reqd by Date kan ikke være før Transaktionsdato,
Row #{0}: Set Supplier for item {1},Række # {0}: Indstil Leverandør for vare {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Række nr. {0}: Status skal være {1} for fakturaborting {2},
"Row #{0}: The batch {1} has only {2} qty. Please select another batch which has {3} qty available or split the row into multiple rows, to deliver/issue from multiple batches","Række # {0}: Parti {1} har kun {2} mængde. Vælg venligst et andet parti, der har {3} antal tilgængelige eller opdel rækken i flere rækker for at kunne levere fra flere partier",
Row #{0}: Timings conflicts with row {1},Row # {0}: tider konflikter med rækken {1},
Row #{0}: {1} can not be negative for item {2},Rækken # {0}: {1} kan ikke være negativ for vare {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Rækkenr. {0}: Beløb kan ikke være større end Udestående Beløb overfor Udlæg {1}. Udestående Beløb er {2},
Row {0} : Operation is required against the raw material item {1},Række {0}: Drift er påkrævet mod råvareelementet {1},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Række {0} # Item {1} kan ikke overføres mere end {2} imod indkøbsordre {3},
Row {0}: Activity Type is mandatory.,Række {0}: Aktivitetstypen er obligatorisk.,
Row {0}: Advance against Customer must be credit,Række {0}: Advance mod kunden skal være kredit,
Row {0}: Advance against Supplier must be debit,Række {0}: Advance mod Leverandøren skal debitere,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Række {0}: Allokeret beløb {1} skal være mindre end eller lig med Payment indtastning beløb {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Række {0}: Allokeret mængde {1} skal være mindre end eller lig med at fakturere udestående beløb {2},
Row {0}: An Reorder entry already exists for this warehouse {1},Række {0}: En Genbestil indgang findes allerede for dette lager {1},
Row {0}: Bill of Materials not found for the Item {1},Række {0}: stykliste ikke fundet for vare {1},
Row {0}: Conversion Factor is mandatory,Række {0}: Konverteringsfaktor er obligatorisk,
Row {0}: Cost center is required for an item {1},Række {0}: Omkostningscenter er påkrævet for en vare {1},
Row {0}: Credit entry can not be linked with a {1},Række {0}: Kredit indgang ikke kan knyttes med en {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Række {0}: Valuta af BOM # {1} skal være lig med den valgte valuta {2},
Row {0}: Debit entry can not be linked with a {1},Række {0}: Debit indgang ikke kan knyttes med en {1},
Row {0}: Depreciation Start Date is required,Række {0}: Afskrivning Startdato er påkrævet,
Row {0}: Enter location for the asset item {1},Række {0}: Indtast placering for aktivposten {1},
Row {0}: Exchange Rate is mandatory,Række {0}: Valutakursen er obligatorisk,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Række {0}: Forventet værdi efter brugbart liv skal være mindre end brutto købsbeløb,
Row {0}: From Time and To Time is mandatory.,Række {0}: Fra tid og til tid er obligatorisk.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Række {0}: Fra tid og til tid af {1} overlapper med {2},
Row {0}: From time must be less than to time,Række {0}: Fra tid skal være mindre end til tid,
Row {0}: Hours value must be greater than zero.,Række {0}: Timer værdi skal være større end nul.,
Row {0}: Invalid reference {1},Række {0}: Ugyldig henvisning {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Række {0}: Selskab / Konto matcher ikke med {1} / {2} i {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Række {0}: Selskabstype og Selskab er nødvendig for Fordrings- / Betalingskonto {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Række {0}: Betaling mod Salg / Indkøbsordre bør altid blive markeret som forskud,
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Række {0}: Tjek venligst &quot;Er Advance &#39;mod konto {1}, hvis dette er et forskud post.",
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Række {0}: Angiv venligst skattefritagelsesårsag i moms og afgifter,
Row {0}: Please set the Mode of Payment in Payment Schedule,Række {0}: Angiv betalingsmåde i betalingsplan,
Row {0}: Please set the correct code on Mode of Payment {1},Række {0}: Angiv den korrekte kode på betalingsmetode {1},
Row {0}: Qty is mandatory,Række {0}: Antal er obligatorisk,
Row {0}: Quality Inspection rejected for item {1},Række {0}: Kvalitetskontrol afvist for vare {1},
Row {0}: UOM Conversion Factor is mandatory,Række {0}: Enhedskode-konverteringsfaktor er obligatorisk,
Row {0}: select the workstation against the operation {1},Række {0}: Vælg arbejdsstationen imod operationen {1},
Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Række {0}: {1} Serienumre er nødvendige for punkt {2}. Du har angivet {3}.,
Row {0}: {1} must be greater than 0,Række {0}: {1} skal være større end 0,
Row {0}: {1} {2} does not match with {3},Række {0}: {1} {2} passer ikke med {3},
Row {0}:Start Date must be before End Date,Række {0}: Start dato skal være før slutdato,
Rows with duplicate due dates in other rows were found: {0},Rækker med dubletter forfaldsdatoer i andre rækker blev fundet: {0},
Rules for adding shipping costs.,Regler for at tilføje forsendelsesomkostninger.,
Rules for applying pricing and discount.,Regler for anvendelse af priser og rabat.,
S.O. No.,SÅ No.,
SGST Amount,SGST Beløb,
SO Qty,SO Antal,
Safety Stock,Minimum lagerbeholdning,
Salary,Løn,
Salary Slip submitted for period from {0} to {1},Lønslip indgivet for perioden fra {0} til {1},
Salary Structure must be submitted before submission of Tax Ememption Declaration,Lønstruktur skal indsendes inden indsendelse af skattefrihedserklæring,
Sales,Salg,
Sales Account,Salgskonto,
Sales Expenses,Salgsomkostninger,
Sales Funnel,Salgstragt,
Sales Invoice,Salgsfaktura,
Sales Invoice {0} has already been submitted,Salgsfaktura {0} er allerede blevet godkendt,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,"Salgsfaktura {0} skal annulleres, før denne salgsordre annulleres",
Sales Manager,Salgschef,
Sales Master Manager,Salg Master manager,
Sales Order,Salgsordre,
Sales Order Item,Salgsordrevare,
Sales Order required for Item {0},Salgsordre påkrævet for vare {0},
Sales Order to Payment,Salgsordre til betaling,
Sales Order {0} is not submitted,Salgsordre {0} er ikke godkendt,
Sales Order {0} is not valid,Salgsordre {0} er ikke gyldig,
Sales Order {0} is {1},Salgsordre {0} er {1},
Sales Orders,Salgsordrer,
Sales Partner,Forhandler,
Sales Pipeline,Salgspipeline,
Sales Price List,Salgsprisliste,
Sales Return,Salg Return,
Sales Summary,Salgsoversigt,
Sales Tax Template,Salg Momsskabelon,
Sales Team,Salgsteam,
Sales User,Salgsbruger,
Sales and Returns,Salg og retur,
Sales campaigns.,Salgskampagner.,
Sales orders are not available for production,Salgsordrer er ikke tilgængelige til produktion,
Salutation,Titel,
Same Company is entered more than once,Samme firma er indtastet mere end én gang,
Same item cannot be entered multiple times.,Samme vare kan ikke indtastes flere gange.,
Same supplier has been entered multiple times,Samme leverandør er indtastet flere gange,
Sample,Prøve,
Sample Collection,Prøveopsamling,
Sample quantity {0} cannot be more than received quantity {1},Prøvekvantitet {0} kan ikke være mere end modtaget mængde {1},
Sanctioned,sanktioneret,
Sand,Sand,
Saturday,Lørdag,
Saved,Gemt,
Saving {0},Gemmer {0},
Scan Barcode,Scan stregkode,
Schedule,Køreplan,
Schedule Admission,Planlægning Adgang,
Schedule Course,Kursusskema,
Schedule Date,Tidsplan Dato,
Schedule Discharge,Planlægningsudladning,
Scheduled,Planlagt,
Scheduled Upto,Planlagt Upto,
"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Skemaer for {0} overlapninger, vil du fortsætte efter at have oversat overlapte slots?",
Score cannot be greater than Maximum Score,Score kan ikke være større end maksimal score,
Scorecards,scorecards,
Scrapped,Skrottet,
Search,Søg,
Search Results,Søgeresultater,
Search Sub Assemblies,Søg Sub Assemblies,
"Search by item code, serial number, batch no or barcode","Søg efter varenummer, serienummer, batchnummer eller stregkode",
"Seasonality for setting budgets, targets etc.","Sæsonudsving til indstilling budgetter, mål etc.",
Secret Key,Secret Key,
Secretary,Sekretær,
Section Code,Sektionskode,
Secured Loans,Sikrede lån,
Securities & Commodity Exchanges,Værdipapirer og Commodity Exchanges,
Securities and Deposits,Værdipapirer og indlån,
See All Articles,Se alle artikler,
See all open tickets,Se alle åbne billetter,
See past orders,Se tidligere ordrer,
See past quotations,Se tidligere citater,
Select,Vælg,
Select Alternate Item,Vælg alternativt element,
Select Attribute Values,Vælg Attributværdier,
Select BOM,Vælg stykliste,
Select BOM and Qty for Production,Vælg stykliste og produceret antal,
"Select BOM, Qty and For Warehouse","Vælg BOM, Qty og For Warehouse",
Select Batch,Vælg Batch,
Select Batch Numbers,Vælg batchnumre,
Select Brand...,Vælg varemærke ...,
Select Company,Vælg firma,
Select Company...,Vælg firma ...,
Select Customer,Vælg kunde,
Select Days,Vælg dage,
Select Default Supplier,Vælg Standard Leverandør,
Select DocType,Vælg DocType,
Select Fiscal Year...,Vælg regnskabsår ...,
Select Item (optional),Vælg emne (valgfrit),
Select Items based on Delivery Date,Vælg varer baseret på Leveringsdato,
Select Items to Manufacture,Vælg varer til Produktion,
Select Loyalty Program,Vælg Loyalitetsprogram,
Select Patient,Vælg patient,
Select Possible Supplier,Vælg mulig leverandør,
Select Quantity,Vælg antal,
Select Serial Numbers,Vælg serienumre,
Select Target Warehouse,Vælg Target Warehouse,
Select Warehouse...,Vælg lager ...,
Select an account to print in account currency,"Vælg en konto, der skal udskrives i kontovaluta",
Select at least one value from each of the attributes.,Vælg mindst en værdi fra hver af attributterne.,
Select change amount account,Vælg ændringsstørrelse konto,
Select company first,Vælg firma først,
Select students manually for the Activity based Group,Vælg studerende manuelt for aktivitetsbaseret gruppe,
Select the customer or supplier.,Vælg kunde eller leverandør.,
Select the nature of your business.,Vælg arten af din virksomhed.,
Select the program first,Vælg programmet først,
Select to add Serial Number.,Vælg for at tilføje serienummer.,
Select your Domains,Vælg dine domæner,
Selected Price List should have buying and selling fields checked.,Udvalgt prisliste skal have købs- og salgsfelter kontrolleret.,
Sell,Salg,
Selling,Salg,
Selling Amount,Salgsbeløb,
Selling Price List,Salgsprisliste,
Selling Rate,Salgspris,
"Selling must be checked, if Applicable For is selected as {0}","Selling skal kontrolleres, om nødvendigt er valgt som {0}",
Send Grant Review Email,Send Grant Review Email,
Send Now,Send nu,
Send SMS,Send SMS,
Send mass SMS to your contacts,Send masse-SMS til dine kontakter,
Sensitivity,Følsomhed,
Sent,Sent,
Serial No and Batch,Serienummer og parti,
Serial No is mandatory for Item {0},Serienummer er obligatorisk for vare {0},
Serial No {0} does not belong to Batch {1},Serienummer {0} tilhører ikke Batch {1},
Serial No {0} does not belong to Delivery Note {1},Serienummer {0} hører ikke til følgeseddel {1},
Serial No {0} does not belong to Item {1},Serienummer {0} hører ikke til vare {1},
Serial No {0} does not belong to Warehouse {1},Serienummer {0} hører ikke til lager {1},
Serial No {0} does not belong to any Warehouse,Serienummer {0} tilhører ikke noget lager,
Serial No {0} does not exist,Serienummer {0} eksisterer ikke,
Serial No {0} has already been received,Serienummer {0} er allerede blevet modtaget,
Serial No {0} is under maintenance contract upto {1},Serienummer {0} er under vedligeholdelseskontrakt ind til d. {1},
Serial No {0} is under warranty upto {1},Serienummer {0} er under garanti op til {1},
Serial No {0} not found,Serienummer {0} ikke fundet,
Serial No {0} not in stock,Serienummer {0} ikke er på lager,
Serial No {0} quantity {1} cannot be a fraction,Serienummer {0} mængde {1} kan ikke være en brøkdel,
Serial Nos Required for Serialized Item {0},Serienummer påkrævet for serienummervare {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Serienummer: {0} er allerede refereret i salgsfaktura: {1},
Serial Numbers,Serienumre,
Serial Numbers in row {0} does not match with Delivery Note,Serienumre i række {0} stemmer ikke overens med Leveringsnotat,
Serial no {0} has been already returned,Serienummeret {0} er allerede returneret,
Serial number {0} entered more than once,Serienummer {0} indtastet mere end én gang,
Serialized Inventory,Serienummer-lager,
Series Updated,Nummerserien opdateret,
Series Updated Successfully,Nummerserien opdateret,
Series is mandatory,Nummerserien er obligatorisk,
Series {0} already used in {1},Serien {0} allerede anvendes i {1},
Service,Service,
Service Level Agreement,Serviceniveauaftale,
Service Level Agreement.,Serviceniveauaftale.,
Service Level.,Serviceniveau.,
Service Stop Date cannot be after Service End Date,Service Stop Date kan ikke være efter Service Slutdato,
Service Stop Date cannot be before Service Start Date,Service Stop Date kan ikke være før Service Startdato,
Services,Tjenester,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Indstil standardværdier som Firma, Valuta, indeværende regnskabsår, m.v.",
Set Details,Indstil detaljer,
Set New Release Date,Indstil ny udgivelsesdato,
Set Project and all Tasks to status {0}?,Indstille projekt og alle opgaver til status {0}?,
Set Status,Indstil Status,
Set Tax Rule for shopping cart,Sæt momsregel for indkøbskurv,
Set as Closed,Angiv som Lukket,
Set as Completed,Indstil som afsluttet,
Set as Default,Indstil som standard,
Set as Lost,Sæt som tabt,
Set as Open,Sæt som Open,
Set default inventory account for perpetual inventory,Indstil standard lagerkonto for evigvarende opgørelse,
Set this if the customer is a Public Administration company.,"Indstil dette, hvis kunden er et Public Administration-firma.",
Set {0} in asset category {1} or company {2},Indstil {0} i aktivkategori {1} eller firma {2},
"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Sætter begivenheder til {0}, da den til medarbejderen tilknyttede salgsmedarbejder {1} ikke har et brugernavn",
Setting defaults,Indstilling af standardindstillinger,
Setting up Email,Opsætning af e-mail,
Setting up Email Account,Opsætning Email-konto,
Setting up Employees,Opsætning af medarbejdere,
Setting up Taxes,Opsætning Skatter,
Setting up company,Oprettelse af virksomhed,
Settings,Indstillinger,
"Settings for online shopping cart such as shipping rules, price list etc.","Indstillinger for online indkøbskurv, såsom forsendelsesregler, prisliste mv.",
Settings for website homepage,Indstillinger for hjemmesidens startside,
Settings for website product listing,Indstillinger for websteds produktfortegnelse,
Settled,Slog sig ned,
Setup Gateway accounts.,Opsætning Gateway konti.,
Setup SMS gateway settings,Opsætning SMS gateway-indstillinger,
Setup cheque dimensions for printing,Anvendes ikke,
Setup default values for POS Invoices,Indstil standardværdier for POS-fakturaer,
Setup mode of POS (Online / Offline),Opsætningstilstand for POS (Online / Offline),
Setup your Institute in ERPNext,Opsæt dit institut i ERPNext,
Share Balance,Aktiebalance,
Share Ledger,Del Ledger,
Share Management,Aktieforvaltning,
Share Transfer,Deloverførsel,
Share Type,Share Type,
Shareholder,Aktionær,
Ship To State,Skib til stat,
Shipments,forsendelser,
Shipping,Forsendelse,
Shipping Address,Leveringsadresse,
"Shipping Address does not have country, which is required for this Shipping Rule","Forsendelsesadresse har ikke land, som er påkrævet for denne forsendelsesregel",
Shipping rule only applicable for Buying,Forsendelsesregel gælder kun for køb,
Shipping rule only applicable for Selling,Forsendelsesregel gælder kun for salg,
Shopify Supplier,Shopify Leverandør,
Shopping Cart,Indkøbskurv,
Shopping Cart Settings,Indkøbskurv Indstillinger,
Short Name,Kort navn,
Shortage Qty,Mangel Antal,
Show Completed,Vis afsluttet,
Show Cumulative Amount,Vis kumulativ mængde,
Show Open,Vis åben,
Show Opening Entries,Vis åbningsindgange,
Show Payment Details,Vis betalingsoplysninger,
Show Return Entries,Vis Returindlæg,
Show Variant Attributes,Vis variant attributter,
Show Variants,Vis varianter,
Show closed,Vis lukket,
Show exploded view,Vis eksploderet visning,
Show only POS,Vis kun POS,
Show unclosed fiscal year's P&L balances,Vis uafsluttede finanspolitiske års P &amp; L balancer,
Show zero values,Vis nulværdier,
Silt,silt,
Single Variant,Single Variant,
Single unit of an Item.,Enkelt enhed af et element.,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Overspringetildeling for følgende medarbejdere, da der allerede eksisterer rekordoverførselsregistre. {0}",
Slideshow,Slideshow,
Slots for {0} are not added to the schedule,Slots til {0} tilføjes ikke til skemaet,
Small,Lille,
Soap & Detergent,Sæbe &amp; Vaskemiddel,
Software,Software,
Software Developer,Software Developer,
Softwares,Softwares,
Soil compositions do not add up to 100,Jordsammensætninger tilføjer ikke op til 100,
Sold,solgt,
Some emails are invalid,Nogle e-mails er ugyldige,
Some information is missing,Der mangler nogle oplysninger,
Something went wrong!,Noget gik galt!,
"Sorry, Serial Nos cannot be merged","Beklager, serienumre kan ikke blive slået sammen",
Source,Kilde,
Source Name,Kilde Navn,
Source Warehouse,Kildelager,
Source and Target Location cannot be same,Kilde og målplacering kan ikke være ens,
Source and target warehouse cannot be same for row {0},Kilde og mål lageret ikke kan være ens for rækken {0},
Source and target warehouse must be different,Kilde og mål lager skal være forskellige,
Source of Funds (Liabilities),Finansieringskilde (Passiver),
Source warehouse is mandatory for row {0},Kilde lageret er obligatorisk for rækken {0},
Specified BOM {0} does not exist for Item {1},Specificeret stykliste {0} findes ikke for vare {1},
Split,Dele,
Split Batch,Opdel parti,
Split Issue,Split Issue,
Sports,Sport,
Standard,Standard,
Standard Buying,Standard Buying,
Standard Selling,Standard salg,
Standard contract terms for Sales or Purchase.,Standardkontraktvilkår for Salg eller Indkøb.,
Start Date,Startdato,
Start Date of Agreement can't be greater than or equal to End Date.,Startdato for aftalen kan ikke være større end eller lig med slutdato.,
Start Year,Startår,
Start date should be less than end date for Item {0},Start dato bør være mindre end slutdato for Item {0},
Start date should be less than end date for task {0},Startdatoen skal være mindre end slutdatoen for opgaven {0},
Start day is greater than end day in task '{0}',Startdagen er større end slutdagen i opgaven &#39;{0}&#39;,
Start on,Start på,
State,Stat,
State/UT Tax,Stat / UT-skat,
Statement of Account,Kontoudtog,
Status must be one of {0},Status skal være en af {0},
Stock,lager,
Stock Adjustment,Stock Justering,
Stock Analytics,Lageranalyser,
Stock Assets,Lageraktiver,
Stock Available,Lager til rådighed,
Stock Balance,Stock Balance,
Stock Entries already created for Work Order ,"Aktieindtægter, der allerede er oprettet til Arbejdsordre",
Stock Entry,Lagerindtastning,
Stock Entry {0} created,Lagerindtastning {0} oprettet,
Stock Entry {0} is not submitted,Lagerindtastning {0} er ikke godkendt,
Stock Expenses,Stock Udgifter,
Stock In Hand,Stock i hånden,
Stock Items,Lagervarer,
Stock Ledger,Lagerkladde,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Lagerposter og finansposter er posteret om  for de valgte købskvitteringer,
Stock Levels,lagrene,
Stock Liabilities,Stock Passiver,
Stock Qty,Antal på lager,
Stock Received But Not Billed,Stock Modtaget men ikke faktureret,
Stock Reports,Stock Rapporter,
Stock Summary,Stock Summary,
Stock Transactions,Lagertransaktioner,
Stock UOM,Lagerenhed,
Stock Value,Stock Value,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Lagersaldo i parti {0} vil blive negativ {1} for vare {2} på lager {3},
Stock cannot be updated against Delivery Note {0},Lager kan ikke opdateres mod følgeseddel {0},
Stock cannot be updated against Purchase Receipt {0},Lager kan ikke opdateres mod købskvittering {0},
Stock cannot exist for Item {0} since has variants,Stock kan ikke eksistere for Item {0} da har varianter,
Stock transactions before {0} are frozen,Lagertransaktioner før {0} er frosset,
Stop,Stands,
Stopped,Stoppet,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","Stoppet Arbejdsordre kan ikke annulleres, Unstop det først for at annullere",
Stores,butikker,
Student,Studerende,
Student Activity,Studentaktivitet,
Student Address,Studentadresse,
Student Admissions,Studerende optagelser,
Student Attendance,Student Fremmøde,
"Student Batches help you track attendance, assessments and fees for students","Elevgrupper hjælper dig med at administrere fremmøde, vurderinger og gebyrer for eleverne",
Student Email Address,Studerende e-mailadresse,
Student Email ID,Student Email ID,
Student Group,Elevgruppe,
Student Group Strength,Studentgruppens styrke,
Student Group is already updated.,Studentgruppen er allerede opdateret.,
Student Group: ,Studentgruppe:,
Student ID,studiekort,
Student ID: ,Studiekort:,
Student LMS Activity,Student LMS Aktivitet,
Student Mobile No.,Studerende mobiltelefonnr.,
Student Name,Elevnavn,
Student Name: ,Elevnavn:,
Student Report Card,Studenterapport,
Student is already enrolled.,Student er allerede tilmeldt.,
Student {0} - {1} appears Multiple times in row {2} & {3},Student {0} - {1} forekommer flere gange i træk {2} &amp; {3},
Student {0} does not belong to group {1},Student {0} tilhører ikke gruppe {1},
Student {0} exist against student applicant {1},Student {0} findes mod studerende ansøger {1},
"Students are at the heart of the system, add all your students","Studerende er i hjertet af systemet, tilføje alle dine elever",
Sub Assemblies,Sub forsamlinger,
Sub Type,Undertype,
Sub-contracting,Underleverandører,
Subcontract,underleverance,
Subject,Emne,
Submit,Godkend,
Submit this Work Order for further processing.,Send denne arbejdsordre til videre behandling.,
Subscription,Abonnement,
Subscription Management,Abonnement Management,
Subscriptions,Abonnementer,
Subtotal,Subtotal,
Successful,Vellykket,
Successfully Reconciled,Succesfuld Afstemt,
Successfully Set Supplier,Vellykket Indstil Leverandør,
Successfully created payment entries,Vellykket oprettet betalingsposter,
Successfully deleted all transactions related to this company!,Succesfuld slettet alle transaktioner i forbindelse med dette selskab!,
Sum of Scores of Assessment Criteria needs to be {0}.,Summen af Snesevis af Assessment Criteria skal være {0}.,
Sum of points for all goals should be 100. It is {0},Sum af point for alle mål skal være 100. Det er {0},
Summary,Resumé,
Summary for this month and pending activities,Resumé for denne måned og verserende aktiviteter,
Summary for this week and pending activities,Resumé for denne uge og verserende aktiviteter,
Sunday,Søndag,
Suplier,suplier,
Supplier,Leverandør,
Supplier Group,Leverandørgruppe,
Supplier Group master.,Leverandørgruppe mester.,
Supplier Id,Leverandør id,
Supplier Invoice Date cannot be greater than Posting Date,Leverandørfakturadato kan ikke være større end bogføringsdatoen,
Supplier Invoice No,Leverandør fakturanr.,
Supplier Invoice No exists in Purchase Invoice {0},Leverandør faktura nr eksisterer i købsfaktura {0},
Supplier Name,Leverandørnavn,
Supplier Part No,Leverandør varenummer,
Supplier Quotation,Leverandørtilbud,
Supplier Scorecard,Leverandør Scorecard,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Leverandør Warehouse obligatorisk for underentreprise købskvittering,
Supplier database.,Leverandør database.,
Supplier {0} not found in {1},Leverandør {0} ikke fundet i {1},
Supplier(s),Leverandør (er),
Supplies made to UIN holders,Leveringer til UIN-indehavere,
Supplies made to Unregistered Persons,Forsyninger til uregistrerede personer,
Suppliies made to Composition Taxable Persons,Leveringer til skattepligtige personer,
Supply Type,Forsyningstype,
Support,Support,
Support Analytics,Supportanalyser,
Support Settings,Support Indstillinger,
Support Tickets,Support Billetter,
Support queries from customers.,Support forespørgsler fra kunder.,
Susceptible,modtagelig,
Sync has been temporarily disabled because maximum retries have been exceeded,"Synkronisering er midlertidigt deaktiveret, fordi maksimale forsøg er overskredet",
Syntax error in condition: {0},Syntaksfejl i tilstand: {0},
Syntax error in formula or condition: {0},Syntaks fejl i formel eller tilstand: {0},
System Manager,System Manager,
TDS Rate %,TDS-sats%,
Tap items to add them here,Tryk på elementer for at tilføje dem her,
Target,Target,
Target ({}),Mål ({}),
Target On,Target On,
Target Warehouse,Target Warehouse,
Target warehouse is mandatory for row {0},Target lageret er obligatorisk for rækken {0},
Task,Opgave,
Tasks,Opgaver,
Tasks have been created for managing the {0} disease (on row {1}),Opgaver er oprettet til styring af {0} sygdommen (på række {1}),
Tax,Skat,
Tax Assets,Skatteaktiver,
Tax Category,Skatskategori,
Tax Category for overriding tax rates.,Skatskategori til overskridende skattesatser.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items","Skatkategori er blevet ændret til &quot;Total&quot;, fordi alle genstande er ikke-lagerartikler",
Tax ID,CVR-nr.,
Tax Id: ,Skatte ID:,
Tax Rate,Skat,
Tax Rule Conflicts with {0},Momsregel konflikter med {0},
Tax Rule for transactions.,Momsregel til transaktioner.,
Tax Template is mandatory.,Momsskabelon er obligatorisk.,
Tax Withholding rates to be applied on transactions.,"Skat tilbageholdelsessatser, der skal anvendes på transaktioner.",
Tax template for buying transactions.,Momsskabelon til købstransaktioner.,
Tax template for item tax rates.,Skatteskabelon for varesatssatser.,
Tax template for selling transactions.,Beskatningsskabelon for salgstransaktioner.,
Taxable Amount,Skattepligtigt beløb,
Taxes,Moms,
Technology,Teknologi,
Telecommunications,Telekommunikation,
Telephone Expenses,Telefonudgifter,
Television,Fjernsyn,
Template Name,Skabelonnavn,
Template of terms or contract.,Skabelon til vilkår eller kontrakt.,
Templates of supplier scorecard criteria.,Skabeloner af leverandør scorecard kriterier.,
Templates of supplier scorecard variables.,Skabeloner af leverandør scorecard variabler.,
Templates of supplier standings.,Skabeloner af leverandørplaceringer.,
Temporarily on Hold,Midlertidigt på hold,
Temporary,Midlertidig,
Temporary Accounts,Midlertidige konti,
Temporary Opening,Midlertidig åbning,
Terms and Conditions,Betingelser,
Terms and Conditions Template,Skabelon til vilkår og betingelser,
Territory,Område,
Test,Prøve,
Thank you for your business!,Tak for din forretning!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,Fra pakke nr. feltet må hverken være tomt eller det er mindre end 1.,
The Brand,Varemærket,
The Item {0} cannot have Batch,Vare {0} kan ikke have parti,
The Loyalty Program isn't valid for the selected company,Loyalitetsprogrammet er ikke gyldigt for det valgte firma,
The Payment Term at row {0} is possibly a duplicate.,Betalingsperioden i række {0} er muligvis et duplikat.,
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,Betingelsernes slutdato kan ikke være tidligere end betingelsernes startdato. Ret venligst datoerne og prøv igen.,
The Term End Date cannot be later than the Year End Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,"Den Term Slutdato kan ikke være senere end året Slutdato af skoleåret, som udtrykket er forbundet (Studieår {}). Ret de datoer og prøv igen.",
The Term Start Date cannot be earlier than the Year Start Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,"Betingelsernes startdato kan ikke være tidligere end startdatoen for skoleåret, som udtrykket er forbundet med (Studieår {}). Ret venligst datoerne og prøv igen.",
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,Året Slutdato kan ikke være tidligere end året startdato. Ret de datoer og prøv igen.,
The amount of {0} set in this payment request is different from the calculated amount of all payment plans: {1}. Make sure this is correct before submitting the document.,"Antallet af {0} i denne betalingsanmodning adskiller sig fra det beregnede beløb for alle betalingsplaner: {1}. Sørg for, at dette er korrekt, inden du sender dokumentet.",
The field From Shareholder cannot be blank,Feltet fra aktionær kan ikke være tomt,
The field To Shareholder cannot be blank,Feltet Til Aktionær kan ikke være tomt,
The fields From Shareholder and To Shareholder cannot be blank,Feltene fra aktionær og til aktionær kan ikke være tomme,
The folio numbers are not matching,Folio numrene matcher ikke,
The holiday on {0} is not between From Date and To Date,Ferien på {0} er ikke mellem Fra dato og Til dato,
The name of the institute for which you are setting up this system.,"Navnet på det institut, som du konfigurerer dette system.",
The name of your company for which you are setting up this system.,"Navnet på dit firma, som du oprette i dette system.",
The number of shares and the share numbers are inconsistent,Antallet af aktier og aktienumrene er inkonsekvente,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,Betalingsgateway-kontoen i plan {0} er forskellig fra betalingsgateway-kontoen i denne betalingsanmodning,
The selected BOMs are not for the same item,De valgte styklister er ikke for den samme vare,
The selected item cannot have Batch,Den valgte vare kan ikke have parti,
The seller and the buyer cannot be the same,Sælgeren og køberen kan ikke være det samme,
The shareholder does not belong to this company,Aktionæren tilhører ikke dette selskab,
The shares already exist,Aktierne eksisterer allerede,
The shares don't exist with the {0},Aktierne findes ikke med {0},
"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Reconciliation and revert to the Draft stage","Opgaven er valgt som et baggrundsjob. I tilfælde af, at der er noget problem med behandling i baggrunden, tilføjer systemet en kommentar om fejlen i denne aktieafstemning og vender tilbage til udkastet.",
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Så vil prisreglerne blive filtreret på kunde, kundegruppe, område, leverandør, leverandørtype, kampagne, salgspartner etc.",
"There are inconsistencies between the rate, no of shares and the amount calculated","Der er uoverensstemmelser mellem kursen, antal aktier og det beregnede beløb",
There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,Der kan være flere lagdelt indsamlingsfaktor baseret på det samlede forbrug. Men konverteringsfaktoren til indløsning vil altid være den samme for alle niveauer.,
There can only be 1 Account per Company in {0} {1},Der kan kun være 1 konto pr. Firma i {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Der kan kun være én forsendelsesregelbetingelse med 0 eller blank værdi i feltet ""til værdi""",
There is not enough leave balance for Leave Type {0},Der er ikke nok dage til rådighed til fraværstype {0},
There is nothing to edit.,Der er intet at redigere.,
There isn't any item variant for the selected item,Der er ikke nogen varianter for det valgte emne,
"There seems to be an issue with the server's GoCardless configuration. Don't worry, in case of failure, the amount will get refunded to your account.","Der ser ud til at være et problem med serverens GoCardless-konfiguration. Du skal ikke bekymre dig, i tilfælde af fiasko vil beløbet blive refunderet til din konto.",
There were errors creating Course Schedule,Der opstod fejl ved at oprette kursusplan,
There were errors.,Der var fejl.,
This Item is a Template and cannot be used in transactions. Item attributes will be copied over into the variants unless 'No Copy' is set,"Dette element er en skabelon, og kan ikke anvendes i transaktioner. Item attributter kopieres over i varianterne medmindre &#39;Ingen Copy &quot;er indstillet",
This Item is a Variant of {0} (Template).,Denne vare er en variant af {0} (Skabelon).,
This Month's Summary,Denne måneds Summary,
This Week's Summary,Denne uges oversigt,
This action will stop future billing. Are you sure you want to cancel this subscription?,"Denne handling stopper fremtidig fakturering. Er du sikker på, at du vil annullere dette abonnement?",
This covers all scorecards tied to this Setup,Dette dækker alle scorecards knyttet til denne opsætning,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Dette dokument er over grænsen ved {0} {1} for vare {4}. Er du gør en anden {3} mod samme {2}?,
This is a root account and cannot be edited.,Dette er en rod-konto og kan ikke redigeres.,
This is a root customer group and cannot be edited.,Dette er en rod-kundegruppe og kan ikke redigeres.,
This is a root department and cannot be edited.,Dette er en rodafdeling og kan ikke redigeres.,
This is a root healthcare service unit and cannot be edited.,Dette er en root sundheds service enhed og kan ikke redigeres.,
This is a root item group and cannot be edited.,Dette er en rod-varegruppe og kan ikke redigeres.,
This is a root sales person and cannot be edited.,Dette er en rod salg person og kan ikke redigeres.,
This is a root supplier group and cannot be edited.,Dette er en rodleverandørgruppe og kan ikke redigeres.,
This is a root territory and cannot be edited.,Dette er et overordnet område og kan ikke redigeres.,
This is an example website auto-generated from ERPNext,Dette er et eksempel website auto-genereret fra ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Dette er baseret på kørebogen for køretøjet. Se tidslinje nedenfor for detaljer,
This is based on stock movement. See {0} for details,Dette er baseret på lager bevægelse. Se {0} for detaljer,
This is based on the Time Sheets created against this project,Dette er baseret på de timesedler oprettes imod denne sag,
This is based on the attendance of this Student,Dette er baseret på deltagelse af denne Student,
This is based on transactions against this Customer. See timeline below for details,Dette er baseret på transaktioner for denne kunde. Se tidslinje nedenfor for detaljer,
This is based on transactions against this Healthcare Practitioner.,Dette er baseret på transaktioner mod denne Healthcare Practitioner.,
This is based on transactions against this Patient. See timeline below for details,Dette er baseret på transaktioner mod denne patient. Se tidslinjen nedenfor for detaljer,
This is based on transactions against this Sales Person. See timeline below for details,Dette er baseret på transaktioner mod denne Salgsperson. Se tidslinjen nedenfor for detaljer,
This is based on transactions against this Supplier. See timeline below for details,Dette er baseret på transaktioner for denne leverandør. Se tidslinje nedenfor for detaljer,
This {0} conflicts with {1} for {2} {3},Dette {0} konflikter med {1} for {2} {3},
Time Sheet for manufacturing.,Tidsregistrering til Produktion.,
Time Tracking,Tidsregistrering,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Tidspausen overspring, spalten {0} til {1} overlapper ekspansionen slot {2} til {3}",
Time slots added,Ledige tider tilføjet,
Time(in mins),Tid (i minutter),
Timer,Timer,
Timer exceeded the given hours.,Timeren oversteg de angivne timer.,
Timesheet,Tidsregistrering,
Timesheet for tasks.,Timeseddel til opgaver.,
Timesheet {0} is already completed or cancelled,Tidsregistreringskladde {0} er allerede afsluttet eller annulleret,
Timesheets,Tidsregistreringskladder,
"Timesheets help keep track of time, cost and billing for activites done by your team","Tidskladder hjælper med at holde styr på tid, omkostninger og fakturering for aktiviteter udført af dit team",
Titles for print templates e.g. Proforma Invoice.,Tekster til udskriftsskabeloner fx Proforma-faktura.,
To,Til,
To Address 1,Til adresse 1,
To Address 2,Til adresse 2,
To Bill,Til Bill,
To Date,Til dato,
To Date cannot be before From Date,Til dato kan ikke være før fra dato,
To Date cannot be less than From Date,Dato kan ikke være mindre end fra dato,
To Date must be greater than From Date,Til dato skal være større end Fra dato,
To Date should be within the Fiscal Year. Assuming To Date = {0},Til dato bør være inden regnskabsåret. Antages Til dato = {0},
To Datetime,Til datotid,
To Deliver,Til at levere,
To Deliver and Bill,At levere og Bill,
To Fiscal Year,Til regnskabsår,
To GSTIN,Til GSTIN,
To Party Name,Til Selskabsnavn,
To Pin Code,At pin kode,
To Place,At placere,
To Receive,At modtage,
To Receive and Bill,Til at modtage og Bill,
To State,Til stat,
To Warehouse,Til lager,
To create a Payment Request reference document is required,For at oprette en betalingsanmodning kræves referencedokument,
"To filter based on Party, select Party Type first","Hvis du vil filtrere på Selskab, skal du vælge Selskabstype først",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","For at få det bedste ud af ERPNext, anbefaler vi, at du tager lidt tid og se disse hjælpe videoer.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Hvis du vil medtage skat i række {0} i Item sats, skatter i rækker {1} skal også medtages",
To make Customer based incentive schemes.,At lave kundebaserede incitamentsordninger.,
"To merge, following properties must be same for both items","At fusionere, skal følgende egenskaber være ens for begge poster",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Hvis du ikke vil anvende Prisfastsættelse Regel i en bestemt transaktion, bør alle gældende Priser Regler deaktiveres.",
"To set this Fiscal Year as Default, click on 'Set as Default'","For at indstille dette regnskabsår som standard, skal du klikke på &#39;Vælg som standard&#39;",
To view logs of Loyalty Points assigned to a Customer.,"For at få vist logfiler af loyalitetspoint, der er tildelt en kunde.",
To {0},Til {0},
To {0} | {1} {2},Til {0} | {1} {2},
Toggle Filters,Skift filtre,
Too many columns. Export the report and print it using a spreadsheet application.,For mange kolonner. Udlæs rapporten og udskriv den ved hjælp af et regnearksprogram.,
Tools,Værktøj,
Total (Credit),I alt (kredit),
Total (Without Tax),I alt (uden skat),
Total Achieved,Total Opnået,
Total Actual,Samlede faktiske,
Total Allocated Leaves,Samlede tildelte blade,
Total Amount,Samlet beløb,
Total Amount Credited,Samlede beløb krediteret,
Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total gældende takster i købskvitteringsvaretabel skal være det samme som de samlede skatter og afgifter,
Total Budget,Samlet budget,
Total Collected: {0},Samlet samlet: {0},
Total Commission,Samlet provision,
Total Contribution Amount: {0},Samlet bidragsbeløb: {0},
Total Credit/ Debit Amount should be same as linked Journal Entry,Samlet kredit- / debiteringsbeløb skal være det samme som tilknyttet tidsskriftindgang,
Total Debit must be equal to Total Credit. The difference is {0},Debet og kredit stemmer ikke. Differencen er {0},
Total Invoiced Amount,Totalt faktureret beløb,
Total Order Considered,Samlet Order Anses,
Total Order Value,Samlet ordreværdi,
Total Outgoing,Samlet udgående,
Total Outstanding,Samlet Udestående,
Total Outstanding Amount,Samlede udestående beløb,
Total Outstanding: {0},Samlet Udestående: {0},
Total Paid Amount,Samlet indbetalt beløb,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,Samlet betalingsbeløb i betalingsplan skal svare til Grand / Rounded Total,
Total Payments,Samlede betalinger,
Total Qty,Antal i alt,
Total Quantity,Samlet mængde,
Total Revenue,Omsætning i alt,
Total Student,Samlet studerende,
Total Target,Samlet Target,
Total Tax,Moms i alt,
Total Taxable Amount,Samlet skattepligtigt beløb,
Total Taxable Value,Samlet skattepligtig værdi,
Total Unpaid: {0},Sum ubetalt: {0},
Total Variance,Samlet Varians,
Total Weightage of all Assessment Criteria must be 100%,Samlet vægtning af alle vurderingskriterier skal være 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Samlet forhånd ({0}) mod Order {1} kan ikke være større end Grand alt ({2}),
Total advance amount cannot be greater than total claimed amount,Samlet forskudsbeløb kan ikke være større end det samlede beløb,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Samlede tildelte blade er flere dage end maksimal tildeling af {0} ferie type for medarbejder {1} i perioden,
Total allocated leaves are more than days in the period,Samlede fordelte blade er mere end dage i perioden,
Total allocated percentage for sales team should be 100,Samlede fordelte procentdel for salgsteam bør være 100,
Total cannot be zero,Samlede kan ikke være nul,
Total contribution percentage should be equal to 100,Den samlede bidragsprocent skal være lig med 100,
Total hours: {0},Total time: {0},
Total {0} ({1}),I alt {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","I alt {0} for alle punkter er nul, kan være du skal ændre &quot;Fordel afgifter baseret på &#39;",
Total(Amt),I alt (Amt),
Total(Qty),I alt (Antal),
Traceability,Sporbarhed,
Traceback,Spore tilbage,
Track Leads by Lead Source.,Sporledninger af blykilde.,
Transaction,Transaktion,
Transaction Date,Transaktionsdato,
Transaction Type,Transaktionstype,
Transaction currency must be same as Payment Gateway currency,Transaktion valuta skal være samme som Payment Gateway valuta,
Transaction not allowed against stopped Work Order {0},Transaktion er ikke tilladt mod stoppet Arbejdsordre {0},
Transaction reference no {0} dated {1},Transaktion henvisning ingen {0} dateret {1},
Transactions,Transaktioner,
Transactions can only be deleted by the creator of the Company,Transaktioner kan kun slettes af skaberen af selskabet,
Transfer,Overførsel,
Transfer Material,Transfer Materiale,
Transfer Type,Overførselstype,
Transfer an asset from one warehouse to another,Overfør et aktiv fra et lager til et andet,
Transfered,overført,
Transferred Quantity,Overført mængde,
Transport Receipt Date,Transportkvitteringsdato,
Transport Receipt No,Transport kvittering nr,
Transportation,Transport,
Transporter ID,Transporter ID,
Transporter Name,Transporter Navn,
Travel Expenses,Rejseudgifter,
Tree Type,Tree Type,
Tree of Bill of Materials,Styklistetræ,
Tree of Item Groups.,Varegruppetræer,
Tree of Procedures,Proceduretræ,
Tree of Quality Procedures.,Træ med kvalitetsprocedurer.,
Tree of financial Cost Centers.,Tree of finansielle omkostningssteder.,
Tree of financial accounts.,Tree af finansielle konti.,
Treshold {0}% appears more than once,Grænsen {0}% forekommer mere end én gang,
Trial Period End Date Cannot be before Trial Period Start Date,Prøveperiode Slutdato kan ikke være før startperiode for prøveperiode,
Trialling,afprøvning,
Type of Business,Type virksomhed,
Types of activities for Time Logs,Typer af aktiviteter for Time Logs,
UOM,Måleenhed,
UOM Conversion factor is required in row {0},UOM Omregningsfaktor kræves i række {0},
UOM coversion factor required for UOM: {0} in Item: {1},UOM coversion faktor kræves for Pakke: {0} i Konto: {1},
URL,URL,
Unable to find DocType {0},Kunne ikke finde DocType {0},
Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Kan ikke finde valutakurs for {0} til {1} for nøgle dato {2}. Opret venligst en valutaudvekslingsoptegnelse manuelt,
Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Kunne ikke finde nogen score fra {0}. Du skal have stående scoringer på mellem 0 og 100,
Unable to find variable: ,Kan ikke finde variabel:,
Unblock Invoice,Fjern blokering af faktura,
Uncheck all,Fravælg alle,
Unclosed Fiscal Years Profit / Loss (Credit),Uafsluttede regnskabsår Profit / Loss (Credit),
Unit,Enhed,
Unit of Measure,Måleenhed,
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Måleenhed {0} er indtastet mere end én gang i Conversion Factor Table,
Unknown,Ukendt,
Unpaid,Åben,
Unsecured Loans,Usikrede lån,
Unsubscribe from this Email Digest,Afmeld dette e-mail-nyhedsbrev,
Unsubscribed,Afmeldt,
Until,Indtil,
Unverified Webhook Data,Uverificerede Webhook-data,
Update Account Name / Number,Opdater konto navn / nummer,
Update Account Number / Name,Opdater konto nummer / navn,
Update Cost,Opdatering Omkostninger,
Update Items,Opdater elementer,
Update Print Format,Opdater Print Format,
Update bank payment dates with journals.,Opdatér bankbetalingsdatoerne med kladderne.,
Update in progress. It might take a while.,Opdatering i gang. Det kan tage et stykke tid.,
Update rate as per last purchase,Opdateringshastighed pr. Sidste køb,
Update stock must be enable for the purchase invoice {0},Opdateringslager skal aktiveres for købsfakturaen {0},
Updating Variants...,Opdaterer varianter ...,
Upload your letter head and logo. (you can edit them later).,Upload dit brevhoved og logo. (du kan redigere dem senere).,
Upper Income,Upper Indkomst,
Use Sandbox,Brug Sandbox,
Used Leaves,Brugte blade,
User,Bruger,
User ID,Bruger-id,
User ID not set for Employee {0},Bruger-id ikke indstillet til Medarbejder {0},
User Remark,Brugerbemærkning,
User has not applied rule on the invoice {0},Brugeren har ikke anvendt en regel på fakturaen {0},
User {0} already exists,Bruger {0} eksisterer allerede,
User {0} created,Bruger {0} oprettet,
User {0} does not exist,Brugeren {0} eksisterer ikke,
User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,Bruger {0} har ingen standard POS-profil. Tjek standard i række {1} for denne bruger.,
User {0} is already assigned to Employee {1},Bruger {0} er allerede tildelt Medarbejder {1},
User {0} is already assigned to Healthcare Practitioner {1},Bruger {0} er allerede tildelt sundhedsmedarbejder {1},
Users,Brugere,
Utility Expenses,"El, vand og varmeudgifter",
Valid From Date must be lesser than Valid Upto Date.,Gyldig fra dato skal være mindre end gyldig upto dato.,
Valid Till,Gyldig til,
Valid from and valid upto fields are mandatory for the cumulative,Gyldige fra og gyldige op til felter er obligatoriske for det akkumulerede,
Valid from date must be less than valid upto date,Gyldig fra dato skal være mindre end gyldig indtil dato,
Valid till date cannot be before transaction date,Gyldig til dato kan ikke være før transaktionsdato,
Validity,Gyldighed,
Validity period of this quotation has ended.,Gyldighedsperioden for dette citat er afsluttet.,
Valuation Rate,Værdiansættelsesbeløb,
Valuation Rate is mandatory if Opening Stock entered,"Værdiansættelsesværdi er obligatorisk, hvis Åbning Stock indtastet",
Valuation type charges can not marked as Inclusive,Værdiansættelse typen omkostninger ikke er markeret som Inclusive,
Value Or Qty,Værdi eller mængde,
Value Proposition,Værdiforslag,
Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Værdi for Egenskab {0} skal være inden for området af {1} og {2} i intervaller af {3} til konto {4},
Value must be between {0} and {1},Værdien skal være mellem {0} og {1},
"Values of exempt, nil rated and non-GST inward supplies","Værdier for undtagne, ikke-klassificerede og ikke-GST-indgående leverancer",
Variance,varians,
Variance ({}),Variance ({}),
Variant,Variant,
Variant Attributes,Variant Attributter,
Variant Based On cannot be changed,Variant baseret på kan ikke ændres,
Variant Details Report,Variant Details Report,
Variant creation has been queued.,Variantoprettelse er blevet køet.,
Vehicle Expenses,Køretøjsudgifter,
Vehicle No,Køretøjsnr.,
Vehicle Type,Køretøjstype,
Vehicle/Bus Number,Køretøj / busnummer,
Venture Capital,Venture Capital,
View Chart of Accounts,Vis kontoplan,
View Fees Records,Se Gebyrer Records,
View Form,Vis form,
View Lab Tests,Vis laboratorieprøver,
View Leads,Se emner,
View Ledger,Se kladde,
View Now,Se nu,
View a list of all the help videos,Se en liste over alle hjælpevideoerne,
View in Cart,Se i indkøbskurven,
Visit report for maintenance call.,Besøg rapport til vedligeholdelse opkald.,
Visit the forums,Besøg fora,
Vital Signs,Vitale tegn,
Volunteer,Frivillig,
Volunteer Type information.,Frivilligt Type oplysninger.,
Volunteer information.,Frivillig information.,
Voucher #,Bilagsnr.,
Voucher No,Bilagsnr.,
Voucher Type,Bilagstype,
WIP Warehouse,Varer-i-arbejde-lager,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,"Lager kan ikke slettes, da der eksisterer lagerposter for dette lager.",
Warehouse cannot be changed for Serial No.,Lager kan ikke ændres for serienummeret,
Warehouse is mandatory,Lager er obligatorisk,
Warehouse is mandatory for stock Item {0} in row {1},Lager er obligatorisk for lagervare {0} i række {1},
Warehouse not found in the system,Lager ikke fundet i systemet,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Lager krævet på række nr. {0}, angiv standardlager for varen {1} for virksomheden {2}",
Warehouse required for stock Item {0},Lager kræves for lagervare {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},"Lager {0} kan ikke slettes, da der eksisterer et antal varer {1} på lageret",
Warehouse {0} does not belong to company {1},Lager {0} ikke hører til firmaet {1},
Warehouse {0} does not exist,Lager {0} eksisterer ikke,
"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","Lager {0} er ikke knyttet til nogen konto, angiv venligst kontoen i lagerplaceringen eller angiv standard lagerkonto i firma {1}.",
Warehouses with child nodes cannot be converted to ledger,Lager med referencer kan ikke konverteres til finans,
Warehouses with existing transaction can not be converted to group.,Lager med eksisterende transaktion kan ikke konverteres til gruppen.,
Warehouses with existing transaction can not be converted to ledger.,Lager med eksisterende transaktioner kan ikke konverteres til Finans.,
Warning,Advarsel,
Warning: Another {0} # {1} exists against stock entry {2},Advarsel: En anden {0} # {1} eksisterer mod lagerpost {2},
Warning: Invalid SSL certificate on attachment {0},Advarsel: Ugyldigt SSL-certifikat på vedhæftet fil {0},
Warning: Invalid attachment {0},Advarsel: Ugyldig vedhæftet fil {0},
Warning: Material Requested Qty is less than Minimum Order Qty,Advarsel: Anmodet materialemængde er mindre end minimum ordremængden,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Advarsel: Salg Order {0} findes allerede mod Kundens Indkøbsordre {1},
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,"Advarsel: Systemet vil ikke tjekke for overfakturering, da beløbet for vare {0} i {1} er nul",
Warranty,Garanti,
Warranty Claim,Garantikrav,
Warranty Claim against Serial No.,Garantikrav mod serienummer,
Website,Hjemmeside,
Website Image should be a public file or website URL,Website Billede bør være en offentlig fil eller webadresse,
Website Image {0} attached to Item {1} cannot be found,Website Billede {0} er knyttet til Vare {1} kan ikke findes,
Website Manager,Webmaster,
Website Settings,Opsætning af hjemmeside,
Wednesday,Onsdag,
Week,Uge,
Weekdays,Hverdage,
Weekly,Ugentlig,
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Vægt er nævnt, \ nVenligst nævne &quot;Weight UOM&quot; for",
Welcome email sent,Velkomst-e-mail sendt,
Welcome to ERPNext,Velkommen til ERPNext,
What do you need help with?,Hvad har du brug for hjælp til?,
What does it do?,Hvad gør det?,
Where manufacturing operations are carried.,Hvor fremstillingsprocesser gennemføres.,
White,hvid,
Wire Transfer,Bankoverførsel,
WooCommerce Products,WooCommerce-produkter,
Work In Progress,Varer i arbejde,
Work Order,Arbejdsordre,
Work Order already created for all items with BOM,Arbejdsordre allerede oprettet for alle varer med BOM,
Work Order cannot be raised against a Item Template,Arbejdsordre kan ikke rejses imod en vare skabelon,
Work Order has been {0},Arbejdsordre har været {0},
Work Order not created,Arbejdsordre er ikke oprettet,
Work Order {0} must be cancelled before cancelling this Sales Order,"Arbejdsordren {0} skal annulleres, inden afbestillingen af denne salgsordre",
Work Order {0} must be submitted,Arbejdsordre {0} skal indsendes,
Work Orders Created: {0},Arbejdsordrer oprettet: {0},
Work-in-Progress Warehouse is required before Submit,"Work-in-Progress Warehouse er nødvendig, før Indsend",
Workflow,Workflow,
Working,Working,
Working Hours,Arbejdstider,
Workstation,Arbejdsstation,
Workstation is closed on the following dates as per Holiday List: {0},Workstation er lukket på følgende datoer ifølge helligdagskalenderen: {0},
Wrapping up,Afslutter,
Wrong Password,Forkert adgangskode,
Year start date or end date is overlapping with {0}. To avoid please set company,"Første dag eller sidste dag i året overlapper med {0}. For at undgå dette, sæt selskabet korrekt op",
You are not authorized to add or update entries before {0},Du har ikke tilladelse til at tilføje eller opdatere poster før {0},
You are not authorized to set Frozen value,Du er ikke autoriseret til at fastsætte låst værdi,
You can not change rate if BOM mentioned agianst any item,"Du kan ikke ændre kurs, hvis BOM nævnt agianst ethvert element",
You can not enter current voucher in 'Against Journal Entry' column,"Du kan ikke indtaste det aktuelle bilag i ""Imod Kassekladde 'kolonne",
You can only have Plans with the same billing cycle in a Subscription,Du kan kun have planer med samme faktureringsperiode i en abonnement,
You can only redeem max {0} points in this order.,Du kan kun indløse maksimalt {0} point i denne ordre.,
You can only renew if your membership expires within 30 days,"Du kan kun forny, hvis dit medlemskab udløber inden for 30 dage",
You can only select a maximum of one option from the list of check boxes.,Du kan kun vælge maksimalt en mulighed fra listen over afkrydsningsfelter.,
You can't redeem Loyalty Points having more value than the Grand Total.,"Du kan ikke indløse loyalitetspoint, der har mere værdi end samlet total.",
You cannot credit and debit same account at the same time,Du kan ikke kreditere og debitere samme konto på samme tid,
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,Du kan ikke slette Regnskabsår {0}. Regnskabsår {0} er indstillet som standard i Globale indstillinger,
You cannot delete Project Type 'External',Du kan ikke slette Project Type 'Ekstern',
You cannot edit root node.,Du kan ikke redigere root node.,
You cannot restart a Subscription that is not cancelled.,"Du kan ikke genstarte en abonnement, der ikke annulleres.",
You don't have enough Loyalty Points to redeem,Du har ikke nok loyalitetspoint til at indløse,
You have already assessed for the assessment criteria {}.,Du har allerede vurderet for bedømmelseskriterierne {}.,
You have already selected items from {0} {1},Du har allerede valgt elementer fra {0} {1},
You have been invited to collaborate on the project: {0},Du er blevet inviteret til at samarbejde om sag: {0},
You have entered duplicate items. Please rectify and try again.,"Du har indtastet dubletter. Venligst rette, og prøv igen.",
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Du skal være en anden bruger end Administrator med System Manager og Item Manager roller for at registrere dig på Marketplace.,
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Du skal være bruger med System Manager og Item Manager roller for at tilføje brugere til Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Du skal være en bruger med System Manager og Item Manager roller til at registrere på Marketplace.,
You need to be logged in to access this page,Du skal være logget ind for at få adgang til denne side,
You need to enable Shopping Cart,Du skal aktivere Indkøbskurven,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,"Du vil miste optegnelser over tidligere genererede fakturaer. Er du sikker på, at du vil genstarte dette abonnement?",
Your Organization,Din organisation,
Your cart is Empty,Din vogn er tom,
Your email address...,Din email adresse...,
Your order is out for delivery!,Din ordre er ude for levering!,
Your tickets,Dine billetter,
ZIP Code,Postnummer,
[Error],[Fejl],
[{0}](#Form/Item/{0}) is out of stock,[{0}] (# Form / Vare / {0}) er udsolgt,
`Freeze Stocks Older Than` should be smaller than %d days.,`Frys lager ældre end` skal være mindre end %d dage.,
based_on,baseret på,
cannot be greater than 100,må ikke være større end 100,
disabled user,deaktiveret bruger,
"e.g. ""Build tools for builders""",fx &quot;Byg værktøjer til bygherrer&quot;,
"e.g. ""Primary School"" or ""University""",fx &quot;Primary School&quot; eller &quot;University&quot;,
"e.g. Bank, Cash, Credit Card","fx Bank, Kontant, Kreditkort",
hidden,skjult,
modified,modificeret,
old_parent,old_parent,
on,på,
{0} '{1}' is disabled,{0} &#39;{1}&#39; er deaktiveret,
{0} '{1}' not in Fiscal Year {2},{0} &#39;{1}&#39; ikke i regnskabsåret {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) kan ikke være større end den planlagte mængde ({2}) i Work Order {3},
{0} - {1} is inactive student,{0} - {1} er inaktiv studerende,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} er ikke indskrevet i batch {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} er ikke tilmeldt kurset {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} Budget for konto {1} mod {2} {3} er {4}. Det vil overstige med {5},
{0} Digest,{0} Digest,
{0} Request for {1},{0} Anmodning om {1},
{0} Result submittted,{0} Resultat indsendt,
{0} Serial Numbers required for Item {1}. You have provided {2}.,"{0} serienumre, der kræves for vare {1}. Du har angivet {2}.",
{0} Student Groups created.,{0} Student gruppe oprettet.,
{0} Students have been enrolled,{0} Studerende er blevet tilmeldt,
{0} against Bill {1} dated {2},{0} mod regning {1} dateret {2},
{0} against Purchase Order {1},{0} mod indkøbsordre {1},
{0} against Sales Invoice {1},{0} mod salgsfaktura {1},
{0} against Sales Order {1},{0} mod salgsordre {1},
{0} asset cannot be transferred,{0} aktiv kan ikke overføres,
{0} can not be negative,{0} kan ikke være negativ,
{0} created,{0} oprettet,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.","{0} har for øjeblikket en {1} leverandør scorecard stående, og købsordrer til denne leverandør bør udstedes med forsigtighed.",
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.","{0} har for øjeblikket et {1} leverandør scorecard stående, og RFQs til denne leverandør skal udleveres med forsigtighed.",
{0} does not belong to Company {1},{0} tilhører ikke firmaet {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} indeholder ingen behandlingskalender. Tilføj denne på sundhedsmedarbejderen.,
{0} entered twice in Item Tax,{0} indtastet to gange i varemoms,
{0} for {1},{0} for {1},
{0} has been submitted successfully,{0} er blevet indsendt succesfuldt,
{0} has fee validity till {1},{0} har gebyrgyldighed indtil {1},
{0} hours,{0} timer,
{0} in row {1},{0} i række {1},
{0} is blocked so this transaction cannot proceed,"{0} er blokeret, så denne transaktion kan ikke fortsætte",
{0} is mandatory,{0} er obligatorisk,
{0} is mandatory for Item {1},{0} er obligatorisk for vare {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} er obligatorisk. Måske er valutaveksling record ikke lavet for {1} til {2}.,
{0} is not a stock Item,{0} er ikke en lagervare,
{0} is not a valid Batch Number for Item {1},{0} er ikke et gyldigt partinummer for vare {1},
{0} is not added in the table,{0} tilføjes ikke i tabellen,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} er nu standard regnskabsår. Opdater venligst din browser for at ændringen træder i kraft.,
{0} is on hold till {1},{0} er på vent indtil {1},
{0} item found.,{0} vare fundet.,
{0} items found.,{0} fundne varer.,
{0} items in progress,{0} igangværende varer,
{0} items produced,{0} varer produceret,
{0} must appear only once,{0} må kun optræde én gang,
{0} must be negative in return document,{0} skal være negativ til retur dokument,
{0} not allowed to transact with {1}. Please change the Company.,{0} må ikke transagere med {1}. Vær venlig at ændre selskabet.,
{0} not found for item {1},{0} ikke fundet for punkt {1},
{0} parameter is invalid,{0} -parameteren er ugyldig,
{0} payment entries can not be filtered by {1},{0} betalingsposter ikke kan filtreres med {1},
{0} should be a value between 0 and 100,{0} skal være en værdi mellem 0 og 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} enheder af [{1}] (# Form / vare / {1}) findes i [{2}] (# Form / Lager / {2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} enheder af {1} skal bruges i {2} på {3} {4} til {5} for at gennemføre denne transaktion.,
{0} units of {1} needed in {2} to complete this transaction.,{0} enheder af {1} skal bruges i {2} at fuldføre denne transaktion.,
{0} valid serial nos for Item {1},{0} gyldige serienumre for vare {1},
{0} variants created.,{0} varianter oprettet.,
{0} {1} created,{0} {1} oprettet,
{0} {1} does not exist,{0} {1} findes ikke,
{0} {1} has been modified. Please refresh.,{0} {1} er blevet ændret. Venligst opdater.,
{0} {1} has not been submitted so the action cannot be completed,"{0} {1} er ikke indsendt, så handlingen kan ikke gennemføres",
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} er forbundet med {2}, men Selskabskonto er {3}",
{0} {1} is cancelled or closed,{0} {1} er aflyst eller lukket,
{0} {1} is cancelled or stopped,{0} {1} er aflyst eller stoppet,
{0} {1} is cancelled so the action cannot be completed,"{0} {1} er annulleret, så handlingen kan ikke gennemføres",
{0} {1} is closed,{0} {1} er lukket,
{0} {1} is disabled,{0} {1} er deaktiveret,
{0} {1} is frozen,{0} {1} er frosset,
{0} {1} is fully billed,{0} {1} er fuldt faktureret,
{0} {1} is not active,{0} {1} er ikke aktiv,
{0} {1} is not associated with {2} {3},{0} {1} er ikke forbundet med {2} {3},
{0} {1} is not present in the parent company,{0} {1} er ikke til stede i moderselskabet,
{0} {1} is not submitted,{0} {1} er ikke godkendt,
{0} {1} is {2},{0} {1} er {2},
{0} {1} must be submitted,{0} {1} skal godkendes,
{0} {1} not in any active Fiscal Year.,{0} {1} ikke i noget aktivt regnskabsår.,
{0} {1} status is {2},{0} {1} status er {2},
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,{0} {1}: konto {2} af typen Resultatopgørelse må ikke angives i Åbningsbalancen,
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Konto {2} tilhører ikke firma {3},
{0} {1}: Account {2} is inactive,{0} {1}: Konto {2} er inaktiv,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: Regnskabsføring for {2} kan kun foretages i valuta: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Omkostningssted er obligatorisk for vare {2},
{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,{0} {1}: omkostningssted er påkrævet for resultatopgørelsekonto {2}. Opret venligst et standard omkostningssted for firmaet.,
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: omkostningssted {2} tilhører ikke firma {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: Kunden er påkrævet mod Tilgodehavende konto {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: Enten debet- eller kreditbeløb er påkrævet for {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: Leverandøren er påkrævet mod Betalings konto {2},
{0}% Billed,{0}% Faktureret,
{0}% Delivered,{0}% Leveret,
{0}: From {1},{0}: Fra {1},
{0}: {1} does not exists,{0}: {1} eksisterer ikke,
{0}: {1} not found in Invoice Details table,{0}: {1} ikke fundet i fakturedetaljer tabel,
{} of {},{} af {},
Assigned To,Tildelt til,
Chat,Chat,
Completed By,Færdiggjort af,
County,Anvendes ikke,
Day of Week,Ugedag,
"Dear System Manager,","Kære Systemadministrator,",
Default Value,Standardværdi,
Email Group,E-mailgruppe,
Email Settings,E-mail-indstillinger,
Email not sent to {0} (unsubscribed / disabled),E-mail ikke sendt til {0} (afmeldt / deaktiveret),
Error Message,Fejl besked,
Fieldtype,FieldType,
Help Articles,Hjælp artikler,
ID,ID,
Images,Billeder,
Import,Import,
Language,Sprog,
Likes,Likes,
Merge with existing,Sammenlæg med eksisterende,
Office,Kontor,
Orientation,Orientering,
Parent,Parent,
Passive,Inaktiv,
Payment Failed,Betaling mislykkedes,
Permanent,Permanent,
Personal,Personlig,
Plant,Plant,
Post,Indlæg,
Postal,Postal,
Postal Code,postnummer,
Previous,Forrige,
Provider,provider,
Read Only,Skrivebeskyttet,
Recipient,Modtager,
Reviews,Anmeldelser,
Sender,Afsender,
Shop,Butik,
Subsidiary,Datterselskab,
There is some problem with the file url: {0},Der er nogle problemer med filen url: {0},
There were errors while sending email. Please try again.,Der var fejl under afsendelse af e-mail. Prøv venligst igen.,
Values Changed,Værdier ændret,
or,eller,
Ageing Range 4,Aldringsområde 4,
Allocated amount cannot be greater than unadjusted amount,Tildelt beløb kan ikke være større end ujusteret beløb,
Allocated amount cannot be negative,Tildelt beløb kan ikke være negativt,
"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","Forskelskonto skal være en konto for aktiver / passiver, da denne aktieindgang er en åbningsindgang",
Import Successful,Import Succesfuld,
Please save first,Gem først,
Price not found for item {0} in price list {1},Pris ikke fundet for vare {0} i prisliste {1},
Warehouse Type,Lagertype,
'Date' is required,&#39;Dato&#39; er påkrævet,
Budgets,budgetter,
Bundle Qty,Bundtmængde,
Company GSTIN,Firma GSTIN,
Company field is required,Virksomhedsfelt er påkrævet,
Creating Dimensions...,Opretter dimensioner ...,
Duplicate entry against the item code {0} and manufacturer {1},Kopiér indtastning mod varekoden {0} og producenten {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,"Ugyldig GSTIN! Det input, du har indtastet, stemmer ikke overens med GSTIN-formatet for UIN-indehavere eller ikke-residente OIDAR-tjenesteudbydere",
Invoice Grand Total,Faktura Grand Total,
Last carbon check date cannot be a future date,Sidste dato for kulstofkontrol kan ikke være en fremtidig dato,
Make Stock Entry,Foretag lagerindtastning,
Quality Feedback,Kvalitetsfeedback,
Quality Feedback Template,Kvalitetsfeedback-skabelon,
Rules for applying different promotional schemes.,Regler for anvendelse af forskellige salgsfremmende ordninger.,
Show {0},Vis {0},
"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Specialtegn undtagen &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Og &quot;}}&quot; er ikke tilladt i navngivningsserier {0}",
Target Details,Måldetaljer,
{0} already has a Parent Procedure {1}.,{0} har allerede en overordnet procedure {1}.,
API,API,
Annual,Årligt,
Change,Ændring,
Contact Email,Kontakt e-mail,
Export Type,Eksporttype,
From Date,Fra dato,
Group By,Gruppér efter,
Invalid URL,ugyldig URL,
Landscape,Landskab,
Last Sync On,Sidste synkronisering,
Naming Series,Navngivningsnummerserie,
No data to export,Ingen data at eksportere,
Portrait,Portræt,
Print Heading,Overskrift,
Scheduler Inactive,Planlægning inaktiv,
Scheduler is inactive. Cannot import data.,Scheduler er inaktiv. Data kan ikke importeres.,
Show Document,Vis dokument,
Show Traceback,Vis traceback,
Video,video,
Webhook Secret,Webhook Secret,
% Of Grand Total,% Af det samlede antal,
<b>Company</b> is a mandatory filter.,<b>Virksomheden</b> er et obligatorisk filter.,
<b>From Date</b> is a mandatory filter.,<b>Fra dato</b> er et obligatorisk filter.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>Fra tid</b> kan ikke være senere end <b>Til tid</b> for {0},
<b>To Date</b> is a mandatory filter.,<b>Til dato</b> er et obligatorisk filter.,
A new appointment has been created for you with {0},En ny aftale er oprettet til dig med {0},
Account Value,Kontoværdi,
Account is mandatory to get payment entries,Konto er obligatorisk for at få betalingsposter,
Account is not set for the dashboard chart {0},Konto er ikke indstillet til betjeningspanelet {0},
Account {0} does not exists in the dashboard chart {1},Konto {0} findes ikke i kontrolpanelet {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Konto: <b>{0}</b> er kapital Arbejde pågår og kan ikke opdateres af journalindtastning,
Account: {0} is not permitted under Payment Entry,Konto: {0} er ikke tilladt under betalingsindtastning,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,Regnskabsdimension <b>{0}</b> er påkrævet for &#39;Balance&#39; -konto {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,Regnskabsdimension <b>{0}</b> er påkrævet for &#39;Resultat og tab&#39; konto {1},
Accounting Masters,Regnskabsopsætning,
Accounting Period overlaps with {0},Regnskabsperiode overlapper med {0},
Activity,Aktivitet,
Add / Manage Email Accounts.,Tilføj / Håndter e-mail-konti.,
Add Child,Tilføj ny,
Add Multiple,Tilføj flere,
Add Participants,Tilføj deltagerne,
Add to Featured Item,Føj til den valgte vare,
Add your review,Tilføj din anmeldelse,
Add/Edit Coupon Conditions,Tilføj / rediger kuponbetingelser,
Added to Featured Items,Føjet til Featured Items,
Added {0} ({1}),Tilføjet {0} ({1}),
Address Line 1,Adresse,
Addresses,Adresser,
Admission End Date should be greater than Admission Start Date.,Indgangssluttedato skal være større end startdato for optagelse.,
All,Alle,
All bank transactions have been created,Alle banktransaktioner er oprettet,
All the depreciations has been booked,Alle afskrivninger er booket,
Allow Resetting Service Level Agreement from Support Settings.,Tillad nulstilling af serviceniveauaftale fra supportindstillinger.,
Amount of {0} is required for Loan closure,Der kræves et beløb på {0} til lukning af lånet,
Applied Coupon Code,Anvendt kuponkode,
Apply Coupon Code,Anvend kuponkode,
Appointment Booking,Udnævnelsesreservation,
"As there are existing transactions against item {0}, you can not change the value of {1}","Da der er eksisterende transaktioner mod element {0}, kan du ikke ændre værdien af {1}",
Asset Id,Aktiv-id,
Asset Value,Aktiveringsværdi,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,Justering af aktiver for værdien kan ikke bogføres før Asset&#39;s købsdato <b>{0}</b> .,
Asset {0} does not belongs to the custodian {1},Akti {0} hører ikke til depotmand {1},
Asset {0} does not belongs to the location {1},Aktiv {0} hører ikke til placeringen {1},
At least one of the Applicable Modules should be selected,Mindst et af de relevante moduler skal vælges,
Atleast one asset has to be selected.,Atleast én aktiv skal vælges.,
Authentication Failed,Godkendelse mislykkedes,
Automatic Reconciliation,Automatisk afstemning,
Available For Use Date,Tilgængelig til brugsdato,
Available Stock,Tilgængelig lager,
"Available quantity is {0}, you need {1}","Tilgængelig mængde er {0}, du har brug for {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,BOM-sammenligningsværktøj,
BOM recursion: {0} cannot be child of {1},BOM-rekursion: {0} kan ikke være barn af {1},
BOM recursion: {0} cannot be parent or child of {1},BOM-rekursion: {0} kan ikke være forælder eller barn til {1},
Back to Home,Tilbage til hjemmet,
Back to Messages,Tilbage til meddelelser,
Bank Data mapper doesn't exist,Bankdatakortlægning findes ikke,
Bank Details,Bank detaljer,
Bank account '{0}' has been synchronized,Bankkonto &#39;{0}&#39; er synkroniseret,
Bank account {0} already exists and could not be created again,Bankkonto {0} findes allerede og kunne ikke oprettes igen,
Bank accounts added,Bankkonti tilføjet,
Batch no is required for batched item {0},Batch nr er påkrævet for batch vare {0},
Billing Date,Faktureringsdato,
Billing Interval Count cannot be less than 1,Faktureringsintervalloptælling kan ikke være mindre end 1,
Blue,Blå,
Book,bog,
Book Appointment,Book aftale,
Brand,Varemærke,
Browse,Gennemse,
Call Connected,Opkald tilsluttet,
Call Disconnected,Opkald frakoblet,
Call Missed,Opkald mistet,
Call Summary,Opkaldsoversigt,
Call Summary Saved,Opkaldsoversigt gemt,
Cancelled,Annulleret,
Cannot Calculate Arrival Time as Driver Address is Missing.,"Kan ikke beregne ankomsttid, da driveradressen mangler.",
Cannot Optimize Route as Driver Address is Missing.,"Kan ikke optimere ruten, da driveradressen mangler.",
Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,"Kan ikke udføre opgave {0}, da dens afhængige opgave {1} ikke er komplet / annulleret.",
Cannot find a matching Item. Please select some other value for {0}.,Kan ikke finde en matchende Item. Vælg en anden værdi for {0}.,
"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings",Kan ikke overbillede for vare {0} i række {1} mere end {2}. For at tillade overfakturering skal du angive kvote i Kontoindstillinger,
"Capacity Planning Error, planned start time can not be same as end time","Kapacitetsplanlægningsfejl, planlagt starttid kan ikke være det samme som sluttid",
Categories,Kategorier,
Changes in {0},Ændringer i {0},
Chart,Diagram,
Choose a corresponding payment,Vælg en tilsvarende betaling,
Click on the link below to verify your email and confirm the appointment,Klik på linket herunder for at bekræfte din e-mail og bekræfte aftalen,
Close,Luk,
Communication,Kommunikation,
Compact Item Print,Kompakt Item Print,
Company,Firma,
Company of asset {0} and purchase document {1} doesn't matches.,Virksomhed med aktiv {0} og købsdokument {1} stemmer ikke overens.,
Compare BOMs for changes in Raw Materials and Operations,Sammenlign BOM&#39;er for ændringer i råvarer og operationer,
Compare List function takes on list arguments,Funktionen Sammenlign liste tager listeargumenter på,
Complete,Komplet,
Completed,Afsluttet,
Completed Quantity,Fuldført mængde,
Connect your Exotel Account to ERPNext and track call logs,Forbind din Exotel-konto til ERPNext og spor opkaldslogger,
Connect your bank accounts to ERPNext,Tilslut dine bankkonti til ERPNext,
Contact Seller,Kontakt sælger,
Continue,Fortsætte,
Cost Center: {0} does not exist,Omkostningscenter: {0} findes ikke,
Couldn't Set Service Level Agreement {0}.,Kunne ikke indstille serviceniveauaftale {0}.,
Country,Land,
Country Code in File does not match with country code set up in the system,"Landekode i fil stemmer ikke overens med landekoden, der er oprettet i systemet",
Create New Contact,Opret ny kontakt,
Create New Lead,Opret ny kundeemne,
Create Pick List,Opret plukliste,
Create Quality Inspection for Item {0},Opret kvalitetskontrol for vare {0},
Creating Accounts...,Opretter konti ...,
Creating bank entries...,Opretter bankposter ...,
Credit limit is already defined for the Company {0},Kreditgrænsen er allerede defineret for virksomheden {0},
Ctrl + Enter to submit,Ctrl + Enter for at indsende,
Ctrl+Enter to submit,Ctrl + Enter for at indsende,
Currency,Valuta,
Current Status,Aktuel status,
Customer PO,Kundepost,
Customize,Tilpas,
Daily,Daglig,
Date,Dato,
Date of Birth cannot be greater than Joining Date.,Fødselsdato kan ikke være større end tiltrædelsesdato.,
Dear,Kære,
Default,Standard,
Define coupon codes.,Definer kuponkoder.,
Delayed Days,Forsinkede dage,
Delete,Slet,
Delivered Quantity,Leveret mængde,
Delivery Notes,Leveringsanvisninger,
Depreciated Amount,Afskrevet beløb,
Description,Beskrivelse,
Designation,Betegnelse,
Difference Value,Forskellen Værdi,
Dimension Filter,Dimension Filter,
Disabled,Deaktiveret,
Disbursement and Repayment,Udbetaling og tilbagebetaling,
Distance cannot be greater than 4000 kms,Afstand kan ikke være større end 4000 km,
Do you want to submit the material request,Ønsker du at indsende den materielle anmodning,
Doctype,doctype,
Document {0} successfully uncleared,Dokument {0} er uklaret,
Download Template,Hent skabelon,
Dr,Dr.,
Due Date,Forfaldsdato,
Duplicate,Duplikér,
Duplicate Project with Tasks,Kopier projekt med opgaver,
Duplicate project has been created,Der er oprettet duplikatprojekt,
E-Way Bill JSON can only be generated from a submitted document,E-Way Bill JSON kan kun genereres fra et indsendt dokument,
E-Way Bill JSON can only be generated from submitted document,E-Way Bill JSON kan kun genereres fra det indsendte dokument,
E-Way Bill JSON cannot be generated for Sales Return as of now,E-Way Bill JSON kan ikke genereres til salgsafkast fra nu,
ERPNext could not find any matching payment entry,ERPNext kunne ikke finde nogen matchende betalingsindgang,
Earliest Age,Tidligste alder,
Edit Details,Rediger detaljer,
Edit Profile,Rediger profil,
Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Enten GST Transporter ID eller køretøjsnummer er påkrævet, hvis transportform er vej",
Email,EMail,
Email Campaigns,E-mail-kampagner,
Employee ID is linked with another instructor,Medarbejder-ID er forbundet med en anden instruktør,
Employee Tax and Benefits,Medarbejder skat og fordele,
Employee is required while issuing Asset {0},Medarbejder er påkrævet ved udstedelse af aktiver {0},
Employee {0} does not belongs to the company {1},Medarbejder {0} hører ikke til virksomheden {1},
Enable Auto Re-Order,Aktivér automatisk ombestilling,
End Date of Agreement can't be less than today.,Slutdato for aftalen kan ikke være mindre end i dag.,
End Time,End Time,
Energy Point Leaderboard,Energipunkt Leaderboard,
Enter API key in Google Settings.,Indtast API-nøglen i Google-indstillinger.,
Enter Supplier,Indtast leverandør,
Enter Value,Indtast værdi,
Entity Type,Entity Type,
Error,Fejl,
Error in Exotel incoming call,Fejl i Exotel indgående opkald,
Error: {0} is mandatory field,Fejl: {0} er et obligatorisk felt,
Exception occurred while reconciling {0},Undtagelse skete under afstemning af {0},
Expected and Discharge dates cannot be less than Admission Schedule date,Forventede datoer og decharge-datoer kan ikke være mindre end datoen for optagelsesplan,
Expired,Udløbet,
Export,Udlæs,
Export not allowed. You need {0} role to export.,Udlæsning er ikke tilladt. Du har brug for {0} rolle for at kunne udlæse.,
Failed to add Domain,Kunne ikke tilføje domæne,
Fetch Items from Warehouse,Hent genstande fra lageret,
Fetching...,Henter ...,
Field,Felt,
File Manager,Filadministrator,
Filters,Filtre,
Finding linked payments,Finde tilknyttede betalinger,
Fleet Management,Firmabiler,
Following fields are mandatory to create address:,Følgende felter er obligatoriske for at oprette adresse:,
For Month,For måned,
"For item {0} at row {1}, count of serial numbers does not match with the picked quantity",For punkt {0} i række {1} stemmer antallet af serienumre ikke med det valgte antal,
For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),"Til operation {0}: Mængde ({1}) kan ikke være greter end mængde, der verserer ({2})",
For quantity {0} should not be greater than work order quantity {1},For mængde {0} bør ikke være større end mængden af arbejdsordre {1},
Free item not set in the pricing rule {0},Gratis vare ikke angivet i prisreglen {0},
From Date and To Date are Mandatory,Fra dato og til dato er obligatorisk,
From employee is required while receiving Asset {0} to a target location,"Fra medarbejder er påkrævet, mens du modtager Asset {0} til en målplacering",
Future Payment Amount,Fremtidig betalingsbeløb,
Future Payment Ref,Fremtidig betaling Ref,
Future Payments,Fremtidige betalinger,
GST HSN Code does not exist for one or more items,GST HSN-kode findes ikke for et eller flere elementer,
Generate E-Way Bill JSON,Generer E-Way Bill JSON,
Get Items,Hent varer,
Get Outstanding Documents,Få fremragende dokumenter,
Goal,Goal,
Greater Than Amount,Større end beløb,
Green,Grøn,
Group,Gruppe,
Group By Customer,Grupper efter kunde,
Group By Supplier,Gruppe efter leverandør,
Group Node,Gruppe Node,
Group Warehouses cannot be used in transactions. Please change the value of {0},Gruppelagre kan ikke bruges i transaktioner. Skift værdien på {0},
Help,Hjælp,
Help Article,Hjælp artikel,
"Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Hjælper dig med at holde styr på kontrakter baseret på leverandør, kunde og medarbejder",
Helps you manage appointments with your leads,Hjælper dig med at administrere aftaler med dine kundeemner,
Home,Hjem,
IBAN is not valid,IBAN er ikke gyldig,
Import Data from CSV / Excel files.,Importer data fra CSV / Excel-filer.,
In Progress,I gang,
Incoming call from {0},Indgående opkald fra {0},
Incorrect Warehouse,Forkert lager,
Invalid Barcode. There is no Item attached to this barcode.,Ugyldig stregkode. Der er ingen ting knyttet til denne stregkode.,
Invalid credentials,Ugyldige legitimationsoplysninger,
Invite as User,Inviter som Bruger,
Issue Priority.,Udgaveprioritet.,
Issue Type.,Udgavetype.,
"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Det ser ud som om der er et problem med serverens stribekonfiguration. I tilfælde af fejl bliver beløbet refunderet til din konto.,
Item Reported,Emne rapporteret,
Item listing removed,Elementlisten er fjernet,
Item quantity can not be zero,Varemængde kan ikke være nul,
Item taxes updated,Vareafgift opdateret,
Item {0}: {1} qty produced. ,Vare {0}: {1} produceret antal.,
Joining Date can not be greater than Leaving Date,Deltagelsesdato kan ikke være større end forladelsesdato,
Lab Test Item {0} already exist,Laboratorieprøvevare {0} findes allerede,
Last Issue,Sidste udgave,
Latest Age,Seneste alder,
Leaves Taken,Blade taget,
Less Than Amount,Mindre end beløb,
Liabilities,passiver,
Loading...,Indlæser ...,
Loan Applications from customers and employees.,Låneansøgninger fra kunder og ansatte.,
Loan Processes,Låneprocesser,
Loan Type for interest and penalty rates,Lånetype til renter og sanktioner,
Loans,lån,
Loans provided to customers and employees.,Lån ydet til kunder og ansatte.,
Location,Lokation,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Ligner nogen har sendt dig til en ufuldstændig webadresse. Spørg dem om at se på det.,
Make Journal Entry,Make Kassekladde,
Make Purchase Invoice,Make købsfaktura,
Manufactured,fremstillet,
Mark Work From Home,Markér arbejde hjemmefra,
Master,Master,
Max strength cannot be less than zero.,Maks styrke kan ikke være mindre end nul.,
Maximum attempts for this quiz reached!,Maksimale forsøg på denne quiz nået!,
Message,Besked,
Missing Values Required,Manglende værdier skal angives,
Mobile No,Mobiltelefonnr.,
Mobile Number,Mobiltelefonnr.,
Month,Måned,
Name,Navn,
Near you,I nærheden af dig,
Net Profit/Loss,Netto fortjeneste / tab,
New Expense,Ny udgift,
New Invoice,Ny faktura,
New Payment,Ny betaling,
New release date should be in the future,Ny udgivelsesdato skulle være i fremtiden,
Newsletter,Nyhedsbrev,
No Account matched these filters: {},Ingen konto matchede disse filtre: {},
No communication found.,Ingen kommunikation fundet.,
No correct answer is set for {0},Intet korrekt svar er indstillet til {0},
No description,Ingen beskrivelse,
No issue has been raised by the caller.,"Intet spørgsmål er blevet rejst af den, der ringer.",
No items to publish,Ingen poster at offentliggøre,
No outstanding invoices found,Der blev ikke fundet nogen udestående fakturaer,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,"Der blev ikke fundet nogen udestående fakturaer for {0} {1}, der opfylder de angivne filtre.",
No outstanding invoices require exchange rate revaluation,Ingen udestående fakturaer kræver revaluering af valutakurser,
No reviews yet,Ingen bedømmelser endnu,
No views yet,Ingen visninger endnu,
Non stock items,Ikke-lagervarer,
Not Allowed,Ikke tilladt,
Not allowed to create accounting dimension for {0},Ikke tilladt at oprette regnskabsmæssig dimension for {0},
Not permitted. Please disable the Lab Test Template,Ikke tilladt. Deaktiver venligst Laboratorieprøveskabelonen,
Note,Bemærk,
Notes: ,Bemærkninger:,
On Converting Opportunity,Om konvertering af mulighed,
On Purchase Order Submission,Ved levering af indkøbsordre,
On Sales Order Submission,Ved levering af ordreordre,
On Task Completion,Ved færdiggørelse af opgaver,
On {0} Creation,Ved {0} Oprettelse,
Only .csv and .xlsx files are supported currently,Kun .csv- og .xlsx-filer understøttes i øjeblikket,
Open,Åbne,
Open Contact,Åbn kontakt,
Open Lead,Åben leder,
Opening and Closing,Åbning og lukning,
Operating Cost as per Work Order / BOM,Driftsomkostninger pr. Arbejdsordre / BOM,
Order Amount,Bestillingsbeløb,
Page {0} of {1},Side {0} af {1},
Paid amount cannot be less than {0},Det betalte beløb kan ikke være mindre end {0},
Parent Company must be a group company,Moderselskabet skal være et koncernselskab,
Passing Score value should be between 0 and 100,Passing Score-værdien skal være mellem 0 og 100,
Patient History,Patienthistorie,
Pause,Pause,
Pay,Betale,
Payment Document Type,Betalingsdokumenttype,
Payment Name,Betalingsnavn,
Pending,Afventer,
Performance,Ydeevne,
Period based On,Periode baseret på,
Perpetual inventory required for the company {0} to view this report.,Der kræves evigvarende beholdning for virksomheden {0} for at se denne rapport.,
Phone,Telefonnr.,
Pick List,Vælg liste,
Plaid authentication error,Plaid-godkendelsesfejl,
Plaid public token error,Plaid public token error,
Plaid transactions sync error,Fejl i synkronisering af pladetransaktioner,
Please check the error log for details about the import errors,Kontroller fejlloggen for detaljer om importfejl,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,Opret venligst <b>DATEV-indstillinger</b> for firma <b>{}</b> .,
Please create adjustment Journal Entry for amount {0} ,Opret venligst justering af journalindtastning for beløb {0},
Please do not create more than 500 items at a time,Opret venligst ikke mere end 500 varer ad gangen,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},"Indtast <b>Differences-konto,</b> eller indstil standard- <b>lagerjusteringskonto</b> for firmaet {0}",
Please enter GSTIN and state for the Company Address {0},Indtast GSTIN og angiv firmaadressen {0},
Please enter Item Code to get item taxes,Indtast varenummer for at få vareskatter,
Please enter Warehouse and Date,Indtast venligst lager og dato,
Please login as a Marketplace User to edit this item.,Log ind som Marketplace-bruger for at redigere denne vare.,
Please login as a Marketplace User to report this item.,Log ind som Marketplace-bruger for at rapportere denne vare.,
Please select <b>Template Type</b> to download template,Vælg <b>skabelontype for</b> at downloade skabelon,
Please select Customer first,Vælg først kunde,
Please select Item Code first,Vælg først varekode,
Please select a Delivery Note,Vælg en leveringsnotat,
Please select a Sales Person for item: {0},Vælg en salgsperson for varen: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Vælg venligst en anden betalingsmetode. Stripe understøtter ikke transaktioner i valuta &#39;{0}&#39;,
Please select the customer.,Vælg kunden.,
Please set a Supplier against the Items to be considered in the Purchase Order.,"Indstil en leverandør mod de varer, der skal tages i betragtning i indkøbsordren.",
Please set account heads in GST Settings for Compnay {0},Indstil kontohoveder i GST-indstillinger for Compnay {0},
Please set an email id for the Lead {0},Angiv en e-mail-id for Lead {0},
Please set default UOM in Stock Settings,Angiv standard UOM i lagerindstillinger,
Please set filter based on Item or Warehouse due to a large amount of entries.,Indstil filter baseret på vare eller lager på grund af et stort antal poster.,
Please set up the Campaign Schedule in the Campaign {0},Opsæt kampagneplan i kampagnen {0},
Please set valid GSTIN No. in Company Address for company {0},Angiv et gyldigt GSTIN-nr. I firmanavn for firma {0},
Please set {0},Angiv {0},customer
Please setup a default bank account for company {0},Opret en standard bankkonto for firmaet {0},
Please specify,Angiv venligst,
Please specify a {0},Angiv en {0},lead
Printing,Udskrivning,
Priority,Prioritet,
Priority has been changed to {0}.,Prioritet er ændret til {0}.,
Priority {0} has been repeated.,Prioritet {0} er blevet gentaget.,
Processing XML Files,Behandler XML-filer,
Profitability,Rentabilitet,
Project,Sag,
Provide the academic year and set the starting and ending date.,"Angiv studieåret, og angiv start- og slutdato.",
Public token is missing for this bank,Der mangler en offentlig token til denne bank,
Publish,Offentliggøre,
Publish 1 Item,Publicer 1 vare,
Publish Items,Publicer genstande,
Publish More Items,Publicer flere varer,
Publish Your First Items,Publicer dine første varer,
Publish {0} Items,Publicer {0} varer,
Published Items,Udgivne varer,
Purchase Invoice cannot be made against an existing asset {0},Købsfaktura kan ikke foretages mod et eksisterende aktiv {0},
Purchase Invoices,Køb fakturaer,
Purchase Orders,Indkøbsordre,
Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,"Købskvittering har ingen varer, som Beholdningsprøve er aktiveret til.",
Purchase Return,Indkøb Return,
Qty of Finished Goods Item,Antal færdige varer,
Quality Inspection required for Item {0} to submit,Kvalitetskontrol kræves for at indsende vare {0},
Quantity to Manufacture,Mængde til fremstilling,
Quantity to Manufacture can not be zero for the operation {0},Mængde til fremstilling kan ikke være nul for handlingen {0},
Quarterly,Kvartalsvis,
Queued,Sat i kø,
Quick Entry,Hurtig indtastning,
Quiz {0} does not exist,Quiz {0} findes ikke,
Quotation Amount,Tilbudsmængde,
Rate or Discount is required for the price discount.,Pris eller rabat kræves for prisrabatten.,
Reason,Årsag,
Reconcile Entries,Forene poster,
Reconcile this account,Afstem denne konto,
Reconciled,Afstemt,
Recruitment,Rekruttering,
Red,Rød,
Refreshing,Opfrisker,
Release date must be in the future,Udgivelsesdato skal være i fremtiden,
Relieving Date must be greater than or equal to Date of Joining,Fritagelsesdato skal være større end eller lig med tiltrædelsesdato,
Rename,Omdøb,
Rename Not Allowed,Omdøb ikke tilladt,
Report Item,Rapporter element,
Report this Item,Rapporter denne vare,
Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Reserveret antal til underentreprise: Mængde af råvarer til fremstilling af underentrepriser.,
Reset,Nulstil,
Reset Service Level Agreement,Nulstil aftale om serviceniveau,
Resetting Service Level Agreement.,Nulstilling af serviceniveauaftale.,
Return amount cannot be greater unclaimed amount,Returneringsbeløb kan ikke være større end ikke-krævet beløb,
Review,Anmeldelse,
Room,Værelse,
Room Type,Værelses type,
Row # ,Række #,
Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Række nr. {0}: Accepteret lager og leverandørlager kan ikke være det samme,
Row #{0}: Cannot delete item {1} which has already been billed.,"Række nr. {0}: Kan ikke slette element {1}, som allerede er faktureret.",
Row #{0}: Cannot delete item {1} which has already been delivered,"Række nr. {0}: Kan ikke slette emne {1}, der allerede er leveret",
Row #{0}: Cannot delete item {1} which has already been received,"Rækkenr. {0}: Kan ikke slette varen {1}, som allerede er modtaget",
Row #{0}: Cannot delete item {1} which has work order assigned to it.,"Række nr. {0}: Kan ikke slette element {1}, der har tildelt en arbejdsrekkefølge.",
Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,"Række nr. {0}: Kan ikke slette element {1}, der er tildelt kundens indkøbsordre.",
Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,"Række nr. {0}: Kan ikke vælge leverandørlager, mens råmaterialer leveres til underleverandør",
Row #{0}: Cost Center {1} does not belong to company {2},Række nr. {0}: Omkostningscenter {1} hører ikke til firmaet {2},
Row #{0}: Operation {1} is not completed for {2} qty of finished goods in Work Order {3}. Please update operation status via Job Card {4}.,Række nr. {0}: Betjening {1} er ikke afsluttet for {2} antal færdige varer i arbejdsordre {3}. Opdater driftsstatus via Jobkort {4}.,
Row #{0}: Payment document is required to complete the transaction,Række nr. {0}: Betalingsdokument er påkrævet for at gennemføre transaktionen,
Row #{0}: Serial No {1} does not belong to Batch {2},Række nr. {0}: Serienummer {1} hører ikke til batch {2},
Row #{0}: Service End Date cannot be before Invoice Posting Date,Række nr. {0}: Service-slutdato kan ikke være før fakturaens udgivelsesdato,
Row #{0}: Service Start Date cannot be greater than Service End Date,Række nr. {0}: Service-startdato kan ikke være større end service-slutdato,
Row #{0}: Service Start and End Date is required for deferred accounting,Række nr. {0}: Service start og slutdato er påkrævet for udskudt regnskab,
Row {0}: Invalid Item Tax Template for item {1},Række {0}: Ugyldig skabelon for varebeskatning for vare {1},
Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Række {0}: Mængde ikke tilgængeligt for {4} i lager {1} på posttidspunktet for posten ({2} {3}),
Row {0}: user has not applied the rule {1} on the item {2},Række {0}: bruger har ikke anvendt reglen {1} på emnet {2},
Row {0}:Sibling Date of Birth cannot be greater than today.,Række {0}: søskendes fødselsdato kan ikke være større end i dag.,
Row({0}): {1} is already discounted in {2},Række ({0}): {1} er allerede nedsat i {2},
Rows Added in {0},Rækker tilføjet i {0},
Rows Removed in {0},Rækker blev fjernet i {0},
Save,Gem,
Save Item,Gem vare,
Saved Items,Gemte varer,
Search Items ...,Søg efter varer ...,
Search for a payment,Søg efter en betaling,
Search for anything ...,Søg efter noget ...,
Search results for,Søgeresultater for,
Select All,Vælg alt,
Select Difference Account,Vælg Difference Account,
Select a Default Priority.,Vælg en standardprioritet.,
Select a company,Vælg et firma,
Select finance book for the item {0} at row {1},Vælg finansbog for varen {0} i række {1},
Select only one Priority as Default.,Vælg kun en prioritet som standard.,
Seller Information,Sælgerinformation,
Send,Send,
Send a message,Send en besked,
Sending,Sender,
Sends Mails to lead or contact based on a Campaign schedule,Sender e-mails til leder eller kontakt baseret på en kampagneplan,
Serial Number Created,Serienummer oprettet,
Serial Numbers Created,Serienumre oprettet,
Serial no(s) required for serialized item {0},Serienummer (er) kræves til serienummer {0},
Series,Nummerserie,
Server Error,Server Fejl,
Service Level Agreement has been changed to {0}.,Serviceniveauaftale er ændret til {0}.,
Service Level Agreement was reset.,Serviceniveauaftale blev nulstillet.,
Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Serviceniveauaftale med entitetstype {0} og enhed {1} findes allerede.,
Set,Sæt,
Set Meta Tags,Indstil metatags,
Set {0} in company {1},Sæt {0} i firma {1},
Setup,Opsætning,
Setup Wizard,Opsætningsassistent,
Shift Management,Shift Management,
Show Future Payments,Vis fremtidige betalinger,
Show Linked Delivery Notes,Vis tilknyttede leveringsnotater,
Show Sales Person,Vis salgsperson,
Show Stock Ageing Data,Vis lagringsalder,
Show Warehouse-wise Stock,Vis lager-vis lager,
Size,Størrelse,
Something went wrong while evaluating the quiz.,Noget gik galt under evalueringen af quizzen.,
Sr,Sr,
Start,Start,
Start Date cannot be before the current date,Startdato kan ikke være før den aktuelle dato,
Start Time,Start Time,
Status,Status,
Status must be Cancelled or Completed,Status skal annulleres eller afsluttes,
Stock Balance Report,Aktiebalancerapport,
Stock Entry has been already created against this Pick List,Aktieindtastning er allerede oprettet mod denne plukliste,
Stock Ledger ID,Lagerstatus-ID,
Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,"Aktieværdi ({0}) og kontosaldo ({1}) er ikke synkroniseret for konto {2}, og det er tilknyttede lagre.",
Stores - {0},Butikker - {0},
Student with email {0} does not exist,Student med e-mail {0} findes ikke,
Submit Review,Indsend anmeldelse,
Submitted,Godkendt,
Supplier Addresses And Contacts,Leverandør Adresser og kontaktpersoner,
Synchronize this account,Synkroniser denne konto,
Tag,tag,
Target Location is required while receiving Asset {0} from an employee,"Målplacering er påkrævet, mens du modtager aktiver {0} fra en medarbejder",
Target Location is required while transferring Asset {0},Målplacering er påkrævet under overførsel af aktiver {0},
Target Location or To Employee is required while receiving Asset {0},"Målplacering eller medarbejder kræves, mens du modtager aktiver {0}",
Task's {0} End Date cannot be after Project's End Date.,Opgavens {0} slutdato kan ikke være efter projektets slutdato.,
Task's {0} Start Date cannot be after Project's End Date.,Opgavens {0} startdato kan ikke være efter projektets slutdato.,
Tax Account not specified for Shopify Tax {0},Skatekonto er ikke specificeret for Shopify-skat {0},
Tax Total,Skat i alt,
Template,Skabelon,
The Campaign '{0}' already exists for the {1} '{2}',Kampagnen &#39;{0}&#39; findes allerede for {1} &#39;{2}&#39;,
The difference between from time and To Time must be a multiple of Appointment,Forskellen mellem tid og tid skal være en mangfoldighed af udnævnelse,
The field Asset Account cannot be blank,Feltet Asset Account kan ikke være tomt,
The field Equity/Liability Account cannot be blank,Feltet Aktie / Ansvarskonto kan ikke være tomt,
The following serial numbers were created: <br><br> {0},Følgende serienumre blev oprettet: <br><br> {0},
The parent account {0} does not exists in the uploaded template,Forældrekontoen {0} findes ikke i den uploadede skabelon,
The question cannot be duplicate,Spørgsmålet kan ikke duplikeres,
The selected payment entry should be linked with a creditor bank transaction,Den valgte betalingsindgang skal knyttes til en kreditorbanktransaktion,
The selected payment entry should be linked with a debtor bank transaction,Den valgte betalingsindgang skal knyttes til en debitorbanktransaktion,
The total allocated amount ({0}) is greated than the paid amount ({1}).,Det samlede tildelte beløb ({0}) er større end det betalte beløb ({1}).,
This Service Level Agreement is specific to Customer {0},Denne serviceniveauaftale er specifik for kunden {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,"Denne handling vil fjerne denne forbindelse fra enhver ekstern tjeneste, der integrerer ERPNext med dine bankkonti. Det kan ikke fortrydes. Er du sikker?",
This bank account is already synchronized,Denne bankkonto er allerede synkroniseret,
This bank transaction is already fully reconciled,Denne banktransaktion er allerede fuldt afstemt,
This page keeps track of items you want to buy from sellers.,"Denne side holder styr på de ting, du vil købe fra sælgere.",
This page keeps track of your items in which buyers have showed some interest.,"Denne side holder styr på dine varer, hvor købere har vist en vis interesse.",
Thursday,Torsdag,
Title,Titel,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.",For at tillade overfakturering skal du opdatere &quot;Over faktureringsgodtgørelse&quot; i Kontoindstillinger eller elementet.,
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.",For at tillade overmodtagelse / levering skal du opdatere &quot;Overmodtagelse / leveringstilladelse&quot; i lagerindstillinger eller varen.,
Total,Total,
Total Payment Request amount cannot be greater than {0} amount,Det samlede beløb for anmodning om betaling kan ikke være større end {0} beløbet,
Total payments amount can't be greater than {},Det samlede betalingsbeløb kan ikke være større end {},
Totals,Totaler,
Transactions already retreived from the statement,Transaktioner er allerede gengivet tilbage fra erklæringen,
Transfer Material to Supplier,Overførsel Materiale til Leverandøren,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,Transportkvitteringsnummer og -dato er obligatorisk for din valgte transportform,
Tuesday,Tirsdag,
Type,Type,
Unable to find the time slot in the next {0} days for the operation {1}.,Kan ikke finde tidsvinduet i de næste {0} dage for operationen {1}.,
Unable to update remote activity,Kan ikke opdatere fjernaktivitet,
Unknown Caller,Ukendt opkald,
Unlink external integrations,Fjern linket til eksterne integrationer,
Unpublish Item,Fjern offentliggørelse af vare,
Unreconciled,Uafstemt,
Unsupported GST Category for E-Way Bill JSON generation,Ikke understøttet GST-kategori til e-vejs Bill JSON-generation,
Update,Opdatering,
Update Details,Opdater detaljer,
Update Taxes for Items,Opdater skatter for varer,
"Upload a bank statement, link or reconcile a bank account","Upload en kontoudtog, link eller forene en bankkonto",
Upload a statement,Upload en erklæring,
Use a name that is different from previous project name,"Brug et navn, der er anderledes end det tidligere projektnavn",
User {0} is disabled,Bruger {0} er deaktiveret,
Users and Permissions,Brugere og tilladelser,
Valuation Rate required for Item {0} at row {1},Værdiansættelsesgrad krævet for vare {0} i række {1},
Values Out Of Sync,Værdier ude af synkronisering,
Vehicle Type is required if Mode of Transport is Road,"Køretøjstype er påkrævet, hvis transportform er vej",
Vendor Name,Leverandørnavn,
Verify Email,Bekræft e-mail,
View,Visning,
View all issues from {0},Se alle udgaver fra {0},
View call log,Se opkaldslog,
Warehouse,Lager,
Warehouse not found against the account {0},Lager ikke fundet mod kontoen {0},
Welcome to {0},Velkommen til {0},
Why do think this Item should be removed?,Hvorfor synes denne vare skal fjernes?,
Work Order {0}: Job Card not found for the operation {1},Arbejdsordre {0}: jobkort findes ikke til operationen {1},
Workday {0} has been repeated.,Arbejdsdag {0} er blevet gentaget.,
XML Files Processed,XML-filer behandlet,
Year,År,
Yearly,Årlig,
You,Du,
You are not allowed to enroll for this course,Du har ikke tilladelse til at tilmelde dig dette kursus,
You are not enrolled in program {0},Du er ikke tilmeldt programmet {0},
You can Feature upto 8 items.,Du kan indeholde op til 8 varer.,
You can also copy-paste this link in your browser,Du kan også kopiere-indsætte dette link i din browser,
You can publish upto 200 items.,Du kan offentliggøre op til 200 varer.,
You have to enable auto re-order in Stock Settings to maintain re-order levels.,Du skal aktivere automatisk ombestilling i lagerindstillinger for at opretholde omordningsniveauer.,
You must be a registered supplier to generate e-Way Bill,Du skal være en registreret leverandør for at generere e-Way Bill,
You need to login as a Marketplace User before you can add any reviews.,"Du skal logge ind som Marketplace-bruger, før du kan tilføje anmeldelser.",
Your Featured Items,Dine udvalgte varer,
Your Items,Dine varer,
Your Profile,Din profil,
Your rating:,Din bedømmelse:,
and,og,
e-Way Bill already exists for this document,e-Way Bill findes allerede til dette dokument,
woocommerce - {0},woocommerce - {0},
{0} Coupon used are {1}. Allowed quantity is exhausted,{0} Brugt kupon er {1}. Den tilladte mængde er opbrugt,
{0} Name,{0} Navn,
{0} Operations: {1},{0} Handling: {1},
{0} bank transaction(s) created,{0} banktransaktion (er) oprettet,
{0} bank transaction(s) created and {1} errors,{0} banktransaktion (er) oprettet og {1} fejl,
{0} can not be greater than {1},{0} kan ikke være større end {1},
{0} conversations,{0} samtaler,
{0} is not a company bank account,{0} er ikke en virksomheds bankkonto,
{0} is not a group node. Please select a group node as parent cost center,{0} er ikke en gruppe knude. Vælg en gruppeknude som overordnet omkostningscenter,
{0} is not the default supplier for any items.,{0} er ikke standardleverandøren for nogen varer.,
{0} is required,{0} er påkrævet,
{0}: {1} must be less than {2},{0}: {1} skal være mindre end {2},
{} is required to generate E-Way Bill JSON,{} er påkrævet for at generere e-Way Bill JSON,
"Invalid lost reason {0}, please create a new lost reason","Ugyldig mistet grund {0}, opret en ny mistet grund",
Profit This Year,Overskud i år,
Total Expense,Samlet udgift,
Total Expense This Year,Samlet udgift i år,
Total Income,Total indkomst,
Total Income This Year,Samlet indkomst i år,
Barcode,Stregkode,
Bold,Fremhævet,
Center,Centrer,
Clear,Klar,
Comment,Kommentar,
Comments,Kommentarer,
DocType,DocType,
Download,Hent,
Left,Venstre,
Link,Link,
New,Ny,
Not Found,Ikke fundet,
Print,Print,
Reference Name,Reference navn,
Refresh,Opdater,
Success,Succes,
Time,Tid,
Value,Værdi,
Actual,Faktiske,
Add to Cart,Føj til indkøbsvogn,
Days Since Last Order,Dage siden sidste ordre,
In Stock,På lager,
Mode Of Payment,Betalingsmåde,
No students Found,Ingen studerende fundet,
Not in Stock,Ikke på lager,
Please select a Customer,Vælg venligst en kunde,
Received From,Modtaget fra,
Sales Person,Sælger,
To date cannot be before From date,Til dato kan ikke være før Fra dato,
Write Off,Afskriv,
{0} Created,{0} Oprettet,
Email Id,E-mail-id,
No,Nej,
Reference Doctype,Henvisning DocType,
User Id,Bruger ID,
Yes,Ja,
Actual ,Faktiske,
Add to cart,Føj til indkøbsvogn,
Budget,Budget,
Chart of Accounts,Kontoplan,
Customer database.,Kundedatabase.,
Days Since Last order,Dage siden sidste ordre,
Download as JSON,Download som JSON,
End date can not be less than start date,Slutdato kan ikke være mindre end startdato,
For Default Supplier (Optional),For standardleverandør (valgfrit),
From date cannot be greater than To date,Fra dato ikke kan være større end til dato,
Group by,Sortér efter,
In stock,På lager,
Item name,Varenavn,
Minimum Qty,Minimum antal,
More details,Flere detaljer,
Nature of Supplies,Forsyningens art,
No Items found.,Ingen emner fundet.,
No students found,Ingen studerende fundet,
Not in stock,Ikke på lager,
Not permitted,Ikke tilladt,
Open Issues ,Åbne spørgsmål,
Open Projects ,Åbne sager,
Open To Do ,Åbn Opgaver,
Operation Id,Operation ID,
Partially ordered,Delvist bestilt,
Please select company first,Vælg venligst firma først,
Please select patient,Vælg venligst patient,
Printed On ,Trykt på,
Projected qty,Projiceret antal,
Sales person,Salgsmedarbejder,
Serial No {0} Created,Serienummer {0} Oprettet,
Source Location is required for the Asset {0},Kildens placering er påkrævet for aktivet {0},
Tax Id,Skatte ID,
To Time,Til kl.,
To date cannot be before from date,Til dato kan ikke være før fra dato,
Total Taxable value,Samlet skattepligtig værdi,
Upcoming Calendar Events ,Kommende kalenderbegivenheder,
Value or Qty,Værdi eller mængde,
Variance ,varians,
Variant of,Variant af,
Write off,Afskriv,
hours,timer,
received from,Modtaget fra,
to,til,
Cards,Kort,
Percentage,Procent,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,Kunne ikke konfigurere standardindstillinger for land {0}. Kontakt support@erpnext.com,
Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Række nr. {0}: Element {1} er ikke en serialiseret / batchet vare. Det kan ikke have et serienummer / batchnummer imod det.,
Please set {0},Indstil {0},
Please set {0},Angiv {0},supplier
Draft,Udkast,"docstatus,=,0"
Cancelled,Annulleret,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Opsæt instruktør navngivningssystem i Uddannelse&gt; Uddannelsesindstillinger,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Angiv Naming Series for {0} via Setup&gt; Settings&gt; Naming Series,
UOM Conversion factor ({0} -> {1}) not found for item: {2},UOM-konverteringsfaktor ({0} -&gt; {1}) ikke fundet for varen: {2},
Item Code > Item Group > Brand,Varekode&gt; Varegruppe&gt; Mærke,
Customer > Customer Group > Territory,Kunde&gt; Kundegruppe&gt; Territorium,
Supplier > Supplier Type,Leverandør&gt; Leverandørtype,
The value of {0} differs between Items {1} and {2},Værdien af {0} er forskellig mellem varer {1} og {2},
Auto Fetch,Automatisk hentning,
Fetch Serial Numbers based on FIFO,Hent serienumre baseret på FIFO,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Udgående skattepligtige leverancer (undtagen nul-klassificeret, nul-klassificeret og fritaget)",
"To allow different rates, disable the {0} checkbox in {1}.",For at tillade forskellige priser skal du deaktivere afkrydsningsfeltet {0} i {1}.,
Asset{} {assets_link} created for {},Aktiv {} {assets_link} oprettet for {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Række {}: Asset Naming Series er obligatorisk for automatisk oprettelse af element {},
Assets not created for {0}. You will have to create asset manually.,Aktiver ikke oprettet for {0}. Du bliver nødt til at oprette aktiv manuelt.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} har regnskabsposter i valuta {2} for firmaet {3}. Vælg en tilgodehavende eller betalbar konto med valuta {2}.,
Invalid Account,Ugyldig konto,
Purchase Order Required,Indkøbsordre påkrævet,
Purchase Receipt Required,Købskvittering påkrævet,
Account Missing,Konto mangler,
Requested,Anmodet,
Partially Paid,Delvist betalt,
Invalid Account Currency,Ugyldig valuta for konto,
"Row {0}: The item {1}, quantity must be positive number","Række {0}: Vare {1}, antal skal være positivt",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Indstil {0} for Batch-vare {1}, som bruges til at indstille {2} på Submit.",
Expiry Date Mandatory,Udløbsdato skal angives,
Variant Item,Variantvare,
BOM 1 {0} and BOM 2 {1} should not be same,BOM 1 {0} og BOM 2 {1} skal ikke være den samme,
Note: Item {0} added multiple times,Bemærk: Element {0} tilføjet flere gange,
YouTube,Youtube,
Vimeo,Vimeo,
Publish Date,Udgivelsesdato,
Duration,Varighed,
Advanced Settings,Avancerede indstillinger,
Path,Sti,
Components,Lønarter,
Verified By,Bekræftet af,
Invalid naming series (. missing) for {0},Ugyldig navneserie (. Mangler) for {0},
Filter Based On,Filter baseret på,
Reqd by date,Opdateret efter dato,
Manufacturer Part Number <b>{0}</b> is invalid,Producentens varenummer <b>{0}</b> er ugyldig,
Invalid Part Number,Ugyldigt varenummer,
Select atleast one Social Media from Share on.,Vælg mindst en social media fra Del på.,
Invalid Scheduled Time,Ikke gyldig kalendertid,
Length Must be less than 280.,Længde skal være mindre end 280.,
Error while POSTING {0},Fejl under POSTING af {0},
"Session not valid, Do you want to login?",Sessionen er ikke længere gyldig. Vil du logge ind?,
Session Active,Session aktiv,
Session Not Active. Save doc to login.,Session ikke aktiv. Gem dokument for at logge ind.,
Error! Failed to get request token.,Fejl! Kunne ikke hente anmodningstoken.,
Invalid {0} or {1},Ugyldig {0} eller {1},
Error! Failed to get access token.,Fejl! Kunne ikke få adgangstoken.,
Invalid Consumer Key or Consumer Secret Key,Ugyldig forbrugernøgle eller forbrugerhemmelig nøgle,
Your Session will be expire in ,Din session udløber om,
 days.,dage.,
Session is expired. Save doc to login.,Sessionen er udløbet. Gem dokument for at logge ind.,
Error While Uploading Image,Fejl under upload af billede,
You Didn't have permission to access this API,Du havde ikke tilladelse til at få adgang til denne API,
Valid Upto date cannot be before Valid From date,Gyldig Upto-dato kan ikke være før Gyldig fra dato,
Valid From date not in Fiscal Year {0},Gyldig fra dato ikke i regnskabsåret {0},
Valid Upto date not in Fiscal Year {0},Gyldig Upto-dato ikke i regnskabsåret {0},
Group Roll No,Grupperulle nr,
Maintain Same Rate Throughout Sales Cycle,Oprethold Samme Rate Gennem Sales Cycle,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.",Række {1}: Mængde ({0}) kan ikke være en brøkdel. For at tillade dette skal du deaktivere &#39;{2}&#39; i UOM {3}.,
Must be Whole Number,Skal være hele tal,
Please setup Razorpay Plan ID,Indstil Razorpay plan-id,
Contact Creation Failed,Oprettelse af kontakt mislykkedes,
Leaves Expired,Bladene er udløbet,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,"Række nr. {}: {} Af {} skal være {}. Rediger kontoen, eller vælg en anden konto.",
Row #{}: Please asign task to a member.,Række nr. {}: Tildel opgaven til et medlem.,
Process Failed,Processen mislykkedes,
Tally Migration Error,Tally Migration Error,
Please set Warehouse in Woocommerce Settings,Indstil Warehouse i Woocommerce-indstillinger,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Række {0}: Leveringslager ({1}) og kundelager ({2}) kan ikke være det samme,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Række {0}: Forfaldsdato i tabellen Betalingsbetingelser kan ikke være før bogføringsdatoen,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,Kan ikke finde {} for vare {}. Indstil det samme i Item Master eller Stock Settings.,
Row #{0}: The batch {1} has already expired.,Række nr. {0}: Batchen {1} er allerede udløbet.,
Start Year and End Year are mandatory,Startår og slutår er obligatoriske,
GL Entry,Hovedbogsindtastning,
Cannot allocate more than {0} against payment term {1},Kan ikke allokere mere end {0} mod betalingsperiode {1},
The root account {0} must be a group,Rødkontoen {0} skal være en gruppe,
Shipping rule not applicable for country {0} in Shipping Address,Forsendelsesregel gælder ikke for land {0} i leveringsadresse,
Get Payments from,Hent betalinger fra,
Set Shipping Address or Billing Address,Indstil leveringsadresse eller faktureringsadresse,
Consultation Setup,Konsultation opsætning,
Fee Validity,Gebyrets gyldighed,
Laboratory Setup,Laboratorium opsætning,
Dosage Form,Doseringsformular,
Records and History,Optegnelser og historie,
Patient Medical Record,Patient Medical Record,
Rehabilitation,Genoptræning,
Exercise Type,Øvelsestrin,
Exercise Difficulty Level,Træningsvanskelighedsniveau,
Therapy Type,Terapityper,
Therapy Plan,Terapiplan,
Therapy Session,Terapi-konsultation,
Motor Assessment Scale,Motorisk vurderingsskala,
[Important] [ERPNext] Auto Reorder Errors,[Vigtigt] [ERPNext] Auto-reorder-fejl,
"Regards,","Hilsen,",
The following {0} were created: {1},Følgende {0} blev oprettet: {1},
Work Orders,Arbejdsordrer,
The {0} {1} created sucessfully,{0} {1} oprettet med succes,
Work Order cannot be created for following reason: <br> {0},Arbejdsordre kan ikke oprettes af følgende grund:<br> {0},
Add items in the Item Locations table,Tilføj varer i tabellen Vareplaceringer,
Update Current Stock,Opdater nuværende lager,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item",{0} Behold prøve er baseret på batch. Kontroller Har batch-nr. For at opbevare prøve på varen,
Empty,Tom,
Currently no stock available in any warehouse,I øjeblikket er der ingen lager på lager,
BOM Qty,BOM Antal,
Time logs are required for {0} {1},Tidslogfiler kræves for {0} {1},
Total Completed Qty,I alt afsluttet antal,
Qty to Manufacture,Antal at producere,
Social Media Campaigns,Sociale mediekampagner,
From Date can not be greater than To Date,Fra dato kan ikke være større end til dato,
Please set a Customer linked to the Patient,"Indstil en kunde, der er knyttet til patienten",
Customer Not Found,Kunden blev ikke fundet,
Please Configure Clinical Procedure Consumable Item in ,Konfigurér venligst klinisk procedure forbrugsartikel i,
Missing Configuration,Manglende konfiguration,
Out Patient Consulting Charge Item,Out Patient Consulting Charge Item,
Inpatient Visit Charge Item,Inpatient Visit Charge Item,
OP Consulting Charge,OP Consulting Charge,
Inpatient Visit Charge,Inpatientbesøgsgebyr,
Appointment Status,Aftalestatus,
Test: ,Prøve:,
Collection Details: ,Samlingsdetaljer:,
{0} out of {1},{0} ud af {1},
Select Therapy Type,Vælg terapitype,
{0} sessions completed,{0} sessioner afsluttet,
{0} session completed,{0} session afsluttet,
 out of {0},ud af {0},
Therapy Sessions,Terapikonsultationer,
Add Exercise Step,Tilføj øvelsestrin,
Edit Exercise Step,Redigér øvelsestrin,
Patient Appointments,Patientaftaler,
Item with Item Code {0} already exists,Varen med varekoden {0} findes allerede,
Registration Fee cannot be negative or zero,Registreringsgebyr må ikke være negativt eller nul,
Configure a service Item for {0},Konfigurer en servicepost til {0},
Temperature: ,Temperatur:,
Pulse: ,Puls:,
Respiratory Rate: ,Åndedrætsfrekvens:,
BP: ,BP:,
BMI: ,BMI:,
Note: ,Bemærk:,
Check Availability,Tjek tilgængelighed,
Please select Patient first,Vælg først patient,
Please select a Mode of Payment first,Vælg først en betalingsmetode,
Please set the Paid Amount first,Angiv først det betalte beløb,
Not Therapies Prescribed,Ikke ordinerede terapier,
There are no Therapies prescribed for Patient {0},Der er ingen terapier ordineret til patienten {0},
Appointment date and Healthcare Practitioner are Mandatory,Konsultationsdato og Sundhedsmedarbejder er obligatoriske,
No Prescribed Procedures found for the selected Patient,Der blev ikke fundet ordinerede kliniske procedurer for den valgte patient,
Please select a Patient first,Vælg venligst en patient først,
There are no procedure prescribed for ,Der er ingen procedure foreskrevet for,
Prescribed Therapies,Ordinerede terapier,
Appointment overlaps with ,Aftale overlapper med,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} har aftale planlagt til {1} kl. {2} med {3} minut (er) varighed.,
Appointments Overlapping,Aftaler overlapper hinanden,
Consulting Charges: {0},Konsulentgebyrer: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Aftale aflyst. Gennemgå og annuller fakturaen {0},
Appointment Cancelled.,"Aftalen blev annulleret,",
Fee Validity {0} updated.,Gebyrets gyldighed {0} opdateret.,
Practitioner Schedule Not Found,Behandlingskalender ikke fundet,
{0} is on a Half day Leave on {1},{0} er på en halv dags orlov den {1},
{0} is on Leave on {1},{0} har orlov den {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} indeholder ingen behandlingskalender. Tilføj denne på sundhedsmedarbejderen.,
Healthcare Service Units,Sundhedsservice-enheder,
Complete and Consume,Komplet og forbrug,
Complete {0} and Consume Stock?,Fuldføre {0} og forbruge lager?,
Complete {0}?,Fuldført {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,Lagermængde for at starte proceduren er ikke tilgængelig i lageret {0}. Vil du registrere en aktieindgang?,
{0} as on {1},{0} som på {1},
Clinical Procedure ({0}):,Klinisk procedure ({0}):,
Please set Customer in Patient {0},Vælg venligst en kunde for patient {0},
Item {0} is not active,Vare {0} er ikke aktiv,
Therapy Plan {0} created successfully.,Terapiplan {0} blev oprettet,
Symptoms: ,Symptomer:,
No Symptoms,Ingen symptomer,
Diagnosis: ,Diagnose:,
No Diagnosis,Ingen diagnose,
Drug(s) Prescribed.,Medicin der er givet recept til,
Test(s) Prescribed.,Test (er) ordineret.,
Procedure(s) Prescribed.,Procedure (r) Foreskrevet.,
Counts Completed: {0},Optællinger afsluttet: {0},
Patient Assessment,Patientvurdering,
Assessments,Vurderinger,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Hoveder (eller grupper) mod hvilken regnskabsposter er lavet og balancer opretholdes.,
Account Name,Kontonavn,
Inter Company Account,Inter Company Account,
Parent Account,Parent Konto,
Setting Account Type helps in selecting this Account in transactions.,Indstilling Kontotype hjælper med at vælge denne konto i transaktioner.,
Chargeable,Gebyr,
Rate at which this tax is applied,"Hastighed, hvormed denne afgift anvendes",
Frozen,Frosne,
"If the account is frozen, entries are allowed to restricted users.","Hvis kontoen er frossen, er poster lov til begrænsede brugere.",
Balance must be,Balance skal være,
Lft,Lft,
Rgt,Rgt,
Old Parent,Gammel Parent,
Include in gross,Inkluder i brutto,
Auditor,Revisor,
Accounting Dimension,Regnskabsdimension,
Dimension Name,Dimension Navn,
Dimension Defaults,Dimensionstandarder,
Accounting Dimension Detail,Regnskabsdimension Detalje,
Default Dimension,Standarddimension,
Mandatory For Balance Sheet,Obligatorisk til balance,
Mandatory For Profit and Loss Account,Obligatorisk til resultatopgørelse,
Accounting Period,Regnskabsperiode,
Period Name,Navn på periode,
Closed Documents,Lukkede dokumenter,
Accounts Settings,Kontoindstillinger,
Settings for Accounts,Indstillinger for regnskab,
Make Accounting Entry For Every Stock Movement,Lav Regnskab indtastning For hver Stock Movement,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Brugere med denne rolle får lov til at sætte indefrosne konti og oprette / ændre regnskabsposter mod indefrosne konti,
Determine Address Tax Category From,Bestem adresse-skatskategori fra,
Over Billing Allowance (%),Over faktureringsgodtgørelse (%),
Credit Controller,Credit Controller,
Check Supplier Invoice Number Uniqueness,Tjek entydigheden af  leverandørfakturanummeret,
Make Payment via Journal Entry,Foretag betaling via kassekladden,
Unlink Payment on Cancellation of Invoice,Fjern link Betaling ved Annullering af faktura,
Book Asset Depreciation Entry Automatically,Bogføring af aktivernes afskrivning automatisk,
Automatically Add Taxes and Charges from Item Tax Template,Tilføj automatisk skatter og afgifter fra vareskatteskabelonen,
Automatically Fetch Payment Terms,Hent automatisk betalingsbetingelser,
Show Payment Schedule in Print,Vis betalingsplan i udskrivning,
Currency Exchange Settings,Valutavekslingsindstillinger,
Allow Stale Exchange Rates,Tillad forældede valutakurser,
Stale Days,Forældede dage,
Report Settings,Rapportindstillinger,
Use Custom Cash Flow Format,Brug Custom Cash Flow Format,
Allowed To Transact With,Tilladt at transagere med,
SWIFT number,SWIFT-nummer,
Branch Code,Branchkode,
Address and Contact,Adresse og kontaktperson,
Address HTML,Adresse HTML,
Contact HTML,Kontakt HTML,
Data Import Configuration,Dataimportkonfiguration,
Bank Transaction Mapping,Kortlægning af banktransaktion,
Plaid Access Token,Plaid Access Token,
Company Account,Firmakonto,
Account Subtype,Kontotype,
Is Default Account,Er standardkonto,
Is Company Account,Er virksomhedskonto,
Party Details,Selskabsdetaljer,
Account Details,konto detaljer,
IBAN,IBAN,
Bank Account No,Bankkonto nr,
Integration Details,Integrationsdetaljer,
Integration ID,Integrations-ID,
Last Integration Date,Sidste integrationsdato,
Change this date manually to setup the next synchronization start date,Skift denne dato manuelt for at opsætte den næste startdato for synkronisering,
Mask,Maske,
Bank Account Subtype,Undertype til bankkonto,
Bank Account Type,Bankkontotype,
Bank Guarantee,Bank garanti,
Bank Guarantee Type,Bankgaranti Type,
Receiving,Modtagelse,
Providing,At sørge for,
Reference Document Name,Reference dokumentnavn,
Validity in Days,Gyldighed i dage,
Bank Account Info,Bankkontooplysninger,
Clauses and Conditions,Klausuler og betingelser,
Other Details,Andre detaljer,
Bank Guarantee Number,Bankgaranti nummer,
Name of Beneficiary,Navn på modtager,
Margin Money,Margen penge,
Charges Incurred,Afgifter opkrævet,
Fixed Deposit Number,Fast indbetalingsnummer,
Account Currency,Konto Valuta,
Select the Bank Account to reconcile.,Vælg bankkonto for at forene.,
Include Reconciled Entries,Medtag Afstemt Angivelser,
Get Payment Entries,Hent betalingsposter,
Payment Entries,Betalings Entries,
Update Clearance Date,Opdatering Clearance Dato,
Bank Reconciliation Detail,Bank Afstemning Detail,
Cheque Number,Anvendes ikke,
Cheque Date,Anvendes ikke,
Statement Header Mapping,Statement Header Mapping,
Statement Headers,Statement Headers,
Transaction Data Mapping,Transaktionsdata Kortlægning,
Mapped Items,Mappede elementer,
Bank Statement Settings Item,Betalingsindstillinger for bankkonti,
Mapped Header,Mapped Header,
Bank Header,Bankoverskrift,
Bank Statement Transaction Entry,Kontoudskrift Transaktion,
Bank Transaction Entries,Bankoverførselsangivelser,
New Transactions,Nye Transaktioner,
Match Transaction to Invoices,Match transaktion til fakturaer,
Create New Payment/Journal Entry,Opret ny betaling / journal indtastning,
Submit/Reconcile Payments,Indsend / afstem Betalinger,
Matching Invoices,Matchende fakturaer,
Payment Invoice Items,Betalingsfakturaelementer,
Reconciled Transactions,Afstemte transaktioner,
Bank Statement Transaction Invoice Item,Bankoversigt Transaktionsfaktura,
Payment Description,Betalingsbeskrivelse,
Invoice Date,Fakturadato,
invoice,faktura,
Bank Statement Transaction Payment Item,Kontoudtog Transaktion Betalingselement,
outstanding_amount,Utrolig mængde,
Payment Reference,Betalings reference,
Bank Statement Transaction Settings Item,Bankoversigt Transaktionsindstillinger Item,
Bank Data,Bankdata,
Mapped Data Type,Mapped Data Type,
Mapped Data,Mappede data,
Bank Transaction,Banktransaktion,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,Transaktions-ID,
Unallocated Amount,Ufordelt beløb,
Field in Bank Transaction,Felt i banktransaktion,
Column in Bank File,Kolonne i bankfil,
Bank Transaction Payments,Banktransaktionsbetalinger,
Control Action,Kontrol handling,
Applicable on Material Request,Gælder for materialeanmodning,
Action if Annual Budget Exceeded on MR,Handling hvis årligt budget oversteg MR,
Warn,Advar,
Ignore,Ignorér,
Action if Accumulated Monthly Budget Exceeded on MR,Handling hvis akkumuleret månedlig budget oversteg MR,
Applicable on Purchase Order,Gælder ved købsordre,
Action if Annual Budget Exceeded on PO,Handling hvis årligt budget oversteg på PO,
Action if Accumulated Monthly Budget Exceeded on PO,Handling hvis akkumuleret månedlig budget oversteg PO,
Applicable on booking actual expenses,Gældende ved bogføring af faktiske udgifter,
Action if Annual Budget Exceeded on Actual,Handling hvis årligt budget oversteg på faktisk,
Action if Accumulated Monthly Budget Exceeded on Actual,Handling hvis akkumuleret månedlig budget oversteg faktisk,
Budget Accounts,Budget Regnskab,
Budget Account,Budget-konto,
Budget Amount,Budget Beløb,
C-Form,C-Form,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,C-Form Ingen,
Received Date,Modtaget d.,
Quarter,Kvarter,
I,jeg,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,C-Form Faktura Detail,
Invoice No,Fakturanr.,
Cash Flow Mapper,Cash Flow Mapper,
Section Name,Sektionens navn,
Section Header,Sektion Header,
Section Leader,Sektion Leader,
e.g Adjustments for:,fx justeringer for:,
Section Subtotal,Sektion Subtotal,
Section Footer,Sektion Footer,
Position,Position,
Cash Flow Mapping,Cash Flow Mapping,
Select Maximum Of 1,Vælg Maksimum 1,
Is Finance Cost,Er finansiering omkostninger,
Is Working Capital,Er arbejdskapital,
Is Finance Cost Adjustment,Er finansiering omkostningsjustering,
Is Income Tax Liability,Er indkomstskat ansvar,
Is Income Tax Expense,Er indkomstskat udgift,
Cash Flow Mapping Accounts,Cash Flow Mapping Accounts,
account,Konto,
Cash Flow Mapping Template,Cash Flow Mapping Template,
Cash Flow Mapping Template Details,Cash Flow Mapping Template Detaljer,
POS-CLO-,POS-CLO-,
Custody,Forældremyndighed,
Net Amount,Nettobeløb,
Cashier Closing Payments,Kasseindbetalinger,
Chart of Accounts Importer,Kontoplan-importværktøj,
Import Chart of Accounts from a csv file,Importér kontoplan fra csv-fil,
Attach custom Chart of Accounts file,Vedhæft fil med tilpasset kontoplan,
Chart Preview,Diagramvisning,
Chart Tree,Korttræ,
Cheque Print Template,Anvendes ikke,
Has Print Format,Har Print Format,
Primary Settings,Primære indstillinger,
Cheque Size,Anvendes ikke,
Regular,Fast,
Starting position from top edge,Startposition fra overkanten,
Cheque Width,Anvendes ikke,
Cheque Height,Anvendes ikke,
Scanned Cheque,Anvendes ikke,
Is Account Payable,Er konto Betales,
Distance from top edge,Afstand fra overkanten,
Distance from left edge,Afstand fra venstre kant,
Message to show,Besked for at vise,
Date Settings,Datoindstillinger,
Starting location from left edge,Start fra venstre kant,
Payer Settings,payer Indstillinger,
Width of amount in word,Bredde af beløb i ord,
Line spacing for amount in words,Linjeafstand for beløb i ord,
Amount In Figure,Beløb I figur,
Signatory Position,undertegnende holdning,
Closed Document,Lukket dokument,
Track separate Income and Expense for product verticals or divisions.,Spor separat indtægter og omkostninger for produkt- vertikaler eller afdelinger.,
Cost Center Name,Omkostningsstednavn,
Parent Cost Center,Overordnet omkostningssted,
lft,LFT,
rgt,RGT,
Coupon Code,Kuponkode,
Coupon Name,Kuponnavn,
"e.g. ""Summer Holiday 2019 Offer 20""",f.eks. &quot;Sommerferie 2019-tilbud 20&quot;,
Coupon Type,Kupon type,
Promotional,Salgsfremmende,
Gift Card,Gavekort,
unique e.g. SAVE20  To be used to get discount,unik fx SAVE20 Bruges til at få rabat,
Validity and Usage,Gyldighed og brug,
Valid From,Gældende fra,
Valid Upto,Gyldig Upto,
Maximum Use,Maksimal brug,
Used,Brugt,
Coupon Description,Kuponbeskrivelse,
Discounted Invoice,Rabatfaktura,
Debit to,Debet til,
Exchange Rate Revaluation,Valutakursomskrivning,
Get Entries,Få indlæg,
Exchange Rate Revaluation Account,Valutakursomskrivningskonto,
Total Gain/Loss,Total gevinst / tab,
Balance In Account Currency,Balance i kontovaluta,
Current Exchange Rate,Aktuel valutakurs,
Balance In Base Currency,Balance i basisvaluta,
New Exchange Rate,Ny valutakurs,
New Balance In Base Currency,Ny balance i basisvaluta,
Gain/Loss,Gevinst / Tab,
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,** Regnskabsår ** repræsenterer et regnskabsår. Alle regnskabsposteringer og andre større transaktioner spores mod ** regnskabsår **.,
Year Name,År navn,
"For e.g. 2012, 2012-13","Til fx 2012, 2012-13",
Year Start Date,Første dag i året,
Year End Date,Sidste dag i året,
Companies,Firmaer,
Auto Created,Automatisk oprettet,
Stock User,Lagerbruger,
Fiscal Year Company,Fiscal År Company,
Debit Amount,Debetbeløb,
Credit Amount,Kreditbeløb,
Debit Amount in Account Currency,Debetbeløb i Kontoens valuta,
Credit Amount in Account Currency,Credit Beløb i Konto Valuta,
Voucher Detail No,Voucher Detail Nej,
Is Opening,Er Åbning,
Is Advance,Er Advance,
To Rename,At omdøbe,
GST Account,GST-konto,
CGST Account,CGST-konto,
SGST Account,SGST-konto,
IGST Account,IGST-konto,
CESS Account,CESS-konto,
Loan Start Date,Startdato for lån,
Loan Period (Days),Låneperiode (dage),
Loan End Date,Lånets slutdato,
Bank Charges,Bankudgifter,
Short Term Loan Account,Kortfristet lånekonto,
Bank Charges Account,Bankkontokonto,
Accounts Receivable Credit Account,Tilgodehavende kreditkonto,
Accounts Receivable Discounted Account,Tilgodehavende tilgodehavende rabatkonto,
Accounts Receivable Unpaid Account,Kontoer Tilgodehavende Ubetalt konto,
Item Tax Template,Skat for en vare,
Tax Rates,Skattesatser,
Item Tax Template Detail,Skat af skabelon for detalje,
Entry Type,Posttype,
Inter Company Journal Entry,Inter Company Journal Entry,
Bank Entry,Bank indtastning,
Cash Entry,indtastning af kontanter,
Credit Card Entry,Credit Card indtastning,
Contra Entry,Contra indtastning,
Excise Entry,Excise indtastning,
Write Off Entry,Skriv Off indtastning,
Opening Entry,Åbningsbalance,
ACC-JV-.YYYY.-,ACC-JV-.YYYY.-,
Accounting Entries,Bogføringsposter,
Total Debit,Samlet debet,
Total Credit,Samlet kredit,
Difference (Dr - Cr),Difference (Dr - Cr),
Make Difference Entry,Make Difference indtastning,
Total Amount Currency,Samlet beløb Valuta,
Total Amount in Words,Samlet beløb i Words,
Remark,Bemærkning,
Paid Loan,Betalt lån,
Inter Company Journal Entry Reference,Inter Company Journal Entry Reference,
Write Off Based On,Skriv Off baseret på,
Get Outstanding Invoices,Hent åbne fakturaer,
Write Off Amount,Afskriv beløb,
Printing Settings,Udskrivningsindstillinger,
Pay To / Recd From,Betal Til / RECD Fra,
Payment Order,Betalingsordre,
Subscription Section,Abonnementsafdeling,
Journal Entry Account,Kassekladde konto,
Account Balance,Konto saldo,
Party Balance,Selskabskonto Saldo,
Accounting Dimensions,Regnskabsmæssige dimensioner,
If Income or Expense,Hvis indtægter og omkostninger,
Exchange Rate,Vekselkurs,
Debit in Company Currency,Debet (firmavaluta),
Credit in Company Currency,Kredit (firmavaluta),
Payroll Entry,Lønning Entry,
Employee Advance,Ansatte Advance,
Reference Due Date,Reference Due Date,
Loyalty Program Tier,Loyalitetsprogram Tier,
Redeem Against,Indløse imod,
Expiry Date,Udløbsdato,
Loyalty Point Entry Redemption,Indfrielse af loyalitetspoint,
Redemption Date,Indløsningsdato,
Redeemed Points,Forladte point,
Loyalty Program Name,Loyalitetsprogramnavn,
Loyalty Program Type,Loyalitetsprogramtype,
Single Tier Program,Single Tier Program,
Multiple Tier Program,Multiple Tier Program,
Customer Territory,Kundeområde,
Auto Opt In (For all customers),Auto Opt In (For alle kunder),
Collection Tier,Collection Tier,
Collection Rules,Indsamlingsregler,
Redemption,Frelse,
Conversion Factor,Konverteringsfaktor,
1 Loyalty Points = How much base currency?,1 Loyalitetspoint = Hvor meget base valuta?,
Expiry Duration (in days),Udløbsperiode (i dage),
Help Section,Hjælp sektion,
Loyalty Program Help,Hjælp til loyalitetsprogram,
Loyalty Program Collection,Loyalitetsprogramindsamling,
Tier Name,Tiernavn,
Minimum Total Spent,Minimum samlet forbrug,
Collection Factor (=1 LP),Samlingsfaktor (= 1 LP),
For how much spent = 1 Loyalty Point,For hvor meget brugt = 1 Loyalitetspoint,
Mode of Payment Account,Betalingsmådekonto,
Default Account,Standard-konto,
Default account will be automatically updated in POS Invoice when this mode is selected.,"Standardkontoen opdateres automatisk i POS-faktura, når denne tilstand er valgt.",
**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.,"** Månedlig Distribution ** hjælper dig distribuere Budget / Mål på tværs af måneder, hvis du har sæsonudsving i din virksomhed.",
Distribution Name,Distribution Name,
Name of the Monthly Distribution,Navnet på den månedlige Distribution,
Monthly Distribution Percentages,Månedlige Distribution Procenter,
Monthly Distribution Percentage,Månedlig Distribution Procent,
Percentage Allocation,Procentvis fordeling,
Create Missing Party,Opret manglende Selskab,
Create missing customer or supplier.,Opret manglende kunde eller leverandør.,
Opening Invoice Creation Tool Item,Åbning af fakturaoprettelsesværktøj,
Temporary Opening Account,Midlertidig åbningskonto,
Party Account,Selskabskonto,
Type of Payment,Betalingsmåde,
ACC-PAY-.YYYY.-,ACC-PAY-.YYYY.-,
Receive,Modtag,
Internal Transfer,Intern overførsel,
Payment Order Status,Betalingsordresstatus,
Payment Ordered,Betaling Bestilt,
Payment From / To,Betaling fra/til,
Company Bank Account,Virksomhedens bankkonto,
Party Bank Account,Party bankkonto,
Account Paid From,Konto Betalt Fra,
Account Paid To,Konto Betalt Til,
Paid Amount (Company Currency),Betalt beløb (firmavaluta),
Received Amount,modtaget Beløb,
Received Amount (Company Currency),Modtaget beløb (firmavaluta),
Get Outstanding Invoice,Få en enestående faktura,
Payment References,Betalingsreferencer,
Writeoff,Skrive af,
Total Allocated Amount,Samlet bevilgede beløb,
Total Allocated Amount (Company Currency),Samlet tildelte beløb (Company Currency),
Set Exchange Gain / Loss,Sæt Exchange Gevinst / Tab,
Difference Amount (Company Currency),Differencebeløb (firmavaluta),
Write Off Difference Amount,Skriv Off Forskel Beløb,
Deductions or Loss,Fradrag eller Tab,
Payment Deductions or Loss,Betalings Fradrag eller Tab,
Cheque/Reference Date,Anvendes ikke,
Payment Entry Deduction,Betaling indtastning Fradrag,
Payment Entry Reference,Betalingspost reference,
Allocated,Tildelt,
Payment Gateway Account,Betaling Gateway konto,
Payment Account,Betalingskonto,
Default Payment Request Message,Standard Betaling Request Message,
PMO-,PMO-,
Payment Order Type,Betalingsordres type,
Payment Order Reference,Betalingsordre Reference,
Bank Account Details,Bankkontooplysninger,
Payment Reconciliation,Afstemning af betalinger,
Receivable / Payable Account,Tilgodehavende / Betales konto,
Bank / Cash Account,Bank / kontantautomat konto,
From Invoice Date,Fra fakturadato,
To Invoice Date,Til fakturadato,
Minimum Invoice Amount,Mindste fakturabeløb,
Maximum Invoice Amount,Maksimalt fakturabeløb,
System will fetch all the entries if limit value is zero.,"Systemet henter alle poster, hvis grænseværdien er nul.",
Get Unreconciled Entries,Hent ikke-afstemte poster,
Unreconciled Payment Details,Ikke-afstemte Betalingsoplysninger,
Invoice/Journal Entry Details,Faktura / Kassekladdelinjer,
Payment Reconciliation Invoice,Betalingsafstemningsfaktura,
Invoice Number,Fakturanummer,
Payment Reconciliation Payment,Betaling Afstemning Betaling,
Reference Row,henvisning Row,
Allocated amount,Tildelte beløb,
Payment Request Type,Betalingsanmodning Type,
Outward,Udgående,
Inward,indad,
ACC-PRQ-.YYYY.-,ACC-PRQ-.YYYY.-,
Transaction Details,overførselsdetaljer,
Amount in customer's currency,Beløb i kundens valuta,
Is a Subscription,Er en abonnement,
Transaction Currency,Transaktionsvaluta,
Subscription Plans,Abonnementsplaner,
SWIFT Number,SWIFT nummer,
Recipient Message And Payment Details,Modtager Besked Og Betalingsoplysninger,
Make Sales Invoice,Opret salgsfaktura,
Mute Email,Mute Email,
payment_url,payment_url,
Payment Gateway Details,Betaling Gateway Detaljer,
Payment Schedule,Betalingsplan,
Invoice Portion,Fakturaafdeling,
Payment Amount,Betaling Beløb,
Payment Term Name,Betalingsbetegnelsens navn,
Due Date Based On,Forfaldsdato baseret på,
Day(s) after invoice date,Dag (er) efter faktura dato,
Day(s) after the end of the invoice month,Dag (er) efter faktura månedens afslutning,
Month(s) after the end of the invoice month,Måned (e) efter afslutningen af faktura måned,
Credit Days,Kreditdage,
Credit Months,Kredit måneder,
Allocate Payment Based On Payment Terms,Tildel betaling baseret på betalingsbetingelser,
"If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term","Hvis dette afkrydsningsfelt er markeret, fordeles det betalte beløb og fordeles i henhold til beløbene i betalingsplanen mod hver betalingsperiode",
Payment Terms Template Detail,Betalingsbetingelser Skabelondetaljer,
Closing Fiscal Year,Lukning regnskabsår,
Closing Account Head,Lukning konto Hoved,
"The account head under Liability or Equity, in which Profit/Loss will be booked","Kontoen under passiver eller egenkapital, i hviken gevinst/tab vil blive bogført",
POS Customer Group,Kassesystem-kundegruppe,
POS Field,POS felt,
POS Item Group,Kassesystem-varegruppe,
Company Address,Virksomhedsadresse,
Update Stock,Opdatering Stock,
Ignore Pricing Rule,Ignorér prisfastsættelsesregel,
Applicable for Users,Gælder for brugere,
Sales Invoice Payment,Salgsfakturabetaling,
Item Groups,Varegrupper,
Only show Items from these Item Groups,Vis kun varer fra disse varegrupper,
Customer Groups,Kundegrupper,
Only show Customer of these Customer Groups,Vis kun kunde for disse kundegrupper,
Write Off Account,Skriv Off konto,
Write Off Cost Center,Afskriv omkostningssted,
Account for Change Amount,Konto for returbeløb,
Taxes and Charges,Moms,
Apply Discount On,Påfør Rabat på,
POS Profile User,POS profil bruger,
Apply On,Gælder for,
Price or Product Discount,Pris eller produktrabat,
Apply Rule On Item Code,Anvend regel om varekode,
Apply Rule On Item Group,Anvend regel om varegruppe,
Apply Rule On Brand,Anvend regel på brand,
Mixed Conditions,Blandede betingelser,
Conditions will be applied on all the selected items combined. ,Betingelserne anvendes på alle de valgte emner kombineret.,
Is Cumulative,Er kumulativ,
Coupon Code Based,Baseret på kuponkode,
Discount on Other Item,Rabat på anden vare,
Apply Rule On Other,Anvend regel på andet,
Party Information,Partyinformation,
Quantity and Amount,Mængde og mængde,
Min Qty,Minimum mængde,
Max Qty,Maksimal mængde,
Min Amt,Min Amt,
Max Amt,Max Amt,
Period Settings,Periodeindstillinger,
Margin,Margen,
Margin Type,Margin Type,
Margin Rate or Amount,Margin sats eller beløb,
Price Discount Scheme,Pris rabat ordning,
Rate or Discount,Pris eller rabat,
Discount Percentage,Discount Procent,
Discount Amount,Rabatbeløb,
For Price List,For prisliste,
Product Discount Scheme,Produktrabatningsordning,
Same Item,Samme vare,
Free Item,Gratis vare,
Threshold for Suggestion,Tærskel til forslag,
System will notify to increase or decrease quantity or amount ,Systemet giver besked om at øge eller mindske mængde eller mængde,
"Higher the number, higher the priority","Desto højere tallet er, jo højere prioritet",
Apply Multiple Pricing Rules,Anvend flere prisregler,
Apply Discount on Rate,Anvend rabat på sats,
Validate Applied Rule,Valider den anvendte regel,
Rule Description,Regelbeskrivelse,
Pricing Rule Help,Hjælp til prisfastsættelsesregel,
Promotional Scheme Id,Kampagnesystem-id,
Promotional Scheme,Salgsfremmende ordning,
Pricing Rule Brand,Prisregler Brand,
Pricing Rule Detail,Prissætningsdetaljer,
Child Docname,Underordnets navn,
Rule Applied,Anvendt regel,
Pricing Rule Item Code,Prisregler Produktkode,
Pricing Rule Item Group,Prisgruppe for vareposter,
Price Discount Slabs,Pris Rabatplader,
Promotional Scheme Price Discount,Salgspris rabat,
Product Discount Slabs,Produktrabatplader,
Promotional Scheme Product Discount,Salgsfremmende produkt rabat,
Min Amount,Min beløb,
Max Amount,Maks. Beløb,
Discount Type,Type rabat,
ACC-PINV-.YYYY.-,ACC-PINV-.YYYY.-,
Tax Withholding Category,Skat tilbageholdende kategori,
Edit Posting Date and Time,Redigér bogføringsdato og -tid,
Is Paid,er betalt,
Is Return (Debit Note),Er retur (debit note),
Apply Tax Withholding Amount,Anvend Skat tilbageholdelsesbeløb,
Accounting Dimensions ,Regnskabsdimensioner,
Supplier Invoice Details,Leverandør fakturadetaljer,
Supplier Invoice Date,Leverandør fakturadato,
Return Against Purchase Invoice,Retur Against købsfaktura,
Select Supplier Address,Vælg leverandør Adresse,
Contact Person,Kontaktperson,
Select Shipping Address,Vælg leveringsadresse,
Currency and Price List,Valuta- og prisliste,
Price List Currency,Prisliste Valuta,
Price List Exchange Rate,Prisliste valutakurs,
Set Accepted Warehouse,Indstil accepteret lager,
Rejected Warehouse,Afvist lager,
Warehouse where you are maintaining stock of rejected items,"Lager, hvor du vedligeholder lager af afviste varer",
Raw Materials Supplied,Leverede råvarer,
Supplier Warehouse,Leverandør Warehouse,
Pricing Rules,Prisregler,
Supplied Items,Medfølgende varer,
Total (Company Currency),I alt (firmavaluta),
Net Total (Company Currency),Netto i alt (firmavaluta),
Total Net Weight,Samlet nettovægt,
Shipping Rule,Forsendelseregel,
Purchase Taxes and Charges Template,Indkøb Moms- og afgiftsskabelon,
Purchase Taxes and Charges,Indkøb Moms og afgifter,
Tax Breakup,Skatteafbrydelse,
Taxes and Charges Calculation,Skatter og Afgifter Beregning,
Taxes and Charges Added (Company Currency),Skatter og Afgifter Tilføjet (Company Valuta),
Taxes and Charges Deducted (Company Currency),Skatter og Afgifter Fratrukket (Company Valuta),
Total Taxes and Charges (Company Currency),Moms i alt (firmavaluta),
Taxes and Charges Added,Skatter og Afgifter Tilføjet,
Taxes and Charges Deducted,Skatter og Afgifter Fratrukket,
Total Taxes and Charges,Moms i alt,
Additional Discount,Ekstra rabat,
Apply Additional Discount On,Påfør Yderligere Rabat på,
Additional Discount Amount (Company Currency),Ekstra rabatbeløb (firmavaluta),
Additional Discount Percentage,Yderligere rabatprocent,
Additional Discount Amount,Yderligere rabatbeløb,
Grand Total (Company Currency),Beløb i alt (firmavaluta),
Rounding Adjustment (Company Currency),Afrundingsjustering (Company Valuta),
Rounded Total (Company Currency),Afrundet i alt (firmavaluta),
In Words (Company Currency),I Words (Company Valuta),
Rounding Adjustment,Afrundingsjustering,
In Words,I Words,
Total Advance,Samlet Advance,
Disable Rounded Total,Deaktiver Afrundet Total,
Cash/Bank Account,Kontant / Bankkonto,
Write Off Amount (Company Currency),Skriv Off Beløb (Company Valuta),
Set Advances and Allocate (FIFO),Indstil Advances and Allocate (FIFO),
Get Advances Paid,Få forskud,
Advances,Forskud,
Terms,Betingelser,
Terms and Conditions1,Vilkår og betingelser 1,
Group same items,Gruppe samme elementer,
Print Language,Udskrivningssprog,
"Once set, this invoice will be on hold till the set date","Når den er indstillet, vil denne faktura være i venteposition indtil den fastsatte dato",
Credit To,Credit Til,
Party Account Currency,Selskabskonto Valuta,
Against Expense Account,Mod udgiftskonto,
Inter Company Invoice Reference,Interfirma faktura Reference,
Is Internal Supplier,Er intern leverandør,
Start date of current invoice's period,Startdato for nuværende fakturaperiode,
End date of current invoice's period,Slutdato for aktuelle faktura menstruation,
Update Auto Repeat Reference,Opdater Auto Repeat Reference,
Purchase Invoice Advance,Købsfaktura Advance,
Purchase Invoice Item,Købsfaktura Item,
Quantity and Rate,Mængde og Pris,
Received Qty,Modtaget Antal,
Accepted Qty,Accepteret antal,
Rejected Qty,afvist Antal,
UOM Conversion Factor,UOM Conversion Factor,
Discount on Price List Rate (%),Rabat på prisliste Rate (%),
Price List Rate (Company Currency),Prisliste Rate (Company Valuta),
Rate ,Sats,
Rate (Company Currency),Sats (firmavaluta),
Amount (Company Currency),Beløb (firmavaluta),
Is Free Item,Er gratis vare,
Net Rate,Nettosats,
Net Rate (Company Currency),Nettosats (firmavaluta),
Net Amount (Company Currency),Nettobeløb (firmavaluta),
Item Tax Amount Included in Value,Varemomsbeløb inkluderet i værdien,
Landed Cost Voucher Amount,Landed Cost Voucher Beløb,
Raw Materials Supplied Cost,Raw Materials Leveres Cost,
Accepted Warehouse,Accepteret lager,
Serial No,Serienummer,
Rejected Serial No,Afvist serienummer,
Expense Head,Expense Hoved,
Is Fixed Asset,Er anlægsaktiv,
Asset Location,Aktiver placering,
Deferred Expense,Udskudt Udgift,
Deferred Expense Account,Udskudt udgiftskonto,
Service Stop Date,Service Stop Date,
Enable Deferred Expense,Aktivér udskudt udgift,
Service Start Date,Service Startdato,
Service End Date,Service Slutdato,
Allow Zero Valuation Rate,Tillad nulværdi,
Item Tax Rate,Varemoms-%,
Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,Skat detalje tabel hentes fra post mester som en streng og opbevares i dette område. Bruges til skatter og afgifter,
Purchase Order Item,Indkøbsordre vare,
Purchase Receipt Detail,Køb af kvitteringsdetaljer,
Item Weight Details,Vægt Vægt Detaljer,
Weight Per Unit,Vægt pr. Enhed,
Total Weight,Totalvægt,
Weight UOM,Vægtenhed,
Page Break,Sideskift,
Consider Tax or Charge for,Overvej Skat eller Gebyr for,
Valuation and Total,Værdiansættelse og Total,
Valuation,Værdiansættelse,
Add or Deduct,Tilføje eller fratrække,
Deduct,Fratræk,
On Previous Row Amount,På Forrige Row Beløb,
On Previous Row Total,På Forrige Row Total,
On Item Quantity,Om varemængde,
Reference Row #,Henvisning Row #,
Is this Tax included in Basic Rate?,Er denne Tax inkluderet i Basic Rate?,
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Hvis markeret, vil momsbeløbet blive betragtet som allerede inkluderet i Print Sats / Print Beløb",
Account Head,Konto hoved,
Tax Amount After Discount Amount,Skat Beløb Efter Discount Beløb,
Item Wise Tax Detail ,Item Wise Tax Detail,
"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.\n\n#### Note\n\nThe 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.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **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.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. 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).\n9. 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.\n10. Add or Deduct: Whether you want to add or deduct the tax.","Standard momsskabelon, der kan anvendes på alle købstransaktioner. Denne skabelon kan indeholde liste over skatte- hoveder og også andre bekostning hoveder som ""Shipping"", ""forsikring"", ""Håndtering"" osv #### Bemærk Skatteprocenten du definerer her, vil være standard skattesats for alle ** Varer * *. Hvis der er ** Varer **, der har forskellige satser, skal de tilsættes i ** Item Skat ** bord i ** Item ** mester. #### Beskrivelse af kolonner 1. Beregning Type: - Dette kan være på ** Net Total ** (dvs. summen af grundbeløb). - ** På Forrige Row Total / Beløb ** (for kumulative skatter eller afgifter). Hvis du vælger denne mulighed, vil skatten blive anvendt som en procentdel af den forrige række (på skatteområdet tabel) beløb eller total. - ** Faktisk ** (som nævnt). 2. Konto Hoved: Account Finans hvorunder denne afgift vil være reserveret 3. Cost Center: Hvis skatten / afgiften er en indtægt (som shipping) eller omkostninger det skal reserveres mod en Cost Center. 4. Beskrivelse: Beskrivelse af skat (som vil blive trykt i fakturaer / citater). 5. Pris: Skatteprocent. 6. Beløb: Skat beløb. 7. Samlet: Kumulativ total til dette punkt. 8. Indtast Række: Hvis baseret på ""Forrige Row alt"" kan du vælge den række nummer, som vil blive taget som en base for denne beregning (standard er den forrige række). 9. Overvej Skat eller Gebyr for: I dette afsnit kan du angive, om skatten / afgiften er kun for værdiansættelse (ikke en del af det samlede) eller kun for total (ikke tilføre værdi til emnet) eller til begge. 10. Tilføj eller fratrække: Uanset om du ønsker at tilføje eller fratrække afgiften.",
ACC-SINV-.YYYY.-,ACC-SINV-.YYYY.-,
Include Payment (POS),Medtag betaling (Kassesystem),
Offline POS Name,Offline-kassesystemnavn,
Is Return (Credit Note),Er Retur (Kredit Bemærk),
Return Against Sales Invoice,Retur mod salgsfaktura,
Update Billed Amount in Sales Order,Opdater billedbeløb i salgsordre,
Customer PO Details,Kunde PO Detaljer,
Customer's Purchase Order,Kundens indkøbsordre,
Customer's Purchase Order Date,Kundens indkøbsordredato,
Customer Address,Kundeadresse,
Shipping Address Name,Leveringsadressenavn,
Company Address Name,Virksomhedens adresse navn,
Rate at which Customer Currency is converted to customer's base currency,"Hastighed, hvormed kunden Valuta omdannes til kundens basisvaluta",
Rate at which Price list currency is converted to customer's base currency,"Hastighed, hvormed Prisliste valuta omregnes til kundens basisvaluta",
Set Source Warehouse,Indstil kildelager,
Packing List,Pakkeliste,
Packed Items,Pakkede varer,
Product Bundle Help,Produktpakkehjælp,
Time Sheet List,Timeregistreringsoversigt,
Time Sheets,Tidsregistreringer,
Total Billing Amount,Samlet faktureringsbeløb,
Sales Taxes and Charges Template,Salg Moms- og afgiftsskabelon,
Sales Taxes and Charges,Salg Moms og afgifter,
Loyalty Points Redemption,Loyalitetspoint Indfrielse,
Redeem Loyalty Points,Indløs loyalitetspoint,
Redemption Account,Indløsningskonto,
Redemption Cost Center,Indløsningsomkostningscenter,
In Words will be visible once you save the Sales Invoice.,"""I ord"" vil være synlig, når du gemmer salgsfakturaen.",
Allocate Advances Automatically (FIFO),Fordel automatisk Advance (FIFO),
Get Advances Received,Få forskud,
Base Change Amount (Company Currency),Base ændring beløb (Company Currency),
Write Off Outstanding Amount,Skriv Off Udestående beløb,
Terms and Conditions Details,Betingelsesdetaljer,
Is Internal Customer,Er intern kunde,
Is Discounted,Er nedsat,
Unpaid and Discounted,Ubetalt og nedsat,
Overdue and Discounted,Forfaldne og nedsatte,
Accounting Details,Regnskabsdetaljer,
Debit To,Debit Til,
Is Opening Entry,Åbningspost,
C-Form Applicable,C-anvendelig,
Commission Rate (%),Provisionssats (%),
Sales Team1,Salgs TEAM1,
Against Income Account,Imod Indkomst konto,
Sales Invoice Advance,Salgsfaktura Advance,
Advance amount,Advance Beløb,
Sales Invoice Item,Salgsfakturavare,
Customer's Item Code,Kundens varenr.,
Brand Name,Varemærkenavn,
Qty as per Stock UOM,Mængde pr. lagerenhed,
Discount and Margin,Rabat og Margin,
Rate With Margin,Vurder med margen,
Discount (%) on Price List Rate with Margin,Rabat (%) på prisliste med margen,
Rate With Margin (Company Currency),Rate med margen (Company Currency),
Delivered By Supplier,Leveret af Leverandøren,
Deferred Revenue,Udskudte indtægter,
Deferred Revenue Account,Udskudt indtjeningskonto,
Enable Deferred Revenue,Aktivér udskudt indtjening,
Stock Details,Stock Detaljer,
Customer Warehouse (Optional),Kundelager (valgfrit),
Available Batch Qty at Warehouse,Tilgængeligt batch-antal på lageret,
Available Qty at Warehouse,Tilgængeligt antal på lageret,
Delivery Note Item,Følgeseddelvare,
Base Amount (Company Currency),Base Beløb (Company Currency),
Sales Invoice Timesheet,Salgsfaktura tidsregistrering,
Time Sheet,Tidsregistrering,
Billing Hours,Fakturerede timer,
Timesheet Detail,Timeseddel Detaljer,
Tax Amount After Discount Amount (Company Currency),Skat Beløb Efter Discount Beløb (Company Valuta),
Item Wise Tax Detail,Item Wise Tax Detail,
Parenttype,Parenttype,
"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.\n\n#### Note\n\nThe 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.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **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.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. 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).\n9. 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.","Standard skat skabelon, der kan anvendes på alle salgstransaktioner. Denne skabelon kan indeholde liste over skatte- hoveder og også andre udgifter / indtægter hoveder som &quot;Shipping&quot;, &quot;forsikring&quot;, &quot;Håndtering&quot; osv #### Bemærk Skatteprocenten du definerer her, vil være standard skattesats for alle ** Varer **. Hvis der er ** Varer **, der har forskellige satser, skal de tilsættes i ** Item Skat ** bord i ** Item ** mester. #### Beskrivelse af kolonner 1. Beregning Type: - Dette kan være på ** Net Total ** (dvs. summen af grundbeløb). - ** På Forrige Row Total / Beløb ** (for kumulative skatter eller afgifter). Hvis du vælger denne mulighed, vil skatten blive anvendt som en procentdel af den forrige række (på skatteområdet tabel) beløb eller total. - ** Faktisk ** (som nævnt). 2. Konto Hoved: Account Finans hvorunder denne afgift vil være reserveret 3. Cost Center: Hvis skatten / afgiften er en indtægt (som shipping) eller omkostninger det skal reserveres mod en Cost Center. 4. Beskrivelse: Beskrivelse af skat (som vil blive trykt i fakturaer / citater). 5. Pris: Skatteprocent. 6. Beløb: Skat beløb. 7. Samlet: Kumulativ total til dette punkt. 8. Indtast Række: Hvis baseret på &quot;Forrige Row alt&quot; kan du vælge den række nummer, som vil blive taget som en base for denne beregning (standard er den forrige række). 9. Er det Tax inkluderet i Basic Rate ?: Hvis du markerer dette, betyder det, at denne skat ikke vil blive vist under elementet bordet, men vil indgå i Basic Rate i din vigtigste punkt bordet. Dette er nyttigt, når du ønsker at give en flad pris (inklusive alle afgifter) pris til kunderne.",
* Will be calculated in the transaction.,* Vil blive beregnet i transaktionen.,
From No,Fra nr,
To No,Til nr,
Is Company,Er virksomhed,
Current State,Nuværende tilstand,
Purchased,købt,
From Shareholder,Fra Aktionær,
From Folio No,Fra Folio nr,
To Shareholder,Til aktionær,
To Folio No,Til Folio nr,
Equity/Liability Account,Egenkapital / Ansvarskonto,
Asset Account,Aktiver konto,
(including),(inklusive),
ACC-SH-.YYYY.-,ACC-SH-.YYYY.-,
Folio no.,Folio nr.,
Address and Contacts,Adresse og kontaktpersoner,
Contact List,Kontakt liste,
Hidden list maintaining the list of contacts linked to Shareholder,"Skjult liste vedligeholdelse af listen over kontakter, der er knyttet til Aktionær",
Specify conditions to calculate shipping amount,Angiv betingelser for at beregne forsendelsesmængden,
Shipping Rule Label,Forsendelseregeltekst,
example: Next Day Shipping,eksempel: Næste dages levering,
Shipping Rule Type,Forsendelsesregel Type,
Shipping Account,Forsendelse konto,
Calculate Based On,Beregn baseret på,
Fixed,Fast,
Net Weight,Nettovægt,
Shipping Amount,Forsendelsesmængde,
Shipping Rule Conditions,Forsendelsesregelbetingelser,
Restrict to Countries,Begræns til lande,
Valid for Countries,Gælder for lande,
Shipping Rule Condition,Forsendelsesregelbetingelse,
A condition for a Shipping Rule,Betingelse for en forsendelsesregel,
From Value,Fra Value,
To Value,Til Value,
Shipping Rule Country,Forsendelsesregelland,
Subscription Period,Abonnementsperiode,
Subscription Start Date,Abonnements startdato,
Cancelation Date,Annulleringsdato,
Trial Period Start Date,Prøveperiode Startdato,
Trial Period End Date,Prøveperiode Slutdato,
Current Invoice Start Date,Nuværende faktura startdato,
Current Invoice End Date,Nuværende faktura Slutdato,
Days Until Due,Dage indtil forfaldsdato,
Number of days that the subscriber has to pay invoices generated by this subscription,"Antal dage, som abonnenten skal betale fakturaer genereret af dette abonnement",
Cancel At End Of Period,Annuller ved slutningen af perioden,
Generate Invoice At Beginning Of Period,Generer faktura ved begyndelsen af perioden,
Plans,Planer,
Discounts,Rabatter,
Additional DIscount Percentage,Ekstra rabatprocent,
Additional DIscount Amount,Ekstra rabatbeløb,
Subscription Invoice,Abonnementsfaktura,
Subscription Plan,Abonnementsplan,
Cost,Koste,
Billing Interval,Faktureringsinterval,
Billing Interval Count,Faktureringsintervaltælling,
"Number of intervals for the interval field e.g if Interval is 'Days' and Billing Interval Count is 3, invoices will be generated every 3 days","Antal intervaller for intervalfeltet, fx hvis Interval er &#39;Days&#39; og Billing Interval Count er 3, vil fakturaer blive genereret hver 3. dag",
Payment Plan,Betalingsplan,
Subscription Plan Detail,Abonnementsplandetaljer,
Plan,Plan,
Subscription Settings,Abonnementsindstillinger,
Grace Period,Afdragsfri periode,
Number of days after invoice date has elapsed before canceling subscription or marking subscription as unpaid,"Antal dage efter fakturadato er udløbet, før abonnement eller markeringsabonnement ophæves som ubetalt",
Prorate,prorate,
Tax Rule,Momsregel,
Tax Type,Skat Type,
Use for Shopping Cart,Bruges til Indkøbskurv,
Billing City,Fakturering By,
Billing County,Anvendes ikke,
Billing State,Anvendes ikke,
Billing Zipcode,Fakturering Postnummer,
Billing Country,Faktureringsland,
Shipping City,Forsendelse By,
Shipping County,Anvendes ikke,
Shipping State,Forsendelse stat,
Shipping Zipcode,Shipping Postnummer,
Shipping Country,Forsendelsesland,
Tax Withholding Account,Skat tilbageholdende konto,
Tax Withholding Rates,Skat tilbageholdelsessatser,
Rates,priser,
Tax Withholding Rate,Skattefradrag,
Single Transaction Threshold,Single Transaction Threshold,
Cumulative Transaction Threshold,Kumulativ transaktionstærskel,
Agriculture Analysis Criteria,Landbrugsanalyse kriterier,
Linked Doctype,Tilknyttet doktype,
Water Analysis,Vandanalyse,
Soil Analysis,Jordanalyse,
Plant Analysis,Plant Analyse,
Fertilizer,Gødning,
Soil Texture,Jordstruktur,
Weather,Vejr,
Agriculture Manager,Landbrugschef,
Agriculture User,Landbrug Bruger,
Agriculture Task,Landbrugsopgave,
Task Name,Opgavenavn,
Start Day,Start dag,
End Day,Slutdagen,
Holiday Management,Holiday Management,
Ignore holidays,Ignorer ferie,
Previous Business Day,Tidligere Erhvervsdag,
Next Business Day,Næste forretningsdag,
Urgent,Hurtigst muligt,
Crop,Afgrøde,
Crop Name,Beskær Navn,
Scientific Name,Videnskabeligt navn,
"You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Du kan definere alle de opgaver, der skal udføres for denne afgrøde her. Dagfeltet bruges til at nævne den dag, hvorpå opgaven skal udføres, 1 er 1. dag mv.",
Crop Spacing,Beskæringsafstand,
Crop Spacing UOM,Beskær afstanden UOM,
Row Spacing,Rækkevidde,
Row Spacing UOM,Rækkevidde UOM,
Perennial,Perennial,
Biennial,Biennalen,
Planting UOM,Plantning af UOM,
Planting Area,Planteområde,
Yield UOM,Udbytte UOM,
Materials Required,Materialer krævet,
Produced Items,Producerede varer,
Produce,Fremstille,
Byproducts,biprodukter,
Linked Location,Linked Location,
A link to all the Locations in which the Crop is growing,"Et link til alle de steder, hvor afgrøden vokser",
This will be day 1 of the crop cycle,Dette bliver dag 1 i afgrødecyklussen,
ISO 8601 standard,ISO 8601 standard,
Cycle Type,Cykeltype,
Less than a year,Mindre end et år,
The minimum length between each plant in the field for optimum growth,Minimale længde mellem hver plante i marken for optimal vækst,
The minimum distance between rows of plants for optimum growth,Den minimale afstand mellem rækker af planter for optimal vækst,
Detected Diseases,Opdagede sygdomme,
List of diseases detected on the field. When selected it'll automatically add a list of tasks to deal with the disease ,"Liste over sygdomme opdaget på marken. Når den er valgt, tilføjer den automatisk en liste over opgaver for at håndtere sygdommen",
Detected Disease,Opdaget sygdom,
LInked Analysis,Analyseret,
Disease,Sygdom,
Tasks Created,Opgaver oprettet,
Common Name,Almindeligt navn,
Treatment Task,Behandlingstjeneste,
Treatment Period,Behandlingsperiode,
Fertilizer Name,Gødning Navn,
Density (if liquid),Tæthed (hvis væske),
Fertilizer Contents,Indhold af gødning,
Fertilizer Content,Gødning Indhold,
Linked Plant Analysis,Linked Plant Analysis,
Linked Soil Analysis,Linked Soil Analysis,
Linked Soil Texture,Sammenknyttet jordstruktur,
Collection Datetime,Samling Datetime,
Laboratory Testing Datetime,Laboratorietestning Datetime,
Result Datetime,Resultat Datetime,
Plant Analysis Criterias,Plant Analyse Kriterier,
Plant Analysis Criteria,Plant Analyse Kriterier,
Minimum Permissible Value,Mindste tilladelige værdi,
Maximum Permissible Value,Maksimum tilladt værdi,
Ca/K,Ca / K,
Ca/Mg,Ca / Mg,
Mg/K,Mg / K,
(Ca+Mg)/K,(Ca + Mg) / K,
Ca/(K+Ca+Mg),Ca / (K + Ca + Mg),
Soil Analysis Criterias,Jordanalysekriterier,
Soil Analysis Criteria,Kriterier for jordanalyse,
Soil Type,Jordtype,
Loamy Sand,Loamy Sand,
Sandy Loam,Sandy Loam,
Loam,lerjord,
Silt Loam,Silt Loam,
Sandy Clay Loam,Sandy Clay Loam,
Clay Loam,Clay Loam,
Silty Clay Loam,Silty Clay Loam,
Sandy Clay,Sandy Clay,
Silty Clay,Silty Clay,
Clay Composition (%),Ler sammensætning (%),
Sand Composition (%),Sandkomposition (%),
Silt Composition (%),Silt Sammensætning (%),
Ternary Plot,Ternary Plot,
Soil Texture Criteria,Kriterier for jordstruktur,
Type of Sample,Type prøve,
Container,Beholder,
Origin,Oprindelse,
Collection Temperature ,Indsamlingstemperatur,
Storage Temperature,Stuetemperatur,
Appearance,Udseende,
Person Responsible,Person Ansvarlig,
Water Analysis Criteria,Vandanalyse Kriterier,
Weather Parameter,Vejr Parameter,
ACC-ASS-.YYYY.-,ACC-ASS-.YYYY.-,
Asset Owner,Aktiv ejer,
Asset Owner Company,Aktiver egen virksomhed,
Custodian,kontoførende,
Disposal Date,Salgsdato,
Journal Entry for Scrap,Kassekladde til skrot,
Available-for-use Date,Tilgængelig-til-brug-dato,
Calculate Depreciation,Beregn afskrivninger,
Allow Monthly Depreciation,Tillad månedlig afskrivning,
Number of Depreciations Booked,Antal Afskrivninger Reserveret,
Finance Books,Finansbøger,
Straight Line,Lineær afskrivning,
Double Declining Balance,Dobbelt Faldende Balance,
Manual,Manuel,
Value After Depreciation,Værdi efter afskrivninger,
Total Number of Depreciations,Samlet antal afskrivninger,
Frequency of Depreciation (Months),Hyppigheden af afskrivninger (måneder),
Next Depreciation Date,Næste afskrivningsdato,
Depreciation Schedule,Afskrivninger Schedule,
Depreciation Schedules,Afskrivninger Tidsplaner,
Insurance details,Forsikringsoplysninger,
Policy number,Policenummer,
Insurer,Forsikringsgiver,
Insured value,Forsikret værdi,
Insurance Start Date,Forsikrings Startdato,
Insurance End Date,Forsikrings Slutdato,
Comprehensive Insurance,Omfattende Forsikring,
Maintenance Required,Vedligeholdelse kræves,
Check if Asset requires Preventive Maintenance or Calibration,"Kontroller, om aktivet kræver forebyggende vedligeholdelse eller kalibrering",
Booked Fixed Asset,Reserveret Fixed Asset,
Purchase Receipt Amount,Købsmodtagelsesbeløb,
Default Finance Book,Standard Finance Book,
Quality Manager,Kvalitetschef,
Asset Category Name,Aktiver kategori navn,
Depreciation Options,Afskrivningsmuligheder,
Enable Capital Work in Progress Accounting,Aktivér igangværende bogføringsarbejde,
Finance Book Detail,Finans Bog Detail,
Asset Category Account,Aktiver kategori konto,
Fixed Asset Account,Anlægsaktivkonto,
Accumulated Depreciation Account,Akkumuleret Afskrivninger konto,
Depreciation Expense Account,Afskrivninger udgiftskonto,
Capital Work In Progress Account,Capital Work Progress Account,
Asset Finance Book,Aktiver finans bog,
Written Down Value,Skriftlig nedværdi,
Expected Value After Useful Life,Forventet værdi efter forventet brugstid,
Rate of Depreciation,Afskrivningsgrad,
In Percentage,I procent,
Maintenance Team,Vedligeholdelse Team,
Maintenance Manager Name,Maintenance Manager Navn,
Maintenance Tasks,Vedligeholdelsesopgaver,
Manufacturing User,Produktionsbruger,
Asset Maintenance Log,Aktiver vedligeholdelse log,
ACC-AML-.YYYY.-,ACC-AML-.YYYY.-,
Maintenance Type,Vedligeholdelsestype,
Maintenance Status,Vedligeholdelsesstatus,
Planned,planlagt,
Has Certificate ,Har certifikat,
Certificate,Certifikat,
Actions performed,Handlinger udført,
Asset Maintenance Task,Aktiver vedligeholdelsesopgave,
Maintenance Task,Vedligeholdelsesopgave,
Preventive Maintenance,Forebyggende vedligeholdelse,
Calibration,Kalibrering,
2 Yearly,2 årligt,
Certificate Required,Certifikat er påkrævet,
Assign to Name,Tildel til navn,
Next Due Date,Næste Forfaldsdato,
Last Completion Date,Sidste sluttidspunkt,
Asset Maintenance Team,Aktiver vedligeholdelse hold,
Maintenance Team Name,Vedligeholdelsesnavn,
Maintenance Team Members,Vedligeholdelse Team Medlemmer,
Purpose,Formål,
Stock Manager,Stock manager,
Asset Movement Item,Element til bevægelse af aktiver,
Source Location,Kildeplacering,
From Employee,Fra Medarbejder,
Target Location,Målsted,
To Employee,Til medarbejder,
Asset Repair,Aktiver reparation,
ACC-ASR-.YYYY.-,ACC-ASR-.YYYY.-,
Failure Date,Fejldato,
Assign To Name,Tildel til navn,
Repair Status,Reparation Status,
Error Description,Fejlbeskrivelse,
Downtime,nedetid,
Repair Cost,Reparationsomkostninger,
Manufacturing Manager,Produktionschef,
Current Asset Value,Aktuel aktivværdi,
New Asset Value,Ny aktivværdi,
Make Depreciation Entry,Foretag Afskrivninger indtastning,
Finance Book Id,Finans Bog ID,
Location Name,Navn på sted,
Parent Location,Forældre Placering,
Is Container,Er Container,
Check if it is a hydroponic unit,Kontroller om det er en hydroponisk enhed,
Location Details,Placering detaljer,
Latitude,Breddegrad,
Longitude,Længde,
Area,Areal,
Area UOM,Område UOM,
Tree Details,Tree Detaljer,
Maintenance Team Member,Vedligeholdelse Teammedlem,
Team Member,Medarbejder,
Maintenance Role,Vedligeholdelsesrolle,
Buying Settings,Indkøbsindstillinger,
Settings for Buying Module,Indstillinger til køb modul,
Supplier Naming By,Leverandørnavngivning af,
Default Supplier Group,Standardleverandørgruppe,
Default Buying Price List,Standard indkøbsprisliste,
Backflush Raw Materials of Subcontract Based On,Backflush råmaterialer af underentreprise baseret på,
Material Transferred for Subcontract,Materialet overført til underentreprise,
Over Transfer Allowance (%),Overførselsgodtgørelse (%),
Percentage you are allowed to transfer more against the quantity ordered. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to transfer 110 units.,"Procentdel, du har lov til at overføre mere mod den bestilte mængde. For eksempel: Hvis du har bestilt 100 enheder. og din kvote er 10%, har du lov til at overføre 110 enheder.",
PUR-ORD-.YYYY.-,PUR-ORD-.YYYY.-,
Get Items from Open Material Requests,Hent varer fra åbne materialeanmodninger,
Fetch items based on Default Supplier.,Hent varer baseret på standardleverandør.,
Required By,Kræves By,
Order Confirmation No,Bekræftelsesbekendtgørelse nr,
Order Confirmation Date,Ordrebekræftelsesdato,
Customer Mobile No,Kunde mobiltelefonnr.,
Customer Contact Email,Kundeservicekontakt e-mail,
Set Target Warehouse,Indstil Target Warehouse,
Sets 'Warehouse' in each row of the Items table.,Indstiller &#39;Lager&#39; i hver række i tabellen Varer.,
Supply Raw Materials,Supply råmaterialer,
Purchase Order Pricing Rule,Regler for prisfastsættelse af indkøb,
Set Reserve Warehouse,Indstil Reserve Warehouse,
In Words will be visible once you save the Purchase Order.,"""I Ord"" vil være synlig, når du gemmer indkøbsordren.",
Advance Paid,Forudbetalt,
Tracking,Sporing,
% Billed,% Faktureret,
% Received,% Modtaget,
Ref SQ,Ref SQ,
Inter Company Order Reference,Inter-firmaordrehenvisning,
Supplier Part Number,Leverandør Part Number,
Billed Amt,Billed Amt,
Warehouse and Reference,Lager og reference,
To be delivered to customer,Der skal leveres til kunden,
Material Request Item,Materialeanmodningsvare,
Supplier Quotation Item,Leverandør tibudt Varer,
Against Blanket Order,Mod tæppeordre,
Blanket Order,Tæppeordre,
Blanket Order Rate,Tæppe Ordre Rate,
Returned Qty,Returneret Antal,
Purchase Order Item Supplied,Indkøbsordre leveret vare,
BOM Detail No,BOM Detail Nej,
Stock Uom,Lagerenhed,
Raw Material Item Code,Råmateriale varenr.,
Supplied Qty,Medfølgende Antal,
Purchase Receipt Item Supplied,Købskvittering leveret vare,
Current Stock,Aktuel lagerbeholdning,
PUR-RFQ-.YYYY.-,PUR-RFQ-.YYYY.-,
For individual supplier,Til individuel leverandør,
Link to Material Requests,Link til materialeanmodninger,
Message for Supplier,Besked til leverandøren,
Request for Quotation Item,Anmodning om tilbud Varer,
Required Date,Forfaldsdato,
Request for Quotation Supplier,Anmodning om tilbud Leverandør,
Send Email,Send e-mail,
Quote Status,Citat Status,
Download PDF,Download PDF,
Supplier of Goods or Services.,Leverandør af varer eller tjenesteydelser.,
Name and Type,Navn og type,
SUP-.YYYY.-,SUP-.YYYY.-,
Default Bank Account,Standard bankkonto,
Is Transporter,Er Transporter,
Represents Company,Representerer firma,
Supplier Type,Leverandørtype,
Allow Purchase Invoice Creation Without Purchase Order,Tillad oprettelse af købsfaktura uden indkøbsordre,
Allow Purchase Invoice Creation Without Purchase Receipt,Tillad oprettelse af købsfaktura uden købsmodtagelse,
Warn RFQs,Advar RFQ&#39;er,
Warn POs,Advarer PO&#39;er,
Prevent RFQs,Forebygg RFQs,
Prevent POs,Forhindre PO&#39;er,
Billing Currency,Fakturering Valuta,
Default Payment Terms Template,Standard betalingsbetingelser skabelon,
Block Supplier,Bloker leverandør,
Hold Type,Hold Type,
Leave blank if the Supplier is blocked indefinitely,"Forlad blank, hvis leverandøren er blokeret på ubestemt tid",
Default Payable Accounts,Standard betales Konti,
Mention if non-standard payable account,Angiv hvis ikke-standard betalingskonto,
Default Tax Withholding Config,Standard Skat tilbageholdende Config,
Supplier Details,Leverandør Detaljer,
Statutory info and other general information about your Supplier,Lovpligtig information og andre generelle oplysninger om din leverandør,
PUR-SQTN-.YYYY.-,PUR-SQTN-.YYYY.-,
Supplier Address,Leverandør Adresse,
Link to material requests,Link til materialeanmodninger,
Rounding Adjustment (Company Currency,Afrundingsjustering (Virksomhedsvaluta,
Auto Repeat Section,Automatisk gentag sektion,
Is Subcontracted,Underentreprise,
Lead Time in days,Gennemsnitlig leveringstid i dage,
Supplier Score,Leverandør score,
Indicator Color,Indikator Farve,
Evaluation Period,Evalueringsperiode,
Per Week,Per uge,
Per Month,Om måneden,
Per Year,Per år,
Scoring Setup,Scoring Setup,
Weighting Function,Vægtningsfunktion,
"Scorecard variables can be used, as well as:\n{total_score} (the total score from that period),\n{period_number} (the number of periods to present day)\n","Scorecard-variabler kan bruges, samt: {total_score} (den samlede score fra den periode), {period_number} (antallet af perioder til nutidens dag)",
Scoring Standings,Scoring Standings,
Criteria Setup,Kriterier opsætning,
Load All Criteria,Indlæs alle kriterier,
Scoring Criteria,Scoringskriterier,
Scorecard Actions,Scorecard Actions,
Warn for new Request for Quotations,Advar om ny anmodning om tilbud,
Warn for new Purchase Orders,Advarer om nye indkøbsordrer,
Notify Supplier,Underret Leverandør,
Notify Employee,Underrette medarbejder,
Supplier Scorecard Criteria,Leverandør Scorecard Criteria,
Criteria Name,Kriterier Navn,
Max Score,Max score,
Criteria Formula,Kriterier Formel,
Criteria Weight,Kriterier Vægt,
Supplier Scorecard Period,Leverandør Scorecard Periode,
PU-SSP-.YYYY.-,PU-SSP-.YYYY.-,
Period Score,Periode score,
Calculations,Beregninger,
Criteria,Kriterier,
Variables,Variable,
Supplier Scorecard Setup,Leverandør Scorecard Setup,
Supplier Scorecard Scoring Criteria,Leverandør Scorecard Scoring Criteria,
Score,score,
Supplier Scorecard Scoring Standing,Leverandør Scorecard Scoring Standing,
Standing Name,Stående navn,
Purple,Lilla,
Yellow,Gul,
Orange,orange,
Min Grade,Min Grade,
Max Grade,Max Grade,
Warn Purchase Orders,Advarer indkøbsordrer,
Prevent Purchase Orders,Forhindre indkøbsordrer,
Employee ,Medarbejder,
Supplier Scorecard Scoring Variable,Leverandør Scorecard Scoringsvariabel,
Variable Name,Variabelt navn,
Parameter Name,Parameternavn,
Supplier Scorecard Standing,Leverandør Scorecard Standing,
Notify Other,Underret Andet,
Supplier Scorecard Variable,Leverandør Scorecard Variable,
Call Log,Opkaldsliste,
Received By,Modtaget af,
Caller Information,Oplysninger om opkald,
Contact Name,Kontaktnavn,
Lead ,At føre,
Lead Name,Emnenavn,
Ringing,Ringetone,
Missed,Savnet,
Call Duration in seconds,Opkaldstid i sekunder,
Recording URL,Optagelses-URL,
Communication Medium,Kommunikation Medium,
Communication Medium Type,Kommunikation Medium Type,
Voice,Stemme,
Catch All,Fang alle,
"If there is no assigned timeslot, then communication will be handled by this group","Hvis der ikke er tildelt timeslot, håndteres kommunikation af denne gruppe",
Timeslots,tidsintervaller,
Communication Medium Timeslot,Kommunikation Medium Timeslot,
Employee Group,Medarbejdergruppe,
Appointment,Aftale,
Scheduled Time,Planlagt tid,
Unverified,Ubekræftet,
Customer Details,Kundedetaljer,
Phone Number,Telefonnummer,
Skype ID,Skype ID,
Linked Documents,Koblede dokumenter,
Appointment With,Aftale med,
Calendar Event,Kalenderbegivenhed,
Appointment Booking Settings,Indstillinger for aftalebestilling,
Enable Appointment Scheduling,Aktivér aftaleplanlægning,
Agent Details,Agentdetaljer,
Availability Of Slots,Tilgængelighed af slots,
Number of Concurrent Appointments,Antal samtidige aftaler,
Agents,Agenter,
Appointment Details,Detaljer om aftale,
Appointment Duration (In Minutes),Konsultationens varighed (antal minutter),
Notify Via Email,Underret via e-mail,
Notify customer and agent via email on the day of the appointment.,Underret kunden og agenten via e-mail på aftaledagen.,
Number of days appointments can be booked in advance,Antal dages aftaler kan reserveres på forhånd,
Success Settings,Indstillinger for succes,
Success Redirect URL,Webadresse til omdirigering af succes,
"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Lad være tomt til hjemmet. Dette er i forhold til websteds-URL, for eksempel &quot;vil&quot; omdirigere til &quot;https://yoursitename.com/about&quot;",
Appointment Booking Slots,Aftaler Booking Slots,
Day Of Week,Ugedag,
From Time ,Fra Time,
Campaign Email Schedule,Kampagne-e-mail-plan,
Send After (days),Send efter (dage),
Signed,Underskrevet,
Party User,Selskabs-bruger,
Unsigned,usigneret,
Fulfilment Status,Opfyldelsesstatus,
N/A,N / A,
Unfulfilled,uopfyldte,
Partially Fulfilled,Delvis opfyldt,
Fulfilled,opfyldt,
Lapsed,bortfaldet,
Contract Period,Kontraktperiode,
Signee Details,Signee Detaljer,
Signee,Signee,
Signed On,Logget på,
Contract Details,Kontrakt Detaljer,
Contract Template,Kontraktskabel,
Contract Terms,Kontraktvilkår,
Fulfilment Details,Opfyldelse Detaljer,
Requires Fulfilment,Kræver Opfyldelse,
Fulfilment Deadline,Opfyldelsesfrist,
Fulfilment Terms,Opfyldelsesbetingelser,
Contract Fulfilment Checklist,Kontrol Fulfillment Checklist,
Requirement,Krav,
Contract Terms and Conditions,Kontraktvilkår og betingelser,
Fulfilment Terms and Conditions,Opfyldelsesbetingelser,
Contract Template Fulfilment Terms,Kontraktskabelopfyldelsesbetingelser,
Email Campaign,E-mail-kampagne,
Email Campaign For ,E-mail-kampagne til,
Lead is an Organization,Bly er en organisation,
CRM-LEAD-.YYYY.-,CRM-LEAD-.YYYY.-,
Person Name,Navn,
Lost Quotation,Lost Citat,
Interested,Interesseret,
Converted,Konverteret,
Do Not Contact,Må ikke komme i kontakt,
From Customer,Fra kunde,
Campaign Name,Kampagne Navn,
Follow Up,Opfølgning,
Next Contact By,Næste kontakt af,
Next Contact Date,Næste kontakt d.,
Ends On,Ender på,
Address & Contact,Adresse og kontaktperson,
Mobile No.,Mobiltelefonnr.,
Lead Type,Emnetype,
Channel Partner,Channel Partner,
Consultant,Konsulent,
Market Segment,Markedssegment,
Industry,Branche,
Request Type,Anmodningstype,
Product Enquiry,Produkt Forespørgsel,
Request for Information,Anmodning om information,
Suggestions,Forslag,
Blog Subscriber,Blog Subscriber,
LinkedIn Settings,LinkedIn-indstillinger,
Company ID,Virksomheds-id,
OAuth Credentials,OAuth-legitimationsoplysninger,
Consumer Key,Forbrugernøgle,
Consumer Secret,Forbrugerhemmelighed,
User Details,Brugeroplysninger,
Person URN,Person URN,
Session Status,Sessionsstatus,
Lost Reason Detail,Detaljer om tabt årsag,
Opportunity Lost Reason,Mulighed mistet grund,
Potential Sales Deal,Potentielle Sales Deal,
CRM-OPP-.YYYY.-,CRM-OPP-.YYYY.-,
Opportunity From,Salgsmulighed fra,
Customer / Lead Name,Kunde / Emne navn,
Opportunity Type,Salgsmulighedstype,
Converted By,Konverteret af,
Sales Stage,Salgstrin,
Lost Reason,Tabsårsag,
Expected Closing Date,Forventet slutdato,
To Discuss,Samtaleemne,
With Items,Med varer,
Probability (%),Sandsynlighed (%),
Contact Info,Kontaktinformation,
Customer / Lead Address,Kunde / Emne Adresse,
Contact Mobile No,Kontakt mobiltelefonnr.,
Enter name of campaign if source of enquiry is campaign,"Indtast navnet på kampagne, hvis kilden undersøgelsesudvalg er kampagne",
Opportunity Date,Salgsmulighedsdato,
Opportunity Item,Salgsmulighed Vare,
Basic Rate,Grundlæggende Rate,
Stage Name,Kunstnernavn,
Social Media Post,Social Media Post,
Post Status,Post status,
Posted,Sendt,
Share On,Del på,
Twitter,Twitter,
LinkedIn,LinkedIn,
Twitter Post Id,Twitter-post-id,
LinkedIn Post Id,LinkedIn-post-id,
Tweet,Tweet,
Twitter Settings,Twitter-indstillinger,
API Secret Key,API-hemmelig nøgle,
Term Name,Betingelsesnavn,
Term Start Date,Betingelser startdato,
Term End Date,Betingelser slutdato,
Academics User,akademikere Bruger,
Academic Year Name,Skoleårsnavn,
Article,Genstand,
LMS User,LMS-bruger,
Assessment Criteria Group,Vurderingskriterier gruppe,
Assessment Group Name,Vurderings gruppe navn,
Parent Assessment Group,Parent Group Assessment,
Assessment Name,Vurdering Navn,
Grading Scale,karakterbekendtgørelsen,
Examiner,Censor,
Examiner Name,Censornavn,
Supervisor,Tilsynsførende,
Supervisor Name,supervisor Navn,
Evaluate,Vurdere,
Maximum Assessment Score,Maksimal Score Assessment,
Assessment Plan Criteria,Vurdering Plan Kriterier,
Maximum Score,Maksimal score,
Grade,Grad,
Assessment Result Detail,Vurdering resultat detalje,
Assessment Result Tool,Vurderings resultat værktøj,
Result HTML,resultat HTML,
Content Activity,Indholdsaktivitet,
Last Activity ,Sidste aktivitet,
Content Question,Indholdsspørgsmål,
Question Link,Spørgsmål Link,
Course Name,Kursusnavn,
Topics,Emner,
Hero Image,Heltebillede,
Default Grading Scale,Standard karakterbekendtgørelsen,
Education Manager,Uddannelsesleder,
Course Activity,Kursusaktivitet,
Course Enrollment,Kursus tilmelding,
Activity Date,Aktivitetsdato,
Course Assessment Criteria,Kriterier for kursusvurdering,
Weightage,Vægtning,
Course Content,Kursets indhold,
Quiz,Quiz,
Program Enrollment,Program Tilmelding,
Enrollment Date,Tilmelding Dato,
Instructor Name,Instruktør Navn,
EDU-CSH-.YYYY.-,EDU-CSH-.YYYY.-,
Course Scheduling Tool,Kursusplanlægningsværktøj,
Course Start Date,Kursusstartdato,
To TIme,Til Time,
Course End Date,Kursus slutdato,
Course Topic,Kursusemne,
Topic,Emne,
Topic Name,Emnenavn,
Education Settings,Uddannelsesindstillinger,
Current Academic Year,Nuværende skoleår,
Current Academic Term,Nuværende akademisk betegnelse,
Attendance Freeze Date,Tilmelding senest d.,
Validate Batch for Students in Student Group,Valider batch for studerende i studentegruppe,
"For Batch based Student Group, the Student Batch will be validated for every Student from the Program Enrollment.",For Batch-baserede Studentegruppe bliver Student Batch Valideret for hver Student fra Programindskrivningen.,
Validate Enrolled Course for Students in Student Group,Valider indskrevet kursus for studerende i studentegruppe,
"For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.",For kursusbaseret studentegruppe vil kurset blive valideret for hver elev fra de tilmeldte kurser i programtilmelding.,
Make Academic Term Mandatory,Gør faglig semester obligatorisk,
"If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.","Hvis aktiveret, vil feltet Akademisk Term være obligatorisk i Programindskrivningsværktøjet.",
Skip User creation for new Student,Spring brugeroprettelse over for ny elev,
"By default, a new User is created for every new Student. If enabled, no new User will be created when a new Student is created.","Som standard oprettes der en ny bruger for hver ny elev. Hvis aktiveret, oprettes der ingen ny bruger, når en ny elev oprettes.",
Instructor Records to be created by,"Instruktør Records, der skal oprettes af",
Employee Number,Medarbejdernr.,
Fee Category,Gebyr Kategori,
Fee Component,Gebyr Component,
Fees Category,Gebyrer Kategori,
Fee Schedule,Fee Schedule,
Fee Structure,Gebyr struktur,
EDU-FSH-.YYYY.-,EDU-FSH-.YYYY.-,
Fee Creation Status,Fee Creation Status,
In Process,I Process,
Send Payment Request Email,Send betalingsanmodning e-mail,
Student Category,Studerendekategori,
Fee Breakup for each student,Fee Breakup for hver elev,
Total Amount per Student,Samlede beløb pr. Studerende,
Institution,Institution,
Fee Schedule Program,Fee Schedule Program,
Student Batch,Elevgruppe,
Total Students,Samlet Studerende,
Fee Schedule Student Group,Fee Schedule Student Group,
EDU-FST-.YYYY.-,EDU-FST-.YYYY.-,
EDU-FEE-.YYYY.-,EDU-FEE-.YYYY.-,
Include Payment,Inkluder betaling,
Send Payment Request,Send betalingsanmodning,
Student Details,Studentoplysninger,
Student Email,Student Email,
Grading Scale Name,Karakterbekendtgørelsen Navn,
Grading Scale Intervals,Grading Scale Intervaller,
Intervals,Intervaller,
Grading Scale Interval,Karakterskala Interval,
Grade Code,Grade kode,
Threshold,Grænseværdi,
Grade Description,Grade Beskrivelse,
Guardian,Guardian,
Guardian Name,Guardian Navn,
Alternate Number,Alternativ Number,
Occupation,Beskæftigelse,
Work Address,Arbejdsadresse,
Guardian Of ,Guardian Of,
Students,Studerende,
Guardian Interests,Guardian Interesser,
Guardian Interest,Guardian Renter,
Interest,Interesse,
Guardian Student,Guardian Student,
EDU-INS-.YYYY.-,EDU-INS-.YYYY.-,
Instructor Log,Instruktør Log,
Other details,Andre detaljer,
Option,Mulighed,
Is Correct,Er korrekt,
Program Name,Programnavn,
Program Abbreviation,Program Forkortelse,
Courses,Kurser,
Is Published,Udgives,
Allow Self Enroll,Tillad selvregistrering,
Is Featured,Er vist,
Intro Video,Introduktionsvideo,
Program Course,Kursusprogram,
School House,School House,
Boarding Student,Boarding Student,
Check this if the Student is residing at the Institute's Hostel.,"Tjek dette, hvis den studerende er bosiddende på instituttets Hostel.",
Walking,gåture,
Institute's Bus,Instituttets bus,
Public Transport,Offentlig transport,
Self-Driving Vehicle,Selvkørende køretøj,
Pick/Drop by Guardian,Vælg / Drop af Guardian,
Enrolled courses,Indskrevne kurser,
Program Enrollment Course,Tilmeldingskursusprogramm,
Program Enrollment Fee,Program Tilmelding Gebyr,
Program Enrollment Tool,Program Tilmelding Tool,
Get Students From,Hent studerende fra,
Student Applicant,Student Ansøger,
Get Students,Hent studerende,
Enrollment Details,Indtastningsdetaljer,
New Program,nyt Program,
New Student Batch,Ny Student Batch,
Enroll Students,Tilmeld Studerende,
New Academic Year,Nyt skoleår,
New Academic Term,Ny akademisk term,
Program Enrollment Tool Student,Program Tilmelding Tool Student,
Student Batch Name,Elevgruppenavn,
Program Fee,Program Fee,
Question,Spørgsmål,
Single Correct Answer,Enkelt korrekt svar,
Multiple Correct Answer,Flere korrekte svar,
Quiz Configuration,Quiz-konfiguration,
Passing Score,Bestået score,
Score out of 100,Resultat ud af 100,
Max Attempts,Max forsøg,
Enter 0 to waive limit,Indtast 0 for at fravige grænsen,
Grading Basis,Karakterbasis,
Latest Highest Score,Seneste højeste score,
Latest Attempt,Seneste forsøg,
Quiz Activity,Quiz-aktivitet,
Enrollment,Tilmelding,
Pass,Passere,
Quiz Question,Quiz Spørgsmål,
Quiz Result,Quiz Resultat,
Selected Option,Valgt valg,
Correct,Korrekt,
Wrong,Forkert,
Room Name,Værelsesnavn,
Room Number,Værelsesnummer,
Seating Capacity,Seating Capacity,
House Name,Husnavn,
EDU-STU-.YYYY.-,EDU-STU-.YYYY.-,
Student Mobile Number,Studerende mobiltelefonnr.,
Blood Group,Blodtype,
A+,A +,
A-,A-,
B+,B +,
B-,B-,
O+,O +,
O-,O-,
AB+,AB +,
AB-,AB-,
Nationality,Nationalitet,
Home Address,Hjemmeadresse,
Guardian Details,Guardian Detaljer,
Guardians,Guardians,
Sibling Details,søskende Detaljer,
Siblings,Søskende,
Exit,Udgang,
Date of Leaving,Dato for Leaving,
Leaving Certificate Number,Leaving Certificate Number,
Reason For Leaving,Årsag til at forlade,
Student Admission,Studerende optagelse,
Admission Start Date,Optagelse Startdato,
Admission End Date,Optagelse Slutdato,
Eligibility and Details,Støtteberettigelse og detaljer,
Student Admission Program,Studenter Adgangsprogram,
Minimum Age,Mindstealder,
Maximum Age,Maksimal alder,
Application Fee,Tilmeldingsgebyr,
Naming Series (for Student Applicant),Navngivningsnummerserie (for elevansøger),
LMS Only,Kun LMS,
EDU-APP-.YYYY.-,EDU-APP-.YYYY.-,
Application Date,Ansøgningsdato,
Student Attendance Tool,Student Deltagelse Tool,
Group Based On,Gruppebaseret på,
Students HTML,Studerende HTML,
Group Based on,Gruppe baseret på,
Student Group Name,Elevgruppenavn,
Max Strength,Max Strength,
Set 0 for no limit,Sæt 0 for ingen grænse,
Instructors,Instruktører,
Student Group Creation Tool,Værktøj til dannelse af elevgrupper,
Leave blank if you make students groups per year,"Lad feltet stå tomt, hvis du laver elevergrupper hvert år",
Get Courses,Hent kurser,
Separate course based Group for every Batch,Separat kursusbaseret gruppe for hver batch,
Leave unchecked if you don't want to consider batch while making course based groups. ,"Markér ikke, hvis du ikke vil overveje batch mens du laver kursusbaserede grupper.",
Student Group Creation Tool Course,Elevgruppeværktøj til dannelse af fag,
Course Code,Kursuskode,
Student Group Instructor,Studentgruppeinstruktør,
Student Group Student,Elev i elevgruppe,
Group Roll Number,Gruppe Roll nummer,
Student Guardian,Student Guardian,
Relation,Relation,
Mother,Mor,
Father,Far,
Student Language,Student Sprog,
Student Leave Application,Student Leave Application,
Mark as Present,Markér som tilstede,
Student Log,Student Log,
Academic,Akademisk,
Achievement,Præstation,
Student Report Generation Tool,Student Report Generation Tool,
Include All Assessment Group,Inkluder alle vurderingsgrupper,
Show Marks,Vis mærker,
Add letterhead,Tilføj brevpapir,
Print Section,Udskrivningsafsnit,
Total Parents Teacher Meeting,Samlet forældreundervisningsmøde,
Attended by Parents,Deltaget af forældre,
Assessment Terms,Vurderingsbetingelser,
Student Sibling,Student Søskende,
Studying in Same Institute,At studere i samme institut,
NO,INGEN,
YES,JA,
Student Siblings,Student Søskende,
Topic Content,Emneindhold,
Amazon MWS Settings,Amazon MWS-indstillinger,
ERPNext Integrations,ERPNext Integrations,
Enable Amazon,Aktivér Amazon,
MWS Credentials,MWS Credentials,
Seller ID,Sælger ID,
AWS Access Key ID,AWS adgangsnøgle id,
MWS Auth Token,MWS Auth Token,
Market Place ID,Markedsplads ID,
AE,AE,
AU,AU,
BR,BR,
CA,CA,
CN,CN,
DE,DE,
ES,ES,
FR,FR,
JP,JP,
IT,DET,
MX,MX,
UK,UK,
US,OS,
Customer Type,Kunde type,
Market Place Account Group,Market Place Account Group,
After Date,Efter dato,
Amazon will synch data updated after this date,Amazon vil synkronisere data opdateret efter denne dato,
Sync Taxes and Charges,Synkroniser skatter og afgifter,
Get financial breakup of Taxes and charges data by Amazon ,Få økonomisk opsplitning af skatter og afgifter data fra Amazon,
Sync Products,Synkroniser produkter,
Always sync your products from Amazon MWS before synching the Orders details,"Synkroniser altid dine produkter fra Amazon MWS, inden du synkroniserer ordredetaljerne",
Sync Orders,Synkroniser ordrer,
Click this button to pull your Sales Order data from Amazon MWS.,Klik på denne knap for at trække dine salgsordre data fra Amazon MWS.,
Enable Scheduled Sync,Aktivér planlagt synkronisering,
Check this to enable a scheduled Daily synchronization routine via scheduler,Marker dette for at aktivere en planlagt daglig synkroniseringsrutine via tidsplanlægger,
Max Retry Limit,Max Retry Limit,
Exotel Settings,Exotel-indstillinger,
Account SID,Konto SID,
API Token,API-token,
GoCardless Mandate,GoCardless Mandat,
Mandate,Mandat,
GoCardless Customer,GoCardless kunde,
GoCardless Settings,GoCardless Indstillinger,
Webhooks Secret,Webhooks Secret,
Plaid Settings,Plaid-indstillinger,
Synchronize all accounts every hour,Synkroniser alle konti hver time,
Plaid Client ID,Plaid Client ID,
Plaid Secret,Plaid Secret,
Plaid Environment,Plaid miljø,
sandbox,sandkasse,
development,udvikling,
production,produktion,
QuickBooks Migrator,QuickBooks Migrator,
Application Settings,Applikationsindstillinger,
Token Endpoint,Token Endpoint,
Scope,Anvendelsesområde,
Authorization Settings,Autorisations indstillinger,
Authorization Endpoint,Autorisation endepunkt,
Authorization URL,Tilladelseswebadresse,
Quickbooks Company ID,Quickbooks Company ID,
Company Settings,Firmaindstillinger,
Default Shipping Account,Standard fragtkonto,
Default Warehouse,Standard-lager,
Default Cost Center,Standard omkostningssted,
Undeposited Funds Account,Undeposited Funds Account,
Shopify Log,Shopify Log,
Request Data,Forespørgselsdata,
Shopify Settings,Shopify Indstillinger,
status html,status html,
Enable Shopify,Aktivér Shopify,
App Type,App Type,
Last Sync Datetime,Sidste synkroniseringstidspunkt,
Shop URL,Shop URL,
eg: frappe.myshopify.com,fx: frappe.myshopify.com,
Shared secret,Delt hemmelighed,
Webhooks Details,Webhooks Detaljer,
Webhooks,Webhooks,
Customer Settings,Kundeindstillinger,
Default Customer,Standardkunden,
Customer Group will set to selected group while syncing customers from Shopify,"Kundegruppe vil indstille til den valgte gruppe, mens du synkroniserer kunder fra Shopify",
For Company,Til firma,
Cash Account will used for Sales Invoice creation,Kontantkonto bruges til oprettelse af salgsfaktura,
Update Price from Shopify To ERPNext Price List,Opdater pris fra Shopify til ERPNæste prisliste,
Default Warehouse to to create Sales Order and Delivery Note,Standardlager til at oprette salgsordre og leveringsnotat,
Sales Order Series,Salgsordre Serie,
Import Delivery Notes from Shopify on Shipment,Import leveringsnotater fra Shopify på forsendelse,
Delivery Note Series,Serie til leveringskort,
Import Sales Invoice from Shopify if Payment is marked,Import salgsfaktura fra Shopify hvis Betaling er markeret,
Sales Invoice Series,Salgsfaktura-serien,
Shopify Tax Account,Shopify Skatkonto,
Shopify Tax/Shipping Title,Shopify Skat / Fragt Titel,
ERPNext Account,ERPNæste konto,
Shopify Webhook Detail,Shopify Webhook Detail,
Webhook ID,Webhook ID,
Tally Migration,Tally Migration,
Master Data,Master Data,
"Data exported from Tally that consists of the Chart of Accounts, Customers, Suppliers, Addresses, Items and UOMs","Data eksporteret fra Tally, der består af kontoplanen, kunder, leverandører, adresser, varer og UOM&#39;er",
Is Master Data Processed,Behandles stamdata,
Is Master Data Imported,Importeres stamdata,
Tally Creditors Account,Tally kreditkonto,
Creditors Account set in Tally,Kreditorkonto angivet i Tally,
Tally Debtors Account,Tally Debtors Account,
Debtors Account set in Tally,Debitors konto angivet i Tally,
Tally Company,Tally Company,
Company Name as per Imported Tally Data,Firmanavn i henhold til importerede taldata,
Default UOM,Standard måleenhed,
UOM in case unspecified in imported data,UOM i tilfælde af uspecificeret i importerede data,
ERPNext Company,ERPNæxt Company,
Your Company set in ERPNext,Dit firma er angivet i ERPNext,
Processed Files,Behandlede filer,
Parties,parterne,
UOMs,Enheder,
Vouchers,Beviserne,
Round Off Account,Afrundningskonto,
Day Book Data,Dagbogsdata,
Day Book Data exported from Tally that consists of all historic transactions,"Dagbogsdata eksporteret fra Tally, der består af alle historiske transaktioner",
Is Day Book Data Processed,Behandles dagbogsdata,
Is Day Book Data Imported,Er dagbogsdata importeret,
Woocommerce Settings,Woocommerce Indstillinger,
Enable Sync,Aktivér synkronisering,
Woocommerce Server URL,Webadresse for WoCommerce Server,
Secret,Hemmelighed,
API consumer key,API forbrugernøgle,
API consumer secret,API forbruger hemmelighed,
Tax Account,Skatkonto,
Freight and Forwarding Account,Fragt og videresendelse konto,
Creation User,Oprettelsesbruger,
"The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.","Brugeren, der vil blive brugt til at oprette kunder, varer og salgsordrer. Denne bruger skal have de relevante tilladelser.",
"This warehouse will be used to create Sales Orders. The fallback warehouse is ""Stores"".",Dette lager bruges til at oprette salgsordrer. Fallback-lageret er &quot;Butikker&quot;.,
"The fallback series is ""SO-WOO-"".",Fallback-serien er &quot;SO-WOO-&quot;.,
This company will be used to create Sales Orders.,Dette firma vil blive brugt til at oprette salgsordrer.,
Delivery After (Days),Levering efter (dage),
This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Dette er standardforskydningen (dage) for leveringsdatoen i salgsordrer. Fallback-forskydningen er 7 dage fra bestillingsdato.,
"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Dette er standard UOM brugt til varer og salgsordrer. Fallback UOM er &quot;Nej&quot;.,
Endpoints,endpoints,
Endpoint,Endpoint,
Antibiotic Name,Antibiotikum Navn,
Healthcare Administrator,Sundhedsadministrator,
Laboratory User,Laboratoriebruger,
Is Inpatient,Er ikke-indlagt patient,
Default Duration (In Minutes),Standard varighed (antal minutter),
Body Part,Kropsdel,
Body Part Link,Link til kropsdele,
HLC-CPR-.YYYY.-,HLC-CPR-.YYYY.-,
Procedure Template,Procedureskabelon,
Procedure Prescription,Procedure Recept,
Service Unit,Serviceenhed,
Consumables,Forbrugsstoffer,
Consume Stock,Forbruge lager,
Invoice Consumables Separately,Faktura forbrugsvarer separat,
Consumption Invoiced,Forbrug faktureret,
Consumable Total Amount,Forbrugbart samlet beløb,
Consumption Details,Forbrugsdetaljer,
Nursing User,Sygeplejerske bruger,
Clinical Procedure Item,Klinisk procedurevare,
Invoice Separately as Consumables,Faktura Separat som forbrugsstoffer,
Transfer Qty,Overførselsantal,
Actual Qty (at source/target),Faktiske Antal (ved kilden / mål),
Is Billable,Kan faktureres,
Allow Stock Consumption,Tillad lagerforbrug,
Sample UOM,Prøve UOM,
Collection Details,Indsamlingsdetaljer,
Change In Item,Ændring i vare,
Codification Table,Kodifikationstabel,
Complaints,klager,
Dosage Strength,Doseringsstyrke,
Strength,Styrke,
Drug Prescription,Lægemiddelrecept,
Drug Name / Description,Lægemiddelnavn,
Dosage,Dosering,
Dosage by Time Interval,Dosering efter tidsinterval,
Interval,Interval,
Interval UOM,Interval UOM,
Hour,Time,
Update Schedule,Opdateringsplan,
Exercise,Dyrke motion,
Difficulty Level,Sværhedsgrad,
Counts Target,Tæller mål,
Counts Completed,Tællinger afsluttet,
Assistance Level,Assistance niveau,
Active Assist,Aktiv assistent,
Exercise Name,Øvelsesnavn,
Body Parts,Kropsdele,
Exercise Instructions,Træningsinstruktioner,
Exercise Video,Træningsvideo,
Exercise Steps,Øvelsestrin,
Steps,Trin,
Steps Table,Trin tabel,
Exercise Type Step,Træningstypetrin,
Max number of visit,Maks antal besøg,
Visited yet,Besøgt endnu,
Reference Appointments,Referenceaftaler,
Valid till,Gyldig til,
Fee Validity Reference,Henvisning til gebyrets gyldighed,
Basic Details,Grundlæggende detaljer,
HLC-PRAC-.YYYY.-,HLC-PRAC-.ÅÅÅÅ.-,
Mobile,Mobil,
Phone (R),Telefon (R),
Phone (Office),Telefon (kontor),
Employee and User Details,Medarbejder- og brugeroplysninger,
Hospital,Sygehus,
Appointments,Aftaler,
Practitioner Schedules,Practitioner Schedules,
Charges,Afgifter,
Out Patient Consulting Charge,Udgifter til patientrådgivning,
Default Currency,Standardvaluta,
Healthcare Schedule Time Slot,Healthcare Schedule Time Slot,
Parent Service Unit,Moderselskab,
Service Unit Type,Service Unit Type,
Allow Appointments,Tillad aftaler,
Allow Overlap,Tillad overlapning,
Inpatient Occupancy,Inpatient Occupancy,
Occupancy Status,Beboelsesstatus,
Vacant,Ledig,
Occupied,Optaget,
Item Details,Elementdetaljer,
UOM Conversion in Hours,UOM Konvertering i timer,
Rate / UOM,Rate / UOM,
Change in Item,Skift i vare,
Out Patient Settings,Ud patientindstillinger,
Patient Name By,Patientnavn By,
Patient Name,Patientnavn,
Link Customer to Patient,Link kunde til patient,
"If checked, a customer will be created, mapped to Patient.\nPatient Invoices will be created against this Customer. You can also select existing Customer while creating Patient.","Hvis markeret, oprettes en kunde, der er kortlagt til patienten. Patientfakturaer vil blive oprettet mod denne kunde. Du kan også vælge eksisterende kunde, mens du opretter patient.",
Default Medical Code Standard,Standard medicinsk kode,
Collect Fee for Patient Registration,Indsamle gebyr for patientregistrering,
Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,"Hvis du markerer dette, oprettes der som standard nye patienter med en deaktiveret status og aktiveres kun efter fakturering af registreringsgebyret.",
Registration Fee,Registreringsafgift,
Automate Appointment Invoicing,Automatiser aftalefakturering,
Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Administrer forsendelse af konsultationsfaktura og annullér automatisk for patientkonsultationen,
Enable Free Follow-ups,Aktivér gratis opfølgninger,
Number of Patient Encounters in Valid Days,Antal konsultationer i dage,
The number of free follow ups (Patient Encounters in valid days) allowed,Antal gratis opfølgninger tilladt (antal konsultationer i dage),
Valid Number of Days,Gyldigt antal dage,
Time period (Valid number of days) for free consultations,Tidsperiode (gyldigt antal dage) til gratis konsultationer,
Default Healthcare Service Items,Standard Sundhedsservicevarer,
"You can configure default Items for billing consultation charges, procedure consumption items and inpatient visits","Du kan konfigurere standardartikler til faktureringskonsultationsafgifter, procedureforbrugsposter og indlæggelsesbesøg",
Clinical Procedure Consumable Item,Klinisk procedure forbrugsartikel,
Default Accounts,Standardkonti,
Default income accounts to be used if not set in Healthcare Practitioner to book Appointment charges.,"Standardindkomstkonti, der skal bruges, hvis det ikke er fastsat i Healthcare Practitioner at bestille Aftaleomkostninger.",
Default receivable accounts to be used to book Appointment charges.,"Standardtilgodehavende konti, der skal bruges til at bogføre aftalegebyrer.",
Out Patient SMS Alerts,Out Patient SMS Alerts,
Patient Registration,Patientregistrering,
Registration Message,Registreringsmeddelelse,
Confirmation Message,Bekræftelsesmeddelelse,
Avoid Confirmation,Undgå bekræftelse,
Do not confirm if appointment is created for the same day,"Bekræft ikke, om en aftale er oprettet for samme dag",
Appointment Reminder,Aftale påmindelse,
Reminder Message,Påmindelsesmeddelelse,
Laboratory Settings,Laboratorieindstillinger,
Create Lab Test(s) on Sales Invoice Submission,Opret laboratorietest (e) på indsendelse af salgsfaktura,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,"Hvis du kontrollerer dette, oprettes laboratorietest (er), der er specificeret i salgsfakturaen ved indsendelse.",
Create Sample Collection document for Lab Test,Opret prøveindsamlingsdokument til laboratorietest,
Checking this will create a Sample Collection document  every time you create a Lab Test,"Hvis du markerer dette, oprettes et prøveindsamlingsdokument hver gang du opretter en laboratorietest",
Employee name and designation in print,Ansattes navn og betegnelse i print,
Check this if you want the Name and Designation of the Employee associated with the User who submits the document to be printed in the Lab Test Report.,"Marker dette, hvis du vil have navnet og betegnelsen på den medarbejder, der er tilknyttet den bruger, der indsender dokumentet, skal udskrives i laboratorietestrapporten.",
Do not print or email Lab Tests without Approval,Du må hverken udskrive eller sende laboratorieprøven pr. e-mail uden tilladelse,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,"Hvis du markerer dette, begrænses udskrivning og e-mailing af laboratorietestdokumenter, medmindre de har status som godkendt.",
Custom Signature in Print,Brugerdefineret signatur i udskrivning,
Laboratory SMS Alerts,Laboratorium SMS-beskeder,
Result Printed Message,Resultatudskrevet meddelelse,
Result Emailed Message,Resultat sendt via e-mail,
Check In,Check ind,
Check Out,Check ud,
HLC-INP-.YYYY.-,HLC np-.YYYY.-,
A Positive,A positiv,
A Negative,A negativ,
AB Positive,AB Positive,
AB Negative,AB negativ,
B Positive,B positiv,
B Negative,B Negativ,
O Positive,O positiv,
O Negative,O Negativ,
Date of birth,Fødselsdato,
Admission Scheduled,Optagelse planlagt,
Discharge Scheduled,Udskrivning planlagt,
Discharged,Udskrevet,
Admission Schedule Date,Optagelse kalender Dato,
Admitted Datetime,Indlagt d.,
Expected Discharge,Forventet udledning,
Discharge Date,Udladningsdato,
Lab Prescription,Lab Prescription,
Lab Test Name,Laboratorieprøvenavn,
Test Created,Test oprettet,
Submitted Date,Indsendt dato,
Approved Date,Godkendt dato,
Sample ID,Prøve ID,
Lab Technician,Laboratorie tekniker,
Report Preference,Rapportindstilling,
Test Name,Testnavn,
Test Template,Test skabelon,
Test Group,Testgruppe,
Custom Result,Brugerdefineret resultat,
LabTest Approver,LabTest Approver,
Add Test,Tilføj test,
Normal Range,Normal rækkevidde,
Result Format,Resultatformat,
Single,Enkeltværelse,
Compound,Forbindelse,
Descriptive,Beskrivende,
Grouped,grupperet,
No Result,ingen Resultat,
This value is updated in the Default Sales Price List.,Denne værdi opdateres i standard salgsprislisten.,
Lab Routine,Lab Rutine,
Result Value,Resultatværdi,
Require Result Value,Kræver resultatværdi,
Normal Test Template,Normal testskabelon,
Patient Demographics,Patient Demografi,
HLC-PAT-.YYYY.-,HLC-PAT-.YYYY.-,
Middle Name (optional),Mellemnavn (valgfrit),
Inpatient Status,Inpatient Status,
"If ""Link Customer to Patient"" is checked in Healthcare Settings and an existing Customer is not selected then, a Customer will be created for this Patient for recording transactions in Accounts module.","Hvis &quot;Link kunde til patient&quot; er markeret i Healthcare Settings, og en eksisterende kunde ikke er valgt, oprettes der en kunde til denne patient til registrering af transaktioner i kontomodulet.",
Personal and Social History,Personlig og social historie,
Marital Status,Civilstand,
Married,Gift,
Divorced,Skilt,
Widow,Enke,
Patient Relation,Patientrelation,
"Allergies, Medical and Surgical History","Allergier, medicinsk og kirurgisk historie",
Allergies,allergier,
Medication,Medicin,
Medical History,Medicinsk historie,
Surgical History,Kirurgisk historie,
Risk Factors,Risikofaktorer,
Occupational Hazards and Environmental Factors,Arbejdsfarer og miljøfaktorer,
Other Risk Factors,Andre risikofaktorer,
Patient Details,Patientdetaljer,
Additional information regarding the patient,Yderligere oplysninger om patienten,
HLC-APP-.YYYY.-,HLC-APP-.ÅÅÅÅ.-,
Patient Age,Patientalder,
Get Prescribed Clinical Procedures,Hent ordinerede kliniske procedurer,
Therapy,Terapi,
Get Prescribed Therapies,Hent ordinerede terapier,
Appointment Datetime,Konsultationstidlinje,
Duration (In Minutes),Varighed (antal minutter),
Reference Sales Invoice,Reference salgsfaktura,
More Info,Mere info,
Referring Practitioner,Refererende praktiserende læge,
HLC-PA-.YYYY.-,HLC-PA-.YYYY.-,
Assessment Template,Vurderingsskabelon,
Assessment Datetime,Vurderingstid,
Assessment Description,Vurdering Beskrivelse,
Assessment Sheet,Vurderingsark,
Total Score Obtained,Samlet score opnået,
Scale Min,Skala Min,
Scale Max,Skala maks,
Patient Assessment Detail,Patientvurderingsdetalje,
Assessment Parameter,Vurderingsparameter,
Patient Assessment Parameter,Patientvurderingsparameter,
Patient Assessment Sheet,Patientbedømmelsesark,
Patient Assessment Template,Patientvurderingsskabelon,
Assessment Parameters,Vurderingsparametre,
Parameters,Parametre,
Assessment Scale,Vurderingsskala,
Scale Minimum,Skala Minimum,
Scale Maximum,Skala maksimalt,
HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
Encounter Date,Encounter Date,
Encounter Time,Konsultationstidspunkt,
Encounter Impression,Encounter Impression,
Symptoms,Symptomer,
In print,Udskriv,
Medical Coding,Medicinsk kodning,
Procedures,Procedurer,
Therapies,Terapier,
Review Details,Gennemgå detaljer,
Patient Encounter Diagnosis,Diagnose,
Patient Encounter Symptom,Symptom,
HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
Attach Medical Record,Vedhæft lægejournalen,
Reference DocType,Reference DocType,
Spouse,Ægtefælle,
Family,Familie,
Schedule Details,Kalenderdetaljer,
Schedule Name,Kalendernavn,
Time Slots,Time Slots,
Practitioner Service Unit Schedule,Practitioner Service Unit Schedule,
Procedure Name,Procedure Navn,
Appointment Booked,Aftaler reserveret,
Procedure Created,Procedure oprettet,
HLC-SC-.YYYY.-,HLC-SC-.YYYY.-,
Collected By,Indsamlet af,
Particulars,Oplysninger,
Result Component,Resultat Komponent,
HLC-THP-.YYYY.-,HLC-THP-.YYYY.-,
Therapy Plan Details,Terapiplandetaljer,
Total Sessions,Samlede sessioner,
Total Sessions Completed,Samlede sessioner afsluttet,
Therapy Plan Detail,Terapiplandetalje,
No of Sessions,Antal konsultationer,
Sessions Completed,Sessioner afsluttet,
Tele,Tele,
Exercises,Øvelser,
Therapy For,Terapi for,
Add Exercises,Tilføj øvelser,
Body Temperature,Kropstemperatur,
Presence of a fever (temp &gt; 38.5 °C/101.3 °F or sustained temp &gt; 38 °C/100.4 °F),"Tilstedeværelse af feber (temp&gt; 38,5 ° C eller vedvarende temperatur&gt; 38 ° C / 100,4 ° F)",
Heart Rate / Pulse,Hjertefrekvens / puls,
Adults' pulse rate is anywhere between 50 and 80 beats per minute.,Voksne pulsrate er overalt mellem 50 og 80 slag per minut.,
Respiratory rate,Respirationsfrekvens,
Normal reference range for an adult is 16–20 breaths/minute (RCP 2012),Normalt referenceområde for en voksen er 16-20 vejrtrækninger / minut (RCP 2012),
Tongue,Tunge,
Coated,coated,
Very Coated,Meget belagt,
Normal,Normal,
Furry,Furry,
Cuts,Cuts,
Abdomen,Mave,
Bloated,Oppustet,
Fluid,Væske,
Constipated,forstoppet,
Reflexes,reflekser,
Hyper,Hyper,
Very Hyper,Meget Hyper,
One Sided,Ensidigt,
Blood Pressure (systolic),Blodtryk (systolisk),
Blood Pressure (diastolic),Blodtryk (diastolisk),
Blood Pressure,Blodtryk,
"Normal resting blood pressure in an adult is approximately 120 mmHg systolic, and 80 mmHg diastolic, abbreviated ""120/80 mmHg""","Normal hvilende blodtryk hos en voksen er ca. 120 mmHg systolisk og 80 mmHg diastolisk, forkortet &quot;120/80 mmHg&quot;",
Nutrition Values,Ernæringsværdier,
Height (In Meter),Højde (i meter),
Weight (In Kilogram),Vægt (i kilogram),
BMI,BMI,
Hotel Room,Hotelværelse,
Hotel Room Type,Hotel Værelsestype,
Capacity,Kapacitet,
Extra Bed Capacity,Ekstra seng kapacitet,
Hotel Manager,Hotelbestyrer,
Hotel Room Amenity,Hotel Værelsesfaciliteter,
Billable,Faktureres,
Hotel Room Package,Hotelværelsepakke,
Amenities,Faciliteter,
Hotel Room Pricing,Hotel værelsespriser,
Hotel Room Pricing Item,Hotel Værelsestype,
Hotel Room Pricing Package,Hotel værelsesprispakke,
Hotel Room Reservation,Hotelværelse Reservation,
Guest Name,Gæste navn,
Late Checkin,Sen checkin,
Booked,Reserveret,
Hotel Reservation User,Hotel Reservation Bruger,
Hotel Room Reservation Item,Hotel Room Reservation Item,
Hotel Settings,Hotelindstillinger,
Default Taxes and Charges,Standard Skatter og Afgifter,
Default Invoice Naming Series,Standard faktura navngivningsserie,
HR,HR,
Date on which this component is applied,"Dato, hvorpå denne komponent anvendes",
Salary Slip,Lønseddel,
HR User,HR-bruger,
Job Applicant,Ansøger,
Body,Legeme,
Appraisal Template,Vurderingsskabelon,
Parent Department,Forældreafdeling,
Leave Block List,Blokér fraværsansøgninger,
Days for which Holidays are blocked for this department.,"Dage, for hvilke helligdage er blokeret for denne afdeling.",
Leave Approver,Fraværsgodkender,
Expense Approver,Udlægsgodkender,
Required Skills,Nødvendige færdigheder,
Skills,Skills,
Driver,Chauffør,
HR-DRI-.YYYY.-,HR-DRI-.YYYY.-,
Suspended,Suspenderet,
Transporter,Transporter,
Applicable for external driver,Gælder for ekstern driver,
Cellphone Number,telefon nummer,
License Details,Licens Detaljer,
License Number,Licens nummer,
Issuing Date,Udstedelsesdato,
Driving License Categories,Kørekortskategorier,
Driving License Category,Kørekort kategori,
Fleet Manager,Fleet manager,
Driver licence class,Førerkortklasse,
HR-EMP-,HR-EMP-,
Employment Type,Beskæftigelsestype,
Emergency Contact,Emergency Kontakt,
Emergency Contact Name,Nødkontakt navn,
Emergency Phone,Emergency Phone,
ERPNext User,ERPNæste bruger,
"System User (login) ID. If set, it will become default for all HR forms.","System Bruger (login) ID. Hvis sat, vil det blive standard for alle HR-formularer.",
Create User Permission,Opret brugertilladelse,
This will restrict user access to other employee records,Dette vil begrænse brugeradgang til andre medarbejderposter,
Joining Details,Sammenføjning Detaljer,
Offer Date,Dato,
Confirmation Date,Bekræftet den,
Contract End Date,Kontrakt Slutdato,
Notice (days),Varsel (dage),
Date Of Retirement,Dato for pensionering,
Department and Grade,Afdeling og Grad,
Reports to,Rapporter til,
Attendance and Leave Details,Oplysninger om deltagelse og orlov,
Attendance Device ID (Biometric/RF tag ID),Deltagelsesenheds-id (biometrisk / RF-tag-id),
Applicable Holiday List,Gældende helligdagskalender,
Default Shift,Standardskift,
Salary Mode,Løn-tilstand,
Bank A/C No.,Bank A / C No.,
Health Insurance,Sygesikring,
Health Insurance Provider,Sundhedsforsikringsselskabet,
Health Insurance No,Sygesikring nr,
Prefered Email,foretrukket Email,
Personal Email,Personlig e-mail,
Permanent Address Is,Fast adresse,
Rented,Lejet,
Owned,Ejet,
Permanent Address,Permanent adresse,
Prefered Contact Email,Foretrukket kontakt e-mail,
Company Email,Firma e-mail,
Provide Email Address registered in company,Giv e-mailadresse registreret i selskab,
Current Address Is,Nuværende adresse er,
Current Address,Nuværende adresse,
Personal Bio,Personlig Bio,
Bio / Cover Letter,Bio / Cover Letter,
Short biography for website and other publications.,Kort biografi for hjemmesiden og andre publikationer.,
Passport Number,Pasnummer,
Date of Issue,Udstedt den,
Place of Issue,Udstedelsessted,
Widowed,Enke,
Family Background,Familiebaggrund,
"Here you can maintain family details like name and occupation of parent, spouse and children","Her kan du opretholde familiens detaljer såsom navn og beskæftigelse af forældre, ægtefælle og børn",
Health Details,Sundhedsdetaljer,
"Here you can maintain height, weight, allergies, medical concerns etc","Her kan du vedligeholde højde, vægt, allergier, medicinske problemer osv",
Educational Qualification,Uddannelseskvalifikation,
Previous Work Experience,Tidligere erhvervserfaring,
External Work History,Ekstern Work History,
History In Company,Historie I Company,
Internal Work History,Intern Arbejde Historie,
Resignation Letter Date,Udmeldelse Brev Dato,
Relieving Date,Lindre Dato,
Reason for Leaving,Årsag til Leaving,
Leave Encashed?,Skal fravær udbetales?,
Encashment Date,Indløsningsdato,
New Workplace,Ny Arbejdsplads,
Returned Amount,Returneret beløb,
Advance Account,Advance konto,
Benefits Applied,Fordele Anvendt,
Benefit Type and Amount,Fordelstype og beløb,
Task Weight,Opgavevægtning,
Employee Education,Medarbejder Uddannelse,
School/University,Skole / Universitet,
Graduate,Graduate,
Post Graduate,Post Graduate,
Under Graduate,Under Graduate,
Year of Passing,Forgangende år,
Class / Percentage,Klasse / Procent,
Major/Optional Subjects,Større / Valgfag,
Employee External Work History,Medarbejder Ekstern Work History,
Total Experience,Total Experience,
Default Leave Policy,Standard Afgangspolitik,
Employee Group Table,Tabel over medarbejdergrupper,
ERPNext User ID,ERPNæste bruger-id,
Employee Internal Work History,Medarbejder Intern Arbejde Historie,
Activities,Aktiviteter,
Employee Onboarding Activity,Medarbejder Onboarding Aktivitet,
Employee Promotion Detail,Medarbejderfremmende detaljer,
Employee Transfer Property,Medarbejderoverdragelsesejendom,
Unclaimed amount,Uopkrævet beløb,
Holiday List Name,Helligdagskalendernavn,
Total Holidays,Samlede helligdage,
Add Weekly Holidays,Tilføj ugentlige helligdage,
Weekly Off,Ugedag fri,
Add to Holidays,Tilføj til helligdage,
Holidays,Helligdage,
Clear Table,Ryd tabellen,
Retirement Age,Pensionsalder,
Enter retirement age in years,Indtast pensionsalderen i år,
Stop Birthday Reminders,Stop Fødselsdag Påmindelser,
Leave Settings,Forlad indstillinger,
Accepted,Accepteret,
Printing Details,Udskrivningsindstillinger,
Job Title,Titel,
Allocation,Tildeling,
Select Employees,Vælg Medarbejdere,
Allocate,Tildel fravær,
Max Leaves Allowed,Maks. Tilladte blade,
Maximum Continuous Days Applicable,Maksimale kontinuerlige dage gældende,
Select Payroll Period,Vælg Lønperiode,
Abbr,Forkortelse,
Condition and Formula,Tilstand og formel,
Total Working Hours,Arbejdstid i alt,
Hour Rate,Timesats,
Bank Account No.,Bankkonto No.,
Earning & Deduction,Tillæg & fradrag,
Loan repayment,Tilbagebetaling af lån,
Employee Loan,Medarbejderlån,
Total Principal Amount,Samlede hovedbeløb,
Total Interest Amount,Samlet rentebeløb,
Total Loan Repayment,Samlet lån til tilbagebetaling,
net pay info,nettoløn info,
Gross Pay - Total Deduction - Loan Repayment,Bruttoløn - Fradrag i alt - Tilbagebetaling af lån,
Net Pay (in words) will be visible once you save the Salary Slip.,"Nettoløn (i ord) vil være synlig, når du gemmer lønsedlen.",
Staffing Plan Details,Bemandingsplandetaljer,
Optional,Valgfri,
Costing,Koster,
Vehicle,Køretøj,
License Plate,Nummerplade,
Odometer Value (Last),Kilometerstand (sidste aflæsning),
Acquisition Date,Erhvervelsesdato,
Chassis No,Stelnummer,
Vehicle Value,Køretøjsværdi,
Insurance Details,Forsikring Detaljer,
Insurance Company,Forsikringsselskab,
Policy No,Politik Ingen,
Additional Details,Yderligere detaljer,
Fuel Type,Brændstofstype,
Petrol,Benzin,
Diesel,Diesel,
Natural Gas,Naturgas,
Electric,Elektrisk,
Fuel UOM,Brændstofsenhed,
Last Carbon Check,Sidste synsdato,
Wheels,Hjul,
Doors,Døre,
last Odometer Value ,sidste kilometertalværdi,
Service Detail,service Detail,
Hub Tracked Item,Hub Tracked Item,
Hub Node,Hub Node,
Image List,Billedliste,
Item Manager,Varechef,
Hub User,Navbruger,
Hub Password,Nav adgangskode,
Hub Users,Hub-brugere,
Marketplace Settings,Marketplace-indstillinger,
Disable Marketplace,Deaktiver Marketplace,
Marketplace URL (to hide and update label),Markedsplads-URL (for at skjule og opdatere etiket),
Registered,anbefalet,
Sync in Progress,Synkronisering i gang,
Hub Seller Name,Hub Sælger Navn,
Custom Data,Brugerdefinerede data,
Repay From Salary,Tilbagebetale fra Løn,
Regular Payment,Regelmæssig betaling,
Loan Closure,Lånelukning,
Rate of Interest (%) Yearly,Rente (%) Årlig,
MAT-MSH-.YYYY.-,MAT-MSH-.YYYY.-,
Generate Schedule,Generer Schedule,
Schedules,Tidsplaner,
Maintenance Schedule Detail,Vedligeholdelsesplandetaljer,
Scheduled Date,Planlagt dato,
Actual Date,Faktisk dato,
Maintenance Schedule Item,Vedligeholdelse Skema Vare,
Random,Tilfældig,
No of Visits,Antal besøg,
MAT-MVS-.YYYY.-,MAT-MVS-.YYYY.-,
Maintenance Date,Vedligeholdelsesdato,
Maintenance Time,Vedligeholdelsestid,
Completion Status,Afslutning status,
Partially Completed,Delvist afsluttet,
Fully Completed,Fuldt Afsluttet,
Unscheduled,Uplanlagt,
Breakdown,Sammenbrud,
Purposes,Formål,
Customer Feedback,Kundefeedback,
Maintenance Visit Purpose,Formål med vedligeholdelsesbesøg,
Work Done,Arbejdet udført,
Against Document No,Imod dokument nr,
Against Document Detail No,Imod Dokument Detalje Nr.,
MFG-BLR-.YYYY.-,MFG-BLR-.YYYY.-,
Order Type,Bestil Type,
Blanket Order Item,Tæppe Bestillingsartikel,
Ordered Quantity,Bestilt antal,
Item to be manufactured or repacked,"Element, der skal fremstilles eller forarbejdes",
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Mængde post opnået efter fremstilling / ompakning fra givne mængde råvarer,
Set rate of sub-assembly item based on BOM,Indstil sats for underenhedspost baseret på BOM,
Allow Alternative Item,Tillad alternativ vare,
Item UOM,Vareenhed,
Conversion Rate,Omregningskurs,
Rate Of Materials Based On,Rate Of materialer baseret på,
With Operations,Med Operations,
Manage cost of operations,Administrer udgifter til operationer,
Transfer Material Against,Overfør materiale mod,
Routing,Routing,
Materials,Materialer,
Quality Inspection Required,Kvalitetskontrol kræves,
Quality Inspection Template,Kvalitetskontrolskabelon,
Scrap,Skrot,
Scrap Items,Skrotvarer,
Operating Cost,Driftsomkostninger,
Raw Material Cost,Råmaterialeomkostninger,
Scrap Material Cost,Skrot materialeomkostninger,
Operating Cost (Company Currency),Driftsomkostninger (Company Valuta),
Raw Material Cost (Company Currency),Råvarepriser (virksomhedsvaluta),
Scrap Material Cost(Company Currency),Skrot materialeomkostninger (firmavaluta),
Total Cost,Omkostninger i alt,
Total Cost (Company Currency),Samlede omkostninger (virksomhedsvaluta),
Materials Required (Exploded),Nødvendige materialer (Sprængskitse),
Exploded Items,Eksploderede genstande,
Show in Website,Vis på webstedet,
Item Image (if not slideshow),Varebillede (hvis ikke lysbilledshow),
Thumbnail,Thumbnail,
Website Specifications,Website Specifikationer,
Show Items,Vis elementer,
Show Operations,Vis Operations,
Website Description,Hjemmesidebeskrivelse,
BOM Explosion Item,BOM Explosion Vare,
Qty Consumed Per Unit,Antal Consumed Per Unit,
Include Item In Manufacturing,Inkluder en vare i fremstillingen,
BOM Item,Styklistevarer,
Item operation,Vareoperation,
Rate & Amount,Pris &amp; Beløb,
Basic Rate (Company Currency),Basissats (firmavaluta),
Scrap %,Skrot-%,
Original Item,Originalelement,
BOM Operation,BOM Operation,
Operation Time ,Driftstid,
In minutes,Om få minutter,
Batch Size,Batch størrelse,
Base Hour Rate(Company Currency),Basistimesats (firmavaluta),
Operating Cost(Company Currency),Driftsomkostninger (Company Valuta),
BOM Scrap Item,Stykliste skrotvare,
Basic Amount (Company Currency),Grundbeløb (Company Currency),
BOM Update Tool,BOM Update Tool,
"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.\nIt also updates latest price in all the BOMs.","Udskift en bestemt BOM i alle andre BOM&#39;er, hvor den bruges. Det vil erstatte det gamle BOM-link, opdateringsomkostninger og genoprette &quot;BOM Explosion Item&quot; -tabellen som pr. Nye BOM. Det opdaterer også nyeste pris i alle BOM&#39;erne.",
Replace BOM,Udskift BOM,
Current BOM,Aktuel stykliste,
The BOM which will be replaced,Den stykliste som vil blive erstattet,
The new BOM after replacement,Den nye BOM efter udskiftning,
Replace,Udskift,
Update latest price in all BOMs,Opdater seneste pris i alle BOM&#39;er,
BOM Website Item,BOM Website Item,
BOM Website Operation,BOM Website Operation,
Operation Time,Operation Time,
PO-JOB.#####,PO-JOB. #####,
Timing Detail,Timing Detail,
Time Logs,Time Logs,
Total Time in Mins,Total tid i minutter,
Operation ID,Operation ID,
Transferred Qty,Overført antal,
Job Started,Job startede,
Started Time,Startet tid,
Current Time,Nuværende tid,
Job Card Item,Jobkort vare,
Job Card Time Log,Jobkort tidslogg,
Time In Mins,Tid i min,
Completed Qty,Afsluttet Antal,
Manufacturing Settings,Produktion Indstillinger,
Raw Materials Consumption,Forbrug af råvarer,
Allow Multiple Material Consumption,Tillad flere forbrug af materiale,
Backflush Raw Materials Based On,Backflush råstoffer baseret på,
Material Transferred for Manufacture,Materiale Overført til Fremstilling,
Capacity Planning,Kapacitetsplanlægning,
Disable Capacity Planning,Deaktiver kapacitetsplanlægning,
Allow Overtime,Tillad overarbejde,
Allow Production on Holidays,Tillad produktion på helligdage,
Capacity Planning For (Days),Kapacitet Planlægning For (dage),
Default Warehouses for Production,Standard lagerhuse til produktion,
Default Work In Progress Warehouse,Standard varer-i-arbejde-lager,
Default Finished Goods Warehouse,Standard færdigvarer Warehouse,
Default Scrap Warehouse,Standard skrotlager,
Overproduction Percentage For Sales Order,Overproduktionsprocent for salgsordre,
Overproduction Percentage For Work Order,Overproduktionsprocent for arbejdsordre,
Other Settings,Andre indstillinger,
Update BOM Cost Automatically,Opdater BOM omkostninger automatisk,
Material Request Plan Item,Materialeforespørgsel Planlægning,
Material Request Type,Materialeanmodningstype,
Material Issue,Materiale Issue,
Customer Provided,Leveret af kunden,
Minimum Order Quantity,Minimumsordrenummer,
Default Workstation,Standard Workstation,
Production Plan,Produktionsplan,
MFG-PP-.YYYY.-,MFG-PP-.YYYY.-,
Get Items From,Hent varer fra,
Get Sales Orders,Hent salgsordrer,
Material Request Detail,Materialeforespørgsel Detail,
Get Material Request,Hent materialeanmodning,
Material Requests,Materialeanmodninger,
Get Items For Work Order,Få varer til arbejdsordre,
Material Request Planning,Materialeforespørgselsplanlægning,
Include Non Stock Items,Inkluder ikke-lagerartikler,
Include Subcontracted Items,Inkluder underleverancer,
Ignore Existing Projected Quantity,Ignorer det eksisterende forventede antal,
"To know more about projected quantity, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">click here</a>.","<a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">Klik her for</a> at vide mere om den forventede mængde.",
Download Required Materials,Download krævede materialer,
Get Raw Materials For Production,Få råmaterialer til produktion,
Total Planned Qty,Samlet planlagt antal,
Total Produced Qty,I alt produceret antal,
Material Requested,Materiale krævet,
Production Plan Item,Produktion Plan Vare,
Make Work Order for Sub Assembly Items,Foretag arbejdsordre til undermonteringselementer,
"If enabled, system will create the work order for the exploded items against which BOM is available.","Hvis det er aktiveret, opretter systemet arbejdsordren for de eksploderede elementer, som BOM er tilgængelig imod.",
Planned Start Date,Planlagt startdato,
Quantity and Description,Mængde og beskrivelse,
material_request_item,material_request_item,
Product Bundle Item,Produktpakkevare,
Production Plan Material Request,Produktionsplan-Materialeanmodning,
Production Plan Sales Order,Produktion Plan kundeordre,
Sales Order Date,Salgsordredato,
Routing Name,Routing Name,
MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
Item To Manufacture,Item Til Fremstilling,
Material Transferred for Manufacturing,Materiale Overført til Manufacturing,
Manufactured Qty,Fremstillet mængde,
Use Multi-Level BOM,Brug Multi-Level BOM,
Plan material for sub-assemblies,Plan materiale til sub-enheder,
Skip Material Transfer to WIP Warehouse,Spring overførsel af materiale til WIP Warehouse,
Check if material transfer entry is not required,"Kontroller, om materialetilførsel ikke er påkrævet",
Backflush Raw Materials From Work-in-Progress Warehouse,Backflush råmaterialer fra arbejdet i arbejde,
Update Consumed Material Cost In Project,Opdater forbrugsstofomkostninger i projektet,
Warehouses,Lagre,
This is a location where raw materials are available.,"Dette er et sted, hvor råmaterialer er tilgængelige.",
Work-in-Progress Warehouse,Work-in-Progress Warehouse,
This is a location where operations are executed.,"Dette er et sted, hvor handlinger udføres.",
This is a location where final product stored.,"Dette er et sted, hvor det endelige produkt gemmes.",
Scrap Warehouse,Skrotlager,
This is a location where scraped materials are stored.,"Dette er et sted, hvor skrabede materialer opbevares.",
Required Items,Nødvendige varer,
Actual Start Date,Faktisk startdato,
Planned End Date,Planlagt slutdato,
Actual End Date,Faktisk slutdato,
Operation Cost,Operation Cost,
Planned Operating Cost,Planlagte driftsomkostninger,
Actual Operating Cost,Faktiske driftsomkostninger,
Additional Operating Cost,Yderligere driftsomkostninger,
Total Operating Cost,Samlede driftsomkostninger,
Manufacture against Material Request,Produktion mod materialeanmodning,
Work Order Item,Arbejdsordre,
Available Qty at Source Warehouse,Tilgængelig mængde på hoved lager,
Available Qty at WIP Warehouse,Tilgængelig antal på WIP Warehouse,
Work Order Operation,Arbejdsordreoperation,
Operation Description,Operation Beskrivelse,
Operation completed for how many finished goods?,Operation afsluttet for hvor mange færdigvarer?,
Work in Progress,Varer i arbejde,
Estimated Time and Cost,Estimeret tid og omkostninger,
Planned Start Time,Planlagt starttime,
Planned End Time,Planlagt sluttid,
in Minutes,I minutter,
Actual Time and Cost,Aktuel leveringstid og omkostninger,
Actual Start Time,Faktisk starttid,
Actual End Time,Faktisk sluttid,
Updated via 'Time Log',Opdateret via &#39;Time Log&#39;,
Actual Operation Time,Faktiske Operation Time,
in Minutes\nUpdated via 'Time Log',i minutter Opdateret via &#39;Time Log&#39;,
(Hour Rate / 60) * Actual Operation Time,(Timesats / 60) * TidsforbrugIMinutter,
Workstation Name,Workstation Navn,
Production Capacity,Produktionskapacitet,
Operating Costs,Driftsomkostninger,
Electricity Cost,Elektricitetsomkostninger,
per hour,per time,
Consumable Cost,Forbrugsmaterialer Cost,
Rent Cost,Leje Omkostninger,
Wages,Løn,
Wages per hour,Timeløn,
Net Hour Rate,Netto timeløn,
Workstation Working Hour,Workstation Working Hour,
Certification Application,Certificeringsansøgning,
Name of Applicant,Ansøgerens navn,
Certification Status,Certificeringsstatus,
Yet to appear,Endnu at dukke op,
Certified,Certificeret,
Not Certified,Ikke certificeret,
USD,USD,
INR,INR,
Certified Consultant,Certificeret konsulent,
Name of Consultant,Navn på konsulent,
Certification Validity,Certificering Gyldighed,
Discuss ID,Diskuter ID,
GitHub ID,GitHub ID,
Non Profit Manager,Non Profit Manager,
Chapter Head,Kapitel Hoved,
Meetup Embed HTML,Meetup Embed HTML,
chapters/chapter_name\nleave blank automatically set after saving chapter.,kapitler / kapitelnavn skal efterlades automatisk automatisk efter opbevaring af kapitel.,
Chapter Members,Kapitel Medlemmer,
Members,Medlemmer,
Chapter Member,Kapitel Medlem,
Website URL,Website URL,
Leave Reason,Forlad grunden,
Donor Name,Donornavn,
Donor Type,Donor Type,
Withdrawn,Trukket tilbage,
Grant Application Details ,Giv ansøgningsoplysninger,
Grant Description,Grant Beskrivelse,
Requested Amount,Ønsket beløb,
Has any past Grant Record,Har nogen tidligere Grant Record,
Show on Website,Vis på hjemmesiden,
Assessment  Mark (Out of 10),Vurderings mærke (ud af 10),
Assessment  Manager,Vurderingsleder,
Email Notification Sent,E-mail-meddelelse sendt,
NPO-MEM-.YYYY.-,NPO-MEM-.YYYY.-,
Membership Expiry Date,Medlemskabets udløbsdato,
Razorpay Details,Razorpay Detaljer,
Subscription ID,Abonnements-id,
Customer ID,Kunde ID,
Subscription Activated,Abonnement aktiveret,
Subscription Start ,Abonnementsstart,
Subscription End,Abonnement slut,
Non Profit Member,Ikke-profitmedlem,
Membership Status,Medlemskabsstatus,
Member Since,Medlem siden,
Payment ID,Betalings-id,
Membership Settings,Medlemskabsindstillinger,
Enable RazorPay For Memberships,Aktivér RazorPay for medlemskaber,
RazorPay Settings,RazorPay-indstillinger,
Billing Cycle,Faktureringscyklus,
Billing Frequency,Faktureringsfrekvens,
"The number of billing cycles for which the customer should be charged. For example, if a customer is buying a 1-year membership that should be billed on a monthly basis, this value should be 12.","Antallet af faktureringscyklusser, som kunden skal debiteres for. For eksempel, hvis en kunde køber et 1-årigt medlemskab, der skal faktureres månedligt, skal denne værdi være 12.",
Razorpay Plan ID,Razorpay plan-ID,
Volunteer Name,Frivilligt navn,
Volunteer Type,Frivilligtype,
Availability and Skills,Tilgængelighed og færdigheder,
Availability,tilgængelighed,
Weekends,weekender,
Availability Timeslot,Tilgængelighed tidsinterval,
Morning,Morgen,
Afternoon,Eftermiddag,
Evening,Aften,
Anytime,Når som helst,
Volunteer Skills,Frivillige Færdigheder,
Volunteer Skill,Frivillig Færdighed,
Homepage,Hjemmeside,
Hero Section Based On,Heltafsnittet er baseret på,
Homepage Section,Hjemmeside afsnit,
Hero Section,Heltesektion,
Tag Line,tag Linje,
Company Tagline for website homepage,Firma Tagline for website hjemmeside,
Company Description for website homepage,Firmabeskrivelse til hjemmesiden,
Homepage Slideshow,Hjemmeside Diasshow,
"URL for ""All Products""",URL til &quot;Alle produkter&quot;,
Products to be shown on website homepage,Produkter til at blive vist på hjemmesidens startside,
Homepage Featured Product,Hjemmeside Featured Product,
route,rute,
Section Based On,Sektion baseret på,
Section Cards,Sektionskort,
Number of Columns,Antal kolonner,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,"Antal kolonner for dette afsnit. 3 kort vises pr. Række, hvis du vælger 3 kolonner.",
Section HTML,Sektion HTML,
Use this field to render any custom HTML in the section.,Brug dette felt til at gengive enhver tilpasset HTML i sektionen.,
Section Order,Sektionsordre,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Rækkefølge i hvilke sektioner der skal vises. 0 er først, 1 er anden og så videre.",
Homepage Section Card,Hjemmesektionsafsnitskort,
Subtitle,Undertekst,
Products Settings,Produkter Indstillinger,
Home Page is Products,Home Page er Produkter,
"If checked, the Home page will be the default Item Group for the website","Hvis markeret, vil hjemmesiden være standard varegruppe til hjemmesiden",
Show Availability Status,Vis tilgængelighed Status,
Product Page,Produkt side,
Products per Page,Produkter pr. Side,
Enable Field Filters,Aktivér feltfiltre,
Item Fields,Varefelter,
Enable Attribute Filters,Aktivér attributfiltre,
Attributes,Attributter,
Hide Variants,Skjul varianter,
Website Attribute,Webstedsattribut,
Attribute,Attribut,
Website Filter Field,Felt for webstedets filter,
Activity Cost,Aktivitetsomkostninger,
Billing Rate,Faktureringssats,
Costing Rate,Costing Rate,
title,titel,
Projects User,Sagsbruger,
Default Costing Rate,Standard Costing Rate,
Default Billing Rate,Standard-faktureringssats,
Dependent Task,Afhængig opgave,
Project Type,Sagstype,
% Complete Method,%Komplet metode,
Task Completion,Opgaveafslutning,
Task Progress,Opgave-fremskridt,
% Completed,% afsluttet,
From Template,Fra skabelon,
Project will be accessible on the website to these users,Sagen vil være tilgængelig på hjemmesiden for disse brugere,
Copied From,Kopieret fra,
Start and End Dates,Start- og slutdato,
Actual Time in Hours (via Timesheet),Faktisk tid (i timer),
Costing and Billing,Omkostningsberegning og fakturering,
Total Costing Amount (via Timesheet),Samlet Omkostningsbeløb (via tidsskemaer),
Total Expense Claim (via Expense Claim),Udlæg ialt (via Udlæg),
Total Purchase Cost (via Purchase Invoice),Samlet anskaffelsespris (via købsfaktura),
Total Sales Amount (via Sales Order),Samlet Salgsbeløb (via salgsordre),
Total Billable Amount (via Timesheet),Samlet fakturerbart beløb (via timesheets),
Total Billed Amount (via Sales Invoice),Samlet faktureret beløb (via salgsfakturaer),
Total Consumed Material Cost (via Stock Entry),Samlet forbrugt materialeomkostning (via lagerindtastning),
Gross Margin,Gross Margin,
Gross Margin %,Gross Margin%,
Monitor Progress,Monitor Progress,
Collect Progress,Indsamle fremskridt,
Frequency To Collect Progress,Frekvens for at indsamle fremskridt,
Twice Daily,To gange dagligt,
First Email,Første Email,
Second Email,Anden Email,
Time to send,Tid til at sende,
Day to Send,Dag til afsendelse,
Message will be sent to the users to get their status on the Project,"En meddelelse vil blive sendt til brugerne, for at bede om deres status på projektet",
Projects Manager,Projekter manager,
Project Template,Projektskabelon,
Project Template Task,Projektskabelonopgave,
Begin On (Days),Begynd på (dage),
Duration (Days),Varighed (dage),
Project Update,Projektopdatering,
Project User,Sagsbruger,
View attachments,Se vedhæftede filer,
Projects Settings,Projekter Indstillinger,
Ignore Workstation Time Overlap,Ignorer arbejdstidens overlapning,
Ignore User Time Overlap,Ignorér overlapning af brugertid,
Ignore Employee Time Overlap,Ignorer medarbejdertidens overlapning,
Weight,Vægt,
Parent Task,Forældreopgave,
Timeline,Tidslinje,
Expected Time (in hours),Forventet tid (i timer),
% Progress,% fremskridt,
Is Milestone,Er Milestone,
Task Description,Opgavebeskrivelse,
Dependencies,Afhængigheder,
Dependent Tasks,Afhængige opgaver,
Depends on Tasks,Afhænger af opgaver,
Actual Start Date (via Timesheet),Faktisk startdato (via Tidsregistreringen),
Actual Time in Hours (via Timesheet),Faktisk tid (i timer),
Actual End Date (via Timesheet),Faktisk Slutdato (via Tidsregistreringen),
Total Expense Claim (via Expense Claim),Udlæg ialt (via Udlæg),
Review Date,Anmeldelse Dato,
Closing Date,Closing Dato,
Task Depends On,Opgave afhænger af,
Task Type,Opgavetype,
TS-.YYYY.-,TS-.YYYY.-,
Employee Detail,Medarbejderoplysninger,
Billing Details,Faktureringsoplysninger,
Total Billable Hours,Total fakturerbare timer,
Total Billed Hours,Total Billed Timer,
Total Costing Amount,Total Costing Beløb,
Total Billable Amount,Samlet faktureres Beløb,
Total Billed Amount,Samlet Faktureret beløb,
% Amount Billed,% Faktureret beløb,
Hrs,timer,
Costing Amount,Koster Beløb,
Corrective/Preventive,Korrigerende / Forebyggende,
Corrective,Korrigerende,
Preventive,Forebyggende,
Resolution,Løsning,
Resolutions,beslutninger,
Quality Action Resolution,Kvalitetshandlingsopløsning,
Quality Feedback Parameter,Parameter for feedback af kvalitet,
Quality Feedback Template Parameter,Skabelonparameter for kvalitet,
Quality Goal,Kvalitetsmål,
Monitoring Frequency,Overvågningsfrekvens,
Weekday,Ugedag,
Objectives,mål,
Quality Goal Objective,Kvalitetsmål Mål,
Objective,Objektiv,
Agenda,Dagsorden,
Minutes,minutter,
Quality Meeting Agenda,Dagsorden for kvalitetsmøde,
Quality Meeting Minutes,Mødemøde for kvalitet,
Minute,Minut,
Parent Procedure,Forældreprocedure,
Processes,Processer,
Quality Procedure Process,Kvalitetsprocedure,
Process Description,Procesbeskrivelse,
Link existing Quality Procedure.,Kobl den eksisterende kvalitetsprocedure.,
Additional Information,Yderligere Information,
Quality Review Objective,Mål for kvalitetsgennemgang,
DATEV Settings,DATEV-indstillinger,
Regional,Regional,
Consultant ID,Konsulent ID,
GST HSN Code,GST HSN-kode,
HSN Code,HSN kode,
GST Settings,GST-indstillinger,
GST Summary,GST Sammendrag,
GSTIN Email Sent On,GSTIN Email Sent On,
GST Accounts,GST-konti,
B2C Limit,B2C Limit,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Angiv faktura værdi for B2C. B2CL og B2CS beregnet ud fra denne faktura værdi.,
GSTR 3B Report,GSTR 3B-rapport,
January,januar,
February,februar,
March,marts,
April,April,
August,august,
September,september,
October,oktober,
November,november,
December,december,
JSON Output,JSON Output,
Invoices with no Place Of Supply,Fakturaer uden forsyningssted,
Import Supplier Invoice,Importer leverandørfaktura,
Invoice Series,Fakturaserie,
Upload XML Invoices,Upload XML-fakturaer,
Zip File,Zip-fil,
Import Invoices,Importer fakturaer,
Click on Import Invoices button once the zip file has been attached to the document. Any errors related to processing will be shown in the Error Log.,"Klik på knappen Importer fakturaer, når zip-filen er knyttet til dokumentet. Eventuelle fejl relateret til behandling vises i fejlloggen.",
Lower Deduction Certificate,Lavere fradragsbevis,
Certificate Details,Certifikatoplysninger,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,Certifikat nr,
Deductee Details,Fradragte detaljer,
PAN No,PAN Nej,
Validity Details,Gyldighedsoplysninger,
Rate Of TDS As Per Certificate,TDS-sats pr. Certifikat,
Certificate Limit,Certifikatgrænse,
Invoice Series Prefix,Faktura Serie Prefix,
Active Menu,Aktiv Menu,
Restaurant Menu,Restaurant Menu,
Price List (Auto created),Prisliste (Auto oprettet),
Restaurant Manager,Restaurantchef,
Restaurant Menu Item,Restaurant menupunkt,
Restaurant Order Entry,Restaurant Order Entry,
Restaurant Table,Restaurantbord,
Click Enter To Add,Klik på Enter for at tilføje,
Last Sales Invoice,Sidste salgsfaktura,
Current Order,Nuværende ordre,
Restaurant Order Entry Item,Restaurant Bestillingsartikel,
Served,serveret,
Restaurant Reservation,Restaurant Reservation,
Waitlisted,venteliste,
No Show,Ingen Vis,
No of People,Ingen af mennesker,
Reservation Time,Reservationstid,
Reservation End Time,Reservation Slut Tid,
No of Seats,Ingen pladser,
Minimum Seating,Mindste plads,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Hold styr på salgskampagner. Hold styr på emner, tilbud, salgsordrer osv fra kampagne til Return on Investment.",
SAL-CAM-.YYYY.-,SAL-CAM-.YYYY.-,
Campaign Schedules,Kampagneplaner,
Buyer of Goods and Services.,Køber af varer og tjenesteydelser.,
CUST-.YYYY.-,CUST-.YYYY.-,
Default Company Bank Account,Standard virksomheds bankkonto,
From Lead,Fra Emne,
Account Manager,Kundechef,
Allow Sales Invoice Creation Without Sales Order,Tillad oprettelse af salgsfaktura uden salgsordre,
Allow Sales Invoice Creation Without Delivery Note,Tillad oprettelse af salgsfaktura uden leveringsnota,
Default Price List,Standardprisliste,
Primary Address and Contact Detail,Primæradresse og kontaktdetaljer,
"Select, to make the customer searchable with these fields","Vælg, for at gøre kunden søgbar med disse felter",
Customer Primary Contact,Kunde primær kontakt,
"Reselect, if the chosen contact is edited after save","Vælg, hvis den valgte kontakt redigeres efter gem",
Customer Primary Address,Kunde primære adresse,
"Reselect, if the chosen address is edited after save","Vælg igen, hvis den valgte adresse redigeres efter gem",
Primary Address,Primæradresse,
Mention if non-standard receivable account,"Nævne, hvis ikke-standard tilgodehavende konto",
Credit Limit and Payment Terms,Kreditgrænse og betalingsbetingelser,
Additional information regarding the customer.,Yderligere oplysninger om kunden.,
Sales Partner and Commission,Forhandler og provision,
Commission Rate,Provisionssats,
Sales Team Details,Salgs Team Detaljer,
Customer POS id,Kundens POS-id,
Customer Credit Limit,Kreditkreditgrænse,
Bypass Credit Limit Check at Sales Order,Bypass kreditgrænse tjek på salgsordre,
Industry Type,Branchekode,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Installation Dato,
Installation Time,Installation Time,
Installation Note Item,Installation Bemærk Vare,
Installed Qty,Antal installeret,
Lead Source,Lead Source,
Period Start Date,Periode Startdato,
Period End Date,Periode Slutdato,
Cashier,Kasserer,
Difference,Forskel,
Modes of Payment,Betalingsmåder,
Linked Invoices,Tilknyttede fakturaer,
POS Closing Voucher Details,POS Closing Voucher Detaljer,
Collected Amount,Samlet beløb,
Expected Amount,Forventet beløb,
POS Closing Voucher Invoices,POS Closing Voucher Fakturaer,
Quantity of Items,Mængde af varer,
"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**. \n\nThe package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".\n\nFor 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 Product Bundle Item.\n\nNote: BOM = Bill of Materials","Samlede gruppe af ** varer ** samlet i en  anden **vare**. Dette er nyttigt, hvis du vil sammenføre et bestemt antal **varer** i en pakke, og du kan bevare en status over de pakkede **varer** og ikke den samlede **vare**. Pakken **vare** vil have ""Er lagervarer"" som ""Nej"" og ""Er salgsvare"" som ""Ja"". For eksempel: Hvis du sælger Laptops og Rygsække separat og har en særlig pris, hvis kunden køber begge, så vil Laptop + Rygsæk vil være en ny Produktpakke-vare.",
Parent Item,Overordnet vare,
List items that form the package.,"Vis varer, der er indeholdt i pakken.",
SAL-QTN-.YYYY.-,SAL-QTN-.YYYY.-,
Quotation To,Tilbud til,
Rate at which customer's currency is converted to company's base currency,"Hastighed, hvormed kundens valuta omregnes til virksomhedens basisvaluta",
Rate at which Price list currency is converted to company's base currency,"Hastighed, hvormed Prisliste valuta omregnes til virksomhedens basisvaluta",
Additional Discount and Coupon Code,Yderligere rabat- og kuponkode,
Referral Sales Partner,Henvisning Salgspartner,
In Words will be visible once you save the Quotation.,"""I Ord"" vil være synlig, når du gemmer tilbuddet.",
Term Details,Betingelsesdetaljer,
Quotation Item,Tilbudt vare,
Against Doctype,Imod DOCTYPE,
Against Docname,Imod Docname,
Additional Notes,Ekstra Noter,
SAL-ORD-.YYYY.-,SAL-ORD-.YYYY.-,
Skip Delivery Note,Spring over leveringsnotat,
In Words will be visible once you save the Sales Order.,"""I Ord"" vil være synlig, når du gemmer salgsordren.",
Track this Sales Order against any Project,Spor denne salgsordre mod enhver sag,
Billing and Delivery Status,Fakturering og leveringsstatus,
Not Delivered,Ikke leveret,
Fully Delivered,Fuldt Leveres,
Partly Delivered,Delvist leveret,
Not Applicable,ikke gældende,
%  Delivered,% Leveret,
% of materials delivered against this Sales Order,% Af materialer leveret mod denne Sales Order,
% of materials billed against this Sales Order,% af materialer faktureret mod denne salgsordre,
Not Billed,Ikke faktureret,
Fully Billed,Fuldt Billed,
Partly Billed,Delvist faktureret,
Ensure Delivery Based on Produced Serial No,Sørg for levering baseret på produceret serienummer,
Supplier delivers to Customer,Leverandøren leverer til Kunden,
Delivery Warehouse,Levering Warehouse,
Planned Quantity,Planlagt mængde,
For Production,For Produktion,
Work Order Qty,Arbejdsordre Antal,
Produced Quantity,Produceret Mængde,
Used for Production Plan,Bruges til Produktionsplan,
Sales Partner Type,Salgspartartype,
Contact No.,Kontaktnr.,
Contribution (%),Bidrag (%),
Contribution to Net Total,Bidrag til Net Total,
Selling Settings,Salgsindstillinger,
Settings for Selling Module,Indstillinger for salgsmodul,
Customer Naming By,Kundenavngivning af,
Campaign Naming By,Kampagne Navngivning Af,
Default Customer Group,Standard kundegruppe,
Default Territory,Standardområde,
Close Opportunity After Days,Luk salgsmulighed efter dage,
Default Quotation Validity Days,Standard Quotation Gyldighedsdage,
Sales Update Frequency,Salgsopdateringsfrekvens,
Each Transaction,Hver transaktion,
SMS Center,SMS-center,
Send To,Send til,
All Contact,Alle Kontakt,
All Customer Contact,Alle kundekontakter,
All Supplier Contact,Alle Leverandør Kontakt,
All Sales Partner Contact,Alle forhandlerkontakter,
All Lead (Open),Alle emner (åbne),
All Employee (Active),Alle medarbejdere (aktive),
All Sales Person,Alle salgsmedarbejdere,
Create Receiver List,Opret Modtager liste,
Receiver List,Modtageroversigt,
Messages greater than 160 characters will be split into multiple messages,Beskeder større end 160 tegn vil blive opdelt i flere meddelelser,
Total Characters,Total tegn,
Total Message(s),Besked (er) i alt,
Authorization Control,Autorisation kontrol,
Authorization Rule,Autorisation regl,
Average Discount,Gennemsnitlig rabat,
Customerwise Discount,Customerwise Discount,
Itemwise Discount,Itemwise Discount,
Customer or Item,Kunde eller vare,
Customer / Item Name,Kunde / Varenavn,
Authorized Value,Autoriseret Værdi,
Applicable To (Role),Gælder for (Rolle),
Applicable To (Employee),Gælder for (Medarbejder),
Applicable To (User),Gælder for (Bruger),
Applicable To (Designation),Gælder for (Betegnelse),
Approving Role (above authorized value),Godkendelse (over autoriserede værdi) Rolle,
Approving User  (above authorized value),Godkendelse Bruger (over autoriserede værdi),
Brand Defaults,Mærkeindstillinger,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Juridisk enhed / Datterselskab med en separat Kontoplan tilhører organisationen.,
Change Abbreviation,Skift Forkortelse,
Parent Company,Moderselskab,
Default Values,Standardværdier,
Default Holiday List,Standard helligdagskalender,
Default Selling Terms,Standard salgsbetingelser,
Default Buying Terms,Standard købsbetingelser,
Create Chart Of Accounts Based On,Opret kontoplan baseret på,
Standard Template,Standardskabelon,
Existing Company,Eksisterende virksomhed,
Chart Of Accounts Template,Kontoplan Skabelon,
Existing Company ,Eksisterende firma,
Date of Establishment,Dato for etablering,
Sales Settings,Salgsindstillinger,
Monthly Sales Target,Månedligt salgsmål,
Sales Monthly History,Salg Månedlig historie,
Transactions Annual History,Transaktioner Årlig Historie,
Total Monthly Sales,Samlet salg pr. måned,
Default Cash Account,Standard Kontant konto,
Default Receivable Account,Standard Tilgodehavende konto,
Round Off Cost Center,Afrundningsomkostningssted,
Discount Allowed Account,Tilladt rabatkonto,
Discount Received Account,Modtaget rabatkonto,
Exchange Gain / Loss Account,Exchange Gevinst / Tab konto,
Unrealized Exchange Gain/Loss Account,Urealiseret Exchange Gain / Loss-konto,
Allow Account Creation Against Child Company,Tillad oprettelse af konto mod børneselskab,
Default Payable Account,Standard Betales konto,
Default Employee Advance Account,Standardansatskonto,
Default Cost of Goods Sold Account,Standard vareforbrug konto,
Default Income Account,Standard Indkomst konto,
Default Deferred Revenue Account,Standard udskudt indtjeningskonto,
Default Deferred Expense Account,Standard udskudt udgiftskonto,
Default Payroll Payable Account,Standard Payroll Betales konto,
Default Expense Claim Payable Account,Standardudgiftskrav Betalbar konto,
Stock Settings,Lagerindstillinger,
Enable Perpetual Inventory,Aktiver evigt lager,
Default Inventory Account,Standard lagerkonto,
Stock Adjustment Account,Stock Justering konto,
Fixed Asset Depreciation Settings,Anlægsaktiv nedskrivning Indstillinger,
Series for Asset Depreciation Entry (Journal Entry),Serie for Asset Depreciation Entry (Journal Entry),
Gain/Loss Account on Asset Disposal,Gevinst/tabskonto vedr. salg af anlægsaktiv,
Asset Depreciation Cost Center,Aktiver afskrivninger omkostninger center,
Budget Detail,Budget Detail,
Exception Budget Approver Role,Undtagelse Budget Approver Rol,
Company Info,Firmainformation,
For reference only.,Kun til reference.,
Company Logo,Firma Logo,
Date of Incorporation,Oprindelsesdato,
Date of Commencement,Dato for påbegyndelse,
Phone No,Telefonnr.,
Company Description,Virksomhedsbeskrivelse,
Registration Details,Registrering Detaljer,
Company registration numbers for your reference. Tax numbers etc.,Firma registreringsnumre til din reference. Skat numre etc.,
Delete Company Transactions,Slet Company Transaktioner,
Currency Exchange,Valutaveksling,
Specify Exchange Rate to convert one currency into another,Angiv Exchange Rate til at konvertere en valuta til en anden,
From Currency,Fra Valuta,
To Currency,Til Valuta,
For Buying,Til køb,
For Selling,Til salg,
Customer Group Name,Kundegruppenavn,
Parent Customer Group,Overordnet kundegruppe,
Only leaf nodes are allowed in transaction,Kun blade noder er tilladt i transaktionen,
Mention if non-standard receivable account applicable,"Nævne, hvis ikke-standard tilgodehavende konto gældende",
Credit Limits,Kreditgrænser,
Email Digest,E-mail nyhedsbrev,
Send regular summary reports via Email.,Send regelmæssige sammenfattende rapporter via e-mail.,
Email Digest Settings,Indstillinger for e-mail nyhedsbreve,
How frequently?,Hvor ofte?,
Next email will be sent on:,Næste email vil blive sendt på:,
Note: Email will not be sent to disabled users,Bemærk: E-mail vil ikke blive sendt til deaktiverede brugere,
Profit & Loss,Profit &amp; Loss,
New Income,Ny Indkomst,
New Expenses,Nye udgifter,
Annual Income,Årlige indkomst,
Annual Expenses,Årlige omkostninger,
Bank Balance,Bank Balance,
Bank Credit Balance,Bankkredittsaldo,
Receivables,Tilgodehavender,
Payables,Gæld,
Sales Orders to Bill,Salgsordrer til Bill,
Purchase Orders to Bill,Købsordrer til Bill,
New Sales Orders,Nye salgsordrer,
New Purchase Orders,Nye indkøbsordrer,
Sales Orders to Deliver,Salgsordrer til levering,
Purchase Orders to Receive,Indkøbsordrer til modtagelse,
New Purchase Invoice,Ny købsfaktura,
New Quotations,Nye tilbud,
Open Quotations,Åben citat,
Open Issues,Åbn problemer,
Open Projects,Åbn projekter,
Purchase Orders Items Overdue,Indkøbsordrer Varer Forfaldne,
Upcoming Calendar Events,Kommende kalenderbegivenheder,
Open To Do,Åben for at gøre,
Add Quote,Tilføj tilbud,
Global Defaults,Globale indstillinger,
Default Company,Standardfirma,
Current Fiscal Year,Indeværende regnskabsår,
Default Distance Unit,Standard Distance Unit,
Hide Currency Symbol,Skjul Valuta Symbol,
Do not show any symbol like $ etc next to currencies.,Vis ikke valutasymbol (fx. $) ved siden af valutaen.,
"If disable, 'Rounded Total' field will not be visible in any transaction","Hvis deaktivere, &#39;Afrundet Total&#39; felt, vil ikke være synlig i enhver transaktion",
Disable In Words,Deaktiver i ord,
"If disable, 'In Words' field will not be visible in any transaction","Hvis deaktivere, &#39;I Words&#39; område vil ikke være synlig i enhver transaktion",
Item Classification,Item Klassifikation,
General Settings,Generelle indstillinger,
Item Group Name,Varegruppenavn,
Parent Item Group,Overordnet varegruppe,
Item Group Defaults,Vare gruppe standard,
Item Tax,Varemoms,
Check this if you want to show in website,"Markér dette, hvis du ønsker at vise det på hjemmesiden",
Show this slideshow at the top of the page,Vis denne slideshow øverst på siden,
HTML / Banner that will show on the top of product list.,"HTML / Banner, der vil vise på toppen af produktliste.",
Set prefix for numbering series on your transactions,Sæt præfiks for nummerering serie om dine transaktioner,
Setup Series,Opsætning af nummerserier,
Select Transaction,Vælg Transaktion,
Help HTML,Hjælp HTML,
Series List for this Transaction,Serie Liste for denne transaktion,
User must always select,Brugeren skal altid vælge,
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Markér dette hvis du ønsker at tvinge brugeren til at vælge en serie før du gemmer. Der vil ikke være standard, hvis du markerer dette.",
Update Series,Opdatering Series,
Change the starting / current sequence number of an existing series.,Skift start / aktuelle sekvensnummer af en eksisterende serie.,
Prefix,Præfiks,
This is the number of the last created transaction with this prefix,Dette er antallet af sidste skabte transaktionen med dette præfiks,
Update Series Number,Opdatering Series Number,
Quotation Lost Reason,Tilbud afvist - årsag,
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"En distributør, forhandler, sælger eller butik, der sælger firmaets varer og tjenesteydelser mod en provision.",
Sales Partner Name,Forhandlernavn,
Partner Type,Partnertype,
Address & Contacts,Adresse & kontaktpersoner,
Address Desc,Adresse,
Contact Desc,Kontaktbeskrivelse,
Sales Partner Target,Forhandlermål,
Targets,Mål,
Show In Website,Vis på hjemmesiden,
Referral Code,Henvisningskode,
To Track inbound purchase,For at spore indgående køb,
Logo,Logo,
Partner website,Partner hjemmeside,
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,"Alt salg Transaktioner kan mærkes mod flere ** Salgs Personer **, så du kan indstille og overvåge mål.",
Name and Employee ID,Navn og medarbejdernr.,
Sales Person Name,Salgsmedarbejdernavn,
Parent Sales Person,Parent Sales Person,
Select company name first.,Vælg firmanavn først.,
Sales Person Targets,Salgs person Mål,
Set targets Item Group-wise for this Sales Person.,Fastsatte mål Item Group-wise for denne Sales Person.,
Supplier Group Name,Leverandørgruppens navn,
Parent Supplier Group,Moderselskabets leverandørgruppe,
Target Detail,Target Detail,
Target Qty,Target Antal,
Target  Amount,Målbeløbet,
Target Distribution,Target Distribution,
"Standard Terms and Conditions that can be added to Sales and Purchases.\n\nExamples:\n\n1. Validity of the offer.\n1. Payment Terms (In Advance, On Credit, part advance etc).\n1. What is extra (or payable by the Customer).\n1. Safety / usage warning.\n1. Warranty if any.\n1. Returns Policy.\n1. Terms of shipping, if applicable.\n1. Ways of addressing disputes, indemnity, liability, etc.\n1. Address and Contact of your Company.","Standardvilkår og -betingelser, der kan føjes til salg og køb. Eksempler: 1. gyldighed for tilbuddet. 1. Betalingsbetingelser (på forhånd, på kredit, delvist på forhånd osv). 1. Hvad er ekstra (eller skal betales af kunden). 1. Sikkerhed / forbrugerinformation. 1. Garanti (hvis nogen). 1. Returpolitik. 1. Betingelser for skibsfart (hvis relevant). 1. Håndtering af tvister, erstatning, ansvar mv 1. Adresse og kontakt i din virksomhed.",
Applicable Modules,Anvendelige moduler,
Terms and Conditions Help,Hjælp til vilkår og betingelser,
Classification of Customers by region,Klassifikation af kunder efter region,
Territory Name,Områdenavn,
Parent Territory,Overordnet område,
Territory Manager,Områdechef,
For reference,For reference,
Territory Targets,Områdemål,
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Sæt varegruppe-budgetter på dette område. Du kan også medtage sæsonudsving ved at sætte Distribution.,
UOM Name,Enhedsnavn,
Check this to disallow fractions. (for Nos),Markér dette for at forbyde fraktioner. (For NOS),
Website Item Group,Hjemmeside-varegruppe,
Cross Listing of Item in multiple groups,Cross Notering af Item i flere grupper,
Default settings for Shopping Cart,Standardindstillinger for Indkøbskurv,
Enable Shopping Cart,Aktiver Indkøbskurv,
Display Settings,Skærmindstillinger,
Show Public Attachments,Vis offentlige vedhæftede filer,
Show Price,Vis pris,
Show Stock Availability,Vis lager tilgængelighed,
Show Contact Us Button,Vis Kontakt os-knap,
Show Stock Quantity,Vis lager Antal,
Show Apply Coupon Code,Vis Anvend kuponkode,
Allow items not in stock to be added to cart,"Tillad, at varer, der ikke er på lager, lægges i indkøbskurven",
Prices will not be shown if Price List is not set,"Priserne vil ikke blive vist, hvis prisliste ikke er indstillet",
Quotation Series,Tilbudsnummer,
Checkout Settings,Kassen Indstillinger,
Enable Checkout,Aktiver bestilling,
Payment Success Url,Betaling gennemført URL,
After payment completion redirect user to selected page.,Efter betaling afslutning omdirigere brugeren til valgte side.,
Batch Details,Batchoplysninger,
Batch ID,Parti-id,
image,billede,
Parent Batch,Overordnet parti,
Manufacturing Date,Fremstillingsdato,
Batch Quantity,Batchmængde,
Batch UOM,Batch UOM,
Source Document Type,Kilde dokumenttype,
Source Document Name,Kildedokumentnavn,
Batch Description,Partibeskrivelse,
Bin,Bin,
Reserved Quantity,Reserveret mængde,
Actual Quantity,Faktiske Mængde,
Requested Quantity,Anmodet mængde,
Reserved Qty for sub contract,Reserveret antal til underentreprise,
Moving Average Rate,Glidende gennemsnit Rate,
FCFS Rate,FCFS Rate,
Customs Tariff Number,Toldtarif nummer,
Tariff Number,Tarif nummer,
Delivery To,Levering Til,
MAT-DN-.YYYY.-,MAT-DN-.YYYY.-,
Is Return,Er Return,
Issue Credit Note,Udstedelse af kreditnota,
Return Against Delivery Note,Retur mod følgeseddel,
Customer's Purchase Order No,Kundens indkøbsordrenr.,
Billing Address Name,Faktureringsadressenavn,
Required only for sample item.,Kræves kun for prøve element.,
"If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Hvis du har oprettet en standardskabelon under Salg Moms- og afgiftsskabelon, skal du vælge en, og klik på knappen nedenfor.",
In Words will be visible once you save the Delivery Note.,"""I ord"" vil være synlig, når du gemmer følgesedlen.",
In Words (Export) will be visible once you save the Delivery Note.,"I ord (udlæsning) vil være synlig, når du gemmer følgesedlen.",
Transporter Info,Transporter Info,
Driver Name,Drivernavn,
Track this Delivery Note against any Project,Spor denne følgeseddel mod en hvilken som helst sag,
Inter Company Reference,Inter Company Reference,
Print Without Amount,Print uden Beløb,
% Installed,% Installeret,
% of materials delivered against this Delivery Note,% af materialer leveret mod denne følgeseddel,
Installation Status,Installation status,
Excise Page Number,Excise Sidetal,
Instructions,Instruktioner,
From Warehouse,Fra lager,
Against Sales Order,Mod kundeordre,
Against Sales Order Item,Imod salgs ordre vare,
Against Sales Invoice,Mod salgsfaktura,
Against Sales Invoice Item,Mod salgsfakturavarer,
Available Batch Qty at From Warehouse,Tilgængeligt batch-antal fra lageret,
Available Qty at From Warehouse,Tilgængeligt antal fra vores lager,
Delivery Settings,Leveringsindstillinger,
Dispatch Settings,Dispatch Settings,
Dispatch Notification Template,Forsendelsesbeskedskabelon,
Dispatch Notification Attachment,Dispatch Notification Attachment,
Leave blank to use the standard Delivery Note format,Forlad blanket for at bruge standardleveringsformatet,
Send with Attachment,Send med vedhæftet fil,
Delay between Delivery Stops,Forsinkelse mellem Leveringsstop,
Delivery Stop,Leveringsstop,
Lock,Låse,
Visited,besøgte,
Order Information,Ordreinformation,
Contact Information,Kontakt information,
Email sent to,E-mail til,
Dispatch Information,Dispatch Information,
Estimated Arrival,Forventet ankomst,
MAT-DT-.YYYY.-,MAT-DT-.YYYY.-,
Initial Email Notification Sent,Indledende Email Notification Sent,
Delivery Details,Levering Detaljer,
Driver Email,Driver-e-mail,
Driver Address,Driveradresse,
Total Estimated Distance,Samlet estimeret afstand,
Distance UOM,Afstand UOM,
Departure Time,Afgangstid,
Delivery Stops,Levering stopper,
Calculate Estimated Arrival Times,Beregn Anslåede ankomsttider,
Use Google Maps Direction API to calculate estimated arrival times,Brug Google Maps Direction API til at beregne anslåede ankomsttider,
Optimize Route,Optimer ruten,
Use Google Maps Direction API to optimize route,Brug Google Maps Direction API til at optimere ruten,
In Transit,Undervejs,
Fulfillment User,Fulfillment User,
"A Product or a Service that is bought, sold or kept in stock.","En vare eller tjenesteydelse, der købes, sælges eller opbevares på lager.",
STO-ITEM-.YYYY.-,STO-item-.YYYY.-,
Variant Of,Variant af,
"If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified","Hvis varen er en variant af et andet element derefter beskrivelse, billede, prissætning, skatter mv vil blive fastsat fra skabelonen medmindre det udtrykkeligt er angivet",
Is Item from Hub,Er vare fra nav,
Default Unit of Measure,Standard Måleenhed,
Maintain Stock,Vedligehold lageret,
Standard Selling Rate,Standard salgspris,
Auto Create Assets on Purchase,Automatisk oprettelse af aktiver ved køb,
Asset Naming Series,Aktiver navngivnings serie,
Over Delivery/Receipt Allowance (%),Overlevering / kvitteringsgodtgørelse (%),
Barcodes,Stregkoder,
Shelf Life In Days,Holdbarhed i dage,
End of Life,End of Life,
Default Material Request Type,Standard materialeanmodningstype,
Valuation Method,Værdiansættelsesmetode,
FIFO,FIFO,
Moving Average,Glidende gennemsnit,
Warranty Period (in days),Garantiperiode (i dage),
Auto re-order,Auto genbestil,
Reorder level based on Warehouse,Genbestil niveau baseret på Warehouse,
Will also apply for variants unless overrridden,"Vil også gælde for varianter, medmindre overrridden",
Units of Measure,Måleenheder,
Will also apply for variants,Vil også gælde for varianter,
Serial Nos and Batches,Serienummer og partier,
Has Batch No,Har partinr.,
Automatically Create New Batch,Opret automatisk et nyt parti,
Batch Number Series,Batch Nummer Serie,
"Example: ABCD.#####. If series is set and Batch No is not mentioned in transactions, then automatic batch number will be created based on this series. If you always want to explicitly mention Batch No for this item, leave this blank. Note: this setting will take priority over the Naming Series Prefix in Stock Settings.","Eksempel: ABCD. #####. Hvis serier er indstillet og Batch nr ikke er nævnt i transaktioner, oprettes automatisk batchnummer baseret på denne serie. Hvis du altid vil udtrykkeligt nævne Batch nr for dette emne, skal du lade dette være tomt. Bemærk: Denne indstilling vil have prioritet i forhold til Naming Series Prefix i lagerindstillinger.",
Has Expiry Date,Har udløbsdato,
Retain Sample,Behold prøve,
Max Sample Quantity,Max prøve antal,
Maximum sample quantity that can be retained,"Maksimal prøvemængde, der kan opbevares",
Has Serial No,Har serienummer,
Serial Number Series,Serienummer-nummerserie,
"Example: ABCD.#####\nIf 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.","Eksempel:. ABCD ##### Hvis nummerserien er indstillet, og serienummeret ikke fremkommer i transaktionerne, så vil serienummeret automatisk blive oprettet på grundlag af denne nummerserie. Hvis du altid ønsker, eksplicit at angive serienumre for denne vare, skal du lade dette felt være blankt.",
Variants,Varianter,
Has Variants,Har Varianter,
"If this item has variants, then it cannot be selected in sales orders etc.","Hvis denne vare har varianter, kan den ikke vælges i salgsordrer mv",
Variant Based On,Variant Based On,
Item Attribute,Item Attribut,
"Sales, Purchase, Accounting Defaults","Salg, køb, regnskabsstandarder",
Item Defaults,Standardindstillinger,
"Purchase, Replenishment Details","Køb, detaljer om påfyldning",
Is Purchase Item,Er Indkøbsvare,
Default Purchase Unit of Measure,Standardindkøbsenhed,
Minimum Order Qty,Minimum ordremængde,
Minimum quantity should be as per Stock UOM,Minimumsmængde skal være pr. Lager UOM,
Average time taken by the supplier to deliver,Gennemsnitlig tid taget af leverandøren til at levere,
Is Customer Provided Item,Er kunde leveret vare,
Delivered by Supplier (Drop Ship),Leveret af Leverandøren (Drop Ship),
Supplier Items,Leverandør Varer,
Foreign Trade Details,Udenrigshandel Detaljer,
Country of Origin,Oprindelsesland,
Sales Details,Salg Detaljer,
Default Sales Unit of Measure,Standard salgsforanstaltning,
Is Sales Item,Er salgsvare,
Max Discount (%),Maksimal rabat (%),
No of Months,Antal måneder,
Customer Items,Kundevarer,
Inspection Criteria,Kontrolkriterier,
Inspection Required before Purchase,Kontrol påkrævet før køb,
Inspection Required before Delivery,Kontrol påkrævet før levering,
Default BOM,Standard stykliste,
Supply Raw Materials for Purchase,Supply råstoffer til Indkøb,
If subcontracted to a vendor,Hvis underentreprise til en sælger,
Customer Code,Kundekode,
Default Item Manufacturer,Standardvareproducent,
Default Manufacturer Part No,Standard producent varenr,
Show in Website (Variant),Vis på hjemmesiden (Variant),
Items with higher weightage will be shown higher,Elementer med højere weightage vises højere,
Show a slideshow at the top of the page,Vis et diasshow på toppen af siden,
Website Image,Webstedets billede,
Website Warehouse,Hjemmeside-lager,
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.",Vis &quot;På lager&quot; eller &quot;Ikke på lager&quot; baseret på lager til rådighed i dette lager.,
Website Item Groups,Hjemmeside-varegrupper,
List this Item in multiple groups on the website.,Liste denne vare i flere grupper på hjemmesiden.,
Copy From Item Group,Kopier fra varegruppe,
Website Content,Indhold på webstedet,
You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Du kan bruge enhver gyldig Bootstrap 4-markering i dette felt. Det vises på din vareside.,
Total Projected Qty,Den forventede samlede Antal,
Hub Publishing Details,Hub Publishing Detaljer,
Publish in Hub,Offentliggør i Hub,
Publish Item to hub.erpnext.com,Udgive Vare til hub.erpnext.com,
Hub Category to Publish,Hub kategori til udgivelse,
Hub Warehouse,Hub Lager,
"Publish ""In Stock"" or ""Not in Stock"" on Hub based on stock available in this warehouse.",Udgiv &quot;På lager&quot; eller &quot;Ikke på lager&quot; på Hub baseret på lager tilgængelig på dette lager.,
Synced With Hub,Synkroniseret med Hub,
Item Alternative,Vare Alternativ,
Alternative Item Code,Alternativ varekode,
Two-way,To-vejs,
Alternative Item Name,Alternativt varenavn,
Attribute Name,Attribut Navn,
Numeric Values,Numeriske værdier,
From Range,Fra Range,
Increment,Tilvækst,
To Range,At Rækkevidde,
Item Attribute Values,Item Egenskab Værdier,
Item Attribute Value,Item Attribut Værdi,
Attribute Value,Attribut Værdi,
Abbreviation,Forkortelse,
"This will be appended to the Item Code of the variant. For example, if your abbreviation is ""SM"", and the item code is ""T-SHIRT"", the item code of the variant will be ""T-SHIRT-SM""","Dette vil blive føjet til varen af varianten. For eksempel, hvis dit forkortelse er ""SM"", og varenummeret er ""T-SHIRT"", så vil variantens varenummer blive ""T-SHIRT-SM""",
Item Barcode,Item Barcode,
Barcode Type,Stregkode Type,
EAN,EAN,
UPC-A,UPC-A,
Item Customer Detail,Item Customer Detail,
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Af hensyn til kunderne, kan disse koder bruges i udskriftsformater ligesom fakturaer og følgesedler",
Ref Code,Ref Code,
Item Default,Element Standard,
Purchase Defaults,Indkøbsvalg,
Default Buying Cost Center,Standard købsomkostningssted,
Default Supplier,Standard Leverandør,
Default Expense Account,Standard udgiftskonto,
Sales Defaults,Salgsstandarder,
Default Selling Cost Center,Standard salgsomkostningssted,
Item Manufacturer,element Manufacturer,
Item Price,Varepris,
Packing Unit,Pakningsenhed,
Quantity  that must be bought or sold per UOM,"Mængde, der skal købes eller sælges pr. UOM",
Item Quality Inspection Parameter,Kvalitetskontrolparameter,
Acceptance Criteria,Accept kriterier,
Item Reorder,Genbestil vare,
Check in (group),Check i (gruppe),
Request for,Anmodning om,
Re-order Level,Re-Order Level,
Re-order Qty,Re-prisen evt,
Item Supplier,Vareleverandør,
Item Variant,Varevariant,
Item Variant Attribute,Item Variant Attribut,
Do not update variants on save,Opdater ikke varianter ved at gemme,
Fields will be copied over only at time of creation.,Felter vil blive kopieret over kun på tidspunktet for oprettelsen.,
Allow Rename Attribute Value,Tillad omdøbe attributværdi,
Rename Attribute Value in Item Attribute.,Omdøb attributværdi i vareattribut.,
Copy Fields to Variant,Kopier felt til variant,
Item Website Specification,Varebeskrivelse til hjemmesiden,
Table for Item that will be shown in Web Site,"Tabel til Vare, der vil blive vist i Web Site",
Landed Cost Item,Landed Cost Vare,
Receipt Document Type,Kvittering Dokumenttype,
Receipt Document,Kvittering dokument,
Applicable Charges,Gældende gebyrer,
Purchase Receipt Item,Købskvittering vare,
Landed Cost Purchase Receipt,Landed Cost købskvittering,
Landed Cost Taxes and Charges,Landede Cost Skatter og Afgifter,
Landed Cost Voucher,Landed Cost Voucher,
MAT-LCV-.YYYY.-,MAT-LCV-.YYYY.-,
Purchase Receipts,Købskvitteringer,
Purchase Receipt Items,Købskvittering varer,
Get Items From Purchase Receipts,Hent varer fra købskvitteringer,
Distribute Charges Based On,Distribuere afgifter baseret på,
Landed Cost Help,Landed Cost Hjælp,
Manufacturers used in Items,"Producenter, der anvendes i artikler",
Limited to 12 characters,Begrænset til 12 tegn,
MAT-MR-.YYYY.-,MAT-MR-.YYYY.-,
Partially Ordered,Delvist bestilt,
Transferred,overført,
% Ordered,% Bestilt,
Terms and Conditions Content,Vilkår og -betingelsesindhold,
Quantity and Warehouse,Mængde og lager,
Lead Time Date,Leveringstid Dato,
Min Order Qty,Min. ordremængde,
Packed Item,Pakket vare,
To Warehouse (Optional),Til lager (valgfrit),
Actual Batch Quantity,Faktisk batchmængde,
Prevdoc DocType,Prevdoc DocType,
Parent Detail docname,Parent Detail docname,
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Generer pakkesedler til pakker, der skal leveres. Pakkesedlen indeholder pakkenummer, pakkens indhold og dens vægt.",
Indicates that the package is a part of this delivery (Only Draft),"Angiver, at pakken er en del af denne leverance (Kun udkast)",
MAT-PAC-.YYYY.-,MAT-PAC-.YYYY.-,
From Package No.,Fra pakkenr.,
Identification of the package for the delivery (for print),Identifikation af emballagen for levering (til print),
To Package No.,Til pakkenr.,
If more than one package of the same type (for print),Hvis mere end én pakke af samme type (til udskrivning),
Package Weight Details,Pakkevægtdetaljer,
The net weight of this package. (calculated automatically as sum of net weight of items),Nettovægten af denne pakke. (Beregnes automatisk som summen af nettovægt på poster),
Net Weight UOM,Nettovægt vægtenhed,
Gross Weight,Bruttovægt,
The gross weight of the package. Usually net weight + packaging material weight. (for print),Bruttovægt af pakken. Normalt nettovægt + emballagematerialevægt. (til udskrivning),
Gross Weight UOM,Bruttovægtenhed,
Packing Slip Item,Pakkeseddelvare,
DN Detail,DN Detail,
STO-PICK-.YYYY.-,STO-PICK-.YYYY.-,
Material Transfer for Manufacture,Materiale Transfer til Fremstilling,
Qty of raw materials will be decided based on the qty of the Finished Goods Item,Mængde råvarer afgøres på baggrund af antallet af færdige varer,
Parent Warehouse,Forældre Warehouse,
Items under this warehouse will be suggested,Varer under dette lager vil blive foreslået,
Get Item Locations,Hent vareplaceringer,
Item Locations,Vareplaceringer,
Pick List Item,Vælg listeelement,
Picked Qty,Valgt antal,
Price List Master,Master-Prisliste,
Price List Name,Prislistenavn,
Price Not UOM Dependent,Pris ikke UOM-afhængig,
Applicable for Countries,Gældende for lande,
Price List Country,Prislisteland,
MAT-PRE-.YYYY.-,MAT-PRE-.YYYY.-,
Supplier Delivery Note,Leverandør levering Note,
Time at which materials were received,"Tidspunkt, hvor materialer blev modtaget",
Return Against Purchase Receipt,Retur mod købskvittering,
Rate at which supplier's currency is converted to company's base currency,"Hastighed, hvormed leverandørens valuta omregnes til virksomhedens basisvaluta",
Sets 'Accepted Warehouse' in each row of the items table.,Indstiller &#39;Accepteret lager&#39; i hver række i varetabellen.,
Sets 'Rejected Warehouse' in each row of the items table.,Indstiller &#39;Afvist lager&#39; i hver række i varetabellen.,
Raw Materials Consumed,Forbrugte råvarer,
Get Current Stock,Hent aktuel lagerbeholdning,
Consumed Items,Forbrugte varer,
Add / Edit Taxes and Charges,Tilføj / rediger Skatter og Afgifter,
Auto Repeat Detail,Automatisk gentag detaljer,
Transporter Details,Transporter Detaljer,
Vehicle Number,Køretøjsnummer,
Vehicle Date,Køretøj dato,
Received and Accepted,Modtaget og accepteret,
Accepted Quantity,Mængde,
Rejected Quantity,Afvist Mængde,
Accepted Qty as per Stock UOM,Accepteret antal pr. Lager UOM,
Sample Quantity,Prøvekvantitet,
Rate and Amount,Sats og Beløb,
MAT-QA-.YYYY.-,MAT-QA-.YYYY.-,
Report Date,Rapporteringsdato,
Inspection Type,Kontroltype,
Item Serial No,Serienummer til varer,
Sample Size,Sample Size,
Inspected By,Kontrolleret af,
Readings,Aflæsninger,
Quality Inspection Reading,Kvalitetskontrol-aflæsning,
Reading 1,Læsning 1,
Reading 2,Reading 2,
Reading 3,Reading 3,
Reading 4,Reading 4,
Reading 5,Reading 5,
Reading 6,Læsning 6,
Reading 7,Reading 7,
Reading 8,Reading 8,
Reading 9,Reading 9,
Reading 10,Reading 10,
Quality Inspection Template Name,Kvalitetsinspektionsskabelon,
Quick Stock Balance,Hurtig lagerbalance,
Available Quantity,Tilgængeligt antal,
Distinct unit of an Item,Særskilt enhed af et element,
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,"Lager kan kun ændres via lagerindtastning, følgeseddel eller købskvittering",
Purchase / Manufacture Details,Indkøbs- og produktionsdetaljer,
Creation Document Type,Oprettet dokumenttype,
Creation Document No,Oprettet med dok.-nr.,
Creation Date,Oprettet d.,
Creation Time,Creation Time,
Asset Details,Aktiver oplysninger,
Asset Status,Aktiver status,
Delivery Document Type,Levering Dokumenttype,
Delivery Document No,Levering dokument nr,
Delivery Time,Leveringstid,
Invoice Details,Faktura detaljer,
Warranty / AMC Details,Garanti / Artrogrypose-detaljer,
Warranty Expiry Date,Garanti udløbsdato,
AMC Expiry Date,AMC Udløbsdato,
Under Warranty,Under garanti,
Out of Warranty,Garanti udløbet,
Under AMC,Under AMC,
Out of AMC,Ud af AMC,
Warranty Period (Days),Garantiperiode (dage),
Serial No Details,Serienummeroplysninger,
MAT-STE-.YYYY.-,MAT-STE-.YYYY.-,
Stock Entry Type,Lagerindtastningstype,
Stock Entry (Outward GIT),Lagerindgang (udadgående GIT),
Material Consumption for Manufacture,Materialeforbrug til fremstilling,
Repack,Pak om,
Send to Subcontractor,Send til underleverandør,
Delivery Note No,Følgeseddelnr.,
Sales Invoice No,Salgsfakturanr.,
Purchase Receipt No,Købskvitteringsnr.,
Inspection Required,Inspection Nødvendig,
From BOM,Fra stykliste,
For Quantity,For Mængde,
As per Stock UOM,pr. lagerenhed,
Including items for sub assemblies,Herunder elementer til sub forsamlinger,
Default Source Warehouse,Standardkildelager,
Source Warehouse Address,Source Warehouse Address,
Default Target Warehouse,Standard Target Warehouse,
Target Warehouse Address,Mållagerhusadresse,
Update Rate and Availability,Opdatér priser og tilgængelighed,
Total Incoming Value,Samlet værdi indgående,
Total Outgoing Value,Samlet værdi udgående,
Total Value Difference (Out - In),Samlet værdi (difference udgående - indgående),
Additional Costs,Yderligere omkostninger,
Total Additional Costs,Yderligere omkostninger i alt,
Customer or Supplier Details,Kunde- eller leverandørdetaljer,
Per Transferred,Per overført,
Stock Entry Detail,Lagerindtastningsdetaljer,
Basic Rate (as per Stock UOM),Grundlæggende sats (som pr. lagerenhed),
Basic Amount,Grundbeløb,
Additional Cost,Yderligere omkostning,
Serial No / Batch,Serienummer / Parti,
BOM No. for a Finished Good Item,Styklistenr. for en færdigvare,
Material Request used to make this Stock Entry,Materialeanmodning brugt til denne lagerpost,
Subcontracted Item,Underentreprise,
Against Stock Entry,Mod aktieindtastning,
Stock Entry Child,Lagerindgangsbarn,
PO Supplied Item,PO leveret vare,
Reference Purchase Receipt,Referencekøbskvittering,
Stock Ledger Entry,Lagerpost,
Outgoing Rate,Udgående Rate,
Actual Qty After Transaction,Aktuel Antal Efter Transaktion,
Stock Value Difference,Stock Value Forskel,
Stock Queue (FIFO),Stock kø (FIFO),
Is Cancelled,Er Annulleret,
Stock Reconciliation,Lagerafstemning,
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.,Dette værktøj hjælper dig med at opdatere eller fastsætte mængden og værdiansættelse på lager i systemet. Det bruges typisk til at synkronisere systemets værdier og hvad der rent faktisk eksisterer i dine lagre.,
MAT-RECO-.YYYY.-,MAT-RECO-.YYYY.-,
Reconciliation JSON,Afstemning JSON,
Stock Reconciliation Item,Lagerafstemningsvare,
Before reconciliation,Før forsoning,
Current Serial No,Aktuelt serienr,
Current Valuation Rate,Aktuel Værdiansættelsesbeløb,
Current Amount,Det nuværende beløb,
Quantity Difference,Mængdeforskel,
Amount Difference,Differencebeløb,
Item Naming By,Item Navngivning By,
Default Item Group,Standard varegruppe,
Default Stock UOM,Standard lagerenhed,
Sample Retention Warehouse,Prøveopbevaringslager,
Default Valuation Method,Standard værdiansættelsesmetode,
Show Barcode Field,Vis stregkodefelter,
Convert Item Description to Clean HTML,Konverter varebeskrivelse for at rydde HTML,
Allow Negative Stock,Tillad negativ lagerbeholdning,
Automatically Set Serial Nos based on FIFO,Angiv serienumrene automatisk baseret på FIFO-princippet,
Auto Material Request,Automatisk materialeanmodning,
Inter Warehouse Transfer Settings,Indstillinger for interlageroverførsel,
Freeze Stock Entries,Frys Stock Entries,
Stock Frozen Upto,Stock Frozen Op,
Batch Identification,Batchidentifikation,
Use Naming Series,Brug navngivningsserie,
Naming Series Prefix,Navngivning Serie Prefix,
UOM Category,UOM kategori,
UOM Conversion Detail,UOM Konvertering Detail,
Variant Field,Variant Field,
A logical Warehouse against which stock entries are made.,Et logisk lager hvor lagerændringer foretages.,
Warehouse Detail,Lagerinformation,
Warehouse Name,Lagernavn,
Warehouse Contact Info,Lagerkontaktinformation,
PIN,PIN,
ISS-.YYYY.-,ISS-.YYYY.-,
Raised By (Email),Oprettet af (e-mail),
Issue Type,Udstedelsestype,
Issue Split From,Udgave opdelt fra,
Service Level,Serviceniveau,
Response By,Svar af,
Response By Variance,Svar af variation,
Ongoing,Igangværende,
Resolution By,Opløsning af,
Resolution By Variance,Opløsning efter variation,
Service Level Agreement Creation,Oprettelse af serviceniveauaftale,
First Responded On,Først svarede den,
Resolution Details,Løsningsdetaljer,
Opening Date,Åbning Dato,
Opening Time,Åbning tid,
Resolution Date,Løsningsdato,
Via Customer Portal,Via kundeportalen,
Support Team,Supportteam,
Issue Priority,Udgaveprioritet,
Service Day,Servicedag,
Workday,arbejdsdagen,
Default Priority,Standardprioritet,
Priorities,prioriteter,
Support Hours,Support timer,
Support and Resolution,Support og opløsning,
Default Service Level Agreement,Standard serviceniveauaftale,
Entity,Enhed,
Agreement Details,Aftaledetaljer,
Response and Resolution Time,Svar og opløsningstid,
Service Level Priority,Prioritet på serviceniveau,
Resolution Time,Opløsningstid,
Support Search Source,Support Søg kilde,
Source Type,Kilde Type,
Query Route String,Query Route String,
Search Term Param Name,Søg term Param Navn,
Response Options,Respons Options,
Response Result Key Path,Response Result Key Path,
Post Route String,Post Rute String,
Post Route Key List,Post rute nøgle liste,
Post Title Key,Posttitelnøgle,
Post Description Key,Indlæg Beskrivelse Nøgle,
Link Options,Link muligheder,
Source DocType,Kilde DocType,
Result Title Field,Resultat Titel Field,
Result Preview Field,Resultatforhåndsvisningsfelt,
Result Route Field,Resultatrutefelt,
Service Level Agreements,Aftaler om serviceniveau,
Track Service Level Agreement,Spor serviceniveauaftale,
Allow Resetting Service Level Agreement,Tillad nulstilling af serviceniveauaftale,
Close Issue After Days,Luk Issue efter dage,
Auto close Issue after 7 days,Auto luk problem efter 7 dage,
Support Portal,Support Portal,
Get Started Sections,Kom i gang sektioner,
Show Latest Forum Posts,Vis seneste forumindlæg,
Forum Posts,Forumindlæg,
Forum URL,Forum-URL,
Get Latest Query,Få seneste forespørgsel,
Response Key List,Response Key List,
Post Route Key,Indtast rute nøgle,
Search APIs,Søg API&#39;er,
SER-WRN-.YYYY.-,SER-WRN-.YYYY.-,
Issue Date,Udstedelsesdagen,
Item and Warranty Details,Item og garanti Detaljer,
Warranty / AMC Status,Garanti / AMC status,
Resolved By,Løst af,
Service Address,Tjeneste Adresse,
If different than customer address,Hvis anderledes end kundeadresse,
Raised By,Oprettet af,
From Company,Fra firma,
Rename Tool,Omdøb Tool,
Utilities,Forsyningsvirksomheder,
Type of document to rename.,Type dokument omdøbe.,
File to Rename,Fil der skal omdøbes,
"Attach .csv file with two columns, one for the old name and one for the new name","Vedhæft .csv fil med to kolonner, en for det gamle navn og et til det nye navn",
Rename Log,Omdøb log,
SMS Log,SMS Log,
Sender Name,Afsendernavn,
Sent On,Sendt On,
No of Requested SMS,Antal  af forespurgte SMS'er,
Requested Numbers,Anmodet Numbers,
No of Sent SMS,Antal afsendte SMS'er,
Sent To,Sendt Til,
Absent Student Report,Ikke-tilstede studerende rapport,
Assessment Plan Status,Evalueringsplan Status,
Asset Depreciation Ledger,Aktiver afskrivningers hovedbog,
Asset Depreciations and Balances,Aktiver afskrivninger og balancer,
Available Stock for Packing Items,Tilgængelig lager til emballerings- Varer,
Bank Clearance Summary,Bank Clearance Summary,
Batch Item Expiry Status,Partivare-udløbsstatus,
Batch-Wise Balance History,Historik sorteret pr. parti,
BOM Explorer,BOM Explorer,
BOM Search,BOM Søg,
BOM Stock Calculated,BOM lager Beregnet,
BOM Variance Report,BOM Variance Report,
Campaign Efficiency,Kampagneeffektivitet,
Cash Flow,Pengestrøm,
Completed Work Orders,Afsluttede arbejdsordrer,
To Produce,At producere,
Produced,Produceret,
Consolidated Financial Statement,Koncernregnskab,
Course wise Assessment Report,Kursusbaseret vurderingsrapport,
Customer Acquisition and Loyalty,Kundetilgang og -loyalitet,
Customer Credit Balance,Customer Credit Balance,
Customer Ledger Summary,Oversigt over kundehovedbog,
Customer-wise Item Price,Kundemæssig vare pris,
Customers Without Any Sales Transactions,Kunder uden salgstransaktioner,
Daily Timesheet Summary,Daglig Tidsregisteringsoversigt,
DATEV,DATEV,
Delayed Item Report,Forsinket artikelrapport,
Delayed Order Report,Forsinket ordrerapport,
Delivered Items To Be Billed,Leverede varer at blive faktureret,
Delivery Note Trends,Følgeseddel Tendenser,
Electronic Invoice Register,Elektronisk fakturaregister,
Employee Billing Summary,Resume af fakturering af medarbejdere,
Employee Birthday,Medarbejder Fødselsdag,
Employee Information,Medarbejder Information,
Employee Leave Balance,Medarbejder Leave Balance,
Employee Leave Balance Summary,Oversigt over saldo for medarbejderorlov,
Eway Bill,Eway Bill,
Expiring Memberships,Udfaldne Medlemskaber,
Fichier des Ecritures Comptables [FEC],Fichier des Ecritures Comptables [FEC],
Final Assessment Grades,Afsluttende bedømmelse,
Fixed Asset Register,Fast aktivregister,
Gross and Net Profit Report,Brutto- og resultatopgørelse,
GST Itemised Purchase Register,GST Itemized Purchase Register,
GST Itemised Sales Register,GST Itemized Sales Register,
GST Purchase Register,GST købsregistrering,
GST Sales Register,GST salgsregistrering,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Hotelværelse Occupancy,
HSN-wise-summary of outward supplies,HSN-wise-sammendrag af ydre forsyninger,
Inactive Customers,Inaktive kunder,
Inactive Sales Items,Inaktive salgsartikler,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Udstedte varer mod arbejdsordre,
Projected Quantity as Source,Forventet mængde som kilde,
Item Balance (Simple),Varebalance (Enkel),
Item Price Stock,Vare pris lager,
Item Prices,Varepriser,
Item Shortage Report,Item Mangel Rapport,
Item Variant Details,Varevarianter Detaljer,
Item-wise Price List Rate,Item-wise Prisliste Rate,
Item-wise Purchase History,Vare-wise Købshistorik,
Item-wise Purchase Register,Vare-wise Purchase Tilmeld,
Item-wise Sales History,Vare-wise Sales History,
Item-wise Sales Register,Vare-wise Sales Register,
Items To Be Requested,Varer til bestilling,
Reserved,Reserveret,
Itemwise Recommended Reorder Level,Itemwise Anbefalet genbestillings Level,
Lead Details,Emnedetaljer,
Lead Owner Efficiency,Lederegenskaber Effektivitet,
Lost Opportunity,Mistet mulighed,
Maintenance Schedules,Vedligeholdelsesplaner,
Material Requests for which Supplier Quotations are not created,Materialeanmodninger under hvilke leverandørtilbud ikke er oprettet,
Open Work Orders,Åbne arbejdsordrer,
Qty to Deliver,Antal at levere,
Patient Appointment Analytics,Patientaftaleanalyse,
Payment Period Based On Invoice Date,Betaling Periode Baseret på Fakturadato,
Pending SO Items For Purchase Request,Afventende salgsordre-varer til indkøbsanmodning,
Procurement Tracker,Indkøb Tracker,
Product Bundle Balance,Produktbundtbalance,
Production Analytics,Produktionsanalyser,
Profit and Loss Statement,Resultatopgørelse,
Profitability Analysis,Lønsomhedsanalyse,
Project Billing Summary,Projekt faktureringsoversigt,
Project wise Stock Tracking,Projektmæssig aktiesporing,
Project wise Stock Tracking ,Opfølgning på lager sorteret efter sager,
Prospects Engaged But Not Converted,Udsigter Engageret men ikke konverteret,
Purchase Analytics,Indkøbsanalyser,
Purchase Invoice Trends,Købsfaktura Trends,
Qty to Receive,Antal til Modtag,
Received Qty Amount,Modtaget antal,
Billed Qty,Faktureret antal,
Purchase Order Trends,Indkøbsordre Trends,
Purchase Receipt Trends,Købskvittering Tendenser,
Purchase Register,Indkøb Register,
Quotation Trends,Tilbud trends,
Received Items To Be Billed,Modtagne varer skal faktureres,
Qty to Order,Antal til ordre,
Requested Items To Be Transferred,"Anmodet Varer, der skal overføres",
Qty to Transfer,Antal til Transfer,
Sales Analytics,Salgsanalyser,
Sales Invoice Trends,Salgsfaktura Trends,
Sales Order Trends,Salgsordre Trends,
Sales Partner Commission Summary,Sammendrag af salgspartnerkommission,
Sales Partner Target Variance based on Item Group,Salgspartner Målvariation baseret på varegruppe,
Sales Partner Transaction Summary,Salgspartnertransaktionsoversigt,
Sales Partners Commission,Forhandlerprovision,
Invoiced Amount (Exclusive Tax),Faktureret beløb (eksklusiv skat),
Average Commission Rate,Gennemsnitlig provisionssats,
Sales Payment Summary,Salgsbetalingsoversigt,
Sales Person Commission Summary,Salgs personkommissionsoversigt,
Sales Person Target Variance Based On Item Group,Salgsmål Målvariation baseret på varegruppe,
Sales Person-wise Transaction Summary,SalgsPerson Transaktion Totaler,
Sales Register,Salgs Register,
Serial No Service Contract Expiry,Serienummer Servicekontrakt-udløb,
Serial No Status,Serienummerstatus,
Serial No Warranty Expiry,Serienummer garantiudløb,
Stock Ageing,Stock Ageing,
Stock and Account Value Comparison,Sammenligning af lager og konto,
Stock Projected Qty,Stock Forventet Antal,
Student and Guardian Contact Details,Studerende og Guardian Kontaktoplysninger,
Student Batch-Wise Attendance,Fremmøde efter elevgrupper,
Student Fee Collection,Student afgiftsopkrævning,
Student Monthly Attendance Sheet,Student Månedlig Deltagelse Sheet,
Subcontracted Item To Be Received,"Underleverandør, der skal modtages",
Subcontracted Raw Materials To Be Transferred,"Underentrepriser Råmaterialer, der skal overføres",
Supplier Ledger Summary,Oversigt over leverandørbok,
Supplier-Wise Sales Analytics,Salgsanalyser pr. leverandør,
Support Hour Distribution,Support Time Distribution,
TDS Computation Summary,TDS-beregningsoversigt,
TDS Payable Monthly,TDS betales månedligt,
Territory Target Variance Based On Item Group,Territoriummålvariation baseret på varegruppe,
Territory-wise Sales,Territoriumsmæssigt salg,
Total Stock Summary,Samlet lageroversigt,
Trial Balance,Trial Balance,
Trial Balance (Simple),Testbalance (enkel),
Trial Balance for Party,Prøvebalance for Selskab,
Warehouse wise Item Balance Age and Value,Lagerbetydende varebalance Alder og værdi,
Work Order Stock Report,Arbejdsordre lagerrapport,
Work Orders in Progress,Arbejdsordrer i gang,
Validation Error,Valideringsfejl,
Automatically Process Deferred Accounting Entry,Behandl automatisk udskudt bogføring,
Bank Clearance,Bankgodkendelse,
Bank Clearance Detail,Bankklaringsdetalje,
Update Cost Center Name / Number,Opdater navn / nummer på omkostningscenter,
Journal Entry Template,Kasseklasseskabelon,
Template Title,Skabelonnavn,
Journal Entry Type,Journalposttype,
Journal Entry Template Account,Konto for journalindtastning,
Process Deferred Accounting,Behandle udskudt bogføring,
Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,"Manuel indtastning kan ikke oprettes! Deaktiver automatisk indtastning for udskudt bogføring i kontoindstillinger, og prøv igen",
End date cannot be before start date,Slutdatoen kan ikke være før startdatoen,
Total Counts Targeted,Samlet antal målrettede,
Total Counts Completed,Samlede antal tællinger afsluttet,
Counts Targeted: {0},Måltællinger: {0},
Material Request Warehouse,Materialeanmodningslager,
Select warehouse for material requests,Vælg lager til materialeanmodninger,
Transfer Materials For Warehouse {0},Overfør materiale til lager {0},
Production Plan Material Request Warehouse,Produktionsplan Materialeanmodningslager,
Sets 'Source Warehouse' in each row of the items table.,Indstiller &#39;Source Warehouse&#39; i hver række i varetabellen.,
Sets 'Target Warehouse' in each row of the items table.,Indstiller &#39;Target Warehouse&#39; i hver række i varetabellen.,
Show Cancelled Entries,Vis annullerede poster,
Backdated Stock Entry,Backdateret lagerindgang,
Row #{}: Currency of {} - {} doesn't matches company currency.,Række nr. {}: Valuta for {} - {} matcher ikke virksomhedens valuta.,
{} Assets created for {},{} Aktiver oprettet for {},
{0} Number {1} is already used in {2} {3},{0} Nummer {1} bruges allerede i {2} {3},
Update Bank Clearance Dates,Opdater bankafklaringsdatoer,
Healthcare Practitioner: ,Sundhedspleje:,
Lab Test Conducted: ,Lab test udført:,
Lab Test Event: ,Lab testbegivenhed:,
Lab Test Result: ,Resultat af laboratorietest:,
Clinical Procedure conducted: ,Klinisk procedure gennemført:,
Therapy Session Charges: {0},Terapikonsultationsgebyrer: {0},
Therapy: ,Terapi:,
Therapy Plan: ,Terapiplan:,
Total Counts Targeted: ,Samlet antal målrettede mål:,
Total Counts Completed: ,Samlede antal tællinger afsluttet:,
Andaman and Nicobar Islands,Andaman- og Nicobarøerne,
Andhra Pradesh,Andhra Pradesh,
Arunachal Pradesh,Arunachal Pradesh,
Assam,Assam,
Bihar,Bihar,
Chandigarh,Chandigarh,
Chhattisgarh,Chhattisgarh,
Dadra and Nagar Haveli,Dadra og Nagar Haveli,
Daman and Diu,Daman og Diu,
Delhi,Delhi,
Goa,Goa,
Gujarat,Gujarat,
Haryana,Haryana,
Himachal Pradesh,Himachal Pradesh,
Jammu and Kashmir,Jammu og Kashmir,
Jharkhand,Jharkhand,
Karnataka,Karnataka,
Kerala,Kerala,
Lakshadweep Islands,Lakshadweep Islands,
Madhya Pradesh,Madhya Pradesh,
Maharashtra,Maharashtra,
Manipur,Manipur,
Meghalaya,Meghalaya,
Mizoram,Mizoram,
Nagaland,Nagaland,
Odisha,Odisha,
Other Territory,Andet territorium,
Pondicherry,Pondicherry,
Punjab,Punjab,
Rajasthan,Rajasthan,
Sikkim,Sikkim,
Tamil Nadu,Tamil Nadu,
Telangana,Telangana,
Tripura,Tripura,
Uttar Pradesh,Uttar Pradesh,
Uttarakhand,Uttarakhand,
West Bengal,Vestbengalen,
Is Mandatory,Er obligatorisk,
Published on,Udgivet den,
Service Received But Not Billed,"Tjeneste modtaget, men ikke faktureret",
Deferred Accounting Settings,Udskudte regnskabsindstillinger,
Book Deferred Entries Based On,Book udskudte poster baseret på,
Days,Dage,
Months,Måneder,
Book Deferred Entries Via Journal Entry,Book udskudte poster via journalindlæg,
Submit Journal Entries,Indsend journalindlæg,
If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,"Hvis dette ikke er markeret, gemmes journalposter i kladdetilstand og skal indsendes manuelt",
Enable Distributed Cost Center,Aktivér distribueret omkostningscenter,
Distributed Cost Center,Distribueret omkostningscenter,
Dunning,Dunning,
DUNN-.MM.-.YY.-,DUNN-.MM .-. YY.-,
Overdue Days,Forfaldne dage,
Dunning Type,Dunning Type,
Dunning Fee,Dunning-gebyr,
Dunning Amount,Dunning beløb,
Resolved,Løst,
Unresolved,Uafklaret,
Printing Setting,Udskrivningsindstilling,
Body Text,Brødtekst,
Closing Text,Afslutning af tekst,
Resolve,Beslutte,
Dunning Letter Text,Dunning Letter Text,
Is Default Language,Er standardsprog,
Letter or Email Body Text,Tekst til brev eller e-mail,
Letter or Email Closing Text,Lukning af brev eller e-mail,
Body and Closing Text Help,Hjælp til brødtekst og afsluttende tekst,
Overdue Interval,Forsinket interval,
Dunning Letter,Dunning Letter,
"This section allows the user to set the Body and Closing text of the Dunning Letter for the Dunning Type based on language, which can be used in Print.","Dette afsnit giver brugeren mulighed for at indstille brødtekstens og lukningsteksten til Dunning Letter for Dunning Type baseret på sprog, som kan bruges i Print.",
Reference Detail No,Reference detaljer nr,
Custom Remarks,Brugerdefinerede bemærkninger,
Please select a Company first.,Vælg først et firma.,
"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Række nr. {0}: Referencedokumenttypen skal være en af salgsordren, salgsfakturaen, journalindgangen eller dunning",
POS Closing Entry,POS-afslutningspost,
POS Opening Entry,POS åbningsindgang,
POS Transactions,POS-transaktioner,
POS Closing Entry Detail,POS-afslutningsindgangsdetalje,
Opening Amount,Åbningsbeløb,
Closing Amount,Afslutningsbeløb,
POS Closing Entry Taxes,POS Afslutningsindgangsskatter,
POS Invoice,POS-faktura,
ACC-PSINV-.YYYY.-,ACC-PSINV-.YYYY.-,
Consolidated Sales Invoice,Konsolideret salgsfaktura,
Return Against POS Invoice,Returner mod POS-faktura,
Consolidated,Konsolideret,
POS Invoice Item,POS-fakturapost,
POS Invoice Merge Log,POS-fakturafletningslog,
POS Invoices,POS-fakturaer,
Consolidated Credit Note,Konsolideret kreditnota,
POS Invoice Reference,POS-fakturahenvisning,
Set Posting Date,Indstil bogføringsdato,
Opening Balance Details,Åbningsbalancedetaljer,
POS Opening Entry Detail,POS-åbningsindgangsdetalje,
POS Payment Method,POS-betalingsmetode,
Payment Methods,betalingsmetoder,
Process Statement Of Accounts,Procesregnskab,
General Ledger Filters,Hovedboksfiltre,
Customers,Kunder,
Select Customers By,Vælg Kunder efter,
Fetch Customers,Hent kunder,
Send To Primary Contact,Send til primær kontakt,
Print Preferences,Udskriftsindstillinger,
Include Ageing Summary,Inkluder aldringsoversigt,
Enable Auto Email,Aktivér automatisk e-mail,
Filter Duration (Months),Filtervarighed (måneder),
CC To,CC til,
Help Text,Hjælp Tekst,
Emails Queued,E-mails i kø,
Process Statement Of Accounts Customer,Procesopgørelse af kontokunde,
Billing Email,Fakturerings-e-mail,
Primary Contact Email,Primær kontakt-e-mail,
PSOA Cost Center,PSOA-omkostningscenter,
PSOA Project,PSOA-projekt,
ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.YYYY.-,
Supplier GSTIN,Leverandør GSTIN,
Place of Supply,Leveringssted,
Select Billing Address,Vælg faktureringsadresse,
GST Details,GST detaljer,
GST Category,GST-kategori,
Registered Regular,Registreret regelmæssigt,
Registered Composition,Registreret sammensætning,
Unregistered,Uregistreret,
SEZ,SEZ,
Overseas,Oversøisk,
UIN Holders,UIN-indehavere,
With Payment of Tax,Med betaling af skat,
Without Payment of Tax,Uden betaling af skat,
Invoice Copy,Fakturakopi,
Original for Recipient,Original til modtager,
Duplicate for Transporter,Duplicate for Transporter,
Duplicate for Supplier,Kopi for leverandør,
Triplicate for Supplier,Triplikat for leverandør,
Reverse Charge,Omvendt opladning,
Y,Y,
N,N,
E-commerce GSTIN,E-handel GSTIN,
Reason For Issuing document,Årsag til udstedelse af dokument,
01-Sales Return,01-salgsafkast,
02-Post Sale Discount,Rabat på 02-post-salg,
03-Deficiency in services,03-Mangel på tjenester,
04-Correction in Invoice,04-Korrektion i faktura,
05-Change in POS,05-Ændring i POS,
06-Finalization of Provisional assessment,06-Afslutning af foreløbig vurdering,
07-Others,07-Andre,
Eligibility For ITC,Støtteberettigelse til ITC,
Input Service Distributor,Input Service Distributør,
Import Of Service,Import af service,
Import Of Capital Goods,Import af kapitalvarer,
Ineligible,Uberettiget,
All Other ITC,Alt andet ITC,
Availed ITC Integrated Tax,Availed ITC Integrated Tax,
Availed ITC Central Tax,Tilgængelig ITC-centralafgift,
Availed ITC State/UT Tax,Tilgængelig ITC-stat / UT-skat,
Availed ITC Cess,Availed ITC Cess,
Is Nil Rated or Exempted,Er nul vurderet eller undtaget,
Is Non GST,Er ikke GST,
ACC-SINV-RET-.YYYY.-,ACC-SINV-RET-.YYYY.-,
E-Way Bill No.,E-vejs regning nr.,
Is Consolidated,Er konsolideret,
Billing Address GSTIN,Faktureringsadresse GSTIN,
Customer GSTIN,Kunde GSTIN,
GST Transporter ID,GST-transportør-ID,
Distance (in km),Afstand (i km),
Road,Vej,
Air,Luft,
Rail,Skinne,
Ship,Skib,
GST Vehicle Type,GST køretøjstype,
Over Dimensional Cargo (ODC),Overdimensionel last (ODC),
Consumer,Forbruger,
Deemed Export,Anses for eksport,
Port Code,Port kode,
 Shipping Bill Number,Forsendelsesregningsnummer,
Shipping Bill Date,Forsendelsesregningsdato,
Subscription End Date,Abonnements slutdato,
Follow Calendar Months,Følg kalendermåneder,
If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,"Hvis dette er markeret, oprettes efterfølgende nye fakturaer på kalendermåned og kvartals startdatoer uanset den aktuelle fakturastartdato",
Generate New Invoices Past Due Date,Generer nye fakturaer forfaldsdato,
New invoices will be generated as per schedule even if current invoices are unpaid or past due date,"Nye fakturaer genereres efter planen, selvom aktuelle fakturaer er ubetalte eller forfaldne",
Document Type ,dokument type,
Subscription Price Based On,Abonnementspris Baseret på,
Fixed Rate,Fast pris,
Based On Price List,Baseret på prisliste,
Monthly Rate,Månedlig sats,
Cancel Subscription After Grace Period,Annuller abonnement efter nådeperiode,
Source State,Kildetilstand,
Is Inter State,Er mellemstat,
Purchase Details,Købsoplysninger,
Depreciation Posting Date,Dato for afskrivning,
"By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","Som standard er leverandørnavnet indstillet i henhold til det indtastede leverandørnavn. Hvis du ønsker, at leverandører skal navngives af en",
 choose the 'Naming Series' option.,vælg &#39;Navngivningsserie&#39;.,
Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,"Konfigurer standardprislisten, når du opretter en ny købstransaktion. Varepriser hentes fra denne prisliste.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice or Receipt without creating a Purchase Order first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Order' checkbox in the Supplier master.","Hvis denne indstilling er konfigureret &#39;Ja&#39;, forhindrer ERPNext dig i at oprette en købsfaktura eller kvittering uden først at oprette en indkøbsordre. Denne konfiguration kan tilsidesættes for en bestemt leverandør ved at aktivere afkrydsningsfeltet &#39;Tillad oprettelse af købsfaktura uden indkøbsordre&#39; i leverandørmasteren.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice without creating a Purchase Receipt first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Receipt' checkbox in the Supplier master.","Hvis denne indstilling er konfigureret &#39;Ja&#39;, forhindrer ERPNext dig i at oprette en købsfaktura uden først at oprette en købsmodtagelse. Denne konfiguration kan tilsidesættes for en bestemt leverandør ved at aktivere afkrydsningsfeltet &#39;Tillad oprettelse af købsfaktura uden købsmodtagelse&#39; i leverandørmasteren.",
Quantity & Stock,Mængde og lager,
Call Details,Opkaldsdetaljer,
Authorised By,Autoriseret af,
Signee (Company),Underskrevet (firma),
Signed By (Company),Underskrevet af (firma),
First Response Time,Første svartid,
Request For Quotation,Anmodning om tilbud,
Opportunity Lost Reason Detail,Mulighed for mistet årsag,
Access Token Secret,Adgang Token Secret,
Add to Topics,Føj til emner,
...Adding Article to Topics,... Tilføjelse af artikler til emner,
Add Article to Topics,Føj artikel til emner,
This article is already added to the existing topics,Denne artikel er allerede føjet til de eksisterende emner,
Add to Programs,Føj til programmer,
Programs,Programmer,
...Adding Course to Programs,... Tilføjelse af kursus til programmer,
Add Course to Programs,Føj kursus til programmer,
This course is already added to the existing programs,Dette kursus er allerede føjet til de eksisterende programmer,
Learning Management System Settings,Indstillinger for læringsstyringssystem,
Enable Learning Management System,Aktivér Learning Management System,
Learning Management System Title,Learning Management System Titel,
...Adding Quiz to Topics,... Tilføjelse af quiz til emner,
Add Quiz to Topics,Føj quiz til emner,
This quiz is already added to the existing topics,Denne quiz er allerede føjet til de eksisterende emner,
Enable Admission Application,Aktiver ansøgning om optagelse,
EDU-ATT-.YYYY.-,EDU-ATT-.YYYY.-,
Marking attendance,Markering af fremmøde,
Add Guardians to Email Group,Føj værger til e-mail-gruppe,
Attendance Based On,Deltagelse baseret på,
Check this to mark the student as present in case the student is not attending the institute to participate or represent the institute in any event.\n\n,"Marker dette for at markere den studerende som til stede, hvis den studerende under ingen omstændigheder deltager i instituttet for at deltage eller repræsentere instituttet.",
Add to Courses,Føj til kurser,
...Adding Topic to Courses,... Tilføjelse af emne til kurser,
Add Topic to Courses,Føj emne til kurser,
This topic is already added to the existing courses,Dette emne er allerede føjet til de eksisterende kurser,
"If Shopify does not have a customer in the order, then while syncing the orders, the system will consider the default customer for the order","Hvis Shopify ikke har en kunde i ordren, vil systemet under synkronisering af ordrene betragte standardkunden for ordren",
The accounts are set by the system automatically but do confirm these defaults,"Kontiene indstilles automatisk af systemet, men bekræfter disse standardindstillinger",
Default Round Off Account,Standard afrundingskonto,
Failed Import Log,Mislykket importlog,
Fixed Error Log,Fast fejllog,
Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,Virksomhed {0} findes allerede. Fortsat overskriver virksomheden og kontoplanen,
Meta Data,Metadata,
Unresolve,Uopklar,
Create Document,Opret dokument,
Mark as unresolved,Marker som uløst,
TaxJar Settings,TaxJar-indstillinger,
Sandbox Mode,Sandkassetilstand,
Enable Tax Calculation,Aktivér skatteberegning,
Create TaxJar Transaction,Opret TaxJar-transaktion,
Credentials,Legitimationsoplysninger,
Live API Key,Live API-nøgle,
Sandbox API Key,Sandbox API-nøgle,
Configuration,Konfiguration,
Tax Account Head,Skattekontohoved,
Shipping Account Head,Fragtkontohoved,
Practitioner Name,Praktiserens navn,
Enter a name for the Clinical Procedure Template,Indtast et navn til skabelonen til klinisk procedure,
Set the Item Code which will be used for billing the Clinical Procedure.,"Indstil den varekode, der skal bruges til fakturering af den kliniske procedure.",
Select an Item Group for the Clinical Procedure Item.,Vælg en varegruppe til den kliniske procedureemne.,
Clinical Procedure Rate,Klinisk procedure,
Check this if the Clinical Procedure is billable and also set the rate.,"Kontroller dette, hvis den kliniske procedure er fakturerbar, og angiv også satsen.",
Check this if the Clinical Procedure utilises consumables. Click ,"Kontroller dette, hvis den kliniske procedure bruger forbrugsvarer. Klik på",
 to know more,at vide mere,
"You can also set the Medical Department for the template. After saving the document, an Item will automatically be created for billing this Clinical Procedure. You can then use this template while creating Clinical Procedures for Patients. Templates save you from filling up redundant data every single time. You can also create templates for other operations like Lab Tests, Therapy Sessions, etc.","Du kan også indstille den medicinske afdeling til skabelonen. Efter lagring af dokumentet oprettes der automatisk en vare til fakturering af denne kliniske procedure. Du kan derefter bruge denne skabelon, mens du opretter kliniske procedurer for patienter. Skabeloner sparer dig for at udfylde overflødige data hver eneste gang. Du kan også oprette skabeloner til andre operationer som laboratorietests, terapisessioner osv.",
Descriptive Test Result,Beskrivende testresultat,
Allow Blank,Tillad tom,
Descriptive Test Template,Beskrivende testskabelon,
"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Hvis du vil spore lønningsliste og andre HRMS-operationer for en Practitoner, skal du oprette en medarbejder og linke den her.",
Set the Practitioner Schedule you just created. This will be used while booking appointments.,"Indstil den praktiserende tidsplan, du lige har oprettet. Dette vil blive brugt under bestilling af aftaler.",
Create a service item for Out Patient Consulting.,Opret en servicepost til Out Patient Consulting.,
"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Hvis denne sundhedsperson udfører arbejde for indlæggelsesafdelingen, skal du oprette en servicepost til indlæggelsesbesøg.",
Set the Out Patient Consulting Charge for this Practitioner.,Angiv gebyret for patientrådgivning for denne praktiserende læge.,
"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Hvis denne sundhedsplejeudøver også arbejder for indlæggelsesafdelingen, skal du indstille gebyret for indlæggelsesbesøg for denne praktiserende læge.",
"If checked, a customer will be created for every Patient. Patient Invoices will be created against this Customer. You can also select existing Customer while creating a Patient. This field is checked by default.","Hvis dette er markeret, oprettes der en kunde for hver patient. Patientfakturaer oprettes mod denne kunde. Du kan også vælge eksisterende kunde, mens du opretter en patient. Dette felt er markeret som standard.",
Collect Registration Fee,Saml registreringsgebyr,
"If your Healthcare facility bills registrations of Patients, you can check this and set the Registration Fee in the field below. Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.","Hvis din sundhedsfacilitet fakturerer registrering af patienter, kan du kontrollere dette og indstille registreringsgebyret i nedenstående felt. Hvis du markerer dette, oprettes der som standard nye patienter med en deaktiveret status og aktiveres kun efter fakturering af registreringsgebyret.",
Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,"Hvis du markerer dette, oprettes der automatisk en salgsfaktura, hver gang der er bestilt en aftale for en patient.",
Healthcare Service Items,Artikler i sundhedsvæsenet,
"You can create a service item for Inpatient Visit Charge and set it here. Similarly, you can set up other Healthcare Service Items for billing in this section. Click ",Du kan oprette et servicepost til Inpatient Visit Charge og indstille det her. På samme måde kan du oprette andre sundhedsydelser til fakturering i dette afsnit. Klik på,
Set up default Accounts for the Healthcare Facility,Opret standardkonti til sundhedsfaciliteten,
"If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.","Hvis du vil tilsidesætte standardindstillinger for konti og konfigurere indkomst- og tilgodehavenskonti for Healthcare, kan du gøre det her.",
Out Patient SMS alerts,Uden SMS-advarsler,
"If you want to send SMS alert on Patient Registration, you can enable this option. Similary, you can set up Out Patient SMS alerts for other functionalities in this section. Click ","Hvis du vil sende en SMS-besked om patientregistrering, kan du aktivere denne mulighed. På samme måde kan du konfigurere Out Patient SMS-alarmer for andre funktioner i dette afsnit. Klik på",
Admission Order Details,Adgangsbestillingsoplysninger,
Admission Ordered For,Adgang bestilt til,
Expected Length of Stay,Forventet opholdslængde,
Admission Service Unit Type,Adgangstjenesteenhedstype,
Healthcare Practitioner (Primary),Sundhedspleje (primær),
Healthcare Practitioner (Secondary),Healthcare Practitioner (Secondary),
Admission Instruction,Adgangsinstruktion,
Chief Complaint,Hovedanklagen,
Medications,Medicin,
Investigations,Undersøgelser,
Discharge Detials,Afladning af detials,
Discharge Ordered Date,Afgangsbestilt dato,
Discharge Instructions,Instruktioner om udledning,
Follow Up Date,Opfølgningsdato,
Discharge Notes,Noter om udledning,
Processing Inpatient Discharge,Behandling af indlæggelsesudskrivning,
Processing Patient Admission,Behandling af patientindlæggelse,
Check-in time cannot be greater than the current time,Check-in tid kan ikke være længere end det aktuelle tidspunkt,
Process Transfer,Processoverførsel,
HLC-LAB-.YYYY.-,HLC-LAB-.YYYY.-,
Expected Result Date,Forventet resultatdato,
Expected Result Time,Forventet resultattid,
Printed on,Trykt på,
Requesting Practitioner,Anmodende praktiserende læge,
Requesting Department,Anmodende afdeling,
Employee (Lab Technician),Medarbejder (laboratorietekniker),
Lab Technician Name,Navn på laboratorietekniker,
Lab Technician Designation,Lab Technician Betegnelse,
Compound Test Result,Sammensat testresultat,
Organism Test Result,Organismetestresultat,
Sensitivity Test Result,Følsomhedstestresultat,
Worksheet Print,Udskrivning af regneark,
Worksheet Instructions,Vejledning til regneark,
Result Legend Print,Resultat Forklaring Udskriv,
Print Position,Udskriv position,
Bottom,Bund,
Top,Top,
Both,Begge,
Result Legend,Resultatforklaring,
Lab Tests,Lab test,
No Lab Tests found for the Patient {0},Ingen laboratorietests fundet for patienten {0},
"Did not send SMS, missing patient mobile number or message content.","Sendte ikke sms, manglende patientens mobilnummer eller beskedindhold.",
No Lab Tests created,Ingen laboratorietests oprettet,
Creating Lab Tests...,Oprettelse af laboratorietests ...,
Lab Test Group Template,Lab Test Group Template,
Add New Line,Tilføj ny linje,
Secondary UOM,Sekundær UOM,
"<b>Single</b>: Results which require only a single input.\n<br>\n<b>Compound</b>: Results which require multiple event inputs.\n<br>\n<b>Descriptive</b>: Tests which have multiple result components with manual result entry.\n<br>\n<b>Grouped</b>: Test templates which are a group of other test templates.\n<br>\n<b>No Result</b>: Tests with no results, can be ordered and billed but no Lab Test will be created. e.g.. Sub Tests for Grouped results","<b>Single</b> : Resultater, der kun kræver en enkelt input.<br> <b>Forbindelse</b> : Resultater, der kræver flere hændelsesindgange.<br> <b>Beskrivende</b> : Test, der har flere resultatkomponenter med manuel resultatindtastning.<br> <b>Grupperet</b> : Testskabeloner, som er en gruppe af andre testskabeloner.<br> <b>Intet resultat</b> : Test uden resultater, kan bestilles og faktureres, men der oprettes ingen laboratorietest. f.eks. Undertest for grupperede resultater",
"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Hvis det ikke er markeret, vil varen ikke være tilgængelig i fakturaer til fakturering, men kan bruges til oprettelse af gruppetest.",
Description ,Beskrivelse,
Descriptive Test,Beskrivende test,
Group Tests,Gruppetest,
Instructions to be printed on the worksheet,"Instruktioner, der skal udskrives på regnearket",
"Information to help easily interpret the test report, will be printed as part of the Lab Test result.","Oplysninger, der let hjælper med at fortolke testrapporten, udskrives som en del af laboratorietestresultatet.",
Normal Test Result,Normalt testresultat,
Secondary UOM Result,Sekundært UOM-resultat,
Italic,Kursiv,
Underline,Understrege,
Organism,Organisme,
Organism Test Item,Organisme Test Element,
Colony Population,Kolonibefolkning,
Colony UOM,Koloni UOM,
Tobacco Consumption (Past),Tobaksforbrug (tidligere),
Tobacco Consumption (Present),Tobaksforbrug (nuværende),
Alcohol Consumption (Past),Alkoholforbrug (tidligere),
Alcohol Consumption (Present),Alkoholforbrug (nuværende),
Billing Item,Faktureringsvare,
Medical Codes,Medicinske koder,
Clinical Procedures,Kliniske procedurer,
Order Admission,Bestil optagelse,
Scheduling Patient Admission,Planlægning af patientindlæggelse,
Order Discharge,Bestil udledning,
Sample Details,Prøveoplysninger,
Collected On,Samlet på,
No. of prints,Antal udskrifter,
Number of prints required for labelling the samples,Antal krævede udskrifter til mærkning af prøverne,
HLC-VTS-.YYYY.-,HLC-VTS-.YYYY.-,
Payroll Cost Center,Lønomkostningscenter,
Approvers,Approverser,
The first Approver in the list will be set as the default Approver.,Den første godkender på listen indstilles som standardgodkenderen.,
Shift Request Approver,Godkendelse af skiftanmodning,
PAN Number,PAN-nummer,
Provident Fund Account,Provident Fund-konto,
MICR Code,MICR-kode,
Repay unclaimed amount from salary,Tilbagebetal ikke-krævet beløb fra løn,
Deduction from salary,Fradrag fra løn,
Expired Leaves,Udløbne blade,
If this is not checked the loan by default will be considered as a Demand Loan,"Hvis dette ikke er markeret, vil lånet som standard blive betragtet som et behovslån",
This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Denne konto bruges til at booke tilbagebetaling af lån fra låntager og også udbetale lån til låntager,
This account is capital account which is used to allocate capital for loan disbursal account ,"Denne konto er en kapitalkonto, der bruges til at allokere kapital til udbetaling af lånekonto",
This account will be used for booking loan interest accruals,Denne konto vil blive brugt til reservation af lånerenter,
This account will be used for booking penalties levied due to delayed repayments,Denne konto vil blive brugt til booking af bøder på grund af forsinket tilbagebetaling,
Variant BOM,Variant BOM,
Template Item,Skabelonelement,
Select template item,Vælg skabelonelement,
Select variant item code for the template item {0},Vælg variantvarekode for skabelonelementet {0},
Downtime Entry,Indgang til nedetid,
DT-,DT-,
Workstation / Machine,Arbejdsstation / maskine,
Operator,Operatør,
In Mins,In Mins,
Downtime Reason,Årsag til nedetid,
Stop Reason,Stop grund,
Excessive machine set up time,Overdreven opsætningstid for maskinen,
Unplanned machine maintenance,Uplanlagt vedligeholdelse af maskinen,
On-machine press checks,Tryk på kontrol på maskinen,
Machine operator errors,Maskinoperatørfejl,
Machine malfunction,Maskinfunktion,
Electricity down,Elektricitet nede,
Operation Row Number,Operation række nummer,
Operation {0} added multiple times in the work order {1},Handling {0} tilføjet flere gange i arbejdsordren {1},
"If ticked, multiple materials can be used for a single Work Order. This is useful if one or more time consuming products are being manufactured.","Hvis afkrydset, kan flere materialer bruges til en enkelt arbejdsordre. Dette er nyttigt, hvis der fremstilles et eller flere tidskrævende produkter.",
Backflush Raw Materials,Rygmaterialer til tilbagespoling,
"The Stock Entry of type 'Manufacture' is known as backflush. Raw materials being consumed to manufacture finished goods is known as backflushing. <br><br> When creating Manufacture Entry, raw-material items are backflushed based on BOM of production item. If you want raw-material items to be backflushed based on Material Transfer entry made against that Work Order instead, then you can set it under this field.","Lagerindgangen af typen &#39;Fremstilling&#39; kaldes tilbagespoling. Råmaterialer, der forbruges til fremstilling af færdige varer, kaldes tilbagespoling.<br><br> Når du opretter fremstillingsindgang, tilbagesprøjtes råmaterialeartikler baseret på produktionsdelens BOM. Hvis du vil have, at råmaterialeartikler skal tilbagesprøjtes baseret på Materialeoverførsel, der er foretaget mod den arbejdsordre i stedet, kan du indstille det under dette felt.",
Work In Progress Warehouse,Igangværende lager,
This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Dette lager opdateres automatisk i feltet Work In Progress Warehouse med arbejdsordrer.,
Finished Goods Warehouse,Færdigvarelager,
This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Dette lager opdateres automatisk i feltet Mållager i arbejdsordren.,
"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Hvis dette er markeret, opdateres BOM-prisen automatisk baseret på værdiansættelsesgrad / prislistehastighed / sidste købsrate for råvarer.",
Source Warehouses (Optional),Kildelagre (valgfrit),
"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","System afhenter materialerne fra de valgte lagre. Hvis ikke angivet, opretter systemet materialeanmodning om køb.",
Lead Time,Ledetid,
PAN Details,PAN-detaljer,
Create Customer,Opret kunde,
Invoicing,Fakturering,
Enable Auto Invoicing,Aktivér automatisk fakturering,
Send Membership Acknowledgement,Send medlemskabsbekræftelse,
Send Invoice with Email,Send faktura med e-mail,
Membership Print Format,Udskrivningsformat for medlemskab,
Invoice Print Format,Fakturaudskrivningsformat,
Revoke <Key></Key>,Tilbagekald&lt;Key&gt;&lt;/Key&gt;,
You can learn more about memberships in the manual. ,Du kan lære mere om medlemskaber i manualen.,
ERPNext Docs,ERPNext Docs,
Regenerate Webhook Secret,Genopret Webhook Secret,
Generate Webhook Secret,Generer Webhook Secret,
Copy Webhook URL,Kopier Webhook URL,
Linked Item,Tilknyttet vare,
Feedback By,Feedback af,
Manufacturing Section,Produktionssektion,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","Som standard er kundenavnet indstillet i henhold til det indtastede fulde navn. Hvis du ønsker, at kunder skal navngives af en",
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,"Konfigurer standardprislisten, når du opretter en ny salgstransaktion. Varepriser hentes fra denne prisliste.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice or Delivery Note without creating a Sales Order first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Sales Order' checkbox in the Customer master.","Hvis denne indstilling er konfigureret &#39;Ja&#39;, forhindrer ERPNext dig i at oprette en salgsfaktura eller en leveringsnote uden først at oprette en salgsordre. Denne konfiguration kan tilsidesættes for en bestemt kunde ved at aktivere afkrydsningsfeltet &#39;Tillad oprettelse af salgsfaktura uden salgsordre&#39; i kundemasteren.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice without creating a Delivery Note first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Delivery Note' checkbox in the Customer master.","Hvis denne indstilling er konfigureret &#39;Ja&#39;, forhindrer ERPNext dig i at oprette en salgsfaktura uden først at oprette en leveringsnote. Denne konfiguration kan tilsidesættes for en bestemt kunde ved at aktivere afkrydsningsfeltet &#39;Tillad oprettelse af salgsfaktura uden leveringsnote&#39; i kundemasteren.",
Default Warehouse for Sales Return,Standardlager til salgsafkast,
Default In Transit Warehouse,Standard i transitlager,
Enable Perpetual Inventory For Non Stock Items,"Aktiver evigvarende beholdning for varer, der ikke er på lager",
HRA Settings,HRA-indstillinger,
Basic Component,Grundlæggende komponent,
HRA Component,HRA-komponent,
Arrear Component,Arranger komponent,
Please enter the company name to confirm,Indtast firmaets navn for at bekræfte,
Quotation Lost Reason Detail,Citat Mistet grund Detalje,
Enable Variants,Aktivér varianter,
Save Quotations as Draft,Gem tilbud som kladde,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.YYYY.-,
Please Select a Customer,Vælg en kunde,
Against Delivery Note Item,Mod leveringsnote,
Is Non GST ,Er ikke GST,
Image Description,Billedbeskrivelse,
Transfer Status,Overfør status,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
Track this Purchase Receipt against any Project,Spor denne købskvittering mod ethvert projekt,
Please Select a Supplier,Vælg en leverandør,
Add to Transit,Føj til transit,
Set Basic Rate Manually,Indstil grundlæggende sats manuelt,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ",Som standard er varenavnet indstillet i henhold til den indtastede varekode. Hvis du vil have genstande navngivet af en,
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Indstil et standardlager til lagertransaktioner. Dette hentes i standardlageret i varemasteren.,
"This will allow stock items to be displayed in negative values. Using this option depends on your use case. With this option unchecked, the system warns before obstructing a transaction that is causing negative stock.","Dette gør det muligt for lagervarer at blive vist i negative værdier. Brug af denne mulighed afhænger af din brugssag. Når denne indstilling ikke er markeret, advarer systemet, inden det forhindrer en transaktion, der forårsager negativ beholdning.",
Choose between FIFO and Moving Average Valuation Methods. Click ,Vælg mellem FIFO og Moving Average Valuation Methods. Klik på,
 to know more about them.,at vide mere om dem.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Vis &#39;Scan stregkode&#39; felt over hver underordnet tabel for let at indsætte emner.,
"Serial numbers for stock will be set automatically based on the Items entered based on first in first out in transactions like Purchase/Sales Invoices, Delivery Notes, etc.","Serienumre på lager indstilles automatisk baseret på de indtastede varer baseret på først ind først ud i transaktioner som indkøbs- / salgsfakturaer, leveringsnoter osv.",
"If blank, parent Warehouse Account or company default will be considered in transactions","Hvis det er tomt, betragtes modervarehuskonto eller virksomheds misligholdelse i transaktioner",
Service Level Agreement Details,Oplysninger om serviceniveauaftale,
Service Level Agreement Status,Status for serviceniveauaftale,
On Hold Since,På vent siden,
Total Hold Time,Samlet holdtid,
Response Details,Svardetaljer,
Average Response Time,Gennemsnitlig svartid,
User Resolution Time,Brugeropløsningstid,
SLA is on hold since {0},SLA er i venteposition siden {0},
Pause SLA On Status,SLA SLA på status,
Pause SLA On,SLA SLA på,
Greetings Section,Hilsen sektion,
Greeting Title,Hilsen titel,
Greeting Subtitle,Hilsen undertekst,
Youtube ID,Youtube ID,
Youtube Statistics,Youtube-statistik,
Views,Visninger,
Dislikes,Kan ikke lide,
Video Settings,Videoindstillinger,
Enable YouTube Tracking,Aktivér YouTube-sporing,
30 mins,30 minutter,
1 hr,1 time,
6 hrs,6 timer,
Patient Progress,Patientens fremskridt,
Targetted,Målrettet,
Score Obtained,Resultat opnået,
Sessions,Sessioner,
Average Score,Gennemsnitlig score,
Select Assessment Template,Vælg vurderingsskabelon,
 out of ,ud af,
Select Assessment Parameter,Vælg vurderingsparameter,
Gender: ,Køn:,
Contact: ,Kontakt:,
Total Therapy Sessions: ,Samlede terapisessioner:,
Monthly Therapy Sessions: ,Månedlige terapisessioner:,
Patient Profile,Patientprofil,
Point Of Sale,Salgsstedet,
Email sent successfully.,E-mail sendt med succes.,
Search by invoice id or customer name,Søg efter faktura-id eller kundenavn,
Invoice Status,Fakturastatus,
Filter by invoice status,Filtrer efter fakturastatus,
Select item group,Vælg varegruppe,
No items found. Scan barcode again.,Ingen varer fundet. Scan stregkoden igen.,
"Search by customer name, phone, email.","Søg efter kundenavn, telefon, e-mail.",
Enter discount percentage.,Indtast rabatprocent.,
Discount cannot be greater than 100%,Rabatten må ikke være større end 100%,
Enter customer's email,Indtast kundens e-mail,
Enter customer's phone number,Indtast kundens telefonnummer,
Customer contact updated successfully.,Kundekontakt opdateret.,
Item will be removed since no serial / batch no selected.,"Element fjernes, da ingen seriel / batch-nr er valgt.",
Discount (%),Rabat (%),
You cannot submit the order without payment.,Du kan ikke afgive ordren uden betaling.,
You cannot submit empty order.,Du kan ikke afgive tom ordre.,
To Be Paid,At blive betalt,
Create POS Opening Entry,Opret POS-åbningsindgang,
Please add Mode of payments and opening balance details.,Tilføj venligst betalingsmetode og åbningsbalanceoplysninger.,
Toggle Recent Orders,Skift nylige ordrer,
Save as Draft,Gem som kladde,
You must add atleast one item to save it as draft.,Du skal mindst tilføje et element for at gemme det som kladde.,
There was an error saving the document.,Der opstod en fejl under lagring af dokumentet.,
You must select a customer before adding an item.,"Du skal vælge en kunde, før du tilføjer en vare.",
Please Select a Company,Vælg et firma,
Active Leads,Aktive kundeemner,
Please Select a Company.,Vælg et firma.,
BOM Operations Time,BOM-driftstid,
BOM ID,BOM-ID,
BOM Item Code,BOM-varekode,
Time (In Mins),Tid (i minutter),
Sub-assembly BOM Count,Undermonteret BOM-antal,
View Type,Visningstype,
Total Delivered Amount,Samlet leveret beløb,
Downtime Analysis,Analyse af nedetid,
Machine,Maskine,
Downtime (In Hours),Nedetid (i timevis),
Employee Analytics,Medarbejderanalyse,
"""From date"" can not be greater than or equal to ""To date""",&quot;Fra dato&quot; kan ikke være større end eller lig med &quot;Til dato&quot;,
Exponential Smoothing Forecasting,Eksponentiel udjævningsprognose,
First Response Time for Issues,Første svartid for problemer,
First Response Time for Opportunity,Første svartid for mulighed,
Depreciatied Amount,Afskrevet beløb,
Period Based On,Periode baseret på,
Date Based On,Dato baseret på,
{0} and {1} are mandatory,{0} og {1} er obligatoriske,
Consider Accounting Dimensions,Overvej regnskabsmæssige dimensioner,
Reserved Quantity for Production,Reserveret mængde til produktion,
Projected Quantity,Projiceret mængde,
 Total Sales Amount,Samlet salgsbeløb,
Job Card Summary,Jobkortoversigt,
Id,Id,
Time Required (In Mins),Påkrævet tid (i minutter),
From Posting Date,Fra bogføringsdato,
To Posting Date,Til bogføringsdato,
No records found,Ingen optegnelser fundet,
Customer/Lead Name,Kunde / kundenavn,
Production Planning Report,Produktionsplanlægningsrapport,
Order Qty,Bestil antal,
Raw Material Code,Råvarekode,
Raw Material Name,Råmateriale navn,
Allotted Qty,Tildelt antal,
Expected Arrival Date,Forventet ankomstdato,
Arrival Quantity,Ankomstmængde,
Raw Material Warehouse,Råvarelager,
Order By,Bestil efter,
Include Sub-assembly Raw Materials,Inkluder underkonstruktionsråmaterialer,
Program wise Fee Collection,Programklogt opkrævning af gebyrer,
Fees Collected,Gebyrer opkrævet,
Project Summary,Projektoversigt,
Total Tasks,Samlet antal opgaver,
Tasks Completed,Opgaver afsluttet,
Tasks Overdue,Opgaver forsinket,
Completion,Færdiggørelse,
Purchase Order Analysis,Indkøbsordreanalyse,
From and To Dates are required.,Fra og til datoer kræves.,
To Date cannot be before From Date.,Til dato kan ikke være før fra dato.,
Qty to Bill,Antal til Bill,
Group by Purchase Order,Gruppér efter indkøbsordre,
 Purchase Value,Købsværdi,
Total Received Amount,Samlet modtaget beløb,
Quality Inspection Summary,Oversigt over kvalitetskontrol,
 Quoted Amount,Citeret beløb,
Lead Time (Days),Leveringstid (dage),
Include Expired,Inkluder udløbet,
Requested Items to Order and Receive,Anmodede varer at bestille og modtage,
Sales Order Analysis,Analyse af salgsordrer,
Amount Delivered,Leveret beløb,
Delay (in Days),Forsinkelse (i dage),
Group by Sales Order,Gruppér efter salgsordre,
 Sales Value,Salgsværdi,
Stock Qty vs Serial No Count,Antal på lager versus serie nr. Antal,
Serial No Count,Serienummer ikke tæller,
Work Order Summary,Arbejdsordresammendrag,
Produce Qty,Producer antal,
Lead Time (in mins),Leveringstid (i minutter),
Charts Based On,Kort baseret på,
YouTube Interactions,YouTube-interaktioner,
Published Date,Udgivelsesdato,
Barnch,Barnch,
Select a Company,Vælg et firma,
Opportunity {0} created,Mulighed {0} oprettet,
Kindly select the company first,Vælg først virksomheden,
Please enter From Date and To Date to generate JSON,Indtast venligst Fra dato og til dato for at generere JSON,
Download DATEV File,Download DATEV-fil,
Numero has not set in the XML file,Numero er ikke indstillet i XML-filen,
Inward Supplies(liable to reverse charge),Indvendige forsyninger (tilbageføringspligtig),
This is based on the course schedules of this Instructor,Dette er baseret på kursusplanerne for denne instruktør,
Course and Assessment,Kursus og vurdering,
Course {0} has been added to all the selected programs successfully.,Kursus {0} er blevet tilføjet til alle de valgte programmer med succes.,
Programs updated,Programmer opdateret,
Program and Course,Program og kursus,
{0} or {1} is mandatory,{0} eller {1} er obligatorisk,
Mandatory Fields,Obligatoriske felter,
Student {0}: {1} does not belong to Student Group {2},Elev {0}: {1} tilhører ikke elevgruppen {2},
Student Attendance record {0} already exists against the Student {1},Studenterdeltagelsesrekord {0} findes allerede mod eleven {1},
Course and Fee,Kursus og gebyr,
Not eligible for the admission in this program as per Date Of Birth,Ikke berettiget til optagelse i dette program pr. Fødselsdato,
Topic {0} has been added to all the selected courses successfully.,Emne {0} er blevet tilføjet til alle de valgte kurser med succes.,
Courses updated,Kurser opdateret,
{0} {1} has been added to all the selected topics successfully.,{0} {1} er føjet til alle de valgte emner med succes.,
Topics updated,Emner opdateret,
Academic Term and Program,Akademisk termin og program,
Please remove this item and try to submit again or update the posting time.,"Fjern denne vare, og prøv at indsende igen eller opdater opdateringstidspunktet.",
Failed to Authenticate the API key.,Kunne ikke godkende API-nøglen.,
Invalid Credentials,Ugyldige legitimationsoplysninger,
URL can only be a string,URL kan kun være en streng,
"Here is your webhook secret, this will be shown to you only once.","Her er din webhook-hemmelighed, denne vises kun én gang for dig.",
The payment for this membership is not paid. To generate invoice fill the payment details,Betalingen for dette medlemskab betales ikke. For at generere faktura skal du udfylde betalingsoplysningerne,
An invoice is already linked to this document,En faktura er allerede knyttet til dette dokument,
No customer linked to member {},Ingen kunde linket til medlem {},
You need to set <b>Debit Account</b> in Membership Settings,Du skal indstille <b>betalingskonto</b> i medlemskabsindstillinger,
You need to set <b>Default Company</b> for invoicing in Membership Settings,Du skal indstille <b>standardfirma</b> til fakturering i medlemsindstillinger,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Du skal aktivere <b>Send kvitterings-e-mail</b> i medlemskabsindstillinger,
Error creating membership entry for {0},Fejl ved oprettelse af medlemskabspost for {0},
A customer is already linked to this Member,En kunde er allerede knyttet til dette medlem,
End Date must not be lesser than Start Date,Slutdatoen må ikke være mindre end startdatoen,
Employee {0} already has Active Shift {1}: {2},Medarbejder {0} har allerede Active Shift {1}: {2},
 from {0},fra {0},
 to {0},til {0},
Please set {0} for the Employee or for Department: {1},Indstil {0} for medarbejderen eller for afdelingen: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Onboarding af medarbejdere: {0} er allerede til jobansøger: {1},
Asset Value Analytics,Analyse af aktivværdi,
Category-wise Asset Value,Kategorimæssig aktivværdi,
Total Assets,Samlede aktiver,
New Assets (This Year),Nye aktiver (i år),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Række nr. {}: Afskrivningsdato for afskrivning bør ikke være lig med Tilgængelig til brugsdato.,
Incorrect Date,Forkert dato,
Invalid Gross Purchase Amount,Ugyldigt bruttokøbbeløb,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,"Der er aktiv vedligeholdelse eller reparationer af aktivet. Du skal udfylde dem alle, før du annullerer aktivet.",
% Complete,% Fuldført,
Back to Course,Tilbage til kurset,
Finish Topic,Afslut emne,
Mins,Min,
by,ved,
Back to,Tilbage til,
Enrolling...,Tilmelding ...,
You have successfully enrolled for the program ,Du har tilmeldt dig programmet,
Enrolled,indskrevet,
Watch Intro,Se introduktion,
We're here to help!,Vi er her for at hjælpe!,
Frequently Read Articles,Ofte læste artikler,
Please set a default company address,Angiv en standardfirmaadresse,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,"{0} er ikke en gyldig tilstand! Kontroller for typografier, eller indtast ISO-koden for din tilstand.",
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,"Der opstod en fejl under parsing af kontoplan: Sørg for, at der ikke er to konti med samme navn",
Plaid invalid request error,Plaid ugyldig anmodning fejl,
Please check your Plaid client ID and secret values,Kontroller dit Plaid-klient-id og hemmelige værdier,
Bank transaction creation error,Fejl ved oprettelse af banktransaktioner,
Unit of Measurement,Måleenhed,
Fiscal Year {0} Does Not Exist,Regnskabsår {0} eksisterer ikke,
Row # {0}: Returned Item {1} does not exist in {2} {3},Række nr. {0}: Returneret vare {1} findes ikke i {2} {3},
Valuation type charges can not be marked as Inclusive,Gebyrer for værdiansættelse kan ikke markeres som inklusiv,
You do not have permissions to {} items in a {}.,Du har ikke tilladelse til {} varer i en {}.,
Insufficient Permissions,Utilstrækkelige tilladelser,
You are not allowed to update as per the conditions set in {} Workflow.,"Du har ikke tilladelse til at opdatere i henhold til de betingelser, der er angivet i {} Workflow.",
Expense Account Missing,Udgiftskonto mangler,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} er ikke en gyldig værdi for attribut {1} for vare {2}.,
Invalid Value,Ugyldig værdi,
The value {0} is already assigned to an existing Item {1}.,Værdien {0} er allerede tildelt en eksisterende vare {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.",For at fortsætte med at redigere denne attributværdi skal du aktivere {0} i Indstillinger for varianter.,
Edit Not Allowed,Rediger ikke tilladt,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Række nr. {0}: Vare {1} er allerede modtaget fuldt ud i indkøbsordren {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},Du kan ikke oprette eller annullere regnskabsposter med i den lukkede regnskabsperiode {0},
POS Invoice should have {} field checked.,POS-faktura skal have {} felt kontrolleret.,
Invalid Item,Ugyldig vare,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Række nr. {}: Du kan ikke tilføje postive mængder i en returfaktura. Fjern varen {} for at fuldføre returneringen.,
The selected change account {} doesn't belongs to Company {}.,Den valgte ændringskonto {} tilhører ikke virksomheden {}.,
Atleast one invoice has to be selected.,Der skal mindst vælges én faktura.,
Payment methods are mandatory. Please add at least one payment method.,Betalingsmetoder er obligatoriske. Tilføj mindst en betalingsmetode.,
Please select a default mode of payment,Vælg en standard betalingsmetode,
You can only select one mode of payment as default,Du kan kun vælge en betalingsmetode som standard,
Missing Account,Manglende konto,
Customers not selected.,Kunder ikke valgt.,
Statement of Accounts,Kontoudtog,
Ageing Report Based On ,Aldringsrapport baseret på,
Please enter distributed cost center,Indtast venligst distribueret omkostningscenter,
Total percentage allocation for distributed cost center should be equal to 100,Den samlede procentsats for fordelt omkostningscenter skal være lig med 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,"Kan ikke aktivere distribueret omkostningscenter for et omkostningscenter, der allerede er tildelt i et andet distribueret omkostningscenter",
Parent Cost Center cannot be added in Distributed Cost Center,Forældreomkostningscenter kan ikke tilføjes i distribueret omkostningscenter,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,Et distribueret omkostningscenter kan ikke tilføjes i tildelingstabellen Distribueret omkostningscenter.,
Cost Center with enabled distributed cost center can not be converted to group,Omkostningscenter med aktiveret distribueret omkostningscenter kan ikke konverteres til gruppe,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,"Omkostningscenter, der allerede er tildelt i et distribueret omkostningscenter, kan ikke konverteres til gruppe",
Trial Period Start date cannot be after Subscription Start Date,Testperiode Startdato kan ikke være efter abonnements startdato,
Subscription End Date must be after {0} as per the subscription plan,Abonnements slutdato skal være efter {0} i henhold til abonnementsplanen,
Subscription End Date is mandatory to follow calendar months,Abonnements slutdato er obligatorisk for at følge kalendermåneder,
Row #{}: POS Invoice {} is not against customer {},Række nr. {}: POS-faktura {} er ikke imod kunde {},
Row #{}: POS Invoice {} is not submitted yet,Række nr. {}: POS-faktura {} er ikke indsendt endnu,
Row #{}: POS Invoice {} has been {},Række nr. {}: POS-faktura {} har været {},
No Supplier found for Inter Company Transactions which represents company {0},"Ingen leverandør fundet for Inter Company Transactions, der repræsenterer firma {0}",
No Customer found for Inter Company Transactions which represents company {0},"Ingen kunde fundet for Inter Company Transactions, der repræsenterer firma {0}",
Invalid Period,Ugyldig periode,
Selected POS Opening Entry should be open.,Den valgte POS-åbning skal være åben.,
Invalid Opening Entry,Ugyldig åbningsindgang,
Please set a Company,Angiv et firma,
"Sorry, this coupon code's validity has not started","Beklager, gyldigheden af denne kuponkode er ikke startet",
"Sorry, this coupon code's validity has expired","Beklager, denne kuponkodes gyldighed er udløbet",
"Sorry, this coupon code is no longer valid","Beklager, denne kuponkode er ikke længere gyldig",
For the 'Apply Rule On Other' condition the field {0} is mandatory,I betingelsen &#39;Anvend regel på andet&#39; er feltet {0} obligatorisk,
{1} Not in Stock,{1} Ikke på lager,
Only {0} in Stock for item {1},Kun {0} på lager for vare {1},
Please enter a coupon code,Indtast en kuponkode,
Please enter a valid coupon code,Indtast venligst en gyldig kuponkode,
Invalid Child Procedure,Ugyldig procedure til børn,
Import Italian Supplier Invoice.,Importér italiensk leverandørfaktura.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.",Værdiansættelsesgrad for varen {0} kræves for at foretage regnskabsposter for {1} {2}.,
 Here are the options to proceed:,Her er mulighederne for at gå videre:,
"If the item is transacting as a Zero Valuation Rate item in this entry, please enable 'Allow Zero Valuation Rate' in the {0} Item table.","Hvis varen handler som en nulværdiansættelsesdel i denne post, skal du aktivere &#39;Tillad nul værdiansættelsesfrekvens&#39; i {0} varetabellen.",
"If not, you can Cancel / Submit this entry ","Hvis ikke, kan du annullere / indsende denne post",
 performing either one below:,udfører en af nedenstående:,
Create an incoming stock transaction for the Item.,Opret en indgående lagertransaktion for varen.,
Mention Valuation Rate in the Item master.,Nævn værdiansættelsesfrekvens i varemasteren.,
Valuation Rate Missing,Værdiansættelsesgrad mangler,
Serial Nos Required,Serienumre kræves,
Quantity Mismatch,Mængdefejl,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.",Genopfyld varer og opdater plukkelisten for at fortsætte. For at afslutte skal du annullere pluklisten.,
Out of Stock,Udsolgt,
{0} units of Item {1} is not available.,{0} enheder af vare {1} er ikke tilgængelige.,
Item for row {0} does not match Material Request,Element for række {0} matcher ikke materialeanmodning,
Warehouse for row {0} does not match Material Request,Lager til række {0} matcher ikke materialeanmodning,
Accounting Entry for Service,Regnskabspost for service,
All items have already been Invoiced/Returned,Alle varer er allerede blevet faktureret / returneret,
All these items have already been Invoiced/Returned,Alle disse varer er allerede blevet faktureret / returneret,
Stock Reconciliations,Aktieafstemninger,
Merge not allowed,Fletning ikke tilladt,
The following deleted attributes exist in Variants but not in the Template. You can either delete the Variants or keep the attribute(s) in template.,"Følgende slettede attributter findes i varianter, men ikke i skabelonen. Du kan enten slette varianterne eller beholde attributterne i skabelonen.",
Variant Items,Variantelementer,
Variant Attribute Error,Variantattributfejl,
The serial no {0} does not belong to item {1},Serienummeret {0} tilhører ikke varen {1},
There is no batch found against the {0}: {1},Der blev ikke fundet nogen batch mod {0}: {1},
Completed Operation,Afsluttet operation,
Work Order Analysis,Analyse af arbejdsordre,
Quality Inspection Analysis,Kvalitetsinspektionsanalyse,
Pending Work Order,Afventende arbejdsordre,
Last Month Downtime Analysis,Sidste måned nedetid analyse,
Work Order Qty Analysis,Antal ordrer på arbejdsordre,
Job Card Analysis,Jobkortanalyse,
Monthly Total Work Orders,Månedlige samlede arbejdsordrer,
Monthly Completed Work Orders,Månedlige gennemførte arbejdsordrer,
Ongoing Job Cards,Løbende jobkort,
Monthly Quality Inspections,Månedlige kvalitetsinspektioner,
(Forecast),(Vejrudsigt),
Total Demand (Past Data),Samlet efterspørgsel (tidligere data),
Total Forecast (Past Data),Samlet prognose (tidligere data),
Total Forecast (Future Data),Total prognose (fremtidige data),
Based On Document,Baseret på dokument,
Based On Data ( in years ),Baseret på data (i år),
Smoothing Constant,Udjævningskonstant,
Please fill the Sales Orders table,Udfyld tabellen Salgsordrer,
Sales Orders Required,Salgsordrer kræves,
Please fill the Material Requests table,Udfyld materialeanmodningstabellen,
Material Requests Required,Materialeanmodninger krævet,
Items to Manufacture are required to pull the Raw Materials associated with it.,"Varer, der skal fremstilles, kræves for at trække de råmaterialer, der er knyttet til det.",
Items Required,Elementer påkrævet,
Operation {0} does not belong to the work order {1},Handling {0} tilhører ikke arbejdsordren {1},
Print UOM after Quantity,Udskriv UOM efter antal,
Set default {0} account for perpetual inventory for non stock items,"Indstil standard {0} -konto for evigvarende beholdning for varer, der ikke er på lager",
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,"Række nr. {0}: Underordnet vare bør ikke være en produktpakke. Fjern element {1}, og gem",
Credit limit reached for customer {0},Kreditgrænse nået for kunde {0},
Could not auto create Customer due to the following missing mandatory field(s):,Kunne ikke automatisk oprette kunde på grund af følgende manglende obligatoriske felter:,
Please create Customer from Lead {0}.,Opret kunde fra kundeemne {0}.,
Mandatory Missing,Obligatorisk mangler,
From Date can not be greater than To Date.,Fra dato kan ikke være større end til dato.,
Row #{0}: Please enter the result value for {1},Række nr. {0}: Indtast resultatværdien for {1},
Mandatory Results,Obligatoriske resultater,
Sales Invoice or Patient Encounter is required to create Lab Tests,Salgsfaktura eller patientmøde er påkrævet for at oprette laboratorietests,
Insufficient Data,Utilstrækkelige data,
Lab Test(s) {0} created successfully,Lab test (er) {0} oprettet med succes,
Test :,Test:,
Sample Collection {0} has been created,Prøvesamling {0} er oprettet,
Normal Range: ,Normal rækkevidde:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Række nr. {0}: Udtjekningsdato kan ikke være mindre end indtjekningsdato,
"Missing required details, did not create Inpatient Record","Manglende påkrævede detaljer, oprettede ikke indlægspost",
Unbilled Invoices,Ubrugte fakturaer,
Standard Selling Rate should be greater than zero.,Standard salgsrate bør være større end nul.,
Conversion Factor is mandatory,Konverteringsfaktor er obligatorisk,
Row #{0}: Conversion Factor is mandatory,Række nr. {0}: Konverteringsfaktor er obligatorisk,
Sample Quantity cannot be negative or 0,Prøvemængde kan ikke være negativ eller 0,
Invalid Quantity,Ugyldigt antal,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Angiv standardværdier for kundegruppe, territorium og salgsprisliste i salgsindstillinger",
{0} on {1},{0} den {1},
{0} with {1},{0} med {1},
Appointment Confirmation Message Not Sent,Aftalebekræftelsesmeddelelse ikke sendt,
"SMS not sent, please check SMS Settings",SMS ikke sendt. Kontroller SMS-indstillinger,
Healthcare Service Unit Type cannot have both {0} and {1},Type af sundhedstjenesteenhed kan ikke have både {0} og {1},
Healthcare Service Unit Type must allow atleast one among {0} and {1},Enhedstype for sundhedstjeneste skal mindst tillade en blandt {0} og {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Indstil svartid og opløsningstid for prioritet {0} i række {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,Svartid for {0} prioritet i række {1} kan ikke være længere end opløsningstid.,
{0} is not enabled in {1},{0} er ikke aktiveret i {1},
Group by Material Request,Gruppér efter materialeanmodning,
Email Sent to Supplier {0},E-mail sendt til leverandør {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.",Adgangen til anmodning om tilbud fra portal er deaktiveret. For at give adgang skal du aktivere den i portalindstillinger.,
Supplier Quotation {0} Created,Leverandørstilbud {0} Oprettet,
Valid till Date cannot be before Transaction Date,Gyldig till-dato kan ikke være før transaktionsdato,
Unlink Advance Payment on Cancellation of Order,Fjern link til forskud ved annullering af ordren,
"Simple Python Expression, Example: territory != 'All Territories'","Enkel Python-udtryk, Eksempel: territorium! = &#39;Alle territorier&#39;",
Sales Contributions and Incentives,Salgsbidrag og incitamenter,
Sourced by Supplier,Oprindelig fra leverandør,
Total weightage assigned should be 100%.<br>It is {0},Den samlede tildelte vægt skal være 100%.<br> Det er {0},
Account {0} exists in parent company {1}.,Konto {0} findes i moderselskabet {1}.,
"To overrule this, enable '{0}' in company {1}",For at tilsidesætte dette skal du aktivere &#39;{0}&#39; i firmaet {1},
Invalid condition expression,Ugyldigt udtryk for tilstand,
Please Select a Company First,Vælg først et firma,
Please Select Both Company and Party Type First,Vælg både firma og festtype først,
Provide the invoice portion in percent,Angiv fakturadelen i procent,
Give number of days according to prior selection,Angiv antal dage i henhold til forudgående valg,
Email Details,E-mail-oplysninger,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Vælg en hilsen til modtageren. F.eks. Hr., Fru osv.",
Preview Email,Eksempel på e-mail,
Please select a Supplier,Vælg en leverandør,
Supplier Lead Time (days),Leveringstid (dage),
"Home, Work, etc.","Hjem, arbejde osv.",
Exit Interview Held On,Afslut interview afholdt,
Sets 'Target Warehouse' in each row of the Items table.,Indstiller &#39;Target Warehouse&#39; i hver række i varetabellen.,
Sets 'Source Warehouse' in each row of the Items table.,Indstiller &#39;Source Warehouse&#39; i hver række i tabellen Items.,
POS Register,POS-register,
"Can not filter based on POS Profile, if grouped by POS Profile","Kan ikke filtrere baseret på POS-profil, hvis grupperet efter POS-profil",
"Can not filter based on Customer, if grouped by Customer","Kan ikke filtrere baseret på kunde, hvis grupperet efter kunde",
"Can not filter based on Cashier, if grouped by Cashier","Kan ikke filtrere baseret på kasser, hvis grupperet efter kasser",
Payment Method,Betalingsmetode,
"Can not filter based on Payment Method, if grouped by Payment Method","Kan ikke filtrere baseret på betalingsmetode, hvis grupperet efter betalingsmetode",
Supplier Quotation Comparison,Sammenligning af tilbud fra leverandører,
Price per Unit (Stock UOM),Pris pr. Enhed (lager UOM),
Group by Supplier,Grupper efter leverandør,
Group by Item,Gruppér efter vare,
Remember to set {field_label}. It is required by {regulation}.,Husk at indstille {field_label}. Det kræves af {regulering}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},Tilmeldingsdato kan ikke være før startdatoen for det akademiske år {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},Tilmeldingsdato kan ikke være efter slutdatoen for den akademiske periode {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},Tilmeldingsdato kan ikke være før startdatoen for den akademiske periode {0},
Future Posting Not Allowed,Fremtidig udstationering ikke tilladt,
"To enable Capital Work in Progress Accounting, ","For at aktivere Capital Work in Progress Accounting,",
you must select Capital Work in Progress Account in accounts table,du skal vælge Capital Work in Progress konto i kontotabellen,
You can also set default CWIP account in Company {},Du kan også indstille CWIP-standardkonto i Company {},
The Request for Quotation can be accessed by clicking on the following button,Anmodningen om tilbud kan fås ved at klikke på følgende knap,
Regards,Hilsen,
Please click on the following button to set your new password,Klik på følgende knap for at indstille din nye adgangskode,
Update Password,Opdater adgangskode,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Række nr. {}: Sælgeraten for varen {} er lavere end dens {}. Salg {} skal mindst være {},
You can alternatively disable selling price validation in {} to bypass this validation.,Du kan alternativt deaktivere validering af salgspris i {} for at omgå denne validering.,
Invalid Selling Price,Ugyldig salgspris,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,Adresse skal knyttes til et firma. Tilføj en række for firma i tabellen Links.,
Company Not Linked,Virksomhed ikke tilknyttet,
Import Chart of Accounts from CSV / Excel files,Importer kontoplan fra CSV / Excel-filer,
Completed Qty cannot be greater than 'Qty to Manufacture',Udført antal kan ikke være større end &#39;Antal til fremstilling&#39;,
"Row {0}: For Supplier {1}, Email Address is Required to send an email",Række {0}: For leverandør {1} kræves e-mail-adresse for at sende en e-mail,
"If enabled, the system will post accounting entries for inventory automatically","Hvis det er aktiveret, bogfører systemet automatisk regnskabsposter for beholdningen",
Accounts Frozen Till Date,Konti frossen till dato,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Regnskabsposter er frosset indtil denne dato. Ingen kan oprette eller ændre poster undtagen brugere med rollen angivet nedenfor,
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Roll tilladt til at indstille frosne konti og redigere frosne poster,
Address used to determine Tax Category in transactions,"Adresse, der bruges til at bestemme skattekategori i transaktioner",
"The percentage you are allowed to bill more against the amount ordered. For example, if the order value is $100 for an item and tolerance is set as 10%, then you are allowed to bill up to $110 ","Den procentdel, du har lov til at fakturere mere mod det bestilte beløb. For eksempel, hvis ordreværdien er $ 100 for en vare, og tolerancen er sat til 10%, har du lov til at fakturere op til $ 110",
This role is allowed to submit transactions that exceed credit limits,"Denne rolle er tilladt at indsende transaktioner, der overstiger kreditgrænser",
"If ""Months"" is selected, a fixed amount will be booked as deferred revenue or expense for each month irrespective of the number of days in a month. It will be prorated if deferred revenue or expense is not booked for an entire month","Hvis der vælges &quot;Måneder&quot;, bogføres et fast beløb som udskudt omsætning eller udgift for hver måned uanset antallet af dage i en måned. Det vil blive forholdsmæssigt beregnet, hvis udskudt omsætning eller udgift ikke er bogført i en hel måned",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Hvis dette ikke er markeret, oprettes direkte GL-poster for at bogføre udskudt omsætning eller udgift",
Show Inclusive Tax in Print,Vis inklusiv skat i tryk,
Only select this if you have set up the Cash Flow Mapper documents,"Vælg kun dette, hvis du har konfigureret Cash Flow Mapper-dokumenterne",
Payment Channel,Betalingskanal,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Er indkøbsordre påkrævet for indkøb af faktura og modtagelse af kvittering?,
Is Purchase Receipt Required for Purchase Invoice Creation?,Er købskvittering påkrævet for oprettelse af købsfaktura?,
Maintain Same Rate Throughout the Purchase Cycle,Oprethold samme hastighed gennem hele indkøbscyklussen,
Allow Item To Be Added Multiple Times in a Transaction,"Tillad, at varen tilføjes flere gange i en transaktion",
Suppliers,Leverandører,
Send Emails to Suppliers,Send e-mails til leverandører,
Select a Supplier,Vælg en leverandør,
Cannot mark attendance for future dates.,Kan ikke markere fremmøde til fremtidige datoer.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},Vil du opdatere fremmøde?<br> Til stede: {0}<br> Fraværende: {1},
Mpesa Settings,Mpesa-indstillinger,
Initiator Name,Initiativtagernavn,
Till Number,Till nummer,
Sandbox,Sandkasse,
 Online PassKey,Online PassKey,
Security Credential,Sikkerhedsoplysninger,
Get Account Balance,Få kontosaldo,
Please set the initiator name and the security credential,Indstil initiatornavnet og sikkerhedsoplysningerne,
Inpatient Medication Entry,Indlæggelse af lægemiddelindlæg,
HLC-IME-.YYYY.-,HLC-IME-.YYYY.-,
Item Code (Drug),Varekode (narkotika),
Medication Orders,Medicinordrer,
Get Pending Medication Orders,Få ventende medicinordrer,
Inpatient Medication Orders,Indlæggelsesmedicinske ordrer,
Medication Warehouse,Medicinlager,
Warehouse from where medication stock should be consumed,"Lager, hvorfra medicinlager skal forbruges",
Fetching Pending Medication Orders,Henter afventende medicinordrer,
Inpatient Medication Entry Detail,Indlæggelsesdetalje for indlæggelse af medicin,
Medication Details,Medicinoplysninger,
Drug Code,Narkotikakode,
Drug Name,Lægemiddelnavn,
Against Inpatient Medication Order,Mod indlæggelsesmedicinsk ordre,
Against Inpatient Medication Order Entry,Mod indlæggelsesmedicinsk ordreindgang,
Inpatient Medication Order,Bestilling til indlæggelse af medicin,
HLC-IMO-.YYYY.-,HLC-IMO-.YYYY.-,
Total Orders,Samlede ordrer,
Completed Orders,Gennemførte ordrer,
Add Medication Orders,Tilføj medicinordrer,
Adding Order Entries,Tilføjelse af ordreindgange,
{0} medication orders completed,{0} medicinordrer afsluttet,
{0} medication order completed,{0} medicinordren er afsluttet,
Inpatient Medication Order Entry,Indlæggelse af ordre til indlæggelse af medicin,
Is Order Completed,Er ordren gennemført,
Employee Records to Be Created By,"Medarbejderoptegnelser, der skal oprettes af",
Employee records are created using the selected field,Medarbejderregistreringer oprettes ved hjælp af det valgte felt,
Don't send employee birthday reminders,Send ikke medarbejderens fødselsdagspåmindelser,
Restrict Backdated Leave Applications,Begræns Backdaterede orlovsapplikationer,
Sequence ID,Sekvens-ID,
Sequence Id,Sekvens Id,
Allow multiple material consumptions against a Work Order,Tillad flere materielle forbrug mod en arbejdsordre,
Plan time logs outside Workstation working hours,Planlæg tidslogfiler uden for arbejdstids arbejdstid,
Plan operations X days in advance,Planlæg operationer X dage i forvejen,
Time Between Operations (Mins),Tid mellem operationer (minutter),
Default: 10 mins,Standard: 10 minutter,
Overproduction for Sales and Work Order,Overproduktion til salg og arbejdsordre,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Opdater styklisteomkostninger automatisk via planlægger, baseret på den seneste værdiansættelsesrate / prislistehastighed / sidste købsrate for råvarer",
Purchase Order already created for all Sales Order items,"Indkøbsordre, der allerede er oprettet for alle salgsordrer",
Select Items,Vælg emner,
Against Default Supplier,Mod standardleverandør,
Auto close Opportunity after the no. of days mentioned above,Automatisk lukning af mulighed efter nr. af de ovennævnte dage,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Er salgsordre påkrævet for oprettelse af salgsfaktura og leveringsnote?,
Is Delivery Note Required for Sales Invoice Creation?,Er leveringsnote påkrævet for oprettelse af salgsfaktura?,
How often should Project and Company be updated based on Sales Transactions?,Hvor ofte skal Project og Company opdateres baseret på salgstransaktioner?,
Allow User to Edit Price List Rate in Transactions,Tillad bruger at redigere prislistehastighed i transaktioner,
Allow Item to Be Added Multiple Times in a Transaction,"Tillad, at varen tilføjes flere gange i en transaktion",
Allow Multiple Sales Orders Against a Customer's Purchase Order,Tillad flere salgsordrer mod en kundes indkøbsordre,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Valider salgsprisen for varen mod købs- eller vurderingssats,
Hide Customer's Tax ID from Sales Transactions,Skjul kundens skatte-id fra salgstransaktioner,
"The 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.","Den procentdel, du har lov til at modtage eller levere mere mod den bestilte mængde. For eksempel, hvis du har bestilt 100 enheder, og din kvote er 10%, har du lov til at modtage 110 enheder.",
Action If Quality Inspection Is Not Submitted,"Handling, hvis der ikke indsendes kvalitetsinspektion",
Auto Insert Price List Rate If Missing,"Indsæt automatisk prisliste, hvis der mangler",
Automatically Set Serial Nos Based on FIFO,Indstil automatisk serienumre baseret på FIFO,
Set Qty in Transactions Based on Serial No Input,Indstil antal i transaktioner baseret på seriel intet input,
Raise Material Request When Stock Reaches Re-order Level,"Hæv materialeanmodning, når lager når ombestillingsniveau",
Notify by Email on Creation of Automatic Material Request,Meddel via e-mail om oprettelse af automatisk materialeanmodning,
Allow Material Transfer from Delivery Note to Sales Invoice,Tillad materialeoverførsel fra leveringsnote til salgsfaktura,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Tillad væsentlig overførsel fra købskvittering til købsfaktura,
Freeze Stocks Older Than (Days),"Frys lager, der er ældre end (dage)",
Role Allowed to Edit Frozen Stock,Roll tilladt til at redigere frossen bestand,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,Det ikke-allokerede beløb af betalingsindgang {0} er større end banktransaktionens ikke-tildelte beløb,
Payment Received,Betaling modtaget,
Attendance cannot be marked outside of Academic Year {0},Deltagelse kan ikke markeres uden for akademisk år {0},
Student is already enrolled via Course Enrollment {0},Studerende er allerede tilmeldt via kursusindmelding {0},
Attendance cannot be marked for future dates.,Deltagelse kan ikke markeres for fremtidige datoer.,
Please add programs to enable admission application.,Tilføj venligst programmer for at muliggøre optagelsesansøgning.,
The following employees are currently still reporting to {0}:,Følgende medarbejdere rapporterer i øjeblikket stadig til {0}:,
Please make sure the employees above report to another Active employee.,"Sørg for, at medarbejderne ovenfor rapporterer til en anden aktiv medarbejder.",
Cannot Relieve Employee,Kan ikke frigøre medarbejder,
Please enter {0},Indtast venligst {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Vælg en anden betalingsmetode. Mpesa understøtter ikke transaktioner i valutaen &#39;{0}&#39;,
Transaction Error,Transaktionsfejl,
Mpesa Express Transaction Error,Mpesa Express-transaktionsfejl,
"Issue detected with Mpesa configuration, check the error logs for more details","Problem registreret med Mpesa-konfiguration, tjek fejllogfilerne for flere detaljer",
Mpesa Express Error,Mpesa Express-fejl,
Account Balance Processing Error,Fejl ved behandling af kontosaldo,
Please check your configuration and try again,"Kontroller din konfiguration, og prøv igen",
Mpesa Account Balance Processing Error,Fejl ved behandling af Mpesa-kontosaldo,
Balance Details,Balanceoplysninger,
Current Balance,Nuværende balance,
Available Balance,Disponibel saldo,
Reserved Balance,Reserveret saldo,
Uncleared Balance,Uklart balance,
Payment related to {0} is not completed,Betaling relateret til {0} er ikke afsluttet,
Row #{}: Item Code: {} is not available under warehouse {}.,Række nr. {}: Varekode: {} er ikke tilgængelig under lager {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Række nr. {}: Mængde på lager ikke til varekode: {} under lager {}. Tilgængelig mængde {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Række nr. {}: Vælg et serienummer og et parti mod varen: {} eller fjern det for at gennemføre transaktionen.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,"Række nr. {}: Intet serienummer er valgt mod elementet: {}. Vælg en, eller fjern den for at gennemføre transaktionen.",
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,"Række nr. {}: Der er ikke valgt nogen batch mod element: {}. Vælg et parti, eller fjern det for at gennemføre transaktionen.",
Payment amount cannot be less than or equal to 0,Betalingsbeløbet kan ikke være mindre end eller lig med 0,
Please enter the phone number first,Indtast først telefonnummeret,
Row #{}: {} {} does not exist.,Række nr. {}: {} {} Findes ikke.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Række nr. {0}: {1} kræves for at oprette de indledende {2} fakturaer,
You had {} errors while creating opening invoices. Check {} for more details,Du havde {} fejl under oprettelsen af åbningsfakturaer. Se {} for at få flere oplysninger,
Error Occured,Fejl opstået,
Opening Invoice Creation In Progress,Åbning af oprettelse af faktura i gang,
Creating {} out of {} {},Opretter {} ud af {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,"(Serienr.: {0}) kan ikke forbruges, da den er forbeholdt fuld udfylde salgsordre {1}.",
Item {0} {1},Vare {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,Sidste lagertransaktion for vare {0} under lager {1} var den {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Lagertransaktioner for vare {0} under lager {1} kan ikke bogføres før dette tidspunkt.,
Posting future stock transactions are not allowed due to Immutable Ledger,Det er ikke tilladt at bogføre fremtidige aktietransaktioner på grund af Immutable Ledger,
A BOM with name {0} already exists for item {1}.,Der findes allerede en stykliste med navnet {0} for varen {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Omdøbte du varen? Kontakt administrator / teknisk support,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},I række nr. {0}: sekvens-id&#39;et {1} kan ikke være mindre end det foregående rækkefølge-id {2},
The {0} ({1}) must be equal to {2} ({3}),{0} ({1}) skal være lig med {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, fuldfør operationen {1} før operationen {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,"Kan ikke sikre levering med serienummer, da vare {0} er tilføjet med og uden at sikre levering ved serienummer.",
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,Vare {0} har ikke serienr. Kun serilialiserede varer kan leveres baseret på serienummer,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Ingen aktiv stykliste fundet for element {0}. Levering med serienr. Kan ikke sikres,
No pending medication orders found for selected criteria,Der blev ikke fundet nogen ventende medicinordrer til udvalgte kriterier,
From Date cannot be after the current date.,Fra dato kan ikke være efter den aktuelle dato.,
To Date cannot be after the current date.,Til dato kan ikke være efter den aktuelle dato.,
From Time cannot be after the current time.,Fra tid kan ikke være efter det aktuelle tidspunkt.,
To Time cannot be after the current time.,To Time kan ikke være efter det aktuelle tidspunkt.,
Stock Entry {0} created and ,Lagerpost {0} oprettet og,
Inpatient Medication Orders updated successfully,Indlægsmedicinske ordrer opdateret,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Række {0}: Kan ikke oprette indlæggelse af indlæggelsesmedicin mod annulleret bestilling af indlæggelsesmedicin {1},
Row {0}: This Medication Order is already marked as completed,Række {0}: Denne medicinordre er allerede markeret som afsluttet,
Quantity not available for {0} in warehouse {1},"Mængde, der ikke er tilgængeligt for {0} på lageret {1}",
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,"Aktivér Tillad negativ beholdning i lagerindstillinger, eller opret lagerindgang for at fortsætte.",
No Inpatient Record found against patient {0},Der blev ikke fundet nogen indlæggelsesjournal over patienten {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Der findes allerede en ordre om indlæggelse af medicin {0} mod patientmøde {1}.,
Allow In Returns,Tillad returnerer,
Hide Unavailable Items,Skjul ikke-tilgængelige poster,
Apply Discount on Discounted Rate,Anvend rabat på nedsat sats,
Therapy Plan Template,Terapiplan skabelon,
Fetching Template Details,Henter skabelondetaljer,
Linked Item Details,Sammenkædede varedetaljer,
Therapy Types,Terapi Typer,
Therapy Plan Template Detail,Terapi plan skabelon detaljer,
Non Conformance,Manglende overensstemmelse,
Process Owner,Proces ejer,
Corrective Action,Korrigerende handling,
Preventive Action,Forebyggende handling,
Problem,Problem,
Responsible,Ansvarlig,
Completion By,Afslutning af,
Process Owner Full Name,Processejerens fulde navn,
Right Index,Højre indeks,
Left Index,Venstre indeks,
Sub Procedure,Underprocedure,
Passed,Bestået,
Print Receipt,Udskriv kvittering,
Edit Receipt,Rediger kvittering,
Focus on search input,Fokuser på søgeinput,
Focus on Item Group filter,Fokuser på varegruppefilter,
Checkout Order / Submit Order / New Order,Kasseordre / Afgiv ordre / Ny ordre,
Add Order Discount,Tilføj ordrerabat,
Item Code: {0} is not available under warehouse {1}.,Varekode: {0} er ikke tilgængelig under lageret {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Serienumre er ikke tilgængelige for vare {0} under lager {1}. Prøv at skifte lager.,
Fetched only {0} available serial numbers.,Hentede kun {0} tilgængelige serienumre.,
Switch Between Payment Modes,Skift mellem betalingsformer,
Enter {0} amount.,Indtast {0} beløb.,
You don't have enough points to redeem.,Du har ikke nok point til at indløse.,
You can redeem upto {0}.,Du kan indløse op til {0}.,
Enter amount to be redeemed.,"Indtast det beløb, der skal indløses.",
You cannot redeem more than {0}.,Du kan ikke indløse mere end {0}.,
Open Form View,Åbn formularvisning,
POS invoice {0} created succesfully,POS-faktura {0} oprettet med succes,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Lagermængde ikke nok til varekode: {0} under lager {1}. Tilgængelig mængde {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Serienr.: {0} er allerede blevet overført til en anden POS-faktura.,
Balance Serial No,Balance Serienr,
Warehouse: {0} does not belong to {1},Lager: {0} tilhører ikke {1},
Please select batches for batched item {0},Vælg batcher til batchvaren {0},
Please select quantity on row {0},Vælg antal på række {0},
Please enter serial numbers for serialized item {0},Indtast serienumre for serienummeret {0},
Batch {0} already selected.,Batch {0} er allerede valgt.,
Please select a warehouse to get available quantities,Vælg et lager for at få tilgængelige mængder,
"For transfer from source, selected quantity cannot be greater than available quantity",For overførsel fra kilde kan den valgte mængde ikke være større end den tilgængelige mængde,
Cannot find Item with this Barcode,Kan ikke finde element med denne stregkode,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} er obligatorisk. Måske oprettes der ikke valutaudveksling for {1} til {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} har indsendt aktiver tilknyttet det. Du skal annullere aktiverne for at oprette køberetur.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,"Dette dokument kan ikke annulleres, da det er knyttet til det indsendte aktiv {0}. Annuller det for at fortsætte.",
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Række nr. {}: Serienr. {} Er allerede overført til en anden POS-faktura. Vælg gyldigt serienummer.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Række nr. {}: Serienumre. {} Er allerede blevet overført til en anden POS-faktura. Vælg gyldigt serienummer.,
Item Unavailable,Varen er ikke tilgængelig,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},"Række nr. {}: Serienr. {} Kan ikke returneres, da den ikke blev behandlet i original faktura {}",
Please set default Cash or Bank account in Mode of Payment {},Indstil standard kontanter eller bankkonto i betalingsmetode {},
Please set default Cash or Bank account in Mode of Payments {},Angiv standard kontanter eller bankkonto i betalingsmetode {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,"Sørg for, at {} kontoen er en balancekonto. Du kan ændre moderkontoen til en balancekonto eller vælge en anden konto.",
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,"Sørg for, at {} kontoen er en konto, der skal betales. Skift kontotype til Betales, eller vælg en anden konto.",
Row {}: Expense Head changed to {} ,Række {}: Omkostningshoved ændret til {},
because account {} is not linked to warehouse {} ,fordi konto {} ikke er knyttet til lager {},
or it is not the default inventory account,eller det er ikke standardlagerkontoen,
Expense Head Changed,Omkostningshoved ændret,
because expense is booked against this account in Purchase Receipt {},fordi udgift bogføres på denne konto i købskvittering {},
as no Purchase Receipt is created against Item {}. ,da der ikke oprettes nogen købskvittering mod varen {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,"Dette gøres for at håndtere bogføring af tilfælde, hvor købsmodtagelse oprettes efter købsfaktura",
Purchase Order Required for item {},Indkøbsordre påkrævet for vare {},
To submit the invoice without purchase order please set {} ,For at indsende fakturaen uden indkøbsordre skal du angive {},
as {} in {},som i {},
Mandatory Purchase Order,Obligatorisk indkøbsordre,
Purchase Receipt Required for item {},Købskvittering påkrævet for vare {},
To submit the invoice without purchase receipt please set {} ,For at indsende fakturaen uden købskvittering skal du angive {},
Mandatory Purchase Receipt,Obligatorisk købskvittering,
POS Profile {} does not belongs to company {},POS-profil {} tilhører ikke firma {},
User {} is disabled. Please select valid user/cashier,Bruger {} er deaktiveret. Vælg gyldig bruger / kasserer,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Række nr. {}: Originalfaktura {} af returfaktura {} er {}.,
Original invoice should be consolidated before or along with the return invoice.,Originalfaktura skal konsolideres før eller sammen med returfakturaen.,
You can add original invoice {} manually to proceed.,Du kan tilføje originalfaktura {} manuelt for at fortsætte.,
Please ensure {} account is a Balance Sheet account. ,"Sørg for, at {} kontoen er en balancekonto.",
You can change the parent account to a Balance Sheet account or select a different account.,Du kan ændre moderkontoen til en balancekonto eller vælge en anden konto.,
Please ensure {} account is a Receivable account. ,"Sørg for, at {} kontoen er en konto, der kan modtages.",
Change the account type to Receivable or select a different account.,"Skift kontotype til Modtagelig, eller vælg en anden konto.",
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},"{} kan ikke annulleres, da de optjente loyalitetspoint er blevet indløst. Annuller først {} Nej {}",
already exists,eksisterer allerede,
POS Closing Entry {} against {} between selected period,POS-afslutningspost {} mod {} mellem den valgte periode,
POS Invoice is {},POS-faktura er {},
POS Profile doesn't matches {},POS-profil matcher ikke {},
POS Invoice is not {},POS-faktura er ikke {},
POS Invoice isn't created by user {},POS-faktura oprettes ikke af brugeren {},
Row #{}: {},Række nr. {}: {},
Invalid POS Invoices,Ugyldige POS-fakturaer,
Please add the account to root level Company - {},Føj kontoen til rodniveau Virksomhed - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA",Under oprettelsen af en konto til Child Company {0} blev forældrekontoen {1} ikke fundet. Opret forældrekontoen i den tilsvarende COA,
Account Not Found,Konto ikke fundet,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.",Under oprettelsen af en konto til Child Company {0} blev forældrekontoen {1} fundet som en hovedkontokonto.,
Please convert the parent account in corresponding child company to a group account.,Konverter moderkontoen i det tilsvarende underordnede selskab til en gruppekonto.,
Invalid Parent Account,Ugyldig moderkonto,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.",Omdøbning er kun tilladt via moderselskabet {0} for at undgå uoverensstemmelse.,
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Hvis du {0} {1} mængder af varen {2}, anvendes ordningen {3} på varen.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Hvis du {0} {1} har værdi {2}, anvendes ordningen {3} på varen.",
"As the field {0} is enabled, the field {1} is mandatory.","Da feltet {0} er aktiveret, er feltet {1} obligatorisk.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Da feltet {0} er aktiveret, skal værdien af feltet {1} være mere end 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},"Kan ikke levere serienummer {0} af varen {1}, da den er forbeholdt fuldt udfyldt salgsordre {2}",
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","Salgsordre {0} har reservation for varen {1}, du kan kun levere reserveret {1} mod {0}.",
{0} Serial No {1} cannot be delivered,{0} Serienummer {1} kan ikke leveres,
Row {0}: Subcontracted Item is mandatory for the raw material {1},Række {0}: Vare i underentreprise er obligatorisk for råmaterialet {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Da der er tilstrækkelige råmaterialer, kræves der ikke materialeanmodning til lager {0}.",
" If you still want to proceed, please enable {0}.","Hvis du stadig vil fortsætte, skal du aktivere {0}.",
The item referenced by {0} - {1} is already invoiced,"Den vare, der henvises til af {0} - {1}, faktureres allerede",
Therapy Session overlaps with {0},Terapisession overlapper med {0},
Therapy Sessions Overlapping,Terapisessioner overlapper hinanden,
Therapy Plans,Terapiplaner,
"Item Code, warehouse, quantity are required on row {0}","Varekode, lager, antal kræves i række {0}",
Get Items from Material Requests against this Supplier,Få varer fra materialeanmodninger mod denne leverandør,
Enable European Access,Aktiver europæisk adgang,
Creating Purchase Order ...,Opretter indkøbsordre ...,
"Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Vælg en leverandør fra standardleverandørerne af nedenstående varer. Ved valg foretages en indkøbsordre kun mod varer, der tilhører den valgte leverandør.",
Row #{}: You must select {} serial numbers for item {}.,Række nr. {}: Du skal vælge {} serienumre for varen {}.,
