"""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 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 {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,
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 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.,
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,
Parent,Parent,
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 {0}","Specialtegn undtagen &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{&quot; Og &quot;}&quot; er ikke tilladt i navngivningsserier {0}",
Target Details,Måldetaljer,
{0} already has a Parent Procedure {1}.,{0} har allerede en overordnet procedure {1}.,
API,API,
Annual,Årligt,
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,
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,
Objectives,mål,
Quality Goal Objective,Kvalitetsmål Mål,
Objective,Objektiv,
Agenda,Dagsorden,
Minutes,minutter,
Quality Meeting Agenda,Dagsorden for kvalitetsmøde,
Quality Meeting Minutes,Mødemøde for kvalitet,
Minute,Minut,
Parent Procedure,Forældreprocedure,
Processes,Processer,
Quality Procedure Process,Kvalitetsprocedure,
Process Description,Procesbeskrivelse,
Link existing Quality Procedure.,Kobl den eksisterende kvalitetsprocedure.,
Additional Information,Yderligere Information,
Quality Review Objective,Mål for kvalitetsgennemgang,
DATEV Settings,DATEV-indstillinger,
Regional,Regional,
Consultant ID,Konsulent ID,
GST HSN Code,GST HSN-kode,
HSN Code,HSN kode,
GST Settings,GST-indstillinger,
GST Summary,GST Sammendrag,
GSTIN Email Sent On,GSTIN Email Sent On,
GST Accounts,GST-konti,
B2C Limit,B2C Limit,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Angiv faktura værdi for B2C. B2CL og B2CS beregnet ud fra denne faktura værdi.,
GSTR 3B Report,GSTR 3B-rapport,
January,januar,
February,februar,
March,marts,
April,April,
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,
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,
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 #{}: Item Code: {} is not available under warehouse {}.,Række nr. {}: Varekode: {} er ikke tilgængelig under lager {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Række nr. {}: Mængde på lager ikke til varekode: {} under lager {}. Tilgængelig mængde {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Række nr. {}: Vælg et serienummer og et parti mod varen: {} eller fjern det for at gennemføre transaktionen.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,"Række nr. {}: Intet serienummer er valgt mod elementet: {}. Vælg en, eller fjern den for at gennemføre transaktionen.",
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,"Række nr. {}: Der er ikke valgt nogen batch mod element: {}. Vælg et parti, eller fjern det for at gennemføre transaktionen.",
Payment amount cannot be less than or equal to 0,Betalingsbeløbet kan ikke være mindre end eller lig med 0,
Please enter the phone number first,Indtast først telefonnummeret,
Row #{}: {} {} does not exist.,Række nr. {}: {} {} Findes ikke.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Række nr. {0}: {1} kræves for at oprette de indledende {2} fakturaer,
You had {} errors while creating opening invoices. Check {} for more details,Du havde {} fejl under oprettelsen af åbningsfakturaer. Se {} for at få flere oplysninger,
Error Occured,Fejl opstået,
Opening Invoice Creation In Progress,Åbning af oprettelse af faktura i gang,
Creating {} out of {} {},Opretter {} ud af {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,"(Serienr.: {0}) kan ikke forbruges, da den er forbeholdt fuld udfylde salgsordre {1}.",
Item {0} {1},Vare {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,Sidste lagertransaktion for vare {0} under lager {1} var den {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Lagertransaktioner for vare {0} under lager {1} kan ikke bogføres før dette tidspunkt.,
Posting future stock transactions are not allowed due to Immutable Ledger,Det er ikke tilladt at bogføre fremtidige aktietransaktioner på grund af Immutable Ledger,
A BOM with name {0} already exists for item {1}.,Der findes allerede en stykliste med navnet {0} for varen {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Omdøbte du varen? Kontakt administrator / teknisk support,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},I række nr. {0}: sekvens-id&#39;et {1} kan ikke være mindre end det foregående rækkefølge-id {2},
The {0} ({1}) must be equal to {2} ({3}),{0} ({1}) skal være lig med {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, fuldfør operationen {1} før operationen {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,"Kan ikke sikre levering med serienummer, da vare {0} er tilføjet med og uden at sikre levering ved serienummer.",
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,Vare {0} har ikke serienr. Kun serilialiserede varer kan leveres baseret på serienummer,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Ingen aktiv stykliste fundet for element {0}. Levering med serienr. Kan ikke sikres,
No pending medication orders found for selected criteria,Der blev ikke fundet nogen ventende medicinordrer til udvalgte kriterier,
From Date cannot be after the current date.,Fra dato kan ikke være efter den aktuelle dato.,
To Date cannot be after the current date.,Til dato kan ikke være efter den aktuelle dato.,
From Time cannot be after the current time.,Fra tid kan ikke være efter det aktuelle tidspunkt.,
To Time cannot be after the current time.,To Time kan ikke være efter det aktuelle tidspunkt.,
Stock Entry {0} created and ,Lagerpost {0} oprettet og,
Inpatient Medication Orders updated successfully,Indlægsmedicinske ordrer opdateret,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Række {0}: Kan ikke oprette indlæggelse af indlæggelsesmedicin mod annulleret bestilling af indlæggelsesmedicin {1},
Row {0}: This Medication Order is already marked as completed,Række {0}: Denne medicinordre er allerede markeret som afsluttet,
Quantity not available for {0} in warehouse {1},"Mængde, der ikke er tilgængeligt for {0} på lageret {1}",
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,"Aktivér Tillad negativ beholdning i lagerindstillinger, eller opret lagerindgang for at fortsætte.",
No Inpatient Record found against patient {0},Der blev ikke fundet nogen indlæggelsesjournal over patienten {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Der findes allerede en ordre om indlæggelse af medicin {0} mod patientmøde {1}.,
Allow In Returns,Tillad returnerer,
Hide Unavailable Items,Skjul ikke-tilgængelige poster,
Apply Discount on Discounted Rate,Anvend rabat på nedsat sats,
Therapy Plan Template,Terapiplan skabelon,
Fetching Template Details,Henter skabelondetaljer,
Linked Item Details,Sammenkædede varedetaljer,
Therapy Types,Terapi Typer,
Therapy Plan Template Detail,Terapi plan skabelon detaljer,
Non Conformance,Manglende overensstemmelse,
Process Owner,Proces ejer,
Corrective Action,Korrigerende handling,
Preventive Action,Forebyggende handling,
Problem,Problem,
Responsible,Ansvarlig,
Completion By,Afslutning af,
Process Owner Full Name,Processejerens fulde navn,
Right Index,Højre indeks,
Left Index,Venstre indeks,
Sub Procedure,Underprocedure,
Passed,Bestået,
Print Receipt,Udskriv kvittering,
Edit Receipt,Rediger kvittering,
Focus on search input,Fokuser på søgeinput,
Focus on Item Group filter,Fokuser på varegruppefilter,
Checkout Order / Submit Order / New Order,Kasseordre / Afgiv ordre / Ny ordre,
Add Order Discount,Tilføj ordrerabat,
Item Code: {0} is not available under warehouse {1}.,Varekode: {0} er ikke tilgængelig under lageret {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Serienumre er ikke tilgængelige for vare {0} under lager {1}. Prøv at skifte lager.,
Fetched only {0} available serial numbers.,Hentede kun {0} tilgængelige serienumre.,
Switch Between Payment Modes,Skift mellem betalingsformer,
Enter {0} amount.,Indtast {0} beløb.,
You don't have enough points to redeem.,Du har ikke nok point til at indløse.,
You can redeem upto {0}.,Du kan indløse op til {0}.,
Enter amount to be redeemed.,"Indtast det beløb, der skal indløses.",
You cannot redeem more than {0}.,Du kan ikke indløse mere end {0}.,
Open Form View,Åbn formularvisning,
POS invoice {0} created succesfully,POS-faktura {0} oprettet med succes,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Lagermængde ikke nok til varekode: {0} under lager {1}. Tilgængelig mængde {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Serienr.: {0} er allerede blevet overført til en anden POS-faktura.,
Balance Serial No,Balance Serienr,
Warehouse: {0} does not belong to {1},Lager: {0} tilhører ikke {1},
Please select batches for batched item {0},Vælg batcher til batchvaren {0},
Please select quantity on row {0},Vælg antal på række {0},
Please enter serial numbers for serialized item {0},Indtast serienumre for serienummeret {0},
Batch {0} already selected.,Batch {0} er allerede valgt.,
Please select a warehouse to get available quantities,Vælg et lager for at få tilgængelige mængder,
"For transfer from source, selected quantity cannot be greater than available quantity",For overførsel fra kilde kan den valgte mængde ikke være større end den tilgængelige mængde,
Cannot find Item with this Barcode,Kan ikke finde element med denne stregkode,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} er obligatorisk. Måske oprettes der ikke valutaudveksling for {1} til {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} har indsendt aktiver tilknyttet det. Du skal annullere aktiverne for at oprette køberetur.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,"Dette dokument kan ikke annulleres, da det er knyttet til det indsendte aktiv {0}. Annuller det for at fortsætte.",
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Række nr. {}: Serienr. {} Er allerede overført til en anden POS-faktura. Vælg gyldigt serienummer.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Række nr. {}: Serienumre. {} Er allerede blevet overført til en anden POS-faktura. Vælg gyldigt serienummer.,
Item Unavailable,Varen er ikke tilgængelig,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},"Række nr. {}: Serienr. {} Kan ikke returneres, da den ikke blev behandlet i original faktura {}",
Please set default Cash or Bank account in Mode of Payment {},Indstil standard kontanter eller bankkonto i betalingsmetode {},
Please set default Cash or Bank account in Mode of Payments {},Angiv standard kontanter eller bankkonto i betalingsmetode {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,"Sørg for, at {} kontoen er en balancekonto. Du kan ændre moderkontoen til en balancekonto eller vælge en anden konto.",
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,"Sørg for, at {} kontoen er en konto, der skal betales. Skift kontotype til Betales, eller vælg en anden konto.",
Row {}: Expense Head changed to {} ,Række {}: Omkostningshoved ændret til {},
because account {} is not linked to warehouse {} ,fordi konto {} ikke er knyttet til lager {},
or it is not the default inventory account,eller det er ikke standardlagerkontoen,
Expense Head Changed,Omkostningshoved ændret,
because expense is booked against this account in Purchase Receipt {},fordi udgift bogføres på denne konto i købskvittering {},
as no Purchase Receipt is created against Item {}. ,da der ikke oprettes nogen købskvittering mod varen {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,"Dette gøres for at håndtere bogføring af tilfælde, hvor købsmodtagelse oprettes efter købsfaktura",
Purchase Order Required for item {},Indkøbsordre påkrævet for vare {},
To submit the invoice without purchase order please set {} ,For at indsende fakturaen uden indkøbsordre skal du angive {},
as {} in {},som i {},
Mandatory Purchase Order,Obligatorisk indkøbsordre,
Purchase Receipt Required for item {},Købskvittering påkrævet for vare {},
To submit the invoice without purchase receipt please set {} ,For at indsende fakturaen uden købskvittering skal du angive {},
Mandatory Purchase Receipt,Obligatorisk købskvittering,
POS Profile {} does not belongs to company {},POS-profil {} tilhører ikke firma {},
User {} is disabled. Please select valid user/cashier,Bruger {} er deaktiveret. Vælg gyldig bruger / kasserer,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Række nr. {}: Originalfaktura {} af returfaktura {} er {}.,
Original invoice should be consolidated before or along with the return invoice.,Originalfaktura skal konsolideres før eller sammen med returfakturaen.,
You can add original invoice {} manually to proceed.,Du kan tilføje originalfaktura {} manuelt for at fortsætte.,
Please ensure {} account is a Balance Sheet account. ,"Sørg for, at {} kontoen er en balancekonto.",
You can change the parent account to a Balance Sheet account or select a different account.,Du kan ændre moderkontoen til en balancekonto eller vælge en anden konto.,
Please ensure {} account is a Receivable account. ,"Sørg for, at {} kontoen er en konto, der kan modtages.",
Change the account type to Receivable or select a different account.,"Skift kontotype til Modtagelig, eller vælg en anden konto.",
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},"{} kan ikke annulleres, da de optjente loyalitetspoint er blevet indløst. Annuller først {} Nej {}",
already exists,eksisterer allerede,
POS Closing Entry {} against {} between selected period,POS-afslutningspost {} mod {} mellem den valgte periode,
POS Invoice is {},POS-faktura er {},
POS Profile doesn't matches {},POS-profil matcher ikke {},
POS Invoice is not {},POS-faktura er ikke {},
POS Invoice isn't created by user {},POS-faktura oprettes ikke af brugeren {},
Row #{}: {},Række nr. {}: {},
Invalid POS Invoices,Ugyldige POS-fakturaer,
Please add the account to root level Company - {},Føj kontoen til rodniveau Virksomhed - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA",Under oprettelsen af en konto til Child Company {0} blev forældrekontoen {1} ikke fundet. Opret forældrekontoen i den tilsvarende COA,
Account Not Found,Konto ikke fundet,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.",Under oprettelsen af en konto til Child Company {0} blev forældrekontoen {1} fundet som en hovedkontokonto.,
Please convert the parent account in corresponding child company to a group account.,Konverter moderkontoen i det tilsvarende underordnede selskab til en gruppekonto.,
Invalid Parent Account,Ugyldig moderkonto,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.",Omdøbning er kun tilladt via moderselskabet {0} for at undgå uoverensstemmelse.,
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Hvis du {0} {1} mængder af varen {2}, anvendes ordningen {3} på varen.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Hvis du {0} {1} har værdi {2}, anvendes ordningen {3} på varen.",
"As the field {0} is enabled, the field {1} is mandatory.","Da feltet {0} er aktiveret, er feltet {1} obligatorisk.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Da feltet {0} er aktiveret, skal værdien af feltet {1} være mere end 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},"Kan ikke levere serienummer {0} af varen {1}, da den er forbeholdt fuldt udfyldt salgsordre {2}",
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","Salgsordre {0} har reservation for varen {1}, du kan kun levere reserveret {1} mod {0}.",
{0} Serial No {1} cannot be delivered,{0} Serienummer {1} kan ikke leveres,
Row {0}: Subcontracted Item is mandatory for the raw material {1},Række {0}: Vare i underentreprise er obligatorisk for råmaterialet {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Da der er tilstrækkelige råmaterialer, kræves der ikke materialeanmodning til lager {0}.",
" If you still want to proceed, please enable {0}.","Hvis du stadig vil fortsætte, skal du aktivere {0}.",
The item referenced by {0} - {1} is already invoiced,"Den vare, der henvises til af {0} - {1}, faktureres allerede",
Therapy Session overlaps with {0},Terapisession overlapper med {0},
Therapy Sessions Overlapping,Terapisessioner overlapper hinanden,
Therapy Plans,Terapiplaner,
"Item Code, warehouse, quantity are required on row {0}","Varekode, lager, antal kræves i række {0}",
Get Items from Material Requests against this Supplier,Få varer fra materialeanmodninger mod denne leverandør,
Enable European Access,Aktiver europæisk adgang,
Creating Purchase Order ...,Opretter indkøbsordre ...,
"Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Vælg en leverandør fra standardleverandørerne af nedenstående varer. Ved valg foretages en indkøbsordre kun mod varer, der tilhører den valgte leverandør.",
Row #{}: You must select {} serial numbers for item {}.,Række nr. {}: Du skal vælge {} serienumre for varen {}.,
