"""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,
) for {0},) for {0},
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,
A {0} exists between {1} and {2} (,En {0} eksisterer mellem {1} og {2} (,
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,
Absent,Ikke-tilstede,
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.,
Accrual Journal Entry for salaries from {0} to {1},Periodiseringsjournalen postering for løn fra {0} til {1},
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 to Details,Tilføj til detaljer,
Add/Remove Recipients,Tilføj / fjern modtagere,
Added,Tilføjet,
Added to details,Tilføjet til detaljer,
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 Jobs,Alle ansøgere,
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,
Allocated Leaves,Tildelte blade,
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},
Annual Salary,Årsløn,
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",
Applicant,Ansøger,
Applicant Type,Ansøgertype,
Application of Funds (Assets),Anvendelse af midler (aktiver),
Application period cannot be across two allocation records,Ansøgningsperioden kan ikke være på tværs af to tildelingsregistre,
Application period cannot be outside leave allocation period,Ansøgningsperiode kan ikke være uden for orlov tildelingsperiode,
Applied,Ansøgt,
Apply Now,Ansøg nu,
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,
Apprentice,Lærling,
Approval Status,Godkendelsesstatus,
Approval Status must be 'Approved' or 'Rejected',Godkendelsesstatus skal &quot;Godkendt&quot; eller &quot;Afvist&quot;,
Approve,Godkende,
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),
As per your assigned Salary Structure you cannot apply for benefits,I henhold til din tildelte lønstruktur kan du ikke søge om ydelser,
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,Tildel,
Assign Salary Structure,Tildel lønstrukturen,
Assign To,Tildel til,
Assign to Employees,Tildel til medarbejdere,
Assigning Structures...,Tildele strukturer ...,
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,Fremmøde,
Attendance From Date and Attendance To Date is mandatory,Fremmøde fradato og Fremmøde tildato er obligatoriske,
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 for employee {0} is already marked for this day,Deltagelse for medarbejder {0} er allerede markeret for denne dag,
Attendance has been marked successfully.,Deltagelse er mærket korrekt.,
Attendance not submitted for {0} as it is a Holiday.,Tilstedeværelse er ikke indsendt til {0} som det er en ferie.,
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 Entries,Bank Entries,
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,Grundlag,
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,
Beginner,Begynder,
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,
Birthday Reminder,Fødselsdag påmindelse,
Black,Sort,
Blanket Orders from Costumers.,Tæppe ordrer fra kunder.,
Block Invoice,Blokfaktura,
Boms,styklister,
Bonus Payment Date cannot be a past date,Bonus Betalingsdato kan ikke være en tidligere dato,
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,
Calls,opkald,
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 find Item with this barcode,Kan ikke finde varen med denne stregkode,
Cannot find active Leave Period,Kan ikke finde aktiv afgangsperiode,
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,
Casual Leave,Casual Leave,
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,
Claimed Amount,Påstået beløb,
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 Off,Kompenserende Off,
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 Number,Kontaktnummer,
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,Kursus,
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 Disbursement Entry,Opret indbetaling til udbetaling,
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 Salary Slip,Opret lønseddel,
Create Salary Slips,Opret lønningslister,
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 By,Oprettet af,
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 Payment Entries......,Oprettelse af betalingsindlæg ......,
Creating Salary Slips...,Oprettelse af lønlister ...,
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,Nuværende,
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 Job Openings,Aktuelle ledige stillinger,
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,
Daily Work Summary,Daglige arbejde Summary,
Daily Work Summary Group,Daglig Arbejdsopsamlingsgruppe,
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 is repeated,Datoen er gentaget,
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 A/C Number,Debit AC-nummer,
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,
Deduction,Fradrag,
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 Status,Dokument status,
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,
Earning,Tillæg,
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 A/C Number,Medarbejders AC-nummer,
Employee Advances,Medarbejderudviklingen,
Employee Benefits,Personalegoder,
Employee Grade,Medarbejderklasse,
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 Referral,Medarbejder Henvisning,
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 relieved on {0} must be set as 'Left',Medarbejder lettet på {0} skal indstilles som &quot;Left&quot;,
Employee {0} already submited an apllication {1} for the payroll period {2},Medarbejder {0} har allerede indgivet en ansøgning {1} for lønningsperioden {2},
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} has no maximum benefit amount,Medarbejder {0} har ingen maksimal ydelsesbeløb,
Employee {0} is not active or does not exist,Medarbejder {0} er ikke aktiv eller findes ikke,
Employee {0} is on Leave on {1},Medarbejder {0} er på ferie på {1},
Employee {0} of grade {1} have no default leave policy,Medarbejder {0} i lønklasse {1} har ingen standardlovspolitik,
Employee {0} on Half day on {1},Medarbejder {0} på halv tid den {1},
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å,
End time cannot be before start time,Sluttid kan ikke være før starttid,
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,
Evaluation,Evaluering,
"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,
Event Location,Event Location,
Event Name,begivenhed Navn,
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 Claim for Vehicle Log {0},Udlæg for kørebog {0},
Expense Claim {0} already exists for the Vehicle Log,Udlæg {0} findes allerede for kørebogen,
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,
Fill the form and save it,Udfyld skærmbilledet og gem det,
Filter Employees By (Optional),Filtrer medarbejdere efter (valgfrit),
"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,
Fiscal Year {0} not found,Regnskabsår {0} blev ikke fundet,
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,Mad,
"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 Employee,Til medarbejder,
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,
Form View,Formularvisning,
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 Date {0} cannot be after employee's relieving Date {1},Fra dato {0} kan ikke være efter medarbejderens lindrende dato {1},
From Date {0} cannot be before employee's joining Date {1},Fra dato {0} kan ikke være før medarbejderens tilmeldingsdato {1},
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 date can not be less than employee's joining date,Fra datoen kan ikke være mindre end medarbejderens tilmeldingsdato,
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},
Fuel Price,Brændstofpris,
Fuel Qty,Brændstofmængde,
Fulfillment,Opfyldelse,
Full,Fuld,
Full Name,Navn,
Full-time,Fuld tid,
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,
Future dates not allowed,Fremtidige datoer ikke tilladt,
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 Details From Declaration,Få detaljer fra erklæringen,
Get Employees,Få medarbejdere,
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 Pay,Bruttoløn,
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,
Guest,Gæst,
HR Manager,HR-chef,
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Day,Halv dag,
Half Day Date is mandatory,Halv dags dato er obligatorisk,
Half Day Date should be between From Date and To Date,Halv Dag Dato skal være mellem Fra dato og Til dato,
Half Day Date should be in between Work From Date and Work End Date,Halvdagsdato skal være mellem arbejde fra dato og arbejdsdato,
Half Yearly,Halvårlig,
Half day date should be in between from date and to date,Halvdagsdagen skal være mellem dato og dato,
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,
Hello,Hej,
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,
House rent paid days overlapping with {0},"Husleje betalte dage, der overlapper med {0}",
House rented dates required for exemption calculation,Hus lejede datoer kræves for fritagelse beregning,
House rented dates should be atleast 15 days apart,Husleje datoer skal være mindst 15 dage fra hinanden,
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,
Interest Amount,Renter Beløb,
Interests,Interesser,
Intern,Intern,
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 Description,Stillingsbeskrivelse,
Job Offer,Jobtilbud,
Job card {0} created,Jobkort {0} oprettet,
Jobs,Stillinger,
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 Approval Notification,Forlad godkendelsesmeddelelse,
Leave Blocked,Fravær blokeret,
Leave Encashment,Udbetal fravær,
Leave Management,Fraværsadministration,
Leave Status Notification,Forlad statusmeddelelse,
Leave Type,Fraværstype,
Leave Type is madatory,Forlad Type er madatory,
Leave Type {0} cannot be allocated since it is leave without pay,"Fraværstype {0} kan ikke fordeles, da den er af typen uden løn",
Leave Type {0} cannot be carry-forwarded,Fraværstype {0} kan ikke bæres videre,
Leave Type {0} is not encashable,Forladetype {0} er ikke inkashable,
Leave Without Pay,Fravær uden løn,
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},
"Leave cannot be allocated before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Fravær kan ikke fordeles inden {0}, da fraværssaldoen allerede har været carry-fremsendt i fremtiden orlov tildeling rekord {1}",
"Leave cannot be applied/cancelled before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Fravær kan ikke anvendes/annulleres før {0}, da fraværssaldoen allerede har været carry-fremsendt i fremtiden orlov tildeling rekord {1}",
Leave of type {0} cannot be longer than {1},Fravær af typen {0} må ikke vare længere end {1},
Leaves,Blade,
Leaves Allocated Successfully for {0},Fravær blev succesfuldt tildelt til {0},
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",
Leaves per Year,Fravær pr. år,
Ledger,Ledger,
Legal,Juridisk,
Legal Expenses,Advokatudgifter,
Letter Head,Brevhoved,
Letter Heads for print templates.,Brevhoveder til udskriftsskabeloner.,
Level,Niveau,
Liability,Passiver,
License,Licens,
Lifecycle,Livscyklus,
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 Amount cannot exceed Maximum Loan Amount of {0},Lånebeløb kan ikke overstige det maksimale lånebeløb på {0},
Loan Application,Låneansøgning,
Loan Management,Lånestyring,
Loan Repayment,Tilbagebetaling af 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 Attendance,Mark Attendance,
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 Exemption Amount cannot be greater than maximum exemption amount {0} of Tax Exemption Category {1},Maksimalt fritagelsesbeløb kan ikke være større end det maksimale fritagelsesbeløb {0} af skattefritagelseskategorien {1},
Max benefits should be greater than zero to dispense benefits,Maksimale fordele skal være større end nul for at uddele fordele,
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 amount eligible for the component {0} exceeds {1},"Maksimumsbeløb, der er berettiget til komponenten {0}, overstiger {1}",
Maximum benefit amount of component {0} exceeds {1},Maksimumbeløbet for komponent {0} overstiger {1},
Maximum benefit amount of employee {0} exceeds {1},Maksimal ydelsesbeløb for medarbejderen {0} overstiger {1},
Maximum discount for Item {0} is {1}%,Maksimal rabat for vare {0} er {1}%,
Maximum leave allowed in the leave type {0} is {1},Maksimal tilladelse tilladt i orlovstypen {0} er {1},
Medical,Medicinsk,
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,
Mode of payment is required to make a payment,Betalingsmåde er forpligtet til at foretage en betaling,
Model,Model,
Moderate Sensitivity,Moderat følsomhed,
Monday,Mandag,
Monthly,Månedlig,
Monthly Distribution,Månedlig distribution,
Monthly Repayment Amount cannot be greater than Loan Amount,Månedlig tilbagebetaling beløb kan ikke være større end Lånebeløb,
More,Mere,
More Information,Mere information,
More than one selection for {0} not allowed,Mere end et valg for {0} er ikke tilladt,
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 Pay,Nettoløn,
Net Pay cannot be less than 0,Nettoløn kan ikke være mindre end 0,
Net Profit,Nettovinst,
Net Salary Amount,Nettolønbeløb,
Net Total,Netto i alt,
Net pay cannot be negative,Nettoløn kan ikke være negativ,
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 Employee Found,Ingen medarbejder fundet,
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 Salary Structure assigned for Employee {0} on given date {1},Ingen lønstrukturer tildelt medarbejder {0} på en given dato {1},
No Staffing Plans found for this Designation,Ingen bemandingsplaner fundet for denne betegnelse,
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 active or default Salary Structure found for employee {0} for the given dates,Ingen aktiv eller standard-lønstruktur fundet for medarbejder {0} for de givne datoer,
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 more updates,Ikke flere opdateringer,
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 replies from,Ingen svar fra,
No salary slip found to submit for the above selected criteria OR salary slip already submitted,Ingen lønseddel fundet for at indsende for ovennævnte udvalgte kriterier ELLER lønsliste allerede indsendt,
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.,
Nothing to change,Intet at ændre,
Notice Period,Opsigelsesperiode,
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 Leave Applications with status 'Approved' and 'Rejected' can be submitted,Kun Lad Applikationer med status &quot;Godkendt&quot; og &quot;Afvist&quot; kan indsendes,
"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 Holiday List not set for leave period {0},"Valgfri ferieliste, der ikke er indstillet for orlovsperioden {0}",
"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,
Part-time,Deltid,
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,
Password policy for Salary Slips is not set,Adgangskodepolitik for lønsedler er ikke indstillet,
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,
Payable Amount,Betalbart beløb,
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 Date,Betalingsdato,
Payment Days,Betalingsdage,
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 of {0} from {1} to {2},Betaling af {0} fra {1} til {2},
Payment request {0} created,Betalingsanmodning {0} oprettet,
Payments,Betalinger,
Payroll,Løn,
Payroll Number,Lønnsnummer,
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,
Piecework,Akkordarbejde,
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 add the remaining benefits {0} to any of the existing component,Tilføj venligst de resterende fordele {0} til en eksisterende komponent,
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 confirm once you have completed your training,"Bekræft venligst, når du har afsluttet din træning",
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 default incoming account before creating Daily Work Summary Group,"Aktivér standard indgående konto, før du opretter Daglig Arbejdsopsamlingsgruppe",
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 Repayment Periods,Indtast venligst Tilbagebetalingstid,
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 repayment Amount,Indtast tilbagebetaling Beløb,
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 Designation,Vælg venligst Firma og Betegnelse,
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 Employee,Vælg venligst Medarbejder,
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 csv file,Vælg en CSV-fil,
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 template for Leave Approval Notification in HR Settings.,Angiv standardskabelon for tilladelse til godkendelse af tilladelser i HR-indstillinger.,
Please set default template for Leave Status Notification in HR Settings.,Angiv standardskabelon for meddelelsen om statusstatus i HR-indstillinger.,
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 Company,Angiv venligst selskabet,
Please set the Customer Address,Angiv kundeadresse,
Please set the Date Of Joining for employee {0},Angiv ansættelsesdatoen for medarbejder {0},
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 share your feedback to the training by clicking on 'Training Feedback' and then 'New',Del venligst din feedback til træningen ved at klikke på &#39;Træningsfejl&#39; og derefter &#39;Ny&#39;,
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 update your status for this training event,Opdater venligst din status for denne træningsbegivenhed,
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,
Present,Tilstede,
Prev,forrige,
Preview,Eksempel,
Preview Salary Slip,Lønseddel kladde,
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,
Principal Amount,hovedstol,
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,
Privilege Leave,Privilege Forlad,
Probation,Kriminalforsorgen,
Probationary Period,Prøvetid,
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,
Property,Ejendom,
Property already added,Ejendom tilføjet allerede,
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,
Reject,Afvise,
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,
Replies,Svar,
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.,
Responsibilities,ansvar,
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,
Role,Rolle,
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}# Allocated amount {1} cannot be greater than unclaimed amount {2},Række {0} # Tildelt mængde {1} kan ikke være større end uanmeldt mængde {2},
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}# Paid Amount cannot be greater than requested advance amount,Række {0} # Betalt beløb kan ikke være større end det ønskede forskudsbeløb,
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 ID,Lønseddel id,
Salary Slip of employee {0} already created for this period,Lønseddel for medarbejder {0} er allerede oprettet for denne periode,
Salary Slip of employee {0} already created for time sheet {1},Medarbejder {0} lønseddel er allerede overført til tidsregistreringskladde {1},
Salary Slip submitted for period from {0} to {1},Lønslip indgivet for perioden fra {0} til {1},
Salary Structure Assignment for Employee already exists,Tildeling af lønstruktur til medarbejder findes allerede,
Salary Structure Missing,Lønstruktur mangler,
Salary Structure must be submitted before submission of Tax Ememption Declaration,Lønstruktur skal indsendes inden indsendelse af skattefrihedserklæring,
Salary Structure not found for employee {0} and date {1},Lønstruktur ikke fundet for medarbejder {0} og dato {1},
Salary Structure should have flexible benefit component(s) to dispense benefit amount,Lønstruktur skal have fleksible fordelskomponenter til at uddele ydelsesbeløb,
"Salary already processed for period between {0} and {1}, Leave application period cannot be between this date range.","Løn allerede behandlet for perioden {0} til {1}, ferie ansøgningsperiode kan ikke være i dette datointerval.",
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,
Sanctioned Amount,Sanktioneret beløb,
Sanctioned Amount cannot be greater than Claim Amount in Row {0}.,Bevilliget beløb kan ikke være større end udlægsbeløbet i række {0}.,
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,
Score must be less than or equal to 5,Score skal være mindre end eller lig med 5,
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 Property,Vælg Ejendom,
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 an employee to get the employee advance.,Vælg en medarbejder for at få medarbejderen forskud.,
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 #,Serienummer,
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 Expense,tjenesten Expense,
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 Employee,Vis medarbejder,
Show Open,Vis åben,
Show Opening Entries,Vis åbningsindgange,
Show Payment Details,Vis betalingsoplysninger,
Show Return Entries,Vis Returindlæg,
Show Salary Slip,Vis lønseddel,
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,
Sick Leave,Sygefravær,
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}",
"Skipping Salary Structure Assignment for the following employees, as Salary Structure Assignment records already exists against them. {0}","Spring over lønnsstrukturtildeling for følgende ansatte, da lønstrukturtildelingsoptegnelser allerede findes imod dem. {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,
Staffing Plan {0} already exist for designation {1},Bemanningsplan {0} findes allerede til betegnelse {1},
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 and end dates not in a valid Payroll Period, cannot calculate {0}","Start- og slutdatoer, der ikke findes i en gyldig lønningsperiode, kan ikke beregne {0}",
"Start and end dates not in a valid Payroll Period, cannot calculate {0}.","Start og slut dato ikke i en gyldig lønseddel, kan ikke beregne {0}.",
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 Options,Aktieoptioner,
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,
Structures have been assigned successfully,Strukturer er tildelt med succes,
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 Proof,Indsend bevis,
Submit Salary Slip,Godkend lønseddel,
Submit this Work Order for further processing.,Send denne arbejdsordre til videre behandling.,
Submit this to create the Employee record,Indsend dette for at oprette medarbejderposten,
Submitting Salary Slips...,Indsendelse af lønlister ...,
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,
Team Updates,Team opdateringer,
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,Tak,
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 day(s) on which you are applying for leave are holidays. You need not apply for leave.,"Den dag (e), som du ansøger om orlov er helligdage. Du har brug for ikke søge om orlov.",
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 are more holidays than working days this month.,Der er flere helligdage end arbejdsdage i denne måned.,
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 no leave period in between {0} and {1},Der er ingen ledig periode mellem {0} og {1},
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 Employee,Dette er baseret på deltagelse af denne Medarbejder,
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 will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,Dette vil indgive Lønningslister og skabe periodiseringsjournalindtastning. Vil du fortsætte?,
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 date can not be equal or less than from date,Til dato kan ikke være lige eller mindre end fra dato,
To date can not be less than from date,Til dato kan ikke være mindre end fra dato,
To date can not greater than employee's relieving date,Til dato kan ikke større end medarbejderens lindrende dato,
"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 Absent,Ialt ikke-tilstede,
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 Deduction,Fradrag i alt,
Total Invoiced Amount,Totalt faktureret beløb,
Total Leaves,Fravær i alt,
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 Present,Samlet tilstede,
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 advance amount cannot be greater than total sanctioned amount,Samlet forskudsbeløb kan ikke være større end det samlede sanktionerede 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 flexible benefit component amount {0} should not be less than max benefits {1},Det samlede beløb for fleksibel fordel {0} bør ikke være mindre end maksimale fordele {1},
Total hours: {0},Total time: {0},
Total leaves allocated is mandatory for Leave Type {0},Samlet antal tildelte blade er obligatoriske for Forladetype {0},
Total working hours should not be greater than max working hours {0},Arbejdstid i alt bør ikke være større end maksimal arbejdstid {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.,
Training,Uddannelse,
Training Event,Træning begivenhed,
Training Events,Træningsarrangementer,
Training Feedback,Træning Feedback,
Training Result,Træning Resultat,
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,Rejser,
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 Response,Opdater svar,
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 missing,Værdi mangler,
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",
Variable,Variabel,
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,
Walk In,Walk In,
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: Leave application contains following block dates,Advarsel: Fraværsansøgningen indeholder følgende blokerede dage,
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 Listing,Website liste,
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.,
"While creating account for child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Mens du opretter konto for børneselskab {0}, blev moderkonto {1} ikke fundet. Opret venligst den overordnede konto i den tilsvarende COA",
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 Summary for {0},Arbejdsoversigt for {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 approve leaves on Block Dates,Du er ikke autoriseret til at godkende fravær på blokerede dage,
You are not authorized to set Frozen value,Du er ikke autoriseret til at fastsætte låst værdi,
You are not present all day(s) between compensatory leave request days,Du er ikke til stede hele dagen / dage mellem anmodninger om kompensationsorlov,
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 only submit Leave Encashment for a valid encashment amount,Du kan kun indsende Leave Encashment for en gyldig indsatsbeløb,
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 enought 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} already allocated for Employee {1} for period {2} to {3},{0} allerede afsat til Medarbejder {1} for perioden {2} til {3},
{0} applicable after {1} working days,{0} gælder efter {1} arbejdsdage,
{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 not in Optional Holiday List,{0} er ikke i valgfri ferieliste,
{0} is not in a valid Payroll Period,{0} er ikke i en gyldig lønseddel,
{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} must be submitted,{0} skal indsendes,
{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}: Employee email not found, hence email not sent","{0}: Medarbejderens e-mail er ikke fundet, og derfor er e-mailen ikke sendt",
{0}: From {0} of type {1},{0}: Fra {0} af typen {1},
{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,
Conditions,Betingelser,
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,
Passive,Inaktiv,
Payment Failed,Betaling mislykkedes,
Percent,procent,
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,
Sign Up,Tilmelde,
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",
Error in some rows,Fejl i nogle rækker,
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,
Benefit,Fordel,
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.,
Shift,Flytte,
Show {0},Vis {0},
"Special Characters except ""-"", ""#"", ""."", ""/"", ""{"" and ""}"" not allowed in naming series","Specialtegn undtagen &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{&quot; Og &quot;}&quot; er ikke tilladt i navngivningsserier",
Target Details,Måldetaljer,
API,API,
Annual,Årligt,
Approved,godkendt,
Change,Ændring,
Contact Email,Kontakt e-mail,
Export Type,Eksporttype,
From Date,Fra dato,
Group By,Gruppér efter,
Importing {0} of {1},Importerer {0} af {1},
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,
'employee_field_value' and 'timestamp' are required.,&#39;medarbejder_felt_værdi&#39; og &#39;tidsstempel&#39; er påkrævet.,
<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 belong to company {1},Konto {0} tilhører ikke virksomheden {1},
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 Loan Security,Tilføj lånesikkerhed,
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.,
Against Loan,Mod lån,
Against Loan:,Mod lån:,
All,Alle,
All bank transactions have been created,Alle banktransaktioner er oprettet,
All the depreciations has been booked,Alle afskrivninger er booket,
Allocation Expired!,Tildeling udløbet!,
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,
Amount paid cannot be zero,Det betalte beløb kan ikke være nul,
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.,
Attendance Marked,Deltagelse markeret,
Attendance has been marked as per employee check-ins,Deltagelse er markeret som pr. Medarbejderindtjekning,
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 create loan until application is approved,"Kan ikke oprette lån, før ansøgningen er godkendt",
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 Range,Datointerval,
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,
Event Link,Begivenhedslink,
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,
Expire Allocation,Udløb tildeling,
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",
Fuel Expense,Brændstofudgift,
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,
Intermediate,mellemniveau,
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,
Leave application is linked with leave allocations {0}. Leave application cannot be set as leave without pay,Ansøgning om orlov er knyttet til orlovsfordelinger {0}. Ansøgning om orlov kan ikke indstilles som orlov uden løn,
Leaves Taken,Blade taget,
Less Than Amount,Mindre end beløb,
Liabilities,passiver,
Loading...,Indlæser ...,
Loan Amount exceeds maximum loan amount of {0} as per proposed securities,Lånebeløb overstiger det maksimale lånebeløb på {0} pr. Foreslået værdipapirer,
Loan Applications from customers and employees.,Låneansøgninger fra kunder og ansatte.,
Loan Disbursement,Udbetaling af lån,
Loan Processes,Låneprocesser,
Loan Security,Lånesikkerhed,
Loan Security Pledge,Lånesikkerheds pantsætning,
Loan Security Pledge Created : {0},Lånesikkerhedslove oprettet: {0},
Loan Security Price,Lånesikkerhedspris,
Loan Security Price overlapping with {0},"Lånesikkerhedspris, der overlapper med {0}",
Loan Security Unpledge,Unpedge-lånesikkerhed,
Loan Security Value,Lånesikkerhedsværdi,
Loan Type for interest and penalty rates,Lånetype til renter og sanktioner,
Loan amount cannot be greater than {0},Lånebeløbet kan ikke være større end {0},
Loan is mandatory,Lån er obligatorisk,
Loans,lån,
Loans provided to customers and employees.,Lån ydet til kunder og ansatte.,
Location,Lokation,
Log Type is required for check-ins falling in the shift: {0}.,"Logtype er påkrævet for check-ins, der falder i skiftet: {0}.",
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 Employee found for the given employee field value. '{}': {},Der blev ikke fundet nogen medarbejder for den givne medarbejders feltværdi. &#39;{}&#39;: {},
No Leaves Allocated to Employee: {0} for Leave Type: {1},Ingen blade tildelt medarbejder: {0} til orlovstype: {1},
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,
Only expired allocation can be cancelled,Kun udløbet tildeling kan annulleres,
Only users with the {0} role can create backdated leave applications,Kun brugere med {0} -rollen kan oprette bagdaterede orlovsprogrammer,
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,
Password policy cannot contain spaces or simultaneous hyphens. The format will be restructured automatically,Adgangskodepolitik kan ikke indeholde mellemrum eller samtidige bindestreger. Formatet omstruktureres automatisk,
Patient History,Patienthistorie,
Pause,Pause,
Pay,Betale,
Payment Document Type,Betalingsdokumenttype,
Payment Name,Betalingsnavn,
Penalty Amount,Straffebeløb,
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 enter the designation,Angiv betegnelsen,
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 Applicant Type first,Vælg først ansøgertype,
Please select Customer first,Vælg først kunde,
Please select Item Code first,Vælg først varekode,
Please select Loan Type for company {0},Vælg lånetype for firmaet {0},
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
Pledge Status,Pantstatus,
Pledge Time,Pantetid,
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,
Proposed Pledges are mandatory for secured Loans,Foreslåede løfter er obligatoriske for sikrede lån,
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,
Qty or Amount is mandatroy for loan security,Antal eller beløb er mandatroy for lån sikkerhed,
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,
Repayment Method is mandatory for term loans,Tilbagebetalingsmetode er obligatorisk for kortfristede lån,
Repayment Start Date is mandatory for term loans,Startdato for tilbagebetaling er obligatorisk for kortfristede lån,
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},
Sanctioned Amount limit crossed for {0} {1},"Sanktioneret beløb, der er overskredet for {0} {1}",
Sanctioned Loan Amount already exists for {0} against company {1},Sanktioneret lånebeløb findes allerede for {0} mod selskab {1},
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}).,
There are no vacancies under staffing plan {0},Der er ingen ledige stillinger under personaleplanen {0},
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 employee already has a log with the same timestamp.{0},Denne medarbejder har allerede en log med det samme tidsstempel. {0},
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,
Timing,Timing,
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.,
To date needs to be before from date,Til dato skal være før fra dato,
Total,Total,
Total Early Exits,Samlet tidlige udgange,
Total Late Entries,Sidste antal poster i alt,
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,
Training Event:,Træningsbegivenhed:,
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 Salary Component {0},Kan ikke finde lønningskomponent {0},
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,
Unmarked Attendance for days,Umærket deltagelse i dage,
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,
Vacancies cannot be lower than the current openings,Ledige stillinger kan ikke være lavere end de nuværende åbninger,
Valid From Time must be lesser than Valid Upto Time.,Gyldig fra tid skal være mindre end gyldig indtil tid.,
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 an invalid Attendance Status.,{} er en ugyldig deltagelsesstatus.,
{} 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,
Loan Amount is mandatory,Lånebeløb er obligatorisk,
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,
Printed On,Udskrevet på,
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,
Get items from,Hent varer fra,
Group by,Sortér efter,
In stock,På lager,
Item name,Varenavn,
Loan amount is mandatory,Lånebeløb er obligatorisk,
Minimum Qty,Minimum antal,
More details,Flere detaljer,
Nature of Supplies,Forsyningens art,
No Items found.,Ingen emner fundet.,
No employee found,Ingen medarbejder 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,
Please setup Employee Naming System in Human Resource > HR Settings,Indstil venligst medarbejdernavningssystem i menneskelig ressource&gt; HR-indstillinger,
Please setup numbering series for Attendance via Setup > Numbering Series,Indstil nummereringsserier til deltagelse via Opsætning&gt; Nummereringsserie,
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}.,
Current Odometer Value should be greater than Last Odometer Value {0},Den aktuelle kilometertællerværdi skal være større end den sidste kilometertællerværdi {0},
No additional expenses has been added,Ingen yderligere udgifter er tilføjet,
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,
{0} already exists for employee {1} and period {2},{0} eksisterer allerede for medarbejder {1} og periode {2},
Leaves Allocated,Bladene allokeret,
Leaves Expired,Bladene er udløbet,
Leave Without Pay does not match with approved {} records,Forlad uden betaling svarer ikke til godkendte {} poster,
Income Tax Slab not set in Salary Structure Assignment: {0},Indkomstskatplade ikke angivet i lønstrukturoverdragelse: {0},
Income Tax Slab: {0} is disabled,Indkomstskatplade: {0} er deaktiveret,
Income Tax Slab must be effective on or before Payroll Period Start Date: {0},Indkomstskatpladen skal have virkning på eller før startdatoen for lønningsperioden: {0},
No leave record found for employee {0} on {1},Ingen orlovsregistrering fundet for medarbejder {0} den {1},
Row {0}: {1} is required in the expenses table to book an expense claim.,Række {0}: {1} kræves i tabellen med udgifter for at booke et udgiftskrav.,
Set the default account for the {0} {1},Indstil standardkontoen til {0} {1},
(Half Day),(Halv dag),
Income Tax Slab,Indkomstskatplade,
Row #{0}: Cannot set amount or formula for Salary Component {1} with Variable Based On Taxable Salary,Række nr. {0}: Kan ikke angive beløb eller formel for lønkomponent {1} med variabel baseret på skattepligtig løn,
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,
Repay From Salary can be selected only for term loans,Tilbagebetaling fra løn kan kun vælges til løbetidslån,
No valid Loan Security Price found for {0},Der blev ikke fundet nogen gyldig lånesikkerhedspris for {0},
Loan Account and Payment Account cannot be same,Lånekonto og betalingskonto kan ikke være den samme,
Loan Security Pledge can only be created for secured loans,Lånsikkerhedspant kan kun oprettes for sikrede lån,
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.",
Salary Component Account,Lønrtskonto,
Default Bank / Cash account will be automatically updated in Salary Journal Entry when this mode is selected.,Standard Bank / Kontant konto vil automatisk blive opdateret i Løn Kassekladde når denne tilstand er valgt.,
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,
Result,Resultat,
Total Score,Samlet 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.,
Joining Date,Ansættelsesdato,
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,
Publish on website,Udgiv på hjemmesiden,
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 Status,Ansøgning status,
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,
IN,I,
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,
Remind Before,Påmind før,
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,
Reminded,mindet,
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,
Additional Salary,Yderligere løn,
HR,HR,
HR-ADS-.YY.-.MM.-,HR-ADS-.YY .-. MM.-,
Salary Component,Lønart,
Overwrite Salary Structure Amount,Overskrive lønstruktursbeløb,
Deduct Full Tax on Selected Payroll Date,Træk fuld skat på den valgte lønningsdato,
Payroll Date,Lønningsdato,
Date on which this component is applied,"Dato, hvorpå denne komponent anvendes",
Salary Slip,Lønseddel,
Salary Component Type,Løn Komponent Type,
HR User,HR-bruger,
Appointment Letter,Aftalerbrev,
Job Applicant,Ansøger,
Applicant Name,Ansøgernavn,
Appointment Date,Udnævnelsesdato,
Appointment Letter Template,Aftalebrevskabelon,
Body,Legeme,
Closing Notes,Lukningsnotater,
Appointment Letter content,Udnævnelsesbrev Indhold,
Appraisal,Vurdering,
HR-APR-.YY.-.MM.,HR-APR-.YY.-.MM.,
Appraisal Template,Vurderingsskabelon,
For Employee Name,Til medarbejdernavn,
Goals,Mål,
Total Score (Out of 5),Samlet score (ud af 5),
"Any other remarks, noteworthy effort that should go in the records.","Alle andre bemærkninger, bemærkelsesværdigt indsats, skal gå i registrene.",
Appraisal Goal,Vurderingsmål,
Key Responsibility Area,Key Responsibility Area,
Weightage (%),Vægtning (%),
Score (0-5),Score (0-5),
Score Earned,Score tjent,
Appraisal Template Title,Vurderingsskabelonnavn,
Appraisal Template Goal,Skabelon til vurderingsmål,
KRA,KRA,
Key Performance Area,Key Performance Area,
HR-ATT-.YYYY.-,HR-ATT-.YYYY.-,
On Leave,Fraværende,
Work From Home,Arbejde hjemmefra,
Leave Application,Ansøg om fravær,
Attendance Date,Fremmøde dato,
Attendance Request,Deltagelse anmodning,
Late Entry,Sidste indrejse,
Early Exit,Tidlig udgang,
Half Day Date,Halv dag dato,
On Duty,På vagt,
Explanation,Forklaring,
Compensatory Leave Request,Kompenserende Forladelsesanmodning,
Leave Allocation,Fraværstildeling,
Worked On Holiday,Arbejdet på ferie,
Work From Date,Arbejde fra dato,
Work End Date,Arbejdets slutdato,
Email Sent To,E-mail send til,
Select Users,Vælg brugere,
Send Emails At,Send e-mails på,
Reminder,Påmindelse,
Daily Work Summary Group User,Daglig Arbejdsopsummering Gruppe Bruger,
email,e-mail,
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,
Department Approver,Afdelingsgodkendelse,
Approver,Godkender,
Required Skills,Nødvendige færdigheder,
Skills,Skills,
Designation Skill,Benævnelsesevne,
Skill,Dygtighed,
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,
Leave Policy,Forlad politik,
Attendance Device ID (Biometric/RF tag ID),Deltagelsesenheds-id (biometrisk / RF-tag-id),
Applicable Holiday List,Gældende helligdagskalender,
Default Shift,Standardskift,
Salary Details,Løn Detaljer,
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,
HR-EAD-.YYYY.-,HR-EAD-.YYYY.-,
Returned Amount,Returneret beløb,
Claimed,hævdede,
Advance Account,Advance konto,
Employee Attendance Tool,Medarbejder Deltagerliste Værktøj,
Unmarked Attendance,umærket Deltagelse,
Employees HTML,Medarbejdere HTML,
Marked Attendance,Markant Deltagelse,
Marked Attendance HTML,Markant Deltagelse HTML,
Employee Benefit Application,Ansættelsesfordel Ansøgning,
Max Benefits (Yearly),Maksimale fordele (Årlig),
Remaining Benefits (Yearly),Resterende fordele (årlig),
Payroll Period,Lønningsperiode,
Benefits Applied,Fordele Anvendt,
Dispensed Amount (Pro-rated),Dispensed Amount (Pro-rated),
Employee Benefit Application Detail,Ansøgningsbidrag Ansøgnings detaljer,
Earning Component,Earning Component,
Pay Against Benefit Claim,Betal mod fordele,
Max Benefit Amount,Max Benefit Amount,
Employee Benefit Claim,Ansættelsesfordel,
Claim Date,Claim Date,
Benefit Type and Amount,Fordelstype og beløb,
Claim Benefit For,Claim fordele for,
Max Amount Eligible,Maksimumsbeløb berettiget,
Expense Proof,Udgiftsbevis,
Employee Boarding Activity,Medarbejder boarding aktivitet,
Activity Name,Aktivitetsnavn,
Task Weight,Opgavevægtning,
Required for Employee Creation,Påkrævet for medarbejderskabelse,
Applicable in the case of Employee Onboarding,Gælder for medarbejder ombordstigning,
Employee Checkin,Medarbejder Checkin,
Log Type,Log Type,
OUT,UD,
Location / Device ID,Placering / enheds-ID,
Skip Auto Attendance,Spring automatisk deltagelse over,
Shift Start,Skift Start,
Shift End,Skiftende,
Shift Actual Start,Skift faktisk start,
Shift Actual End,Skift faktisk afslutning,
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,
Default Salary Structure,Standard lønstruktur,
Employee Group Table,Tabel over medarbejdergrupper,
ERPNext User ID,ERPNæste bruger-id,
Employee Health Insurance,Medarbejdernes sygesikring,
Health Insurance Name,Navn på sygesikring,
Employee Incentive,Medarbejderincitamenter,
Incentive Amount,Incitamentsbeløb,
Employee Internal Work History,Medarbejder Intern Arbejde Historie,
Employee Onboarding,Medarbejder Onboarding,
Notify users by email,Underret brugerne via e-mail,
Employee Onboarding Template,Medarbejder Onboarding Skabelon,
Activities,Aktiviteter,
Employee Onboarding Activity,Medarbejder Onboarding Aktivitet,
Employee Other Income,Medarbejderens anden indkomst,
Employee Promotion,Medarbejderfremmende,
Promotion Date,Kampagnedato,
Employee Promotion Details,Medarbejderfremmende detaljer,
Employee Promotion Detail,Medarbejderfremmende detaljer,
Employee Property History,Medarbejder Ejendomshistorie,
Employee Separation,Medarbejder adskillelse,
Employee Separation Template,Medarbejderseparationsskabelon,
Exit Interview Summary,Exit Interview Summary,
Employee Skill,Medarbejderfærdighed,
Proficiency,sprogfærdighed,
Evaluation Date,Evalueringsdato,
Employee Skill Map,Kort over medarbejderne,
Employee Skills,Medarbejderfærdigheder,
Trainings,kurser,
Employee Tax Exemption Category,Skattefritagelseskategori for ansatte,
Max Exemption Amount,Maksimalt fritagelsesbeløb,
Employee Tax Exemption Declaration,Skattefritagelseserklæring fra ansatte,
Declarations,erklæringer,
Total Declared Amount,Samlet angivet beløb,
Total Exemption Amount,Samlet fritagelsesbeløb,
Employee Tax Exemption Declaration Category,Beskatningsgruppe for arbejdstagerbeskatning,
Exemption Sub Category,Fritagelsesunderkategori,
Exemption Category,Fritagelseskategori,
Maximum Exempted Amount,Maksimalt fritaget beløb,
Declared Amount,Erklæret beløb,
Employee Tax Exemption Proof Submission,Beskæftigelse af medarbejderskattefritagelse,
Submission Date,Indsendelsesdato,
Tax Exemption Proofs,Skattefritagelse bevis,
Total Actual Amount,Samlet faktisk beløb,
Employee Tax Exemption Proof Submission Detail,Beskatningsfrihed for medarbejderskattefritagelse,
Maximum Exemption Amount,Maksimum fritagelsesbeløb,
Type of Proof,Type bevis,
Actual Amount,Faktisk beløb,
Employee Tax Exemption Sub Category,Beskatningsfritagelse for arbejdstager underkategori,
Tax Exemption Category,Skattefritagelseskategori,
Employee Training,Medarbejderuddannelse,
Training Date,Træningsdato,
Employee Transfer,Medarbejderoverførsel,
Transfer Date,Overførselsdato,
Employee Transfer Details,Overførselsoplysninger for medarbejdere,
Employee Transfer Detail,Medarbejderoverførselsdetaljer,
Re-allocate Leaves,Omfordele blade,
Create New Employee Id,Opret nyt medarbejder-id,
New Employee ID,New Employee ID,
Employee Transfer Property,Medarbejderoverdragelsesejendom,
HR-EXP-.YYYY.-,HR-EXP-.YYYY.-,
Expense Taxes and Charges,Udgifter til skatter og afgifter,
Total Sanctioned Amount,Total Sanktioneret Beløb,
Total Advance Amount,Samlet forskudsbeløb,
Total Claimed Amount,Total krævede beløb,
Total Amount Reimbursed,Samlede godtgjorte beløb,
Vehicle Log,Kørebog,
Employees Email Id,Medarbejdere Email Id,
More Details,Flere detaljer,
Expense Claim Account,Udlægskonto,
Expense Claim Advance,Udgiftskrav Advance,
Unclaimed amount,Uopkrævet beløb,
Expense Claim Detail,Udlægsdetalje,
Expense Date,Udlægsdato,
Expense Claim Type,Udlægstype,
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,
HR Settings,HR-indstillinger,
Employee Settings,Medarbejderindstillinger,
Retirement Age,Pensionsalder,
Enter retirement age in years,Indtast pensionsalderen i år,
Stop Birthday Reminders,Stop Fødselsdag Påmindelser,
Expense Approver Mandatory In Expense Claim,Expense Approver Obligatorisk i Expense Claim,
Payroll Settings,Lønindstillinger,
Leave,Forlade,
Max working hours against Timesheet,Max arbejdstid mod Timesheet,
Include holidays in Total no. of Working Days,Medtag helligdage i det totale antal arbejdsdage,
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Hvis markeret, Total nej. af Arbejdsdage vil omfatte helligdage, og dette vil reducere værdien af Løn Per Day",
"If checked, hides and disables Rounded Total field in Salary Slips","Hvis markeret, skjuler og deaktiverer feltet Rounded Total i lønningssedler",
The fraction of daily wages to be paid for half-day attendance,"Den brøkdel af den daglige løn, der skal betales for halvdags tilstedeværelse",
Email Salary Slip to Employee,E-mail lønseddel til medarbejder,
Emails salary slip to employee based on preferred email selected in Employee,"Lønseddel sendes til medarbejderen på e-mail, på baggrund af den foretrukne e-mailadresse der er valgt for medarbejderen",
Encrypt Salary Slips in Emails,Krypter lønsedler i e-mails,
"The salary slip emailed to the employee will be password protected, the password will be generated based on the password policy.","Den lønseddel, der er sendt til medarbejderen, er beskyttet med adgangskode. Adgangskoden genereres baseret på adgangskodepolitikken.",
Password Policy,Kodeordspolitik,
<b>Example:</b> SAL-{first_name}-{date_of_birth.year} <br>This will generate a password like SAL-Jane-1972,<b>Eksempel:</b> SAL- {first_name} - {date_of_birth.year} <br> Dette genererer et kodeord som SAL-Jane-1972,
Leave Settings,Forlad indstillinger,
Leave Approval Notification Template,Forlad godkendelsesskabelonen,
Leave Status Notification Template,Meddelelsesskabelon for meddelelsesstatus,
Role Allowed to Create Backdated Leave Application,Rolle tilladt til at oprette ansøgning om forældet orlov,
Leave Approver Mandatory In Leave Application,Forlad godkendelsesprocedure,
Show Leaves Of All Department Members In Calendar,Vis blade af alle afdelingsmedlemmer i kalender,
Auto Leave Encashment,Automatisk forladt kabinet,
Hiring Settings,Ansættelse af indstillinger,
Check Vacancies On Job Offer Creation,Tjek ledige stillinger ved oprettelse af jobtilbud,
Identification Document Type,Identifikationsdokumenttype,
Effective from,Effektiv fra,
Allow Tax Exemption,Tillad skattefritagelse,
"If enabled, Tax Exemption Declaration will be considered for income tax calculation.","Hvis det er aktiveret, overvejes skattefritagelseserklæringen ved beregning af indkomstskat.",
Standard Tax Exemption Amount,Standard skattefritagelsesbeløb,
Taxable Salary Slabs,Skattepligtige lønplader,
Taxes and Charges on Income Tax,Skatter og afgifter på indkomstskat,
Other Taxes and Charges,Andre skatter og afgifter,
Income Tax Slab Other Charges,Indkomstskatplade Andre gebyrer,
Min Taxable Income,Min skattepligtig indkomst,
Max Taxable Income,Maks. Skattepligtig indkomst,
Applicant for a Job,Ansøger,
Accepted,Accepteret,
Job Opening,Rekrutteringssag,
Cover Letter,Følgebrev,
Resume Attachment,Vedhæft CV,
Job Applicant Source,Job Ansøger Kilde,
Applicant Email Address,Ansøgerens e-mail-adresse,
Awaiting Response,Afventer svar,
Job Offer Terms,Jobtilbudsbetingelser,
Select Terms and Conditions,Vælg betingelser,
Printing Details,Udskrivningsindstillinger,
Job Offer Term,Jobtilbudsperiode,
Offer Term,Tilbudsbetingelser,
Value / Description,/ Beskrivelse,
Description of a Job Opening,Beskrivelse af en ledig stilling,
Job Title,Titel,
Staffing Plan,Bemandingsplan,
Planned number of Positions,Planlagt antal positioner,
"Job profile, qualifications required etc.","Stillingsprofil, kvalifikationskrav mv.",
HR-LAL-.YYYY.-,HR-LAL-.YYYY.-,
Allocation,Tildeling,
New Leaves Allocated,Nye fravær Allokeret,
Add unused leaves from previous allocations,Tilføj ubrugt fravær fra tidligere tildelinger,
Unused leaves,Ubrugte blade,
Total Leaves Allocated,Tildelt fravær i alt,
Total Leaves Encashed,Samlede blade indsnævret,
Leave Period,Forladelsesperiode,
Carry Forwarded Leaves,Carry Videresendte Blade,
Apply / Approve Leaves,Anvend / Godkend fravær,
HR-LAP-.YYYY.-,HR-LAP-.YYYY.-,
Leave Balance Before Application,Fraværssaldo før anmodning,
Total Leave Days,Totalt antal fraværsdage,
Leave Approver Name,Fraværsgodkendernavn,
Follow via Email,Følg via e-mail,
Block Holidays on important days.,Blokér ferie på vigtige dage.,
Leave Block List Name,Blokering af fraværsansøgninger,
Applies to Company,Gælder for hele firmaet,
"If not checked, the list will have to be added to each Department where it has to be applied.","Hvis ikke afkrydset, skal hver afdeling vælges, hvor det skal anvendes.",
Block Days,Blokér dage,
Stop users from making Leave Applications on following days.,Stop brugere fra at oprette fraværsansøgninger for de følgende dage.,
Leave Block List Dates,Fraværsblokeringsdatoer,
Allow Users,Tillad brugere,
Allow the following users to approve Leave Applications for block days.,Tillad følgende brugere til at godkende fraværsansøgninger på blokerede dage.,
Leave Block List Allowed,Tillad blokerede fraværsansøgninger,
Leave Block List Allow,Tillad blokerede fraværsansøgninger,
Allow User,Tillad Bruger,
Leave Block List Date,Fraværsblokeringsdato,
Block Date,Blokeringsdato,
Leave Control Panel,Fravær Kontrolpanel,
Select Employees,Vælg Medarbejdere,
Employment Type (optional),Beskæftigelsestype (valgfrit),
Branch (optional),Gren (valgfri),
Department (optional),Afdeling (valgfrit),
Designation (optional),Betegnelse (valgfrit),
Employee Grade (optional),Medarbejderklasse (valgfrit),
Employee (optional),Medarbejder (valgfrit),
Allocate Leaves,Tildel blade,
Carry Forward,Benyt fortsat fravær fra sidste regnskabsår,
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,"Vælg dette felt, hvis du også ønsker at inkludere foregående regnskabsår fraværssaldo til indeværende regnskabsår",
New Leaves Allocated (In Days),Nyt fravær tildelt (i dage),
Allocate,Tildel fravær,
Leave Balance,Forløbsbalance,
Encashable days,Encashable dage,
Encashment Amount,Indkøbsbeløb,
Leave Ledger Entry,Forlad hovedbogen,
Transaction Name,Transaktionsnavn,
Is Carry Forward,Er fortsat fravær fra sidste regnskabsår,
Is Expired,Er udløbet,
Is Leave Without Pay,Er fravær uden løn,
Holiday List for Optional Leave,Ferieliste for valgfri ferie,
Leave Allocations,Forlade tildelinger,
Leave Policy Details,Forlad politikoplysninger,
Leave Policy Detail,Forlad politikoplysninger,
Annual Allocation,Årlig tildeling,
Leave Type Name,Fraværstypenavn,
Max Leaves Allowed,Maks. Tilladte blade,
Applicable After (Working Days),Gældende efter (arbejdsdage),
Maximum Continuous Days Applicable,Maksimale kontinuerlige dage gældende,
Is Optional Leave,Er Valgfri Forladelse,
Allow Negative Balance,Tillad negativ fraværssaldo,
Include holidays within leaves as leaves,Medtag helligdage indenfor fraværsperioden som fravær,
Is Compensatory,Er kompenserende,
Maximum Carry Forwarded Leaves,Maksimale transporterede fremsendte blade,
Expire Carry Forwarded Leaves (Days),Udløb med fremsendte blade (dage),
Calculated in days,Beregnes i dage,
Encashment,indløsning,
Allow Encashment,Tillad indløsning,
Encashment Threshold Days,Encashment Threshold Days,
Earned Leave,Tjenet forladt,
Is Earned Leave,Er tjent forladelse,
Earned Leave Frequency,Optjent Levefrekvens,
Rounding,Afrunding,
Payroll Employee Detail,Betalingsmedarbejder Detail,
Payroll Frequency,Lønafregningsfrekvens,
Fortnightly,Hver 14. dag,
Bimonthly,Hver anden måned,
Employees,Medarbejdere,
Number Of Employees,Antal medarbejdere,
Employee Details,Medarbejderdetaljer,
Validate Attendance,Validere tilstedeværelse,
Salary Slip Based on Timesheet,Lønseddel baseret på timeregistreringen,
Select Payroll Period,Vælg Lønperiode,
Deduct Tax For Unclaimed Employee Benefits,Fradragsafgift for uopkrævede medarbejderfordele,
Deduct Tax For Unsubmitted Tax Exemption Proof,Fradragsafgift for ikke-meddelt skattefritagelse bevis,
Select Payment Account to make Bank Entry,Vælg Betalingskonto til bankbetalingerne,
Salary Slips Created,Lønningslisterne er oprettet,
Salary Slips Submitted,Lønssedler indsendes,
Payroll Periods,Lønningsperioder,
Payroll Period Date,Lønningsperiode Dato,
Purpose of Travel,Formålet med rejser,
Retention Bonus,Retention Bonus,
Bonus Payment Date,Bonus Betalingsdato,
Bonus Amount,Bonusbeløb,
Abbr,Forkortelse,
Depends on Payment Days,Afhænger af betalingsdage,
Is Tax Applicable,Er skat gældende,
Variable Based On Taxable Salary,Variabel baseret på skattepligtig løn,
Exempted from Income Tax,Undtaget fra indkomstskat,
Round to the Nearest Integer,Rund til det nærmeste heltal,
Statistical Component,Statistisk komponent,
"If selected, the value specified or calculated in this component will not contribute to the earnings or deductions. However, it's value can be referenced by other components that can be added or deducted. ","Hvis valgt, vil den værdi, der er angivet eller beregnet i denne komponent, ikke bidrage til indtjeningen eller fradrag. Men det er værdien kan henvises af andre komponenter, som kan tilføjes eller fratrækkes.",
Do Not Include in Total,Medtag ikke i alt,
Flexible Benefits,Fleksible fordele,
Is Flexible Benefit,Er fleksibel fordel,
Max Benefit Amount (Yearly),Max Benefit Amount (Årlig),
Only Tax Impact (Cannot Claim But Part of Taxable Income),Kun skattepåvirkning (kan ikke kræve en del af skattepligtig indkomst),
Create Separate Payment Entry Against Benefit Claim,Opret særskilt betalingsindgang mod fordringsanmodning,
Condition and Formula,Tilstand og formel,
Amount based on formula,Antal baseret på formlen,
Formula,Formel,
Salary Detail,Løn Detail,
Component,Lønart,
Do not include in total,Inkluder ikke i alt,
Default Amount,Standard Mængde,
Additional Amount,Yderligere beløb,
Tax on flexible benefit,Skat på fleksibel fordel,
Tax on additional salary,Skat af ekstra løn,
Salary Structure,Lønstruktur,
Working Days,Arbejdsdage,
Salary Slip Timesheet,Lønseddel Timeseddel,
Total Working Hours,Arbejdstid i alt,
Hour Rate,Timesats,
Bank Account No.,Bankkonto No.,
Earning & Deduction,Tillæg & fradrag,
Earnings,Indtjening,
Deductions,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,
Total in words,I alt i ord,
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.",
Salary Component for timesheet based payroll.,Lønart til tidsregistering,
Leave Encashment Amount Per Day,Forlad Encashment Amount Per Day,
Max Benefits (Amount),Maksimale fordele (Beløb),
Salary breakup based on Earning and Deduction.,Lønnen opdelt på tillæg og fradrag.,
Total Earning,Samlet Earning,
Salary Structure Assignment,Lønstrukturstrukturopgave,
Shift Assignment,Skift opgave,
Shift Type,Skift type,
Shift Request,Skiftforespørgsel,
Enable Auto Attendance,Aktivér automatisk deltagelse,
Mark attendance based on 'Employee Checkin' for Employees assigned to this shift.,"Marker deltagelse baseret på &#39;Medarbejdercheck&#39; for medarbejdere, der er tildelt dette skift.",
Auto Attendance Settings,Indstillinger for automatisk deltagelse,
Determine Check-in and Check-out,Bestem indtjekning og udtjekning,
Alternating entries as IN and OUT during the same shift,Skiftende poster som IN og OUT under samme skift,
Strictly based on Log Type in Employee Checkin,Strengt baseret på Log Type i medarbejder checkin,
Working Hours Calculation Based On,Beregning af arbejdstid baseret på,
First Check-in and Last Check-out,Første check-in og sidste check-out,
Every Valid Check-in and Check-out,Hver gyldig indtjekning og udtjekning,
Begin check-in before shift start time (in minutes),Start check-in før skiftets starttid (i minutter),
The time before the shift start time during which Employee Check-in is considered for attendance.,"Tiden før skiftets starttid, hvor medarbejderindtjekning overvejes til deltagelse.",
Allow check-out after shift end time (in minutes),Tillad check-out efter skiftets sluttid (i minutter),
Time after the end of shift during which check-out is considered for attendance.,"Tid efter skiftets afslutning, hvor check-out overvejes til deltagelse.",
Working Hours Threshold for Half Day,Arbejdstidsgrænse for halv dag,
Working hours below which Half Day is marked. (Zero to disable),"Arbejdstid, under hvilken Half Day er markeret. (Nul til at deaktivere)",
Working Hours Threshold for Absent,Arbejdstidsgrænse for fraværende,
Working hours below which Absent is marked. (Zero to disable),"Arbejdstid, hvorfravær er markeret. (Nul til at deaktivere)",
Process Attendance After,Procesdeltagelse efter,
Attendance will be marked automatically only after this date.,Deltagelse markeres automatisk efter denne dato.,
Last Sync of Checkin,Sidste synkronisering af checkin,
Last Known Successful Sync of Employee Checkin. Reset this only if you are sure that all Logs are synced from all the locations. Please don't modify this if you are unsure.,"Sidst kendt vellykket synkronisering af medarbejdercheck. Nulstil dette kun, hvis du er sikker på, at alle logfiler synkroniseres fra alle placeringer. Du skal ikke ændre dette, hvis du er usikker.",
Grace Period Settings For Auto Attendance,Indstillinger for nådeperiode til automatisk deltagelse,
Enable Entry Grace Period,Aktivér indgangsperiode,
Late Entry Grace Period,Sen indgangsperiode,
The time after the shift start time when check-in is considered as late (in minutes).,"Tiden efter skiftets starttidspunkt, når check-in betragtes som sent (i minutter).",
Enable Exit Grace Period,Aktivér afslutningsperiode,
Early Exit Grace Period,Tidlig afgangsperiode,
The time before the shift end time when check-out is considered as early (in minutes).,"Tiden før skiftets sluttid, når check-out betragtes som tidligt (i minutter).",
Skill Name,Færdighedsnavn,
Staffing Plan Details,Bemandingsplandetaljer,
Staffing Plan Detail,Bemandingsplandetaljer,
Total Estimated Budget,Samlet estimeret budget,
Vacancies,Ledige stillinger,
Estimated Cost Per Position,Anslået pris pr. Position,
Total Estimated Cost,Samlede anslåede omkostninger,
Current Count,Nuværende Grev,
Current Openings,Nuværende åbninger,
Number Of Positions,Antal positioner,
Taxable Salary Slab,Skattepligtige lønplader,
From Amount,Fra beløb,
To Amount,Til beløb,
Percent Deduction,Procent Fradrag,
Training Program,Træningsprogram,
Event Status,begivenhed status,
Has Certificate,Har certifikat,
Seminar,Seminar,
Theory,Teori,
Workshop,Værksted,
Conference,Konference,
Exam,Eksamen,
Internet,Internet,
Self-Study,Selvstudie,
Advance,Advance,
Trainer Name,Trainer Navn,
Trainer Email,Trainer Email,
Attendees,Deltagere,
Employee Emails,Medarbejder Emails,
Training Event Employee,Træning Begivenhed Medarbejder,
Invited,inviteret,
Feedback Submitted,Tilbagemelding er sendt,
Optional,Valgfri,
Training Result Employee,Træning Resultat Medarbejder,
Travel Itinerary,Rejseplan,
Travel From,Rejse fra,
Travel To,Rejse til,
Mode of Travel,Rejsemåden,
Flight,Flyvningen,
Train,Tog,
Taxi,Taxa,
Rented Car,Lejet bil,
Meal Preference,Måltidspræference,
Vegetarian,Vegetarisk,
Non-Vegetarian,Ikke-Vegetarisk,
Gluten Free,Glutenfri,
Non Diary,Ikke-dagbog,
Travel Advance Required,Krav til rejseudvikling,
Departure Datetime,Afrejse Datetime,
Arrival Datetime,Ankomst Dato time,
Lodging Required,Indlogering påkrævet,
Preferred Area for Lodging,Foretrukne område for overnatning,
Check-in Date,Check-in dato,
Check-out Date,Check-out dato,
Travel Request,Rejseforespørgsel,
Travel Type,Rejsetype,
Domestic,Indenlandsk,
International,International,
Travel Funding,Rejsefinansiering,
Require Full Funding,Kræver Fuld finansiering,
Fully Sponsored,Fuldt sponsoreret,
"Partially Sponsored, Require Partial Funding","Delvist sponsoreret, kræves delfinansiering",
Copy of Invitation/Announcement,Kopi af invitation / meddelelse,
"Details of Sponsor (Name, Location)","Detaljer om sponsor (navn, sted)",
Identification Document Number,Identifikationsdokumentnummer,
Any other details,Eventuelle andre detaljer,
Costing Details,Costing Detaljer,
Costing,Koster,
Event Details,Eventdetaljer,
Name of Organizer,Navn på arrangør,
Address of Organizer,Arrangørens adresse,
Travel Request Costing,Rejseforespørgsel Costing,
Expense Type,Udgiftstype,
Sponsored Amount,Sponsoreret beløb,
Funded Amount,Finansieret beløb,
Upload Attendance,Indlæs fremmøde,
Attendance From Date,Fremmøde fradato,
Attendance To Date,Fremmøde til dato,
Get Template,Hent skabelon,
Import Attendance,Importér fremmøde,
Upload HTML,Upload HTML,
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,
HR-VLOG-.YYYY.-,HR-vlog-.YYYY.-,
Odometer Reading,kilometerstand,
Current Odometer value ,Aktuel kilometertalværdi,
last Odometer Value ,sidste kilometertalværdi,
Refuelling Details,Brændstofpåfyldningsdetaljer,
Invoice Ref,Fakturareference,
Service Details,Service Detaljer,
Service Detail,service Detail,
Vehicle Service,Køretøj service,
Service Item,tjenesten Item,
Brake Oil,Bremse Oil,
Brake Pad,Bremseklods,
Clutch Plate,clutch Plate,
Engine Oil,Motorolie,
Oil Change,Olieskift,
Inspection,Kontrol,
Mileage,Kilometerpenge,
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,
Member,Medlem,
Partially Disbursed,Delvist udbetalt,
Loan Closure Requested,Anmodet om lukning,
Repay From Salary,Tilbagebetale fra Løn,
Loan Details,Lånedetaljer,
Loan Type,Lånetype,
Loan Amount,Lånebeløb,
Is Secured Loan,Er sikret lån,
Rate of Interest (%) / Year,Rente (%) / år,
Disbursement Date,Udbetaling Dato,
Disbursed Amount,Udbetalt beløb,
Is Term Loan,Er terminlån,
Repayment Method,tilbagebetaling Metode,
Repay Fixed Amount per Period,Tilbagebetale fast beløb pr Periode,
Repay Over Number of Periods,Tilbagebetale over antallet af perioder,
Repayment Period in Months,Tilbagebetaling Periode i måneder,
Monthly Repayment Amount,Månedlige ydelse Beløb,
Repayment Start Date,Tilbagebetaling Startdato,
Loan Security Details,Detaljer om lånesikkerhed,
Maximum Loan Value,Maksimal låneværdi,
Account Info,Kontooplysninger,
Loan Account,Lånekonto,
Interest Income Account,Renter Indkomst konto,
Penalty Income Account,Penalty Income Account,
Repayment Schedule,tilbagebetaling Schedule,
Total Payable Amount,Samlet Betales Beløb,
Total Principal Paid,Total betalt hovedstol,
Total Interest Payable,Samlet Renteudgifter,
Total Amount Paid,Samlede beløb betalt,
Loan Manager,Låneadministrator,
Loan Info,Låneinformation,
Rate of Interest,Rentesats,
Proposed Pledges,Foreslåede løfter,
Maximum Loan Amount,Maksimalt lånebeløb,
Repayment Info,tilbagebetaling Info,
Total Payable Interest,Samlet Betales Renter,
Against Loan ,Mod lån,
Loan Interest Accrual,Periodisering af lånerenter,
Amounts,Beløb,
Pending Principal Amount,Afventende hovedbeløb,
Payable Principal Amount,Betalbart hovedbeløb,
Paid Principal Amount,Betalt hovedbeløb,
Paid Interest Amount,Betalt rentebeløb,
Process Loan Interest Accrual,Proceslån Renter Periodisering,
Repayment Schedule Name,Navn på tilbagebetalingsplan,
Regular Payment,Regelmæssig betaling,
Loan Closure,Lånelukning,
Payment Details,Betalingsoplysninger,
Interest Payable,Rentebetaling,
Amount Paid,Beløb betalt,
Principal Amount Paid,Hovedbeløb betalt,
Repayment Details,Detaljer om tilbagebetaling,
Loan Repayment Detail,Detaljer om tilbagebetaling af lån,
Loan Security Name,Lånesikkerhedsnavn,
Unit Of Measure,Måleenhed,
Loan Security Code,Lånesikkerhedskode,
Loan Security Type,Lånesikkerhedstype,
Haircut %,Hårklip%,
Loan  Details,Lånedetaljer,
Unpledged,ubelånte,
Pledged,pantsat,
Partially Pledged,Delvist pantsat,
Securities,Værdipapirer,
Total Security Value,Samlet sikkerhedsværdi,
Loan Security Shortfall,Lånesikkerhedsunderskud,
Loan ,Lån,
Shortfall Time,Mangel på tid,
America/New_York,Amerika / New_York,
Shortfall Amount,Mangel på beløb,
Security Value ,Sikkerhedsværdi,
Process Loan Security Shortfall,Proceslånsikkerhedsunderskud,
Loan To Value Ratio,Udlån til værdiforhold,
Unpledge Time,Unpedge-tid,
Loan Name,Lånenavn,
Rate of Interest (%) Yearly,Rente (%) Årlig,
Penalty Interest Rate (%) Per Day,Straffesats (%) pr. Dag,
Penalty Interest Rate is levied on the pending interest amount on a daily basis in case of delayed repayment ,Straffesats opkræves dagligt for det verserende rentebeløb i tilfælde af forsinket tilbagebetaling,
Grace Period in Days,Nådeperiode i dage,
No. of days from due date until which penalty won't be charged in case of delay in loan repayment,"Antal dage fra forfaldsdato, indtil bøden ikke opkræves i tilfælde af forsinkelse i tilbagebetaling af lån",
Pledge,Løfte,
Post Haircut Amount,Efter hårklipmængde,
Process Type,Process Type,
Update Time,Opdateringstid,
Proposed Pledge,Foreslået løfte,
Total Payment,Samlet betaling,
Balance Loan Amount,Balance Lånebeløb,
Is Accrued,Er periodiseret,
Salary Slip Loan,Salary Slip Lån,
Loan Repayment Entry,Indlån til tilbagebetaling af lån,
Sanctioned Loan Amount,Sanktioneret lånebeløb,
Sanctioned Amount Limit,Sanktioneret beløbsgrænse,
Unpledge,Unpledge,
Haircut,Klipning,
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),Faktisk tid (i timer),
Costing and Billing,Omkostningsberegning og fakturering,
Total Costing Amount (via Timesheets),Samlet Omkostningsbeløb (via tidsskemaer),
Total Expense Claim (via Expense Claims),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 Timesheets),Samlet fakturerbart beløb (via timesheets),
Total Billed Amount (via Sales Invoices),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 Time Sheet),Faktisk startdato (via Tidsregistreringen),
Actual Time (in hours),Faktisk tid (i timer),
Actual End Date (via Time Sheet),Faktisk Slutdato (via Tidsregistreringen),
Total Costing Amount (via Time Sheet),Totale omkostninger (via tidsregistrering),
Total Expense Claim (via Expense Claim),Udlæg ialt (via Udlæg),
Total Billing Amount (via Time Sheet),Faktureret beløb i alt (via Tidsregistrering),
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,
January-April-July-October,Januar til april juli til oktober,
Revision and Revised On,Revision og revideret på,
Revision,Revision,
Revised On,Revideret den,
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,
Child Procedure,Børneprocedure,
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,
May,Maj,
June,juni,
July,juli,
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,
Current Value,Aktuel værdi,
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,
Bank Remittance,Bankoverførsel,
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,
Daily Work Summary Replies,Daglige Arbejdsoversigt Svar,
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 Advance Summary,Medarbejder Advance Summary,
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,
Employees working on a holiday,"Medarbejdere, der arbejder på en helligdag",
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,
Loan Repayment and Closure,Tilbagebetaling og lukning af lån,
Loan Security Status,Lånesikkerhedsstatus,
Lost Opportunity,Mistet mulighed,
Maintenance Schedules,Vedligeholdelsesplaner,
Material Requests for which Supplier Quotations are not created,Materialeanmodninger under hvilke leverandørtilbud ikke er oprettet,
Monthly Attendance Sheet,Månedlig Deltagelse Sheet,
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,
Quoted Item Comparison,Sammenligning Citeret Vare,
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,
Salary Register,Løn Register,
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,
Unpaid Expense Claim,Ubetalt udlæg,
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},
Payment Account is mandatory,Betalingskonto er obligatorisk,
"If checked, the full amount will be deducted from taxable income before calculating income tax without any declaration or proof submission.","Hvis dette er markeret, trækkes hele beløbet fra skattepligtig indkomst inden beregning af indkomstskat uden nogen erklæring eller bevisafgivelse.",
Disbursement Details,Udbetalingsoplysninger,
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.-,
In Time,I tide,
Out Time,Out Time,
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,
Reference No,referencenummer,
Haircut percentage is the percentage difference between market value of the Loan Security and the value ascribed to that Loan Security when used as collateral for that loan.,"Hårklippeprocent er den procentvise forskel mellem markedsværdien af lånesikkerheden og den værdi, der tilskrives lånets sikkerhed, når den anvendes som sikkerhed for dette lån.",
Loan To Value Ratio expresses the ratio of the loan amount to the value of the security pledged. A loan security shortfall will be triggered if this falls below the specified value for any loan ,"Loan To Value Ratio udtrykker forholdet mellem lånebeløbet og værdien af den pantsatte sikkerhed. Et lånesikkerhedsmangel udløses, hvis dette falder under den specificerede værdi for et lån",
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,
Is Recurring,Er tilbagevendende,
HRA Exemption,HRA-undtagelse,
Monthly House Rent,Månedlig husleje,
Rented in Metro City,Lejes i Metro City,
HRA as per Salary Structure,HRA i henhold til lønstruktur,
Annual HRA Exemption,Årlig HRA-undtagelse,
Monthly HRA Exemption,Månedlig HRA-undtagelse,
House Rent Payment Amount,Husleje Betalingsbeløb,
Rented From Date,Lejes fra dato,
Rented To Date,Lejet til dato,
Monthly Eligible Amount,Månedligt kvalificeret beløb,
Total Eligible HRA Exemption,Samlet støtteberettiget HRA-fritagelse,
Validating Employee Attendance...,Validering af medarbejderdeltagelse ...,
Submitting Salary Slips and creating Journal Entry...,Afsendelse af lønsedler og oprettelse af journalindtastning ...,
Calculate Payroll Working Days Based On,Beregn lønningsarbejdsdage baseret på,
Consider Unmarked Attendance As,Overvej umærket deltagelse som,
Fraction of Daily Salary for Half Day,Brøkdel af den daglige løn for en halv dag,
Component Type,Komponenttype,
Provident Fund,Forsikringsfond,
Additional Provident Fund,Yderligere tilskudsfond,
Provident Fund Loan,Provident Fund Lån,
Professional Tax,Professionel skat,
Is Income Tax Component,Er indkomstskatkomponent,
Component properties and references ,Komponentegenskaber og referencer,
Additional Salary ,Yderligere løn,
Unmarked days,Umarkerede dage,
Absent Days,Fraværende dage,
Conditions and Formula variable and example,Betingelser og formelvariabel og eksempel,
Feedback By,Feedback af,
MTNG-.YYYY.-.MM.-.DD.-,MTNG-.YYYY .-. MM .-. DD.-,
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,
Income Tax Deductions,Fradrag for indkomstskat,
Income Tax Component,Indkomstskatkomponent,
Income Tax Amount,Indkomstskatbeløb,
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,
Unmarked Days,Umærkede dage,
Jan,Jan,
Feb,Feb,
Mar,Mar,
Apr,Apr,
Aug,Aug,
Sep,Sep,
Oct,Okt,
Nov,Nov,
Dec,Dec,
Summarized View,Sammenfattet visning,
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,
Professional Tax Deductions,Professionelle skattefradrag,
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,
Provident Fund Deductions,Forsikringsfondets fradrag,
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,
Recruitment Analytics,Rekrutteringsanalyse,
Applicant name,Ansøgerens navn,
Job Offer status,Jobtilbud status,
On Date,På dato,
Requested Items to Order and Receive,Anmodede varer at bestille og modtage,
Salary Payments Based On Payment Mode,Lønbetalinger baseret på betalingstilstand,
Salary Payments via ECS,Lønbetalinger via ECS,
Account No,Kontonr,
IFSC,IFSC,
MICR,MICR,
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,
PF Account,PF-konto,
PF Amount,PF-beløb,
Additional PF,Yderligere PF,
PF Loan,PF-lån,
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},
Duplicate Entry,Duplikatindtastning,
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 select Employee first.,Vælg medarbejder først.,
Please set {0} for the Employee or for Department: {1},Indstil {0} for medarbejderen eller for afdelingen: {1},
To Date should be greater than From Date,Til dato skal være større end fra dato,
Employee Onboarding: {0} is already for Job Applicant: {1},Onboarding af medarbejdere: {0} er allerede til jobansøger: {1},
Job Offer: {0} is already for Job Applicant: {1},Jobtilbud: {0} er allerede til jobansøger: {1},
Only Shift Request with status 'Approved' and 'Rejected' can be submitted,Kun skiftanmodning med status &#39;Godkendt&#39; og &#39;Afvist&#39; kan indsendes,
Shift Assignment: {0} created for Employee: {1},Skiftopgave: {0} oprettet for medarbejder: {1},
You can not request for your Default Shift: {0},Du kan ikke anmode om din standardskift: {0},
Only Approvers can Approve this Request.,Kun godkendere kan godkende denne anmodning.,
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",
Loan Security {0} added multiple times,Lånesikkerhed {0} tilføjet flere gange,
Loan Securities with different LTV ratio cannot be pledged against one loan,Lånepapirer med forskellige LTV-forhold kan ikke pantsættes mod et lån,
Qty or Amount is mandatory for loan security!,Antal eller beløb er obligatorisk for lånesikkerhed!,
Only submittted unpledge requests can be approved,Kun indsendte anmodninger om ikke-pant kan godkendes,
Interest Amount or Principal Amount is mandatory,Rentebeløb eller hovedbeløb er obligatorisk,
Disbursed Amount cannot be greater than {0},Udbetalt beløb kan ikke være større end {0},
Row {0}: Loan Security {1} added multiple times,Række {0}: Lånesikkerhed {1} tilføjet flere gange,
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,
Please set Payroll based on in Payroll settings,Indstil lønning baseret på i lønningsindstillinger,
Additional Salary: {0} already exist for Salary Component: {1} for period {2} and {3},Yderligere løn: {0} findes der allerede for lønkomponent: {1} i periode {2} og {3},
From Date can not be greater than To Date.,Fra dato kan ikke være større end til dato.,
Payroll date can not be less than employee's joining date.,Løndato kan ikke være mindre end medarbejderens tiltrædelsesdato.,
From date can not be less than employee's joining date.,Fra dato kan ikke være mindre end medarbejderens tiltrædelsesdato.,
To date can not be greater than employee's relieving date.,Til dato kan ikke være større end medarbejderens aflastningsdato.,
Payroll date can not be greater than employee's relieving date.,Løndato kan ikke være højere end medarbejderens aflastningsdato.,
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,
Condition and formula,Tilstand og formel,
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 #{}: Serial No{}. {} has already been transacted into another POS Invoice. Please select valid serial no.,Række nr. {}: Serienr. {}. {} er allerede blevet overført til en anden POS-faktura. Vælg gyldigt serienummer.,
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}.,
