"""Customer Provided Item"" cannot be Purchase Item also","""Kundförsett objekt"" kan inte också vara köpobjekt",
"""Customer Provided Item"" cannot have Valuation Rate","""Kundförsett objekt"" kan inte ha värderingskurs",
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""Är anläggningstillgång"" kan inte avmarkeras då ett tillgångsregister finns mot objektet",
'Based On' and 'Group By' can not be same,"""Baserad på"" och ""Gruppera efter"" kan inte vara samma",
'Days Since Last Order' must be greater than or equal to zero,"""Dagar sedan senaste order"" måste vara större än eller lika med noll",
'Entries' cannot be empty,&#39;poster&#39; kan inte vara tomt,
'From Date' is required,&quot;Från datum&quot; krävs,
'From Date' must be after 'To Date',&quot;Från datum&quot; måste vara efter &quot;Till datum&quot;,
'Has Serial No' can not be 'Yes' for non-stock item,&quot;Har Löpnummer&quot; kan inte vara &quot;ja&quot; för icke Beställningsvara,
'Opening',&quot;Öppna&quot;,
'To Case No.' cannot be less than 'From Case No.',"""Till Ärende nr."" kan inte vara mindre än ""Från ärende nr""",
'To Date' is required,&quot;Till datum&quot; krävs,
'Total',&#39;Total&#39;,
'Update Stock' can not be checked because items are not delivered via {0},"""Uppdatera lager"" kan inte klaras av eftersom objekt inte levereras via {0}",
'Update Stock' cannot be checked for fixed asset sale,"""Uppdatera lager"" kan inte klaras av för försäljning av anläggningstillgångar",
1 exact match.,1 exakt matchning.,
90-Above,90-Högre,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,En kundgrupp finns redan med samma namn. Vänligen ändra kundens namn eller byt namn på kundgruppen,
A Default Service Level Agreement already exists.,Ett standardavtal om servicenivå finns redan.,
A Lead requires either a person's name or an organization's name,En ledare kräver antingen en persons namn eller en organisations namn,
A customer with the same name already exists,En kund med samma namn finns redan,
A question must have more than one options,En fråga måste ha mer än ett alternativ,
A qustion must have at least one correct options,En fråga måste ha åtminstone ett korrekt alternativ,
A4,A4,
API Endpoint,API slutpunkt,
API Key,API-nyckel,
Abbr can not be blank or space,Förkortning kan inte vara tomt eller mellanslag,
Abbreviation already used for another company,Förkortningen används redan för ett annat företag,
Abbreviation cannot have more than 5 characters,Förkortning kan inte ha mer än 5 tecken,
Abbreviation is mandatory,Förkortning är obligatorisk,
About the Company,Om företaget,
About your company,Om ditt företag,
Above,Ovan,
Academic Term,Akademisk - termin,
Academic Term: ,Akademisk - termin:,
Academic Year,Akademiskt år,
Academic Year: ,Akademisk - år:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Godkända + Avvisad Antal måste vara lika med mottagna kvantiteten för punkt {0},
Access Token,Tillträde token,
Accessable Value,Tillgängligt värde,
Account,konto,
Account Number,Kontonummer,
Account Number {0} already used in account {1},Kontonummer {0} som redan används i konto {1},
Account Pay Only,Endast konto Pay,
Account Type,Användartyp,
Account Type for {0} must be {1},Kontotyp för {0} måste vara {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Kontosaldo redan i Kredit,du är inte tillåten att ställa in ""Balans måste vara"" som ""Debet '",
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Kontosaldo redan i Debit, du är inte tillåten att ställa ""Balans måste vara"" som ""Kredit""",
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,Kontonummer för konto {0} är inte tillgängligt. <br> Ställ in din kontoplan korrekt.,
Account with child nodes cannot be converted to ledger,Konto med underordnade noder kan inte omvandlas till liggaren,
Account with child nodes cannot be set as ledger,Konto med underordnade noder kan inte ställas in som huvudbok,
Account with existing transaction can not be converted to group.,Konto med befintlig transaktioner kan inte omvandlas till grupp.,
Account with existing transaction can not be deleted,Konto med befintlig transaktioner kan inte tas bort,
Account with existing transaction cannot be converted to ledger,Konto med befintlig transaktioner kan inte omvandlas till liggaren,
Account {0} does not belong to company: {1},Kontot {0} tillhör inte företaget: {1},
Account {0} does not belongs to company {1},Kontot {0} till inte företaget {1},
Account {0} does not exist,Kontot {0} existerar inte,
Account {0} does not exists,Konto {0} existerar inte,
Account {0} does not match with Company {1} in Mode of Account: {2},Konto {0} matchar inte företaget {1} i Konto: {2},
Account {0} has been entered multiple times,Konto {0} har angetts flera gånger,
Account {0} is added in the child company {1},Konto {0} läggs till i barnföretaget {1},
Account {0} is frozen,Kontot {0} är fruset,
Account {0} is invalid. Account Currency must be {1},Konto {0} är ogiltig. Konto Valuta måste vara {1},
Account {0}: Parent account {1} can not be a ledger,Kontot {0}: Förälder kontot {1} kan inte vara en liggare,
Account {0}: Parent account {1} does not belong to company: {2},Konto {0}: Förälder konto {1} tillhör inte företaget: {2},
Account {0}: Parent account {1} does not exist,Konto {0}: Förälder konto {1} existerar inte,
Account {0}: You can not assign itself as parent account,Konto {0}: Du kan inte tilldela sig själv som förälder konto,
Account: {0} can only be updated via Stock Transactions,Konto: {0} kan endast uppdateras via aktietransaktioner,
Account: {0} with currency: {1} can not be selected,Konto: {0} med valuta: kan inte väljas {1},
Accountant,Revisor,
Accounting,Redovisning,
Accounting Entry for Asset,Redovisning för tillgång,
Accounting Entry for Stock,Kontering för lager,
Accounting Entry for {0}: {1} can only be made in currency: {2},Kontering för {0}: {1} kan endast göras i valuta: {2},
Accounting Ledger,Redovisning Ledger,
Accounting journal entries.,Redovisning journalanteckningar.,
Accounts,konton,
Accounts Manager,Account Manager,
Accounts Payable,Leverantörsreskontra,
Accounts Payable Summary,Leverantörsreskontra Sammanfattning,
Accounts Receivable,Kundreskontra,
Accounts Receivable Summary,Kundfordringar Sammanfattning,
Accounts User,Användare,
Accounts table cannot be blank.,Konton tabell kan inte vara tomt.,
Accumulated Depreciation,Ackumulerade avskrivningar,
Accumulated Depreciation Amount,Ackumulerade avskrivningar Belopp,
Accumulated Depreciation as on,Ackumulerade avskrivningar som på,
Accumulated Monthly,ackumulerade månads,
Accumulated Values,Ackumulerade värden,
Accumulated Values in Group Company,Ackumulerade värden i koncernföretaget,
Achieved ({}),Uppnått ({}),
Action,Åtgärd,
Action Initialised,Åtgärd initierad,
Actions,Åtgärder,
Active,Aktiv,
Activity Cost exists for Employee {0} against Activity Type - {1},Aktivitetskostnad existerar för anställd {0} mot aktivitetstyp - {1},
Activity Cost per Employee,Aktivitet Kostnad per anställd,
Activity Type,Aktivitetstyp,
Actual Cost,Verklig kostnad,
Actual Delivery Date,Faktiskt leveransdatum,
Actual Qty,Faktiska Antal,
Actual Qty is mandatory,Faktiska Antal är obligatorisk,
Actual Qty {0} / Waiting Qty {1},Faktiskt antal {0} / Vänta antal {1},
Actual Qty: Quantity available in the warehouse.,Faktisk antal: tillgängligt antal i lagret.,
Actual qty in stock,Faktisk antal i lager,
Actual type tax cannot be included in Item rate in row {0},Verklig typskatt kan inte ingå i produktomsättning i rad {0},
Add,Lägga till,
Add / Edit Prices,Lägg till / redigera priser,
Add Comment,Lägg till kommentar,
Add Customers,Lägg till kunder,
Add Employees,Lägg till anställda,
Add Item,Lägg till vara,
Add Items,Lägg produkter,
Add Leads,Lägg till Leads,
Add Multiple Tasks,Lägg till flera uppgifter,
Add Sales Partners,Lägg till försäljningspartners,
Add Serial No,Lägg till Serienr,
Add Students,Lägg till elever,
Add Suppliers,Lägg till leverantörer,
Add Time Slots,Lägg till tidsluckor,
Add Timesheets,Lägg tidrapporter,
Add Timeslots,Lägg till Timeslots,
Add Users to Marketplace,Lägg till användare på Marketplace,
Add a new address,Lägg till en ny adress,
Add cards or custom sections on homepage,Lägg till kort eller anpassade avsnitt på hemsidan,
Add more items or open full form,Lägga till fler objekt eller öppna fullständiga formen,
Add notes,Lägg till anteckningar,
Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Lägg till resten av din organisation som dina användare. Du kan också bjuda in Kunder till din portal genom att lägga till dem från Kontakter,
Add/Remove Recipients,Lägg till / ta bort mottagare,
Added,Inkom,
Added {0} users,Tillagt {0} användare,
Additional Salary Component Exists.,Det finns ytterligare lönekomponenter.,
Address,Adress,
Address Line 2,Adress Linje 2,
Address Name,Adressnamn,
Address Title,Adress Titel,
Address Type,Adresstyp,
Administrative Expenses,Administrativa kostnader,
Administrative Officer,Handläggare,
Administrator,Administratör,
Admission,Tillträde,
Admission and Enrollment,Antagning och registrering,
Admissions for {0},Antagning för {0},
Admit,Erkänna,
Admitted,medgav,
Advance Amount,Förskottsmängd,
Advance Payments,Förskottsbetalningar,
Advance account currency should be same as company currency {0},Förskottsvaluta ska vara samma som företagsvaluta {0},
Advance amount cannot be greater than {0} {1},Advance beloppet kan inte vara större än {0} {1},
Advertising,Reklam,
Aerospace,Aerospace,
Against,Mot,
Against Account,Mot Konto,
Against Journal Entry {0} does not have any unmatched {1} entry,Mot Journal anteckning {0} inte har någon matchat {1} inlägg,
Against Journal Entry {0} is already adjusted against some other voucher,Mot Journal anteckning{0} är redan anpassat mot någon annan kupong,
Against Supplier Invoice {0} dated {1},Mot leverantörsfakturor {0} den {1},
Against Voucher,Mot Kupong,
Against Voucher Type,Mot Kupongtyp,
Age,Ålder,
Age (Days),Ålder (dagar),
Ageing Based On,Åldring Baserad på,
Ageing Range 1,Åldringsräckvidd 1,
Ageing Range 2,Åldringsräckvidd 2,
Ageing Range 3,Åldringsräckvidd 3,
Agriculture,Jordbruk,
Agriculture (beta),Jordbruk (beta),
Airline,Flygbolag,
All Accounts,Alla konton,
All Addresses.,Alla adresser.,
All Assessment Groups,Alla bedömningsgrupper,
All BOMs,alla stycklistor,
All Contacts.,Alla kontakter.,
All Customer Groups,Alla kundgrupper,
All Day,Hela Dagen,
All Departments,Alla avdelningar,
All Healthcare Service Units,Alla hälsovårdstjänster,
All Item Groups,Alla artikelgrupper,
All Products,Alla produkter,
All Products or Services.,Alla produkter eller tjänster.,
All Student Admissions,Alla Student Antagning,
All Supplier Groups,Alla leverantörsgrupper,
All Supplier scorecards.,Alla leverantörs scorecards.,
All Territories,Alla territorierna,
All Warehouses,alla Lager,
All communications including and above this shall be moved into the new Issue,All kommunikation inklusive och ovanför ska flyttas till den nya Issue,
All items have already been transferred for this Work Order.,Alla objekt har redan överförts för denna arbetsorder.,
All other ITC,Alla andra ITC,
All the mandatory Task for employee creation hasn't been done yet.,All obligatorisk uppgift för skapande av arbetstagare har ännu inte gjorts.,
Allocate Payment Amount,Tilldela Betalningsbelopp,
Allocated Amount,Avsatt mängd,
Allocating leaves...,Tilldela löv ...,
Already record exists for the item {0},Det finns redan en post för objektet {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Ange redan standard i posprofil {0} för användare {1}, vänligt inaktiverad standard",
Alternate Item,Alternativ artikel,
Alternative item must not be same as item code,Alternativet får inte vara samma som artikelnumret,
Amended From,Ändrat Från,
Amount,Mängd,
Amount After Depreciation,Belopp efter avskrivningar,
Amount of Integrated Tax,Belopp på integrerad skatt,
Amount of TDS Deducted,Beloppet av TDS dras av,
Amount should not be less than zero.,Beloppet bör inte vara mindre än noll.,
Amount to Bill,Belopp till fakturera,
Amount {0} {1} against {2} {3},Belopp {0} {1} mot {2} {3},
Amount {0} {1} deducted against {2},Belopp {0} {1} avräknas mot {2},
Amount {0} {1} transferred from {2} to {3},Belopp {0} {1} överförs från {2} till {3},
Amount {0} {1} {2} {3},Mängden {0} {1} {2} {3},
Amt,Ant,
"An Item Group exists with same name, please change the item name or rename the item group","Ett varugrupp finns med samma namn, ändra objektets namn eller byta namn på varugrupp",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,En termin med detta &quot;Academic Year &#39;{0} och&quot; Term Name &quot;{1} finns redan. Ändra dessa poster och försök igen.,
An error occurred during the update process,Ett fel uppstod under uppdateringsprocessen,
"An item exists with same name ({0}), please change the item group name or rename the item","Ett objekt finns med samma namn ({0}), ändra objektets varugrupp eller byt namn på objektet",
Analyst,Analytiker,
Annual Billing: {0},Årlig Billing: {0},
Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},En annan budgetpost &quot;{0}&quot; finns redan mot {1} &quot;{2}&quot; och konto &quot;{3}&quot; för verksamhetsåret {4},
Another Period Closing Entry {0} has been made after {1},En annan period Utgående anteckning {0} har gjorts efter {1},
Another Sales Person {0} exists with the same Employee id,En annan säljare {0} finns med samma anställningsid,
Antibiotic,Antibiotikum,
Apparel & Accessories,Kläder &amp; tillbehör,
Applicable For,Tillämplig för,
"Applicable if the company is SpA, SApA or SRL","Tillämpligt om företaget är SpA, SApA eller SRL",
Applicable if the company is a limited liability company,Tillämpligt om företaget är ett aktiebolag,
Applicable if the company is an Individual or a Proprietorship,Tillämpligt om företaget är en individ eller ett innehav,
Application of Funds (Assets),Tillämpning av medel (tillgångar),
Applied,Applicerad,
Appointment Confirmation,Avtalsbekräftelse,
Appointment Duration (mins),Utnämningstid (min),
Appointment Type,Avtalstyp,
Appointment {0} and Sales Invoice {1} cancelled,Avtal {0} och Försäljningsfaktura {1} avbröts,
Appointments and Encounters,Möten och möten,
Appointments and Patient Encounters,Möten och patientmöten,
Appraisal {0} created for Employee {1} in the given date range,Bedömning {0} skapades för anställd {1} på visst datumintervall,
Approving Role cannot be same as role the rule is Applicable To,Godkännande Roll kan inte vara samma som roll regel är tillämplig på,
Approving User cannot be same as user the rule is Applicable To,Godkända användare kan inte vara samma användare som regeln är tillämpad på,
"Apps using current key won't be able to access, are you sure?","Appar som använder nuvarande nyckel kommer inte att kunna komma åt, är du säker?",
Are you sure you want to cancel this appointment?,Är du säker på att du vill avbryta detta möte?,
Arrear,RESTERANDE SKULD,
As Examiner,Som granskare,
As On Date,Som på Date,
As Supervisor,Som tillsynsman,
As per rules 42 & 43 of CGST Rules,Enligt reglerna 42 och 43 i CGST-reglerna,
As per section 17(5),Enligt avsnitt 17 (5),
Assessment,Värdering,
Assessment Criteria,Bedömningskriterier,
Assessment Group,bedömning gruppen,
Assessment Group: ,Bedömningsgrupp:,
Assessment Plan,Bedömningsplan,
Assessment Plan Name,Bedömningsplan namn,
Assessment Report,Utvärderingsrapport,
Assessment Reports,Bedömningsrapporter,
Assessment Result,bedömning Resultat,
Assessment Result record {0} already exists.,Bedömningsresultatrekord {0} existerar redan.,
Asset,Tillgång,
Asset Category,tillgångsslag,
Asset Category is mandatory for Fixed Asset item,Asset Kategori är obligatorisk för fast tillgångsposten,
Asset Maintenance,Asset Maintenance,
Asset Movement,Asset Rörelse,
Asset Movement record {0} created,Asset Rörelse rekord {0} skapades,
Asset Name,tillgångs Namn,
Asset Received But Not Billed,Tillgång mottagen men ej fakturerad,
Asset Value Adjustment,Värdetillgång för tillgångar,
"Asset cannot be cancelled, as it is already {0}","Asset kan inte avbrytas, eftersom det redan är {0}",
Asset scrapped via Journal Entry {0},Asset skrotas via Journal Entry {0},
"Asset {0} cannot be scrapped, as it is already {1}","Tillgångs {0} kan inte skrotas, eftersom det redan är {1}",
Asset {0} does not belong to company {1},Asset {0} inte tillhör företaget {1},
Asset {0} must be submitted,Asset {0} måste lämnas in,
Assets,Tillgångar,
Assign To,Tilldela till,
Associate,Associate,
At least one mode of payment is required for POS invoice.,Minst ett läge av betalning krävs för POS faktura.,
Atleast one item should be entered with negative quantity in return document,Minst ett objekt ska anges med negativt kvantitet i returdokument,
Atleast one of the Selling or Buying must be selected,Minst en av de sålda eller köpta måste väljas,
Atleast one warehouse is mandatory,Minst ett lager är obligatorisk,
Attach Logo,Fäst Logo,
Attachment,Bifogning,
Attachments,Bilagor,
Attendance can not be marked for future dates,Närvaro kan inte markeras för framtida datum,
Attendance date can not be less than employee's joining date,Närvaro datum kan inte vara mindre än arbetstagarens Inträdesdatum,
Attendance for employee {0} is already marked,Närvaro för anställd {0} är redan märkt,
Attendance has been marked successfully.,Närvaro har markerats med framgång.,
Attendance not submitted for {0} as {1} on leave.,Närvaro som inte lämnats in för {0} som {1} på ledighet.,
Attribute table is mandatory,Attributtabell är obligatoriskt,
Attribute {0} selected multiple times in Attributes Table,Attribut {0} valda flera gånger i attribut Tabell,
Authorized Signatory,Firmatecknare,
Auto Material Requests Generated,Automaterial Framställningar Generated,
Auto Repeat,Auto Repeat,
Auto repeat document updated,Automatisk upprepa dokument uppdaterad,
Automotive,Fordon,
Available,Tillgängligt,
Available Qty,Tillgång Antal,
Available Selling,Tillgänglig försäljning,
Available for use date is required,Tillgängligt för användning datum krävs,
Available slots,Tillgängliga luckor,
Available {0},Tillgängliga {0},
Available-for-use Date should be after purchase date,Tillgänglig för användning Datum ska vara efter inköpsdatum,
Average Age,Medelålder,
Average Rate,Genomsnitt,
Avg Daily Outgoing,Avg Daglig Utgång,
Avg. Buying Price List Rate,Avg. Prislista för köpprislista,
Avg. Selling Price List Rate,Avg. Säljes prislista pris,
Avg. Selling Rate,Avg. Säljkurs,
BOM,BOM,
BOM Browser,BOM läsare,
BOM No,BOM nr,
BOM Rate,BOM betyg,
BOM Stock Report,BOM Stock Report,
BOM and Manufacturing Quantity are required,BOM och tillverkningskvantitet krävs,
BOM does not contain any stock item,BOM inte innehåller någon lagervara,
BOM {0} does not belong to Item {1},BOM {0} tillhör inte föremål {1},
BOM {0} must be active,BOM {0} måste vara aktiv,
BOM {0} must be submitted,BOM {0} måste lämnas in,
Balance,Balans,
Balance (Dr - Cr),Balans (Dr - Cr),
Balance ({0}),Balans ({0}),
Balance Qty,Balans antal,
Balance Sheet,Balansräkning,
Balance Value,Balans Värde,
Balance for Account {0} must always be {1},Saldo konto {0} måste alltid vara {1},
Bank,Bank,
Bank Account,Bankkonto,
Bank Accounts,Bankkonton,
Bank Draft,Bankväxel,
Bank Name,Bank namn,
Bank Overdraft Account,Checkräknings konto,
Bank Reconciliation,Bankavstämning,
Bank Reconciliation Statement,Bank Avstämning Uttalande,
Bank Statement,Bankredovisning,
Bank Statement Settings,Bankdeklarationsinställningar,
Bank Statement balance as per General Ledger,Kontoutdrag balans per huvudbok,
Bank account cannot be named as {0},Bankkontot kan inte namnges som {0},
Bank/Cash transactions against party or for internal transfer,Bank / Cash transaktioner mot partiet eller för intern överföring,
Banking,Bank,
Banking and Payments,Bank- och betalnings,
Barcode {0} already used in Item {1},Streckkod {0} används redan i punkt {1},
Barcode {0} is not a valid {1} code,Streckkoden {0} är inte en giltig {1} kod,
Base URL,Basadress,
Based On,Baserat På,
Based On Payment Terms,Baserat på Betalningsvillkor,
Batch,Batch,
Batch Entries,Batchposter,
Batch ID is mandatory,Batch-ID är obligatoriskt,
Batch Inventory,Sats Inventory,
Batch Name,batch Namn,
Batch No,Batch nr,
Batch number is mandatory for Item {0},Batchnummer är obligatoriskt för punkt {0},
Batch {0} of Item {1} has expired.,Batch {0} av Punkt {1} har löpt ut.,
Batch {0} of Item {1} is disabled.,Batch {0} av Objekt {1} är inaktiverat.,
Batch: ,Sats:,
Batches,partier,
Become a Seller,Bli en säljare,
Bill,Räkningen,
Bill Date,Faktureringsdatum,
Bill No,Fakturanr,
Bill of Materials,Bill of Materials,
Bill of Materials (BOM),Bill of Materials (BOM),
Billable Hours,Fakturerbara timmar,
Billed,Fakturerad,
Billed Amount,Fakturerat antal,
Billing Address,Fakturaadress,
Billing Address is same as Shipping Address,Faktureringsadress är samma som fraktadress,
Billing Amount,Fakturerings Mängd,
Billing Status,Faktureringsstatus,
Billing currency must be equal to either default company's currency or party account currency,Faktureringsvaluta måste vara lika med antingen standardbolagets valuta eller parti konto konto valuta,
Bills raised by Suppliers.,Räkningar som framförts av leverantörer.,
Bills raised to Customers.,Fakturor till kunder.,
Biotechnology,Biotechnology,
Black,Svart,
Blanket Orders from Costumers.,Filtorder från kunder.,
Block Invoice,Blockfaktura,
Boms,stycklistor,
Both Trial Period Start Date and Trial Period End Date must be set,Både provperiodens startdatum och provperiodens slutdatum måste ställas in,
Both Warehouse must belong to same Company,Både Lagren måste tillhöra samma företag,
Branch,Bransch,
Broadcasting,Sändning,
Brokerage,Brokerage,
Browse BOM,Bläddra BOM,
Budget Against,Budget mot,
Budget List,Budgetlista,
Budget Variance Report,Budget Variationsrapport,
Budget cannot be assigned against Group Account {0},Budget kan inte tilldelas mot gruppkonto {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","Budget kan inte tilldelas mot {0}, eftersom det inte är en intäkt eller kostnad konto",
Buildings,Byggnader,
Bundle items at time of sale.,Bundlade poster vid tidpunkten för försäljning.,
Business Development Manager,Business Development Manager,
Buy,köpa,
Buying,Köpa,
Buying Amount,Köpa mängd,
Buying Price List,Köpa prislista,
Buying Rate,Köpkurs,
"Buying must be checked, if Applicable For is selected as {0}","Köp måste anges, i förekommande fall väljs som {0}",
By {0},Av {0},
Bypass credit check at Sales Order ,Bypass kreditkontroll vid Försäljningsorder,
C-Form records,C-Form arkiv,
C-form is not applicable for Invoice: {0},C-formen är inte tillämplig för faktura: {0},
CEO,vd,
CESS Amount,CESS-belopp,
CGST Amount,CGST-belopp,
CRM,CRM,
CWIP Account,CWIP-konto,
Calculated Bank Statement balance,Beräknat Kontoutdrag balans,
Campaign,Kampanj,
Can be approved by {0},Kan godkännas av {0},
"Can not filter based on Account, if grouped by Account","Kan inte filtrera baserat på konto, om grupperad efter konto",
"Can not filter based on Voucher No, if grouped by Voucher",Kan inte filtrera baserat på kupong nr om grupperad efter kupong,
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Det går inte att markera Inpatient Record Discharged, det finns Fakturerade Fakturor {0}",
Can only make payment against unbilled {0},Kan bara göra betalning mot ofakturerade {0},
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Kan hänvisa till rad endast om avgiften är ""På föregående v Belopp"" eller ""Föregående rad Total""",
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","Kan inte ändra värderingsmetoden, eftersom det finns transaktioner mot vissa poster som inte har egen värderingsmetod",
Can't create standard criteria. Please rename the criteria,Kan inte skapa standardkriterier. Vänligen byt namn på kriterierna,
Cancel,Avbryt,
Cancel Material Visit {0} before cancelling this Warranty Claim,Avbryt Material {0} innan du avbryter denna garantianspråk,
Cancel Material Visits {0} before cancelling this Maintenance Visit,Avbryt Material {0} innan du avbryter detta Underhållsbesök,
Cancel Subscription,Avbryt prenumeration,
Cancel the journal entry {0} first,Avbryt journalposten {0} först,
Canceled,Avbokad,
"Cannot Submit, Employees left to mark attendance","Kan inte lämna in, Anställda kvar för att markera närvaro",
Cannot be a fixed asset item as Stock Ledger is created.,Kan inte vara en anläggningstillgång när lagerbokföringen är skapad.,
Cannot cancel because submitted Stock Entry {0} exists,Det går inte att avbryta eftersom lämnad Lagernotering {0} existerar,
Cannot cancel transaction for Completed Work Order.,Kan inte avbryta transaktionen för slutförd arbetsorder.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},Kan inte avbryta {0} {1} eftersom serienummer {2} inte hör till lagret {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,Kan inte ändra attribut efter aktiehandel. Skapa ett nytt objekt och överför lagret till det nya objektet,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Det går inte att ändra räkenskapsårets Startdatum och Räkenskapsårets Slutdatum när verksamhetsåret sparas.,
Cannot change Service Stop Date for item in row {0},Kan inte ändra servicestoppdatum för objekt i rad {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,Kan inte ändra Variantegenskaper efter aktiehandel. Du måste skapa ett nytt objekt för att göra detta.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Det går inte att ändra bolagets standardvaluta, eftersom det redan finns transaktioner. Transaktioner måste avbokas att ändra valuta.",
Cannot change status as student {0} is linked with student application {1},Det går inte att ändra status som studerande {0} är kopplad med student ansökan {1},
Cannot convert Cost Center to ledger as it has child nodes,Det går inte att konvertera kostnadsställe till huvudbok då den har underordnade noder,
Cannot covert to Group because Account Type is selected.,Det går inte att konvertera till koncernen eftersom Kontotyp valts.,
Cannot create Retention Bonus for left Employees,Kan inte skapa kvarhållningsbonus för kvarvarande anställda,
Cannot create a Delivery Trip from Draft documents.,Det går inte att skapa en leveransresa från utkast till dokument.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,Det går inte att inaktivera eller avbryta BOM eftersom det är kopplat till andra stycklistor,
"Cannot declare as lost, because Quotation has been made.","Det går inte att ange som förlorad, eftersom Offert har gjorts.",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',"Det går inte att dra bort när kategorin är angedd ""Värdering"" eller ""Värdering och Total""",
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',Det går inte att dra när kategori är för &quot;Värdering&quot; eller &quot;Vaulation och Total&quot;,
"Cannot delete Serial No {0}, as it is used in stock transactions","Kan inte ta bort Löpnummer {0}, eftersom det används i aktietransaktioner",
Cannot enroll more than {0} students for this student group.,Det går inte att registrera mer än {0} studenter för denna elevgrupp.,
Cannot produce more Item {0} than Sales Order quantity {1},Det går inte att producera mer artiklar {0} än kundorderns mängd {1},
Cannot promote Employee with status Left,Kan inte marknadsföra Medarbetare med status Vänster,
Cannot refer row number greater than or equal to current row number for this Charge type,Det går inte att hänvisa till radnr större än eller lika med aktuell rad nummer för denna avgiftstyp,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,"Det går inte att välja avgiftstyp som ""På föregående v Belopp"" eller ""På föregående v Total"" för första raden",
Cannot set as Lost as Sales Order is made.,Kan inte ställa in då Förlorad kundorder är gjord.,
Cannot set authorization on basis of Discount for {0},Det går inte att ställa in tillstånd på grund av rabatt för {0},
Cannot set multiple Item Defaults for a company.,Kan inte ställa in flera standardinställningar för ett företag.,
Cannot set quantity less than delivered quantity,Kan inte ställa in kvantitet mindre än levererad kvantitet,
Cannot set quantity less than received quantity,Kan inte ställa in kvantitet mindre än mottagen kvantitet,
Cannot set the field <b>{0}</b> for copying in variants,Det går inte att ställa in fältet <b>{0}</b> för kopiering i varianter,
Cannot transfer Employee with status Left,Kan inte överföra Medarbetare med status Vänster,
Cannot {0} {1} {2} without any negative outstanding invoice,Kan inte {0} {1} {2} utan någon negativ enastående faktura,
Capital Equipments,Kapital Utrustning,
Capital Stock,Kapital Lager,
Capital Work in Progress,Kapitalarbete pågår,
Cart,Kundvagn,
Cart is Empty,Kundvagnen är tom,
Case No(s) already in use. Try from Case No {0},Ärendenr är redani bruk. Försök från ärende nr {0},
Cash,Kontanter,
Cash Flow Statement,Kassaflödesanalys,
Cash Flow from Financing,Kassaflöde från finansiering,
Cash Flow from Investing,Kassaflöde från investeringsverksamheten,
Cash Flow from Operations,Kassaflöde från rörelsen,
Cash In Hand,Kontant i hand,
Cash or Bank Account is mandatory for making payment entry,Kontant eller bankkonto är obligatoriskt för utbetalningensposten,
Cashier Closing,Kassat stängning,
Category,Kategori,
Category Name,Kategorinamn,
Caution,Varning,
Central Tax,Centralskatt,
Certification,certifiering,
Cess,Cess,
Change Amount,Ändra Mängd,
Change Item Code,Byt produktkod,
Change Release Date,Ändra Utgivningsdatum,
Change Template Code,Ändra mallkod,
Changing Customer Group for the selected Customer is not allowed.,Ändring av kundgrupp för vald kund är inte tillåtet.,
Chapter,Kapitel,
Chapter information.,Kapitelinformation.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,"Avgift av typ ""faktiska"" i raden {0} kan inte ingå i artikelomsättningen",
Chargeble,chargeble,
Charges are updated in Purchase Receipt against each item,Avgifter uppdateras i inköpskvitto för varje post,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Avgifter kommer att fördelas proportionellt baserad på produktantal eller belopp, enligt ditt val",
Chart of Cost Centers,Kontoplan på Kostnadsställen,
Check all,Kontrollera alla,
Checkout,Checka ut,
Chemical,Kemisk,
Cheque,Check,
Cheque/Reference No,Check / referensnummer,
Cheques Required,Kontroller krävs,
Cheques and Deposits incorrectly cleared,Checkar och Insättningar rensas felaktigt,
Child Task exists for this Task. You can not delete this Task.,Barnuppgift finns för denna uppgift. Du kan inte ta bort denna uppgift.,
Child nodes can be only created under 'Group' type nodes,Underordnade noder kan endast skapas under &quot;grupp&quot; typ noder,
Child warehouse exists for this warehouse. You can not delete this warehouse.,Barnlager existerar för det här lagret. Du kan inte ta bort det här lagret.,
Circular Reference Error,Cirkelreferens fel,
City,Stad,
City/Town,Stad / Town,
Clay,Lera,
Clear filters,Rensa filter,
Clear values,Tydliga värden,
Clearance Date,Clearance Datum,
Clearance Date not mentioned,Utförsäljningsdatum inte nämnt,
Clearance Date updated,Clearance Datum uppdateras,
Client,Klient,
Client ID,Klient ID,
Client Secret,Kundhemlighet,
Clinical Procedure,Klinisk procedur,
Clinical Procedure Template,Klinisk procedurmall,
Close Balance Sheet and book Profit or Loss.,Stäng balansräkning och bokföringsmässig vinst eller förlust.,
Close Loan,Stäng lån,
Close the POS,Stäng POS,
Closed,Stängt,
Closed order cannot be cancelled. Unclose to cancel.,Sluten ordning kan inte avbrytas. ÖPPNA för att avbryta.,
Closing (Cr),Closing (Cr),
Closing (Dr),Closing (Dr),
Closing (Opening + Total),Stängning (Öppning + Totalt),
Closing Account {0} must be of type Liability / Equity,Utgående konto {0} måste vara av typen Ansvar / Equity,
Closing Balance,Avslutande balans,
Code,Kod,
Collapse All,Kollapsa alla,
Color,Färg,
Colour,Färg,
Combined invoice portion must equal 100%,Kombinerad fakturahandel måste vara lika med 100%,
Commercial,Kommersiell,
Commission,Kommissionen,
Commission Rate %,Kommissionens skattesats%,
Commission on Sales,Försäljningsprovision,
Commission rate cannot be greater than 100,Provisionshastighet kan inte vara större än 100,
Community Forum,Community Forum,
Company (not Customer or Supplier) master.,Företag (inte kund eller leverantör) ledare.,
Company Abbreviation,Företagetsförkortning,
Company Abbreviation cannot have more than 5 characters,Företagets förkortning får inte ha mer än 5 tecken,
Company Name,Företagsnamn,
Company Name cannot be Company,Företagsnamn kan inte vara Företag,
Company currencies of both the companies should match for Inter Company Transactions.,Bolagets valutor för båda företagen ska matcha för Inter Company Transactions.,
Company is manadatory for company account,Företaget är manadatoriskt för företagskonto,
Company name not same,Företagets namn är inte samma,
Company {0} does not exist,existerar inte företag {0},
Compensatory leave request days not in valid holidays,Begäran om kompensationsledighet gäller inte i giltiga helgdagar,
Complaint,Klagomål,
Completion Date,Slutförande Datum,
Computer,Dator,
Condition,Tillstånd,
Configure,konfigurera,
Configure {0},Konfigurera {0},
Confirmed orders from Customers.,Bekräftade ordrar från kunder.,
Connect Amazon with ERPNext,Anslut Amazon med ERPNext,
Connect Shopify with ERPNext,Anslut Shopify med ERPNext,
Connect to Quickbooks,Anslut till Quickbooks,
Connected to QuickBooks,Ansluten till QuickBooks,
Connecting to QuickBooks,Anslutning till QuickBooks,
Consultation,Samråd,
Consultations,samråd,
Consulting,Konsultering,
Consumable,Förbrukningsartiklar,
Consumed,Förbrukat,
Consumed Amount,Förbrukad mängd,
Consumed Qty,Förbrukad Antal,
Consumer Products,Konsumentprodukter,
Contact,Kontakt,
Contact Us,Kontakta oss,
Content,Innehåll,
Content Masters,Innehåll Masters,
Content Type,Typ av innehåll,
Continue Configuration,Fortsätt konfigurationen,
Contract,Kontrakt,
Contract End Date must be greater than Date of Joining,Kontraktets Slutdatum måste vara större än Datum för inträde,
Contribution %,Bidrag%,
Contribution Amount,Bidragsbelopp,
Conversion factor for default Unit of Measure must be 1 in row {0},Omvandlingsfaktor för standardmåttenhet måste vara en i raden {0},
Conversion rate cannot be 0 or 1,Konverteringskurs kan inte vara 0 eller 1,
Convert to Group,Konvertera till gruppen,
Convert to Non-Group,Konvertera till icke-gruppen,
Cosmetics,kosmetika,
Cost Center,Kostnadscenter,
Cost Center Number,Kostnadscentralnummer,
Cost Center and Budgeting,Kostnadscentrum och budgetering,
Cost Center is required in row {0} in Taxes table for type {1},Kostnadsställe krävs rad {0} i skatte tabellen för typ {1},
Cost Center with existing transactions can not be converted to group,Kostnadsställe med befintliga transaktioner kan inte omvandlas till grupp,
Cost Center with existing transactions can not be converted to ledger,Kostnadsställe med befintliga transaktioner kan inte omvandlas till liggaren,
Cost Centers,Kostnadsställen,
Cost Updated,Kostnad Uppdaterad,
Cost as on,Kostnad som på,
Cost of Delivered Items,Kostnad levererat gods,
Cost of Goods Sold,Kostnad för sålda varor,
Cost of Issued Items,Kostnad för utfärdade artiklar,
Cost of New Purchase,Kostnader för nya inköp,
Cost of Purchased Items,Kostnad för köpta varor,
Cost of Scrapped Asset,Kostnad för skrotas Asset,
Cost of Sold Asset,Kostnader för sålda Asset,
Cost of various activities,Kostnader för olika aktiviteter,
"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again","Kunde inte skapa kreditnota automatiskt, var god och avmarkera &quot;Issue Credit Note&quot; och skicka igen",
Could not generate Secret,Kunde inte generera hemlighet,
Could not retrieve information for {0}.,Det gick inte att hämta information för {0}.,
Could not solve criteria score function for {0}. Make sure the formula is valid.,Det gick inte att lösa kriterierna för funktionen {0}. Se till att formeln är giltig.,
Could not solve weighted score function. Make sure the formula is valid.,Kunde inte lösa viktad poängfunktion. Se till att formeln är giltig.,
Could not submit some Salary Slips,Kunde inte skicka in några löneskalor,
"Could not update stock, invoice contains drop shipping item.","Det gick inte att uppdatera lager, faktura innehåller släppa sjöfarten objekt.",
Country wise default Address Templates,Landsvis standard adressmallar,
Course Code: ,Kurskod:,
Course Enrollment {0} does not exists,Kursregistrering {0} finns inte,
Course Schedule,Kursschema,
Course: ,Kurs:,
Cr,cr,
Create,Skapa,
Create BOM,Skapa BOM,
Create Delivery Trip,Skapa leveransresa,
Create Employee,Skapa anställd,
Create Employee Records,Skapa anställda Records,
"Create Employee records to manage leaves, expense claims and payroll","Skapa anställda register för att hantera löv, räkningar och löner",
Create Fee Schedule,Skapa avgiftsschema,
Create Fees,Skapa avgifter,
Create Inter Company Journal Entry,Skapa intresse för företagets dagbok,
Create Invoice,Skapa faktura,
Create Invoices,Skapa fakturor,
Create Job Card,Skapa jobbkort,
Create Journal Entry,Skapa journalpost,
Create Lead,Skapa bly,
Create Leads,Skapa Leads,
Create Maintenance Visit,Skapa underhållsbesök,
Create Material Request,Skapa materialförfrågan,
Create Multiple,Skapa flera,
Create Opening Sales and Purchase Invoices,Skapa öppningsförsäljnings- och köpfakturor,
Create Payment Entries,Skapa betalningsuppgifter,
Create Payment Entry,Skapa betalningsinmatning,
Create Print Format,Skapa utskriftsformat,
Create Purchase Order,Skapa inköpsorder,
Create Purchase Orders,Skapa inköpsorder,
Create Quotation,Skapa offert,
Create Sales Invoice,Skapa försäljningsfaktura,
Create Sales Order,Skapa försäljningsorder,
Create Sales Orders to help you plan your work and deliver on-time,Skapa försäljningsorder för att hjälpa dig planera ditt arbete och leverera i tid,
Create Sample Retention Stock Entry,Skapa provbehållningsinmatning,
Create Student,Skapa student,
Create Student Batch,Skapa studentbatch,
Create Student Groups,Skapa studentgrupper,
Create Supplier Quotation,Skapa leverantörsoffert,
Create Tax Template,Skapa skattemall,
Create Timesheet,Skapa tidblad,
Create User,Skapa användare,
Create Users,Skapa användare,
Create Variant,Skapa variant,
Create Variants,Skapa Varianter,
"Create and manage daily, weekly and monthly email digests.","Skapa och hantera dagliga, vecko- och månads epostflöden.",
Create customer quotes,Skapa kund citat,
Create rules to restrict transactions based on values.,Skapa regler för att begränsa transaktioner som grundar sig på värderingar.,
Created {0} scorecards for {1} between: ,Skapade {0} scorecards för {1} mellan:,
Creating Company and Importing Chart of Accounts,Skapa företag och importera kontot,
Creating Fees,Skapa avgifter,
Creating student groups,Skapa studentgrupper,
Creating {0} Invoice,Skapa {0} faktura,
Credit,Kredit,
Credit ({0}),Kredit ({0}),
Credit Account,KUNDKONTO,
Credit Balance,Tillgodohavande,
Credit Card,Kreditkort,
Credit Days cannot be a negative number,Kreditdagar kan inte vara ett negativt tal,
Credit Limit,Kreditgräns,
Credit Note,Kreditnota,
Credit Note Amount,Kreditnotbelopp,
Credit Note Issued,Kreditnota utfärdad,
Credit Note {0} has been created automatically,Kreditnot {0} har skapats automatiskt,
Credit limit has been crossed for customer {0} ({1}/{2}),Kreditgränsen har överskridits för kund {0} ({1} / {2}),
Creditors,borgenärer,
Criteria weights must add up to 100%,Kriterievikter måste lägga till upp till 100%,
Crop Cycle,Beskärningscykel,
Crops & Lands,Grödor &amp; Lands,
Currency Exchange must be applicable for Buying or for Selling.,Valutaväxling måste vara tillämplig för köp eller försäljning.,
Currency can not be changed after making entries using some other currency,Valuta kan inte ändras efter att ha gjort poster med någon annan valuta,
Currency exchange rate master.,Valutakurs mästare.,
Currency for {0} must be {1},Valuta för {0} måste vara {1},
Currency is required for Price List {0},Valuta krävs för prislista {0},
Currency of the Closing Account must be {0},Valuta avslutnings Hänsyn måste vara {0},
Currency of the price list {0} must be {1} or {2},Valutan i prislistan {0} måste vara {1} eller {2},
Currency should be same as Price List Currency: {0},Valuta bör vara samma som Prislista Valuta: {0},
Current Assets,Nuvarande tillgångar,
Current BOM and New BOM can not be same,Aktuell BOM och Nya BOM kan inte vara samma,
Current Liabilities,Nuvarande åtaganden,
Current Qty,Aktuellt Antal,
Current invoice {0} is missing,Nuvarande faktura {0} saknas,
Custom HTML,Anpassad HTML,
Custom?,Anpassad?,
Customer,Kunden,
Customer Addresses And Contacts,Kund adresser och kontakter,
Customer Contact,Kundkontakt,
Customer Database.,Kunddatabas.,
Customer Group,kundgrupp,
Customer LPO,Kund LPO,
Customer LPO No.,Kund LPO nr,
Customer Name,Kundnamn,
Customer POS Id,Kundens POS-ID,
Customer Service,Kundtjänst,
Customer and Supplier,Kunder och leverantör,
Customer is required,Kunden är obligatoriskt,
Customer isn't enrolled in any Loyalty Program,Kunden är inte inskriven i något lojalitetsprogram,
Customer required for 'Customerwise Discount',"Kunder krävs för ""Kundrabatt""",
Customer {0} does not belong to project {1},Kund {0} tillhör inte projektet {1},
Customer {0} is created.,Kund {0} är skapad.,
Customers in Queue,Kunder i kö,
Customize Homepage Sections,Anpassa hemsektioner,
Customizing Forms,Anpassa formulären,
Daily Project Summary for {0},Daglig projektöversikt för {0},
Daily Reminders,Dagliga påminnelser,
Data Import and Export,Data Import och export,
Data Import and Settings,Dataimport och inställningar,
Database of potential customers.,Databas för potentiella kunder.,
Date Format,Datumformat,
Date Of Retirement must be greater than Date of Joining,Datum för pensionering måste vara större än Datum för att delta,
Date of Birth,Födelsedatum,
Date of Birth cannot be greater than today.,Födelsedatum kan inte vara längre fram än i dag.,
Date of Commencement should be greater than Date of Incorporation,Datum för inledande bör vara större än datum för införlivande,
Date of Joining,Datum för att delta,
Date of Joining must be greater than Date of Birth,Datum för att delta måste vara större än Födelsedatum,
Date of Transaction,Datum för transaktion,
Day,Dag,
Debit,Debit-,
Debit ({0}),Debit ({0}),
Debit Account,Bankkortkonto,
Debit Note,Debetnota,
Debit Note Amount,Debiteringsnotering Belopp,
Debit Note Issued,Debetnota utfärdad,
Debit To is required,Debitering krävs,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,Debet och kredit inte är lika för {0} # {1}. Skillnaden är {2}.,
Debtors,gäldenärer,
Debtors ({0}),Gäldenär ({0}),
Declare Lost,Förklara förlorad,
Default Activity Cost exists for Activity Type - {0},Standard Aktivitetskostnad existerar för Aktivitetstyp - {0},
Default BOM ({0}) must be active for this item or its template,Standard BOM ({0}) måste vara aktiv för denna artikel eller dess mall,
Default BOM for {0} not found,Standard BOM för {0} hittades inte,
Default BOM not found for Item {0} and Project {1},Standard BOM hittades inte för punkt {0} och projekt {1},
Default Letter Head,Standard Brev,
Default Tax Template,Standardskattemall,
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ätenhet för punkt {0} kan inte ändras direkt eftersom du redan har gjort vissa transaktioner (s) med en annan UOM. Du måste skapa en ny punkt för att använda en annan standard UOM.,
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Standard mätenhet för Variant &quot;{0}&quot; måste vara samma som i Mall &quot;{1}&quot;,
Default settings for buying transactions.,Standardinställningar för att inköps transaktioner.,
Default settings for selling transactions.,Standardinställningar för att försäljnings transaktioner.,
Default tax templates for sales and purchase are created.,Standardskattmallar för försäljning och inköp skapas.,
Defaults,Standard,
Defense,Försvar,
Define Project type.,Definiera projekttyp.,
Define budget for a financial year.,Definiera budget för budgetåret.,
Define various loan types,Definiera olika lån typer,
Del,del,
Delay in payment (Days),Försenad betalning (dagar),
Delete all the Transactions for this Company,Ta bort alla transaktioner för detta företag,
Deletion is not permitted for country {0},Radering är inte tillåtet för land {0},
Delivered,levereras,
Delivered Amount,Levererad Mängd,
Delivered Qty,Levererat Antal,
Delivered: {0},Levereras: {0},
Delivery,Leverans,
Delivery Date,Leveransdatum,
Delivery Note,Följesedel,
Delivery Note {0} is not submitted,Följesedel {0} är inte lämnad,
Delivery Note {0} must not be submitted,Följesedel {0} får inte lämnas,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,Följesedelsnoteringar {0} måste avbrytas innan du kan avbryta denna kundorder,
Delivery Notes {0} updated,Leveransnoteringar {0} uppdaterad,
Delivery Status,Leveransstatus,
Delivery Trip,Leveransresa,
Delivery warehouse required for stock item {0},Leverans lager som krävs för Beställningsvara {0},
Department,Avdelning,
Department Stores,Varuhus,
Depreciation,Avskrivningar,
Depreciation Amount,Avskrivningsbelopp,
Depreciation Amount during the period,Avskrivningsbelopp under perioden,
Depreciation Date,avskrivnings Datum,
Depreciation Eliminated due to disposal of assets,Avskrivningar Utslagen på grund av avyttring av tillgångar,
Depreciation Entry,avskrivningar Entry,
Depreciation Method,avskrivnings Metod,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Avskrivningsraden {0}: Avskrivning Startdatum anges som förflutet datum,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Avskrivningsraden {0}: Förväntat värde efter nyttjandeperioden måste vara större än eller lika med {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Avskrivningsraden {0}: Nästa avskrivningsdatum kan inte vara före tillgängliga datum,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Avskrivningsraden {0}: Nästa avskrivningsdatum kan inte vara före inköpsdatum,
Designer,Designer,
Detailed Reason,Detaljerad anledning,
Details,Detaljer,
Details of Outward Supplies and inward supplies liable to reverse charge,Detaljer om leveranser och leveranser tillåtna som kan återvända,
Details of the operations carried out.,Detaljer om de åtgärder som genomförs.,
Diagnosis,Diagnos,
Did not find any item called {0},Kunde inte hitta någon post kallad {0},
Diff Qty,Diff Antal,
Difference Account,Differenskonto,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Differenskonto måste vara en tillgång / skuld kontotyp, eftersom denna lageravstämning är en öppnings post",
Difference Amount,Differensbelopp,
Difference Amount must be zero,Skillnad Belopp måste vara noll,
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.,Olika UOM för produkter kommer att leda till felaktiga (Total) Nettovikts värden. Se till att Nettovikt för varje post är i samma UOM.,
Direct Expenses,Direkta kostnader,
Direct Income,Direkt inkomst,
Disable,inaktivera,
Disabled template must not be default template,Funktionshindrade mall får inte vara standardmall,
Disburse Loan,Utbetalningslån,
Disbursed,Utbetalt,
Disc,Skiva,
Discharge,Ansvarsfrihet,
Discount,Rabatt,
Discount Percentage can be applied either against a Price List or for all Price List.,Rabatt Procent kan appliceras antingen mot en prislista eller för alla prislistor.,
Discount must be less than 100,Rabatt måste vara mindre än 100,
Diseases & Fertilizers,Sjukdomar och gödselmedel,
Dispatch,Skicka,
Dispatch Notification,Dispatch Notification,
Dispatch State,Dispatch State,
Distance,Distans,
Distribution,Fördelning,
Distributor,Distributör,
Dividends Paid,Lämnad utdelning,
Do you really want to restore this scrapped asset?,Vill du verkligen vill återställa detta skrotas tillgång?,
Do you really want to scrap this asset?,Vill du verkligen att skrota denna tillgång?,
Do you want to notify all the customers by email?,Vill du anmäla alla kunder via e-post?,
Doc Date,Doc Datum,
Doc Name,Doc Namn,
Doc Type,Doc Typ,
Docs Search,Dokumentsökning,
Document Name,Dokumentnamn,
Document Type,Dokumentstyp,
Domain,Domän,
Domains,Domäner,
Done,Klar,
Donor,Givare,
Donor Type information.,Donor Typ information.,
Donor information.,Donorinformation.,
Download JSON,Ladda ner JSON,
Draft,Förslag,
Drop Ship,Drop Ship,
Drug,Läkemedel,
Due / Reference Date cannot be after {0},På grund / Referens Datum kan inte vara efter {0},
Due Date cannot be before Posting / Supplier Invoice Date,Förfallodatum kan inte vara före bokföring / leverantörs fakturadatum,
Due Date is mandatory,Förfallodatum är obligatorisk,
Duplicate Entry. Please check Authorization Rule {0},Duplicera post. Kontrollera autentiseringsregel {0},
Duplicate Serial No entered for Item {0},Duplicera Löpnummer upp till punkt {0},
Duplicate customer group found in the cutomer group table,Duplicate kundgrupp finns i cutomer grupptabellen,
Duplicate entry,Duplicera post,
Duplicate item group found in the item group table,Dubblett grupp finns i posten grupptabellen,
Duplicate roll number for student {0},Dubbelnummer för student {0},
Duplicate row {0} with same {1},Duplicate raden {0} med samma {1},
Duplicate {0} found in the table,Duplicera {0} hittades i tabellen,
Duration in Days,Varaktighet i dagar,
Duties and Taxes,Tullar och skatter,
E-Invoicing Information Missing,Information om fakturering saknas,
ERPNext Demo,ERPNext Demo,
ERPNext Settings,ERPNext-inställningar,
Earliest,Tidigast,
Earnest Money,Handpenning,
Edit,Redigera,
Edit Publishing Details,Redigera publiceringsdetaljer,
"Edit in full page for more options like assets, serial nos, batches etc.","Redigera i hel sida för fler alternativ som tillgångar, serienummer, partier etc.",
Education,Utbildning,
Either location or employee must be required,Varken plats eller anställd måste vara obligatorisk,
Either target qty or target amount is mandatory,Antingen mål antal eller målbeloppet är obligatorisk,
Either target qty or target amount is mandatory.,Antingen mål antal eller målbeloppet är obligatorisk.,
Electrical,Elektrisk,
Electronic Equipments,Elektronisk utrustning,
Electronics,Elektronik,
Eligible ITC,Kvalificerad ITC,
Email Account,Email Konto,
Email Address,E-postadress,
"Email Address must be unique, already exists for {0}","E-postadress måste vara unikt, redan för {0}",
Email Digest: ,E-postutskick:,
Email Reminders will be sent to all parties with email contacts,E-post påminnelser skickas till alla parter med e-postkontakter,
Email Sent,Email Skickat,
Email Template,E-postmall,
Email not found in default contact,E-post hittades inte i standardkontakt,
Email sent to {0},E-post skickas till {0},
Employee,Anställd,
Employee Advances,Medarbetarförskott,
Employee ID,Anställnings-ID,
Employee Lifecycle,Anställd livscykel,
Employee Name,Anställd Namn,
Employee Promotion cannot be submitted before Promotion Date ,Arbetstagarreklam kan inte skickas före kampanjdatum,
Employee Transfer cannot be submitted before Transfer Date ,Anställningsöverföring kan inte lämnas in före överlämningsdatum,
Employee cannot report to himself.,Anställd kan inte anmäla sig själv.,
Employee {0} has already applied for {1} between {2} and {3} : ,Anställd {0} har redan ansökt om {1} mellan {2} och {3}:,
Employee {0} of grade {1} have no default leave policy,Anställd {0} i betyg {1} har ingen standardlovspolicy,
Enable / disable currencies.,Aktivera / inaktivera valutor.,
Enabled,Aktiverat,
"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Aktivera användning för Varukorgen &quot;, som Kundvagnen är aktiverad och det bör finnas åtminstone en skattebestämmelse för Varukorgen",
End Date,Slutdatum,
End Date can not be less than Start Date,Slutdatum kan inte vara mindre än startdatum,
End Date cannot be before Start Date.,Slutdatum kan inte vara före startdatum.,
End Year,slut År,
End Year cannot be before Start Year,End år kan inte vara före startåret,
End on,Sluta på,
Ends On date cannot be before Next Contact Date.,Slutdatum På datum kan inte vara före nästa kontaktdatum.,
Energy,Energi,
Engineer,Ingenjör,
Enough Parts to Build,Tillräckligt med delar för att bygga,
Enroll,Skriva in,
Enrolling student,Inlärning elev,
Enrolling students,Inskrivning av studenter,
Enter depreciation details,Ange avskrivningsuppgifter,
Enter the Bank Guarantee Number before submittting.,Ange bankgarantienummer innan du skickar in.,
Enter the name of the Beneficiary before submittting.,Ange mottagarens namn innan du skickar in.,
Enter the name of the bank or lending institution before submittting.,Ange bankens eller utlåningsinstitutets namn innan du skickar in.,
Enter value betweeen {0} and {1},Ange värde mellan {0} och {1},
Entertainment & Leisure,Underhållning &amp; Fritid,
Entertainment Expenses,Representationskostnader,
Equity,Eget kapital,
Error Log,Felloggen,
Error evaluating the criteria formula,Fel vid utvärdering av kriterierna,
Error in formula or condition: {0},Fel i formel eller ett tillstånd: {0},
Error: Not a valid id?,Fel: Inte ett giltigt id?,
Estimated Cost,Beräknad kostnad,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Även om det finns flera prissättningsregler med högsta prioritet, kommer följande interna prioriteringar tillämpas:",
Exchange Gain/Loss,Exchange vinst / förlust,
Exchange Rate Revaluation master.,Valutakursrevaluering master.,
Exchange Rate must be same as {0} {1} ({2}),Växelkurs måste vara samma som {0} {1} ({2}),
Excise Invoice,Punkt Faktura,
Execution,Exekvering,
Executive Search,Executive Search,
Expand All,Expandera alla,
Expected Delivery Date,förväntat leveransdatum,
Expected Delivery Date should be after Sales Order Date,Förväntad leveransdatum bör vara efter försäljningsbeställningsdatum,
Expected End Date,Förväntad slutdatum,
Expected Hrs,Förväntad tid,
Expected Start Date,Förväntat startdatum,
Expense,Utgift,
Expense / Difference account ({0}) must be a 'Profit or Loss' account,"Utgift / Differens konto ({0}) måste vara ett ""vinst eller förlust"" konto",
Expense Account,Utgiftskonto,
Expense Claim,Utgiftsräkning,
Expense Claims,Räkningar,
Expense account is mandatory for item {0},Utgiftskonto är obligatorisk för produkten {0},
Expenses,kostnader,
Expenses Included In Asset Valuation,Kostnader som ingår i tillgångsvärdet,
Expenses Included In Valuation,Kostnader ingår i rapporten,
Expired Batches,Förfallna partier,
Expires On,Går ut den,
Expiring On,Förfaller på,
Expiry (In Days),Ut (i dagar),
Explore,Utforska,
Export E-Invoices,Exportera E-fakturor,
Extra Large,Extra stor,
Extra Small,Extra liten,
Fail,Misslyckas,
Failed,Misslyckades,
Failed to create website,Misslyckades med att skapa webbplats,
Failed to install presets,Misslyckades med att installera förinställningar,
Failed to login,Kunde inte logga in,
Failed to setup company,Misslyckades med att konfigurera företaget,
Failed to setup defaults,Det gick inte att konfigurera standardvärden,
Failed to setup post company fixtures,Misslyckades med att ställa in postbolags fixturer,
Fax,Fax,
Fee,Avgift,
Fee Created,Avgift skapad,
Fee Creation Failed,Avgiftsköp misslyckades,
Fee Creation Pending,Avgift skapande väntar,
Fee Records Created - {0},Arvodes Records Skapad - {0},
Feedback,Respons,
Fees,avgifter,
Female,Kvinna,
Fetch Data,Hämta data,
Fetch Subscription Updates,Hämta prenumerationsuppdateringar,
Fetch exploded BOM (including sub-assemblies),Fetch expanderande BOM (inklusive underenheter),
Fetching records......,Hämtar poster ......,
Field Name,Fältnamn,
Fieldname,Fältnamn,
Fields,Fält,
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Filterfält Rad # {0}: Fältnamn <b>{1}</b> måste vara av typen &quot;Länk&quot; eller &quot;Tabell MultiSelect&quot;,
Filter Total Zero Qty,Filtrera totalt antal noll,
Finance Book,Finansbok,
Financial / accounting year.,Budget / räkenskapsåret.,
Financial Services,Finansiella tjänster,
Financial Statements,Bokslut,
Financial Year,Budgetår,
Finish,Yta,
Finished Good,Slutade bra,
Finished Good Item Code,Färdig bra varukod,
Finished Goods,Färdiga varor,
Finished Item {0} must be entered for Manufacture type entry,Färdiga artiklar {0} måste anges för Tillverkningstypen,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,Slutproduktkvantitet <b>{0}</b> och För kvantitet <b>{1}</b> kan inte vara annorlunda,
First Name,Förnamn,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","Skatteordning är obligatoriskt, ange skatteordningen i företaget {0}",
Fiscal Year,Räkenskapsår,
Fiscal Year End Date should be one year after Fiscal Year Start Date,Räkenskapsårets slutdatum bör vara ett år efter räkenskapsårets startdatum,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Räkenskapsårets Startdatum och Räkenskapsårets Slutdatum är redan inställd under räkenskapsåret {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,Startdatum för budgetåret bör vara ett år tidigare än slutdatum för budgetåret,
Fiscal Year {0} does not exist,Räkenskapsårets {0} inte existerar,
Fiscal Year {0} is required,Räkenskapsårets {0} krävs,
Fixed Asset,Fast tillgångar,
Fixed Asset Item must be a non-stock item.,Fast Asset Objektet måste vara en icke-lagervara.,
Fixed Assets,Fasta tillgångar,
Following Material Requests have been raised automatically based on Item's re-order level,Efter Material Framställningar har höjts automatiskt baserat på punkt re-order nivå,
Following accounts might be selected in GST Settings:,Följande konton kan väljas i GST-inställningar:,
Following course schedules were created,Följande kursplaner skapades,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,Följande objekt {0} är inte markerat som {1} objekt. Du kan aktivera dem som {1} -objekt från dess objektmastern,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Följande poster {0} är inte markerade som {1} objekt. Du kan aktivera dem som {1} -objekt från dess objektmastern,
"Food, Beverage & Tobacco","Mat, dryck och tobak",
For,För,
"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.","För ""Produktgrupper"" poster, Lager, Serienummer och Batch kommer  att övervägas från ""Packlistan"". Om Lager och Batch inte är samma för alla förpacknings objekt för alla ""Produktgrupper"" , kan dessa värden skrivas in i huvud produkten, kommer värden kopieras till ""Packlistan"".",
For Quantity (Manufactured Qty) is mandatory,För Kvantitet (Tillverkad Antal) är obligatorisk,
For Supplier,För Leverantör,
For Warehouse,För lager,
For Warehouse is required before Submit,För Lagerkrävs innan du kan skicka,
"For an item {0}, quantity must be negative number",För ett objekt {0} måste kvantitet vara negativt tal,
"For an item {0}, quantity must be positive number",För ett objekt {0} måste kvantiteten vara ett positivt tal,
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry",För jobbkort {0} kan du bara skriva in materialmaterialöverföringen,
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","För rad {0} i {1}. Om du vill inkludera {2} i punkt hastighet, rader {3} måste också inkluderas",
For row {0}: Enter Planned Qty,För rad {0}: Ange planerad mängd,
"For {0}, only credit accounts can be linked against another debit entry",För {0} kan endast kreditkonton länkas mot en annan debitering,
"For {0}, only debit accounts can be linked against another credit entry",För {0} kan bara debitkonton länkas mot en annan kreditering,
Forum Activity,Forumaktivitet,
Free item code is not selected,Gratis artikelkod är inte vald,
Freight and Forwarding Charges,"Frakt, spedition Avgifter",
Frequency,Frekvens,
Friday,Fredag,
From,Från,
From Address 1,Från adress 1,
From Address 2,Från adress 2,
From Currency and To Currency cannot be same,Från Valuta och Till Valuta kan inte vara samma,
From Date and To Date lie in different Fiscal Year,Från datum till datum ligger olika fiscalår,
From Date cannot be greater than To Date,Från datum kan inte vara större än till datum,
From Date must be before To Date,Från Datum måste vara före Till Datum,
From Date should be within the Fiscal Year. Assuming From Date = {0},Från Datum bör ligga inom räkenskapsåret. Förutsatt Från Datum = {0},
From Datetime,Från Daterad tid,
From Delivery Note,Från Följesedel,
From Fiscal Year,Från Fiscal Year,
From GSTIN,Från GSTIN,
From Party Name,Från partnamn,
From Pin Code,Från Pin-kod,
From Place,Från plats,
From Range has to be less than To Range,Från Range måste vara mindre än ligga,
From State,Från staten,
From Time,Från tid,
From Time Should Be Less Than To Time,Från tiden borde vara mindre än till tiden,
From Time cannot be greater than To Time.,Från Tiden kan inte vara större än då.,
"From a supplier under composition scheme, Exempt and Nil rated","Från en leverantör enligt sammansättningssystem, Exempt och Nil rankade",
From and To dates required,Från och Till datum krävs,
From value must be less than to value in row {0},Från Talet måste vara lägre än värdet i rad {0},
From {0} | {1} {2},Från {0} | {1} {2},
Fulfillment,Uppfyllelse,
Full Name,Fullständigt Namn,
Fully Depreciated,helt avskriven,
Furnitures and Fixtures,Möbler och inventarier,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Ytterligare konton kan göras inom ramen för grupper, men poster kan göras mot icke-grupper",
Further cost centers can be made under Groups but entries can be made against non-Groups,Ytterligare kostnadsställen kan göras i grupperna men poster kan göras mot icke-grupper,
Further nodes can be only created under 'Group' type nodes,Ytterligare noder kan endast skapas under &quot;grupp&quot; typ noder,
GSTIN,Gstin,
GSTR3B-Form,GSTR3B-Form,
Gain/Loss on Asset Disposal,Vinst / förlust på Asset Avfallshantering,
Gantt Chart,Gantt-Schema,
Gantt chart of all tasks.,Gantt-schema för alla uppgifter.,
Gender,Kön,
General,Allmänt,
General Ledger,Allmän huvudbok,
Generate Material Requests (MRP) and Work Orders.,Generera materialförfrågningar (MRP) och arbetsorder.,
Generate Secret,Generera hemlighet,
Get Invocies,Skaffa kallelser,
Get Invoices,Få fakturor,
Get Invoices based on Filters,Få fakturor baserade på filter,
Get Items from BOM,Hämta artiklar från BOM,
Get Items from Healthcare Services,Få artiklar från sjukvårdstjänster,
Get Items from Prescriptions,Hämta artiklar från recept,
Get Items from Product Bundle,Få artiklar från produkt Bundle,
Get Suppliers,Få leverantörer,
Get Suppliers By,Få leverantörer av,
Get Updates,Hämta uppdateringar,
Get customers from,Få kunder från,
Get from Patient Encounter,Få från patientmötet,
Getting Started,Komma igång,
GitHub Sync ID,GitHub Sync ID,
Global settings for all manufacturing processes.,Globala inställningar för alla tillverkningsprocesser.,
Go to the Desktop and start using ERPNext,Gå till skrivbordet och börja använda ERPNext,
GoCardless SEPA Mandate,GoCardless SEPA-mandat,
GoCardless payment gateway settings,GoCardless betalnings gateway-inställningar,
Goal and Procedure,Mål och förfarande,
Goals cannot be empty,Mål kan inte vara tomt,
Goods In Transit,Varor i transit,
Goods Transferred,Varor överförs,
Goods and Services Tax (GST India),Varor och tjänster Skatt (GST Indien),
Goods are already received against the outward entry {0},Varor har redan mottagits mot utgången {0},
Government,Regeringen,
Grand Total,Totalsumma,
Grant,Bevilja,
Grant Application,Bidragsansökan,
Grant Leaves,Grant Leaves,
Grant information.,Bevilja information.,
Grocery,matvaror,
Gross Profit,Bruttoförtjänst,
Gross Profit %,Bruttovinst%,
Gross Profit / Loss,Brutto Vinst / Förlust,
Gross Purchase Amount,Bruttoköpesumma,
Gross Purchase Amount is mandatory,Bruttoköpesumma är obligatorisk,
Group by Account,Grupp per konto,
Group by Party,Grupp efter parti,
Group by Voucher,Grupp av Voucher,
Group by Voucher (Consolidated),Group by Voucher (Consolidated),
Group node warehouse is not allowed to select for transactions,Grupp nod lager är inte tillåtet att välja för transaktioner,
Group to Non-Group,Grupp till icke-Group,
Group your students in batches,Grupp dina elever i omgångar,
Groups,grupper,
Guardian1 Email ID,Guardian1 Email ID,
Guardian1 Mobile No,Guardian1 Mobile No,
Guardian1 Name,Guardian1 Namn,
Guardian2 Email ID,Guardian2 E-post-ID,
Guardian2 Mobile No,Guardian2 Mobile No,
Guardian2 Name,Guardian2 Namn,
HR Manager,HR-chef,
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Yearly,Halvår,
Half-Yearly,Halvårs,
Hardware,Hårdvara,
Head of Marketing and Sales,Chef för Marknad och Försäljning,
Health Care,Sjukvård,
Healthcare,Sjukvård,
Healthcare (beta),Sjukvård (beta),
Healthcare Practitioner,Hälso- och sjukvårdspersonal,
Healthcare Practitioner not available on {0},Hälso-och sjukvårdspersonal är inte tillgänglig på {0},
Healthcare Practitioner {0} not available on {1},Hälso-och sjukvårdspersonal {0} är inte tillgänglig på {1},
Healthcare Service Unit,Hälso- och sjukvårdsservice,
Healthcare Service Unit Tree,Hälso- och sjukvårdstjänstenhet,
Healthcare Service Unit Type,Hälso- och sjukvårdstjänstenhet,
Healthcare Services,Hälsovårdstjänster,
Healthcare Settings,Sjukvård Inställningar,
Help Results for,Hjälpresultat för,
High,Hög,
High Sensitivity,Hög känslighet,
Hold,Håll,
Hold Invoice,Håll faktura,
Holiday,Sommar,
Holiday List,Holiday Lista,
Hotel Rooms of type {0} are unavailable on {1},Hotellrum av typen {0} är inte tillgängliga på {1},
Hotels,hotell,
Hourly,Varje timme,
Hours,timmar,
How Pricing Rule is applied?,Hur prissättning tillämpas?,
Hub Category,Navkategori,
Hub Sync ID,Hub Sync ID,
Human Resource,Personal administration,
Human Resources,Personal Resurser,
IGST Amount,IGST-belopp,
IP Address,IP-adress,
ITC Available (whether in full op part),ITC tillgängligt (oavsett om det är fullständigt),
ITC Reversed,ITC Reversed,
Identifying Decision Makers,Identifiera beslutsfattare,
"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Om Auto Opt In är markerad, kommer kunderna automatiskt att kopplas till det berörda Lojalitetsprogrammet (vid spara)",
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Om flera prissättningsregler fortsätta att gälla, kan användarna uppmanas att ställa Prioritet manuellt för att lösa konflikten.",
"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.","Om vald prissättning regel är gjord för &quot;Rate&quot;, kommer den att skriva över Prislista. Prissättning Regelkurs är slutkursen, så ingen ytterligare rabatt ska tillämpas. Därför kommer det i transaktioner som Försäljningsorder, Inköpsorder mm att hämtas i fältet &quot;Rate&quot; istället för &quot;Price List Rate&quot; -fältet.",
"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.","Om två eller flera Prissättningsregler hittas baserat på ovanstående villkor, tillämpas prioritet . Prioritet är ett tal mellan 0 till 20, medan standardvärdet är noll (tom). Högre siffra innebär det kommer att ha företräde om det finns flera prissättningsregler med samma villkor.",
"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Om obegränsat upphörande för lojalitetspoängen, håll utlåtningstiden tom eller 0.",
"If you have any questions, please get back to us.","Om du har några frågor, vänligen komma tillbaka till oss.",
Ignore Existing Ordered Qty,Ignorera befintligt beställt antal,
Image,Bild,
Image View,Visa bild,
Import Data,Importera data,
Import Day Book Data,Importera dagboksdata,
Import Log,Import logg,
Import Master Data,Importera stamdata,
Import in Bulk,Import av Bulk,
Import of goods,Import av varor,
Import of services,Import av tjänster,
Importing Items and UOMs,Importera artiklar och UOM: er,
Importing Parties and Addresses,Importera parter och adresser,
In Maintenance,Under underhåll,
In Production,I produktion,
In Qty,I antal,
In Stock Qty,I lager Antal,
In Stock: ,I lager:,
In Value,Värde,
"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",När det gäller program med flera nivåer kommer kunderna automatiskt att tilldelas den aktuella tiern enligt deras tillbringade,
Inactive,Inaktiv,
Incentives,Sporen,
Include Default FB Entries,Inkludera standardbokposter,
Include Exploded Items,Inkludera explosiva artiklar,
Include POS Transactions,Inkludera POS-transaktioner,
Include UOM,Inkludera UOM,
Included in Gross Profit,Ingår i bruttovinsten,
Income,Inkomst,
Income Account,Inkomst konto,
Income Tax,Inkomstskatt,
Incoming,Inkommande,
Incoming Rate,Inkommande betyg,
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Felaktigt antal Huvudböcker funna. Du kan ha valt fel konto i transaktionen.,
Increment cannot be 0,Inkrement kan inte vara 0,
Increment for Attribute {0} cannot be 0,Påslag för Attribut {0} inte kan vara 0,
Indirect Expenses,Indirekta kostnader,
Indirect Income,Indirekt inkomst,
Individual,Individuell,
Ineligible ITC,Icke kvalificerad ITC,
Initiated,initierad,
Inpatient Record,Inpatient Record,
Installation Note,Installeringsnotis,
Installation Note {0} has already been submitted,Installeringsnotis {0} har redan lämnats in,
Installation date cannot be before delivery date for Item {0},Installationsdatum kan inte vara före leveransdatum för punkt {0},
Installing presets,Installera förinställningar,
Institute Abbreviation,Institute Förkortning,
Institute Name,Institute Namn,
Instructor,Instruktör,
Insufficient Stock,otillräcklig Stock,
Insurance Start date should be less than Insurance End date,Insurance Startdatum bör vara mindre än försäkring Slutdatum,
Integrated Tax,Integrerad skatt,
Inter-State Supplies,Mellanstatliga leveranser,
Internet Publishing,Internet Publishing,
Intra-State Supplies,Mellanstatliga leveranser,
Introduction,Introduktion,
Invalid Attribute,Ogiltig Attribut,
Invalid Blanket Order for the selected Customer and Item,Ogiltig blankettorder för den valda kunden och föremålet,
Invalid Company for Inter Company Transaction.,Ogiltigt företag för transaktion mellan företag.,
Invalid GSTIN! A GSTIN must have 15 characters.,Ogiltig GSTIN! En GSTIN måste ha 15 tecken.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,Ogiltig GSTIN! De första två siffrorna i GSTIN bör matcha med statens nummer {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,Ogiltig GSTIN! Ingången du har angett stämmer inte med formatet för GSTIN.,
Invalid Posting Time,Ogiltig inläggstid,
Invalid attribute {0} {1},Ogiltig attribut {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Ogiltig mängd som anges för produkten {0}. Kvantitet bör vara större än 0.,
Invalid reference {0} {1},Ogiltig referens {0} {1},
Invalid {0},Ogiltigt {0},
Invalid {0} for Inter Company Transaction.,Ogiltig {0} för transaktion mellan företag.,
Invalid {0}: {1},Ogiltigt {0}: {1},
Inventory,Inventering,
Investment Banking,Investment Banking,
Investments,Investeringarna,
Invoice,Faktura,
Invoice Created,Faktura skapad,
Invoice Discounting,Fakturabidrag,
Invoice Patient Registration,Faktura Patient Registration,
Invoice Posting Date,Fakturabokningsdatum,
Invoice Type,Faktura Typ,
Invoice already created for all billing hours,Faktura som redan skapats för alla faktureringstimmar,
Invoice can't be made for zero billing hour,Faktura kan inte göras för noll faktureringstid,
Invoice {0} no longer exists,Faktura {0} existerar inte längre,
Invoiced,faktureras,
Invoiced Amount,Fakturerade belopp,
Invoices,fakturor,
Invoices for Costumers.,Fakturor för kunder.,
Inward supplies from ISD,Leveranser från ISD,
Inward supplies liable to reverse charge (other than 1 & 2 above),Tillåtna leveranser som kan återföras (andra än 1 och 2 ovan),
Is Active,Är Aktiv,
Is Default,Är standard,
Is Existing Asset,Är befintlig tillgång,
Is Frozen,Är Frozen,
Is Group,Är grupperad,
Issue,Problem,
Issue Material,Problem Material,
Issued,Utfärdad,
Issues,frågor,
It is needed to fetch Item Details.,Det behövs för att hämta produktdetaljer.,
Item,Objekt,
Item 1,Produkt  1,
Item 2,Produkt  2,
Item 3,Produkt 3,
Item 4,Produkt  4,
Item 5,Produkt  5,
Item Cart,Punkt varukorgen,
Item Code,Produktkod,
Item Code cannot be changed for Serial No.,Produkt kod kan inte ändras för serienummer,
Item Code required at Row No {0},Produkt kod krävs vid Radnr {0},
Item Description,Produktbeskrivning,
Item Group,Produkt Grupp,
Item Group Tree,Produktgruppträdet,
Item Group not mentioned in item master for item {0},Produktgruppen nämns inte i huvudprodukten för objektet {0},
Item Name,Föremålsnamn,
Item Price added for {0} in Price List {1},Artikel Pris till för {0} i prislista {1},
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","Artikelpriset visas flera gånger baserat på prislista, leverantör / kund, valuta, artikel, UOM, antal och datum.",
Item Price updated for {0} in Price List {1},Artikel Pris uppdaterad för {0} i prislista {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,Artikelraden {0}: {1} {2} existerar inte i ovanstående &quot;{1}&quot; -tabell,
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Produkt Skatte Rad {0} måste ha typen Skatt eller intäkt eller kostnad eller Avgiftsbelagd,
Item Template,Artikelmall,
Item Variant Settings,Alternativ för varianter av varianter,
Item Variant {0} already exists with same attributes,Punkt Variant {0} finns redan med samma attribut,
Item Variants,Produkt Varianter,
Item Variants updated,Objektvarianter uppdaterade,
Item has variants.,Produkten har varianter.,
Item must be added using 'Get Items from Purchase Receipts' button,"Produkt måste tillsättas med hjälp av ""få produkter  från kvitton"" -knappen",
Item valuation rate is recalculated considering landed cost voucher amount,Produkt värderingsvärdet omräknas pga angett rabattvärde,
Item variant {0} exists with same attributes,Punkt variant {0} finns med samma attribut,
Item {0} does not exist,Punkt {0} inte existerar,
Item {0} does not exist in the system or has expired,Objektet existerar inte {0} i systemet eller har löpt ut,
Item {0} has already been returned,Punkt {0} redan har returnerat,
Item {0} has been disabled,Punkt {0} har inaktiverats,
Item {0} has reached its end of life on {1},Punkt {0} har nått slutet av sin livslängd på {1},
Item {0} ignored since it is not a stock item,Punkt {0} ignoreras eftersom det inte är en lagervara,
"Item {0} is a template, please select one of its variants","Punkt {0} är en mall, välj en av dess varianter",
Item {0} is cancelled,Punkt {0} avbryts,
Item {0} is disabled,Punkt {0} är inaktiverad,
Item {0} is not a serialized Item,Produktt {0} är inte en serialiserad Produkt,
Item {0} is not a stock Item,Produkt  {0} är inte en lagervara,
Item {0} is not active or end of life has been reached,Produkt {0} är inte aktiv eller uttjänta har nåtts,
Item {0} is not setup for Serial Nos. Check Item master,Produkt {0} är inte inställt för Serial Nos. Kontrollera huvudprodukt,
Item {0} is not setup for Serial Nos. Column must be blank,Produkt  {0} är inte inställt för Serial Nos. Kolumn måste vara tom,
Item {0} must be a Fixed Asset Item,Punkt {0} måste vara en fast tillgångspost,
Item {0} must be a Sub-contracted Item,Produkt  {0} måste vara ett underleverantörs produkt,
Item {0} must be a non-stock item,Objektet {0} måste vara en icke-lagervara,
Item {0} must be a stock Item,Produkt {0} måste vara en lagervara,
Item {0} not found,Produkt  {0} hittades inte,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},"Produkt  {0} hittades inte i ""råvaror som levereras""  i beställning {1}",
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Produkt  {0}: Beställd st {1} kan inte vara mindre än minimiorder st {2} (definierat i punkt).,
Item: {0} does not exist in the system,Produkt: {0} existerar inte i systemet,
Items,Produkter,
Items Filter,Objekt filter,
Items and Pricing,Produkter och prissättning,
Items for Raw Material Request,Artiklar för begäran av råmaterial,
Job Card,Jobbkort,
Job card {0} created,Jobbkort {0} skapat,
Join,Gå med,
Journal Entries {0} are un-linked,Journalanteckningar {0} är ej länkade,
Journal Entry,Journalanteckning,
Journal Entry {0} does not have account {1} or already matched against other voucher,Journalanteckning {0} har inte konto {1} eller redan matchad mot andra kuponger,
Kanban Board,Kanban Board,
Key Reports,Viktiga rapporter,
LMS Activity,LMS-aktivitet,
Lab Test,Labb test,
Lab Test Report,Lab Test Report,
Lab Test Sample,Lab Test Prov,
Lab Test Template,Lab Test Template,
Lab Test UOM,Lab Test UOM,
Lab Tests and Vital Signs,Lab-test och vitala tecken,
Lab result datetime cannot be before testing datetime,Labresultatets datetime kan inte vara innan du testar datetime,
Lab testing datetime cannot be before collection datetime,Labtestning datetime kan inte vara före datetime samling,
Label,Etikett,
Laboratory,Laboratorium,
Large,Stor,
Last Communication,Senaste kommunikationen,
Last Communication Date,Senaste kommunikationsdatum,
Last Name,Efternamn,
Last Order Amount,Sista beställningsmängd,
Last Order Date,Sista beställningsdatum,
Last Purchase Price,Senaste inköpspriset,
Last Purchase Rate,Senaste Beställningsvärde,
Latest,Senaste,
Latest price updated in all BOMs,Senaste pris uppdaterat i alla BOMs,
Lead,Prospekt,
Lead Count,Lödräkning,
Lead Owner,Prospekt ägaren,
Lead Owner cannot be same as the Lead,Bly Ägaren kan inte vara densamma som den ledande,
Lead Time Days,Ledtid dagar,
Lead to Quotation,Prospekt till offert,
"Leads help you get business, add all your contacts and more as your leads","Leads hjälpa dig att få verksamheten, lägga till alla dina kontakter och mer som dina leder",
Learn,Lär dig,
Leave Management,Lämna ledning,
Leave and Attendance,Lämna och närvaro,
Leave application {0} already exists against the student {1},Lämna ansökan {0} finns redan mot studenten {1},
Leaves has been granted sucessfully,Bladen har beviljats framgångsrikt,
Leaves must be allocated in multiples of 0.5,"Ledigheter ska fördelas i multiplar av 0,5",
Ledger,Huvudbok,
Legal,Rättslig,
Legal Expenses,Rättsskydds,
Letter Head,Brev,
Letter Heads for print templates.,Brevhuvuden för utskriftsmallar.,
Level,Nivå,
Liability,Ansvar,
Limit Crossed,gräns Korsade,
Link to Material Request,Länk till materialförfrågan,
List of all share transactions,Lista över alla aktie transaktioner,
List of available Shareholders with folio numbers,Förteckning över tillgängliga aktieägare med folienummer,
Loading Payment System,Hämtar betalningssystemet,
Loan,Lån,
Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,Lånets startdatum och låneperiod är obligatoriskt för att spara fakturabatteringen,
Loans (Liabilities),Lån (Skulder),
Loans and Advances (Assets),Utlåning (tillgångar),
Local,Lokal,
Logs for maintaining sms delivery status,Loggar för att upprätthålla sms leveransstatus,
Lost,Förlorade,
Lost Reasons,Förlorade skäl,
Low,Låg,
Low Sensitivity,Låg känslighet,
Lower Income,Lägre intäkter,
Loyalty Amount,Lojalitetsbelopp,
Loyalty Point Entry,Lojalitetspoäng inträde,
Loyalty Points,Lojalitetspoäng,
"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Lojalitetspoäng kommer att beräknas utifrån den förbrukade gjorda (via försäljningsfakturaen), baserat på nämnda samlingsfaktor.",
Loyalty Points: {0},Lojalitetspoäng: {0},
Loyalty Program,Lojalitetsprogram,
Main,Huvud,
Maintenance,Underhåll,
Maintenance Log,Underhållsloggen,
Maintenance Manager,Underhållschef,
Maintenance Schedule,Underhållsschema,
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"Underhållsschema genereras inte för alla objekt. Klicka på ""Generera Schema '",
Maintenance Schedule {0} exists against {1},Underhållschema {0} existerar mot {1},
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Underhållsschema {0} måste avbrytas innanman kan dra avbryta kundorder,
Maintenance Status has to be Cancelled or Completed to Submit,Underhållsstatus måste avbrytas eller slutförts för att skicka in,
Maintenance User,Serviceanvändare,
Maintenance Visit,Servicebesök,
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Servicebesök {0} måste avbrytas innan man kan avbryta kundorder,
Maintenance start date can not be before delivery date for Serial No {0},Underhåll startdatum kan inte vara före leveransdatum för Löpnummer {0},
Make,Göra,
Make Payment,Betala,
Make project from a template.,Gör projekt från en mall.,
Making Stock Entries,Göra Stock Inlägg,
Male,Man,
Manage Customer Group Tree.,Hantera Kundgruppsträd.,
Manage Sales Partners.,Hantera Försäljning Partners.,
Manage Sales Person Tree.,Hantera Säljare.,
Manage Territory Tree.,Hantera Områden.,
Manage your orders,Hantera order,
Management,Ledning,
Manager,Chef,
Managing Projects,Hantera projekt,
Managing Subcontracting,Hantera underleverantörer,
Mandatory,Obligatorisk,
Mandatory field - Academic Year,Obligatoriskt fält - Academic Year,
Mandatory field - Get Students From,Obligatoriskt fält - Få studenter från,
Mandatory field - Program,Obligatoriskt fält - Program,
Manufacture,Tillverkning,
Manufacturer,Tillverkare,
Manufacturer Part Number,Tillverkarens varunummer,
Manufacturing,Tillverkning,
Manufacturing Quantity is mandatory,Tillverknings Kvantitet är obligatorisk,
Mapping,kartläggning,
Mapping Type,Kartläggningstyp,
Mark Absent,Mark Frånvarande,
Mark Half Day,Mark Halvdag,
Mark Present,Mark Närvarande,
Marketing,marknadsföring,
Marketing Expenses,Marknadsföringskostnader,
Marketplace,Marknad,
Marketplace Error,Marknadsfel,
Masters,Masters,
Match Payments with Invoices,Match Betalningar med fakturor,
Match non-linked Invoices and Payments.,Matcha ej bundna fakturor och betalningar.,
Material,Material,
Material Consumption,Materialförbrukning,
Material Consumption is not set in Manufacturing Settings.,Materialförbrukning är inte inställd på tillverkningsinställningar.,
Material Receipt,Material Kvitto,
Material Request,Materialförfrågan,
Material Request Date,Material Request Datum,
Material Request No,Material Ansökaningsnr,
"Material Request not created, as quantity for Raw Materials already available.",Materialförfrågan har inte skapats som mängd för redan tillgängliga råmaterial.,
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Material Begäran om maximalt {0} kan göras till punkt {1} mot kundorder {2},
Material Request to Purchase Order,Material begäran om att inköpsorder,
Material Request {0} is cancelled or stopped,Material Begäran {0} avbryts eller stoppas,
Material Request {0} submitted.,Materialförfrågan {0} skickad.,
Material Transfer,Material Transfer,
Material Transferred,Material överfört,
Material to Supplier,Material till leverantören,
Max discount allowed for item: {0} is {1}%,Max rabatt tillåtet för objektet: {0} är {1}%,
Max: {0},Max: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Maximala prov - {0} kan behållas för sats {1} och punkt {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Maximala prov - {0} har redan behållits för Batch {1} och Item {2} i Batch {3}.,
Maximum discount for Item {0} is {1}%,Maximal rabatt för artikel {0} är {1}%,
Medical Code,Medicinsk kod,
Medical Code Standard,Medicinsk kod Standard,
Medical Department,Medicinska avdelningen,
Medical Record,Vårdjournal,
Medium,Medium,
Member Activity,Medlemsaktivitet,
Member ID,Medlems-ID,
Member Name,Medlemsnamn,
Member information.,Medlemsinformation.,
Membership,Medlemskap,
Membership Details,Medlemsuppgifter,
Membership ID,Medlemskaps-ID,
Membership Type,typ av medlemskap,
Memebership Details,Memebership Detaljer,
Memebership Type Details,Memebership Type Detaljer,
Merge,Sammanfoga,
Merge Account,Sammanfoga konto,
Merge with Existing Account,Sammanfoga med befintligt konto,
"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","Sammanslagning är endast möjligt om följande egenskaper är desamma i båda posterna. Är gruppen, Root typ, Företag",
Message Examples,Meddelande Exempel,
Message Sent,Meddelande skickat,
Method,Metod,
Middle Income,Medelinkomst,
Middle Name,Mellannamn,
Middle Name (Optional),Mellannamn (valfritt),
Min Amt can not be greater than Max Amt,Min Amt kan inte vara större än Max Amt,
Min Qty can not be greater than Max Qty,Min Antal kan inte vara större än Max Antal,
Minimum Lead Age (Days),Minimal ledningsålder (dagar),
Miscellaneous Expenses,Diverse utgifter,
Missing Currency Exchange Rates for {0},Saknas valutakurser för {0},
Missing email template for dispatch. Please set one in Delivery Settings.,Missande e-postmall för leverans. Ange en i Leveransinställningar.,
"Missing value for Password, API Key or Shopify URL","Saknar värde för lösenord, API-nyckel eller Shopify-URL",
Mode of Payment,Betalningssätt,
Mode of Payments,Betalningssätt,
Mode of Transport,Transportsätt,
Mode of Transportation,Transportsätt,
Model,Modell,
Moderate Sensitivity,Måttlig känslighet,
Monday,Måndag,
Monthly,Månadsvis,
Monthly Distribution,Månads Fördelning,
More,Mer,
More Information,Mer information,
More...,Mer...,
Motion Picture & Video,Motion Picture &amp; Video,
Move,drag,
Move Item,Flytta objekt,
Multi Currency,Flera valutor,
Multiple Item prices.,Flera produktpriser.,
Multiple Loyalty Program found for the Customer. Please select manually.,Flera lojalitetsprogram som finns för kunden. Var god välj manuellt.,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Flera Pris Regler finns med samma kriterier, vänligen lösa konflikter genom att tilldela prioritet. Pris Regler: {0}",
Multiple Variants,Flera varianter,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Flera räkenskapsår finns för dagen {0}. Ställ företag under räkenskapsåret,
Music,musik,
Name error: {0},Namn fel: {0},
Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Namn på ett nytt konto. Obs: Vänligen inte skapa konton för kunder och leverantörer,
Name or Email is mandatory,Namn eller e-post är obligatoriskt,
Nature Of Supplies,Typ av tillbehör,
Navigating,Navigera,
Needs Analysis,Behöver analys,
Negative Quantity is not allowed,Negativ Antal är inte tillåtet,
Negative Valuation Rate is not allowed,Negativt Värderingsvärde är inte tillåtet,
Negotiation/Review,Förhandling / Review,
Net Asset value as on,Substansvärdet på,
Net Cash from Financing,Nettokassaflöde från finansiering,
Net Cash from Investing,Nettokassaflöde från Investera,
Net Cash from Operations,Netto kassaflöde från rörelsen,
Net Change in Accounts Payable,Netto Förändring av leverantörsskulder,
Net Change in Accounts Receivable,Nettoförändring av kundfordringar,
Net Change in Cash,Nettoförändring i Cash,
Net Change in Equity,Nettoförändringen i eget kapital,
Net Change in Fixed Asset,Netto Förändring av anläggningstillgång,
Net Change in Inventory,Nettoförändring i Inventory,
Net ITC Available(A) - (B),Net ITC tillgängligt (A) - (B),
Net Profit,Nettoförtjänst,
Net Total,Netto Totalt,
New Account Name,Nytt kontonamn,
New Address,Ny adress,
New BOM,Ny BOM,
New Batch ID (Optional),Nytt parti-id (valfritt),
New Batch Qty,Ny sats antal,
New Company,Nytt företag,
New Cost Center Name,Nytt kostnadsställe Namn,
New Customer Revenue,Nya kund Intäkter,
New Customers,nya kunder,
New Department,Ny avdelning,
New Employee,Ny anställd,
New Location,Ny plats,
New Quality Procedure,Nytt kvalitetsförfarande,
New Sales Invoice,Ny försäljningsfaktura,
New Sales Person Name,Ny försäljnings Person Namn,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Nya Löpnummer kan inte ha Lager. Lagermåste ställas in av lagerpost eller inköpskvitto,
New Warehouse Name,Ny Lager Namn,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nya kreditgränsen är mindre än nuvarande utestående beloppet för kunden. Kreditgräns måste vara minst {0},
New task,Ny uppgift,
New {0} pricing rules are created,Nya {0} prisregler skapas,
Newspaper Publishers,Tidningsutgivarna,
Next,Nästa,
Next Contact By cannot be same as the Lead Email Address,Nästa Kontakta Vid kan inte vara densamma som den ledande e-postadress,
Next Contact Date cannot be in the past,Next Kontakt Datum kan inte vara i det förflutna,
Next Steps,Nästa steg,
No Action,Ingen action,
No Customers yet!,Inga kunder än!,
No Data,Inga Data,
No Delivery Note selected for Customer {},Ingen leveransnotering vald för kund {},
No Item with Barcode {0},Ingen produkt med streckkod {0},
No Item with Serial No {0},Ingen produkt med Löpnummer {0},
No Items available for transfer,Inga objekt tillgängliga för överföring,
No Items selected for transfer,Inga objekt valda för överföring,
No Items to pack,Inga produkter att packa,
No Items with Bill of Materials to Manufacture,Inga objekt med Bill of Materials att tillverka,
No Items with Bill of Materials.,Inga artiklar med materialförteckning.,
No Permission,Inget tillstånd,
No Remarks,Anmärkningar,
No Result to submit,Inget resultat att skicka in,
No Student Groups created.,Inga studentgrupper skapas.,
No Students in,Inga studenter i,
No Tax Withholding data found for the current Fiscal Year.,Inga skatteinnehållsuppgifter hittades för det aktuella räkenskapsåret.,
No Work Orders created,Inga arbetsorder skapade,
No accounting entries for the following warehouses,Inga bokföringsposter för följande lager,
No contacts with email IDs found.,Inga kontakter med e-postadresser hittades.,
No data for this period,Ingen data för denna period,
No description given,Ingen beskrivning ges,
No employees for the mentioned criteria,Inga anställda för nämnda kriterier,
No gain or loss in the exchange rate,Ingen vinst eller förlust i växelkursen,
No items listed,Inga föremål listade,
No items to be received are overdue,Inga objekt som ska tas emot är försenade,
No material request created,Ingen materiell förfrågan skapad,
No of Interactions,Inget av interaktioner,
No of Shares,Antal aktier,
No pending Material Requests found to link for the given items.,Inga pågående materialförfrågningar hittades för att länka för de angivna objekten.,
No products found,Inga produkter hittade,
No products found.,Inga produkter hittades.,
No record found,Ingen post hittades,
No records found in the Invoice table,Inga träffar i Faktura tabellen,
No records found in the Payment table,Inga träffar i betalningstabellen,
No tasks,Inga uppgifter,
No time sheets,Inga tidrapporter,
No values,Inga värden,
No {0} found for Inter Company Transactions.,Nej {0} hittades för Inter Company Transactions.,
Non GST Inward Supplies,Icke-GST-inuti,
Non Profit,Välgörenhets,
Non Profit (beta),Non-profit (beta),
Non-GST outward supplies,Utgående leveranser utan GST,
Non-Group to Group,Icke-grupp till grupp,
None,Ingen,
None of the items have any change in quantity or value.,Inget av objekten har någon förändring i kvantitet eller värde.,
Nos,nos,
Not Available,Inte tillgänglig,
Not Marked,MÄRKLÖS,
Not Paid and Not Delivered,Inte betalda och inte levereras,
Not Permitted,Inte Tillåtna,
Not Started,Inte Startat,
Not active,Inte aktiv,
Not allow to set alternative item for the item {0},Tillåt inte att ange alternativ objekt för objektet {0},
Not allowed to update stock transactions older than {0},Ej tillåtet att uppdatera lagertransaktioner äldre än {0},
Not authorized to edit frozen Account {0},Ej tillåtet att redigera fryst konto {0},
Not authroized since {0} exceeds limits,Inte auktoriserad eftersom {0} överskrider gränser,
Not permitted for {0},Ej tillåtet för {0},
"Not permitted, configure Lab Test Template as required","Ej tillåtet, konfigurera Lab Test Template efter behov",
Not permitted. Please disable the Service Unit Type,Inte tillåten. Avaktivera serviceenhetstypen,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),OBS: På grund / Referens Datum överstiger tillåtna kundkreditdagar från {0} dag (ar),
Note: Item {0} entered multiple times,Obs: Punkt {0} inlagd flera gånger,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,"Obs: Betalningpost kommer inte skapas eftersom ""Kontanter eller bankkonto"" angavs inte",
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Obs: Systemet kommer inte att kontrollera över leverans och överbokning till punkt {0} då kvantitet eller belopp är 0,
Note: There is not enough leave balance for Leave Type {0},Obs: Det finns inte tillräckligt med ledighetdagar för ledighet typ {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Obs! Detta här kostnadsställe är en grupp. Det går inte att göra bokföringsposter mot grupper.,
Note: {0},Obs: {0},
Notes,Anmärkningar,
Nothing is included in gross,Ingenting ingår i brutto,
Nothing more to show.,Inget mer att visa.,
Notify Customers via Email,Meddela kunder via e-post,
Number,siffra,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Antal Avskrivningar bokat kan inte vara större än Totalt antal Avskrivningar,
Number of Interaction,Antal interaktioner,
Number of Order,Antal beställningar,
"Number of new Account, it will be included in the account name as a prefix","Antal nya konton, det kommer att ingå i kontonamnet som ett prefix",
"Number of new Cost Center, it will be included in the cost center name as a prefix","Antal nya kostnadscenter, det kommer att ingå i kostnadscentrets namn som ett prefix",
Number of root accounts cannot be less than 4,Antalet root-konton kan inte vara mindre än 4,
Odometer,Vägmätare,
Office Equipments,Kontorsutrustning,
Office Maintenance Expenses,Kontor underhållskostnader,
Office Rent,Kontorshyra,
On Hold,Placerad i kö,
On Net Total,På Net Totalt,
One customer can be part of only single Loyalty Program.,En kund kan vara en del av ett enda lojalitetsprogram.,
Online Auctions,Online Auktioner,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",Endast studentansökaren med statusen &quot;Godkänd&quot; kommer att väljas i tabellen nedan.,
Only users with {0} role can register on Marketplace,Endast användare med {0} -roll kan registrera sig på Marketplace,
Open BOM {0},Öppen BOM {0},
Open Item {0},Öppen föremål {0},
Open Notifications,Öppna meddelanden,
Open Orders,Öppna beställningar,
Open a new ticket,Öppna en ny biljett,
Opening,Öppning,
Opening (Cr),Öppning (Cr),
Opening (Dr),Öppning (Dr),
Opening Accounting Balance,Ingående redovisning Balans,
Opening Accumulated Depreciation,Ingående ackumulerade avskrivningar,
Opening Accumulated Depreciation must be less than equal to {0},Ingående ackumulerade avskrivningar måste vara mindre än lika med {0},
Opening Balance,Öppningsbalans,
Opening Balance Equity,Ingående balans kapital,
Opening Date and Closing Date should be within same Fiscal Year,Öppningsdatum och Slutdatum bör ligga inom samma räkenskapsår,
Opening Date should be before Closing Date,Öppningsdatum ska vara innan Slutdatum,
Opening Entry Journal,Öppningsdatum Journal,
Opening Invoice Creation Tool,Öppnande av fakturaverktyg,
Opening Invoice Item,Öppna fakturaobjekt,
Opening Invoices,Öppna fakturor,
Opening Invoices Summary,Sammanfattning av fakturoröppning,
Opening Qty,Öppning Antal,
Opening Stock,ingående lager,
Opening Stock Balance,Ingående lagersaldo,
Opening Value,öppnings Värde,
Opening {0} Invoice created,Öppning {0} Faktura skapad,
Operation,Funktion,
Operation Time must be greater than 0 for Operation {0},Operation Time måste vara större än 0 för drift {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Operation {0} längre än alla tillgängliga arbetstiden i arbetsstation {1}, bryta ner verksamheten i flera operationer",
Operations,Verksamhet,
Operations cannot be left blank,Verksamheten kan inte lämnas tomt,
Opp Count,Oppräknare,
Opp/Lead %,Opp / Lead%,
Opportunities,möjligheter,
Opportunities by lead source,Möjligheter med blykälla,
Opportunity,Möjlighet,
Opportunity Amount,Opportunity Amount,
"Optional. Sets company's default currency, if not specified.","Tillval. Ställer företagets standardvaluta, om inte annat anges.",
Optional. This setting will be used to filter in various transactions.,Tillval. Denna inställning kommer att användas för att filtrera i olika transaktioner.,
Options,Val,
Order Count,Order Count,
Order Entry,Orderläggning,
Order Value,Ordervärde,
Order rescheduled for sync,Order omplacerad för synkronisering,
Order/Quot %,Order / Quot%,
Ordered,Beställde,
Ordered Qty,Beställde Antal,
"Ordered Qty: Quantity ordered for purchase, but not received.","Beställd kvantitet: Kvantitet beställt för köp, men inte mottaget.",
Orders,Beställningar,
Orders released for production.,Order släppts för produktion.,
Organization,Organisation,
Organization Name,Organisationsnamn,
Other,Annat,
Other Reports,Andra rapporter,
"Other outward supplies(Nil rated,Exempted)","Andra leveranser utifrån (noll betyg, undantagna)",
Out Qty,Ut antal,
Out Value,ut Värde,
Out of Order,Trasig,
Outgoing,Utgående,
Outstanding,Utestående,
Outstanding Amount,Utestående belopp,
Outstanding Amt,Utestående Amt,
Outstanding Cheques and Deposits to clear,Utestående checkar och insättningar för att rensa,
Outstanding for {0} cannot be less than zero ({1}),Utstående för {0} kan inte vara mindre än noll ({1}),
Outward taxable supplies(zero rated),Utgående beskattningsbara leveranser (noll betyg),
Overdue,Försenad,
Overlap in scoring between {0} and {1},Överlappa i poäng mellan {0} och {1},
Overlapping conditions found between:,Överlappande förhållanden som råder mellan:,
Owner,Ägare,
PAN,PANORERA,
POS,POS,
POS Profile,POS-profil,
POS Profile is required to use Point-of-Sale,POS-profil krävs för att använda Point of Sale,
POS Profile required to make POS Entry,POS profil som krävs för att göra POS inlägg,
POS Settings,POS-inställningar,
Packed quantity must equal quantity for Item {0} in row {1},Packad kvantitet måste vara samma kvantitet för punkt {0} i rad {1},
Packing Slip,Följesedel,
Packing Slip(s) cancelled,Följesedlar avbryts,
Paid,Betalats,
Paid Amount,Betalt belopp,
Paid Amount cannot be greater than total negative outstanding amount {0},Utbetalda beloppet kan inte vara större än den totala negativa utestående beloppet {0},
Paid amount + Write Off Amount can not be greater than Grand Total,Betald belopp + Avskrivningsbelopp kan inte vara större än Totalsumma,
Paid and Not Delivered,Betald och inte levererats,
Parameter,Parameter,
Parent Item {0} must not be a Stock Item,Moderbolaget Punkt {0} får inte vara en lagervara,
Parents Teacher Meeting Attendance,Föräldrars lärarmöte närvaro,
Partially Depreciated,delvis avskrivna,
Partially Received,Delvis mottagen,
Party,Parti,
Party Name,Party Namn,
Party Type,Parti Typ,
Party Type and Party is mandatory for {0} account,Party Type och Party är obligatorisk för {0} konto,
Party Type is mandatory,Party Type är obligatorisk,
Party is mandatory,Party är obligatoriskt,
Past Due Date,Förfallodagen,
Patient,Patient,
Patient Appointment,Patientavnämning,
Patient Encounter,Patient Encounter,
Patient not found,Patienten hittades inte,
Pay Remaining,Betala kvar,
Pay {0} {1},Betala {0} {1},
Payable,Betalning sker,
Payable Account,Betalningskonto,
Payment,Betalning,
Payment Cancelled. Please check your GoCardless Account for more details,Betalning Avbruten. Kontrollera ditt GoCardless-konto för mer information,
Payment Confirmation,Betalningsbekräftelse,
Payment Document,betalning Dokument,
Payment Due Date,Förfallodag,
Payment Entries {0} are un-linked,Betalnings Inlägg {0} är un bundna,
Payment Entry,betalning Entry,
Payment Entry already exists,Betalning Entry redan existerar,
Payment Entry has been modified after you pulled it. Please pull it again.,Betalningsposten har ändrats efter att du hämtade den. Vänligen hämta igen.,
Payment Entry is already created,Betalning Entry redan har skapats,
Payment Failed. Please check your GoCardless Account for more details,Betalning misslyckades. Kontrollera ditt GoCardless-konto för mer information,
Payment Gateway,Payment Gateway,
"Payment Gateway Account not created, please create one manually.","Betalning Gateway konto inte skapat, vänligen skapa ett manuellt.",
Payment Gateway Name,Betalnings Gateway Name,
Payment Mode,Betalningsläget,
Payment Receipt Note,Kvitto Notera,
Payment Request,Betalningsbegäran,
Payment Request for {0},Betalningsbegäran om {0},
Payment Tems,Betalning Tems,
Payment Term,Betalningsvillkor,
Payment Terms,Betalningsvillkor,
Payment Terms Template,Betalningsvillkor Mall,
Payment Terms based on conditions,Betalningsvillkor baserade på villkor,
Payment Type,Betalning Typ,
"Payment Type must be one of Receive, Pay and Internal Transfer",Betalning Type måste vara en av mottagning Betala och intern överföring,
Payment against {0} {1} cannot be greater than Outstanding Amount {2},Betalning mot {0} {1} inte kan vara större än utestående beloppet {2},
Payment request {0} created,Betalningsförfrågan {0} skapad,
Payments,Betalningar,
Payroll Payable,Lön Betalning,
Payslip,lönespecifikation,
Pending Activities,Väntande Verksamhet,
Pending Amount,Väntande antal,
Pending Leaves,Väntar på blad,
Pending Qty,Väntar Antal,
Pending Quantity,Väntande kvantitet,
Pending Review,Väntar på granskning,
Pending activities for today,I avvaktan på aktiviteter för dag,
Pension Funds,Pensionsfonder,
Percentage Allocation should be equal to 100%,Procentuell Fördelning bör vara lika med 100%,
Perception Analysis,Perception Analysis,
Period,Period,
Period Closing Entry,Period Utgående Post,
Period Closing Voucher,Period Utgående Rabattkoder,
Periodicity,Periodicitet,
Personal Details,Personliga detaljer,
Pharmaceutical,Farmaceutiska,
Pharmaceuticals,Läkemedel,
Physician,Läkare,
Place Of Supply (State/UT),Leveransplats (staten / UT),
Place Order,Beställa,
Plan Name,Plannamn,
Plan for maintenance visits.,Planer för underhållsbesök.,
Planned Qty,Planerade Antal,
"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Planerad kvantitet: Kvantitet för vilken arbetsorder har höjts, men väntar på att tillverkas.",
Planning,Planering,
Plants and Machineries,Växter och maskinerier,
Please Set Supplier Group in Buying Settings.,Ange leverantörsgrupp i köpinställningar.,
Please add a Temporary Opening account in Chart of Accounts,Lägg till ett tillfälligt öppnings konto i kontoplan,
Please add the account to root level Company - ,Lägg till kontot till företagets rotnivå -,
Please check Multi Currency option to allow accounts with other currency,Kontrollera flera valutor möjlighet att tillåta konton med annan valuta,
Please click on 'Generate Schedule',"Klicka på ""Skapa schema '",
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Klicka på ""Skapa schema"" för att hämta Löpnummer inlagt för artikel {0}",
Please click on 'Generate Schedule' to get schedule,"Klicka på ""Skapa schema"" för att få schemat",
Please create purchase receipt or purchase invoice for the item {0},Var god skapa kvitto eller inköpsfaktura för objektet {0},
Please define grade for Threshold 0%,Ange grad för tröskelvärdet 0%,
Please enable Applicable on Booking Actual Expenses,Vänligen aktivera gällande bokningskostnader,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Vänligen aktivera Gäller på inköpsorder och gäller vid bokning av faktiska utgifter,
Please enable pop-ups,Aktivera popup-fönster,
Please enter 'Is Subcontracted' as Yes or No,"Ange ""Är underleverantör"" som Ja eller Nej",
Please enter API Consumer Key,Vänligen ange API-konsumentnyckel,
Please enter API Consumer Secret,Vänligen ange API konsumenthemlighet,
Please enter Account for Change Amount,Ange konto för förändring Belopp,
Please enter Approving Role or Approving User,Ange Godkännande roll eller godkänna Användare,
Please enter Cost Center,Ange kostnadsställe,
Please enter Delivery Date,Ange leveransdatum,
Please enter Employee Id of this sales person,Ange anställnings Id för denna säljare,
Please enter Expense Account,Ange utgiftskonto,
Please enter Item Code to get Batch Number,Ange Post kod för att få Batch nummer,
Please enter Item Code to get batch no,Ange Artikelkod att få batchnr,
Please enter Item first,Ange Artikel först,
Please enter Maintaince Details first,Ange servicedetaljer först,
Please enter Planned Qty for Item {0} at row {1},Ange planerad Antal till punkt {0} vid rad {1},
Please enter Preferred Contact Email,Ange Preferred Kontakt Email,
Please enter Production Item first,Ange Produktionsartikel först,
Please enter Purchase Receipt first,Ange inköpskvitto först,
Please enter Receipt Document,Ange Kvitto Dokument,
Please enter Reference date,Ange Referensdatum,
Please enter Reqd by Date,Vänligen ange Reqd by Date,
Please enter Woocommerce Server URL,Vänligen ange webbadress för WoCommerce Server,
Please enter Write Off Account,Ange avskrivningskonto,
Please enter atleast 1 invoice in the table,Ange minst 1 faktura i tabellen,
Please enter company first,Ange företaget först,
Please enter company name first,Ange företagetsnamn först,
Please enter default currency in Company Master,Ange standardvaluta i Bolaget,
Please enter message before sending,Ange meddelandet innan du skickar,
Please enter parent cost center,Ange huvud kostnadsställe,
Please enter quantity for Item {0},Vänligen ange antal förpackningar för artikel {0},
Please enter relieving date.,Ange avlösningsdatum.,
Please enter valid Financial Year Start and End Dates,Ange ett giltigt räkenskapsåret start- och slutdatum,
Please enter valid email address,Ange giltig e-postadress,
Please enter {0} first,Ange {0} först,
Please fill in all the details to generate Assessment Result.,Fyll i alla detaljer för att generera bedömningsresultat.,
Please identify/create Account (Group) for type - {0},Identifiera / skapa konto (grupp) för typ - {0},
Please identify/create Account (Ledger) for type - {0},Vänligen identifiera / skapa konto (Ledger) för typ - {0},
Please login as another user to register on Marketplace,Vänligen logga in som en annan användare för att registrera 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.,Se till att du verkligen vill ta bort alla transaktioner för företag. Dina basdata kommer att förbli som det är. Denna åtgärd kan inte ångras.,
Please mention Basic and HRA component in Company,Vänligen nämna Basic och HRA-komponenten i företaget,
Please mention Round Off Account in Company,Ango Avrundningskonto i bolaget,
Please mention Round Off Cost Center in Company,Ange kostnadsställe för avrundning i bolaget,
Please mention no of visits required,Ange antal besökare (krävs),
Please mention the Lead Name in Lead {0},Vänligen ange lednamnet i bly {0},
Please pull items from Delivery Note,Vänligen hämta artikel från följesedel,
Please register the SIREN number in the company information file,Vänligen registrera SIREN-numret i företagsinformationsfilen,
Please remove this Invoice {0} from C-Form {1},Ta bort denna faktura {0} från C-Form {1},
Please save the patient first,Spara patienten först,
Please save the report again to rebuild or update,Spara rapporten igen för att bygga om eller uppdatera,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Välj tilldelade beloppet, Faktura Typ och fakturanumret i minst en rad",
Please select Apply Discount On,Välj Verkställ rabatt på,
Please select BOM against item {0},Var god välj BOM mot artikel {0},
Please select BOM for Item in Row {0},Välj BOM till punkt i rad {0},
Please select BOM in BOM field for Item {0},Välj BOM i BOM fältet för produkt{0},
Please select Category first,Vänligen välj kategori först,
Please select Charge Type first,Välj Avgiftstyp först,
Please select Company,Välj Företag,
Please select Company and Posting Date to getting entries,Var god välj Företag och Bokningsdatum för att få poster,
Please select Company first,Välj Företaget först,
Please select Completion Date for Completed Asset Maintenance Log,Var god välj Slutdatum för slutförd underhållsförteckning,
Please select Completion Date for Completed Repair,Var god välj Slutdatum för slutfört reparation,
Please select Course,Var god välj Kurs,
Please select Drug,Var god välj Drug,
Please select Existing Company for creating Chart of Accounts,Välj befintligt företag för att skapa konto,
Please select Healthcare Service,Välj hälsovårdstjänst,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Välj punkt där ""Är Lagervara"" är ""Nej"" och ""Är försäljningsprodukt"" är ""Ja"" och det finns ingen annat produktpaket",
Please select Maintenance Status as Completed or remove Completion Date,Vänligen välj Underhållsstatus som Slutförd eller ta bort Slutdatum,
Please select Party Type first,Välj Partityp först,
Please select Patient,Var god välj Patient,
Please select Patient to get Lab Tests,Var god välj Patient för att få Lab Test,
Please select Posting Date before selecting Party,Välj bokningsdatum innan du väljer Party,
Please select Posting Date first,Välj Publiceringsdatum först,
Please select Price List,Välj Prislista,
Please select Program,Var god välj Program,
Please select Qty against item {0},Var god välj Antal mot objekt {0},
Please select Sample Retention Warehouse in Stock Settings first,Var god välj Sample Retention Warehouse i Lagerinställningar först,
Please select Start Date and End Date for Item {0},Välj startdatum och slutdatum för punkt {0},
Please select Student Admission which is mandatory for the paid student applicant,"Vänligen välj Studenttillträde, vilket är obligatoriskt för den studerande som betalas",
Please select a BOM,Var god välj en BOM,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Var god välj en sats för objekt {0}. Det går inte att hitta en enda sats som uppfyller detta krav,
Please select a Company,Välj ett företag,
Please select a batch,Var god välj ett parti,
Please select a field to edit from numpad,Var god välj ett fält för att redigera från numpad,
Please select a table,Välj en tabell,
Please select a valid Date,Var god välj ett giltigt datum,
Please select a value for {0} quotation_to {1},Välj ett värde för {0} offert_till {1},
Please select a warehouse,Var god välj ett lager,
Please select at least one domain.,Var god välj minst en domän.,
Please select correct account,Välj rätt konto,
Please select date,Välj datum,
Please select item code,Välj artikelkod,
Please select month and year,Välj månad och år,
Please select the Company,Var god välj Företaget,
Please select the Multiple Tier Program type for more than one collection rules.,Var god välj flerprograms-programtypen för mer än en insamlingsregler.,
Please select the assessment group other than 'All Assessment Groups',Var god välj bedömningsgruppen annan än &quot;Alla bedömningsgrupper&quot;,
Please select the document type first,Välj dokumenttyp först,
Please select weekly off day,Välj helgdagar,
Please select {0},Välj {0},
Please select {0} first,Välj {0} först,
Please set 'Apply Additional Discount On',Ställ in &quot;tillämpa ytterligare rabatt på&quot;,
Please set 'Asset Depreciation Cost Center' in Company {0},Ställ &quot;Asset Avskrivningar kostnadsställe&quot; i bolaget {0},
Please set 'Gain/Loss Account on Asset Disposal' in Company {0},Ställ &quot;Vinst / Förlust konto på Asset Avfallshantering &#39;i sällskap {0},
Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Vänligen ange konto i lager {0} eller standardinventariskonto i företag {1},
Please set B2C Limit in GST Settings.,Ange B2C-gränsvärden i GST-inställningar.,
Please set Company,Vänligen ange företaget,
Please set Company filter blank if Group By is 'Company',Vänligen ange Företagets filter tomt om Group By är &quot;Company&quot;,
Please set Default Payroll Payable Account in Company {0},Ställ Default Lön betalas konto i bolaget {0},
Please set Depreciation related Accounts in Asset Category {0} or Company {1},Ställ Avskrivningar relaterade konton i tillgångsslag {0} eller Company {1},
Please set GST Accounts in GST Settings,Ange GST-konton i GST-inställningar,
Please set Hotel Room Rate on {},Ange hotellets rumspris på {},
Please set Number of Depreciations Booked,Ställ in Antal Avskrivningar bokat,
Please set Unrealized Exchange Gain/Loss Account in Company {0},Vänligen sätt in orealiserat Exchange Gain / Loss-konto i företaget {0},
Please set User ID field in an Employee record to set Employee Role,Ställ in användar-ID fältet i en anställd post för att ställa in anställdes Roll,
Please set a default Holiday List for Employee {0} or Company {1},Vänligen ange ett standardkalender för anställd {0} eller Company {1},
Please set account in Warehouse {0},Vänligen ange konto i lager {0},
Please set an active menu for Restaurant {0},Ange en aktiv meny för restaurang {0},
Please set associated account in Tax Withholding Category {0} against Company {1},Vänligen ange tillhörande konto i Skatteavdragskategori {0} mot Företag {1},
Please set at least one row in the Taxes and Charges Table,Ange minst en rad i tabellen Skatter och avgifter,
Please set default Cash or Bank account in Mode of Payment {0},Ställ in standard Kontant eller bankkonto i betalningssätt {0},
Please set default account in Salary Component {0},Ställ in standardkonto i lönedel {0},
Please set default customer in Restaurant Settings,Ange standardkund i Restauranginställningar,
Please set default {0} in Company {1},Ställ in default {0} i bolaget {1},
Please set filter based on Item or Warehouse,Ställ filter baserat på punkt eller Warehouse,
Please set leave policy for employee {0} in Employee / Grade record,Vänligen ange lämnarpolicy för anställd {0} i Anställd / betygsrekord,
Please set recurring after saving,Ställ återkommande efter att ha sparat,
Please set the Customer Address,Ange kundadress,
Please set the Default Cost Center in {0} company.,Ange standardkostnadscentret i {0} företaget.,
Please set the Email ID for the Student to send the Payment Request,Ange e-postadressen för studenten för att skicka betalningsförfrågan,
Please set the Item Code first,Vänligen ange produktkoden först,
Please set the Payment Schedule,Ställ in betalningsschemat,
Please set {0} for address {1},Ange {0} för adress {1},
Please setup Students under Student Groups,Vänligen uppsättning studenter under studentgrupper,
Please specify Company,Ange Företag,
Please specify Company to proceed,Ange vilket bolag för att fortsätta,
Please specify a valid 'From Case No.',Ange ett giltigt Från ärende nr &quot;,
Please specify a valid Row ID for row {0} in table {1},Vänligen ange en giltig rad ID för rad {0} i tabellen {1},
Please specify at least one attribute in the Attributes table,Ange minst ett attribut i tabellen attribut,
Please specify currency in Company,Ange valuta i bolaget,
Please specify either Quantity or Valuation Rate or both,Ange antingen Kvantitet eller Värderingsomsättning eller båda,
Please specify from/to range,Ange från / till intervallet,
Please supply the specified items at the best possible rates,Ange de specificerade poster till bästa möjliga pris,
Please wait 3 days before resending the reminder.,Vänligen vänta 3 dagar innan du skickar påminnelsen igen.,
Point of Sale,Butiksförsäljning,
Point-of-Sale,Butiksförsäljnig,
Point-of-Sale Profile,Butikförsäljnings profil,
Portal,Portal,
Possible Supplier,Möjlig leverantör,
Postal Expenses,Post Kostnader,
Posting Date,Bokningsdatum,
Posting Date cannot be future date,Publiceringsdatum kan inte vara framtida tidpunkt,
Posting Time,Boknings Tid,
Posting date and posting time is mandatory,Bokningsdatum och bokningstid är obligatorisk,
Posting timestamp must be after {0},Bokningstidsstämpel måste vara efter {0},
Potential opportunities for selling.,Potentiella möjligheter för att sälja.,
Practitioner Schedule,Utövare Schema,
Pre Sales,Pre Sales,
Preference,Preferens,
Prescribed Procedures,Föreskrivna förfaranden,
Prescription,Recept,
Prescription Dosage,Receptbelagd dosering,
Prescription Duration,Receptlängd,
Prescriptions,recept,
Prev,Föregående,
Preview,Förhandsgranska,
Previous Financial Year is not closed,Föregående räkenskapsperiod inte stängd,
Price,Pris,
Price List,Prislista,
Price List Currency not selected,Prislista Valuta inte valt,
Price List Rate,Prislista värde,
Price List master.,Huvudprislista.,
Price List must be applicable for Buying or Selling,Prislista måste gälla för att köpa eller sälja,
Price List {0} is disabled or does not exist,Prislista {0} är inaktiverad eller inte existerar,
Price or product discount slabs are required,Pris eller produktrabattplattor krävs,
Pricing,Prissättning,
Pricing Rule,Prissättning regel,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Prissättning regel baseras först på ""Lägg till på' fälten, som kan vara artikel, artikelgrupp eller Märke.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.",Prissättning regel görs för att skriva Prislista / definiera rabatt procentsats baserad på vissa kriterier.,
Pricing Rule {0} is updated,Prissättningsregler {0} uppdateras,
Pricing Rules are further filtered based on quantity.,Prissättning Regler ytterligare filtreras baserat på kvantitet.,
Primary Address Details,Primär adressuppgifter,
Primary Contact Details,Primär kontaktuppgifter,
Print Format,Utskriftsformat,
Print IRS 1099 Forms,Skriv ut IRS 1099-formulär,
Print Report Card,Skriv ut rapportkort,
Print Settings,Utskriftsinställningar,
Print and Stationery,Print och brevpapper,
Print settings updated in respective print format,Utskriftsinställningar uppdateras i respektive utskriftsformat,
Print taxes with zero amount,Skriv ut skatter med nollbelopp,
Printing and Branding,Tryckning och Branding,
Private Equity,Privatkapital,
Procedure,Procedur,
Process Day Book Data,Bearbeta dagboksdata,
Process Master Data,Behandla stamdata,
Processing Chart of Accounts and Parties,Behandling av konton och parter,
Processing Items and UOMs,Bearbetar objekt och UOM: er,
Processing Party Addresses,Behandlar parti-adresser,
Processing Vouchers,Bearbetar kuponger,
Procurement,Anskaffning,
Produced Qty,Producerad mängd,
Product,Produkt,
Product Bundle,Produktpaket,
Product Search,Sök produkt,
Production,Produktion,
Production Item,Produktions artikel,
Products,Produkter,
Profit and Loss,Resultaträkning,
Profit for the year,årets vinst,
Program,Program,
Program in the Fee Structure and Student Group {0} are different.,Program i avgiftsstrukturen och studentgruppen {0} är olika.,
Program {0} does not exist.,Program {0} finns inte.,
Program: ,Program:,
Progress % for a task cannot be more than 100.,Framsteg% för en uppgift kan inte vara mer än 100.,
Project Collaboration Invitation,Projektsamarbete Inbjudan,
Project Id,Projekt Id,
Project Manager,Projektledare,
Project Name,Projektnamn,
Project Start Date,Projekt Startdatum,
Project Status,Projektstatus,
Project Summary for {0},Projektöversikt för {0},
Project Update.,Projektuppdatering.,
Project Value,Projekt Värde,
Project activity / task.,Projektverksamhet / uppgift.,
Project master.,Projektchef.,
Project-wise data is not available for Quotation,Projektvis uppgifter finns inte tillgängligt för Offert,
Projected,Projicerad,
Projected Qty,Projicerad mängd,
Projected Quantity Formula,Projekterad kvantitetsformel,
Projects,projekt,
Proposal Writing,Förslagsskrivning,
Proposal/Price Quote,Förslag / pris offert,
Prospecting,prospektering,
Provisional Profit / Loss (Credit),Preliminär vinst / förlust (Kredit),
Publications,publikationer,
Publish Items on Website,Publicera artiklar på webbplatsen,
Published,Publicerad,
Publishing,publicering,
Purchase,Inköp,
Purchase Amount,Köpesumma,
Purchase Date,inköpsdatum,
Purchase Invoice,Inköpsfaktura,
Purchase Invoice {0} is already submitted,Inköpsfakturan {0} är redan lämnad,
Purchase Manager,Inköpsansvarig,
Purchase Master Manager,Inköpschef,
Purchase Order,Inköpsorder,
Purchase Order Amount,Köporderbelopp,
Purchase Order Amount(Company Currency),Köporderbelopp (företagsvaluta),
Purchase Order Date,Beställningsdatum,
Purchase Order Items not received on time,Beställningsvaror Objekt som inte mottogs i tid,
Purchase Order number required for Item {0},Inköpsordernr som krävs för punkt {0},
Purchase Order to Payment,Inköpsorder till betalning,
Purchase Order {0} is not submitted,Inköpsorder {0} inte lämnad,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Inköpsorder är inte tillåtna för {0} på grund av ett scorecard med {1}.,
Purchase Orders given to Suppliers.,Inköprsorder som ges till leverantörer.,
Purchase Price List,Inköps Prislista,
Purchase Receipt,Inköpskvitto,
Purchase Receipt {0} is not submitted,Inköpskvitto {0} är inte lämnat,
Purchase Tax Template,Köp Tax Mall,
Purchase User,Inköpsanvändare,
Purchase orders help you plan and follow up on your purchases,Inköpsorder hjälpa dig att planera och följa upp dina inköp,
Purchasing,Köp av,
Purpose must be one of {0},Syfte måste vara en av {0},
Qty,Antal,
Qty To Manufacture,Antal att tillverka,
Qty Total,Antal totalt,
Qty for {0},Antal för {0},
Qualification,Kvalifikation,
Quality,Kvalitet,
Quality Action,Kvalitetsåtgärd,
Quality Goal.,Kvalitetsmål.,
Quality Inspection,Kvalitetskontroll,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Kvalitetskontroll: {0} skickas inte in för artikeln: {1} i rad {2},
Quality Management,Kvalitetshantering,
Quality Meeting,Kvalitetsmöte,
Quality Procedure,Kvalitetsförfarande,
Quality Procedure.,Kvalitetsförfarande.,
Quality Review,Kvalitetsgranskning,
Quantity,Kvantitet,
Quantity for Item {0} must be less than {1},Kvantitet för artikel {0} måste vara mindre än {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},Kvantitet i rad {0} ({1}) måste vara samma som tillverkad mängd {2},
Quantity must be less than or equal to {0},Kvantitet måste vara mindre än eller lika med {0},
Quantity must not be more than {0},Antal får inte vara mer än {0},
Quantity required for Item {0} in row {1},Kvantitet som krävs för artikel {0} i rad {1},
Quantity should be greater than 0,Kvantitet bör vara större än 0,
Quantity to Make,Mängd att göra,
Quantity to Manufacture must be greater than 0.,Kvantitet som Tillverkning måste vara större än 0.,
Quantity to Produce,Kvantitet att producera,
Quantity to Produce can not be less than Zero,Antalet att producera kan inte vara mindre än noll,
Query Options,Fråge Alternativ,
Queued for replacing the BOM. It may take a few minutes.,Köpt för att ersätta BOM. Det kan ta några minuter.,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,Köpt för uppdatering av senaste priset i allt material. Det kan ta några minuter.,
Quick Journal Entry,Quick Journal Entry,
Quot Count,Citaträkning,
Quot/Lead %,Quot / Bly%,
Quotation,Offert,
Quotation {0} is cancelled,Offert {0} avbryts,
Quotation {0} not of type {1},Offert {0} inte av typen {1},
Quotations,citat,
"Quotations are proposals, bids you have sent to your customers","Citat är förslag, bud som du har skickat till dina kunder",
Quotations received from Suppliers.,Offerter mottaget från leverantörer.,
Quotations: ,citat:,
Quotes to Leads or Customers.,Offerter till prospekt eller kunder,
RFQs are not allowed for {0} due to a scorecard standing of {1},RFQ är inte tillåtna för {0} på grund av ett styrkort som står för {1},
Range,Intervall,
Rate,Betygsätt,
Rate:,Betygsätta:,
Rating,Betyg,
Raw Material,Råmaterial,
Raw Materials,Råmaterial,
Raw Materials cannot be blank.,Råvaror kan inte vara tomt.,
Re-open,Återuppta,
Read blog,Läs bloggen,
Read the ERPNext Manual,Läs ERPNext Manual,
Reading Uploaded File,Läser uppladdad fil,
Real Estate,Fastighet,
Reason For Putting On Hold,Anledning för att sätta på sig,
Reason for Hold,Anledning till håll,
Reason for hold: ,Anledning till håll:,
Receipt,Mottagande,
Receipt document must be submitted,Kvitto dokument måste lämnas in,
Receivable,fordran,
Receivable Account,Fordran Konto,
Received,Mottagna,
Received On,Mottog den,
Received Quantity,Mottaget kvantitet,
Received Stock Entries,Mottagna aktieuppgifter,
Receiver List is empty. Please create Receiver List,Mottagare Lista är tom. Skapa Mottagare Lista,
Recipients,mottagare,
Reconcile,Avstämma,
"Record of all communications of type email, phone, chat, visit, etc.","Register över alla meddelanden av typen e-post, telefon, chatt, besök, etc.",
Records,Uppgifter,
Redirect URL,omdirigeringsadress,
Ref,Ref,
Ref Date,Ref Datum,
Reference,Referens,
Reference #{0} dated {1},Referens # {0} den {1},
Reference Date,Referensdatum,
Reference Doctype must be one of {0},Referens Doctype måste vara en av {0},
Reference Document,referensdokument,
Reference Document Type,Referensdokument Typ,
Reference No & Reference Date is required for {0},Referensnummer och referens Datum krävs för {0},
Reference No and Reference Date is mandatory for Bank transaction,Referensnummer och referens Datum är obligatorisk för Bank transaktion,
Reference No is mandatory if you entered Reference Date,Referensnummer är obligatoriskt om du har angett referens Datum,
Reference No.,Referensnummer.,
Reference Number,Referensnummer,
Reference Type,Referens Typ,
"Reference: {0}, Item Code: {1} and Customer: {2}","Referens: {0}, Artikelnummer: {1} och Kund: {2}",
References,referenser,
Refresh Token,Uppdatera Token,
Register,Registrera,
Rejected,Avvisad,
Related,Relaterad,
Relation with Guardian1,Relation med Guardian1,
Relation with Guardian2,Relation med Guardian2,
Release Date,Utgivningsdatum,
Reload Linked Analysis,Uppdatera länkad analys,
Remaining,Återstående,
Remaining Balance,Återstående balans,
Remarks,Anmärkningar,
Reminder to update GSTIN Sent,Påminnelse om att uppdatera GSTIN Skickat,
Remove item if charges is not applicable to that item,Ta bort alternativ om avgifter inte är tillämpade för denna post,
Removed items with no change in quantity or value.,Borttagna objekt med någon förändring i kvantitet eller värde.,
Reopen,Öppna igen,
Reorder Level,Ombeställningsnivå,
Reorder Qty,Ombeställningskvantitet,
Repeat Customer Revenue,Upprepa kund Intäkter,
Repeat Customers,Återkommande kunder,
Replace BOM and update latest price in all BOMs,Byt BOM och uppdatera senaste pris i alla BOM,
Replied,Svarade,
Report,Rapport,
Report Type,Rapporttyp,
Report Type is mandatory,Rapporttyp är obligatorisk,
Reports,rapporter,
Reqd By Date,Reqd Efter datum,
Reqd Qty,Reqd Antal,
Request for Quotation,Offertförfrågan,
Request for Quotations,Begäran om citat,
Request for Raw Materials,Begäran om råvaror,
Request for purchase.,Begäran om köp.,
Request for quotation.,Offertförfrågan.,
Requested Qty,Begärt Antal,
"Requested Qty: Quantity requested for purchase, but not ordered.","Antal efterfrågade: Antal som begärs för köp, men inte beställt.",
Requesting Site,Begär webbplats,
Requesting payment against {0} {1} for amount {2},Begärande betalning mot {0} {1} för mängden {2},
Requestor,beställaren,
Required On,Obligatorisk På,
Required Qty,Obligatorisk Antal,
Required Quantity,Mängd som krävs,
Reschedule,Boka om,
Research,Forskning,
Research & Development,Forskning &amp; Utveckling,
Researcher,Forskare,
Resend Payment Email,Skicka om Betalning E,
Reserve Warehouse,Reservlager,
Reserved Qty,Reserverad Antal,
Reserved Qty for Production,Reserverad kvantitet för produktion,
Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Reserverad antal för produktion: Råvarukvantitet för tillverkning av tillverkningsartiklar.,
"Reserved Qty: Quantity ordered for sale, but not delivered.","Reserverad antal: Antal som beställts för försäljning, men inte levererat.",
Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,Reserverat lager är obligatoriskt för artikel {0} i levererade råvaror,
Reserved for manufacturing,Reserverat för tillverkning,
Reserved for sale,Reserverade till salu,
Reserved for sub contracting,Reserveras för underleverantörer,
Resistant,Resistent,
Resolve error and upload again.,Lös felet och ladda upp igen.,
Rest Of The World,Resten av världen,
Restart Subscription,Starta om prenumerationen,
Restaurant,Restaurang,
Result Date,Resultatdatum,
Result already Submitted,Resultatet redan inskickat,
Resume,Återuppta,
Retail,Detaljhandeln,
Retail & Wholesale,Detaljhandel och grossisthandel,
Retail Operations,Återförsäljare,
Retained Earnings,Balanserade vinstmedel,
Retention Stock Entry,Retention Stock Entry,
Retention Stock Entry already created or Sample Quantity not provided,Retention Stock Entry redan skapad eller Provkvantitet ej angiven,
Return,Återgå,
Return / Credit Note,Retur / kreditnota,
Return / Debit Note,Retur / debetnota,
Returns,avkastning,
Reverse Journal Entry,Reverse Journal Entry,
Review Invitation Sent,Granska inbjudan skickad,
Review and Action,Granskning och åtgärder,
Rooms Booked,Rum bokade,
Root Company,Root Company,
Root Type,Root Typ,
Root Type is mandatory,Root Type är obligatorisk,
Root cannot be edited.,Root kan inte redigeras.,
Root cannot have a parent cost center,Root kan inte ha en överordnat kostnadsställe,
Round Off,Runda av,
Rounded Total,Avrundat Totalt,
Route,Rutt,
Row # {0}: ,Rad # {0}:,
Row # {0}: Batch No must be same as {1} {2},Rad # {0}: Batch nr måste vara samma som {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Rad # {0}: Det går inte att returnera mer än {1} till artikel {2},
Row # {0}: Rate cannot be greater than the rate used in {1} {2},Row # {0}: Priset kan inte vara större än den som används i {1} {2},
Row # {0}: Serial No is mandatory,Rad # {0}: Löpnummer är obligatorisk,
Row # {0}: Serial No {1} does not match with {2} {3},Rad # {0}: Löpnummer {1} inte stämmer överens med {2} {3},
Row #{0} (Payment Table): Amount must be negative,Rad # {0} (Betalnings tabell): Beloppet måste vara negativt,
Row #{0} (Payment Table): Amount must be positive,Rad # {0} (Betalnings tabell): Beloppet måste vara positivt,
Row #{0}: Account {1} does not belong to company {2},Rad # {0}: Konto {1} hör inte till företag {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Rad # {0}: Tilldelad mängd kan inte vara större än utestående belopp.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Rad # {0}: Asset {1} kan inte lämnas, är det redan {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Row # {0}: Kan inte ställa in ränta om beloppet är större än fakturerat belopp för punkt {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Rad # {0}: Clearance datum {1} kan inte vara före check Datum {2},
Row #{0}: Duplicate entry in References {1} {2},Rad # {0}: Duplikat post i referenser {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Rad # {0}: Förväntad leveransdatum kan inte vara före inköpsdatum,
Row #{0}: Item added,Rad # {0}: Objekt tillagda,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Rad # {0}: Journal Entry {1} har inte hänsyn {2} eller redan matchas mot en annan kupong,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Rad # {0}: Inte tillåtet att byta leverantör som beställning redan existerar,
Row #{0}: Please set reorder quantity,Rad # {0}: Ställ in beställningsmängd,
Row #{0}: Please specify Serial No for Item {1},Rad # {0}: Ange Löpnummer för punkt {1},
Row #{0}: Qty increased by 1,Rad # {0}: Antalet ökade med 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Rad # {0}: Pris måste vara samma som {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Row # {0}: Referensdokumenttyp måste vara ett av kostnadskrav eller journalinmatning,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Rad # {0}: Referensdokument Type måste vara en av inköpsorder, inköpsfaktura eller journalanteckning",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Rad # {0}:  avvisat antal kan inte anmälas för retur,
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Rad # {0}: Avslag Warehouse är obligatoriskt mot förkastade Punkt {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,Rad # {0}: Reqd by Date kan inte vara före Transaktionsdatum,
Row #{0}: Set Supplier for item {1},Rad # {0}: Ställ Leverantör för punkt {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Rad # {0}: Status måste vara {1} för fakturabidrag {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",Rad # {0}: Batch {1} har endast {2} qty. Var god välj en annan sats som har {3} antal tillgängliga eller dela raden i flera rader för att leverera / utgå från flera satser,
Row #{0}: Timings conflicts with row {1},Rad # {0}: Konflikt med tider rad {1},
Row #{0}: {1} can not be negative for item {2},Rad # {0}: {1} kan inte vara negativt för produkten {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Rad nr {0}: Beloppet kan inte vara större än utestående beloppet mot utgiftsräkning {1}. I avvaktan på Beloppet är {2},
Row {0} : Operation is required against the raw material item {1},Rad {0}: Drift krävs mot råvaruposten {1},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Rad {0} # Artikel {1} kan inte överföras mer än {2} mot inköpsorder {3},
Row {0}: Activity Type is mandatory.,Rad {0}: Aktivitetstyp är obligatorisk.,
Row {0}: Advance against Customer must be credit,Rad {0}: Advance mot Kunden måste vara kredit,
Row {0}: Advance against Supplier must be debit,Rad {0}: Advance mot Leverantören måste debitera,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Rad {0}: Tilldelad mängd {1} måste vara mindre än eller lika med betalning Entry belopp {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Rad {0}: Tilldelad mängd {1} måste vara mindre än eller lika med att fakturerat utestående belopp {2},
Row {0}: An Reorder entry already exists for this warehouse {1},Rad {0}: En Beställnings post finns redan för detta lager {1},
Row {0}: Bill of Materials not found for the Item {1},Row {0}: Bill of Materials hittades inte för objektet {1},
Row {0}: Conversion Factor is mandatory,Rad {0}: Omvandlingsfaktor är obligatoriskt,
Row {0}: Cost center is required for an item {1},Rad {0}: Kostnadscentrum krävs för ett objekt {1},
Row {0}: Credit entry can not be linked with a {1},Rad {0}: kreditering kan inte kopplas till en {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Rad {0}: Valuta för BOM # {1} bör vara lika med den valda valutan {2},
Row {0}: Debit entry can not be linked with a {1},Rad {0}: Debitering kan inte kopplas till en {1},
Row {0}: Depreciation Start Date is required,Rad {0}: Avskrivnings Startdatum krävs,
Row {0}: Enter location for the asset item {1},Rad {0}: Ange plats för tillgångsobjektet {1},
Row {0}: Exchange Rate is mandatory,Rad {0}: Växelkurser är obligatorisk,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Rad {0}: Förväntat värde efter nyttjandeperioden måste vara mindre än bruttoinköpsbeloppet,
Row {0}: From Time and To Time is mandatory.,Rad {0}: Från tid och till tid är obligatorisk.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Rad {0}: Från tid och att tiden på {1} överlappar med {2},
Row {0}: From time must be less than to time,Rad {0}: Från tiden måste vara mindre än till tiden,
Row {0}: Hours value must be greater than zero.,V {0}: Timmar Värdet måste vara större än noll.,
Row {0}: Invalid reference {1},Rad {0}: Ogiltig referens {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Rad {0}: Party / konto stämmer inte med {1} / {2} i {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Rad {0}: Parti Typ och Parti krävs för obetalda / konto {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Rad {0}: Betalning mot Försäljning / inköpsorder bör alltid märkas i förskott,
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Rad {0}: Kontrollera ""Är i förskott"" mot konto {1} om det är ett förskotts post.",
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Rad {0}: Vänligen ange skattefrihetsskäl i moms och avgifter,
Row {0}: Please set the Mode of Payment in Payment Schedule,Rad {0}: Ange betalningsmetod i betalningsschema,
Row {0}: Please set the correct code on Mode of Payment {1},Rad {0}: Ange rätt kod på betalningsmetod {1},
Row {0}: Qty is mandatory,Rad {0}: Antal är obligatoriskt,
Row {0}: Quality Inspection rejected for item {1},Rad {0}: Kvalitetskontroll avvisad för artikel {1},
Row {0}: UOM Conversion Factor is mandatory,Rad {0}: UOM Omvandlingsfaktor är obligatorisk,
Row {0}: select the workstation against the operation {1},Rad {0}: välj arbetsstation mot operationen {1},
Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Rad {0}: {1} Serienummer krävs för punkt {2}. Du har angett {3}.,
Row {0}: {1} must be greater than 0,Rad {0}: {1} måste vara större än 0,
Row {0}: {1} {2} does not match with {3},Rad {0}: {1} {2} matchar inte med {3},
Row {0}:Start Date must be before End Date,Rad {0}: Startdatum måste vara före Slutdatum,
Rows with duplicate due dates in other rows were found: {0},Rader med dubbla förfallodatum i andra rader hittades: {0},
Rules for adding shipping costs.,Regler för att lägga fraktkostnader.,
Rules for applying pricing and discount.,Regler för tillämpning av prissättning och rabatt.,
S.O. No.,SÅ Nej,
SGST Amount,SGST-belopp,
SO Qty,SO Antal,
Safety Stock,Säkerhetslager,
Salary,Lön,
Salary Slip submitted for period from {0} to {1},Löneskalan lämnas in för perioden från {0} till {1},
Salary Structure must be submitted before submission of Tax Ememption Declaration,Lönestruktur måste lämnas in innan skattereduceringsdeklarationen lämnas in,
Sales,försäljning,
Sales Account,Försäljningskonto,
Sales Expenses,Försäljnings Kostnader,
Sales Funnel,Försäljning tratt,
Sales Invoice,Försäljning Faktura,
Sales Invoice {0} has already been submitted,Fakturan {0} har redan lämnats in,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,Fakturan {0} måste ställas in innan avbryta denna kundorder,
Sales Manager,FÖRSÄLJNINGSCHEF,
Sales Master Manager,Försäljnings master föreståndaren,
Sales Order,Kundorder,
Sales Order Item,Försäljning Beställningsvara,
Sales Order required for Item {0},Kundorder krävs för punkt {0},
Sales Order to Payment,Kundorder till betalning,
Sales Order {0} is not submitted,Kundorder {0} är inte lämnat,
Sales Order {0} is not valid,Kundorder {0} är inte giltig,
Sales Order {0} is {1},Kundorder {0} är {1},
Sales Orders,Kundorder,
Sales Partner,Försäljnings Partner,
Sales Pipeline,Sales Pipeline,
Sales Price List,Försäljning Prislista,
Sales Return,Sales Return,
Sales Summary,Försäljningsöversikt,
Sales Tax Template,Moms Mall,
Sales Team,Sales Team,
Sales User,Försäljningsanvändar,
Sales and Returns,Försäljning och Returer,
Sales campaigns.,Säljkampanjer.,
Sales orders are not available for production,Försäljningsorder är inte tillgängliga för produktion,
Salutation,Salutation,
Same Company is entered more than once,Samma Företaget anges mer än en gång,
Same item cannot be entered multiple times.,Samma post kan inte anges flera gånger.,
Same supplier has been entered multiple times,Samma leverantör har angetts flera gånger,
Sample Collection,Provsamling,
Sample quantity {0} cannot be more than received quantity {1},Provkvantitet {0} kan inte vara mer än mottagen kvantitet {1},
Sanctioned,sanktionerade,
Sand,Sand,
Saturday,Lördag,
Saving {0},Sparar {0},
Scan Barcode,Skanna streckkod,
Schedule,Tidtabell,
Schedule Admission,Schema Entré,
Schedule Course,schema Course,
Schedule Date,Schema Datum,
Schedule Discharge,Schemaläggningsavgift,
Scheduled,Planerad,
Scheduled Upto,Schemalagt Upto,
"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Scheman för {0} överlappar, vill du fortsätta efter att ha skurit överlappade slitsar?",
Score cannot be greater than Maximum Score,Värdering kan inte vara större än maximal poäng,
Scorecards,styrkort,
Scrapped,skrotas,
Search,Sök,
Search Results,sökresultat,
Search Sub Assemblies,Sök Sub Assemblies,
"Search by item code, serial number, batch no or barcode","Sök efter artikelnummer, serienummer, batchnummer eller streckkod",
"Seasonality for setting budgets, targets etc.","Säsongs för att fastställa budgeten, mål etc.",
Secret Key,Hemlig nyckel,
Secretary,Sekreterare,
Section Code,Sektionskod,
Secured Loans,Säkrade lån,
Securities & Commodity Exchanges,Värdepapper och råvarubörserna,
Securities and Deposits,Värdepapper och inlåning,
See All Articles,Se alla artiklar,
See all open tickets,Se alla öppna biljetter,
See past orders,Se tidigare order,
See past quotations,Se tidigare citat,
Select,Välj,
Select Alternate Item,Välj alternativt alternativ,
Select Attribute Values,Välj Attributvärden,
Select BOM,Välj BOM,
Select BOM and Qty for Production,Välj BOM och antal för produktion,
"Select BOM, Qty and For Warehouse","Välj BOM, antal och för lager",
Select Batch,Välj Batch,
Select Batch Numbers,Välj batchnummer,
Select Brand...,Välj märke ...,
Select Company,Välj företag,
Select Company...,Välj Företaget ...,
Select Customer,Välj kund,
Select Days,Välj dagar,
Select Default Supplier,Välj Standard Leverantör,
Select DocType,Välj DocType,
Select Fiscal Year...,Välj räkenskapsår ...,
Select Item (optional),Välj objekt (tillval),
Select Items based on Delivery Date,Välj objekt baserat på leveransdatum,
Select Items to Manufacture,Välj produkter i Tillverkning,
Select Loyalty Program,Välj Lojalitetsprogram,
Select Patient,Välj Patient,
Select Possible Supplier,Välj Möjliga Leverantör,
Select Quantity,Välj antal,
Select Serial Numbers,Välj serienummer,
Select Target Warehouse,Välj Target Warehouse,
Select Warehouse...,Välj Warehouse ...,
Select an account to print in account currency,Välj ett konto för att skriva ut i kontovaluta,
Select at least one value from each of the attributes.,Välj minst ett värde från var och en av attributen.,
Select change amount account,Välj förändringsbelopp konto,
Select company first,Välj företag först,
Select students manually for the Activity based Group,Välj studenter manuellt för aktivitetsbaserad grupp,
Select the customer or supplier.,Välj kund eller leverantör.,
Select the nature of your business.,Välj typ av ditt företag.,
Select the program first,Välj programmet först,
Select to add Serial Number.,Välj för att lägga till serienummer.,
Select your Domains,Välj domäner,
Selected Price List should have buying and selling fields checked.,Den valda prislistan ska ha kontroll och köpfält.,
Sell,Sälja,
Selling,Försäljnings,
Selling Amount,Försäljningsbelopp,
Selling Price List,Försäljningsprislista,
Selling Rate,Försäljningsfrekvens,
"Selling must be checked, if Applicable For is selected as {0}","Försäljnings måste kontrolleras, i förekommande fall för väljs som {0}",
Send Grant Review Email,Skicka Grant Review Email,
Send Now,Skicka Nu,
Send SMS,Skicka sms,
Send mass SMS to your contacts,Skicka mass SMS till dina kontakter,
Sensitivity,Känslighet,
Sent,Skickat,
Serial No and Batch,Löpnummer och Batch,
Serial No is mandatory for Item {0},Löpnummer är obligatoriskt för punkt {0},
Serial No {0} does not belong to Batch {1},Serienummer {0} hör inte till batch {1},
Serial No {0} does not belong to Delivery Note {1},Serienummer {0} tillhör inte följesedel {1},
Serial No {0} does not belong to Item {1},Löpnummer {0} inte tillhör punkt {1},
Serial No {0} does not belong to Warehouse {1},Serienummer {0} tillhör inte Lager {1},
Serial No {0} does not belong to any Warehouse,Löpnummer {0} inte tillhör någon Warehouse,
Serial No {0} does not exist,Serienummer {0} inte existerar,
Serial No {0} has already been received,Serienummer {0} redan har mottagits,
Serial No {0} is under maintenance contract upto {1},Löpnummer {0} är under underhållsavtal upp {1},
Serial No {0} is under warranty upto {1},Löpnummer {0} är under garanti upp till {1},
Serial No {0} not found,Löpnummer {0} hittades inte,
Serial No {0} not in stock,Löpnummer {0} inte i lager,
Serial No {0} quantity {1} cannot be a fraction,Serienummer {0} kvantitet {1} inte kan vara en fraktion,
Serial Nos Required for Serialized Item {0},Serial Nos krävs för Serialiserad Punkt {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Serienummer: {0} är redan refererad i försäljningsfaktura: {1},
Serial Numbers,Serie nummer,
Serial Numbers in row {0} does not match with Delivery Note,Serienumren i rad {0} matchar inte med leveransnotering,
Serial no {0} has been already returned,Serienummer {0} har redan returnerats,
Serial number {0} entered more than once,Serienummer {0} in mer än en gång,
Serialized Inventory,Serial numrerade Inventory,
Series Updated,Serie uppdaterad,
Series Updated Successfully,Serie uppdaterats,
Series is mandatory,Serien är obligatorisk,
Service,Tjänsten,
Service Level Agreement,Servicenivåavtal,
Service Level Agreement.,Servicenivåavtal.,
Service Level.,Servicenivå.,
Service Stop Date cannot be after Service End Date,Servicestoppdatum kan inte vara efter service Slutdatum,
Service Stop Date cannot be before Service Start Date,Servicestoppdatum kan inte vara före startdatum för service,
Services,tjänster,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Ange standardvärden som bolaget, Valuta, varande räkenskapsår, etc.",
Set Details,Ange detaljer,
Set New Release Date,Ange ny frisläppningsdatum,
Set Project and all Tasks to status {0}?,Ställer du projekt och alla uppgifter till status {0}?,
Set Status,Ställ in status,
Set Tax Rule for shopping cart,Ställ skatt Regel för varukorgen,
Set as Closed,Ange som Stängt,
Set as Completed,Ställ in som klar,
Set as Lost,Ange som förlorade,
Set as Open,Ange som Open,
Set default inventory account for perpetual inventory,Ange standardinventeringskonto för evig inventering,
Set this if the customer is a Public Administration company.,Ställ in detta om kunden är ett offentligt administrationsföretag.,
Set {0} in asset category {1} or company {2},Ange {0} i tillgångskategori {1} eller företag {2},
"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Inställning Händelser till {0}, eftersom personal bifogas nedan försäljare inte har en användar-ID {1}",
Setting defaults,Inställning av standardvärden,
Setting up Email,Ställa in e-post,
Setting up Email Account,Ställa in e-postkonto,
Setting up Employees,Ställa in anställda,
Setting up Taxes,Ställa in skatter,
Setting up company,Ställa in företag,
Settings,Inställningar,
"Settings for online shopping cart such as shipping rules, price list etc.","Inställningar för webbutik som fraktregler, prislista mm",
Settings for website homepage,Inställningar för webbplats hemsida,
Settings for website product listing,Inställningar för lista över webbplatser,
Settled,Fast,
Setup Gateway accounts.,Setup Gateway konton.,
Setup SMS gateway settings,Setup SMS-gateway-inställningar,
Setup cheque dimensions for printing,kryss Setup dimensioner för utskrift,
Setup default values for POS Invoices,Ange standardvärden för POS-fakturor,
Setup mode of POS (Online / Offline),Inställningsläge för POS (Online / Offline),
Setup your Institute in ERPNext,Ställ in ditt institut i ERPNext,
Share Balance,Aktiebalans,
Share Ledger,Dela Ledger,
Share Management,Aktiehantering,
Share Transfer,Delöverföring,
Share Type,Share Type,
Shareholder,Aktieägare,
Ship To State,Ship to State,
Shipments,transporter,
Shipping Address,Leverans Adress,
"Shipping Address does not have country, which is required for this Shipping Rule","Fraktadressen har inget land, vilket krävs för denna leveransregel",
Shipping rule only applicable for Buying,Fraktregel gäller endast för köp,
Shipping rule only applicable for Selling,Fraktregeln gäller endast för försäljning,
Shopify Supplier,Shopify Leverantör,
Shopping Cart,Kundvagn,
Shopping Cart Settings,Varukorgen Inställningar,
Short Name,Kort Namn,
Shortage Qty,Brist Antal,
Show Completed,Visa klar,
Show Cumulative Amount,Visa kumulativ mängd,
Show Open,Visa öppna,
Show Opening Entries,Visa öppningsregister,
Show Payment Details,Visa betalningsdetaljer,
Show Return Entries,Visa Returer,
Show Variant Attributes,Visa variantegenskaper,
Show Variants,Visar varianter,
Show closed,show stängd,
Show exploded view,Visa exploderad vy,
Show only POS,Visa bara POS,
Show unclosed fiscal year's P&L balances,Visa ej avslutad skatteårets P &amp; L balanser,
Show zero values,Visa nollvärden,
Silt,Slam,
Single Variant,Enstaka variant,
Single unit of an Item.,Enda enhet av ett objekt.,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Hoppa överlåtetilldelning för följande anställda, eftersom överföringsposter redan existerar mot dem. {0}",
Slideshow,Bildspel,
Slots for {0} are not added to the schedule,Slots för {0} läggs inte till i schemat,
Small,Liten,
Soap & Detergent,Soap &amp; tvättmedel,
Software,programvara,
Software Developer,Mjukvaruutvecklare,
Softwares,Mjukvara,
Soil compositions do not add up to 100,Jordkompositioner lägger inte upp till 100,
Sold,Såld,
Some emails are invalid,Vissa e-postmeddelanden är ogiltiga,
Some information is missing,Viss information saknas,
Something went wrong!,Något gick snett!,
"Sorry, Serial Nos cannot be merged","Tyvärr, kan serienumren inte slås samman",
Source,Källa,
Source Name,käll~~POS=TRUNC,
Source Warehouse,Källa Lager,
Source and Target Location cannot be same,Källa och målplats kan inte vara samma,
Source and target warehouse cannot be same for row {0},Källa och mål lager kan inte vara samma för rad {0},
Source and target warehouse must be different,Källa och mål lager måste vara annorlunda,
Source of Funds (Liabilities),Källa fonderna (skulder),
Source warehouse is mandatory for row {0},Källa lager är obligatoriskt för rad {0},
Specified BOM {0} does not exist for Item {1},Fastställt BOM {0} finns inte till punkt {1},
Split,Dela,
Split Batch,Split Batch,
Split Issue,Delat utgåva,
Sports,Sport,
Standard Buying,Standard handla,
Standard Selling,Standardförsäljnings,
Standard contract terms for Sales or Purchase.,Standard avtalsvillkor för försäljning eller köp.,
Start Date,Start Datum,
Start Date of Agreement can't be greater than or equal to End Date.,Startdatum för avtal kan inte vara större än eller lika med slutdatum.,
Start Year,Start Year,
Start date should be less than end date for Item {0},Startdatum bör vara mindre än slutdatumet för punkt {0},
Start date should be less than end date for task {0},Startdatum bör vara mindre än slutdatum för uppgift {0},
Start day is greater than end day in task '{0}',Startdagen är större än slutdagen i uppgiften &#39;{0}&#39;,
Start on,Börja på,
State,stat,
State/UT Tax,Stat / UT-skatt,
Statement of Account,Kontoutdrag,
Status must be one of {0},Status måste vara en av {0},
Stock,Lager,
Stock Adjustment,Lager för justering,
Stock Analytics,Arkiv Analytics,
Stock Assets,Stock Tillgångar,
Stock Available,Lager tillgänglig,
Stock Balance,Lagersaldo,
Stock Entries already created for Work Order ,Lagerinmatningar som redan har skapats för arbetsorder,
Stock Entry,Stock Entry,
Stock Entry {0} created,Stock Entry {0} skapades,
Stock Entry {0} is not submitted,Stock Entry {0} är inte lämnat,
Stock Expenses,Stock Kostnader,
Stock In Hand,Lager i handen,
Stock Items,lager,
Stock Ledger,Stock Ledger,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Stock Ledger inlägg och GL Posterna reposted för valda kvitton,
Stock Levels,lager~~POS=TRUNC,
Stock Liabilities,Stock Skulder,
Stock Qty,Lager Antal,
Stock Received But Not Billed,Stock mottagits men inte faktureras,
Stock Reports,Lagerrapporter,
Stock Summary,lager Sammanfattning,
Stock Transactions,aktietransaktioner,
Stock UOM,Lager UOM,
Stock Value,Stock Värde,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Lagersaldo i Batch {0} kommer att bli negativ {1} till punkt {2} på Warehouse {3},
Stock cannot be updated against Delivery Note {0},Stock kan inte uppdateras mot följesedel {0},
Stock cannot be updated against Purchase Receipt {0},Lager kan inte uppdateras mot inköpskvitto {0},
Stock cannot exist for Item {0} since has variants,Stock kan inte existera till punkt {0} sedan har varianter,
Stock transactions before {0} are frozen,Arkiv transaktioner före {0} är frysta,
Stop,Stoppa,
Stopped,Stoppad,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","Stoppad Arbetsorder kan inte avbrytas, Avbryt den först för att avbryta",
Stores,butiker,
Student,Elev,
Student Activity,Studentaktivitet,
Student Address,Studentadress,
Student Admissions,Student Antagning,
Student Attendance,Student Närvaro,
"Student Batches help you track attendance, assessments and fees for students","Student partier hjälpa dig att spåra närvaro, bedömningar och avgifter för studenter",
Student Email Address,Student e-postadress,
Student Email ID,Student E ID,
Student Group,Student-gruppen,
Student Group Strength,Studentgruppsstyrkan,
Student Group is already updated.,Studentgruppen är redan uppdaterad.,
Student Group: ,Studentgrupp:,
Student ID,Student-ID,
Student ID: ,Student-ID:,
Student LMS Activity,Student LMS-aktivitet,
Student Mobile No.,Student Mobile No.,
Student Name,Elevs namn,
Student Name: ,Elevs namn:,
Student Report Card,Studentrapportkort,
Student is already enrolled.,Student är redan inskriven.,
Student {0} - {1} appears Multiple times in row {2} & {3},Student {0} - {1} visas flera gånger i rad {2} &amp; {3},
Student {0} does not belong to group {1},Student {0} tillhör inte gruppen {1},
Student {0} exist against student applicant {1},Student {0} finns mot elev sökande {1},
"Students are at the heart of the system, add all your students","Eleverna i hjärtat i systemet, lägga till alla dina elever",
Sub Assemblies,Sub Assemblies,
Sub Type,Subtyp,
Sub-contracting,Underleverantörer,
Subcontract,Subkontrakt,
Subject,Ämne,
Submit,Skicka,
Submit this Work Order for further processing.,Skicka in denna arbetsorder för vidare bearbetning.,
Subscription,Prenumeration,
Subscription Management,Prenumerationshantering,
Subscriptions,Prenumerationer,
Subtotal,Delsumma,
Successful,Framgångsrik,
Successfully Reconciled,Framgångsrikt Avstämt,
Successfully Set Supplier,Framgångsrikt sätta leverantör,
Successfully created payment entries,Framgångsrikt skapade betalningsuppgifter,
Successfully deleted all transactions related to this company!,Framgångsrikt bort alla transaktioner i samband med detta företag!,
Sum of Scores of Assessment Criteria needs to be {0}.,Summan av Mängder av bedömningskriterier måste vara {0}.,
Sum of points for all goals should be 100. It is {0},Summan av poäng för alla mål bör vara 100. Det är {0},
Summary,Sammanfattning,
Summary for this month and pending activities,Sammanfattning för denna månad och pågående aktiviteter,
Summary for this week and pending activities,Sammanfattning för denna vecka och pågående aktiviteter,
Sunday,Söndag,
Suplier,suplier,
Supplier,Leverantör,
Supplier Group,Leverantörsgrupp,
Supplier Group master.,Leverantörsgrupp mästare.,
Supplier Id,Leverantör Id,
Supplier Invoice Date cannot be greater than Posting Date,Leverantörsfakturor Datum kan inte vara större än Publiceringsdatum,
Supplier Invoice No,Leverantörsfaktura Nej,
Supplier Invoice No exists in Purchase Invoice {0},Leverantör faktura nr existerar i inköpsfaktura {0},
Supplier Name,Leverantörsnamn,
Supplier Part No,Leverantör varunummer,
Supplier Quotation,Leverantör Offert,
Supplier Scorecard,Leverantör Scorecard,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Leverantör Warehouse obligatorisk för underleverantörer inköpskvitto,
Supplier database.,Leverantörsdatabas.,
Supplier {0} not found in {1},Leverantör {0} finns inte i {1},
Supplier(s),Leverantör (s),
Supplies made to UIN holders,Leveranser till UIN-innehavare,
Supplies made to Unregistered Persons,Leveranser till oregistrerade personer,
Suppliies made to Composition Taxable Persons,Leveranser till skattepliktiga personer,
Supply Type,Tillförsel Typ,
Support,Stöd,
Support Analytics,Stöd Analytics,
Support Settings,support Inställningar,
Support Tickets,Support biljetter,
Support queries from customers.,Support frågor från kunder.,
Susceptible,Mottaglig,
Sync has been temporarily disabled because maximum retries have been exceeded,Synkroniseringen har avaktiverats tillfälligt eftersom högsta försök har överskridits,
Syntax error in condition: {0},Syntaxfel i skick: {0},
Syntax error in formula or condition: {0},Syntax error i formel eller tillstånd: {0},
System Manager,System Manager,
TDS Rate %,TDS-ränta%,
Tap items to add them here,Tryck på objekt för att lägga till dem här,
Target,Mål,
Target ({}),Mål ({}),
Target On,Mål på,
Target Warehouse,Target Lager,
Target warehouse is mandatory for row {0},Target lager är obligatoriskt för rad {0},
Task,Uppgift,
Tasks,uppgifter,
Tasks have been created for managing the {0} disease (on row {1}),Uppgifter har skapats för att hantera {0} sjukdomen (på rad {1}),
Tax,Skatt,
Tax Assets,Skattefordringar,
Tax Category,Skatt kategori,
Tax Category for overriding tax rates.,Skattekategori för överskridande skattesatser.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items",Skattekategori har ändrats till &quot;Totalt&quot; eftersom alla artiklar är poster som inte är lagret,
Tax ID,Skatte ID,
Tax Id: ,Skatte ID:,
Tax Rate,Skattesats,
Tax Rule Conflicts with {0},Skatt Regel Konflikter med {0},
Tax Rule for transactions.,Skatte Regel för transaktioner.,
Tax Template is mandatory.,Skatte Mall är obligatorisk.,
Tax Withholding rates to be applied on transactions.,Skatteavdrag som ska tillämpas på transaktioner.,
Tax template for buying transactions.,Skatte mall för att köpa transaktioner.,
Tax template for item tax rates.,Skattmall för artikelskattesatser.,
Tax template for selling transactions.,Skatte mall för att sälja transaktioner.,
Taxable Amount,Skattepliktiga belopp,
Taxes,Skatter,
Technology,Teknik,
Telecommunications,telekommunikation,
Telephone Expenses,Telefon Kostnader,
Television,Tv,
Template Name,Mallnamn,
Template of terms or contract.,Mall av termer eller kontrakt.,
Templates of supplier scorecard criteria.,Mallar med leverantörsspecifika kriterier.,
Templates of supplier scorecard variables.,Mallar med leverantörsspecifika variabler.,
Templates of supplier standings.,Mallar av leverantörsställningar.,
Temporarily on Hold,Temporärt på håll,
Temporary,Tillfällig,
Temporary Accounts,Tillfälliga konton,
Temporary Opening,Tillfällig öppning,
Terms and Conditions,Villkor,
Terms and Conditions Template,Villkor Mall,
Territory,Territorium,
Thank you for your business!,Tack för din verksamhet!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Från paketnummer&quot; Fältet får inte vara tomt eller det är värdet mindre än 1.,
The Brand,Varumärket,
The Item {0} cannot have Batch,Item {0} kan inte ha Batch,
The Loyalty Program isn't valid for the selected company,Lojalitetsprogrammet är inte giltigt för det valda företaget,
The Payment Term at row {0} is possibly a duplicate.,Betalningstiden i rad {0} är eventuellt en dubblett.,
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,Termen Slutdatum kan inte vara tidigare än Term startdatum. Rätta datum och försök 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.,Termen Slutdatum kan inte vara senare än slutet av året Datum för läsåret som termen är kopplad (läsåret {}). Rätta datum och försök 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.,Termen Startdatum kan inte vara tidigare än året Startdatum för läsåret som termen är kopplad (läsåret {}). Rätta datum och försök igen.,
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,Året Slutdatum kan inte vara tidigare än året Startdatum. Rätta datum och försök 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.,Mängden {0} som anges i denna betalningsförfrågan skiljer sig från det beräknade beloppet för alla betalningsplaner: {1}. Se till att detta är korrekt innan du skickar in dokumentet.,
The field From Shareholder cannot be blank,Fältet från aktieägare kan inte vara tomt,
The field To Shareholder cannot be blank,Fältet till aktieägare kan inte vara tomt,
The fields From Shareholder and To Shareholder cannot be blank,Fälten Från aktieägare och till aktieägare kan inte vara tomma,
The folio numbers are not matching,Folio numren matchar inte,
The holiday on {0} is not between From Date and To Date,Semester på {0} är inte mellan Från datum och Till datum,
The name of the institute for which you are setting up this system.,Namnet på institutet som du installerar systemet.,
The name of your company for which you are setting up this system.,Namnet på ditt företag som du ställer in det här systemet.,
The number of shares and the share numbers are inconsistent,Antal aktier och aktienumren är inkonsekventa,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,Betalningsgateway-kontot i plan {0} skiljer sig från betalnings gateway-kontot i denna betalningsförfrågan,
The selected BOMs are not for the same item,De valda stycklistor är inte samma objekt,
The selected item cannot have Batch,Det valda alternativet kan inte ha Batch,
The seller and the buyer cannot be the same,Säljaren och köparen kan inte vara samma,
The shareholder does not belong to this company,Aktieägaren tillhör inte detta företag,
The shares already exist,Aktierna existerar redan,
The shares don't exist with the {0},Aktierna existerar inte 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",Uppgiften har antagits som ett bakgrundsjobb. Om det finns något problem med behandlingen i bakgrunden kommer systemet att lägga till en kommentar om felet i denna aktieavstämning och återgå till utkastet.,
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Sedan prissättningsregler filtreras bort baserat på kundens, Customer Group, Territory, leverantör, leverantör typ, kampanj, Sales Partner etc.",
"There are inconsistencies between the rate, no of shares and the amount calculated","Det finns inkonsekvenser mellan räntan, antal aktier och beräknat belopp",
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.,Det kan vara en multipelbaserad insamlingsfaktor baserat på den totala spenderingen. Men konverteringsfaktorn för inlösen kommer alltid att vara densamma för alla nivåer.,
There can only be 1 Account per Company in {0} {1},Det kan bara finnas ett konto per Company i {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""",Det kan bara finnas en frakt Regel skick med 0 eller blank värde för &quot;till värde&quot;,
There is not enough leave balance for Leave Type {0},Det finns inte tillräckligt ledighet balans för Lämna typ {0},
There is nothing to edit.,Det finns inget att redigera.,
There isn't any item variant for the selected item,Det finns ingen varianter för det valda objektet,
"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.","Det verkar finnas ett problem med serverns GoCardless-konfiguration. Oroa dig inte, i händelse av fel kommer beloppet att återbetalas till ditt konto.",
There were errors creating Course Schedule,Det fanns fel som skapade kursschema,
There were errors.,Det fanns fel.,
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,Denna punkt är en mall och kan inte användas i transaktioner. Punkt attribut kommer att kopieras över till varianterna inte &quot;Nej Kopiera&quot; ställs in,
This Item is a Variant of {0} (Template).,Denna artikel är en variant av {0} (Mall).,
This Month's Summary,Månadens Sammanfattning,
This Week's Summary,Veckans sammanfattning,
This action will stop future billing. Are you sure you want to cancel this subscription?,Den här åtgärden stoppar framtida fakturering. Är du säker på att du vill avbryta denna prenumeration?,
This covers all scorecards tied to this Setup,Detta täcker alla scorecards kopplade till denna inställning,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Detta dokument är över gränsen med {0} {1} för posten {4}. Är du göra en annan {3} mot samma {2}?,
This is a root account and cannot be edited.,Detta är en root-kontot och kan inte ändras.,
This is a root customer group and cannot be edited.,Detta är en rot kundgrupp och kan inte ändras.,
This is a root department and cannot be edited.,Detta är en rotavdelning och kan inte redigeras.,
This is a root healthcare service unit and cannot be edited.,Detta är en root healthcare service enhet och kan inte redigeras.,
This is a root item group and cannot be edited.,Detta är en rot varugrupp och kan inte ändras.,
This is a root sales person and cannot be edited.,Detta är en rot säljare och kan inte ändras.,
This is a root supplier group and cannot be edited.,Detta är en rotleverantörsgrupp och kan inte redigeras.,
This is a root territory and cannot be edited.,Detta är en rot territorium och kan inte ändras.,
This is an example website auto-generated from ERPNext,Detta är ett exempel webbplats automatiskt genererade från ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Detta grundar sig på stockar mot detta fordon. Se tidslinje nedan för mer information,
This is based on stock movement. See {0} for details,Detta är baserat på aktie rörelse. Se {0} för mer information,
This is based on the Time Sheets created against this project,Detta grundar sig på tidrapporter som skapats mot detta projekt,
This is based on the attendance of this Student,Detta grundar sig på närvaron av denna Student,
This is based on transactions against this Customer. See timeline below for details,Detta grundar sig på transaktioner mot denna kund. Se tidslinje nedan för mer information,
This is based on transactions against this Healthcare Practitioner.,Detta bygger på transaktioner mot denna vårdgivare.,
This is based on transactions against this Patient. See timeline below for details,Detta baseras på transaktioner mot denna patient. Se tidslinjen nedan för detaljer,
This is based on transactions against this Sales Person. See timeline below for details,Detta baseras på transaktioner mot denna säljare. Se tidslinjen nedan för detaljer,
This is based on transactions against this Supplier. See timeline below for details,Detta grundar sig på transaktioner mot denna leverantör. Se tidslinje nedan för mer information,
This {0} conflicts with {1} for {2} {3},Detta {0} konflikter med {1} för {2} {3},
Time Sheet for manufacturing.,Tidrapportering för tillverkning.,
Time Tracking,Time Tracking,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Tidsluckan hoppa över, slitsen {0} till {1} överlappar existerande slits {2} till {3}",
Time slots added,Tidsspår läggs till,
Time(in mins),Tid (i min),
Timer,Timer,
Timer exceeded the given hours.,Timern översteg de angivna timmarna.,
Timesheet,Tidrapport,
Timesheet for tasks.,Tidrapport för uppgifter.,
Timesheet {0} is already completed or cancelled,Tidrapport {0} är redan slutförts eller avbrutits,
Timesheets,tidrapporter,
"Timesheets help keep track of time, cost and billing for activites done by your team","Tidrapporter hjälpa till att hålla reda på tid, kostnad och fakturering för aktiviteter som utförts av ditt team",
Titles for print templates e.g. Proforma Invoice.,Titlar för utskriftsmallar t.ex. Proforma faktura.,
To,Till,
To Address 1,Till Adress 1,
To Address 2,Till Adress 2,
To Bill,Till Bill,
To Date,Till Datum,
To Date cannot be before From Date,Hittills inte kan vara före startdatum,
To Date cannot be less than From Date,Till datum kan inte vara mindre än Från datum,
To Date must be greater than From Date,Hittills måste vara större än Från datum,
To Date should be within the Fiscal Year. Assuming To Date = {0},Till Datum bör ligga inom räkenskapsåret. Förutsatt att Dag = {0},
To Datetime,Till Datetime,
To Deliver,Att leverera,
To Deliver and Bill,Att leverera och Bill,
To Fiscal Year,Till räkenskapsår,
To GSTIN,Till GSTIN,
To Party Name,Till partnamn,
To Pin Code,Att stifta kod,
To Place,Att placera,
To Receive,Att motta,
To Receive and Bill,Ta emot och Bill,
To State,Till staten,
To Warehouse,Till Warehouse,
To create a Payment Request reference document is required,För att skapa en betalningsförfrågan krävs referensdokument,
"To filter based on Party, select Party Type first","För att filtrera baserat på partiet, väljer Party Typ först",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","För att få ut det bästa av ERPNext, rekommenderar vi att du tar dig tid och titta på dessa hjälp videor.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Om du vill inkludera skatt i rad {0} i punkt hastighet, skatter i rader {1} måste också inkluderas",
To make Customer based incentive schemes.,Att göra kundbaserade incitamentsprogram.,
"To merge, following properties must be same for both items","För att sammanfoga, måste följande egenskaper vara samma för båda objekten",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","För att inte tillämpa prissättning regel i en viss transaktion, bör alla tillämpliga prissättning regler inaktiveras.",
"To set this Fiscal Year as Default, click on 'Set as Default'","För att ställa denna verksamhetsåret som standard, klicka på &quot;Ange som standard&quot;",
To view logs of Loyalty Points assigned to a Customer.,För att visa loggar över lojalitetspoäng som tilldelats en kund.,
To {0},Till {0},
To {0} | {1} {2},Till {0} | {1} {2},
Toggle Filters,Växla filter,
Too many columns. Export the report and print it using a spreadsheet application.,Alltför många kolumner. Exportera rapporten och skriva ut det med hjälp av ett kalkylprogram.,
Tools,Verktyg,
Total (Credit),Total (Credit),
Total (Without Tax),Totalt (utan skatt),
Total Achieved,Totalt Uppnått,
Total Actual,Totalt Faktisk,
Total Amount,Totala summan,
Total Amount Credited,Summa belopp Credited,
Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Totalt tillämpliga avgifter i inköpskvittot Items tabellen måste vara densamma som den totala skatter och avgifter,
Total Budget,Total budget,
Total Collected: {0},Totalt samlat: {0},
Total Commission,Totalt kommissionen,
Total Contribution Amount: {0},Totala bidragsbeloppet: {0},
Total Credit/ Debit Amount should be same as linked Journal Entry,Totalt kredit- / debiteringsbelopp ska vara samma som länkad journalinmatning,
Total Debit must be equal to Total Credit. The difference is {0},Totalt Betal måste vara lika med de sammanlagda kredit. Skillnaden är {0},
Total Invoiced Amount,Sammanlagt fakturerat belopp,
Total Order Considered,Den totala order Anses,
Total Order Value,Totalt ordervärde,
Total Outgoing,Totalt Utgående,
Total Outstanding,Totalt Utestående,
Total Outstanding Amount,Totala utestående beloppet,
Total Outstanding: {0},Totalt utestående: {0},
Total Paid Amount,Sammanlagda belopp som betalats,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,Totala betalningsbeloppet i betalningsplanen måste vara lika med Grand / Rounded Total,
Total Payments,Totala betalningar,
Total Qty,Totalt antal,
Total Quantity,Total kvantitet,
Total Revenue,Totala intäkter,
Total Student,Totalt Student,
Total Target,Totalt Target,
Total Tax,Totalt Skatt,
Total Taxable Amount,Totala skattepliktiga beloppet,
Total Taxable Value,Totalt beskattningsbart värde,
Total Unpaid: {0},Totalt Obetalda: {0},
Total Variance,Totalt Varians,
Total Weightage of all Assessment Criteria must be 100%,Total weightage av alla kriterier för bedömning måste vara 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Totalt förskott ({0}) mot Order {1} kan inte vara större än totalsumman ({2}),
Total advance amount cannot be greater than total claimed amount,Det totala förskottsbeloppet får inte vara större än det totala beloppet,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Summa tilldelade löv är flera dagar än maximal fördelning av {0} ledighetstyp för anställd {1} under perioden,
Total allocated leaves are more than days in the period,Totalt tilldelade bladen är mer än dagar under perioden,
Total allocated percentage for sales team should be 100,Totala fördelade procentsats för säljteam bör vara 100,
Total cannot be zero,Totalt kan inte vara noll,
Total contribution percentage should be equal to 100,Den totala bidragsprocenten bör vara lika med 100,
Total hours: {0},Totalt antal timmar: {0},
Total {0} ({1}),Totalt {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'",Totalt {0} för alla objekt är noll kan vara du bör ändra &#39;Fördela avgifter bygger på&#39;,
Total(Amt),Totalt (Amt),
Total(Qty),Totalt (Antal),
Traceability,spårbarhet,
Track Leads by Lead Source.,Spåra ledningar av blykälla.,
Transaction,Transaktion,
Transaction Date,Transaktionsdatum,
Transaction Type,Överföringstyp,
Transaction currency must be same as Payment Gateway currency,Transaktions valutan måste vara samma som Payment Gateway valuta,
Transaction not allowed against stopped Work Order {0},Transaktion tillåts inte mot stoppad Arbetsorder {0},
Transaction reference no {0} dated {1},Transaktions referensnummer {0} daterad {1},
Transactions,transaktioner,
Transactions can only be deleted by the creator of the Company,Transaktioner kan bara tas bort av skaparen av bolaget,
Transfer,Överföring,
Transfer Material,Transfermaterial,
Transfer Type,Överföringstyp,
Transfer an asset from one warehouse to another,Överföra en tillgång från ett lager till ett annat,
Transfered,överfört,
Transferred Quantity,Överfört antal,
Transport Receipt Date,Transportmottagningsdatum,
Transport Receipt No,Transport kvitto nr,
Transportation,Transportfordon,
Transporter ID,Transporter ID,
Transporter Name,Transportör Namn,
Travel Expenses,Resekostnader,
Tree Type,Tree Typ,
Tree of Bill of Materials,Tree of Bill of Materials,
Tree of Item Groups.,Träd artikelgrupper.,
Tree of Procedures,Procedureträd,
Tree of Quality Procedures.,Tree of Quality Procedures.,
Tree of financial Cost Centers.,Träd av finansiella kostnadsställen.,
Tree of financial accounts.,Träd av finansräkenskaperna.,
Treshold {0}% appears more than once,Tröskel {0}% visas mer än en gång,
Trial Period End Date Cannot be before Trial Period Start Date,Pröva period Slutdatum kan inte vara före startdatum för prövningsperiod,
Trialling,testar,
Type of Business,Typ av företag,
Types of activities for Time Logs,Olika typer av aktiviteter för Time Loggar,
UOM,UOM,
UOM Conversion factor is required in row {0},UOM omräkningsfaktor i rad {0},
UOM coversion factor required for UOM: {0} in Item: {1},UOM coverfaktor krävs för UOM: {0} i punkt: {1},
URL,URL,
Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Det gick inte att hitta växelkursen för {0} till {1} för nyckeldatum {2}. Var god skapa en valutautbyteslista manuellt,
Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Det gick inte att hitta poäng från {0}. Du måste ha stående poäng som täcker 0 till 100,
Unable to find variable: ,Det gick inte att hitta variabel:,
Unblock Invoice,Avblockera faktura,
Uncheck all,Avmarkera alla,
Unclosed Fiscal Years Profit / Loss (Credit),Oavslutade räkenskapsår Vinst / Förlust (Credit),
Unit,Enhet,
Unit of Measure,Måttenhet,
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Mätenhet {0} har angetts mer än en gång i Omvandlingsfaktor Tabell,
Unknown,Okänd,
Unpaid,Obetald,
Unsecured Loans,Lån utan säkerhet,
Unsubscribe from this Email Digest,Avbeställa Facebook Twitter Digest,
Unsubscribed,Otecknade,
Until,Tills,
Unverified Webhook Data,Overifierade Webhook Data,
Update Account Name / Number,Uppdatera kontonamn / nummer,
Update Account Number / Name,Uppdatera kontonummer / namn,
Update Cost,Uppdatera kostnad,
Update Items,Uppdatera objekt,
Update Print Format,Uppdatera utskriftsformat,
Update bank payment dates with journals.,Uppdatera bankbetalningsdagar med tidskrifter.,
Update in progress. It might take a while.,Uppdatering pågår. Det kan ta ett tag.,
Update rate as per last purchase,Uppdateringsfrekvens enligt senaste köp,
Update stock must be enable for the purchase invoice {0},Uppdateringslagret måste vara aktiverat för inköpsfakturan {0},
Updating Variants...,Uppdaterar varianter ...,
Upload your letter head and logo. (you can edit them later).,Ladda upp din brevhuvud och logotyp. (Du kan redigera dem senare).,
Upper Income,Övre inkomst,
Use Sandbox,användning Sandbox,
User,Användare,
User ID,användar ID,
User ID not set for Employee {0},Användar-ID inte satt för anställd {0},
User Remark,Användar Anmärkning,
User has not applied rule on the invoice {0},Användaren har inte tillämpat regeln på fakturan {0},
User {0} already exists,Användaren {0} finns redan,
User {0} created,Användare {0} skapad,
User {0} does not exist,Användare {0} inte existerar,
User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,Användaren {0} har ingen standard POS-profil. Kontrollera standard i rad {1} för den här användaren.,
User {0} is already assigned to Employee {1},Användare {0} är redan tilldelad anställd {1},
User {0} is already assigned to Healthcare Practitioner {1},Användaren {0} är redan tilldelad Healthcare Practitioner {1},
Users,användare,
Utility Expenses,Utility Kostnader,
Valid From Date must be lesser than Valid Upto Date.,Giltig från datum måste vara mindre än giltig till datum.,
Valid Till,Giltig till,
Valid from and valid upto fields are mandatory for the cumulative,Giltiga från och giltiga upp till fält är obligatoriska för det kumulativa,
Valid from date must be less than valid upto date,Giltigt från datum måste vara mindre än giltigt fram till datum,
Valid till date cannot be before transaction date,Giltigt till datum kan inte vara före transaktionsdatum,
Validity,Giltighet,
Validity period of this quotation has ended.,Giltighetstiden för denna offert har upphört.,
Valuation Rate,Värderings betyg,
Valuation Rate is mandatory if Opening Stock entered,Värderingskurs är obligatoriskt om ingående lager angivits,
Valuation type charges can not marked as Inclusive,Värderingsavgifter kan inte markerats som inklusive,
Value Or Qty,Värde eller antal,
Value Proposition,Värde proposition,
Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Värde för Attribut {0} måste vara inom intervallet {1} till {2} i steg om {3} till punkt {4},
Value must be between {0} and {1},Värdet måste vara mellan {0} och {1},
"Values of exempt, nil rated and non-GST inward supplies","Värden för undantagna, nollklassade och icke-GST-leveranser",
Variance,Varians,
Variance ({}),Varians ({}),
Variant,Variant,
Variant Attributes,Variant Attribut,
Variant Based On cannot be changed,Variant Baserad på kan inte ändras,
Variant Details Report,Variant Detaljer Report,
Variant creation has been queued.,Varianter har skapats i kö.,
Vehicle Expenses,fordons Kostnader,
Vehicle No,Fordons nr,
Vehicle Type,fordonstyp,
Vehicle/Bus Number,Fordons- / bussnummer,
Venture Capital,Tilldelningskapital,
View Chart of Accounts,Visa diagram över konton,
View Fees Records,Visa avgifter,
View Form,Visa formulär,
View Lab Tests,Visa labtester,
View Leads,Se prospekts,
View Ledger,Se journal,
View Now,Visa nu,
View a list of all the help videos,Visa en lista över alla hjälp videos,
View in Cart,Visa i varukorgen,
Visit report for maintenance call.,Besöksrapport för service samtal.,
Visit the forums,Besök forumet,
Vital Signs,Vitala tecken,
Volunteer,Volontär,
Volunteer Type information.,Volontär typ information.,
Volunteer information.,Frivillig information.,
Voucher #,Rabatt #,
Voucher No,Rabatt nr,
Voucher Type,Rabatt Typ,
WIP Warehouse,WIP Lager,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Lager kan inte tas bort som lagrets huvudbok  existerar för det här lagret.,
Warehouse cannot be changed for Serial No.,Lager kan inte ändras för serienummer,
Warehouse is mandatory,Warehouse är obligatoriskt,
Warehouse is mandatory for stock Item {0} in row {1},Lager är obligatoriskt för Lagervara {0} i rad {1},
Warehouse not found in the system,Lagret hittades inte i systemet,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Lager som krävs vid rad nr {0}, ange standardlager för objektet {1} för företaget {2}",
Warehouse required for stock Item {0},Lager krävs för Lagervara {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},Lager {0} kan inte tas bort då kvantitet existerar för artiklar {1},
Warehouse {0} does not belong to company {1},Lager {0} tillhör inte företaget {1},
Warehouse {0} does not exist,Lager {0} existerar inte,
"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} är inte länkat till något konto. Vänligen ange kontot i lageret eller sätt in det vanliga kontot i företaget {1}.,
Warehouses with child nodes cannot be converted to ledger,Lager med underordnade noder kan inte omvandlas till liggaren,
Warehouses with existing transaction can not be converted to group.,Lager med befintlig transaktion kan inte konverteras till gruppen.,
Warehouses with existing transaction can not be converted to ledger.,Lager med befintlig transaktion kan inte konverteras till redovisningen.,
Warning,Varning,
Warning: Another {0} # {1} exists against stock entry {2},Varning: En annan {0} # {1} finns mot införande i lager {2},
Warning: Invalid SSL certificate on attachment {0},Varning: Ogiltig SSL-certifikat på fäst {0},
Warning: Invalid attachment {0},Varning: Ogiltig Attachment {0},
Warning: Material Requested Qty is less than Minimum Order Qty,Varning: Material Begärt Antal är mindre än Minimum Antal,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Varning: Kundorder {0} finns redan mot Kundens beställning {1},
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,"Varning: Systemet kommer inte att kontrollera överdebitering, eftersom belopp för punkt {0} i {1} är noll",
Warranty,Garanti,
Warranty Claim,Garantianspråk,
Warranty Claim against Serial No.,Garantianspråk mot serienummer,
Website,Webbplats,
Website Image should be a public file or website URL,Website Bild bör vara en offentlig fil eller webbadress,
Website Image {0} attached to Item {1} cannot be found,Website Bild {0} fäst till punkt {1} kan inte hittas,
Website Manager,Webbplats ägare,
Website Settings,Webbplatsinställningar,
Wednesday,Onsdag,
Week,Vecka,
Weekly,Veckovis,
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Vikt nämns \ Vänligen ange ""Vikt UOM"" också",
Welcome email sent,Välkommen e-postmeddelandet,
Welcome to ERPNext,Välkommen till oss,
What do you need help with?,Vad behöver du hjälp med?,
What does it do?,Vad gör den?,
Where manufacturing operations are carried.,Där tillverkningsprocesser genomförs.,
White,Vit,
Wire Transfer,Elektronisk överföring,
WooCommerce Products,WooCommerce-produkter,
Work In Progress,Pågående arbete,
Work Order,Arbetsorder,
Work Order already created for all items with BOM,Arbetsorder som redan är skapad för alla artiklar med BOM,
Work Order cannot be raised against a Item Template,Arbetsorder kan inte höjas mot en objektmall,
Work Order has been {0},Arbetsorder har varit {0},
Work Order not created,Arbetsorder inte skapad,
Work Order {0} must be cancelled before cancelling this Sales Order,Arbetsorder {0} måste avbrytas innan du avbryter denna försäljningsorder,
Work Order {0} must be submitted,Arbetsorder {0} måste lämnas in,
Work Orders Created: {0},Arbetsorder skapade: {0},
Work-in-Progress Warehouse is required before Submit,Pågående Arbete - Lager krävs innan du kan Skicka,
Working,Arbetande,
Working Hours,Arbetstimmar,
Workstation,Arbetsstation,
Workstation is closed on the following dates as per Holiday List: {0},Arbetsstation är stängd på följande datum enligt kalender: {0},
Wrapping up,Avslutar,
Wrong Password,Fel lösenord,
Year start date or end date is overlapping with {0}. To avoid please set company,År startdatum eller slutdatum överlappar med {0}. För att undvika ställ företag,
You are not authorized to add or update entries before {0},Du har inte behörighet att lägga till eller uppdatera poster före {0},
You are not authorized to set Frozen value,Du har inte behörighet att ställa in Frysta värden,
You can not change rate if BOM mentioned agianst any item,Du kan inte ändra kurs om BOM nämnts mot någon artikel,
You can not enter current voucher in 'Against Journal Entry' column,Du kan inte ange aktuell kupong i 'Mot Journalposter' kolumnen,
You can only have Plans with the same billing cycle in a Subscription,Du kan bara ha planer med samma faktureringsperiod i en prenumeration,
You can only redeem max {0} points in this order.,Du kan bara lösa in maximala {0} poäng i denna ordning.,
You can only renew if your membership expires within 30 days,Du kan bara förnya om ditt medlemskap löper ut inom 30 dagar,
You can only select a maximum of one option from the list of check boxes.,Du kan bara välja högst ett alternativ från listan med kryssrutor.,
You can't redeem Loyalty Points having more value than the Grand Total.,Du kan inte lösa in Lojalitetspoäng som har mer värde än Grand Total.,
You cannot credit and debit same account at the same time,Du kan inte kreditera och debitera samma konto på samma gång,
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,Du kan inte ta bort Räkenskapsårets {0}. Räkenskapsårets {0} är satt som standard i Globala inställningar,
You cannot delete Project Type 'External',Du kan inte ta bort Project Type &#39;External&#39;,
You cannot edit root node.,Du kan inte redigera rotknutpunkt.,
You cannot restart a Subscription that is not cancelled.,Du kan inte starta om en prenumeration som inte avbryts.,
You don't have enough Loyalty Points to redeem,Du har inte tillräckligt med lojalitetspoäng för att lösa in,
You have already assessed for the assessment criteria {}.,Du har redan bedömt för bedömningskriterierna {}.,
You have already selected items from {0} {1},Du har redan valt objekt från {0} {1},
You have been invited to collaborate on the project: {0},Du har blivit inbjuden att samarbeta i projektet: {0},
You have entered duplicate items. Please rectify and try again.,Du har angett dubbletter. Vänligen rätta och försök igen.,
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Du måste vara en annan användare än Administratör med systemhanteraren och objekthanterarens roller för att registrera dig på Marketplace.,
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Du måste vara användare med systemhanteraren och objekthanterarens roller för att lägga till användare på Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Du måste vara en användare med systemhanteraren och objekthanterarens roller för att registrera dig på Marketplace.,
You need to enable Shopping Cart,Du måste aktivera Varukorgen,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Du kommer att förlora register över tidigare genererade fakturor. Är du säker på att du vill starta om den här prenumerationen?,
Your Organization,Din organisation,
Your cart is Empty,Din vagn är tom,
Your email address...,Din e-postadress...,
Your order is out for delivery!,Din beställning är ute för leverans!,
Your tickets,Dina biljetter,
ZIP Code,Postnummer,
[Error],[Fel],
[{0}](#Form/Item/{0}) is out of stock,[{0}] (# Form/Objekt/{0}) är slut i lager,
`Freeze Stocks Older Than` should be smaller than %d days.,"""Frys lager äldre än"" bör vara mindre än %d dagar.",
based_on,baserat på,
cannot be greater than 100,kan inte vara större än 100,
disabled user,inaktiverad användare,
"e.g. ""Build tools for builders""",t.ex. &quot;Bygg verktyg för byggare&quot;,
"e.g. ""Primary School"" or ""University""",t.ex. &quot;Primary School&quot; eller &quot;universitet&quot;,
"e.g. Bank, Cash, Credit Card","t.ex. bank, kontanter, kreditkort",
hidden,dold,
modified,ändrad,
old_parent,gammalt_mål,
on,på,
{0} '{1}' is disabled,{0} {1} &quot;är inaktiverad,
{0} '{1}' not in Fiscal Year {2},{0} {1} &quot;inte under räkenskapsåret {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) kan inte vara större än den planerade kvantiteten ({2}) i arbetsorder {3},
{0} - {1} is inactive student,{0} - {1} är inaktiv student,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} är inte inskriven i batch {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} är inte inskriven i kursen {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} budget för kontot {1} mot {2} {3} är {4}. Det kommer att överskridas med {5},
{0} Digest,{0} Sammandrag,
{0} Request for {1},{0} Begäran om {1},
{0} Result submittted,{0} Resultat skickat,
{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} serienummer krävs för objekt {1}. Du har angivit {2}.,
{0} Student Groups created.,{0} Studentgrupper skapade.,
{0} Students have been enrolled,{0} Studenter har anmält sig,
{0} against Bill {1} dated {2},{0} mot räkning {1} daterad {2},
{0} against Purchase Order {1},{0} mot beställning {1},
{0} against Sales Invoice {1},{0} mot faktura {1},
{0} against Sales Order {1},{0} mot kundorder {1},
{0} asset cannot be transferred,{0} tillgång kan inte överföras,
{0} can not be negative,{0} kan inte vara negativ,
{0} created,{0} skapad,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.",{0} har för närvarande {1} leverantörsanmärkning och inköpsorder till denna leverantör bör utfärdas med försiktighet!,
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.",{0} har för närvarande {1} leverantörsanmärkning och offertförfrågan bör ställas med försiktighet!,
{0} does not belong to Company {1},{0} tillhör inte företaget {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} har inte ett vårdgivarschema. Lägg till det i Vårdgivare,
{0} entered twice in Item Tax,{0} angiven två gånger under punkten Skatt,
{0} for {1},{0} för {1},
{0} has been submitted successfully,{0} har skickats in framgångsrikt,
{0} has fee validity till {1},{0} har avgiftsgiltighet till {1},
{0} hours,{0} timmar,
{0} in row {1},{0} på rad {1},
{0} is blocked so this transaction cannot proceed,{0} är blockerad så denna transaktion kan inte fortsätta,
{0} is mandatory,{0} är obligatoriskt,
{0} is mandatory for Item {1},{0} är obligatoriskt för punkt {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} är obligatorisk. Kanske har en valutaväxlingskurs inte skapats för {1} till {2}.,
{0} is not a stock Item,{0} är inte en lagervara,
{0} is not a valid Batch Number for Item {1},{0} är inte ett giltigt batchnummer för objekt {1},
{0} is not added in the table,{0} läggs inte till i tabellen,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} är nu standard räkenskapsår. Vänligen uppdatera din webbläsare för att ändringen ska träda i kraft.,
{0} is on hold till {1},{0} är i vänteläge till {1},
{0} item found.,{0} objekt hittades.,
{0} items found.,{0} hittade artiklar.,
{0} items in progress,{0} objekt pågår,
{0} items produced,{0} objekt producerade,
{0} must appear only once,{0} måste bara finnas en gång,
{0} must be negative in return document,{0} måste vara negativ i returdokument,
{0} not allowed to transact with {1}. Please change the Company.,{0} får inte göra transaktioner med {1}. Vänligen ändra företag.,
{0} not found for item {1},{0} hittades inte för objekt {1},
{0} parameter is invalid,{0} -parametern är ogiltig,
{0} payment entries can not be filtered by {1},{0} betalningsposter kan inte filtreras efter {1},
{0} should be a value between 0 and 100,{0} bör vara ett värde mellan 0 och 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} enheterav [{1}] (#Form/Objekt/{1}) hittades i [{2}] (#Form/Lager/{2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} enheter av {1} behövs i {2} på {3} {4} för {5} för att slutföra denna transaktion.,
{0} units of {1} needed in {2} to complete this transaction.,{0} enheter av {1} behövs i {2} för att slutföra denna transaktion.,
{0} valid serial nos for Item {1},{0} giltigt serienummer för objekt {1},
{0} variants created.,{0} varianter skapade.,
{0} {1} created,{0} {1} skapad,
{0} {1} does not exist,{0} {1} existerar inte,
{0} {1} has been modified. Please refresh.,{0} {1} har ändrats. Vänligen uppdatera.,
{0} {1} has not been submitted so the action cannot be completed,{0} {1} har inte skickats in så åtgärden kan inte slutföras,
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} är associerad med {2}, men partkonto är {3}",
{0} {1} is cancelled or closed,{0} {1} är avbruten eller stängd,
{0} {1} is cancelled or stopped,{0} {1} är avbruten eller stoppad,
{0} {1} is cancelled so the action cannot be completed,{0} {1} är avbruten så åtgärden kan inte slutföras,
{0} {1} is closed,{0} {1} är stängd,
{0} {1} is disabled,{0} {1} är inaktiverad,
{0} {1} is frozen,{0} {1} är fryst,
{0} {1} is fully billed,{0} {1} är fullt fakturerad,
{0} {1} is not active,{0} {1} är inte aktiv,
{0} {1} is not associated with {2} {3},{0} {1} är inte associerad med {2} {3},
{0} {1} is not present in the parent company,{0} {1} finns inte i moderbolaget,
{0} {1} is not submitted,{0} {1} är inte skickad,
{0} {1} is {2},{0} {1} är {2},
{0} {1} must be submitted,{0} {1} måste skickas in,
{0} {1} not in any active Fiscal Year.,{0} {1} inte i något aktivt räkenskapsår.,
{0} {1} status is {2},{0} {1} status är {2},
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,"{0} {1}: ""Resultaträkning"" kontotyp {2} är inte tillåtet i inledande post",
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: konto {2} tillhör inte företaget {3},
{0} {1}: Account {2} is inactive,{0} {1}: kontot {2} är inaktivt,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: kontering för {2} kan endast göras i valuta: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Kostnadsställe är obligatorisk för punkt {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}: Kostnadsställe krävs för ""Resultaträkning"" konto {2}. Ange ett standardkostnadsställe för bolaget.",
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: Kostnadsställe {2} tillhör inte bolaget {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: Kunden är skyldig mot fordrans konto {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: krävs antingen debet- eller kreditbelopp för {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: Leverantör krävs mot betalkonto {2},
{0}% Billed,{0}% Fakturerad,
{0}% Delivered,{0}% Levererad,
{0}: From {1},{0}: Från {1},
{0}: {1} does not exists,{0}: {1} existerar inte,
{0}: {1} not found in Invoice Details table,{0}: {1} hittades inte i listan fakturainformation,
{} of {},{} av {},
Assigned To,Tilldelats,
Chat,Chatta,
Completed By,Fullgjord av,
Day of Week,Dag i veckan,
"Dear System Manager,","Kära Systemansvarig,",
Default Value,Standardvärde,
Email Group,E-postgrupp,
Email Settings,E-postinställningar,
Email not sent to {0} (unsubscribed / disabled),E-post skickas inte till {0} (otecknade / inaktiverad),
Error Message,Felmeddelande,
Fieldtype,Fieldtype,
Help Articles,Hjälpartiklar,
ID,ID,
Import,Import,
Language,Språk,
Likes,Gillar,
Merge with existing,Sammanfoga med befintlig,
Orientation,Orientering,
Parent,Förälder,
Payment Failed,Betalning misslyckades,
Personal,Personligt,
Post,Inlägg,
Postal Code,Postkod,
Provider,provider,
Read Only,Endast läs,
Recipient,Mottagare,
Reviews,recensioner,
Sender,Avsändare,
There were errors while sending email. Please try again.,Det fanns fel när du skickar e-post. Var god försök igen.,
Values Changed,värden Ändrad,
or,eller,
Ageing Range 4,Åldringsområde 4,
Allocated amount cannot be greater than unadjusted amount,Tilldelat belopp kan inte vara större än ojusterat belopp,
Allocated amount cannot be negative,Tilldelat belopp kan inte vara negativt,
"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","Skillnadskonto måste vara ett konto för tillgång / ansvar, eftersom denna aktieinmatning är en öppningsinmatning",
Import Successful,Importerad framgångsrik,
Please save first,Spara först,
Price not found for item {0} in price list {1},Pris hittades inte för artikel {0} i prislistan {1},
Warehouse Type,Lagertyp,
'Date' is required,&quot;Datum&quot; krävs,
Budgets,budgetar,
Bundle Qty,Bundle Qty,
Company GSTIN,Företaget GSTIN,
Company field is required,Företagets fält krävs,
Creating Dimensions...,Skapar dimensioner ...,
Duplicate entry against the item code {0} and manufacturer {1},Duplicera posten mot artikelkoden {0} och tillverkaren {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,Ogiltig GSTIN! Ingången du har angett stämmer inte med GSTIN-formatet för UIN-innehavare eller OIDAR-tjänsteleverantörer som inte är bosatta,
Invoice Grand Total,Fakturor Grand Total,
Last carbon check date cannot be a future date,Sista datum för kolkontroll kan inte vara ett framtida datum,
Make Stock Entry,Gör lagerinmatning,
Quality Feedback,Kvalitetsåterkoppling,
Quality Feedback Template,Kvalitetsåterkopplingsmall,
Rules for applying different promotional schemes.,Regler för tillämpning av olika kampanjprogram.,
Show {0},Visa {0},
Target Details,Måldetaljer,
{0} already has a Parent Procedure {1}.,{0} har redan en överordnad procedur {1}.,
API,API,
Annual,Årlig,
Change,Byta,
Contact Email,Kontakt E-Post,
From Date,Från Datum,
Group By,Grupp av,
Invalid URL,Ogiltig URL,
Landscape,Landskap,
Naming Series,Namge Serien,
No data to export,Inga data att exportera,
Portrait,Porträtt,
Print Heading,Utskrifts Rubrik,
Scheduler Inactive,Scheman Inaktiv,
Scheduler is inactive. Cannot import data.,Scheduler är inaktiv. Det går inte att importera data.,
Show Document,Visa dokument,
Show Traceback,Visa spårning,
Video,Video,
% Of Grand Total,% Av total summan,
<b>Company</b> is a mandatory filter.,<b>Företaget</b> är ett obligatoriskt filter.,
<b>From Date</b> is a mandatory filter.,<b>From Date</b> är ett obligatoriskt filter.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>Från tid</b> kan inte vara senare än <b>till tid</b> för {0},
<b>To Date</b> is a mandatory filter.,<b>Hittills</b> är ett obligatoriskt filter.,
A new appointment has been created for you with {0},En ny möte har skapats för dig med {0},
Account Value,Kontovärde,
Account is mandatory to get payment entries,Kontot är obligatoriskt för att få inbetalningar,
Account is not set for the dashboard chart {0},Kontot är inte inställt för instrumentpanelen {0},
Account {0} does not exists in the dashboard chart {1},Kontot {0} finns inte i översiktsdiagrammet {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Konto: <b>{0}</b> är kapital Arbetet pågår och kan inte uppdateras av Journal Entry,
Account: {0} is not permitted under Payment Entry,Konto: {0} är inte tillåtet enligt betalningsinmatning,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,Bokföringsdimension <b>{0}</b> krävs för &#39;Balansräkning&#39; -konto {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,Redovisningsdimension <b>{0}</b> krävs för kontot &#39;Vinst och förlust&#39; {1}.,
Accounting Masters,Bokföringsmästare,
Accounting Period overlaps with {0},Redovisningsperioden överlappar med {0},
Activity,Aktivitet,
Add / Manage Email Accounts.,Lägg till / Hantera e-postkonton.,
Add Child,Lägg till underval,
Add Multiple,Lägg till flera,
Add Participants,Lägg till deltagare,
Add to Featured Item,Lägg till den utvalda artikeln,
Add your review,Lägg till din recension,
Add/Edit Coupon Conditions,Lägg till / redigera kupongvillkor,
Added to Featured Items,Tillagd till utvalda artiklar,
Added {0} ({1}),Tillagd {0} ({1}),
Address Line 1,Adress Linje 1,
Addresses,Adresser,
Admission End Date should be greater than Admission Start Date.,Slutdatum för antagning bör vara större än startdatum för antagning.,
All,Allt,
All bank transactions have been created,Alla banktransaktioner har skapats,
All the depreciations has been booked,Alla avskrivningar har bokats,
Allow Resetting Service Level Agreement from Support Settings.,Tillåt återställning av servicenivåavtal från supportinställningar.,
Amount of {0} is required for Loan closure,Beloppet {0} krävs för lånets stängning,
Applied Coupon Code,Tillämpad kupongkod,
Apply Coupon Code,Tillämpa kupongkod,
Appointment Booking,Bokning av möten,
"As there are existing transactions against item {0}, you can not change the value of {1}",Eftersom det finns transaktioner mot produkten {0} så kan du inte ändra värdet av {1},
Asset Id,Tillgångs-id,
Asset Value,Tillgångsvärde,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,Justering av tillgångsvärde kan inte bokföras före tillgångs köpdatum <b>{0}</b> .,
Asset {0} does not belongs to the custodian {1},Tillgång {0} tillhör inte vårdnadshavaren {1},
Asset {0} does not belongs to the location {1},Tillgång {0} hör inte till platsen {1},
At least one of the Applicable Modules should be selected,Åtminstone en av de tillämpliga modulerna ska väljas,
Atleast one asset has to be selected.,Atleast en tillgång måste väljas.,
Authentication Failed,Autentisering misslyckades,
Automatic Reconciliation,Automatisk försoning,
Available For Use Date,Tillgängligt för användningsdatum,
Available Stock,Tillgängligt lager,
"Available quantity is {0}, you need {1}","Tillgänglig mängd är {0}, du behöver {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,BOM-jämförelseverktyg,
BOM recursion: {0} cannot be child of {1},BOM-rekursion: {0} kan inte vara barn till {1},
BOM recursion: {0} cannot be parent or child of {1},BOM-rekursion: {0} kan inte vara förälder eller barn till {1},
Back to Messages,Tillbaka till meddelanden,
Bank Data mapper doesn't exist,Bankdata-mapper finns inte,
Bank Details,Bankuppgifter,
Bank account '{0}' has been synchronized,Bankkonto &#39;{0}&#39; har synkroniserats,
Bank account {0} already exists and could not be created again,Bankkonto {0} finns redan och kunde inte skapas igen,
Bank accounts added,Bankkonton tillagda,
Batch no is required for batched item {0},Bunt nr krävs för batchföremål {0},
Billing Date,Faktureringsdatum,
Billing Interval Count cannot be less than 1,Faktureringsintervall kan inte vara mindre än 1,
Blue,Blå,
Book,bok,
Book Appointment,Boka tid,
Brand,Märke,
Browse,Bläddra,
Call Connected,Samtal ansluten,
Call Disconnected,Samtalet bröts,
Call Missed,Samtal saknas,
Call Summary,Sammanfattning av samtal,
Call Summary Saved,Samtal Sammanfattning sparad,
Cancelled,Inställt,
Cannot Calculate Arrival Time as Driver Address is Missing.,Det går inte att beräkna ankomsttiden eftersom förarens adress saknas.,
Cannot Optimize Route as Driver Address is Missing.,Kan inte optimera rutten eftersom förarens adress saknas.,
Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,Kan inte slutföra uppgift {0} eftersom dess beroende uppgift {1} inte är kompletterade / avbrutna.,
Cannot find a matching Item. Please select some other value for {0}.,Det går inte att hitta en matchande objekt. Välj något annat värde för {0}.,
"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","Det går inte att överbeställa för artikel {0} i rad {1} mer än {2}. För att tillåta överfakturering, ange tillåtelse i Kontoinställningar",
"Capacity Planning Error, planned start time can not be same as end time","Kapacitetsplaneringsfel, planerad starttid kan inte vara samma som sluttid",
Categories,kategorier,
Changes in {0},Förändringar i {0},
Chart,Diagram,
Choose a corresponding payment,Välj en motsvarande betalning,
Click on the link below to verify your email and confirm the appointment,Klicka på länken nedan för att bekräfta din e-post och bekräfta möten,
Close,Stänga,
Communication,Kommunikation,
Compact Item Print,Kompakt Produkttryck,
Company,Företaget,
Company of asset {0} and purchase document {1} doesn't matches.,Företagets tillgång {0} och köpdokumentet {1} matchar inte.,
Compare BOMs for changes in Raw Materials and Operations,Jämför BOM: er för ändringar i råmaterial och operationer,
Compare List function takes on list arguments,Funktionen Jämför lista tar listargument,
Complete,Komplett,
Completed,Avslutade,
Completed Quantity,Avslutat antal,
Connect your Exotel Account to ERPNext and track call logs,Anslut ditt Exotel-konto till ERPNext och spåra samtalsloggar,
Connect your bank accounts to ERPNext,Anslut dina bankkonton till ERPNext,
Contact Seller,Kontakta säljaren,
Continue,Fortsätta,
Cost Center: {0} does not exist,Kostnadscentrum: {0} finns inte,
Couldn't Set Service Level Agreement {0}.,Det gick inte att ställa servicenivåavtal {0}.,
Country,Land,
Country Code in File does not match with country code set up in the system,Landskod i fil stämmer inte med landskod som ställts in i systemet,
Create New Contact,Skapa ny kontakt,
Create New Lead,Skapa ny bly,
Create Pick List,Skapa plocklista,
Create Quality Inspection for Item {0},Skapa kvalitetskontroll för artikel {0},
Creating Accounts...,Skapa konton ...,
Creating bank entries...,Skapar bankposter ...,
Credit limit is already defined for the Company {0},Kreditgränsen är redan definierad för företaget {0},
Ctrl + Enter to submit,Ctrl + Enter för att skicka,
Ctrl+Enter to submit,Ctrl + Enter för att skicka in,
Currency,Valuta,
Current Status,Nuvarande status,
Customer PO,Kundpost,
Daily,Dagligen,
Date,Datum,
Date of Birth cannot be greater than Joining Date.,Födelsedatum kan inte vara större än anslutningsdatum.,
Dear,Kära,
Default,Standard,
Define coupon codes.,Definiera kupongkoder.,
Delayed Days,Försenade dagar,
Delete,Radera,
Delivered Quantity,Levererat antal,
Delivery Notes,Följesedlar,
Depreciated Amount,Avskrivet belopp,
Description,Beskrivning,
Designation,Beteckning,
Difference Value,Skillnadsvärde,
Dimension Filter,Måttfilter,
Disabled,Inaktiverad,
Disbursement and Repayment,Utbetalning och återbetalning,
Distance cannot be greater than 4000 kms,Avståndet kan inte vara större än 4000 km,
Do you want to submit the material request,Vill du skicka in materialförfrågan,
Doctype,Doctype,
Document {0} successfully uncleared,Dokument {0} är oklart,
Download Template,Hämta mall,
Dr,Dr,
Due Date,Förfallodatum,
Duplicate,Duplicera,
Duplicate Project with Tasks,Duplicera projekt med uppgifter,
Duplicate project has been created,Duplikatprojekt har skapats,
E-Way Bill JSON can only be generated from a submitted document,E-Way Bill JSON kan endast genereras från ett inlämnat dokument,
E-Way Bill JSON can only be generated from submitted document,e-Way Bill JSON kan endast genereras från det skickade dokumentet,
E-Way Bill JSON cannot be generated for Sales Return as of now,E-Way Bill JSON kan inte genereras för försäljningsavkastning från och med nu,
ERPNext could not find any matching payment entry,ERPNext kunde inte hitta någon matchande betalningspost,
Earliest Age,Tidigaste ålder,
Edit Details,Redigera detaljer,
Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Antingen GST-transporter-ID eller fordonsnummer krävs om transportläget är väg,
Email,E-post,
Email Campaigns,E-postkampanjer,
Employee ID is linked with another instructor,Anställds-ID är länkat till en annan instruktör,
Employee Tax and Benefits,Arbetstagarskatt och förmåner,
Employee is required while issuing Asset {0},Anställd krävs vid utfärdande av tillgångar {0},
Employee {0} does not belongs to the company {1},Anställd {0} tillhör inte företaget {1},
Enable Auto Re-Order,Aktivera automatisk ombeställning,
End Date of Agreement can't be less than today.,Slutdatum för avtalet kan inte vara mindre än idag.,
End Time,Sluttid,
Energy Point Leaderboard,Energy Point Leaderboard,
Enter API key in Google Settings.,Ange API-nyckeln i Google Inställningar.,
Enter Supplier,Ange leverantör,
Enter Value,Ange värde,
Entity Type,Entitetstyp,
Error,Fel,
Error in Exotel incoming call,Fel i Exotel-inkommande samtal,
Error: {0} is mandatory field,Fel: {0} är obligatoriskt fält,
Exception occurred while reconciling {0},Undantag inträffade vid försoning av {0},
Expected and Discharge dates cannot be less than Admission Schedule date,Förväntade datum och utskrivningsdatum får inte vara mindre än datum för antagningsplanen,
Expired,Utgånget,
Export,Export,
Export not allowed. You need {0} role to export.,Export tillåts inte. Du behöver {0} roll att exportera.,
Failed to add Domain,Det gick inte att lägga till domän,
Fetch Items from Warehouse,Hämta objekt från lagret,
Fetching...,Hämtar ...,
Field,Fält,
Filters,Filter,
Finding linked payments,Hitta länkade betalningar,
Fleet Management,Fleet Management,
Following fields are mandatory to create address:,Följande fält är obligatoriska för att skapa adress:,
For Month,För månad,
"For item {0} at row {1}, count of serial numbers does not match with the picked quantity",För artikel {0} i rad {1} stämmer inte serienumret med det utvalda antalet,
For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),För operation {0}: Kvantitet ({1}) kan inte vara greter än mängd som väntar ({2}),
For quantity {0} should not be greater than work order quantity {1},För kvantitet {0} bör inte vara större än mängden arbetsorder {1},
Free item not set in the pricing rule {0},Gratisobjekt inte fastställt i prisregeln {0},
From Date and To Date are Mandatory,Från datum och datum är obligatoriskt,
From employee is required while receiving Asset {0} to a target location,Från anställd krävs medan du får tillgång {0} till en målplats,
Future Payment Amount,Framtida betalningsbelopp,
Future Payment Ref,Framtida betalning ref,
Future Payments,Framtida betalningar,
GST HSN Code does not exist for one or more items,GST HSN-kod finns inte för en eller flera objekt,
Generate E-Way Bill JSON,Skapa e-Way Bill JSON,
Get Items,Hämta artiklar,
Get Outstanding Documents,Få framstående dokument,
Goal,Mål,
Greater Than Amount,Mer än beloppet,
Green,Grön,
Group,Grupp,
Group By Customer,Grupp efter kund,
Group By Supplier,Grupp efter leverantör,
Group Node,Grupp Nod,
Group Warehouses cannot be used in transactions. Please change the value of {0},Grupplager kan inte användas i transaktioner. Ändra värdet 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 att hålla reda på kontrakt baserat på leverantör, kund och anställd",
Helps you manage appointments with your leads,Hjälper dig att hantera möten med dina leads,
Home,Hem,
IBAN is not valid,IBAN är inte giltig,
Import Data from CSV / Excel files.,Importera data från CSV / Excel-filer.,
In Progress,Pågående,
Incoming call from {0},Inkommande samtal från {0},
Incorrect Warehouse,Felaktigt lager,
Invalid Barcode. There is no Item attached to this barcode.,Ogiltig streckkod. Det finns ingen artikel bifogad denna streckkod.,
Invalid credentials,Ogiltiga uppgifter,
Issue Priority.,Utgåva prioritet.,
Issue Type.,Problemtyp.,
"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 verkar som om det finns ett problem med serverns randkonfiguration. Vid fel kommer beloppet att återbetalas till ditt konto.,
Item Reported,Objekt rapporterat,
Item listing removed,Objektlistan har tagits bort,
Item quantity can not be zero,Artikelkvantitet kan inte vara noll,
Item taxes updated,Produktskatter uppdaterade,
Item {0}: {1} qty produced. ,Objekt {0}: {1} producerad antal.,
Joining Date can not be greater than Leaving Date,Anslutningsdatum kan inte vara större än Leaving Date,
Lab Test Item {0} already exist,Labtestobjekt {0} finns redan,
Last Issue,Sista utgåvan,
Latest Age,Sent skede,
Leaves Taken,Löv tagna,
Less Than Amount,Mindre än belopp,
Liabilities,Skulder,
Loading...,Laddar ...,
Loan Applications from customers and employees.,Låneansökningar från kunder och anställda.,
Loan Processes,Låneprocesser,
Loan Type for interest and penalty rates,Låntyp för ränta och straff,
Loans,lån,
Loans provided to customers and employees.,Lån till kunder och anställda.,
Location,Läge,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Ser ut som någon skickat till en ofullständig webbadress. Vänligen be dem att undersöka saken.,
Make Journal Entry,Skapa journalanteckning,
Make Purchase Invoice,Skapa inköpsfaktura,
Manufactured,Tillverkad,
Mark Work From Home,Markera arbete hemifrån,
Master,Ledar-,
Max strength cannot be less than zero.,Maxstyrkan kan inte vara mindre än noll.,
Maximum attempts for this quiz reached!,Maximala försök för denna frågesport uppnåddes!,
Message,Meddelande,
Missing Values Required,Saknade värden Krävs,
Mobile No,Mobilnummer,
Mobile Number,Mobilnummer,
Month,Månad,
Name,namn,
Near you,Nära dig,
Net Profit/Loss,Nettovinst / förlust,
New Expense,Ny kostnad,
New Invoice,Ny faktura,
New Payment,Ny betalning,
New release date should be in the future,Nytt släppdatum borde vara i framtiden,
No Account matched these filters: {},Inget konto matchade dessa filter: {},
No communication found.,Ingen kommunikation hittades.,
No correct answer is set for {0},Inget korrekt svar är inställt för {0},
No description,Ingen beskrivning,
No issue has been raised by the caller.,Ingen fråga har tagits upp av den som ringer.,
No items to publish,Inga artiklar att publicera,
No outstanding invoices found,Inga utestående fakturor hittades,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,Inga utestående fakturor hittades för {0} {1} som uppfyller de filter du har angett.,
No outstanding invoices require exchange rate revaluation,Inga utestående fakturor kräver valutakursvärdering,
No reviews yet,Inga recensioner än,
No views yet,Inga visningar än,
Non stock items,Varor som inte finns i lager,
Not Allowed,Inte tillåtet,
Not allowed to create accounting dimension for {0},Det är inte tillåtet att skapa bokföringsdimension för {0},
Not permitted. Please disable the Lab Test Template,Inte tillåtet. Inaktivera Lab-testmallen,
Note,Notera,
Notes: ,Anmärkningar:,
On Converting Opportunity,Om konvertering av möjlighet,
On Purchase Order Submission,Vid inlämning av inköpsorder,
On Sales Order Submission,På inlämning av orderorder,
On Task Completion,På uppdragets slutförande,
On {0} Creation,På {0} skapelse,
Only .csv and .xlsx files are supported currently,Endast .csv- och .xlsx-filer stöds för närvarande,
Open,Öppen,
Open Contact,Öppen kontakt,
Open Lead,Öppen bly,
Opening and Closing,Öppning och stängning,
Operating Cost as per Work Order / BOM,Driftskostnad per arbetsorder / BOM,
Order Amount,Beställningssumma,
Page {0} of {1},Page {0} av {1},
Paid amount cannot be less than {0},Det betalda beloppet kan inte vara mindre än {0},
Parent Company must be a group company,Moderbolaget måste vara ett koncernföretag,
Passing Score value should be between 0 and 100,Värdet för godkänt resultat bör vara mellan 0 och 100,
Patient History,Patienthistoria,
Pause,Paus,
Pay,Betala,
Payment Document Type,Betalningsdokumenttyp,
Payment Name,Betalningsnamn,
Pending,Väntar,
Performance,Prestanda,
Period based On,Period baserat på,
Perpetual inventory required for the company {0} to view this report.,Envarig inventering krävs för att företaget {0} ska kunna se denna rapport.,
Phone,Telefon,
Pick List,Plocklista,
Plaid authentication error,Fel för autentisering i rutan,
Plaid public token error,Plaid public token-fel,
Plaid transactions sync error,Fel synkroniseringsfel,
Please check the error log for details about the import errors,Kontrollera felloggen för detaljer om importfel,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,<b>Skapa DATEV-inställningar</b> för företag <b>{}</b> .,
Please create adjustment Journal Entry for amount {0} ,Skapa justeringsjournal för belopp {0},
Please do not create more than 500 items at a time,Skapa inte mer än 500 objekt åt gången,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Ange <b>Skillnadskonto</b> eller ställ in standardkonto för <b>Justering av lager</b> för företag {0},
Please enter GSTIN and state for the Company Address {0},Ange GSTIN och ange för företagets adress {0},
Please enter Item Code to get item taxes,Ange artikelkod för att få artikelskatter,
Please enter Warehouse and Date,Vänligen ange lager och datum,
Please login as a Marketplace User to edit this item.,Logga in som Marketplace-användare för att redigera den här artikeln.,
Please login as a Marketplace User to report this item.,Logga in som Marketplace-användare för att rapportera detta objekt.,
Please select <b>Template Type</b> to download template,Välj <b>malltyp för</b> att ladda ner mallen,
Please select Customer first,Välj kund först,
Please select Item Code first,Välj först artikelkod,
Please select a Delivery Note,Välj en leveransanteckning,
Please select a Sales Person for item: {0},Välj en säljare för artikeln: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Välj en annan betalningsmetod. Stripe stöder inte transaktioner i valuta &quot;{0}&quot;,
Please select the customer.,Välj kund.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Vänligen ställ in en leverantör mot de artiklar som ska beaktas i inköpsorder.,
Please set account heads in GST Settings for Compnay {0},Ange kontohuvud i GST-inställningar för Compnay {0},
Please set an email id for the Lead {0},Ange ett e-post-id för Lead {0},
Please set default UOM in Stock Settings,Ange standard UOM i lagerinställningar,
Please set filter based on Item or Warehouse due to a large amount of entries.,Ställ in filter baserat på artikel eller lager på grund av en stor mängd poster.,
Please set up the Campaign Schedule in the Campaign {0},Ställ in kampanjschemat i kampanjen {0},
Please set valid GSTIN No. in Company Address for company {0},Ange giltigt GSTIN-nummer i företagets adress för företag {0},
Please set {0},Ange {0},customer
Please setup a default bank account for company {0},Ställ in ett standardkonto för företag {0},
Please specify,Vänligen specificera,
Please specify a {0},Vänligen ange en {0},lead
Priority,Prioritet,
Priority has been changed to {0}.,Prioritet har ändrats till {0}.,
Priority {0} has been repeated.,Prioritet {0} har upprepats.,
Processing XML Files,Bearbetar XML-filer,
Profitability,lönsamhet,
Project,Projekt,
Provide the academic year and set the starting and ending date.,Ange läsåret och ange start- och slutdatum.,
Public token is missing for this bank,Offentligt symbol saknas för denna bank,
Publish 1 Item,Publicera en artikel,
Publish Items,Publicera artiklar,
Publish More Items,Publicera fler artiklar,
Publish Your First Items,Publicera dina första artiklar,
Publish {0} Items,Publicera {0} artiklar,
Published Items,Publicerade artiklar,
Purchase Invoice cannot be made against an existing asset {0},Köpfaktura kan inte göras mot en befintlig tillgång {0},
Purchase Invoices,Köp fakturor,
Purchase Orders,Beställning,
Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,Köpskvitto har inget objekt som behåller provet är aktiverat för.,
Purchase Return,bara Return,
Qty of Finished Goods Item,Antal färdigvaror,
Quality Inspection required for Item {0} to submit,Kvalitetskontroll krävs för att artikel {0} ska skickas in,
Quantity to Manufacture,Kvantitet att tillverka,
Quantity to Manufacture can not be zero for the operation {0},Antalet tillverkning kan inte vara noll för operationen {0},
Quarterly,Kvartals,
Queued,I kö,
Quick Entry,Snabbinmatning,
Quiz {0} does not exist,Quiz {0} finns inte,
Quotation Amount,Offertbelopp,
Rate or Discount is required for the price discount.,Pris eller rabatt krävs för prisrabatten.,
Reason,Anledning,
Reconcile Entries,Förena poster,
Reconcile this account,Förena det här kontot,
Reconciled,förenas,
Recruitment,Rekrytering,
Red,Röd,
Release date must be in the future,Släppdatum måste vara i framtiden,
Relieving Date must be greater than or equal to Date of Joining,Relief-datum måste vara större än eller lika med Datum för anslutning,
Rename,Byt namn,
Rename Not Allowed,Byt namn inte tillåtet,
Report Item,Rapportera objekt,
Report this Item,Rapportera det här objektet,
Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Reserverad antal för underleverantörer: Råvarukvantitet för att tillverka underleverantörer.,
Reset,Återställa,
Reset Service Level Agreement,Återställ avtal om servicenivå,
Resetting Service Level Agreement.,Återställ avtal om servicenivå.,
Return amount cannot be greater unclaimed amount,Returbeloppet kan inte vara högre icke-krävda belopp,
Review,Recension,
Room,Rum,
Room Type,Rumstyp,
Row # ,Rad #,
Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Rad # {0}: Accepterat lager och leverantörslager kan inte vara samma,
Row #{0}: Cannot delete item {1} which has already been billed.,Rad # {0}: Det går inte att ta bort objekt {1} som redan har fakturerats.,
Row #{0}: Cannot delete item {1} which has already been delivered,Rad # {0}: Det går inte att radera artikel {1} som redan har levererats,
Row #{0}: Cannot delete item {1} which has already been received,Rad nr {0}: Det går inte att ta bort objekt {1} som redan har tagits emot,
Row #{0}: Cannot delete item {1} which has work order assigned to it.,Rad # {0}: Det går inte att radera objekt {1} som har tilldelats arbetsordning.,
Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Rad nr {0}: Det går inte att radera artikel {1} som tilldelas kundens inköpsorder.,
Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,Rad # {0}: Det går inte att välja leverantörslager samtidigt som råvaror tillhandahålls underleverantör,
Row #{0}: Cost Center {1} does not belong to company {2},Rad # {0}: Cost Center {1} tillhör inte företaget {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}.,Rad # {0}: Drift {1} är inte slutfört för {2} antal färdigvaror i arbetsordern {3}. Uppdatera driftsstatus via Jobbkort {4}.,
Row #{0}: Payment document is required to complete the transaction,Rad # {0}: Betalningsdokument krävs för att slutföra transaktionen,
Row #{0}: Serial No {1} does not belong to Batch {2},Rad # {0}: Serienummer {1} tillhör inte batch {2},
Row #{0}: Service End Date cannot be before Invoice Posting Date,Rad nr {0}: Service slutdatum kan inte vara före fakturadatum,
Row #{0}: Service Start Date cannot be greater than Service End Date,Rad # {0}: Service-startdatum kan inte vara större än slutdatum för service,
Row #{0}: Service Start and End Date is required for deferred accounting,Rad # {0}: Servicens start- och slutdatum krävs för uppskjuten redovisning,
Row {0}: Invalid Item Tax Template for item {1},Rad {0}: Ogiltig artikelskattmall för artikel {1},
Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Rad {0}: Antalet är inte tillgängligt för {4} i lager {1} vid posten för posten ({2} {3}),
Row {0}: user has not applied the rule {1} on the item {2},Rad {0}: användaren har inte använt regeln {1} på artikeln {2},
Row {0}:Sibling Date of Birth cannot be greater than today.,Rad {0}: Syskon födelsedatum kan inte vara större än idag.,
Row({0}): {1} is already discounted in {2},Rad ({0}): {1} är redan rabatterad i {2},
Rows Added in {0},Rader tillagda i {0},
Rows Removed in {0},Rader tas bort i {0},
Save,Spara,
Save Item,Spara objekt,
Saved Items,Sparade objekt,
Search Items ...,Sök efter objekt ...,
Search for a payment,Sök efter en betalning,
Search for anything ...,Sök efter allt ...,
Search results for,Sökresultat för,
Select Difference Account,Välj Skillnadskonto,
Select a Default Priority.,Välj en standardprioritet.,
Select a company,Välj ett företag,
Select finance book for the item {0} at row {1},Välj finansbok för posten {0} i rad {1},
Select only one Priority as Default.,Välj endast en prioritet som standard.,
Seller Information,Säljarinformation,
Send,Skicka,
Send a message,Skicka ett meddelande,
Sending,Sända,
Sends Mails to lead or contact based on a Campaign schedule,Skickar e-post till ledare eller kontakt baserat på ett kampanjschema,
Serial Number Created,Serienummer skapat,
Serial Numbers Created,Serienummer skapade,
Serial no(s) required for serialized item {0},Serienummer krävs för serienummer {0},
Series,Serie,
Server Error,Serverfel,
Service Level Agreement has been changed to {0}.,Servicenivåavtalet har ändrats till {0}.,
Service Level Agreement was reset.,Servicenivåavtalet återställdes.,
Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Servicenivåavtal med entitetstyp {0} och enhet {1} finns redan.,
Set Meta Tags,Ställ in metataggar,
Set {0} in company {1},Ställ in {0} i företag {1},
Setup,Inställning,
Shift Management,Shift Management,
Show Future Payments,Visa framtida betalningar,
Show Linked Delivery Notes,Visa länkade leveransanmärkningar,
Show Sales Person,Visa säljare,
Show Stock Ageing Data,Visa lagringsalternativ,
Show Warehouse-wise Stock,Visa lagermässigt lager,
Size,Storlek,
Something went wrong while evaluating the quiz.,Något gick fel vid utvärderingen av frågesporten.,
Sr,sr,
Start,Start,
Start Date cannot be before the current date,Startdatum kan inte vara före det aktuella datumet,
Start Time,Starttid,
Status,Status,
Status must be Cancelled or Completed,Status måste avbrytas eller slutföras,
Stock Balance Report,Aktiebalansrapport,
Stock Entry has been already created against this Pick List,Lagerinmatning har redan skapats mot den här listan,
Stock Ledger ID,Lagerbok-ID,
Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,Lagervärde ({0}) och kontosaldo ({1}) är inte synkroniserade för konto {2} och det är länkade lager.,
Stores - {0},Butiker - {0},
Student with email {0} does not exist,Student med e-post {0} finns inte,
Submit Review,Skicka recension,
Submitted,Avsändare,
Supplier Addresses And Contacts,Leverantör adresser och kontakter,
Synchronize this account,Synkronisera det här kontot,
Tag,Märka,
Target Location is required while receiving Asset {0} from an employee,Målplats krävs när du får tillgång {0} från en anställd,
Target Location is required while transferring Asset {0},Målplats krävs vid överföring av tillgång {0},
Target Location or To Employee is required while receiving Asset {0},Målplats eller anställd krävs när du får tillgång {0},
Task's {0} End Date cannot be after Project's End Date.,Uppgiftens {0} slutdatum kan inte vara efter projektets slutdatum.,
Task's {0} Start Date cannot be after Project's End Date.,Uppgiftens {0} startdatum kan inte vara efter projektets slutdatum.,
Tax Account not specified for Shopify Tax {0},Skattekonto inte specificerat för Shopify skatt {0},
Tax Total,Skatt totalt,
Template,Mall,
The Campaign '{0}' already exists for the {1} '{2}',Kampanjen &#39;{0}&#39; finns redan för {1} &#39;{2}&#39;,
The difference between from time and To Time must be a multiple of Appointment,Skillnaden mellan tid och tid måste vara en mångfald av utnämningen,
The field Asset Account cannot be blank,Fältet Tillgångskonto kan inte vara tomt,
The field Equity/Liability Account cannot be blank,Fältet Kapital / ansvarskonto kan inte vara tomt,
The following serial numbers were created: <br><br> {0},Följande serienummer skapades: <br><br> {0},
The parent account {0} does not exists in the uploaded template,Det överordnade kontot {0} finns inte i den uppladdade mallen,
The question cannot be duplicate,Frågan kan inte dupliceras,
The selected payment entry should be linked with a creditor bank transaction,Den valda betalningsposten bör kopplas till en kreditgivarbanktransaktion,
The selected payment entry should be linked with a debtor bank transaction,Den valda betalningsuppgiften bör kopplas till en gäldenärstransaktion,
The total allocated amount ({0}) is greated than the paid amount ({1}).,Det totala tilldelade beloppet ({0}) är högre än det betalda beloppet ({1}).,
This Service Level Agreement is specific to Customer {0},Detta servicenivåavtal är specifikt för kund {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Den här åtgärden kommer att koppla bort detta konto från alla externa tjänster som integrerar ERPNext med dina bankkonton. Det kan inte bli ogjort. Är du säker ?,
This bank account is already synchronized,Detta bankkonto är redan synkroniserat,
This bank transaction is already fully reconciled,Denna banktransaktion är redan helt avstämd,
This page keeps track of items you want to buy from sellers.,Denna sida håller reda på artiklar du vill köpa från säljare.,
This page keeps track of your items in which buyers have showed some interest.,Denna sida håller reda på dina artiklar där köpare har visat ett intresse.,
Thursday,Torsdag,
Title,Titel,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.",För att tillåta överfakturering uppdaterar du &quot;Över faktureringsbidrag&quot; i Kontoinställningar eller artikeln.,
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","För att tillåta över mottagning / leverans, uppdatera &quot;Över kvitto / leveransbidrag&quot; i lagerinställningar eller artikeln.",
Total,Totalt,
Total Payment Request amount cannot be greater than {0} amount,Det totala betalningsbegäran kan inte överstiga {0} belopp,
Total payments amount can't be greater than {},Det totala betalningsbeloppet kan inte vara större än {},
Totals,Totals,
Transactions already retreived from the statement,Transaktioner har redan återkommit från uttalandet,
Transfer Material to Supplier,Överföra material till leverantören,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,Transportkvitton nr och datum är obligatoriska för ditt valda transportläge,
Tuesday,Tisdag,
Type,Typ,
Unable to find the time slot in the next {0} days for the operation {1}.,Det gick inte att hitta tidsluckan under de kommande {0} dagarna för operationen {1}.,
Unable to update remote activity,Det gick inte att uppdatera fjärraktivitet,
Unknown Caller,Okänd uppringare,
Unlink external integrations,Koppla bort externa integrationer,
Unpublish Item,Ta bort publicering av artikeln,
Unreconciled,sonade,
Unsupported GST Category for E-Way Bill JSON generation,Ostödd GST-kategori för E-Way Bill JSON-generation,
Update,Uppdatera,
Update Taxes for Items,Uppdatera skatter för objekt,
"Upload a bank statement, link or reconcile a bank account","Ladda upp ett kontoutdrag, länk eller förena ett bankkonto",
Upload a statement,Ladda upp ett uttalande,
Use a name that is different from previous project name,Använd ett namn som skiljer sig från tidigare projektnamn,
User {0} is disabled,Användare {0} är inaktiverad,
Users and Permissions,Användare och behörigheter,
Valuation Rate required for Item {0} at row {1},Värderingsgrad krävs för artikel {0} i rad {1},
Values Out Of Sync,Värden utan synk,
Vehicle Type is required if Mode of Transport is Road,Fordonstyp krävs om transportläget är väg,
Vendor Name,Leverantörsnamn,
Verify Email,Verifiera Email,
View,Se,
View all issues from {0},Visa alla utgåvor från {0},
View call log,Visa samtalslogg,
Warehouse,lager,
Warehouse not found against the account {0},Lager hittades inte mot kontot {0},
Welcome to {0},Välkommen till {0},
Why do think this Item should be removed?,Varför tror jag att denna artikel ska tas bort?,
Work Order {0}: Job Card not found for the operation {1},Arbetsorder {0}: Jobbkort hittades inte för operationen {1},
Workday {0} has been repeated.,Arbetsdag {0} har upprepats.,
XML Files Processed,XML-filer bearbetade,
Year,År,
Yearly,Årlig,
You are not allowed to enroll for this course,Du får inte anmäla dig till den här kursen,
You are not enrolled in program {0},Du är inte registrerad i programmet {0},
You can Feature upto 8 items.,Du kan ha upp till 8 artiklar.,
You can also copy-paste this link in your browser,Du kan också kopiera och klistra in den här länken i din webbläsare,
You can publish upto 200 items.,Du kan publicera upp till 200 objekt.,
You have to enable auto re-order in Stock Settings to maintain re-order levels.,Du måste aktivera automatisk ombeställning i lagerinställningar för att upprätthålla ombeställningsnivåer.,
You must be a registered supplier to generate e-Way Bill,Du måste vara en registrerad leverantör för att generera e-Way Bill,
You need to login as a Marketplace User before you can add any reviews.,Du måste logga in som Marketplace-användare innan du kan lägga till några recensioner.,
Your Featured Items,Dina presenterade artiklar,
Your Items,Dina artiklar,
Your Profile,Din profil,
Your rating:,Ditt betyg:,
and,och,
e-Way Bill already exists for this document,e-Way Bill finns redan för det här dokumentet,
woocommerce - {0},woocommerce - {0},
{0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kupongen som används är {1}. Tillåten kvantitet är slut,
{0} Operations: {1},{0} Verksamhet: {1},
{0} bank transaction(s) created,{0} banktransaktion (er) skapade,
{0} bank transaction(s) created and {1} errors,{0} banktransaktioner skapade och {1} fel,
{0} can not be greater than {1},{0} kan inte vara större än {1},
{0} conversations,{0} konversationer,
{0} is not a company bank account,{0} är inte ett företagets bankkonto,
{0} is not a group node. Please select a group node as parent cost center,{0} är inte en gruppnod. Välj en gruppnod som moderkostnadscentrum,
{0} is not the default supplier for any items.,{0} är inte standardleverantören för några artiklar.,
{0} is required,{0} krävs,
{0}: {1} must be less than {2},{0}: {1} måste vara mindre än {2},
{} is required to generate E-Way Bill JSON,{} krävs för att generera E-Way Bill JSON,
"Invalid lost reason {0}, please create a new lost reason","Ogiltig förlorad anledning {0}, skapa en ny förlorad anledning",
Profit This Year,Vinst i år,
Total Expense,Total kostnad,
Total Expense This Year,Total kostnad i år,
Total Income,Total inkomst,
Total Income This Year,Total inkomst i år,
Barcode,Streckkod,
Clear,Klar,
Comments,Kommentarer,
DocType,DocType,
Download,Ladda ner,
Left,Vänster,
Link,Länk,
New,Ny,
Print,Skriva ut,
Reference Name,referens namn,
Refresh,Uppdatera,
Success,Framgång,
Time,Tid,
Value,Värde,
Actual,Faktisk,
Add to Cart,Lägg till i kundvagn,
Days Since Last Order,Dagar sedan förra beställningen,
In Stock,I lager,
Mode Of Payment,Betalningssätt,
No students Found,Inga studenter hittades,
Not in Stock,Inte i lager,
Please select a Customer,Var god välj en kund,
Received From,Mottagen från,
Sales Person,Försäljare,
To date cannot be before From date,Hittills inte kan vara före startdatum,
Write Off,Avskrivning,
{0} Created,{0} Skapad,
Email Id,E-post-ID,
No,Nej,
Reference Doctype,Referens DocType,
Yes,Ja,
Actual ,Faktisk,
Add to cart,Lägg till i kundvagn,
Budget,Budget,
Chart of Accounts,Diagram över konton,
Customer database.,Kunddatabas.,
Days Since Last order,Dagar sedan förra beställningen,
Download as JSON,Ladda ner som JSON,
End date can not be less than start date,Slutdatum kan inte vara mindre än startdatum,
For Default Supplier (Optional),För standardleverantör (tillval),
From date cannot be greater than To date,Från datum kan inte vara större än till datum,
Group by,Gruppera efter,
In stock,I lager,
Item name,Produktnamn,
Minimum Qty,Minsta antal,
More details,Fler detaljer,
Nature of Supplies,Typ av tillbehör,
No Items found.,Inga föremål hittades.,
No students found,Inga studenter Funnet,
Not in stock,Inte i lager,
Not permitted,Inte tillåtet,
Open Issues ,öppna frågor,
Open Projects ,Öppna projekt,
Open To Do ,Öppna för att göra,
Operation Id,Drift-ID,
Partially ordered,delvis Beställde,
Please select company first,Välj Företaget först,
Please select patient,Var god välj Patient,
Printed On ,Tryckt på,
Projected qty,Projicerad mängd,
Sales person,Försäljnings person,
Serial No {0} Created,Löpnummer {0} skapades,
Source Location is required for the Asset {0},Källplacering krävs för tillgången {0},
Tax Id,Skatte ID,
To Time,Till Time,
To date cannot be before from date,Till datum kan inte vara före från datum,
Total Taxable value,Totalt skattevärde,
Upcoming Calendar Events ,Kommande kalenderhändelser,
Value or Qty,Värde eller antal,
Variance ,Variation,
Variant of,Variant av,
Write off,Avskrivning,
hours,timmar,
received from,mottagen från,
to,till,
Cards,kort,
Percentage,Procentsats,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,Det gick inte att ställa in standardvärden för land {0}. Vänligen kontakta support@erpnext.com,
Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Rad # {0}: Objekt {1} är inte en seriell / batchad artikel. Det kan inte ha ett serienummer / parti nej mot det.,
Please set {0},Ställ in {0},
Please set {0},Ange {0},supplier
Draft,Förslag,"docstatus,=,0"
Cancelled,Inställt,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Installera instruktörens namngivningssystem i utbildning&gt; Utbildningsinställningar,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Ange Naming Series för {0} via Setup&gt; Inställningar&gt; Naming Series,
UOM Conversion factor ({0} -> {1}) not found for item: {2},UOM-omvandlingsfaktor ({0} -&gt; {1}) hittades inte för artikeln: {2},
Item Code > Item Group > Brand,Produktkod&gt; Produktgrupp&gt; Märke,
Customer > Customer Group > Territory,Kund&gt; Kundgrupp&gt; Territorium,
Supplier > Supplier Type,Leverantör&gt; Leverantörstyp,
The value of {0} differs between Items {1} and {2},Värdet på {0} skiljer sig mellan artiklar {1} och {2},
Auto Fetch,Hämta automatiskt,
Fetch Serial Numbers based on FIFO,Hämta serienummer baserat på FIFO,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Beskattningsbara utåtgående leveranser (andra än nollvärderade, nollvärderade och undantagna)",
"To allow different rates, disable the {0} checkbox in {1}.",Inaktivera kryssrutan {0} i {1} om du vill tillåta olika priser.,
Asset{} {assets_link} created for {},Tillgång {} {assets_link} skapad för {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Rad {}: Asset Naming Series är obligatoriskt för automatisk skapande av artikel {},
Assets not created for {0}. You will have to create asset manually.,Tillgångar har inte skapats för {0}. Du måste skapa tillgången manuellt.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} har bokföringsposter i valuta {2} för företaget {3}. Välj ett kundfordrings- eller betalningskonto med valuta {2}.,
Invalid Account,Ogiltigt konto,
Purchase Order Required,Inköpsorder krävs,
Purchase Receipt Required,Inköpskvitto Krävs,
Account Missing,Konto saknas,
Requested,Begärd,
Partially Paid,Delvis betald,
Invalid Account Currency,Ogiltig kontovaluta,
"Row {0}: The item {1}, quantity must be positive number","Rad {0}: Varan {1}, kvantitet måste vara positivt tal",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Ställ in {0} för grupperad artikel {1}, som används för att ställa in {2} vid Skicka.",
Expiry Date Mandatory,Utgångsdatum obligatoriskt,
Variant Item,Variantartikel,
BOM 1 {0} and BOM 2 {1} should not be same,BOM 1 {0} och BOM 2 {1} borde inte vara desamma,
Note: Item {0} added multiple times,Obs! Objekt {0} har lagts till flera gånger,
YouTube,Youtube,
Vimeo,Vimeo,
Publish Date,Utgivningsdatum,
Duration,Varaktighet,
Advanced Settings,Avancerade inställningar,
Path,Väg,
Components,Komponenter,
Verified By,Verifierad Av,
Invalid naming series (. missing) for {0},Ogiltig namngivningsserie (. Saknas) för {0},
Filter Based On,Filter baserat på,
Reqd by date,Uppdaterad efter datum,
Manufacturer Part Number <b>{0}</b> is invalid,Tillverkarens artikelnummer <b>{0}</b> är ogiltigt,
Invalid Part Number,Ogiltigt artikelnummer,
Select atleast one Social Media from Share on.,Välj minst en social media från Dela på.,
Invalid Scheduled Time,Ogiltig schemalagd tid,
Length Must be less than 280.,Längd måste vara mindre än 280.,
Error while POSTING {0},Fel vid POSTING {0},
"Session not valid, Do you want to login?",Sessionen är inte giltig. Vill du logga in?,
Session Active,Session aktiv,
Session Not Active. Save doc to login.,Session inte aktiv. Spara dokument för att logga in.,
Error! Failed to get request token.,Fel! Det gick inte att hämta begäran-token.,
Invalid {0} or {1},Ogiltigt {0} eller {1},
Error! Failed to get access token.,Fel! Det gick inte att få åtkomsttoken.,
Invalid Consumer Key or Consumer Secret Key,Ogiltig konsumentnyckel eller konsumenthemlig nyckel,
Your Session will be expire in ,Din session löper ut om,
 days.,dagar.,
Session is expired. Save doc to login.,Sessionen har löpt ut. Spara dokument för att logga in.,
Error While Uploading Image,Fel vid uppladdning av bild,
You Didn't have permission to access this API,Du hade inte behörighet att komma åt detta API,
Valid Upto date cannot be before Valid From date,Giltigt uppdatum kan inte vara före Giltigt från datum,
Valid From date not in Fiscal Year {0},Gäller från datum inte under räkenskapsåret {0},
Valid Upto date not in Fiscal Year {0},Giltigt uppdatum inte under räkenskapsåret {0},
Group Roll No,Grupprulle nr,
Maintain Same Rate Throughout Sales Cycle,Behåll samma takt hela säljcykeln,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Rad {1}: Kvantitet ({0}) kan inte vara en bråkdel. För att tillåta detta, inaktivera &quot;{2}&quot; i UOM {3}.",
Must be Whole Number,Måste vara heltal,
Please setup Razorpay Plan ID,Vänligen ställ in Razorpay plan-ID,
Contact Creation Failed,Skapandet av kontakt misslyckades,
Leaves Expired,Löven har löpt ut,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Rad # {}: {} av {} ska vara {}. Ändra kontot eller välj ett annat konto.,
Row #{}: Please asign task to a member.,Rad # {}: Tilldela uppgiften till en medlem.,
Process Failed,Processen misslyckades,
Tally Migration Error,Tally Migration Error,
Please set Warehouse in Woocommerce Settings,Ställ in Warehouse i Woocommerce-inställningar,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Rad {0}: Leveranslager ({1}) och kundlager ({2}) kan inte vara desamma,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Rad {0}: Förfallodatum i tabellen Betalningsvillkor får inte vara före bokningsdatum,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,Det går inte att hitta {} för artikel {}. Vänligen ställ in detsamma i artikelns huvud- eller lagerinställningar.,
Row #{0}: The batch {1} has already expired.,Rad # {0}: Partiet {1} har redan löpt ut.,
Start Year and End Year are mandatory,Startår och slutår är obligatoriska,
GL Entry,GL Entry,
Cannot allocate more than {0} against payment term {1},Det går inte att fördela mer än {0} mot betalningsperioden {1},
The root account {0} must be a group,Rotkontot {0} måste vara en grupp,
Shipping rule not applicable for country {0} in Shipping Address,Leveransregel gäller inte för land {0} i leveransadress,
Get Payments from,Få betalningar från,
Set Shipping Address or Billing Address,Ange leveransadress eller faktureringsadress,
Consultation Setup,Inställning av samråd,
Fee Validity,Avgift Giltighet,
Laboratory Setup,Laboratorieinstallation,
Dosage Form,Doseringsform,
Records and History,Register och historia,
Patient Medical Record,Patient Medical Record,
Rehabilitation,Rehabilitering,
Exercise Type,Träningstyp,
Exercise Difficulty Level,Svårighetsnivå för träning,
Therapy Type,Terapi typ,
Therapy Plan,Terapiplan,
Therapy Session,Terapisession,
Motor Assessment Scale,Motorisk utvärderingsskala,
[Important] [ERPNext] Auto Reorder Errors,[Viktigt] [ERPNext] Automatisk ombeställning av fel,
"Regards,","Hälsningar,",
The following {0} were created: {1},Följande {0} skapades: {1},
Work Orders,Arbetsorder,
The {0} {1} created sucessfully,{0} {1} skapades framgångsrikt,
Work Order cannot be created for following reason: <br> {0},Arbetsorder kan inte skapas av följande anledning:<br> {0},
Add items in the Item Locations table,Lägg till objekt i tabellen Objektplatser,
Update Current Stock,Uppdatera aktuellt lager,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item",{0} Behåll provet är baserat på parti. Kontrollera Har partinummer för att behålla provet på objektet,
Empty,Tömma,
Currently no stock available in any warehouse,För närvarande finns inga lager tillgängliga i något lager,
BOM Qty,BOM Antal,
Time logs are required for {0} {1},Tidsloggar krävs för {0} {1},
Total Completed Qty,Totalt slutfört antal,
Qty to Manufacture,Antal att tillverka,
Social Media Campaigns,Sociala mediekampanjer,
From Date can not be greater than To Date,Från datum kan inte vara större än till datum,
Please set a Customer linked to the Patient,Ange en kund som är länkad till patienten,
Customer Not Found,Kund hittades inte,
Please Configure Clinical Procedure Consumable Item in ,Vänligen konfigurera det kliniska förfarandet Förbrukningsartiklar i,
Missing Configuration,Konfiguration saknas,
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ök,
Appointment Status,Tidsbeställning,
Test: ,Testa:,
Collection Details: ,Samlingsdetaljer:,
{0} out of {1},{0} av {1},
Select Therapy Type,Välj behandlingstyp,
{0} sessions completed,{0} sessioner slutförda,
{0} session completed,{0} sessionen slutförd,
 out of {0},av {0},
Therapy Sessions,Terapisessioner,
Add Exercise Step,Lägg till träningssteg,
Edit Exercise Step,Redigera träningssteg,
Patient Appointments,Patientmöten,
Item with Item Code {0} already exists,Artikel med artikelkod {0} finns redan,
Registration Fee cannot be negative or zero,Registreringsavgiften får inte vara negativ eller noll,
Configure a service Item for {0},Konfigurera en tjänst för {0},
Temperature: ,Temperatur:,
Pulse: ,Puls:,
Respiratory Rate: ,Andningsfrekvens:,
BP: ,BP:,
BMI: ,BMI:,
Note: ,Notera:,
Check Availability,Kontrollera tillgänglighet,
Please select Patient first,Välj patient först,
Please select a Mode of Payment first,Välj först ett betalningssätt,
Please set the Paid Amount first,Ställ in det betalade beloppet först,
Not Therapies Prescribed,Ej terapier ordinerade,
There are no Therapies prescribed for Patient {0},Det finns inga terapier ordinerade för patienten {0},
Appointment date and Healthcare Practitioner are Mandatory,Anställningsdatum och vårdgivare är obligatoriska,
No Prescribed Procedures found for the selected Patient,Inga föreskrivna procedurer hittades för den valda patienten,
Please select a Patient first,Välj först en patient,
There are no procedure prescribed for ,Det finns inget förfarande föreskrivet för,
Prescribed Therapies,Förskrivna terapier,
Appointment overlaps with ,Möte överlappar med,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} har ett möte planerat med {1} kl. {2} som har {3} minut (er).,
Appointments Overlapping,Möten överlappar varandra,
Consulting Charges: {0},Konsultavgifter: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Mötet avbröts. Granska och avbryt fakturan {0},
Appointment Cancelled.,Mötet avbröts.,
Fee Validity {0} updated.,Avgiftsgiltigheten {0} har uppdaterats.,
Practitioner Schedule Not Found,Utöverschema hittades inte,
{0} is on a Half day Leave on {1},{0} har en halvdagars ledighet den {1},
{0} is on Leave on {1},{0} har ledighet den {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} har inte ett schema för vårdutövare. Lägg till det i Healthcare Practitioner,
Healthcare Service Units,Enheter för vårdtjänster,
Complete and Consume,Komplett och konsumera,
Complete {0} and Consume Stock?,Slutföra {0} och konsumera lager?,
Complete {0}?,Slutfört {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,Lagerkvantitet för att starta proceduren finns inte i lageret {0}. Vill du spela in en aktiepost?,
{0} as on {1},{0} som på {1},
Clinical Procedure ({0}):,Klinisk procedur ({0}):,
Please set Customer in Patient {0},Ställ in kund i patient {0},
Item {0} is not active,Objekt {0} är inte aktivt,
Therapy Plan {0} created successfully.,Terapiplan {0} skapades framgångsrikt.,
Symptoms: ,Symtom:,
No Symptoms,Inga symtom,
Diagnosis: ,Diagnos:,
No Diagnosis,Ingen diagnos,
Drug(s) Prescribed.,Läkemedel som förskrivs.,
Test(s) Prescribed.,Test (er) förskrivet.,
Procedure(s) Prescribed.,Procedur (er) Föreskriven.,
Counts Completed: {0},Antalet slutförda: {0},
Patient Assessment,Patientbedömning,
Assessments,Bedömningar,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Huvudtyper (eller grupper) mot vilka bokföringsposter görs och balanser upprätthålls.,
Account Name,Kontonamn,
Inter Company Account,Inter Company Account,
Parent Account,Moderbolaget konto,
Setting Account Type helps in selecting this Account in transactions.,Ställa Kontotyp hjälper i att välja detta konto i transaktioner.,
Chargeable,Avgift,
Rate at which this tax is applied,I takt med vilken denna skatt tillämpas,
Frozen,Fryst,
"If the account is frozen, entries are allowed to restricted users.","Om kontot är fruset, är poster endast tillgängligt för begränsade användare.",
Balance must be,Balans måste vara,
Lft,Lft,
Rgt,Rgt,
Old Parent,Gammalt mål,
Include in gross,Inkludera i brutto,
Auditor,Redigerare,
Accounting Dimension,Redovisningsdimension,
Dimension Name,Dimension Namn,
Dimension Defaults,Dimension Standardvärden,
Accounting Dimension Detail,Redovisningsdimensiondetalj,
Default Dimension,Standarddimension,
Mandatory For Balance Sheet,Obligatoriskt för balansräkningen,
Mandatory For Profit and Loss Account,Obligatoriskt för resultaträkningskonto,
Accounting Period,Redovisningsperiod,
Period Name,Periodens namn,
Closed Documents,Stängda dokument,
Accounts Settings,Kontoinställningar,
Settings for Accounts,Inställningar för konton,
Make Accounting Entry For Every Stock Movement,Skapa kontering för varje lagerförändring,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Användare med den här rollen får ställa frysta konton och skapa / ändra bokföringsposter mot frysta konton,
Determine Address Tax Category From,Bestäm adressskattekategori från,
Over Billing Allowance (%),Över faktureringsbidrag (%),
Credit Controller,Kreditcontroller,
Check Supplier Invoice Number Uniqueness,Kontrollera Leverantörens unika Fakturanummer,
Make Payment via Journal Entry,Gör betalning via Journal Entry,
Unlink Payment on Cancellation of Invoice,Bort länken Betalning på Indragning av faktura,
Book Asset Depreciation Entry Automatically,Bokförtillgodskrivning automatiskt,
Automatically Add Taxes and Charges from Item Tax Template,Lägg automatiskt till skatter och avgifter från artikelskattmallen,
Automatically Fetch Payment Terms,Hämta automatiskt betalningsvillkor,
Show Payment Schedule in Print,Visa betalningsplan i utskrift,
Currency Exchange Settings,Valutaväxlingsinställningar,
Allow Stale Exchange Rates,Tillåt inaktuella valutakurser,
Stale Days,Stale Days,
Report Settings,Rapportinställningar,
Use Custom Cash Flow Format,Använd anpassat kassaflödesformat,
Allowed To Transact With,Tillåtet att handla med,
SWIFT number,Byt nummer,
Branch Code,Gren-kod,
Address and Contact,Adress och Kontakt,
Address HTML,Adress HTML,
Contact HTML,Kontakta HTML,
Data Import Configuration,Dataimportkonfiguration,
Bank Transaction Mapping,Kartläggning av banktransaktioner,
Plaid Access Token,Plaid Access Token,
Company Account,Företagskonto,
Account Subtype,Kontotyp,
Is Default Account,Är standardkonto,
Is Company Account,Är företagskonto,
Party Details,Fest Detaljer,
Account Details,Kontouppgifter,
IBAN,IBAN,
Bank Account No,Bankkontonummer,
Integration Details,Integrationsdetaljer,
Integration ID,Integrations-ID,
Last Integration Date,Sista integrationsdatum,
Change this date manually to setup the next synchronization start date,Ändra detta datum manuellt för att ställa in nästa startdatum för synkronisering,
Mask,Mask,
Bank Account Subtype,Bankkontots undertyp,
Bank Account Type,Bankkontotyp,
Bank Guarantee,Bankgaranti,
Bank Guarantee Type,Bankgaranti Typ,
Receiving,Tar emot,
Providing,tillhandahålla,
Reference Document Name,Referensdokumentnamn,
Validity in Days,Giltighet i dagar,
Bank Account Info,Bankkontoinformation,
Clauses and Conditions,Klausuler och villkor,
Other Details,Andra detaljer,
Bank Guarantee Number,Bankgaranti nummer,
Name of Beneficiary,Stödmottagarens namn,
Margin Money,Marginalpengar,
Charges Incurred,Avgifter uppkommit,
Fixed Deposit Number,Fast Deponeringsnummer,
Account Currency,Konto Valuta,
Select the Bank Account to reconcile.,Välj bankkonto för att förena.,
Include Reconciled Entries,Inkludera avstämnignsanteckningar,
Get Payment Entries,Få Betalnings Inlägg,
Payment Entries,betalningsAnteckningar,
Update Clearance Date,Uppdatera Clearance Datum,
Bank Reconciliation Detail,Bankavstämning Detalj,
Cheque Number,Check Nummer,
Cheque Date,Check Datum,
Statement Header Mapping,Statement Header Mapping,
Statement Headers,Statement Headers,
Transaction Data Mapping,Transaktionsdata kartläggning,
Mapped Items,Mappade objekt,
Bank Statement Settings Item,Inställningsinställningar för bankräkning,
Mapped Header,Mapped Header,
Bank Header,Bankrubrik,
Bank Statement Transaction Entry,Bankredovisning Transaktionsangivelse,
Bank Transaction Entries,Banköverföringsuppgifter,
New Transactions,Nya transaktioner,
Match Transaction to Invoices,Matchtransaktion till fakturor,
Create New Payment/Journal Entry,Skapa ny betalning / journalinmatning,
Submit/Reconcile Payments,Skicka / avstämma betalningar,
Matching Invoices,Matchande fakturor,
Payment Invoice Items,Betalningsfakturaobjekt,
Reconciled Transactions,Avstämda transaktioner,
Bank Statement Transaction Invoice Item,Bankräkning Transaktionsfaktura,
Payment Description,Betalningsbeskrivning,
Invoice Date,Fakturadatum,
invoice,faktura,
Bank Statement Transaction Payment Item,Bankredovisning Transaktionsbetalningsartikel,
outstanding_amount,utestående belopp,
Payment Reference,Betalningsreferens,
Bank Statement Transaction Settings Item,Bankräkning Transaktionsinställningsobjekt,
Bank Data,Bankuppgifter,
Mapped Data Type,Mappad datatyp,
Mapped Data,Mappad data,
Bank Transaction,Banktransaktion,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,Transaktions ID,
Unallocated Amount,oallokerad Mängd,
Field in Bank Transaction,Fält i banktransaktion,
Column in Bank File,Kolumn i bankfil,
Bank Transaction Payments,Banktransaktionsbetalningar,
Control Action,Kontrollåtgärd,
Applicable on Material Request,Gäller på materialförfrågan,
Action if Annual Budget Exceeded on MR,Åtgärd om årlig budget överskrider MR,
Warn,Varna,
Ignore,Ignorera,
Action if Accumulated Monthly Budget Exceeded on MR,Åtgärd om ackumulerad månadsbudget överskrider MR,
Applicable on Purchase Order,Gäller på inköpsorder,
Action if Annual Budget Exceeded on PO,Åtgärd om årlig budget överskrider PO,
Action if Accumulated Monthly Budget Exceeded on PO,Åtgärd om ackumulerad månadsbudget överskrider PO,
Applicable on booking actual expenses,Gäller vid bokning av faktiska utgifter,
Action if Annual Budget Exceeded on Actual,Åtgärd om årlig budget överskred på faktiska,
Action if Accumulated Monthly Budget Exceeded on Actual,Åtgärd om ackumulerad månadsbudget överskrider faktiska,
Budget Accounts,budget-konton,
Budget Account,budget-konto,
Budget Amount,budget~~POS=TRUNC,
C-Form,C-Form,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,C-form Nr,
Received Date,Mottaget Datum,
Quarter,Kvartal,
I,jag,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,C-Form faktura Detalj,
Invoice No,Faktura Nr,
Cash Flow Mapper,Cash Flow Mapper,
Section Name,Avsnittsnamn,
Section Header,Sektionsrubrik,
Section Leader,Sektionsledare,
e.g Adjustments for:,t.ex. justeringar för:,
Section Subtotal,Sektion Subtotal,
Section Footer,Avsnitt Footer,
Cash Flow Mapping,Kassaflödesmappning,
Select Maximum Of 1,Välj maximalt 1,
Is Finance Cost,Är finansieringskostnad,
Is Working Capital,Är Arbetskapital,
Is Finance Cost Adjustment,Är finansieringskostnadsjustering,
Is Income Tax Liability,Är inkomstskattansvar,
Is Income Tax Expense,Är inkomstskattkostnad,
Cash Flow Mapping Accounts,Kontantströmsmappningskonton,
account,Konto,
Cash Flow Mapping Template,Cash Flow Mapping Template,
Cash Flow Mapping Template Details,Kassaflödesmallar Detaljer,
POS-CLO-,POS-CLO-,
Custody,Vårdnad,
Net Amount,Nettobelopp,
Cashier Closing Payments,Kassaravslutande betalningar,
Chart of Accounts Importer,Kontodiagram importör,
Import Chart of Accounts from a csv file,Importera kontoplan från en csv-fil,
Attach custom Chart of Accounts file,Bifoga anpassad kontoplan,
Chart Preview,Diagramförhandsvisning,
Chart Tree,Diagramträd,
Cheque Print Template,Check utskriftsmall,
Has Print Format,Har Utskriftsformat,
Primary Settings,primära inställningar,
Cheque Size,Check Storlek,
Regular,Regelbunden,
Starting position from top edge,Utgångsläge från övre kanten,
Cheque Width,Check Bredd,
Cheque Height,Check Höjd,
Scanned Cheque,skannad Check,
Is Account Payable,Är leverantörsskuld,
Distance from top edge,Avståndet från den övre kanten,
Distance from left edge,Avstånd från vänstra kanten,
Message to show,Meddelande för att visa,
Date Settings,Datum Inställningar,
Starting location from left edge,Startplats från vänstra kanten,
Payer Settings,Payer Inställningar,
Width of amount in word,Bredd av beloppet i ord,
Line spacing for amount in words,Radavstånd för beloppet i ord,
Amount In Figure,Belopp I figur,
Signatory Position,tecknaren Position,
Closed Document,Stängt dokument,
Track separate Income and Expense for product verticals or divisions.,Spåra separat intäkter och kostnader för produkt vertikaler eller divisioner.,
Cost Center Name,Kostnadcenter Namn,
Parent Cost Center,Överordnat kostnadsställe,
lft,Lft,
rgt,RGT,
Coupon Code,kupongskod,
Coupon Name,Kupongnamn,
"e.g. ""Summer Holiday 2019 Offer 20""",t.ex. &quot;Sommarsemester 2019 Erbjudande 20&quot;,
Coupon Type,Kupongtyp,
Promotional,PR,
Gift Card,Present kort,
unique e.g. SAVE20  To be used to get discount,unik t.ex. SAVE20 Används för att få rabatt,
Validity and Usage,Giltighet och användning,
Valid From,Giltig från,
Valid Upto,Giltig till,
Maximum Use,Maximal användning,
Used,Begagnade,
Coupon Description,Kupongbeskrivning,
Discounted Invoice,Rabatterad faktura,
Debit to,Debitera till,
Exchange Rate Revaluation,Valutakursomvärdering,
Get Entries,Få inlägg,
Exchange Rate Revaluation Account,Valutakursomräkningskonto,
Total Gain/Loss,Totala vinst / förlust,
Balance In Account Currency,Balans i kontovaluta,
Current Exchange Rate,Aktuell växelkurs,
Balance In Base Currency,Balans i basvaluta,
New Exchange Rate,Ny växelkurs,
New Balance In Base Currency,Ny balans i basvaluta,
Gain/Loss,Vinst / förlust,
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,**Räkenskapsåret** representerar budgetåret. Alla bokföringsposter och andra större transaktioner spåras mot **räkenskapsår**.,
Year Name,År namn,
"For e.g. 2012, 2012-13","För t.ex. 2012, 2012-13",
Year Start Date,År Startdatum,
Year End Date,År Slutdatum,
Companies,Företag,
Auto Created,Automatisk skapad,
Stock User,Lager Användar,
Fiscal Year Company,Räkenskapsårets Företag,
Debit Amount,Debit Belopp,
Credit Amount,Kreditbelopp,
Debit Amount in Account Currency,Betal-Belopp i konto Valuta,
Credit Amount in Account Currency,Credit Belopp i konto Valuta,
Voucher Detail No,Rabatt Detalj nr,
Is Opening,Är Öppning,
Is Advance,Är Advancerad,
To Rename,Att byta namn,
GST Account,GST-konto,
CGST Account,CGST-konto,
SGST Account,SGST-konto,
IGST Account,IGST-konto,
CESS Account,CESS-konto,
Loan Start Date,Lånets startdatum,
Loan Period (Days),Låneperiod (dagar),
Loan End Date,Lånets slutdatum,
Bank Charges,Bankavgifter,
Short Term Loan Account,Kortfristigt lånekonto,
Bank Charges Account,Bankkontokonto,
Accounts Receivable Credit Account,Kundfordringar Kreditkonto,
Accounts Receivable Discounted Account,Kundfordringar Rabatterat konto,
Accounts Receivable Unpaid Account,Kundfordringar Obetalt konto,
Item Tax Template,Objekt skattemall,
Tax Rates,Skattesatser,
Item Tax Template Detail,Objekt skatt mall mall,
Entry Type,Entry Type,
Inter Company Journal Entry,Inter Company Journal Entry,
Bank Entry,Bank anteckning,
Cash Entry,Kontantinlägg,
Credit Card Entry,Kreditkorts logg,
Contra Entry,Konteringsanteckning,
Excise Entry,Punktnotering,
Write Off Entry,Avskrivningspost,
Opening Entry,Öppnings post,
ACC-JV-.YYYY.-,ACC-JV-.YYYY.-,
Accounting Entries,Bokföringsposter,
Total Debit,Totalt bankkort,
Total Credit,Total Credit,
Difference (Dr - Cr),Skillnad (Dr - Cr),
Make Difference Entry,Skapa Differensinlägg,
Total Amount Currency,Totalt Belopp Valuta,
Total Amount in Words,Total mängd i ord,
Remark,Anmärkning,
Paid Loan,Betalt lån,
Inter Company Journal Entry Reference,Inter Company Journal Entry Reference,
Write Off Based On,Avskrivning Baseras på,
Get Outstanding Invoices,Hämta utestående fakturor,
Write Off Amount,Avskrivningsbelopp,
Printing Settings,Utskriftsinställningar,
Pay To / Recd From,Betala Till / RECD Från,
Payment Order,Betalningsorder,
Subscription Section,Prenumerationsavsnitt,
Journal Entry Account,Journalanteckning konto,
Account Balance,Balanskonto,
Party Balance,Parti Balans,
Accounting Dimensions,Redovisningsdimensioner,
If Income or Expense,Om intäkter eller kostnader,
Exchange Rate,Växelkurs,
Debit in Company Currency,Debet i bolaget Valuta,
Credit in Company Currency,Kredit i bolaget Valuta,
Payroll Entry,Löneinmatning,
Employee Advance,Anställd Advance,
Reference Due Date,Referens förfallodatum,
Loyalty Program Tier,Lojalitetsprogram Tier,
Redeem Against,Lösa in mot,
Expiry Date,Utgångsdatum,
Loyalty Point Entry Redemption,Återbetalning av lojalitetspoäng,
Redemption Date,Inlösendatum,
Redeemed Points,Inlösta poäng,
Loyalty Program Name,Lojalitetsprogramnamn,
Loyalty Program Type,Lojalitetsprogramtyp,
Single Tier Program,Single Tier Program,
Multiple Tier Program,Multiple Tier Program,
Customer Territory,Kundområde,
Auto Opt In (For all customers),Auto Opt In (för alla kunder),
Collection Tier,Collection Tier,
Collection Rules,Samlingsregler,
Redemption,inlösen,
Conversion Factor,Omvandlingsfaktor,
1 Loyalty Points = How much base currency?,1 Lojalitetspoäng = Hur mycket basvaluta?,
Expiry Duration (in days),Förfallotid (i dagar),
Help Section,Hjälpavsnitt,
Loyalty Program Help,Lojalitetsprogram Hjälp,
Loyalty Program Collection,Lojalitetsprogram Samling,
Tier Name,Tier Name,
Minimum Total Spent,Minsta totala utgifter,
Collection Factor (=1 LP),Samlingsfaktor (= 1 LP),
For how much spent = 1 Loyalty Point,För hur mycket spenderat = 1 Lojalitetspoäng,
Mode of Payment Account,Betalningssätt konto,
Default Account,Standard konto,
Default account will be automatically updated in POS Invoice when this mode is selected.,Standardkonto uppdateras automatiskt i POS-faktura när det här läget är valt.,
**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.,**Månatlig Distribution** hjälper dig distribuera budgeten/målen över månader om du har säsongsförsäljning i din verksamhet.,
Distribution Name,Distributions Namn,
Name of the Monthly Distribution,Namn på månadens distribution,
Monthly Distribution Percentages,Månadsdistributions Procentsatser,
Monthly Distribution Percentage,Månadsdistributions Procent,
Percentage Allocation,Procentuell Fördelning,
Create Missing Party,Skapa saknade parti,
Create missing customer or supplier.,Skapa saknad kund eller leverantör.,
Opening Invoice Creation Tool Item,Öppnande av fakturaobjektverktygsartikel,
Temporary Opening Account,Tillfälligt öppnings konto,
Party Account,Parti-konto,
Type of Payment,Typ av betalning,
ACC-PAY-.YYYY.-,ACC-PAY-.YYYY.-,
Receive,Receive,
Internal Transfer,Intern transaktion,
Payment Order Status,Betalningsorder Status,
Payment Ordered,Betalningsbeställd,
Payment From / To,Betalning från / till,
Company Bank Account,Företagets bankkonto,
Party Bank Account,Partibankonto,
Account Paid From,Konto betalas från,
Account Paid To,Konto betalt för att,
Paid Amount (Company Currency),Betald Belopp (Company valuta),
Received Amount,erhållet belopp,
Received Amount (Company Currency),Erhållet belopp (Company valuta),
Get Outstanding Invoice,Få en enastående faktura,
Payment References,betalnings~~POS=TRUNC Referenser,
Writeoff,nedskrivning,
Total Allocated Amount,Sammanlagda anslaget,
Total Allocated Amount (Company Currency),Sammanlagda anslaget (Company valuta),
Set Exchange Gain / Loss,Ställ Exchange vinst / förlust,
Difference Amount (Company Currency),Skillnad Belopp (Company valuta),
Write Off Difference Amount,Skriv differensen Belopp,
Deductions or Loss,Avdrag eller förlust,
Payment Deductions or Loss,Betalnings Avdrag eller förlust,
Cheque/Reference Date,Check / Referens Datum,
Payment Entry Deduction,Betalning Entry Avdrag,
Payment Entry Reference,Betalning Entry Referens,
Allocated,Tilldelad,
Payment Gateway Account,Betalning Gateway konto,
Payment Account,Betalningskonto,
Default Payment Request Message,Standardbetalnings Request Message,
PMO-,PMO-,
Payment Order Type,Betalningsorder Typ,
Payment Order Reference,Betalningsorderreferens,
Bank Account Details,Bankkontouppgifter,
Payment Reconciliation,Betalning Avstämning,
Receivable / Payable Account,Fordran / Betal konto,
Bank / Cash Account,Bank / Konto,
From Invoice Date,Från fakturadatum,
To Invoice Date,Att fakturadatum,
Minimum Invoice Amount,Minimifakturabelopp,
Maximum Invoice Amount,Maximal Fakturabelopp,
System will fetch all the entries if limit value is zero.,Systemet hämtar alla poster om gränsvärdet är noll.,
Get Unreconciled Entries,Hämta ej verifierade Anteckningar,
Unreconciled Payment Details,Sonade Betalningsinformation,
Invoice/Journal Entry Details,Faktura / Journalanteckning Detaljer,
Payment Reconciliation Invoice,Betalning Avstämning Faktura,
Invoice Number,Fakturanummer,
Payment Reconciliation Payment,Betalning Avstämning Betalning,
Reference Row,referens Row,
Allocated amount,Avsatt mängd,
Payment Request Type,Betalningsförfrågan Typ,
Outward,Utåt,
Inward,Inåt,
ACC-PRQ-.YYYY.-,ACC-PRQ-.YYYY.-,
Transaction Details,Transaktions Detaljer,
Amount in customer's currency,Belopp i kundens valuta,
Is a Subscription,Är en prenumeration,
Transaction Currency,transaktionsvaluta,
Subscription Plans,Prenumerationsplaner,
SWIFT Number,Byt nummer,
Recipient Message And Payment Details,Mottagare Meddelande och betalningsuppgifter,
Make Sales Invoice,Skapa fakturan,
Mute Email,Mute E,
payment_url,payment_url,
Payment Gateway Details,Betalning Gateway Detaljer,
Payment Schedule,Betalningsplan,
Invoice Portion,Fakturahandel,
Payment Amount,Betalningsbelopp,
Payment Term Name,Betalningsnamn Namn,
Due Date Based On,Förfallodatum baserad på,
Day(s) after invoice date,Dag (er) efter fakturadatum,
Day(s) after the end of the invoice month,Dag (er) efter fakturamånadens slut,
Month(s) after the end of the invoice month,Månad (er) efter fakturamånadens slut,
Credit Days,Kreditdagar,
Credit Months,Kreditmånader,
Allocate Payment Based On Payment Terms,Tilldela betalning baserat på betalningsvillkor,
"If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term",Om den här kryssrutan är markerad delas betalt belopp och fördelas enligt beloppen i betalningsschemat mot varje betalningstid,
Payment Terms Template Detail,Betalningsvillkor Mallinformation,
Closing Fiscal Year,Stänger Räkenskapsårets,
Closing Account Head,Stänger Konto Huvud,
"The account head under Liability or Equity, in which Profit/Loss will be booked","Konto huvudet under skuld eller eget kapital, där vinst / förlust bokas",
POS Customer Group,POS Kundgrupp,
POS Field,POS-fält,
POS Item Group,POS Artikelgrupp,
Company Address,Företags Adress,
Update Stock,Uppdatera lager,
Ignore Pricing Rule,Ignorera Prisregler,
Applicable for Users,Gäller för användare,
Sales Invoice Payment,Fakturan Betalning,
Item Groups,artikelgrupper,
Only show Items from these Item Groups,Visa endast artiklar från dessa artikelgrupper,
Customer Groups,kundgrupper,
Only show Customer of these Customer Groups,Visa endast kund för dessa kundgrupper,
Write Off Account,Avskrivningskonto,
Write Off Cost Center,Avskrivning kostnadsställe,
Account for Change Amount,Konto för förändring Belopp,
Taxes and Charges,Skatter och avgifter,
Apply Discount On,Tillämpa rabatt på,
POS Profile User,POS Profil Användare,
Apply On,Applicera på,
Price or Product Discount,Pris eller produktrabatt,
Apply Rule On Item Code,Tillämpa regel om artikelkod,
Apply Rule On Item Group,Tillämpa regel om artikelgrupp,
Apply Rule On Brand,Tillämpa regel om märke,
Mixed Conditions,Blandade villkor,
Conditions will be applied on all the selected items combined. ,Villkoren kommer att tillämpas på alla valda objekt kombinerade.,
Is Cumulative,Är kumulativ,
Coupon Code Based,Baserad på kupongkod,
Discount on Other Item,Rabatt på annan artikel,
Apply Rule On Other,Tillämpa regel på andra,
Party Information,Partiinformation,
Quantity and Amount,Kvantitet och mängd,
Min Qty,Min Antal,
Max Qty,Max Antal,
Min Amt,Min Amt,
Max Amt,Max Amt,
Period Settings,Periodinställningar,
Margin,Marginal,
Margin Type,marginal Type,
Margin Rate or Amount,Marginal snabbt eller hur mycket,
Price Discount Scheme,Prisrabatt,
Rate or Discount,Betygsätt eller rabatt,
Discount Percentage,Rabatt Procent,
Discount Amount,Rabattbelopp,
For Price List,För prislista,
Product Discount Scheme,Produktrabatt,
Same Item,Samma artikel,
Free Item,Gratis artikel,
Threshold for Suggestion,Tröskel för förslag,
System will notify to increase or decrease quantity or amount ,Systemet meddelar att man ökar eller minskar mängden eller mängden,
"Higher the number, higher the priority","Högre nummer, högre prioritet",
Apply Multiple Pricing Rules,Tillämpa flera prissättningsregler,
Apply Discount on Rate,Tillämpa rabatt på pris,
Validate Applied Rule,Validera tillämpad regel,
Rule Description,Regelbeskrivning,
Pricing Rule Help,Prissättning Regel Hjälp,
Promotional Scheme Id,Kampanjschema-id,
Promotional Scheme,Kampanjschema,
Pricing Rule Brand,Prissättningsmärke,
Pricing Rule Detail,Prissättningsdetalj,
Child Docname,Barndokumentnamn,
Rule Applied,Tillämpad regel,
Pricing Rule Item Code,Prissättningsartikelkod,
Pricing Rule Item Group,Prissättningsartikelgrupp,
Price Discount Slabs,Prisrabattplattor,
Promotional Scheme Price Discount,Kampanjschema Prisrabatt,
Product Discount Slabs,Produktrabattplattor,
Promotional Scheme Product Discount,Kampanjschema Produktrabatt,
Min Amount,Min belopp,
Max Amount,Maxbelopp,
Discount Type,Rabatttyp,
ACC-PINV-.YYYY.-,ACC-PINV-.YYYY.-,
Tax Withholding Category,Skatteavdragskategori,
Edit Posting Date and Time,Redigera Publiceringsdatum och tid,
Is Paid,Är betalad,
Is Return (Debit Note),Är Retur (Debit Not),
Apply Tax Withholding Amount,Applicera Skatteavdrag Belopp,
Accounting Dimensions ,Redovisningsdimensioner,
Supplier Invoice Details,Detaljer leverantörsfaktura,
Supplier Invoice Date,Leverantörsfakturadatum,
Return Against Purchase Invoice,Återgå mot inköpsfaktura,
Select Supplier Address,Välj Leverantör Adress,
Contact Person,Kontaktperson,
Select Shipping Address,Välj leveransadress,
Currency and Price List,Valuta och prislista,
Price List Currency,Prislista Valuta,
Price List Exchange Rate,Prislista Växelkurs,
Set Accepted Warehouse,Ställ in accepterat lager,
Rejected Warehouse,Avvisat Lager,
Warehouse where you are maintaining stock of rejected items,Lager där du hanterar lager av avvisade föremål,
Raw Materials Supplied,Råvaror Levereras,
Supplier Warehouse,Leverantör Lager,
Pricing Rules,Priseregler,
Supplied Items,Medföljande tillbehör,
Total (Company Currency),Totalt (Company valuta),
Net Total (Company Currency),Netto Totalt (Företagsvaluta),
Total Net Weight,Total nettovikt,
Shipping Rule,Frakt Regel,
Purchase Taxes and Charges Template,Inköp Skatter och avgifter Mall,
Purchase Taxes and Charges,Inköp skatter och avgifter,
Tax Breakup,Skatteavbrott,
Taxes and Charges Calculation,Skatter och avgifter Beräkning,
Taxes and Charges Added (Company Currency),Skatter och avgifter Added (Company valuta),
Taxes and Charges Deducted (Company Currency),Skatter och avgifter Avgår (Company valuta),
Total Taxes and Charges (Company Currency),Totala skatter och avgifter (Företags valuta),
Taxes and Charges Added,Skatter och avgifter Added,
Taxes and Charges Deducted,Skatter och avgifter Avdragen,
Total Taxes and Charges,Totala skatter och avgifter,
Additional Discount,Ytterligare rabatt,
Apply Additional Discount On,Applicera ytterligare rabatt på,
Additional Discount Amount (Company Currency),Ytterligare rabattbeloppet (Företagsvaluta),
Additional Discount Percentage,Ytterligare rabattprocent,
Additional Discount Amount,Ytterligare rabattbelopp,
Grand Total (Company Currency),Totalsumma (Företagsvaluta),
Rounding Adjustment (Company Currency),Avrundningsjustering (företagsvaluta),
Rounded Total (Company Currency),Avrundat Totalt (Företagsvaluta),
In Words (Company Currency),I ord (Företagsvaluta),
Rounding Adjustment,Avrundningsjustering,
In Words,I Ord,
Total Advance,Totalt Advance,
Disable Rounded Total,Inaktivera avrundat Totalbelopp,
Cash/Bank Account,Kontant / Bankkonto,
Write Off Amount (Company Currency),Skriv engångsavgift (Company valuta),
Set Advances and Allocate (FIFO),Ställ in förskott och fördela (FIFO),
Get Advances Paid,Få utbetalda förskott,
Advances,Förskott,
Terms,Villkor,
Terms and Conditions1,Villkor och Conditions1,
Group same items,Grupp samma objekt,
Print Language,print Språk,
"Once set, this invoice will be on hold till the set date",När den är inställd kommer den här fakturan att vara kvar tills det angivna datumet,
Credit To,Kredit till,
Party Account Currency,Party konto Valuta,
Against Expense Account,Mot utgiftskonto,
Inter Company Invoice Reference,Interfaktura Referens,
Is Internal Supplier,Är Intern Leverantör,
Start date of current invoice's period,Startdatum för aktuell faktura period,
End date of current invoice's period,Slutdatum för aktuell faktura period,
Update Auto Repeat Reference,Uppdatera automatisk repeteringsreferens,
Purchase Invoice Advance,Inköpsfakturan Advancerat,
Purchase Invoice Item,Inköpsfaktura Artiklar,
Quantity and Rate,Kvantitet och betyg,
Received Qty,Mottagna Antal,
Accepted Qty,Godkänd antal,
Rejected Qty,Avvisad Antal,
UOM Conversion Factor,UOM Omvandlingsfaktor,
Discount on Price List Rate (%),Rabatt på Prislista Andel (%),
Price List Rate (Company Currency),Prislista värde (Företagsvaluta),
Rate ,Betygsätt,
Rate (Company Currency),Andel (Företagsvaluta),
Amount (Company Currency),Belopp (Företagsvaluta),
Is Free Item,Är gratis artikel,
Net Rate,Netto kostnad,
Net Rate (Company Currency),Netto kostnad (Företagsvaluta),
Net Amount (Company Currency),Nettobelopp (Företagsvaluta),
Item Tax Amount Included in Value,Artikel Skattebelopp ingår i värdet,
Landed Cost Voucher Amount,Landad Kostnad rabattmängd,
Raw Materials Supplied Cost,Råvaror Levererans Kostnad,
Accepted Warehouse,Godkänt lager,
Serial No,Serienummer,
Rejected Serial No,Avvisat Serienummer,
Expense Head,Utgiftshuvud,
Is Fixed Asset,Är anläggningstillgång,
Asset Location,Asset Location,
Deferred Expense,Uppskjuten kostnad,
Deferred Expense Account,Uppskjuten utgiftskonto,
Service Stop Date,Servicestoppdatum,
Enable Deferred Expense,Aktivera uppskjuten kostnad,
Service Start Date,Service Startdatum,
Service End Date,Service Slutdatum,
Allow Zero Valuation Rate,Tillåt nollvärderingsfrekvens,
Item Tax Rate,Produkt Skattesats,
Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,Skatte detalj tabell hämtas från punkt mästare som en sträng och lagras i detta område. Används för skatter och avgifter,
Purchase Order Item,Inköpsorder Artikeln,
Purchase Receipt Detail,Köp kvitto detalj,
Item Weight Details,Produkt Vikt detaljer,
Weight Per Unit,Vikt per enhet,
Total Weight,Totalvikt,
Weight UOM,Vikt UOM,
Page Break,Sidbrytning,
Consider Tax or Charge for,Värdera skatt eller avgift för,
Valuation and Total,Värdering och Total,
Valuation,Värdering,
Add or Deduct,Lägg till eller dra av,
Deduct,Dra av,
On Previous Row Amount,På föregående v Belopp,
On Previous Row Total,På föregående v Totalt,
On Item Quantity,På artikelkvantitet,
Reference Row #,Referens Rad #,
Is this Tax included in Basic Rate?,Är denna skatt inkluderar i Basic kursen?,
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Om markerad, kommer skattebeloppet anses redan ingå i Skriv värdet / Skriv beloppet",
Account Head,Kontohuvud,
Tax Amount After Discount Amount,Skattebelopp efter rabatt Belopp,
Item Wise Tax Detail ,Objekt 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.","Schablonskatt mall som kan tillämpas på alla köptransaktioner. Denna mall kan innehålla en lista över skatte huvuden och även andra kostnadshuvuden som &quot;Shipping&quot;, &quot;Försäkring&quot;, &quot;Hantera&quot; etc. #### Obs Skattesatsen du definierar här kommer att bli den schablonskatt för alla ** artiklar * *. Om det finns ** artiklar ** som har olika priser, måste de läggas till i ** Punkt skatt ** tabellen i ** Punkt ** mästare. #### Beskrivning av kolumner 1. Beräkning Typ: - Det kan vara på ** Net Totalt ** (som är summan av grundbeloppet). - ** I föregående v Totalt / Belopp ** (för kumulativa skatter eller avgifter). Om du väljer det här alternativet, kommer skatten att tillämpas som en procentandel av föregående rad (i skattetabellen) belopp eller total. - ** Faktisk ** (som nämns). 2. Konto Head: Konto huvudbok enligt vilket denna skatt kommer att bokas 3. Kostnadsställe: Om skatten / avgiften är en inkomst (som sjöfarten) eller kostnader det måste bokas mot ett kostnadsställe. 4. Beskrivning: Beskrivning av skatten (som ska skrivas ut i fakturor / citationstecken). 5. Sätt betyg: skattesats. 6. Belopp Momsbelopp. 7. Totalt: Ackumulerad total till denna punkt. 8. Skriv Row: Om baserad på &quot;Föregående rad Total&quot; kan du välja radnumret som kommer att tas som en bas för denna beräkning (standard är föregående rad). 9. Tänk skatt eller avgift för: I det här avsnittet kan du ange om skatten / avgiften är endast för värdering (inte en del av den totala) eller endast för total (inte tillföra värde till objektet) eller för båda. 10. Lägg till eller dra av: Oavsett om du vill lägga till eller dra av skatten.",
ACC-SINV-.YYYY.-,ACC-SINV-.YYYY.-,
Include Payment (POS),Inkluderar Betalning (POS),
Offline POS Name,Offline POS Namn,
Is Return (Credit Note),Är Retur (Kreditnot),
Return Against Sales Invoice,Återgå mot fakturan,
Update Billed Amount in Sales Order,Uppdatera fakturerat belopp i försäljningsorder,
Customer PO Details,Kundens PO-uppgifter,
Customer's Purchase Order,Kundens beställning,
Customer's Purchase Order Date,Kundens inköpsorder Datum,
Customer Address,Kundadress,
Shipping Address Name,Leveransadress Namn,
Company Address Name,Företagets adressnamn,
Rate at which Customer Currency is converted to customer's base currency,I takt med vilket kundens Valuta omvandlas till kundens basvaluta,
Rate at which Price list currency is converted to customer's base currency,I takt med vilket Prislistans valuta omvandlas till kundens basvaluta,
Set Source Warehouse,Ställ in Source Warehouse,
Packing List,Packlista,
Packed Items,Packade artiklar,
Product Bundle Help,Produktpaket Hjälp,
Time Sheet List,Tidrapportering Lista,
Time Sheets,tidrapporter,
Total Billing Amount,Totalt Fakturerings Mängd,
Sales Taxes and Charges Template,Försäljnings Skatter och avgifter Mall,
Sales Taxes and Charges,Försäljnings skatter och avgifter,
Loyalty Points Redemption,Lojalitetspoäng Inlösen,
Redeem Loyalty Points,Lösa in lojalitetspoäng,
Redemption Account,Inlösenkonto,
Redemption Cost Center,Inlösenkostnadscenter,
In Words will be visible once you save the Sales Invoice.,I Ord kommer att synas när du sparar fakturan.,
Allocate Advances Automatically (FIFO),Tilldela förskott automatiskt (FIFO),
Get Advances Received,Få erhållna förskott,
Base Change Amount (Company Currency),Basförändring Belopp (Company valuta),
Write Off Outstanding Amount,Avskrivning utestående belopp,
Terms and Conditions Details,Villkor Detaljer,
Is Internal Customer,Är internkund,
Is Discounted,Är rabatterad,
Unpaid and Discounted,Obetald och rabatterad,
Overdue and Discounted,Försenade och rabatterade,
Accounting Details,Redovisning Detaljer,
Debit To,Debitering,
Is Opening Entry,Är öppen anteckning,
C-Form Applicable,C-Form Tillämplig,
Commission Rate (%),Provisionsandel (%),
Sales Team1,Försäljnings Team1,
Against Income Account,Mot Inkomst konto,
Sales Invoice Advance,Försäljning Faktura Advance,
Advance amount,Förskottsmängd,
Sales Invoice Item,Fakturan Punkt,
Customer's Item Code,Kundens Artikelkod,
Brand Name,Varumärke,
Qty as per Stock UOM,Antal per lager UOM,
Discount and Margin,Rabatt och marginal,
Rate With Margin,Betygsätt med marginal,
Discount (%) on Price List Rate with Margin,Rabatt (%) på prislista med marginal,
Rate With Margin (Company Currency),Betygsätt med marginal (Företagsvaluta),
Delivered By Supplier,Levereras av Supplier,
Deferred Revenue,Uppskjuten intäkt,
Deferred Revenue Account,Uppskjuten inkomstkonto,
Enable Deferred Revenue,Aktivera uppskjuten intäkt,
Stock Details,Lager Detaljer,
Customer Warehouse (Optional),Kund Warehouse (tillval),
Available Batch Qty at Warehouse,Tillgänglig Batch Antal vid Lager,
Available Qty at Warehouse,Tillgång Antal vid Lager,
Delivery Note Item,Följesedel Anteckningspunkt,
Base Amount (Company Currency),Basbelopp (företagets valuta),
Sales Invoice Timesheet,Fakturan Tidrapport,
Time Sheet,Tidrapportering,
Billing Hours,fakturerings Timmar,
Timesheet Detail,tidrapport Detalj,
Tax Amount After Discount Amount (Company Currency),Skattebelopp efter rabatt Belopp (Company valuta),
Item Wise Tax Detail,Produktvis Skatte Detalj,
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.","Schablonskatt mall som kan tillämpas på alla försäljningstransaktioner. Denna mall kan innehålla en lista över skatte huvuden och även andra kostnader / intäkter huvuden som &quot;Shipping&quot;, &quot;Försäkring&quot;, &quot;Hantera&quot; etc. #### Obs Skattesatsen du definierar här kommer att bli den schablonskatt för alla ** poster **. Om det finns ** artiklar ** som har olika priser, måste de läggas till i ** Punkt skatt ** tabellen i ** Punkt ** mästare. #### Beskrivning av kolumner 1. Beräkning Typ: - Det kan vara på ** Net Totalt ** (som är summan av grundbeloppet). - ** I föregående v Totalt / Belopp ** (för kumulativa skatter eller avgifter). Om du väljer det här alternativet, kommer skatten att tillämpas som en procentandel av föregående rad (i skattetabellen) belopp eller total. - ** Faktisk ** (som nämns). 2. Konto Head: Konto huvudbok enligt vilket denna skatt kommer att bokas 3. Kostnadsställe: Om skatten / avgiften är en inkomst (som sjöfarten) eller kostnader det måste bokas mot ett kostnadsställe. 4. Beskrivning: Beskrivning av skatten (som ska skrivas ut i fakturor / citationstecken). 5. Sätt betyg: skattesats. 6. Belopp Momsbelopp. 7. Totalt: Ackumulerad total till denna punkt. 8. Skriv Row: Om baserad på &quot;Föregående rad Total&quot; kan du välja radnumret som kommer att tas som en bas för denna beräkning (standard är föregående rad). 9. Är denna skatt ingår i Basic Rate ?: Om du markerar detta, betyder det att denna skatt inte kommer att visas under posten tabellen, men kommer att ingå i en basnivå i din huvudfråga tabellen. Detta är användbart när du vill ge ett fast pris (inklusive alla skatter) pris till kunderna.",
* Will be calculated in the transaction.,* Kommer att beräknas i transaktionen.,
From No,Från nr,
To No,Till nr,
Is Company,Är Företag,
Current State,Nuvarande tillstånd,
Purchased,Köpt,
From Shareholder,Från aktieägare,
From Folio No,Från Folio nr,
To Shareholder,Till aktieägare,
To Folio No,Till Folio nr,
Equity/Liability Account,Eget kapital / Ansvarskonto,
Asset Account,Tillgångskonto,
(including),(inklusive),
ACC-SH-.YYYY.-,ACC-SH-.YYYY.-,
Folio no.,Folio nr.,
Address and Contacts,Adress och kontakter,
Contact List,Kontaktlista,
Hidden list maintaining the list of contacts linked to Shareholder,Dold lista som behåller listan över kontakter som är kopplade till aktieägare,
Specify conditions to calculate shipping amount,Ange villkor för att beräkna fraktbeloppet,
Shipping Rule Label,Frakt Regel Etikett,
example: Next Day Shipping,exempel: Nästa dag Leverans,
Shipping Rule Type,Leveransregel Typ,
Shipping Account,Frakt konto,
Calculate Based On,Beräkna baserad på,
Fixed,Fast,
Net Weight,Nettovikt,
Shipping Amount,Fraktbelopp,
Shipping Rule Conditions,Frakt härskar Villkor,
Restrict to Countries,Begränsa till länder,
Valid for Countries,Gäller för länder,
Shipping Rule Condition,Frakt Regel skick,
A condition for a Shipping Rule,En förutsättning för en frakt Regel,
From Value,Från Värde,
To Value,Att Värdera,
Shipping Rule Country,Frakt Regel Land,
Subscription Period,Prenumerationsperiod,
Subscription Start Date,Prenumerations startdatum,
Cancelation Date,Avbokningsdatum,
Trial Period Start Date,Försöksperiodens startdatum,
Trial Period End Date,Pröva period Slutdatum,
Current Invoice Start Date,Nuvarande fakturans startdatum,
Current Invoice End Date,Aktuell faktura Slutdatum,
Days Until Due,Dagar fram till förfall,
Number of days that the subscriber has to pay invoices generated by this subscription,Antal dagar som abonnenten måste betala fakturor som genereras av denna prenumeration,
Cancel At End Of Period,Avbryt vid slutet av perioden,
Generate Invoice At Beginning Of Period,Generera faktura vid början av perioden,
Plans,Plans,
Discounts,rabatter,
Additional DIscount Percentage,Ytterligare rabatt Procent,
Additional DIscount Amount,Ytterligare rabatt Belopp,
Subscription Invoice,Prenumerationsfaktura,
Subscription Plan,Prenumerationsplan,
Cost,Kosta,
Billing Interval,Faktureringsintervall,
Billing Interval Count,Faktureringsintervallräkning,
"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 för intervallfältet, t ex om intervallet är &quot;dagar&quot; och faktureringsintervalsräkning är 3, fakturor kommer att genereras var tredje dag",
Payment Plan,Betalningsplan,
Subscription Plan Detail,Prenumerationsplandetaljer,
Plan,Planen,
Subscription Settings,Prenumerationsinställningar,
Grace Period,Grace Period,
Number of days after invoice date has elapsed before canceling subscription or marking subscription as unpaid,Antal dagar efter fakturadatum har förflutit innan du avbryter prenumerationen eller prenumerationen som obetald,
Prorate,prorata,
Tax Rule,Skatte Rule,
Tax Type,Skatte Typ,
Use for Shopping Cart,Används för Varukorgen,
Billing City,Fakturerings Ort,
Billing County,Billings County,
Billing State,Faktureringsstaten,
Billing Zipcode,Fakturering Postnummer,
Billing Country,Faktureringsland,
Shipping City,Shipping stad,
Shipping County,Frakt County,
Shipping State,Frakt State,
Shipping Zipcode,Frakt Postnummer,
Shipping Country,Frakt Land,
Tax Withholding Account,Skatteavdragskonto,
Tax Withholding Rates,Skatteavdrag,
Rates,Priser,
Tax Withholding Rate,Skattesats,
Single Transaction Threshold,Enda transaktionströskel,
Cumulative Transaction Threshold,Kumulativ transaktionströskel,
Agriculture Analysis Criteria,Jordbruksanalys Kriterier,
Linked Doctype,Länkad doktyp,
Water Analysis,Vattenanalys,
Soil Analysis,Jordanalys,
Plant Analysis,Växtanalys,
Fertilizer,Fertilizer,
Soil Texture,Marktextur,
Weather,Väder,
Agriculture Manager,Jordbrukschef,
Agriculture User,Jordbrukare,
Agriculture Task,Jordbruksuppgift,
Task Name,Uppgiftsnamn,
Start Day,Start dag,
End Day,Slutdag,
Holiday Management,Holiday Management,
Ignore holidays,Ignorera semester,
Previous Business Day,Tidigare företagsdag,
Next Business Day,Nästa affärsdags,
Urgent,Brådskande,
Crop Name,Skörda namn,
Scientific Name,Vetenskapligt namn,
"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 definiera alla uppgifter som behöver utföras för denna gröda här. Dagfältet används för att nämna den dag då uppgiften ska utföras, 1 är första dagen, etc.",
Crop Spacing,Beskära Spacing,
Crop Spacing UOM,Beskära Spacing UOM,
Row Spacing,Row Spacing,
Row Spacing UOM,Row Spacing UOM,
Perennial,Perenn,
Biennial,Tvåårig,
Planting UOM,Planterar UOM,
Planting Area,Planteringsområde,
Yield UOM,Utbyte UOM,
Materials Required,Material krävs,
Produced Items,Producerade produkter,
Produce,Producera,
Byproducts,biprodukter,
Linked Location,Länkad plats,
A link to all the Locations in which the Crop is growing,En länk till alla platser där grödor växer,
This will be day 1 of the crop cycle,Detta blir dag 1 i grödan,
ISO 8601 standard,ISO 8601-standarden,
Cycle Type,Cykeltyp,
Less than a year,Mindre än ett år,
The minimum length between each plant in the field for optimum growth,Minsta längd mellan varje växt i fältet för optimal tillväxt,
The minimum distance between rows of plants for optimum growth,Minsta avstånd mellan rader av växter för optimal tillväxt,
Detected Diseases,Upptäckta sjukdomar,
List of diseases detected on the field. When selected it'll automatically add a list of tasks to deal with the disease ,Lista över sjukdomar som upptäckts på fältet. När den väljs kommer den automatiskt att lägga till en lista över uppgifter för att hantera sjukdomen,
Detected Disease,Upptäckt sjukdom,
LInked Analysis,Analys,
Disease,Sjukdom,
Tasks Created,Uppgifter skapade,
Common Name,Vanligt namn,
Treatment Task,Behandlingsuppgift,
Treatment Period,Behandlingsperiod,
Fertilizer Name,Namn på gödselmedel,
Density (if liquid),Densitet (om vätska),
Fertilizer Contents,Innehåll för gödselmedel,
Fertilizer Content,Gödselinnehåll,
Linked Plant Analysis,Länkad analys av växter,
Linked Soil Analysis,Länkad jordanalys,
Linked Soil Texture,Länkad markstruktur,
Collection Datetime,Samling Datetime,
Laboratory Testing Datetime,Laboratory Testing Datetime,
Result Datetime,Resultat Datetime,
Plant Analysis Criterias,Plantanalyskriterier,
Plant Analysis Criteria,Plantanalys Kriterier,
Minimum Permissible Value,Minsta tillåtet värde,
Maximum Permissible Value,Maximalt tillåtet värde,
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,Kriterier för markanalys,
Soil Analysis Criteria,Kriterier för markanalys,
Soil Type,Marktyp,
Loamy Sand,Lerig sand,
Sandy Loam,Sandig blandjord,
Loam,Lerjord,
Silt Loam,Silt Loam,
Sandy Clay Loam,Sandig Clay Loam,
Clay Loam,Clay Loam,
Silty Clay Loam,Silty Clay Loam,
Sandy Clay,Sandig Clay,
Silty Clay,Silty Clay,
Clay Composition (%),Lerkomposition (%),
Sand Composition (%),Sandkomposition (%),
Silt Composition (%),Siltkomposition (%),
Ternary Plot,Ternary Plot,
Soil Texture Criteria,Marktexturkriterier,
Type of Sample,Typ av prov,
Container,Behållare,
Origin,Ursprung,
Collection Temperature ,Samlingstemperatur,
Storage Temperature,Förvaringstemperatur,
Appearance,Utseende,
Person Responsible,Ansvarig person,
Water Analysis Criteria,Vattenanalysskriterier,
Weather Parameter,Väderparameter,
ACC-ASS-.YYYY.-,ACC-ASS-.YYYY.-,
Asset Owner,Tillgångsägare,
Asset Owner Company,Asset Owner Company,
Custodian,Väktare,
Disposal Date,bortskaffande Datum,
Journal Entry for Scrap,Journal Entry för skrot,
Available-for-use Date,Tillgänglig för användning Datum,
Calculate Depreciation,Beräkna avskrivningar,
Allow Monthly Depreciation,Tillåt månadsvis avskrivning,
Number of Depreciations Booked,Antal Avskrivningar bokat,
Finance Books,Finansböcker,
Straight Line,Rak linje,
Double Declining Balance,Dubbel degressiv,
Manual,Manuell,
Value After Depreciation,Värde efter avskrivningar,
Total Number of Depreciations,Totalt Antal Avskrivningar,
Frequency of Depreciation (Months),Frekvens av avskrivningar (månader),
Next Depreciation Date,Nästa Av- Datum,
Depreciation Schedule,avskrivningsplanen,
Depreciation Schedules,avskrivningstider,
Insurance details,Försäkringsinformation,
Policy number,Försäkringsnummer,
Insurer,Försäkringsgivare,
Insured value,Försäkrade värde,
Insurance Start Date,Försäkring Startdatum,
Insurance End Date,Försäkrings slutdatum,
Comprehensive Insurance,Allriskförsäkring,
Maintenance Required,Underhåll krävs,
Check if Asset requires Preventive Maintenance or Calibration,Kontrollera om tillgången kräver förebyggande underhåll eller kalibrering,
Booked Fixed Asset,Bokad fast tillgång,
Purchase Receipt Amount,Inköpsbelopp,
Default Finance Book,Standard finansbok,
Quality Manager,Kvalitetsansvarig,
Asset Category Name,Asset Kategori Namn,
Depreciation Options,Avskrivningsalternativ,
Enable Capital Work in Progress Accounting,Aktivera redovisning av pågående kapitalarbete,
Finance Book Detail,Finans bok detaljer,
Asset Category Account,Tillgångsslag konto,
Fixed Asset Account,Fast tillgångskonto,
Accumulated Depreciation Account,Ackumulerade avskrivningar konto,
Depreciation Expense Account,Avskrivningar konto,
Capital Work In Progress Account,Capital Work Progress Account,
Asset Finance Book,Asset Finance Book,
Written Down Value,Skriftligt nedvärde,
Expected Value After Useful Life,Förväntat värde eller återanvändas,
Rate of Depreciation,Avskrivningsgrad,
In Percentage,I procent,
Maintenance Team,Underhållsteam,
Maintenance Manager Name,Underhållsansvarig namn,
Maintenance Tasks,Underhållsuppgifter,
Manufacturing User,Tillverkningsanvändare,
Asset Maintenance Log,Asset Maintenance Log,
ACC-AML-.YYYY.-,ACC-AML-.YYYY.-,
Maintenance Type,Servicetyp,
Maintenance Status,Underhåll Status,
Planned,Planerad,
Has Certificate ,Har certifikat,
Certificate,Certifikat,
Actions performed,Åtgärder utförda,
Asset Maintenance Task,Asset Maintenance Task,
Maintenance Task,Underhållsuppgift,
Preventive Maintenance,Förebyggande underhåll,
Calibration,Kalibrering,
2 Yearly,2 årligen,
Certificate Required,Certifikat krävs,
Assign to Name,Tilldela namn,
Next Due Date,Nästa Förfallodatum,
Last Completion Date,Sista slutdatum,
Asset Maintenance Team,Asset Maintenance Team,
Maintenance Team Name,Underhållsgruppsnamn,
Maintenance Team Members,Underhållspersonal,
Purpose,Syfte,
Stock Manager,Lagrets direktör,
Asset Movement Item,Objektrörelsepost,
Source Location,Källa Plats,
From Employee,Från anställd,
Target Location,Målplats,
To Employee,Till anställd,
Asset Repair,Asset Repair,
ACC-ASR-.YYYY.-,ACC-ASR-.YYYY.-,
Failure Date,Fel datum,
Assign To Name,Tilldela till namn,
Repair Status,Reparationsstatus,
Error Description,Felbeskrivning,
Downtime,Driftstopp,
Repair Cost,Reparationskostnad,
Manufacturing Manager,Tillverkningsansvarig,
Current Asset Value,Nuvarande tillgångsvärde,
New Asset Value,Nytt tillgångsvärde,
Make Depreciation Entry,Göra Av- Entry,
Finance Book Id,Finans bok ID,
Location Name,Platsnamn,
Parent Location,Parent Location,
Is Container,Är Container,
Check if it is a hydroponic unit,Kontrollera om det är en hydroponisk enhet,
Location Details,Plats detaljer,
Latitude,Latitud,
Longitude,Longitud,
Area,Område,
Area UOM,Område UOM,
Tree Details,Tree Detaljerad information,
Maintenance Team Member,Underhållspersonal,
Team Member,Lagmedlem,
Maintenance Role,Underhålls roll,
Buying Settings,Köpinställningar,
Settings for Buying Module,Inställningar för att köpa Modul,
Supplier Naming By,Leverantör Naming Genom,
Default Supplier Group,Standardleverantörsgrupp,
Default Buying Price List,Standard Inköpslista,
Backflush Raw Materials of Subcontract Based On,Backflush råvaror av underleverantör baserat på,
Material Transferred for Subcontract,Material överfört för underleverantör,
Over Transfer Allowance (%),Överföringsbidrag (%),
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.,"Procentandel du får överföra mer mot den beställda kvantiteten. Till exempel: Om du har beställt 100 enheter. och din ersättning är 10%, då får du överföra 110 enheter.",
PUR-ORD-.YYYY.-,PUR-ORD-.YYYY.-,
Get Items from Open Material Requests,Få Artiklar från Open Material Begäran,
Fetch items based on Default Supplier.,Hämta objekt baserat på standardleverantör.,
Required By,Krävs av,
Order Confirmation No,Orderbekräftelse nr,
Order Confirmation Date,Orderbekräftelsedatum,
Customer Mobile No,Kund Mobil nr,
Customer Contact Email,Kundkontakt Email,
Set Target Warehouse,Ställ in Target Warehouse,
Sets 'Warehouse' in each row of the Items table.,Ställer in &quot;Lager&quot; i varje rad i tabellen Artiklar.,
Supply Raw Materials,Supply Råvaror,
Purchase Order Pricing Rule,Beställningsprisregler,
Set Reserve Warehouse,Ställ Reserve Warehouse,
In Words will be visible once you save the Purchase Order.,I Ord kommer att synas när du sparar beställningen.,
Advance Paid,Förskottsbetalning,
Tracking,Spårning,
% Billed,% Fakturerad,
% Received,% Emot,
Ref SQ,Ref SQ,
Inter Company Order Reference,Inter Company Order Reference,
Supplier Part Number,Leverantör Artikelnummer,
Billed Amt,Fakturerat ant.,
Warehouse and Reference,Lager och referens,
To be delivered to customer,Som skall levereras till kund,
Material Request Item,Material Begäran Produkt,
Supplier Quotation Item,Leverantör offert Punkt,
Against Blanket Order,Mot filtorder,
Blanket Order,Blankett Order,
Blanket Order Rate,Blankett Order Rate,
Returned Qty,Återvände Antal,
Purchase Order Item Supplied,Inköpsorder Artikelleverans,
BOM Detail No,BOM Detalj nr,
Stock Uom,Lager UOM,
Raw Material Item Code,Råvaru Artikelkod,
Supplied Qty,Medföljande Antal,
Purchase Receipt Item Supplied,Inköpskvitto Artikel Levereras,
Current Stock,Nuvarande lager,
PUR-RFQ-.YYYY.-,PUR-RFQ-.YYYY.-,
For individual supplier,För individuell leverantör,
Link to Material Requests,Länk till materialförfrågningar,
Message for Supplier,Meddelande till leverantören,
Request for Quotation Item,Offertförfrågan Punkt,
Required Date,Obligatorisk Datum,
Request for Quotation Supplier,Offertförfrågan Leverantör,
Send Email,Skicka Epost,
Quote Status,Citatstatus,
Download PDF,Hämta PDF,
Supplier of Goods or Services.,Leverantör av varor eller tjänster.,
Name and Type,Namn och typ,
SUP-.YYYY.-,SUP-.YYYY.-,
Default Bank Account,Standard bankkonto,
Is Transporter,Är Transporter,
Represents Company,Representerar företaget,
Supplier Type,Leverantör Typ,
Allow Purchase Invoice Creation Without Purchase Order,Tillåt skapande av faktura utan inköpsorder,
Allow Purchase Invoice Creation Without Purchase Receipt,Tillåt skapande av inköpsfaktura utan inköpskvitto,
Warn RFQs,Varna RFQs,
Warn POs,Varna PO: er,
Prevent RFQs,Förhindra RFQs,
Prevent POs,Förhindra PO,
Billing Currency,Faktureringsvaluta,
Default Payment Terms Template,Standardbetalningsvillkor Mall,
Block Supplier,Blockleverantör,
Hold Type,Håll typ,
Leave blank if the Supplier is blocked indefinitely,Lämna tomma om Leverantören är obestämd,
Default Payable Accounts,Standard avgiftskonton,
Mention if non-standard payable account,Nämn om inte-standard betalnings konto,
Default Tax Withholding Config,Standardskatteavdrag Konfig,
Supplier Details,Leverantör Detaljer,
Statutory info and other general information about your Supplier,Lagstadgad information och annan allmän information om din leverantör,
PUR-SQTN-.YYYY.-,PUR-SQTN-.YYYY.-,
Supplier Address,Leverantör Adress,
Link to material requests,Länk till material förfrågningar,
Rounding Adjustment (Company Currency,Avrundningsjustering (Företagsvaluta,
Auto Repeat Section,Auto Repeat Section,
Is Subcontracted,Är utlagt,
Lead Time in days,Ledtid i dagar,
Supplier Score,Leverantörspoäng,
Indicator Color,Indikatorfärg,
Evaluation Period,Utvärderingsperiod,
Per Week,Per vecka,
Per Month,Per månad,
Per Year,Per år,
Scoring Setup,Scoring Setup,
Weighting Function,Viktningsfunktion,
"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 användas, såväl som: {total_score} (den totala poängen från den perioden), {period_number} (antalet perioder till nutid)",
Scoring Standings,Scoring Ställningar,
Criteria Setup,Kriterier Setup,
Load All Criteria,Ladda alla kriterier,
Scoring Criteria,Scoringskriterier,
Scorecard Actions,Scorecard Actions,
Warn for new Request for Quotations,Varna för ny Offertförfrågan,
Warn for new Purchase Orders,Varning för nya inköpsorder,
Notify Supplier,Meddela Leverantör,
Notify Employee,Meddela medarbetare,
Supplier Scorecard Criteria,Leverantörs Scorecard Criteria,
Criteria Name,Kriterier Namn,
Max Score,Max poäng,
Criteria Formula,Kriterier Formel,
Criteria Weight,Kriterier Vikt,
Supplier Scorecard Period,Leverantörens scorecardperiod,
PU-SSP-.YYYY.-,PU-SSP-.YYYY.-,
Period Score,Periodpoäng,
Calculations,beräkningar,
Criteria,Kriterier,
Variables,variabler,
Supplier Scorecard Setup,Leverans Scorecard Setup,
Supplier Scorecard Scoring Criteria,Leverantör Scorecard Scoring Criteria,
Score,Göra,
Supplier Scorecard Scoring Standing,Leverantör Scorecard Scoring Standing,
Standing Name,Stående namn,
Purple,Lila,
Yellow,Gul,
Orange,Orange,
Min Grade,Min betyg,
Max Grade,Max Grade,
Warn Purchase Orders,Varna inköpsorder,
Prevent Purchase Orders,Förhindra köporder,
Employee ,Anställd,
Supplier Scorecard Scoring Variable,Leverantör Scorecard Scorevariabel,
Variable Name,Variabelt namn,
Parameter Name,Parameternamn,
Supplier Scorecard Standing,Leverantörs Scorecard Standing,
Notify Other,Meddela Annan,
Supplier Scorecard Variable,Leverantörs Scorecard Variable,
Call Log,Samtalslogg,
Received By,Mottaget av,
Caller Information,Information om uppringare,
Contact Name,Kontaktnamn,
Lead ,Leda,
Lead Name,Prospekt Namn,
Ringing,Ringande,
Missed,missade,
Call Duration in seconds,Samtalstid i sekunder,
Recording URL,Inspelnings-URL,
Communication Medium,Kommunikationsmedium,
Communication Medium Type,Kommunikation Medium Type,
Voice,Röst,
Catch All,Fånga alla,
"If there is no assigned timeslot, then communication will be handled by this group",Om det inte finns någon tilldelad tidslucka kommer kommunikationen att hanteras av denna grupp,
Timeslots,Tidsluckor,
Communication Medium Timeslot,Kommunikation Medium Timeslot,
Employee Group,Medarbetargrupp,
Appointment,Utnämning,
Scheduled Time,Schemalagd tid,
Unverified,Unverified,
Customer Details,Kunduppgifter,
Phone Number,Telefonnummer,
Skype ID,Skype ID,
Linked Documents,Länkade dokument,
Appointment With,Möte med,
Calendar Event,Kalenderhändelse,
Appointment Booking Settings,Inställningar för bokning av möten,
Enable Appointment Scheduling,Aktivera schemaläggning för möten,
Agent Details,Agentinformation,
Availability Of Slots,Tillgänglighet till slots,
Number of Concurrent Appointments,Antal samtidiga möten,
Agents,agenter,
Appointment Details,Utnämningsuppgifter,
Appointment Duration (In Minutes),Utnämningstid (inom några minuter),
Notify Via Email,Meddela via e-post,
Notify customer and agent via email on the day of the appointment.,Meddela kund och agent via e-post dagen för avtalet.,
Number of days appointments can be booked in advance,Antal dagars möten kan bokas i förväg,
Success Settings,Framgångsinställningar,
Success Redirect URL,Framgång omdirigera URL,
"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Lämna tomt för hemmet. Detta är relativt till webbadressen, till exempel &quot;om&quot; kommer att omdirigera till &quot;https://yoursitename.com/about&quot;",
Appointment Booking Slots,Utnämning Bokning Slots,
Day Of Week,Dag i veckan,
From Time ,Från Tid,
Campaign Email Schedule,Kampanjens e-postschema,
Send After (days),Skicka efter (dagar),
Signed,Signerad,
Party User,Party-användare,
Unsigned,Osignerad,
Fulfilment Status,Uppfyllningsstatus,
N/A,N / A,
Unfulfilled,Ouppfylld,
Partially Fulfilled,Delvis uppnått,
Fulfilled,uppfyllt,
Lapsed,förfallit,
Contract Period,Avtalsperiod,
Signee Details,Signee Detaljer,
Signee,signee,
Signed On,Inloggad,
Contract Details,Kontraktsdetaljer,
Contract Template,Kontraktsmall,
Contract Terms,Kontraktsvillkor,
Fulfilment Details,Uppfyllningsdetaljer,
Requires Fulfilment,Kräver Uppfyllande,
Fulfilment Deadline,Uppfyllnadsfristen,
Fulfilment Terms,Uppfyllningsvillkor,
Contract Fulfilment Checklist,Checklista för kontraktsuppfyllelse,
Requirement,Krav,
Contract Terms and Conditions,Avtalsvillkor,
Fulfilment Terms and Conditions,Uppfyllande Villkor,
Contract Template Fulfilment Terms,Kontraktsmall Uppfyllningsvillkor,
Email Campaign,E-postkampanj,
Email Campaign For ,E-postkampanj för,
Lead is an Organization,Bly är en organisation,
CRM-LEAD-.YYYY.-,CRM-bly-.YYYY.-,
Person Name,Namn,
Lost Quotation,förlorade Offert,
Interested,Intresserad,
Converted,Konverterad,
Do Not Contact,Kontakta ej,
From Customer,Från Kunden,
Campaign Name,Kampanjens namn,
Follow Up,Uppföljning,
Next Contact By,Nästa Kontakt Vid,
Next Contact Date,Nästa Kontakt Datum,
Ends On,Slutar på,
Address & Contact,Adress och kontakt,
Mobile No.,Mobilnummer.,
Lead Type,Prospekt Typ,
Channel Partner,Kanalpartner,
Consultant,Konsult,
Market Segment,Marknadssegment,
Industry,Industri,
Request Type,Typ av förfrågan,
Product Enquiry,Produkt Förfrågan,
Request for Information,Begäran om upplysningar,
Suggestions,Förslag,
Blog Subscriber,Blogg Abonnent,
LinkedIn Settings,LinkedIn-inställningar,
Company ID,företags ID,
OAuth Credentials,OAuth-referenser,
Consumer Key,Konsumentnyckel,
Consumer Secret,Konsumenthemlighet,
User Details,Användarinformation,
Person URN,Person URN,
Session Status,Sessionsstatus,
Lost Reason Detail,Förlorad anledning detalj,
Opportunity Lost Reason,Möjlighet förlorad anledning,
Potential Sales Deal,Potentiella säljmöjligheter,
CRM-OPP-.YYYY.-,CRM-OPP-.YYYY.-,
Opportunity From,Möjlighet Från,
Customer / Lead Name,Kund / Huvudnamn,
Opportunity Type,Möjlighet Typ,
Converted By,Konverterad av,
Sales Stage,Försäljningsstadiet,
Lost Reason,Förlorad Anledning,
Expected Closing Date,Förväntat slutdatum,
To Discuss,Att Diskutera,
With Items,Med artiklar,
Probability (%),Sannolikhet (%),
Contact Info,Kontaktinformation,
Customer / Lead Address,Kund / Huvudadress,
Contact Mobile No,Kontakt Mobil nr,
Enter name of campaign if source of enquiry is campaign,Ange namnet på kampanjen om källförfrågan är kampanjen,
Opportunity Date,Möjlighet Datum,
Opportunity Item,Möjlighet Punkt,
Basic Rate,Baskurs,
Stage Name,Artistnamn,
Social Media Post,Sociala medier Post,
Post Status,Inläggsstatus,
Posted,Postad,
Share On,Dela på,
Twitter,Twitter,
LinkedIn,LinkedIn,
Twitter Post Id,Twitter-post-id,
LinkedIn Post Id,LinkedIn-post-id,
Tweet,Tweet,
Twitter Settings,Twitter-inställningar,
API Secret Key,API Secret Key,
Term Name,termen Namn,
Term Start Date,Term Startdatum,
Term End Date,Term Slutdatum,
Academics User,Akademisk - användare,
Academic Year Name,Akademisk - läsårets namn,
Article,Artikel,
LMS User,LMS-användare,
Assessment Criteria Group,Bedömningskriteriegrupp,
Assessment Group Name,Bedömning Gruppnamn,
Parent Assessment Group,Parent Assessment Group,
Assessment Name,bedömning Namn,
Grading Scale,Betygsskala,
Examiner,Examinator,
Examiner Name,examiner Namn,
Supervisor,Handledare,
Supervisor Name,Supervisor Namn,
Evaluate,Utvärdera,
Maximum Assessment Score,Maximal Assessment Score,
Assessment Plan Criteria,Bedömningsplanskriterier,
Maximum Score,maximal Score,
Grade,Kvalitet,
Assessment Result Detail,Detaljer Bedömningsresultat,
Assessment Result Tool,Bedömningsresultatverktyg,
Result HTML,resultat HTML,
Content Activity,Innehållsaktivitet,
Last Activity ,sista aktiviteten,
Content Question,Innehållsfråga,
Question Link,Frågeformulär,
Course Name,KURSNAMN,
Topics,ämnen,
Hero Image,Hjältebild,
Default Grading Scale,Standardbedömningsskala,
Education Manager,Utbildningschef,
Course Activity,Kursaktivitet,
Course Enrollment,Kursregistrering,
Activity Date,Aktivitetsdatum,
Course Assessment Criteria,Kriterier för bedömning Course,
Weightage,Vikt,
Course Content,Kursinnehåll,
Quiz,Frågesport,
Program Enrollment,programmet Inskrivning,
Enrollment Date,Inskrivningsdatum,
Instructor Name,instruktör Namn,
EDU-CSH-.YYYY.-,EDU-CSH-.YYYY.-,
Course Scheduling Tool,Naturligtvis Scheduling Tool,
Course Start Date,Kursstart,
To TIme,Till Time,
Course End Date,Kurs Slutdatum,
Course Topic,Kursens ämne,
Topic Name,ämnet Namn,
Education Settings,Utbildningsinställningar,
Current Academic Year,Nuvarande akademiska året,
Current Academic Term,Nuvarande akademisk term,
Attendance Freeze Date,Dagsfrysningsdatum,
Validate Batch for Students in Student Group,Validera batch för studenter i studentgruppen,
"For Batch based Student Group, the Student Batch will be validated for every Student from the Program Enrollment.",För gruppbaserad studentgrupp kommer studentenbatchen att valideras för varje student från programansökan.,
Validate Enrolled Course for Students in Student Group,Bekräfta inskrivna kurs för studenter i studentgruppen,
"For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.",För kursbaserad studentgrupp kommer kursen att valideras för varje student från de inskrivna kurser i programinsökan.,
Make Academic Term Mandatory,Gör akademisk termin Obligatorisk,
"If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.",Om det är aktiverat är fältet Academic Term obligatoriskt i Programinmälningsverktyget.,
Skip User creation for new Student,Hoppa över användarskapande för ny student,
"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 skapas en ny användare för varje ny student. Om det är aktiverat kommer ingen ny användare att skapas när en ny student skapas.,
Instructor Records to be created by,Instruktörsrekord som ska skapas av,
Employee Number,Anställningsnummer,
Fee Category,avgift Kategori,
Fee Component,avgift Komponent,
Fees Category,avgifter Kategori,
Fee Schedule,avgift Schema,
Fee Structure,avgift struktur,
EDU-FSH-.YYYY.-,EDU-FSH-.YYYY.-,
Fee Creation Status,Fee Creation Status,
In Process,Pågående,
Send Payment Request Email,Skicka betalningsförfrågan via e-post,
Student Category,elev Kategori,
Fee Breakup for each student,Avgift för varje elev,
Total Amount per Student,Summa belopp per student,
Institution,Institution,
Fee Schedule Program,Avgiftsschema Program,
Student Batch,elev Batch,
Total Students,Totalt antal studenter,
Fee Schedule Student Group,Avgiftsschema Studentgrupp,
EDU-FST-.YYYY.-,EDU-FST-.YYYY.-,
EDU-FEE-.YYYY.-,EDU-fee-.YYYY.-,
Include Payment,Inkludera betalning,
Send Payment Request,Skicka betalningsförfrågan,
Student Details,Studentuppgifter,
Student Email,Student Email,
Grading Scale Name,Bedömningsskala Namn,
Grading Scale Intervals,Betygsskal,
Intervals,intervaller,
Grading Scale Interval,Bedömningsskala Intervall,
Grade Code,grade kod,
Threshold,Tröskel,
Grade Description,grade Beskrivning,
Guardian,väktare,
Guardian Name,Guardian Namn,
Alternate Number,alternativt nummer,
Occupation,Ockupation,
Work Address,arbete Adress,
Guardian Of ,väktare,
Students,studenter,
Guardian Interests,Guardian Intressen,
Guardian Interest,Guardian intresse,
Interest,Intressera,
Guardian Student,Guardian Student,
EDU-INS-.YYYY.-,EDU-INS-.YYYY.-,
Instructor Log,Instruktörsloggen,
Other details,Övriga detaljer,
Option,Alternativ,
Is Correct,Är korrekt,
Program Name,program~~POS=TRUNC,
Program Abbreviation,program Förkortning,
Courses,Kurser,
Is Published,Publiceras,
Allow Self Enroll,Tillåt självregistrering,
Is Featured,Visas,
Intro Video,Introduktionsvideo,
Program Course,program Kurs,
School House,School House,
Boarding Student,Boarding Student,
Check this if the Student is residing at the Institute's Hostel.,Kolla här om studenten är bosatt vid institutets vandrarhem.,
Walking,Gående,
Institute's Bus,Institutets buss,
Self-Driving Vehicle,Självkörande fordon,
Pick/Drop by Guardian,Pick / Drop av Guardian,
Enrolled courses,Inskrivna kurser,
Program Enrollment Course,Program Inskrivningskurs,
Program Enrollment Fee,Program inskrivningsavgift,
Program Enrollment Tool,Programmet Inskrivning Tool,
Get Students From,Få studenter från,
Student Applicant,Student Sökande,
Get Students,Få studenter,
Enrollment Details,Inskrivningsdetaljer,
New Program,nytt program,
New Student Batch,Ny studentbatch,
Enroll Students,registrera studenter,
New Academic Year,Nytt läsår,
New Academic Term,Ny akademisk term,
Program Enrollment Tool Student,Programmet Inskrivning Tool Student,
Student Batch Name,Elev batchnamn,
Program Fee,Kurskostnad,
Question,Fråga,
Single Correct Answer,Enstaka korrekt svar,
Multiple Correct Answer,Flera korrekt svar,
Quiz Configuration,Quizkonfiguration,
Passing Score,Godkänd poäng,
Score out of 100,Betyg av 100,
Max Attempts,Max försök,
Enter 0 to waive limit,Ange 0 för att avstå från gränsen,
Grading Basis,Betygsgrund,
Latest Highest Score,Senaste högsta poäng,
Latest Attempt,Senaste försök,
Quiz Activity,Quizaktivitet,
Enrollment,Inskrivning,
Pass,Passera,
Quiz Question,Frågesportfråga,
Quiz Result,Frågesport Resultat,
Selected Option,Valt alternativ,
Correct,Korrekt,
Wrong,Fel,
Room Name,Rums Namn,
Room Number,Rumsnummer,
Seating Capacity,sittplatser,
House Name,Hus-namn,
EDU-STU-.YYYY.-,EDU-STU-.YYYY.-,
Student Mobile Number,Student Mobilnummer,
Blood Group,Blodgrupp,
A+,A+,
A-,A-,
B+,B +,
B-,B-,
O+,O +,
O-,O-,
AB+,AB+,
AB-,AB-,
Nationality,Nationalitet,
Home Address,Hemadress,
Guardian Details,Guardian Detaljer,
Guardians,Guardians,
Sibling Details,syskon Detaljer,
Siblings,Syskon,
Exit,Utgång,
Date of Leaving,Datum för att lämna,
Leaving Certificate Number,Leaving Certificate Number,
Reason For Leaving,Anledning att lämna,
Student Admission,Student Antagning,
Admission Start Date,Antagning startdatum,
Admission End Date,Antagning Slutdatum,
Eligibility and Details,Behörighet och detaljer,
Student Admission Program,Studentträningsprogram,
Minimum Age,Lägsta ålder,
Maximum Age,Maximal ålder,
Application Fee,Anmälningsavgift,
Naming Series (for Student Applicant),Naming Series (för Student Sökande),
LMS Only,Endast LMS,
EDU-APP-.YYYY.-,EDU-APP-.YYYY.-,
Application Date,Ansökningsdatum,
Student Attendance Tool,Student Närvaro Tool,
Group Based On,Gruppbaserad på,
Students HTML,studenter HTML,
Group Based on,Grupp baserad på,
Student Group Name,Student gruppnamn,
Max Strength,max Styrka,
Set 0 for no limit,Set 0 för ingen begränsning,
Instructors,instruktörer,
Student Group Creation Tool,Student Group Creation Tool,
Leave blank if you make students groups per year,Lämna tomma om du gör elever grupper per år,
Get Courses,få Banor,
Separate course based Group for every Batch,Separat kursbaserad grupp för varje grupp,
Leave unchecked if you don't want to consider batch while making course based groups. ,Lämna avmarkerad om du inte vill överväga batch medan du gör kursbaserade grupper.,
Student Group Creation Tool Course,Student Group Creation Tool Course,
Course Code,Kurskod,
Student Group Instructor,Studentgruppsinstruktör,
Student Group Student,Student Group Student,
Group Roll Number,Grupprullnummer,
Student Guardian,Student Guardian,
Relation,Förhållande,
Mother,Mor,
Father,Far,
Student Language,Student Språk,
Student Leave Application,Student Lämna Application,
Mark as Present,Mark som Present,
Student Log,Student Log,
Academic,Akademisk,
Achievement,Prestation,
Student Report Generation Tool,Generationsverktyg för studentrapporter,
Include All Assessment Group,Inkludera alla bedömningsgrupper,
Show Marks,Visa betyg,
Add letterhead,Lägg till brevpapper,
Print Section,Utskriftsavsnitt,
Total Parents Teacher Meeting,Totalt föräldrars lärarmöte,
Attended by Parents,Närvarade av föräldrar,
Assessment Terms,Bedömningsvillkor,
Student Sibling,Student Syskon,
Studying in Same Institute,Studera i samma institut,
NO,NEJ,
YES,JA,
Student Siblings,elev Syskon,
Topic Content,Ämneinnehåll,
Amazon MWS Settings,Amazon MWS-inställningar,
ERPNext Integrations,ERPNext Integrations,
Enable Amazon,Aktivera Amazon,
MWS Credentials,MWS Credentials,
Seller ID,Säljar-ID,
AWS Access Key ID,AWS Access Key ID,
MWS Auth Token,MWS Auth Token,
Market Place ID,Marknadsplats ID,
AE,AE,
AU,AU,
BR,BR,
CA,CA,
CN,CN,
DE,DE,
ES,ES,
FR,FR,
JP,JP,
IT,DET,
MX,MX,
UK,Storbritannien,
US,oss,
Customer Type,kundtyp,
Market Place Account Group,Marknadsplats Kontokoncern,
After Date,Efter datum,
Amazon will synch data updated after this date,Amazon kommer att synkronisera data uppdaterat efter det här datumet,
Sync Taxes and Charges,Synkronisera skatter och avgifter,
Get financial breakup of Taxes and charges data by Amazon ,Få ekonomisk uppdelning av skatter och avgifter data av Amazon,
Sync Products,Synkronisera produkter,
Always sync your products from Amazon MWS before synching the Orders details,Synkronisera alltid dina produkter från Amazon MWS innan du synkroniserar orderinformation,
Sync Orders,Synkronisera beställningar,
Click this button to pull your Sales Order data from Amazon MWS.,Klicka på den här knappen för att dra dina försäljningsorderdata från Amazon MWS.,
Enable Scheduled Sync,Aktivera schemalagd synkronisering,
Check this to enable a scheduled Daily synchronization routine via scheduler,Markera det här för att aktivera en schemalagd daglig synkroniseringsrutin via schemaläggaren,
Max Retry Limit,Max Retry Limit,
Exotel Settings,Exotel-inställningar,
Account SID,Konto SID,
API Token,API-token,
GoCardless Mandate,GoCardless Mandate,
Mandate,Mandat,
GoCardless Customer,GoCardless kund,
GoCardless Settings,GoCardless-inställningar,
Webhooks Secret,Webbooks Secret,
Plaid Settings,Plädinställningar,
Synchronize all accounts every hour,Synkronisera alla konton varje timme,
Plaid Client ID,Plaid Client ID,
Plaid Secret,Plädhemlighet,
Plaid Environment,Plädmiljö,
sandbox,sandlåda,
development,utveckling,
production,produktion,
QuickBooks Migrator,QuickBooks Migrator,
Application Settings,Applikationsinställningar,
Token Endpoint,Token Endpoint,
Scope,Omfattning,
Authorization Settings,Auktoriseringsinställningar,
Authorization Endpoint,Godkännande slutpunkt,
Authorization URL,Auktoriseringsadress,
Quickbooks Company ID,QuickBooks företags-ID,
Company Settings,Företagsinställningar,
Default Shipping Account,Standard Fraktkonto,
Default Warehouse,Standard Lager,
Default Cost Center,Standardkostnadsställe,
Undeposited Funds Account,Oavsett fondkonto,
Shopify Log,Shopify Log,
Shopify Settings,Shopify-inställningar,
status html,status html,
Enable Shopify,Aktivera Shopify,
App Type,App typ,
Last Sync Datetime,Senast synkroniserad datetime,
Shop URL,Shop URL,
eg: frappe.myshopify.com,t.ex. frappe.myshopify.com,
Shared secret,Delad hemlighet,
Webhooks Details,Webbooks detaljer,
Webhooks,Webhooks,
Customer Settings,Kundinställningar,
Default Customer,Standardkund,
Customer Group will set to selected group while syncing customers from Shopify,Kundgruppen kommer att ställa in till vald grupp medan du synkroniserar kunder från Shopify,
For Company,För Företag,
Cash Account will used for Sales Invoice creation,Kontantkonto används för att skapa försäljningsfaktura,
Update Price from Shopify To ERPNext Price List,Uppdatera priset från Shopify till ERPNext Price List,
Default Warehouse to to create Sales Order and Delivery Note,Standardlager för att skapa försäljningsorder och leveransnotering,
Sales Order Series,Försäljningsorderserie,
Import Delivery Notes from Shopify on Shipment,Importera leveransanmärkningar från Shopify vid leverans,
Delivery Note Series,Serie för leveransnotering,
Import Sales Invoice from Shopify if Payment is marked,Importera försäljningsfaktura från Shopify om betalning är markerad,
Sales Invoice Series,Försäljningsfaktura-serien,
Shopify Tax Account,Shopify Skattekonto,
Shopify Tax/Shipping Title,Shopify Skatt / Frakt Titel,
ERPNext Account,ERPNext-konto,
Shopify Webhook Detail,Shopify Webhook Detalj,
Webhook ID,Webhook ID,
Tally Migration,Tally Migration,
Master Data,Basdata,
"Data exported from Tally that consists of the Chart of Accounts, Customers, Suppliers, Addresses, Items and UOMs","Data exporterad från Tally som består av kontoplan, kunder, leverantörer, adresser, artiklar och UOM",
Is Master Data Processed,Behandlas stamdata,
Is Master Data Imported,Importeras stamdata,
Tally Creditors Account,Tally kreditorer konto,
Creditors Account set in Tally,Borgenärskonto i Tally,
Tally Debtors Account,Tally Debtors Account,
Debtors Account set in Tally,Debitörskonto i Tally,
Tally Company,Tally Company,
Company Name as per Imported Tally Data,Företagsnamn enligt Importerad Tally-data,
Default UOM,Standard UOM,
UOM in case unspecified in imported data,UOM om ospecificerad i importerad data,
ERPNext Company,ERPNext Company,
Your Company set in ERPNext,Ditt företag anges i ERPNext,
Processed Files,Bearbetade filer,
Parties,parterna,
UOMs,UOM,
Vouchers,kuponger,
Round Off Account,Avrunda konto,
Day Book Data,Dagboksdata,
Day Book Data exported from Tally that consists of all historic transactions,Dagbokdata exporterade från Tally som består av alla historiska transaktioner,
Is Day Book Data Processed,Behandlas dagboksdata,
Is Day Book Data Imported,Är dagbokdata importerade,
Woocommerce Settings,Woocommerce-inställningar,
Enable Sync,Aktivera synkronisering,
Woocommerce Server URL,Webbadress för Woocommerce Server,
Secret,Hemlighet,
API consumer key,API-konsumentnyckel,
API consumer secret,API konsumenthemlighet,
Tax Account,Skattekonto,
Freight and Forwarding Account,Frakt och vidarebefordran konto,
Creation User,Skapande användare,
"The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.","Användaren som kommer att användas för att skapa kunder, varor och försäljningsorder. Den här användaren bör ha relevanta behörigheter.",
"This warehouse will be used to create Sales Orders. The fallback warehouse is ""Stores"".",Detta lager kommer att användas för att skapa försäljningsorder. Fallback-lagret är &quot;Butiker&quot;.,
"The fallback series is ""SO-WOO-"".",Fallback-serien är &quot;SO-WOO-&quot;.,
This company will be used to create Sales Orders.,Detta företag kommer att användas för att skapa försäljningsorder.,
Delivery After (Days),Leverans efter (dagar),
This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Detta är standardförskjutningen (dagar) för leveransdatum i försäljningsorder. Återkopplingsförskjutningen är 7 dagar från beställningsdatumet.,
"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Detta är standard UOM som används för artiklar och försäljningsorder. Fallback UOM är &quot;Nos&quot;.,
Endpoints,endpoints,
Endpoint,Slutpunkt,
Antibiotic Name,Antibiotikumnamn,
Healthcare Administrator,Sjukvårdsadministratör,
Laboratory User,Laboratorieanvändare,
Is Inpatient,Är inpatient,
Default Duration (In Minutes),Standardlängd (i minuter),
Body Part,Kroppsdel,
Body Part Link,Kroppsdel länk,
HLC-CPR-.YYYY.-,HLC-CPR-.YYYY.-,
Procedure Template,Procedurmall,
Procedure Prescription,Förfarande recept,
Service Unit,Serviceenhet,
Consumables,Förbruknings,
Consume Stock,Konsumera lager,
Invoice Consumables Separately,Faktura förbrukningsvaror separat,
Consumption Invoiced,Förbrukning fakturerad,
Consumable Total Amount,Förbrukningsbart totalt belopp,
Consumption Details,Förbrukningsdetaljer,
Nursing User,Sjuksköterska användare,
Clinical Procedure Item,Klinisk procedur Artikel,
Invoice Separately as Consumables,Faktura Separat som förbrukningsvaror,
Transfer Qty,Överföringsantal,
Actual Qty (at source/target),Faktiska Antal (vid källa/mål),
Is Billable,Är fakturerbar,
Allow Stock Consumption,Tillåt lagerkonsumtion,
Sample UOM,Exempel på UOM,
Collection Details,Samlingsdetaljer,
Change In Item,Ändring i artikel,
Codification Table,Kodifierings tabell,
Complaints,klagomål,
Dosage Strength,Dosstyrka,
Strength,Styrka,
Drug Prescription,Drug Prescription,
Drug Name / Description,Läkemedelsnamn / beskrivning,
Dosage,Dosering,
Dosage by Time Interval,Dosering efter tidsintervall,
Interval,Intervall,
Interval UOM,Intervall UOM,
Hour,Timme,
Update Schedule,Uppdateringsschema,
Exercise,Träning,
Difficulty Level,Svårighetsgrad,
Counts Target,Räknar mål,
Counts Completed,Antalet slutfört,
Assistance Level,Assistance Level,
Active Assist,Aktiv assistent,
Exercise Name,Övningsnamn,
Body Parts,Kroppsdelar,
Exercise Instructions,Träningsinstruktioner,
Exercise Video,Träningsvideo,
Exercise Steps,Träningssteg,
Steps Table,Steg Tabell,
Exercise Type Step,Övningstyp Steg,
Max number of visit,Max antal besök,
Visited yet,Besökt ännu,
Reference Appointments,Referensbokningar,
Valid till,Giltig till,
Fee Validity Reference,Referens för avgiftsgiltighet,
Basic Details,Grundläggande detaljer,
HLC-PRAC-.YYYY.-,HLC-PRAC-.YYYY.-,
Mobile,Mobil,
Phone (R),Telefon (R),
Phone (Office),Telefon (Office),
Employee and User Details,Information om anställda och användare,
Hospital,Sjukhus,
Appointments,utnämningar,
Practitioner Schedules,Utövarens scheman,
Charges,Kostnader,
Out Patient Consulting Charge,Avgift för patientkonsultation,
Default Currency,Standard Valuta,
Healthcare Schedule Time Slot,Sjukvård Schedule Time Slot,
Parent Service Unit,Föräldra serviceenhet,
Service Unit Type,Typ av serviceenhet,
Allow Appointments,Tillåt möten,
Allow Overlap,Tillåt överlappning,
Inpatient Occupancy,Inpatient Occupancy,
Occupancy Status,Behållarstatus,
Vacant,Ledig,
Occupied,Ockuperade,
Item Details,Artikel detaljer,
UOM Conversion in Hours,UOM Konvertering i timmar,
Rate / UOM,Betygsätt / UOM,
Change in Item,Ändra i artikel,
Out Patient Settings,Ut patientinställningar,
Patient Name By,Patientnamn Av,
Patient Name,Patientnamn,
Link Customer to Patient,Länka kunden till patienten,
"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.","Om den är markerad kommer en kund att skapas, mappad till patienten. Patientfakturor kommer att skapas mot den här kunden. Du kan också välja befintlig kund medan du skapar patienten.",
Default Medical Code Standard,Standard Medical Code Standard,
Collect Fee for Patient Registration,Samla avgift för patientregistrering,
Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,Om du kontrollerar detta skapas nya patienter med inaktiverad status som standard och aktiveras först efter fakturering av registreringsavgiften.,
Registration Fee,Anmälningsavgift,
Automate Appointment Invoicing,Automatisera mötesfakturering,
Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Hantera avtalsfaktura skickar och avbryter automatiskt för patientmottagning,
Enable Free Follow-ups,Aktivera gratis uppföljningar,
Number of Patient Encounters in Valid Days,Antal patientmöten under giltiga dagar,
The number of free follow ups (Patient Encounters in valid days) allowed,Antalet gratis uppföljningar (patientmöten under giltiga dagar) tillåtet,
Valid Number of Days,Giltigt antal dagar,
Time period (Valid number of days) for free consultations,Tidsperiod (giltigt antal dagar) för gratis konsultationer,
Default Healthcare Service Items,Standardhälsovårdstjänster,
"You can configure default Items for billing consultation charges, procedure consumption items and inpatient visits","Du kan konfigurera standardartiklar för konsultationsavgifter för fakturering, föremålsförbrukningsposter och besök på slutenvård",
Clinical Procedure Consumable Item,Klinisk procedur förbrukningsartikel,
Default Accounts,Standardkonton,
Default income accounts to be used if not set in Healthcare Practitioner to book Appointment charges.,Standardinkomstkonton som ska användas om den inte anges i vårdpraktiseraren för att boka Avtalskostnader.,
Default receivable accounts to be used to book Appointment charges.,Standardfordringskonton som används för att boka bokningsavgifter.,
Out Patient SMS Alerts,Ut Patient SMS Alerts,
Patient Registration,Patientregistrering,
Registration Message,Registreringsmeddelande,
Confirmation Message,Bekräftelsemeddelande,
Avoid Confirmation,Undvik bekräftelse,
Do not confirm if appointment is created for the same day,Bekräfta inte om mötet är skapat för samma dag,
Appointment Reminder,Avtal påminnelse,
Reminder Message,Påminnelsemeddelande,
Laboratory Settings,Laboratorieinställningar,
Create Lab Test(s) on Sales Invoice Submission,Skapa laboratorietest (er) för försäljningsfakturamöjlighet,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,Om du kontrollerar detta skapas Lab Test som anges i försäljningsfakturan vid inlämning.,
Create Sample Collection document for Lab Test,Skapa ett samlingsdokument för laboratorietest,
Checking this will create a Sample Collection document  every time you create a Lab Test,Om du kontrollerar detta skapas ett provsamlingsdokument varje gång du skapar ett labtest,
Employee name and designation in print,Anställdsnamn och beteckning i tryck,
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.,Kontrollera detta om du vill att namnet och beteckningen för den anställde som är associerad med användaren som skickar in dokumentet ska skrivas ut i laboratorietestrapporten.,
Do not print or email Lab Tests without Approval,Skriv inte ut eller maila labtester utan godkännande,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,Kontroll av detta begränsar utskrift och e-postmeddelande av Lab Test-dokument såvida de inte har status som godkänd.,
Custom Signature in Print,Anpassad signatur i utskrift,
Laboratory SMS Alerts,Laboratory SMS Alerts,
Result Printed Message,Resultat Tryckt meddelande,
Result Emailed Message,Resultat E-postmeddelande,
Check In,Checka in,
Check Out,Checka ut,
HLC-INP-.YYYY.-,HLC-INP-.YYYY.-,
A Positive,En positiv,
A Negative,En negativ,
AB Positive,AB Positiv,
AB Negative,AB Negativ,
B Positive,B Positiv,
B Negative,B Negativ,
O Positive,O Positiv,
O Negative,O Negativ,
Date of birth,Födelsedatum,
Admission Scheduled,Tillträde planerat,
Discharge Scheduled,Utsläpp Schemalagd,
Discharged,urladdat,
Admission Schedule Date,Datum för tillträde,
Admitted Datetime,Admitted Datetime,
Expected Discharge,Förväntad utsläpp,
Discharge Date,Utskrivningsdatum,
Lab Prescription,Lab Prescription,
Lab Test Name,Lab Test Namn,
Test Created,Test Skapad,
Submitted Date,Inlämnad Datum,
Approved Date,Godkänd datum,
Sample ID,Prov ID,
Lab Technician,Labbtekniker,
Report Preference,Rapportpreferens,
Test Name,Testnamn,
Test Template,Testmall,
Test Group,Testgrupp,
Custom Result,Anpassat resultat,
LabTest Approver,LabTest Approver,
Add Test,Lägg till test,
Normal Range,Normal Range,
Result Format,Resultatformat,
Single,Singel,
Compound,Förening,
Descriptive,Beskrivande,
Grouped,grupperade,
No Result,Inget resultat,
This value is updated in the Default Sales Price List.,Detta värde uppdateras i standardförsäljningsprislistan.,
Lab Routine,Lab Routine,
Result Value,Resultatvärde,
Require Result Value,Kräver resultatvärde,
Normal Test Template,Normal testmall,
Patient Demographics,Patient Demographics,
HLC-PAT-.YYYY.-,HLC-PAT-.YYYY.-,
Middle Name (optional),Mellan namn (frivilligt),
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.","Om &quot;Länka kund till patient&quot; är markerat i vårdinställningarna och en befintlig kund inte väljs, skapas en kund för denna patient för registrering av transaktioner i kontomodulen.",
Personal and Social History,Personlig och social historia,
Marital Status,Civilstånd,
Married,Gift,
Divorced,Skild,
Widow,Änka,
Patient Relation,Patientrelation,
"Allergies, Medical and Surgical History","Allergier, medicinsk och kirurgisk historia",
Allergies,allergier,
Medication,Medicin,
Medical History,Medicinsk historia,
Surgical History,Kirurgisk historia,
Risk Factors,Riskfaktorer,
Occupational Hazards and Environmental Factors,Arbetsrisker och miljöfaktorer,
Other Risk Factors,Övriga riskfaktorer,
Patient Details,Patientdetaljer,
Additional information regarding the patient,Ytterligare information om patienten,
HLC-APP-.YYYY.-,HLC-APP-.YYYY.-,
Patient Age,Patientåldern,
Get Prescribed Clinical Procedures,Få receptbelagda kliniska procedurer,
Therapy,Terapi,
Get Prescribed Therapies,Få receptbelagda terapier,
Appointment Datetime,Utnämningstid,
Duration (In Minutes),Längd (i minuter),
Reference Sales Invoice,Referensförsäljningsfaktura,
More Info,Mer Information,
Referring Practitioner,Refererande utövare,
HLC-PA-.YYYY.-,HLC-PA-.YYYY.-,
Assessment Template,Bedömningsmall,
Assessment Datetime,Bedömningstid,
Assessment Description,Bedömning Beskrivning,
Assessment Sheet,Bedömningsblad,
Total Score Obtained,Totalt poäng erhållet,
Scale Min,Skala Min,
Scale Max,Skala Max,
Patient Assessment Detail,Patientbedömningsdetalj,
Assessment Parameter,Bedömningsparameter,
Patient Assessment Parameter,Patientbedömningsparameter,
Patient Assessment Sheet,Patientbedömningsblad,
Patient Assessment Template,Patientbedömningsmall,
Assessment Parameters,Bedömningsparametrar,
Parameters,parametrar,
Assessment Scale,Bedömningsskala,
Scale Minimum,Skala Minimum,
Scale Maximum,Skala maximalt,
HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
Encounter Date,Mötesdatum,
Encounter Time,Mötes tid,
Encounter Impression,Encounter Impression,
Symptoms,Symtom,
In print,I tryck,
Medical Coding,Medicinsk kodning,
Procedures,Rutiner,
Therapies,Terapier,
Review Details,Granska detaljer,
Patient Encounter Diagnosis,Patient mötesdiagnos,
Patient Encounter Symptom,Patientens möte Symptom,
HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
Attach Medical Record,Bifoga medicinska journaler,
Spouse,Make,
Family,Familj,
Schedule Details,Schemalägg detaljer,
Schedule Name,Schema namn,
Time Slots,Tidsluckor,
Practitioner Service Unit Schedule,Utövaren Service Unit Schedule,
Procedure Name,Procedurens namn,
Appointment Booked,Avtal bokat,
Procedure Created,Förfarande skapat,
HLC-SC-.YYYY.-,HLC-SC-.YYYY.-,
Collected By,Samlad By,
Particulars,uppgifter,
Result Component,Resultatkomponent,
HLC-THP-.YYYY.-,HLC-THP-.YYYY.-,
Therapy Plan Details,Terapiplaninformation,
Total Sessions,Totalt antal sessioner,
Total Sessions Completed,Totalt antal sessioner slutförda,
Therapy Plan Detail,Terapiplan detalj,
No of Sessions,Antal sessioner,
Sessions Completed,Sessions slutförda,
Tele,Tele,
Exercises,Övningar,
Therapy For,Terapi för,
Add Exercises,Lägg till övningar,
Body Temperature,Kroppstemperatur,
Presence of a fever (temp &gt; 38.5 °C/101.3 °F or sustained temp &gt; 38 °C/100.4 °F),"Förekomst av feber (temp&gt; 38,5 ° C eller upprepad temperatur&gt; 38 ° C / 100,4 ° F)",
Heart Rate / Pulse,Hjärtfrekvens / puls,
Adults' pulse rate is anywhere between 50 and 80 beats per minute.,Vuxna puls är överallt mellan 50 och 80 slag per minut.,
Respiratory rate,Andningsfrekvens,
Normal reference range for an adult is 16–20 breaths/minute (RCP 2012),Normalt referensområde för en vuxen är 16-20 andetag / minut (RCP 2012),
Tongue,Tunga,
Coated,Överdragen,
Very Coated,Mycket belagd,
Normal,Vanligt,
Furry,furry,
Cuts,Cuts,
Abdomen,Buk,
Bloated,Uppsvälld,
Fluid,Vätska,
Constipated,toppad,
Reflexes,reflexer,
Hyper,Hyper,
Very Hyper,Mycket Hyper,
One Sided,Ensidig,
Blood Pressure (systolic),Blodtryck (systolisk),
Blood Pressure (diastolic),Blodtryck (diastoliskt),
Blood Pressure,Blodtryck,
"Normal resting blood pressure in an adult is approximately 120 mmHg systolic, and 80 mmHg diastolic, abbreviated ""120/80 mmHg""","Normal vilande blodtryck hos en vuxen är cirka 120 mmHg systolisk och 80 mmHg diastolisk, förkortad &quot;120/80 mmHg&quot;",
Nutrition Values,Näringsvärden,
Height (In Meter),Höjd (In Meter),
Weight (In Kilogram),Vikt (i kilogram),
BMI,BMI,
Hotel Room,Hotellrum,
Hotel Room Type,Hotell Rumstyp,
Capacity,Kapacitet,
Extra Bed Capacity,Extra säng kapacitet,
Hotel Manager,Hotell chef,
Hotel Room Amenity,Hotell Rumsfaciliteter,
Billable,Fakturerbar,
Hotel Room Package,Hotellrumspaket,
Amenities,Bekvämligheter,
Hotel Room Pricing,Hotellrumspriser,
Hotel Room Pricing Item,Hotellrumsprispost,
Hotel Room Pricing Package,Hotellrumsprispaket,
Hotel Room Reservation,Hotellrum Bokning,
Guest Name,Gästnamn,
Late Checkin,Sen incheckning,
Booked,bokade,
Hotel Reservation User,Hotellbokningsanvändare,
Hotel Room Reservation Item,Hotell Rum Bokningsartikel,
Hotel Settings,Hotellinställningar,
Default Taxes and Charges,Standard skatter och avgifter,
Default Invoice Naming Series,Standard Faktura Naming Series,
HR,HR,
Date on which this component is applied,Datum då denna komponent tillämpas,
Salary Slip,Lön Slip,
HR User,HR-Konto,
Job Applicant,Arbetssökande,
Body,Kropp,
Appraisal Template,Bedömning mall,
Parent Department,Föräldraavdelningen,
Leave Block List,Lämna Block List,
Days for which Holidays are blocked for this department.,Dagar då helgdagar är blockerade för denna avdelning.,
Leave Approver,Ledighetsgodkännare,
Expense Approver,Utgiftsgodkännare,
Required Skills,Erforderliga färdigheter,
Skills,Kompetens,
Driver,Förare,
HR-DRI-.YYYY.-,HR-DRI-.YYYY.-,
Suspended,Upphängd,
Transporter,Transporter,
Applicable for external driver,Gäller för extern drivrutin,
Cellphone Number,telefon nummer,
License Details,Licensinformation,
License Number,Licensnummer,
Issuing Date,Utgivningsdatum,
Driving License Categories,Körkortskategorier,
Driving License Category,Körkortskategori,
Fleet Manager,Fleet manager,
Driver licence class,Körkort,
HR-EMP-,HR-EMP,
Employment Type,Anställnings Typ,
Emergency Contact,Kontaktinformation I En Nödsituation,
Emergency Contact Name,kontaktperson för nödfall,
Emergency Phone,Nödtelefon,
ERPNext User,ERPNext User,
"System User (login) ID. If set, it will become default for all HR forms.","Systemanvändare (inloggning) ID. Om inställt, kommer det att bli standard för alla HR former.",
Create User Permission,Skapa användarbehörighet,
This will restrict user access to other employee records,Detta kommer att begränsa användaråtkomsten till andra anställningsregister,
Joining Details,Registreringsuppgifter,
Offer Date,Erbjudandet Datum,
Confirmation Date,Bekräftelsedatum,
Contract End Date,Kontrakts Slutdatum,
Notice (days),Observera (dagar),
Date Of Retirement,Datum för pensionering,
Department and Grade,Avdelning och betyg,
Reports to,Rapporter till,
Attendance and Leave Details,Information om närvaro och lämna,
Attendance Device ID (Biometric/RF tag ID),Deltagande enhets-ID (biometrisk / RF-tag-ID),
Applicable Holiday List,Tillämplig kalender,
Default Shift,Standardskift,
Salary Mode,Lön Läge,
Bank A/C No.,Bank A / C nr,
Health Insurance,Hälsoförsäkring,
Health Insurance Provider,Sjukförsäkringsleverantör,
Health Insurance No,Sjukförsäkring nr,
Prefered Email,Föredragen E,
Personal Email,Personligt E-post,
Permanent Address Is,Permanent Adress är,
Rented,Hyrda,
Owned,Ägs,
Permanent Address,Permanent Adress,
Prefered Contact Email,Föredragen Kontakta E-post,
Company Email,Företagets e-post,
Provide Email Address registered in company,Ge e-postadress är registrerad i sällskap,
Current Address Is,Nuvarande adress är,
Current Address,Nuvarande Adress,
Personal Bio,Personligt Bio,
Bio / Cover Letter,Bio / Cover Letter,
Short biography for website and other publications.,Kort biografi för webbplatsen och andra publikationer.,
Passport Number,Passnummer,
Date of Issue,Utgivningsdatum,
Place of Issue,Utgivningsplats,
Widowed,Änka,
Family Background,Familjebakgrund,
"Here you can maintain family details like name and occupation of parent, spouse and children","Här kan du behålla familje detaljer som namn och ockupationen av förälder, make och barn",
Health Details,Hälsa Detaljer,
"Here you can maintain height, weight, allergies, medical concerns etc","Här kan du behålla längd, vikt, allergier, medicinska problem etc",
Educational Qualification,Utbildnings Kvalificering,
Previous Work Experience,Tidigare Arbetslivserfarenhet,
External Work History,Extern Arbetserfarenhet,
History In Company,Historia Företaget,
Internal Work History,Intern Arbetserfarenhet,
Resignation Letter Date,Avskedsbrev Datum,
Relieving Date,Avgångs Datum,
Reason for Leaving,Anledning för att lämna,
Leave Encashed?,Lämna inlösen?,
Encashment Date,Inlösnings Datum,
New Workplace,Ny Arbetsplats,
Returned Amount,Återlämnat belopp,
Advance Account,Förskottskonto,
Benefits Applied,Fördelar tillämpade,
Benefit Type and Amount,Förmånstyp och belopp,
Task Weight,uppgift Vikt,
Employee Education,Anställd Utbildning,
School/University,Skola / Universitet,
Graduate,Examinera,
Post Graduate,Betygsinlägg,
Under Graduate,Enligt Graduate,
Year of Passing,Passerande År,
Class / Percentage,Klass / Procent,
Major/Optional Subjects,Stora / valfria ämnen,
Employee External Work History,Anställd Extern Arbetserfarenhet,
Total Experience,Total Experience,
Default Leave Policy,Standardavgångspolicy,
Employee Group Table,Tabell över anställda,
ERPNext User ID,ERPNext användar-ID,
Employee Internal Work History,Anställd interna arbetshistoria,
Activities,verksamhet,
Employee Onboarding Activity,Anställd ombordstigningsaktivitet,
Employee Promotion Detail,Arbetstagarreklamdetalj,
Employee Transfer Property,Anställningsöverföringsfastighet,
Unclaimed amount,Oavkrävat belopp,
Holiday List Name,Semester Listnamn,
Total Holidays,Totalt helgdagar,
Add Weekly Holidays,Lägg till veckovisa helgdagar,
Weekly Off,Veckovis Av,
Add to Holidays,Lägg till helgdagar,
Holidays,Helgdagar,
Clear Table,Rensa Tabell,
Retirement Age,Pensionsålder,
Enter retirement age in years,Ange pensionsåldern i år,
Stop Birthday Reminders,Stop födelsedag Påminnelser,
Leave Settings,Lämna inställningar,
Accepted,Godkända,
Printing Details,Utskrifter Detaljer,
Job Title,Jobbtitel,
Allocation,Tilldelning,
Select Employees,Välj Anställda,
Allocate,Fördela,
Max Leaves Allowed,Max löv tillåtet,
Maximum Continuous Days Applicable,Maximala kontinuerliga dagar gäller,
Select Payroll Period,Välj Payroll Period,
Abbr,Förkortning,
Condition and Formula,Skick och formel,
Total Working Hours,Totala arbetstiden,
Hour Rate,Tim värde,
Bank Account No.,Bankkonto nr,
Earning & Deduction,Vinst &amp; Avdrag,
Loan repayment,Låneåterbetalning,
Employee Loan,Employee Loan,
Total Principal Amount,Summa huvudbelopp,
Total Interest Amount,Summa räntebelopp,
Total Loan Repayment,Totala låne Återbetalning,
net pay info,nettolön info,
Gross Pay - Total Deduction - Loan Repayment,Gross Pay - Summa Avdrag - Loan Återbetalning,
Net Pay (in words) will be visible once you save the Salary Slip.,Nettolön (i ord) kommer att vara synliga när du sparar lönebeskedet.,
Staffing Plan Details,Personalplaneringsdetaljer,
Optional,Frivillig,
Costing,Kostar,
Vehicle,Fordon,
License Plate,Registreringsskylt,
Odometer Value (Last),Vägmätare Value (Senaste),
Acquisition Date,förvärvs~~POS=TRUNC,
Chassis No,chassi nr,
Vehicle Value,fordons Värde,
Insurance Details,Insurance Information,
Insurance Company,Försäkringsbolag,
Policy No,policy Nej,
Additional Details,ytterligare detaljer,
Fuel Type,Bränsletyp,
Petrol,Bensin,
Diesel,Diesel,
Natural Gas,Naturgas,
Electric,Elektrisk,
Fuel UOM,bränsle UOM,
Last Carbon Check,Sista Carbon Check,
Wheels,hjul,
Doors,dörrar,
last Odometer Value ,sista kilometervärde,
Service Detail,tjänsten Detalj,
Hub Tracked Item,Navspårad artikel,
Hub Node,Nav Nod,
Image List,Bildlista,
Item Manager,Produktansvarig,
Hub User,Hub-användare,
Hub Password,Navlösenord,
Hub Users,Hub-användare,
Marketplace Settings,Marketplaceinställningar,
Disable Marketplace,Inaktivera Marketplace,
Marketplace URL (to hide and update label),Marknadsföringsadress (för att dölja och uppdatera etikett),
Registered,Registrerad,
Sync in Progress,Synkronisera pågår,
Hub Seller Name,Hubb Säljarens namn,
Custom Data,Anpassade data,
Repay From Salary,Repay från Lön,
Regular Payment,Regelbunden betalning,
Loan Closure,Lånestängning,
Rate of Interest (%) Yearly,Hastighet av intresse (%) Årlig,
MAT-MSH-.YYYY.-,MAT-MSH-.YYYY.-,
Generate Schedule,Generera Schema,
Schedules,Scheman,
Maintenance Schedule Detail,Underhållsschema Detalj,
Scheduled Date,Planerat datum,
Actual Date,Faktiskt Datum,
Maintenance Schedule Item,Underhållsschema Produkt,
Random,Slumpmässig,
No of Visits,Antal besök,
MAT-MVS-.YYYY.-,MAT-MVS-.YYYY.-,
Maintenance Date,Underhållsdatum,
Maintenance Time,Servicetid,
Completion Status,Slutförande Status,
Partially Completed,Delvis Färdig,
Fully Completed,Helt Avslutad,
Unscheduled,Ledig,
Breakdown,Nedbrytning,
Purposes,Ändamål,
Customer Feedback,Kund Feedback,
Maintenance Visit Purpose,Servicebesökets syfte,
Work Done,Arbete Gjort,
Against Document No,Mot Dokument nr,
Against Document Detail No,Mot Dokument Detalj nr,
MFG-BLR-.YYYY.-,MFG-BLR-.YYYY.-,
Order Type,Beställ Type,
Blanket Order Item,Blankettbeställningsartikel,
Ordered Quantity,Beställd kvantitet,
Item to be manufactured or repacked,Produkt som skall tillverkas eller packas,
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Antal av objekt som erhålls efter tillverkning / ompackning från givna mängder av råvaror,
Set rate of sub-assembly item based on BOM,Ange sats för delmonteringsobjekt baserat på BOM,
Allow Alternative Item,Tillåt alternativ artikel,
Item UOM,Produkt UOM,
Conversion Rate,Omvandlingsfrekvens,
Rate Of Materials Based On,Hastighet av material baserade på,
With Operations,Med verksamhet,
Manage cost of operations,Hantera kostnaderna för verksamheten,
Transfer Material Against,Överför material mot,
Routing,Routing,
Materials,Material,
Quality Inspection Required,Kvalitetskontroll krävs,
Quality Inspection Template,Kvalitetskontrollmall,
Scrap,Skrot,
Scrap Items,skrot Items,
Operating Cost,Rörelse Kostnad,
Raw Material Cost,Råvarukostnad,
Scrap Material Cost,Skrot Material Kostnad,
Operating Cost (Company Currency),Driftskostnad (Company valuta),
Raw Material Cost (Company Currency),Råvarukostnad (företagets valuta),
Scrap Material Cost(Company Currency),Skrot materialkostnader (Company valuta),
Total Cost,Total Kostnad,
Total Cost (Company Currency),Total kostnad (företagsvaluta),
Materials Required (Exploded),Material som krävs (Expanderad),
Exploded Items,Exploderade artiklar,
Show in Website,Visa på webbplatsen,
Item Image (if not slideshow),Produktbild (om inte bildspel),
Thumbnail,Miniatyr,
Website Specifications,Webbplats Specifikationer,
Show Items,Visa artiklar,
Show Operations,Visa Operations,
Website Description,Webbplats Beskrivning,
BOM Explosion Item,BOM Explosions Punkt,
Qty Consumed Per Unit,Antal konsumeras per Enhet,
Include Item In Manufacturing,Inkludera objekt i tillverkningen,
BOM Item,BOM Punkt,
Item operation,Artikeloperation,
Rate & Amount,Betygsätt och belopp,
Basic Rate (Company Currency),Baskurs (Företagsvaluta),
Scrap %,Skrot%,
Original Item,Ursprunglig artikel,
BOM Operation,BOM Drift,
Operation Time ,Driftstid,
In minutes,Om några minuter,
Batch Size,Satsstorlek,
Base Hour Rate(Company Currency),Base Hour Rate (Company valuta),
Operating Cost(Company Currency),Driftskostnad (Company valuta),
BOM Scrap Item,BOM Scrap Punkt,
Basic Amount (Company Currency),Grundbelopp (Company valuta),
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.","Byt ut en särskild BOM i alla andra BOM där den används. Det kommer att ersätta den gamla BOM-länken, uppdatera kostnaden och regenerera &quot;BOM Explosion Item&quot; -tabellen enligt ny BOM. Det uppdaterar också senaste priset i alla BOM.",
Replace BOM,Byt ut BOM,
Current BOM,Aktuell BOM,
The BOM which will be replaced,BOM som kommer att ersättas,
The new BOM after replacement,Den nya BOM efter byte,
Replace,Ersätt,
Update latest price in all BOMs,Uppdatera senaste priset i alla BOMs,
BOM Website Item,BOM Website Post,
BOM Website Operation,BOM Webbplats Operation,
Operation Time,Drifttid,
PO-JOB.#####,PO-JOB. #####,
Timing Detail,Timing Detail,
Time Logs,Tid loggar,
Total Time in Mins,Total tid i minuter,
Operation ID,Operations-ID,
Transferred Qty,Överfört Antal,
Job Started,Jobb började,
Started Time,Startad tid,
Current Time,Aktuell tid,
Job Card Item,Jobbkortsartikel,
Job Card Time Log,Jobbkortets tidlogg,
Time In Mins,Tid i min,
Completed Qty,Avslutat Antal,
Manufacturing Settings,Tillverknings Inställningar,
Raw Materials Consumption,Råvaruförbrukning,
Allow Multiple Material Consumption,Tillåt flera materialförbrukning,
Backflush Raw Materials Based On,Återrapportering Råvaror Based On,
Material Transferred for Manufacture,Material Överfört för tillverkning,
Capacity Planning,Kapacitetsplanering,
Disable Capacity Planning,Inaktivera kapacitetsplanering,
Allow Overtime,Tillåt övertid,
Allow Production on Holidays,Tillåt Produktion på helgdagar,
Capacity Planning For (Days),Kapacitetsplanering för (Dagar),
Default Warehouses for Production,Standardlager för produktion,
Default Work In Progress Warehouse,Standard Work In Progress Warehouse,
Default Finished Goods Warehouse,Standard färdigvarulagret,
Default Scrap Warehouse,Standard skrotlager,
Overproduction Percentage For Sales Order,Överproduktionsprocent för försäljningsorder,
Overproduction Percentage For Work Order,Överproduktionsprocent för arbetsorder,
Other Settings,Andra inställningar,
Update BOM Cost Automatically,Uppdatera BOM kostnad automatiskt,
Material Request Plan Item,Material Beställningsplan,
Material Request Type,Typ av Materialbegäran,
Material Issue,Materialproblem,
Customer Provided,Kund tillhandahålls,
Minimum Order Quantity,Minimum antal,
Default Workstation,Standard arbetsstation,
Production Plan,Produktionsplan,
MFG-PP-.YYYY.-,MFG-PP-.YYYY.-,
Get Items From,Få objekt från,
Get Sales Orders,Hämta kundorder,
Material Request Detail,Materialförfrågan Detalj,
Get Material Request,Få Material Request,
Material Requests,material Framställningar,
Get Items For Work Order,Få artiklar för arbetsorder,
Material Request Planning,Material Beställningsplanering,
Include Non Stock Items,Inkludera icke-lagerobjekt,
Include Subcontracted Items,Inkludera underleverantörer,
Ignore Existing Projected Quantity,Ignorera befintligt beräknat 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"">Klicka här</a> om du vill veta mer om beräknad mängd.",
Download Required Materials,Ladda ner obligatoriskt material,
Get Raw Materials For Production,Få råmaterial för produktion,
Total Planned Qty,Totalt planerat antal,
Total Produced Qty,Totalt producerad mängd,
Material Requested,Material som begärs,
Production Plan Item,Produktionsplan för artikel,
Make Work Order for Sub Assembly Items,Gör arbetsorder för undermonteringsartiklar,
"If enabled, system will create the work order for the exploded items against which BOM is available.",Om det är aktiverat kommer systemet att skapa arbetsordern för de exploderade artiklarna mot vilka BOM är tillgänglig.,
Planned Start Date,Planerat startdatum,
Quantity and Description,Kvantitet och beskrivning,
material_request_item,material_request_item,
Product Bundle Item,Produktpaket Punkt,
Production Plan Material Request,Produktionsplanen Material Begäran,
Production Plan Sales Order,Produktionsplan för kundorder,
Sales Order Date,Kundorder Datum,
Routing Name,Routing Name,
MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
Item To Manufacture,Produkt för att tillverka,
Material Transferred for Manufacturing,Material Överfört för tillverkning,
Manufactured Qty,Tillverkas Antal,
Use Multi-Level BOM,Använd Multi-Level BOM,
Plan material for sub-assemblies,Planera material för underenheter,
Skip Material Transfer to WIP Warehouse,Hoppa över material till WIP Warehouse,
Check if material transfer entry is not required,Kontrollera om materialöverföring inte krävs,
Backflush Raw Materials From Work-in-Progress Warehouse,Backflush råvaror från arbets-i-lager lager,
Update Consumed Material Cost In Project,Uppdatera förbrukat materialkostnad i projektet,
Warehouses,Lager,
This is a location where raw materials are available.,Detta är en plats där råvaror finns tillgängliga.,
Work-in-Progress Warehouse,Pågående Arbete - Lager,
This is a location where operations are executed.,Detta är en plats där operationerna utförs.,
This is a location where final product stored.,Detta är en plats där slutprodukten lagras.,
Scrap Warehouse,skrot Warehouse,
This is a location where scraped materials are stored.,Detta är en plats där skrotade material lagras.,
Required Items,nödvändiga objekt,
Actual Start Date,Faktiskt startdatum,
Planned End Date,Planerat Slutdatum,
Actual End Date,Faktiskt Slutdatum,
Operation Cost,Driftkostnad,
Planned Operating Cost,Planerade driftkostnader,
Actual Operating Cost,Faktisk driftkostnad,
Additional Operating Cost,Ytterligare driftkostnader,
Total Operating Cost,Totala driftskostnaderna,
Manufacture against Material Request,Tillverkning mot Material Begäran,
Work Order Item,Arbeta beställningsobjekt,
Available Qty at Source Warehouse,Tillgänglig kvantitet vid källlagret,
Available Qty at WIP Warehouse,Tillgänglig mängd vid WIP Warehouse,
Work Order Operation,Arbetsorderoperation,
Operation Description,Drift Beskrivning,
Operation completed for how many finished goods?,Driften färdig för hur många färdiga varor?,
Work in Progress,Pågående Arbete,
Estimated Time and Cost,Beräknad tid och kostnad,
Planned Start Time,Planerad starttid,
Planned End Time,Planerat Sluttid,
in Minutes,På några minuter,
Actual Time and Cost,Faktisk tid och kostnad,
Actual Start Time,Faktisk starttid,
Actual End Time,Faktiskt Sluttid,
Updated via 'Time Log',Uppdaterad via &quot;Time Log&quot;,
Actual Operation Time,Faktisk driftstid,
in Minutes\nUpdated via 'Time Log',"i protokollet Uppdaterad via ""Tidslog""",
(Hour Rate / 60) * Actual Operation Time,(Timkostnad/60) * Faktisk produktionstid,
Workstation Name,Arbetsstation Namn,
Production Capacity,Produktionskapacitet,
Operating Costs,Operations Kostnader,
Electricity Cost,Elkostnad,
per hour,per timme,
Consumable Cost,Förbrukningsartiklar Kostnad,
Rent Cost,Hyr Kostnad,
Wages,Löner,
Wages per hour,Löner per timme,
Net Hour Rate,Netto timmekostnad,
Workstation Working Hour,Arbetsstation arbetstimme,
Certification Application,Certifieringsansökan,
Name of Applicant,Sökandes namn,
Certification Status,Certifieringsstatus,
Yet to appear,Ändå att visas,
Certified,Auktoriserad,
Not Certified,Ej certifierad,
USD,USD,
INR,INR,
Certified Consultant,Certifierad konsult,
Name of Consultant,Namn på konsult,
Certification Validity,Certifikat Giltighet,
Discuss ID,Diskutera ID,
GitHub ID,GitHub ID,
Non Profit Manager,Non Profit Manager,
Chapter Head,Kapitelhuvud,
Meetup Embed HTML,Meetup Bädda in HTML,
chapters/chapter_name\nleave blank automatically set after saving chapter.,kapitel / kapitel_namn lämna tomt automatiskt efter att du har sparat kapitel.,
Chapter Members,Kapitelmedlemmar,
Members,medlemmar,
Chapter Member,Kapitelmedlem,
Website URL,Webbadress,
Leave Reason,Lämna anledning,
Donor Name,Donatornamn,
Donor Type,Givartyp,
Withdrawn,kallas,
Grant Application Details ,Ange ansökningsdetaljer,
Grant Description,Grant Beskrivning,
Requested Amount,Begärt belopp,
Has any past Grant Record,Har någon tidigare Grant Record,
Show on Website,Visa på hemsidan,
Assessment  Mark (Out of 10),Bedömningsmärke (av 10),
Assessment  Manager,Bedömningschef,
Email Notification Sent,E-postmeddelande skickat,
NPO-MEM-.YYYY.-,NPO-MEM-.YYYY.-,
Membership Expiry Date,Medlemskapets utgångsdatum,
Razorpay Details,Razorpay Detaljer,
Subscription ID,Prenumerations-ID,
Customer ID,Kundnummer,
Subscription Activated,Prenumeration aktiverad,
Subscription Start ,Prenumerationsstart,
Subscription End,Abonnemangets slut,
Non Profit Member,Icke vinstmedlem,
Membership Status,Medlemsstatus,
Member Since,Medlem sedan,
Payment ID,Betalnings-ID,
Membership Settings,Medlemskapsinställningar,
Enable RazorPay For Memberships,Aktivera RazorPay för medlemskap,
RazorPay Settings,RazorPay-inställningar,
Billing Cycle,Faktureringsperiod,
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.",Antalet faktureringscykler som kunden ska debiteras för. Om en kund till exempel köper ett ettårigt medlemskap som ska faktureras månadsvis bör detta värde vara 12.,
Razorpay Plan ID,Razorpay-plan-ID,
Volunteer Name,Frivilligt namn,
Volunteer Type,Volontär typ,
Availability and Skills,Tillgänglighet och färdigheter,
Availability,Tillgänglighet,
Weekends,helger,
Availability Timeslot,Tillgänglighet Timeslot,
Morning,Morgon,
Afternoon,Eftermiddag,
Evening,Kväll,
Anytime,när som helst,
Volunteer Skills,Volontärfärdigheter,
Volunteer Skill,Volontärfärdighet,
Homepage,Hemsida,
Hero Section Based On,Hjältesektion baserad på,
Homepage Section,Hemsidan avsnitt,
Hero Section,Hjältesektion,
Tag Line,Tag Linje,
Company Tagline for website homepage,Företag Tagline för webbplats hemsida,
Company Description for website homepage,Beskrivning av företaget för webbplats hemsida,
Homepage Slideshow,Hemsida Bildspel,
"URL for ""All Products""",URL för &quot;Alla produkter&quot;,
Products to be shown on website homepage,Produkter som ska visas på startsidan för webbplatsen,
Homepage Featured Product,Hemsida Aktuell produkt,
route,rutt,
Section Based On,Avsnitt baserat på,
Section Cards,Avsnittskort,
Number of Columns,Antal kolumner,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,Antal kolumner för detta avsnitt. 3 kort visas per rad om du väljer 3 kolumner.,
Section HTML,Avsnitt HTML,
Use this field to render any custom HTML in the section.,Använd det här fältet för att återge all anpassad HTML i avsnittet.,
Section Order,Avsnitt Order,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Ordning i vilka avsnitt som ska visas. 0 är först, 1 är andra och så vidare.",
Homepage Section Card,Hemsida avsnitt kort,
Subtitle,Texta,
Products Settings,produkter Inställningar,
Home Page is Products,Hemsida är produkter,
"If checked, the Home page will be the default Item Group for the website",Om markerad startsidan vara standardArtikelGrupp för webbplatsen,
Show Availability Status,Visa tillgänglighet Status,
Product Page,Produkt sida,
Products per Page,Produkter per sida,
Enable Field Filters,Aktivera fältfilter,
Item Fields,Objektfält,
Enable Attribute Filters,Aktivera attributfilter,
Attributes,Attributer,
Hide Variants,Dölj varianter,
Website Attribute,Webbplatsattribut,
Attribute,Attribut,
Website Filter Field,Fält för webbplatsfilter,
Activity Cost,Aktivitetskostnad,
Billing Rate,Faktureringsfrekvens,
Costing Rate,Kalkylfrekvens,
title,titel,
Projects User,Projekt Användare,
Default Costing Rate,Standardkalkyl betyg,
Default Billing Rate,Standardfakturerings betyg,
Dependent Task,Beroende Uppgift,
Project Type,Projekt Typ,
% Complete Method,% Komplett metod,
Task Completion,uppgift Slutförande,
Task Progress,Task framsteg,
% Completed,% Slutfört,
From Template,Från mall,
Project will be accessible on the website to these users,Projektet kommer att vara tillgänglig på webbplatsen till dessa användare,
Copied From,Kopierad från,
Start and End Dates,Start- och slutdatum,
Actual Time in Hours (via Timesheet),Faktisk tid (i timmar),
Costing and Billing,Kostnadsberäkning och fakturering,
Total Costing Amount (via Timesheet),Totalkostnadsbelopp (via tidskrifter),
Total Expense Claim (via Expense Claim),Totalkostnadskrav (via räkningar),
Total Purchase Cost (via Purchase Invoice),Totala inköpskostnaden (via inköpsfaktura),
Total Sales Amount (via Sales Order),Totala försäljningsbelopp (via försäljningsorder),
Total Billable Amount (via Timesheet),Totala fakturabeloppet (via tidstabeller),
Total Billed Amount (via Sales Invoice),Totalt fakturerat belopp (via försäljningsfakturor),
Total Consumed Material Cost (via Stock Entry),Total förbrukad materialkostnad (via lagerinmatning),
Gross Margin,Bruttomarginal,
Gross Margin %,Bruttomarginal%,
Monitor Progress,Monitor Progress,
Collect Progress,Samla framsteg,
Frequency To Collect Progress,Frekvens för att samla framsteg,
Twice Daily,Två gånger dagligen,
First Email,Första Email,
Second Email,Andra e-postadressen,
Time to send,Tid att skicka,
Day to Send,Dag att skicka,
Message will be sent to the users to get their status on the Project,Meddelande kommer att skickas till användarna för att få sin status i projektet,
Projects Manager,Projekt Chef,
Project Template,Projektmall,
Project Template Task,Projektmalluppgift,
Begin On (Days),Börja på (dagar),
Duration (Days),Varaktighet (dagar),
Project Update,Projektuppdatering,
Project User,projektAnvändar,
View attachments,Visa bilagor,
Projects Settings,Projektinställningar,
Ignore Workstation Time Overlap,Ignorera överlappning av arbetsstationen,
Ignore User Time Overlap,Ignorera överlappning av användartid,
Ignore Employee Time Overlap,Ignorera överlappning av arbetstiden,
Weight,Vikt,
Parent Task,Föräldrauppgift,
Timeline,tidslinje,
Expected Time (in hours),Förväntad tid (i timmar),
% Progress,% Framgång,
Is Milestone,Är Milestone,
Task Description,Uppgifts beskrivning,
Dependencies,beroenden,
Dependent Tasks,Beroende uppgifter,
Depends on Tasks,Beror på Uppgifter,
Actual Start Date (via Timesheet),Faktiska startdatum (via Tidrapportering),
Actual Time in Hours (via Timesheet),Faktisk tid (i timmar),
Actual End Date (via Timesheet),Faktisk Slutdatum (via Tidrapportering),
Total Expense Claim (via Expense Claim),Totalkostnadskrav (via utgiftsräkning),
Review Date,Kontroll Datum,
Closing Date,Slutdatum,
Task Depends On,Uppgift Beror på,
Task Type,Uppgiftstyp,
TS-.YYYY.-,TS-.YYYY.-,
Employee Detail,anställd Detalj,
Billing Details,Faktureringsuppgifter,
Total Billable Hours,Totalt debiterbara timmar,
Total Billed Hours,Totalt Fakturerade Timmar,
Total Costing Amount,Totala Kalkyl Mängd,
Total Billable Amount,Totala Fakturerbar Mängd,
Total Billed Amount,Totala fakturerade beloppet,
% Amount Billed,% Belopp fakturerat,
Hrs,H,
Costing Amount,Kalkyl Mängd,
Corrective/Preventive,Korrigerande / Förebyggande,
Corrective,korrigerande,
Preventive,Förebyggande,
Resolution,Åtgärd,
Resolutions,beslut,
Quality Action Resolution,Kvalitetsåtgärd upplösning,
Quality Feedback Parameter,Parameter för kvalitetsåterkoppling,
Quality Feedback Template Parameter,Parameter för kvalitetsåterkopplingsmall,
Quality Goal,Kvalitetsmål,
Monitoring Frequency,Övervaka frekvens,
Weekday,Veckodag,
Objectives,mål,
Quality Goal Objective,Kvalitetsmål Mål,
Objective,Mål,
Agenda,Dagordning,
Minutes,Minuter,
Quality Meeting Agenda,Kvalitetsmöte agenda,
Quality Meeting Minutes,Mötesprotokoll av kvalitet,
Minute,Minut,
Parent Procedure,Föräldraförfarande,
Processes,processer,
Quality Procedure Process,Kvalitetsprocessprocess,
Process Description,Metodbeskrivning,
Link existing Quality Procedure.,Länka befintligt kvalitetsförfarande.,
Additional Information,ytterligare information,
Quality Review Objective,Kvalitetsgranskningsmål,
DATEV Settings,DATEV-inställningar,
Regional,Regional,
Consultant ID,Konsult-ID,
GST HSN Code,GST HSN-kod,
HSN Code,HSN-kod,
GST Settings,GST-inställningar,
GST Summary,GST Sammanfattning,
GSTIN Email Sent On,GSTIN Email Sent On,
GST Accounts,GST-konton,
B2C Limit,B2C begränsning,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Ange fakturavärde för B2C. B2CL och B2CS beräknad baserat på detta fakturavärde.,
GSTR 3B Report,GSTR 3B-rapport,
January,januari,
February,februari,
March,Mars,
April,april,
August,augusti,
September,september,
October,oktober,
November,november,
December,december,
JSON Output,JSON Output,
Invoices with no Place Of Supply,Fakturor utan leveransplats,
Import Supplier Invoice,Importera leverantörsfaktura,
Invoice Series,Fakturaserie,
Upload XML Invoices,Ladda upp XML-fakturor,
Zip File,Zip fil,
Import Invoices,Importera fakturor,
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.,Klicka på knappen Importera fakturor när zip-filen har bifogats dokumentet. Eventuella fel relaterade till bearbetning visas i felloggen.,
Lower Deduction Certificate,Lägre avdragsintyg,
Certificate Details,Certifikatinformation,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,Certifikat nr,
Deductee Details,Avdrag detaljer,
PAN No,PAN Nej,
Validity Details,Giltighetsinformation,
Rate Of TDS As Per Certificate,TDS-frekvens enligt certifikat,
Certificate Limit,Certifikatgräns,
Invoice Series Prefix,Faktura Serie Prefix,
Active Menu,Aktiv meny,
Restaurant Menu,Restaurangmeny,
Price List (Auto created),Prislista (automatiskt skapad),
Restaurant Manager,Restaurangchef,
Restaurant Menu Item,Restaurang menyobjekt,
Restaurant Order Entry,Restaurang Order Entry,
Restaurant Table,Restaurangbord,
Click Enter To Add,Klicka på Enter för att lägga till,
Last Sales Invoice,Sista försäljningsfaktura,
Current Order,Nuvarande ordning,
Restaurant Order Entry Item,Restaurang Order Entry Item,
Served,Serveras,
Restaurant Reservation,Restaurangbokning,
Waitlisted,väntelistan,
No Show,Icke infinnande,
No of People,Antal människor,
Reservation Time,Bokningstid,
Reservation End Time,Bokning Sluttid,
No of Seats,Antal platser,
Minimum Seating,Minsta sätet,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Håll koll på säljkampanjer. Håll koll på Prospekter, Offerter, kundorder etc från kampanjer för att mäta avkastning på investeringen.",
SAL-CAM-.YYYY.-,SAL-CAM-.YYYY.-,
Campaign Schedules,Kampanjscheman,
Buyer of Goods and Services.,Köpare av varor och tjänster.,
CUST-.YYYY.-,CUST-.YYYY.-,
Default Company Bank Account,Standardföretagets bankkonto,
From Lead,Från Prospekt,
Account Manager,Kontohanterare,
Allow Sales Invoice Creation Without Sales Order,Tillåt skapande av försäljningsfaktura utan försäljningsorder,
Allow Sales Invoice Creation Without Delivery Note,Tillåt skapande av försäljningsfaktura utan leveransnot,
Default Price List,Standard Prislista,
Primary Address and Contact Detail,Primär adress och kontaktdetaljer,
"Select, to make the customer searchable with these fields","Välj, för att göra kunden sökbar med dessa fält",
Customer Primary Contact,Kund Primärkontakt,
"Reselect, if the chosen contact is edited after save",Välj om den valda kontakten är redigerad efter spara,
Customer Primary Address,Kundens primära adress,
"Reselect, if the chosen address is edited after save",Återmarkera om den valda adressen redigeras efter spara,
Primary Address,Primäradress,
Mention if non-standard receivable account,Nämn om icke-standardiserade fordran konto,
Credit Limit and Payment Terms,Kreditgräns och betalningsvillkor,
Additional information regarding the customer.,Ytterligare information om kunden.,
Sales Partner and Commission,Försäljningen Partner och kommissionen,
Commission Rate,Provisionbetyg,
Sales Team Details,Försäljnings Team Detaljer,
Customer POS id,Kundens POS-id,
Customer Credit Limit,Kundkreditgräns,
Bypass Credit Limit Check at Sales Order,Bifoga kreditgränskontroll vid Försäljningsorder,
Industry Type,Industrityp,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Installations Datum,
Installation Time,Installationstid,
Installation Note Item,Installeringsnotis objekt,
Installed Qty,Installerat antal,
Lead Source,bly Källa,
Period Start Date,Periodens startdatum,
Period End Date,Period Slutdatum,
Cashier,Kassör,
Difference,Skillnad,
Modes of Payment,Betalningsmetoder,
Linked Invoices,Länkade fakturor,
POS Closing Voucher Details,POS-slutkupongdetaljer,
Collected Amount,Samlat belopp,
Expected Amount,Förväntad mängd,
POS Closing Voucher Invoices,POS Closing Voucher Fakturor,
Quantity of Items,Antal objekt,
"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","Grupp ** artiklar ** till en annan ** Artkel **. Detta är användbart om du vill bunta vissa ** artiklar ** i ett paket och du behålla lager av de packade ** artiklarna ** och inte den sammanlagda ** artikeln **. Paketets ** Artiklar ** kommer att ha ""Är Lagervara"" som ""Nej"" och ""Är säljprodukt"" som ""Ja"". Till exempel: Om du säljer bärbara datorer och Ryggsäckar separat och har ett speciellt pris om kunden köper båda, sedan Laptop + Backpack kommer att bli en ny produkt Bundle Punkt. Obs! BOM = Bill of Materials",
Parent Item,Överordnad produkt,
List items that form the package.,Lista objekt som bildar paketet.,
SAL-QTN-.YYYY.-,SAL-QTN-.YYYY.-,
Quotation To,Offert Till,
Rate at which customer's currency is converted to company's base currency,I takt med vilket vilken kundens valuta omvandlas till företagets basvaluta,
Rate at which Price list currency is converted to company's base currency,I takt med vilket Prislistans valuta omvandlas till företagets basvaluta,
Additional Discount and Coupon Code,Ytterligare rabatt- och kupongkod,
Referral Sales Partner,Referensförsäljningspartner,
In Words will be visible once you save the Quotation.,I Ord kommer att synas när du sparar offerten.,
Term Details,Term Detaljer,
Quotation Item,Offert Artikel,
Against Doctype,Mot Doctype,
Against Docname,Mot doknamn,
Additional Notes,Ytterligare anmärkningar,
SAL-ORD-.YYYY.-,SAL-ORD-.YYYY.-,
Skip Delivery Note,Hoppa över leveransanteckning,
In Words will be visible once you save the Sales Order.,I Ord kommer att synas när du sparar kundorder.,
Track this Sales Order against any Project,Prenumerera på det här kundorder mot varje Project,
Billing and Delivery Status,Fakturering och leveransstatus,
Not Delivered,Inte Levererad,
Fully Delivered,Fullt Levererad,
Partly Delivered,Delvis Levererad,
Not Applicable,Inte Tillämpbar,
%  Delivered,% Levereras,
% of materials delivered against this Sales Order,% Av material som levereras mot denna kundorder,
% of materials billed against this Sales Order,% Av material faktureras mot denna kundorder,
Not Billed,Inte Billed,
Fully Billed,Fullt fakturerad,
Partly Billed,Delvis Faktuerard,
Ensure Delivery Based on Produced Serial No,Se till att leverans är baserad på tillverkat serienummer,
Supplier delivers to Customer,Leverantören levererar till kunden,
Delivery Warehouse,Leverans Lager,
Planned Quantity,Planerad Kvantitet,
For Production,För produktion,
Work Order Qty,Arbetsorder Antal,
Produced Quantity,Producerat Kvantitet,
Used for Production Plan,Används för produktionsplan,
Sales Partner Type,Försäljningspartner typ,
Contact No.,Kontakt nr,
Contribution (%),Bidrag (%),
Contribution to Net Total,Bidrag till Net Total,
Selling Settings,Försälja Inställningar,
Settings for Selling Module,Inställningar för att sälja Modul,
Customer Naming By,Kundnamn på,
Campaign Naming By,Kampanj namnges av,
Default Customer Group,Standard Kundgrupp,
Default Territory,Standard Område,
Close Opportunity After Days,Nära möjlighet efter dagar,
Default Quotation Validity Days,Standard Offertid Giltighetsdagar,
Sales Update Frequency,Försäljnings uppdateringsfrekvens,
Each Transaction,Varje transaktion,
SMS Center,SMS Center,
Send To,Skicka Till,
All Contact,Alla Kontakter,
All Customer Contact,Alla Kundkontakt,
All Supplier Contact,Alla Leverantörskontakter,
All Sales Partner Contact,Alla försäljningspartners kontakter,
All Lead (Open),Alla Ledare (Öppna),
All Employee (Active),Personal (aktiv),
All Sales Person,Alla försäljningspersonal,
Create Receiver List,Skapa Mottagare Lista,
Receiver List,Mottagare Lista,
Messages greater than 160 characters will be split into multiple messages,Meddelanden som är större än 160 tecken delas in i flera meddelanden,
Total Characters,Totalt Tecken,
Total Message(s),Totalt Meddelande (er),
Authorization Control,Behörighetskontroll,
Authorization Rule,Auktoriseringsregel,
Average Discount,Genomsnittlig rabatt,
Customerwise Discount,Kundrabatt,
Itemwise Discount,Produktvis rabatt,
Customer or Item,Kund eller föremål,
Customer / Item Name,Kund / artikelnamn,
Authorized Value,Auktoriserad Värde,
Applicable To (Role),Är tillämpligt för (Roll),
Applicable To (Employee),Är tillämpligt för (anställd),
Applicable To (User),Är tillämpligt för (Användare),
Applicable To (Designation),Är tillämpligt för (Destination),
Approving Role (above authorized value),Godkännande Roll (ovan auktoriserad värde),
Approving User  (above authorized value),Godkännande Användare (ovan auktoriserad värde),
Brand Defaults,Standard för varumärke,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Juridisk person / Dotterbolag med en separat kontoplan som tillhör organisationen.,
Change Abbreviation,Ändra Förkortning,
Parent Company,Moderbolag,
Default Values,Standardvärden,
Default Holiday List,Standard kalender,
Default Selling Terms,Standardförsäljningsvillkor,
Default Buying Terms,Standardköpvillkor,
Create Chart Of Accounts Based On,Skapa konto Baserad på,
Standard Template,standardmall,
Existing Company,Befintligt företag,
Chart Of Accounts Template,Konto Mall,
Existing Company ,befintliga Company,
Date of Establishment,Datum för etablering,
Sales Settings,Försäljningsinställningar,
Monthly Sales Target,Månadsförsäljningsmål,
Sales Monthly History,Försäljning månadshistoria,
Transactions Annual History,Transaktioner Årshistoria,
Total Monthly Sales,Total månadsförsäljning,
Default Cash Account,Standard Konto,
Default Receivable Account,Standard Mottagarkonto,
Round Off Cost Center,Avrunda kostnadsställe,
Discount Allowed Account,Rabatt tillåtet konto,
Discount Received Account,Mottaget rabattkonto,
Exchange Gain / Loss Account,Exchange vinst / förlust konto,
Unrealized Exchange Gain/Loss Account,Orealiserat Exchange Gain / Loss-konto,
Allow Account Creation Against Child Company,Tillåt att konto skapas mot barnföretag,
Default Payable Account,Standard betalkonto,
Default Employee Advance Account,Standardansvarig förskottskonto,
Default Cost of Goods Sold Account,Standardkostnad Konto Sålda Varor,
Default Income Account,Standard Inkomstkonto,
Default Deferred Revenue Account,Standard uppskjutna intäkter konto,
Default Deferred Expense Account,Standard uppskjuten kostnadskonto,
Default Payroll Payable Account,Standard Lön Betal konto,
Default Expense Claim Payable Account,Standardkostnadskrav Betalningsbart konto,
Stock Settings,Stock Inställningar,
Enable Perpetual Inventory,Aktivera evigt lager,
Default Inventory Account,Standard Inventory Account,
Stock Adjustment Account,Lager Justering Konto,
Fixed Asset Depreciation Settings,Fast avskrivning Inställningar,
Series for Asset Depreciation Entry (Journal Entry),Serie för tillgångsavskrivning (Journal Entry),
Gain/Loss Account on Asset Disposal,Vinst / Förlust konto på Asset Avfallshantering,
Asset Depreciation Cost Center,Avskrivning kostnadsställe,
Budget Detail,Budgetdetalj,
Exception Budget Approver Role,Undantag Budget Approver Rol,
Company Info,Företagsinfo,
For reference only.,För referens.,
Company Logo,Företagslogotyp,
Date of Incorporation,Datum för upptagande,
Date of Commencement,Datum för inledande,
Phone No,Telefonnr,
Company Description,Företagsbeskrivning,
Registration Details,Registreringsdetaljer,
Company registration numbers for your reference. Tax numbers etc.,Organisationsnummer som referens. Skattenummer etc.,
Delete Company Transactions,Radera Företagstransactions,
Currency Exchange,Valutaväxling,
Specify Exchange Rate to convert one currency into another,Ange växelkursen för att konvertera en valuta till en annan,
From Currency,Från Valuta,
To Currency,Till Valuta,
For Buying,För köp,
For Selling,För försäljning,
Customer Group Name,Kundgruppnamn,
Parent Customer Group,Överordnad kundgrupp,
Only leaf nodes are allowed in transaction,Endast huvudnoder är tillåtna i transaktionen,
Mention if non-standard receivable account applicable,Nämn om icke-standard mottagningskonto tillämpat,
Credit Limits,Kreditgränser,
Email Digest,E-postutskick,
Send regular summary reports via Email.,Skicka regelbundna sammanfattande rapporter via e-post.,
Email Digest Settings,E-postutskick Inställningar,
How frequently?,Hur ofta?,
Next email will be sent on:,Nästa e-post kommer att skickas på:,
Note: Email will not be sent to disabled users,Obs: E-post kommer inte att skickas till inaktiverade användare,
Profit & Loss,Vinst förlust,
New Income,ny inkomst,
New Expenses,nya kostnader,
Annual Income,Årlig inkomst,
Annual Expenses,årliga kostnader,
Bank Balance,Banksaldo,
Bank Credit Balance,Bankens kreditbalans,
Receivables,Fordringar,
Payables,Skulder,
Sales Orders to Bill,Försäljningsorder till Bill,
Purchase Orders to Bill,Beställningar till Bill,
New Sales Orders,Ny kundorder,
New Purchase Orders,Nya beställningar,
Sales Orders to Deliver,Försäljningsorder att leverera,
Purchase Orders to Receive,Inköpsorder att ta emot,
New Purchase Invoice,Ny inköpsfaktura,
New Quotations,Nya Citat,
Open Quotations,Öppna citat,
Open Issues,Öppna nummer,
Open Projects,Öppna projekt,
Purchase Orders Items Overdue,Inköpsorder Föremål Försenade,
Upcoming Calendar Events,Kommande kalenderhändelser,
Open To Do,Öppna att göra,
Add Quote,Lägg Citat,
Global Defaults,Globala standardinställningar,
Default Company,Standard Company,
Current Fiscal Year,Innevarande räkenskapsår,
Default Distance Unit,Standarddistansenhet,
Hide Currency Symbol,Dölj Valutasymbol,
Do not show any symbol like $ etc next to currencies.,Visa inte någon symbol som $ etc bredvid valutor.,
"If disable, 'Rounded Total' field will not be visible in any transaction","Om inaktiverad ""Rundad Totalt fältet inte syns i någon transaktion",
Disable In Words,Inaktivera uttrycker in,
"If disable, 'In Words' field will not be visible in any transaction","Om inaktivera, &quot;uttrycker in&quot; fältet inte kommer att vara synlig i någon transaktion",
Item Classification,Produkt Klassificering,
General Settings,Allmänna Inställningar,
Item Group Name,Produkt  Gruppnamn,
Parent Item Group,Överordnad produktgrupp,
Item Group Defaults,Produktgruppsinställningar,
Item Tax,Produkt Skatt,
Check this if you want to show in website,Markera det här om du vill visa i hemsida,
Show this slideshow at the top of the page,Visa denna bildspel längst upp på sidan,
HTML / Banner that will show on the top of product list.,HTML / Banner som visar på toppen av produktlista.,
Set prefix for numbering series on your transactions,Ställ prefix för nummerserie på dina transaktioner,
Setup Series,Inställnings Serie,
Update Series,Uppdatera Serie,
Change the starting / current sequence number of an existing series.,Ändra start / aktuella sekvensnumret av en befintlig serie.,
Quotation Lost Reason,Anledning förlorad Offert,
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,En tredjepartsdistributör/återförsäljare/kommissionär/influencer som säljer företagets produkter mot provision.,
Sales Partner Name,Försäljnings Partner Namn,
Partner Type,Partner Typ,
Address & Contacts,Adress och kontakter,
Address Desc,Adress fallande,
Contact Desc,Kontakt Desc,
Sales Partner Target,Sales Partner Target,
Targets,Mål,
Show In Website,Visa i Webbsida,
Referral Code,Hänvisningskod,
To Track inbound purchase,Att spåra inkommande köp,
Logo,Logo,
Partner website,partner webbplats,
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Alla försäljningstransaktioner kan märkas mot flera ** säljare ** så att du kan ställa in och övervaka mål.,
Name and Employee ID,Namn och Anställnings ID,
Sales Person Name,Försäljnings Person Namn,
Parent Sales Person,Överordnad Försäljningsperson,
Select company name first.,Välj företagsnamn först.,
Sales Person Targets,Försäljnings Person Mål,
Set targets Item Group-wise for this Sales Person.,Uppsatta mål Punkt Gruppvis för säljare.,
Supplier Group Name,Leverantörsgruppsnamn,
Parent Supplier Group,Moderbolaget,
Target Detail,Måldetaljer,
Target Qty,Mål Antal,
Target  Amount,Målbeloppet,
Target Distribution,Target Fördelning,
"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.","Standard Villkor som kan läggas till försäljning och inköp. Exempel: 1. giltighet erbjudandet. 1. Betalningsvillkor (på förhand på kredit, del förskott etc). 1. Vad är extra (eller betalas av kunden). 1. Säkerhet / användning varning. 1. Garanti om något. 1. Returer Policy. 1. Villkor för leverans, om tillämpligt. 1. Sätt att hantera konflikter, ersättning, ansvar, etc. 1. Adresser och kontaktinformation för ditt företag.",
Applicable Modules,Tillämpliga moduler,
Terms and Conditions Help,Villkor Hjälp,
Classification of Customers by region,Klassificering av kunder per region,
Territory Name,Territorium Namn,
Parent Territory,Överordnat område,
Territory Manager,Territorium manager,
For reference,Som referens,
Territory Targets,Territorium Mål,
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Ange artikelgrupp visa budgetar på detta område. Du kan även inkludera säsongs genom att ställa in Distribution.,
UOM Name,UOM Namn,
Check this to disallow fractions. (for Nos),Markera att tillåta bråkdelar. (För NOS),
Website Item Group,Webbplats Produkt Grupp,
Cross Listing of Item in multiple groups,Kors Notering av punkt i flera grupper,
Default settings for Shopping Cart,Standardinställningarna för Varukorgen,
Enable Shopping Cart,Aktivera Varukorgen,
Display Settings,Bildskärmsinställningar,
Show Public Attachments,Visa offentliga bilagor,
Show Price,Visa pris,
Show Stock Availability,Visa lager tillgänglighet,
Show Contact Us Button,Visa Kontakta oss-knappen,
Show Stock Quantity,Visa lager Antal,
Show Apply Coupon Code,Visa Använd kupongkod,
Allow items not in stock to be added to cart,Låt varor som inte finns i lagret läggas till i kundvagnen,
Prices will not be shown if Price List is not set,Priserna kommer inte att visas om prislista inte är inställd,
Quotation Series,Offert Serie,
Checkout Settings,kassa Inställningar,
Enable Checkout,göra det möjligt för kassan,
Payment Success Url,Betalning Framgång URL,
After payment completion redirect user to selected page.,Efter betalning avslutad omdirigera användare till valda sidan.,
Batch Details,Partiinformation,
Batch ID,Batch-ID,
image,bild,
Parent Batch,Föräldragrupp,
Manufacturing Date,Tillverkningsdatum,
Batch Quantity,Partimängd,
Batch UOM,Batch UOM,
Source Document Type,Källdokumenttyp,
Source Document Name,Källdokumentnamn,
Batch Description,Batch Beskrivning,
Bin,Bin,
Reserved Quantity,Reserverad Kvantitet,
Actual Quantity,Verklig Kvantitet,
Requested Quantity,begärda Kvantitet,
Reserved Qty for sub contract,Reserverad Antal för delkontrakt,
Moving Average Rate,Rörligt medelvärdes hastighet,
FCFS Rate,FCFS betyg,
Customs Tariff Number,Tulltaxan Nummer,
Tariff Number,tariff Number,
Delivery To,Leverans till,
MAT-DN-.YYYY.-,MAT-DN-.YYYY.-,
Is Return,Är Returnerad,
Issue Credit Note,Utgåva Kreditnot,
Return Against Delivery Note,Återgå mot Följesedel,
Customer's Purchase Order No,Kundens inköpsorder Nr,
Billing Address Name,Faktureringsadress Namn,
Required only for sample item.,Krävs endast för provobjekt.,
"If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Om du har skapat en standardmall i skatter och avgifter Mall, välj en och klicka på knappen nedan.",
In Words will be visible once you save the Delivery Note.,I Ord kommer att synas när du sparar följesedel.,
In Words (Export) will be visible once you save the Delivery Note.,I ord (Export) kommer att vara synlig när du sparar följesedel.,
Transporter Info,Transporter info,
Driver Name,Förarens namn,
Track this Delivery Note against any Project,Prenumerera på det här följesedel mot någon Project,
Inter Company Reference,Inter Company Reference,
Print Without Amount,Skriv ut utan Belopp,
% Installed,% Installerad,
% of materials delivered against this Delivery Note,% Av material som levereras mot detta följesedel,
Installation Status,Installationsstatus,
Excise Page Number,Punktnotering sidnummer,
Instructions,Instruktioner,
From Warehouse,Från Warehouse,
Against Sales Order,Mot kundorder,
Against Sales Order Item,Mot Försäljningvara,
Against Sales Invoice,Mot fakturan,
Against Sales Invoice Item,Mot fakturaprodukt,
Available Batch Qty at From Warehouse,Finns Batch Antal på From Warehouse,
Available Qty at From Warehouse,Tillgång Antal på From Warehouse,
Delivery Settings,Leveransinställningar,
Dispatch Settings,Dispatch Settings,
Dispatch Notification Template,Dispatch Notification Template,
Dispatch Notification Attachment,Dispatch Notification Attachment,
Leave blank to use the standard Delivery Note format,Lämna tomt för att använda standardleveransnotatformatet,
Send with Attachment,Skicka med bilagan,
Delay between Delivery Stops,Fördröjning mellan leveransstopp,
Delivery Stop,Leveransstopp,
Lock,Låsa,
Visited,Besökt,
Order Information,Beställningsinformation,
Contact Information,Kontakt information,
Email sent to,Email skickat till,
Dispatch Information,Dispatch Information,
Estimated Arrival,Beräknad ankomsttid,
MAT-DT-.YYYY.-,MAT-DT-.YYYY.-,
Initial Email Notification Sent,Initial Email Notification Sent,
Delivery Details,Leveransdetaljer,
Driver Email,Förarens e-post,
Driver Address,Förarens adress,
Total Estimated Distance,Totalt beräknat avstånd,
Distance UOM,Avstånd UOM,
Departure Time,Avgångstid,
Delivery Stops,Leveransstopp,
Calculate Estimated Arrival Times,Beräkna uppskattade ankomsttider,
Use Google Maps Direction API to calculate estimated arrival times,Använd Google Maps Direction API för att beräkna beräknade ankomsttider,
Optimize Route,Optimera Rutt,
Use Google Maps Direction API to optimize route,Använd Google Maps Direction API för att optimera rutten,
In Transit,I transit,
Fulfillment User,Uppfyllande användare,
"A Product or a Service that is bought, sold or kept in stock.","En produkt eller en tjänst som köps, säljs eller hålls i lager.",
STO-ITEM-.YYYY.-,STO-item-.YYYY.-,
Variant Of,Variant av,
"If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified","Om artikeln är en variant av ett annat objekt kommer beskrivning, bild, prissättning, skatter etc att ställas från mallen om inte annat uttryckligen anges",
Is Item from Hub,Är objekt från nav,
Default Unit of Measure,Standard mätenhet,
Maintain Stock,Behåll Lager,
Standard Selling Rate,Standard säljkurs,
Auto Create Assets on Purchase,Skapa tillgångar automatiskt vid köp,
Asset Naming Series,Asset Naming Series,
Over Delivery/Receipt Allowance (%),Överleverans / kvittobidrag (%),
Barcodes,Streckkoder,
Shelf Life In Days,Hållbarhet i dagar,
End of Life,Uttjänta,
Default Material Request Type,Standard Material Typ av förfrågan,
Valuation Method,Värderingsmetod,
FIFO,FIFO,
Moving Average,Rörligt medelvärde,
Warranty Period (in days),Garantitiden (i dagar),
Auto re-order,Auto återbeställning,
Reorder level based on Warehouse,Beställningsnivå baserat på Warehouse,
Will also apply for variants unless overridden,Kommer också att ansöka om varianter såvida inte överskriden,
Units of Measure,Måttenheter,
Will also apply for variants,Kommer också att ansöka om varianter,
Serial Nos and Batches,Serienummer och partier,
Has Batch No,Har Sats nr,
Automatically Create New Batch,Skapa automatiskt nytt parti,
Batch Number Series,Batch Number Series,
"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.","Exempel: ABCD. #####. Om serier är inställda och batchnummer inte nämns i transaktioner, kommer automatiskt batchnummer att skapas baserat på denna serie. Om du alltid vill uttryckligen ange parti nr för det här objektet, lämna det här tomt. Obs! Den här inställningen kommer att prioriteras över namngivningssprefixet i lagerinställningar.",
Has Expiry Date,Har förfallodatum,
Retain Sample,Behåll provet,
Max Sample Quantity,Max provkvantitet,
Maximum sample quantity that can be retained,Maximal provkvantitet som kan behållas,
Has Serial No,Har Löpnummer,
Serial Number Series,Serial Number Series,
"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.","Exempel:. ABCD ##### Om serien är inställd och Löpnummer inte nämns i transaktioner, skapas automatiska serienummer  utifrån denna serie. Om du alltid vill ange serienumren för denna artikel. lämna det tomt.",
Variants,Varianter,
Has Variants,Har Varianter,
"If this item has variants, then it cannot be selected in sales orders etc.","Om denna artikel har varianter, så det kan inte väljas i kundorder etc.",
Variant Based On,Variant Based On,
Item Attribute,Produkt Attribut,
"Sales, Purchase, Accounting Defaults","Försäljning, Inköp, Redovisningsstandard",
Item Defaults,Objektstandard,
"Purchase, Replenishment Details","Köp, detaljer om påfyllning",
Is Purchase Item,Är beställningsobjekt,
Default Purchase Unit of Measure,Standard inköpsenhet av åtgärd,
Minimum Order Qty,Minimum Antal,
Minimum quantity should be as per Stock UOM,Minsta kvantitet ska vara enligt lager UOM,
Average time taken by the supplier to deliver,Genomsnittlig tid det tar för leverantören att leverera,
Is Customer Provided Item,Är kunden tillhandahållen artikel,
Delivered by Supplier (Drop Ship),Levereras av leverantören (Drop Ship),
Supplier Items,Leverantör artiklar,
Foreign Trade Details,Foreign Trade Detaljer,
Country of Origin,Ursprungsland,
Sales Details,Försäljnings Detaljer,
Default Sales Unit of Measure,Standardförsäljningsenhet av åtgärd,
Is Sales Item,Är Försäljningsobjekt,
Max Discount (%),Max rabatt (%),
No of Months,Antal månader,
Customer Items,Kundartiklar,
Inspection Criteria,Inspektionskriterier,
Inspection Required before Purchase,Inspektion krävs innan köp,
Inspection Required before Delivery,Inspektion krävs innan leverans,
Default BOM,Standard BOM,
Supply Raw Materials for Purchase,Leverera råvaror för köp,
If subcontracted to a vendor,Om underleverantörer till en leverantör,
Customer Code,Kund kod,
Default Item Manufacturer,Standardartillverkare,
Default Manufacturer Part No,Standard tillverkarens artikelnummer,
Show in Website (Variant),Visa på webbplatsen (Variant),
Items with higher weightage will be shown higher,Produkter med högre medelvikt kommer att visas högre,
Show a slideshow at the top of the page,Visa ett bildspel på toppen av sidan,
Website Image,Webbplatsbild,
Website Warehouse,Webbplatslager,
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.",Visa &quot;i lager&quot; eller &quot;Inte i lager&quot; som bygger på lager tillgängliga i detta lager.,
Website Item Groups,Webbplats artikelgrupper,
List this Item in multiple groups on the website.,Lista detta objekt i flera grupper på webbplatsen.,
Copy From Item Group,Kopiera från artikelgrupp,
Website Content,Webbplatsinnehåll,
You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Du kan använda valfri Bootstrap 4-markering i det här fältet. Det kommer att visas på din artikelsida.,
Total Projected Qty,Totala projicerade Antal,
Hub Publishing Details,Hub Publishing Detaljer,
Publish in Hub,Publicera i Hub,
Publish Item to hub.erpnext.com,Publish Post som hub.erpnext.com,
Hub Category to Publish,Hub kategori att publicera,
Hub Warehouse,Hub Warehouse,
"Publish ""In Stock"" or ""Not in Stock"" on Hub based on stock available in this warehouse.",Publicera &quot;I lager&quot; eller &quot;Ej i lager&quot; på nav baserat på lager som finns i lageret.,
Synced With Hub,Synkroniserad med Hub,
Item Alternative,Alternativ Alternativ,
Alternative Item Code,Alternativ produktkod,
Two-way,Tvåvägs,
Alternative Item Name,Alternativt artikelnamn,
Attribute Name,Attribut Namn,
Numeric Values,Numeriska värden,
From Range,Från räckvidd,
Increment,Inkrement,
To Range,Range,
Item Attribute Values,Produkt Attribut Värden,
Item Attribute Value,Produkt Attribut Värde,
Attribute Value,Attribut Värde,
Abbreviation,Förkortning,
"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""","Detta kommer att läggas till den punkt koden varianten. Till exempel, om din förkortning är &quot;SM&quot;, och försändelsekoden är &quot;T-TRÖJA&quot;, posten kod varianten kommer att vara &quot;T-Shirt-SM&quot;",
Item Barcode,Produkt Streckkod,
Barcode Type,Streckkodstyp,
EAN,EAN,
UPC-A,UPC-A,
Item Customer Detail,Produktdetaljer kund,
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","För att underlätta för kunderna, kan dessa koder användas i utskriftsformat som fakturor och följesedlar",
Ref Code,Referenskod,
Item Default,Objektstandard,
Purchase Defaults,Inköpsstandard,
Default Buying Cost Center,Standard Inköpsställe,
Default Supplier,Standard Leverantör,
Default Expense Account,Standardutgiftskonto,
Sales Defaults,Försäljningsinställningar,
Default Selling Cost Center,Standard Kostnadsställe Försäljning,
Item Manufacturer,Punkt Tillverkare,
Item Price,Produkt Pris,
Packing Unit,Förpackningsenhet,
Quantity  that must be bought or sold per UOM,Mängd som måste köpas eller säljas per UOM,
Item Quality Inspection Parameter,Produktkvalitetskontroll Parameter,
Acceptance Criteria,Acceptanskriterier,
Item Reorder,Produkt Ändra ordning,
Check in (group),Checka in (grupp),
Request for,Begäran om,
Re-order Level,Återuppta nivå,
Re-order Qty,Återuppta Antal,
Item Supplier,Produkt Leverantör,
Item Variant,Produkt Variant,
Item Variant Attribute,Punkt Variant Attribut,
Do not update variants on save,Uppdatera inte varianter på spara,
Fields will be copied over only at time of creation.,Fält kopieras endast över tiden vid skapandet.,
Allow Rename Attribute Value,Tillåt Byt namn på attributvärde,
Rename Attribute Value in Item Attribute.,Byt namn på Attribut Värde i Item Attribut.,
Copy Fields to Variant,Kopiera fält till variant,
Item Website Specification,Produkt hemsidespecifikation,
Table for Item that will be shown in Web Site,Tabell för punkt som kommer att visas i Web Site,
Landed Cost Item,Landad kostnadspost,
Receipt Document Type,Kvitto Document Type,
Receipt Document,kvitto Dokument,
Applicable Charges,Tillämpliga avgifter,
Purchase Receipt Item,Inköpskvitto Artikel,
Landed Cost Purchase Receipt,Landad kostnad inköpskvitto,
Landed Cost Taxes and Charges,Landed Cost skatter och avgifter,
Landed Cost Voucher,Landad Kostnad rabatt,
MAT-LCV-.YYYY.-,MAT-LCV-.YYYY.-,
Purchase Receipts,Kvitton,
Purchase Receipt Items,Inköpskvitto artiklar,
Get Items From Purchase Receipts,Hämta objekt från kvitton,
Distribute Charges Based On,Fördela avgifter som grundas på,
Landed Cost Help,Landad kostnad Hjälp,
Manufacturers used in Items,Tillverkare som används i artiklar,
Limited to 12 characters,Begränsat till 12 tecken,
MAT-MR-.YYYY.-,MAT-MR-.YYYY.-,
Partially Ordered,Delvis beställt,
Transferred,Överförd,
% Ordered,% Beställt,
Terms and Conditions Content,Villkor Innehåll,
Quantity and Warehouse,Kvantitet och Lager,
Lead Time Date,Ledtid datum,
Min Order Qty,Min Order kvantitet,
Packed Item,Packad artikel,
To Warehouse (Optional),Till Warehouse (tillval),
Actual Batch Quantity,Faktiskt antal mängder,
Prevdoc DocType,Prevdoc DocType,
Parent Detail docname,Överordnat Detalj doknamn,
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Skapa följesedlar efter paket som skall levereras. Används för att meddela kollinummer, paketets innehåll och dess vikt.",
Indicates that the package is a part of this delivery (Only Draft),Anger att paketet är en del av denna leverans (endast utkast),
MAT-PAC-.YYYY.-,MAT-PAC-.YYYY.-,
From Package No.,Från Paket No.,
Identification of the package for the delivery (for print),Identifiering av paketet för leverans (för utskrift),
To Package No.,Förpackningens Nej,
If more than one package of the same type (for print),Om mer än ett paket av samma typ (för utskrift),
Package Weight Details,Paket Vikt Detaljer,
The net weight of this package. (calculated automatically as sum of net weight of items),Nettovikten av detta paket. (Beräknas automatiskt som summan av nettovikt av objekt),
Net Weight UOM,Nettovikt UOM,
Gross Weight,Bruttovikt,
The gross weight of the package. Usually net weight + packaging material weight. (for print),Bruttovikten på paketet. Vanligtvis nettovikt + förpackningsmaterial vikt. (För utskrift),
Gross Weight UOM,Bruttovikt UOM,
Packing Slip Item,Följesedels artikel,
DN Detail,DN Detalj,
STO-PICK-.YYYY.-,STO-PICK-.YYYY.-,
Material Transfer for Manufacture,Material Transfer för Tillverkning,
Qty of raw materials will be decided based on the qty of the Finished Goods Item,Antal råvaror kommer att bestämmas utifrån antalet färdigvaror,
Parent Warehouse,moderLager,
Items under this warehouse will be suggested,Föremål under detta lager kommer att föreslås,
Get Item Locations,Hämta objektplatser,
Item Locations,Objektplatser,
Pick List Item,Välj listobjekt,
Picked Qty,Plockad antal,
Price List Master,Huvudprislista,
Price List Name,Pris Listnamn,
Price Not UOM Dependent,Pris ej UOM beroende,
Applicable for Countries,Gäller Länder,
Price List Country,Prislista Land,
MAT-PRE-.YYYY.-,MAT-PRE-.YYYY.-,
Supplier Delivery Note,Leverantörsleveransnotering,
Time at which materials were received,Tidpunkt för material mottogs,
Return Against Purchase Receipt,Återgå mot inköpskvitto,
Rate at which supplier's currency is converted to company's base currency,I takt med vilket leverantörens valuta omvandlas till företagets basvaluta,
Sets 'Accepted Warehouse' in each row of the items table.,Ställer in &#39;Accepterat lager&#39; i varje rad i artikelbordet.,
Sets 'Rejected Warehouse' in each row of the items table.,Ställer in &#39;Avvisat lager&#39; i varje rad i artikelbordet.,
Raw Materials Consumed,Förbrukade råvaror,
Get Current Stock,Få Nuvarande lager,
Consumed Items,Konsumerade artiklar,
Add / Edit Taxes and Charges,Lägg till / redigera skatter och avgifter,
Auto Repeat Detail,Auto Repeat Detail,
Transporter Details,Transporter Detaljer,
Vehicle Number,Fordonsnummer,
Vehicle Date,Fordons Datum,
Received and Accepted,Mottagit och godkänt,
Accepted Quantity,Godkänd kvantitet,
Rejected Quantity,Avvisad Kvantitet,
Accepted Qty as per Stock UOM,Accepterat antal enligt lager UOM,
Sample Quantity,Provkvantitet,
Rate and Amount,Andel och Belopp,
MAT-QA-.YYYY.-,MAT-QA-.YYYY.-,
Report Date,Rapportdatum,
Inspection Type,Inspektionstyp,
Item Serial No,Produkt Löpnummer,
Sample Size,Provstorlek,
Inspected By,Inspekteras av,
Readings,Avläsningar,
Quality Inspection Reading,Kvalitetskontroll Läsning,
Reading 1,Avläsning 1,
Reading 2,Avläsning 2,
Reading 3,Avläsning 3,
Reading 4,Avläsning 4,
Reading 5,Avläsning 5,
Reading 6,Avläsning 6,
Reading 7,Avläsning 7,
Reading 8,Avläsning 8,
Reading 9,Avläsning 9,
Reading 10,Avläsning 10,
Quality Inspection Template Name,Kvalitetsinspektionsmallnamn,
Quick Stock Balance,Snabb lagerbalans,
Available Quantity,tillgänglig kvantitet,
Distinct unit of an Item,Distinkt enhet för en försändelse,
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Lager kan endast ändras via lagerposter / följesedel / inköpskvitto,
Purchase / Manufacture Details,Inköp / Tillverknings Detaljer,
Creation Document Type,Skapande Dokumenttyp,
Creation Document No,Skapande Dokument nr,
Creation Date,Skapelsedagen,
Creation Time,Skapelsetid,
Asset Details,Tillgångsuppgifter,
Asset Status,Asset Status,
Delivery Document Type,Leverans Dokumenttyp,
Delivery Document No,Leverans Dokument nr,
Delivery Time,Leveranstid,
Invoice Details,Faktura detaljer,
Warranty / AMC Details,Garanti / AMC Detaljer,
Warranty Expiry Date,Garanti Förfallodatum,
AMC Expiry Date,AMC Förfallodatum,
Under Warranty,Under garanti,
Out of Warranty,Ingen garanti,
Under AMC,Enligt AMC,
Out of AMC,Slut på AMC,
Warranty Period (Days),Garantiperiod (dagar),
Serial No Details,Serial Inga detaljer,
MAT-STE-.YYYY.-,MAT-STE-.YYYY.-,
Stock Entry Type,Lagerinmatningstyp,
Stock Entry (Outward GIT),Lagerinmatning (GIT),
Material Consumption for Manufacture,Materialförbrukning för tillverkning,
Repack,Packa om,
Send to Subcontractor,Skicka till underleverantör,
Delivery Note No,Följesedel nr,
Sales Invoice No,Försäljning Faktura nr,
Purchase Receipt No,Inköpskvitto Nr,
Inspection Required,Inspektion krävs,
From BOM,Från BOM,
For Quantity,För Antal,
As per Stock UOM,Per Stock UOM,
Including items for sub assemblies,Inklusive poster för underheter,
Default Source Warehouse,Standardkälla Lager,
Source Warehouse Address,Källa lageradress,
Default Target Warehouse,Standard Valt Lager,
Target Warehouse Address,Mållageradress,
Update Rate and Availability,Uppdateringsfrekvens och tillgänglighet,
Total Incoming Value,Totalt Inkommande Värde,
Total Outgoing Value,Totalt Utgående Värde,
Total Value Difference (Out - In),Total Value Skillnad (Out - In),
Additional Costs,Merkostnader,
Total Additional Costs,Totalt Merkostnader,
Customer or Supplier Details,Kund eller leverantör Detaljer,
Per Transferred,Per överförd,
Stock Entry Detail,Stock Entry Detalj,
Basic Rate (as per Stock UOM),Basic Rate (enligt Stock UOM),
Basic Amount,BASBELOPP,
Additional Cost,Extra kostnad,
Serial No / Batch,Löpnummer / Batch,
BOM No. for a Finished Good Item,BOM nr för ett Färdigt objekt,
Material Request used to make this Stock Entry,Material Begäran används för att göra detta Lagerinlägg,
Subcontracted Item,Underleverantörsartikel,
Against Stock Entry,Mot aktieinmatning,
Stock Entry Child,Lagerinförande barn,
PO Supplied Item,PO medlevererad artikel,
Reference Purchase Receipt,Referensköpskvitto,
Stock Ledger Entry,Lager Ledger Entry,
Outgoing Rate,Utgående betyg,
Actual Qty After Transaction,Faktiska Antal Efter transaktion,
Stock Value Difference,Stock Värde Skillnad,
Stock Queue (FIFO),Stock kö (FIFO),
Is Cancelled,Är Inställd,
Stock Reconciliation,Lager Avstämning,
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.,Detta verktyg hjälper dig att uppdatera eller rätta mängden och värdering av lager i systemet. Det är oftast används för att synkronisera systemvärden och vad som faktiskt finns i dina lager.,
MAT-RECO-.YYYY.-,MAT-RECO-.YYYY.-,
Reconciliation JSON,Avstämning JSON,
Stock Reconciliation Item,Lager Avstämning Punkt,
Before reconciliation,Innan avstämning,
Current Serial No,Aktuellt serienummer,
Current Valuation Rate,Nuvarande värderingensomsättning,
Current Amount,nuvarande belopp,
Quantity Difference,kvantitet Skillnad,
Amount Difference,mängd Skillnad,
Item Naming By,Produktnamn Genom,
Default Item Group,Standard Varugrupp,
Default Stock UOM,Standard Stock UOM,
Sample Retention Warehouse,Provhållningslager,
Default Valuation Method,Standardvärderingsmetod,
Show Barcode Field,Show Barcode Field,
Convert Item Description to Clean HTML,Konvertera artikelbeskrivning för att rena HTML,
Allow Negative Stock,Tillåt Negativ lager,
Automatically Set Serial Nos based on FIFO,Automatiskt Serial Nos baserat på FIFO,
Auto Material Request,Automaterialförfrågan,
Inter Warehouse Transfer Settings,Inter Warehouse Transfer Inställningar,
Freeze Stock Entries,Frys Lager Inlägg,
Stock Frozen Upto,Lager Fryst Upp,
Batch Identification,Batchidentifikation,
Use Naming Series,Använd Naming Series,
Naming Series Prefix,Namn Serie Prefix,
UOM Category,UOM Kategori,
UOM Conversion Detail,UOM Omvandlings Detalj,
Variant Field,Variant Field,
A logical Warehouse against which stock entries are made.,Ett logiskt lager mot vilken lagerposter görs.,
Warehouse Detail,Lagerdetalj,
Warehouse Name,Lager Namn,
Warehouse Contact Info,Lagrets kontaktinfo,
PIN,STIFT,
ISS-.YYYY.-,ISS-.YYYY.-,
Raised By (Email),Höjt av (e-post),
Issue Type,Typ av utgåva,
Issue Split From,Problem delad från,
Service Level,Servicenivå,
Response By,Svar av,
Response By Variance,Svar av variation,
Ongoing,Pågående,
Resolution By,Upplösning av,
Resolution By Variance,Upplösning efter variation,
Service Level Agreement Creation,Servicenivåavtalskapande,
First Responded On,Först svarade den,
Resolution Details,Åtgärds Detaljer,
Opening Date,Öppningsdatum,
Opening Time,Öppnings Tid,
Resolution Date,Åtgärds Datum,
Via Customer Portal,Via kundportalen,
Support Team,Support Team,
Issue Priority,Utgåva prioritet,
Service Day,Servicedag,
Workday,Arbetsdag,
Default Priority,Standardprioritet,
Priorities,prioriteringar,
Support Hours,Stödtimmar,
Support and Resolution,Support och upplösning,
Default Service Level Agreement,Standardavtal om servicenivå,
Entity,Entitet,
Agreement Details,Avtal detaljer,
Response and Resolution Time,Svar och upplösningstid,
Service Level Priority,Servicenivåprioritet,
Resolution Time,Upplösningstid,
Support Search Source,Stöd sökkälla,
Source Type,Källtyp,
Query Route String,Query Route String,
Search Term Param Name,Sök term Param Namn,
Response Options,Svaralternativ,
Response Result Key Path,Svar sökväg,
Post Route String,Skriv ruttsträng,
Post Route Key List,Skriv in ruttlängdslistan,
Post Title Key,Posttitelnyckel,
Post Description Key,Post Beskrivning Key,
Link Options,Länkalternativ,
Source DocType,Källa DocType,
Result Title Field,Resultat Titel Fält,
Result Preview Field,Resultatförhandsgranskningsfält,
Result Route Field,Resultat Ruttfält,
Service Level Agreements,Service Level Agreements,
Track Service Level Agreement,Spåra servicenivåavtal,
Allow Resetting Service Level Agreement,Tillåt återställning av servicenivåavtal,
Close Issue After Days,Nära Problem Efter dagar,
Auto close Issue after 7 days,Stäng automatiskt Problem efter 7 dagar,
Support Portal,Supportportal,
Get Started Sections,Kom igång sektioner,
Show Latest Forum Posts,Visa senaste foruminlägg,
Forum Posts,Foruminlägg,
Forum URL,Forumadress,
Get Latest Query,Hämta senaste frågan,
Response Key List,Response Key List,
Post Route Key,Skriv in ruttnyckeln,
Search APIs,Sök API: er,
SER-WRN-.YYYY.-,SER-WRN-.YYYY.-,
Issue Date,Utgivningsdatum,
Item and Warranty Details,Punkt och garantiinformation,
Warranty / AMC Status,Garanti / AMC Status,
Resolved By,Åtgärdad av,
Service Address,Serviceadress,
If different than customer address,Om annan än kundens adress,
Raised By,Höjt av,
From Company,Från Företag,
Rename Tool,Ändrings Verktyget,
Utilities,Verktyg,
Type of document to rename.,Typ av dokument för att byta namn.,
File to Rename,Fil att byta namn på,
"Attach .csv file with two columns, one for the old name and one for the new name","Bifoga CSV-fil med två kolumner, en för det gamla namnet och en för det nya namnet",
Rename Log,Ändra logg,
SMS Log,SMS-logg,
Sender Name,Avsändarnamn,
Sent On,Skickas på,
No of Requested SMS,Antal Begärd SMS,
Requested Numbers,Begärda nummer,
No of Sent SMS,Antal skickade SMS,
Sent To,Skickat Till,
Absent Student Report,Frånvarorapport student,
Assessment Plan Status,Bedömningsplan status,
Asset Depreciation Ledger,Avskrivning Ledger,
Asset Depreciations and Balances,Asset Avskrivningar och saldon,
Available Stock for Packing Items,Tillgängligt lager för förpackningsprodukter,
Bank Clearance Summary,Banken Clearance Sammanfattning,
Batch Item Expiry Status,Batch Punkt Utgångs Status,
Batch-Wise Balance History,Batchvis Balans Historik,
BOM Explorer,BOM Explorer,
BOM Search,BOM Sök,
BOM Stock Calculated,BOM lager beräknad,
BOM Variance Report,BOM-variansrapport,
Campaign Efficiency,Kampanjseffektivitet,
Cash Flow,Pengaflöde,
Completed Work Orders,Avslutade arbetsorder,
To Produce,Att Producera,
Produced,Producerat,
Consolidated Financial Statement,Koncernredovisning,
Course wise Assessment Report,Kursfattig bedömningsrapport,
Customer Acquisition and Loyalty,Kundförvärv och Lojalitet,
Customer Credit Balance,Kund tillgodohavande,
Customer Ledger Summary,Sammanfattning av kundbok,
Customer-wise Item Price,Kundmässigt artikelpris,
Customers Without Any Sales Transactions,Kunder utan försäljningstransaktioner,
Daily Timesheet Summary,Daglig Tidrapport Sammandrag,
DATEV,DATEV,
Delayed Item Report,Försenad artikelrapport,
Delayed Order Report,Försenad orderrapport,
Delivered Items To Be Billed,Levererade artiklar att faktureras,
Delivery Note Trends,Följesedel Trender,
Electronic Invoice Register,Elektroniskt fakturaregister,
Employee Billing Summary,Sammanfattning av fakturering av anställda,
Employee Birthday,Anställd Födelsedag,
Employee Information,Anställd Information,
Employee Leave Balance,Anställd Avgångskostnad,
Employee Leave Balance Summary,Sammanfattning av anställdas ledighet,
Eway Bill,Eway Bill,
Expiring Memberships,Utgående medlemskap,
Fichier des Ecritures Comptables [FEC],Fichier des Ecritures Comptables [FEC],
Final Assessment Grades,Final Assessment Grades,
Fixed Asset Register,Fast tillgångsregister,
Gross and Net Profit Report,Brutto- och nettovinstrapport,
GST Itemised Purchase Register,GST Artized Purchase Register,
GST Itemised Sales Register,GST Artized Sales Register,
GST Purchase Register,GST inköpsregister,
GST Sales Register,GST Försäljningsregister,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Hotellrumsboende,
HSN-wise-summary of outward supplies,HSN-vis-sammanfattning av utåtriktade varor,
Inactive Customers,inaktiva kunder,
Inactive Sales Items,Inaktiva försäljningsartiklar,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Utgivna poster mot arbetsorder,
Projected Quantity as Source,Projicerade Kvantitet som källa,
Item Balance (Simple),Artikelbalans (Enkel),
Item Price Stock,Produktpris Lager,
Item Prices,Produktpriser,
Item Shortage Report,Produkt Brist Rapportera,
Item Variant Details,Varianter av varianter,
Item-wise Price List Rate,Produktvis Prislistavärde,
Item-wise Purchase History,Produktvis Köphistorik,
Item-wise Purchase Register,Produktvis Inköpsregister,
Item-wise Sales History,Produktvis försäljnings historia,
Item-wise Sales Register,Produktvis säljregister,
Items To Be Requested,Produkter att begäras,
Reserved,Reserverat,
Itemwise Recommended Reorder Level,Produktvis Rekommenderad Ombeställningsnivå,
Lead Details,Prospekt Detaljer,
Lead Owner Efficiency,Effektivitet hos ledningsägaren,
Lost Opportunity,Förlorad möjlighet,
Maintenance Schedules,Underhålls scheman,
Material Requests for which Supplier Quotations are not created,Material Begäran för vilka leverantörsofferter är inte skapade,
Open Work Orders,Öppna arbetsorder,
Qty to Deliver,Antal att leverera,
Patient Appointment Analytics,Patientbokningsanalys,
Payment Period Based On Invoice Date,Betalningstiden Baserad på Fakturadatum,
Pending SO Items For Purchase Request,I avvaktan på SO Artiklar till inköpsanmodan,
Procurement Tracker,Upphandlingsspårare,
Product Bundle Balance,Produktbuntbalans,
Production Analytics,produktions~~POS=TRUNC Analytics,
Profit and Loss Statement,Resultaträkning,
Profitability Analysis,lönsamhets~~POS=TRUNC,
Project Billing Summary,Projekt faktureringsöversikt,
Project wise Stock Tracking,Projektvis lagerhållning,
Project wise Stock Tracking ,Projektvis lager Spårning,
Prospects Engaged But Not Converted,Utsikter Engaged Men Not Converted,
Purchase Analytics,Inköps analyser,
Purchase Invoice Trends,Inköpsfaktura Trender,
Qty to Receive,Antal att ta emot,
Received Qty Amount,Mottaget antal belopp,
Billed Qty,Fakturerad kvantitet,
Purchase Order Trends,Inköpsorder Trender,
Purchase Receipt Trends,Kvitto Trender,
Purchase Register,Inköpsregistret,
Quotation Trends,Offert Trender,
Received Items To Be Billed,Mottagna objekt som ska faktureras,
Qty to Order,Antal till Ordern,
Requested Items To Be Transferred,Efterfrågade artiklar som ska överföras,
Qty to Transfer,Antal Transfer,
Sales Analytics,Försäljnings Analytics,
Sales Invoice Trends,Fakturan Trender,
Sales Order Trends,Försäljningsorder Trender,
Sales Partner Commission Summary,Sammanfattning av försäljningspartnerkommissionen,
Sales Partner Target Variance based on Item Group,Försäljningspartner Målvarians baserad på artikelgrupp,
Sales Partner Transaction Summary,Försäljningspartners transaktionsöversikt,
Sales Partners Commission,Försäljning Partners kommissionen,
Invoiced Amount (Exclusive Tax),Fakturerat belopp (exklusiv skatt),
Average Commission Rate,Genomsnittligt commisionbetyg,
Sales Payment Summary,Försäljningsbetalningssammanfattning,
Sales Person Commission Summary,Försäljningskommitté Sammanfattning,
Sales Person Target Variance Based On Item Group,Försäljare Målvariation baserad på artikelgrupp,
Sales Person-wise Transaction Summary,Försäljningen person visa transaktion Sammanfattning,
Sales Register,Försäljningsregistret,
Serial No Service Contract Expiry,Löpnummer serviceavtal löper ut,
Serial No Status,Serial No Status,
Serial No Warranty Expiry,Serial Ingen garanti löper ut,
Stock Ageing,Lager Åldrande,
Stock and Account Value Comparison,Jämförelse av lager och konto,
Stock Projected Qty,Lager Projicerad Antal,
Student and Guardian Contact Details,Student och Guardian Kontaktuppgifter,
Student Batch-Wise Attendance,Student satsvis Närvaro,
Student Fee Collection,Student Fee Collection,
Student Monthly Attendance Sheet,Student Monthly Närvaro Sheet,
Subcontracted Item To Be Received,Underleverantör som ska tas emot,
Subcontracted Raw Materials To Be Transferred,Underleverantörer av råvaror som ska överföras,
Supplier Ledger Summary,Leverantörsbok Sammanfattning,
Supplier-Wise Sales Analytics,Leverantör-Wise Sales Analytics,
Support Hour Distribution,Stödtiddistribution,
TDS Computation Summary,TDS-beräkningsöversikt,
TDS Payable Monthly,TDS betalas månadsvis,
Territory Target Variance Based On Item Group,Territorium Målvarians baserad på artikelgrupp,
Territory-wise Sales,Territorisk visad försäljning,
Total Stock Summary,Total lageröversikt,
Trial Balance,Trial Balans,
Trial Balance (Simple),Testbalans (enkel),
Trial Balance for Party,Trial Balance för Party,
Warehouse wise Item Balance Age and Value,Lagerklassigt objekt Balansålder och värde,
Work Order Stock Report,Arbetsordningsbeståndsrapport,
Work Orders in Progress,Arbetsorder pågår,
Automatically Process Deferred Accounting Entry,Bearbeta uppskjutna bokföringsposter automatiskt,
Bank Clearance,Bankklarering,
Bank Clearance Detail,Bankklareringsdetalj,
Update Cost Center Name / Number,Uppdatera kostnadsställe namn / nummer,
Journal Entry Template,Mall för journalpost,
Template Title,Mallens titel,
Journal Entry Type,Typ av journalpost,
Journal Entry Template Account,Konto för mall för journalpost,
Process Deferred Accounting,Behandla uppskjuten redovisning,
Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,Manuell inmatning kan inte skapas! Inaktivera automatisk inmatning för uppskjuten redovisning i kontoinställningar och försök igen,
End date cannot be before start date,Slutdatum kan inte vara före startdatum,
Total Counts Targeted,Riktade totala antal,
Total Counts Completed,Totalt antal räknade slutförda,
Counts Targeted: {0},Räknade mål: {0},
Material Request Warehouse,Materialförfrågningslager,
Select warehouse for material requests,Välj lager för materialförfrågningar,
Transfer Materials For Warehouse {0},Överför material för lager {0},
Production Plan Material Request Warehouse,Produktionsplan Materialbegärande lager,
Sets 'Source Warehouse' in each row of the items table.,Ställer in &#39;Source Warehouse&#39; i varje rad i artikelbordet.,
Sets 'Target Warehouse' in each row of the items table.,Ställer in &#39;Target Warehouse&#39; i varje rad i artikelbordet.,
Show Cancelled Entries,Visa avbrutna poster,
Backdated Stock Entry,Tillbakadaterad lagerinträde,
Row #{}: Currency of {} - {} doesn't matches company currency.,Rad # {}: Valutan för {} - {} matchar inte företagets valuta.,
{} Assets created for {},{} Tillgångar skapade för {},
{0} Number {1} is already used in {2} {3},{0} Nummer {1} används redan i {2} {3},
Update Bank Clearance Dates,Uppdatera bankavslutningsdatum,
Healthcare Practitioner: ,Sjukvårdspersonal:,
Lab Test Conducted: ,Labtest genomfört:,
Lab Test Event: ,Lab Test Event:,
Lab Test Result: ,Resultat av laboratorietest:,
Clinical Procedure conducted: ,Kliniskt förfarande genomfört:,
Therapy Session Charges: {0},Avgifter för behandlingssessioner: {0},
Therapy: ,Terapi:,
Therapy Plan: ,Terapiplan:,
Total Counts Targeted: ,Totalt antal inriktningar:,
Total Counts Completed: ,Totalt antal räknade slutförda:,
Is Mandatory,Är obligatorisk,
Service Received But Not Billed,Tjänsten mottagen men inte fakturerad,
Deferred Accounting Settings,Uppskjutna redovisningsinställningar,
Book Deferred Entries Based On,Boka uppskjutna poster baserat på,
Days,Dagar,
Months,Månader,
Book Deferred Entries Via Journal Entry,Boka uppskjutna poster via journalpost,
Submit Journal Entries,Skicka journalposter,
If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,Om detta inte är markerat sparas journalposter i utkaststillstånd och måste skickas manuellt,
Enable Distributed Cost Center,Aktivera distribuerat kostnadscenter,
Distributed Cost Center,Distribuerat kostnadsställe,
Dunning,Dunning,
DUNN-.MM.-.YY.-,DUNN-.MM .-. YY.-,
Overdue Days,Försenade dagar,
Dunning Type,Dunning Type,
Dunning Fee,Dunning avgift,
Dunning Amount,Dunning Belopp,
Resolved,Löst,
Unresolved,Olöst,
Printing Setting,Utskriftsinställning,
Body Text,Kropp text,
Closing Text,Avslutande text,
Resolve,Lösa,
Dunning Letter Text,Dunning Letter Text,
Is Default Language,Är standardspråk,
Letter or Email Body Text,Text i brev eller e-post,
Letter or Email Closing Text,Text för brev eller e-post,
Body and Closing Text Help,Hjälp för text och avslutande text,
Overdue Interval,Försenat intervall,
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.","Detta avsnitt gör det möjligt för användaren att ställa in Body och Closing-texten för Dunning Letter för Dunning Type baserat på språk, som kan användas i Print.",
Reference Detail No,Referensdetalj nr,
Custom Remarks,Anpassade anmärkningar,
Please select a Company first.,Välj först ett företag.,
"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Rad # {0}: Referensdokumenttypen måste vara en av försäljningsorder, försäljningsfaktura, journalpost eller dunning",
POS Closing Entry,POS stängningspost,
POS Opening Entry,POS öppningsinträde,
POS Transactions,POS-transaktioner,
POS Closing Entry Detail,POS-avslutningsinformation,
Opening Amount,Öppningsbelopp,
Closing Amount,Utgående belopp,
POS Closing Entry Taxes,POS avslutande ingångsskatter,
POS Invoice,POS-faktura,
ACC-PSINV-.YYYY.-,ACC-PSINV-.ÅÅÅÅ.-,
Consolidated Sales Invoice,Konsoliderad försäljningsfaktura,
Return Against POS Invoice,Återvänd mot POS-faktura,
Consolidated,Konsoliderad,
POS Invoice Item,POS-fakturapost,
POS Invoice Merge Log,Sammanloggning för POS-faktura,
POS Invoices,POS-fakturor,
Consolidated Credit Note,Koncernredovisning,
POS Invoice Reference,POS-fakturahänvisning,
Set Posting Date,Ställ in bokningsdatum,
Opening Balance Details,Öppningsbalansinformation,
POS Opening Entry Detail,POS-öppningsdetalj,
POS Payment Method,POS-betalningsmetod,
Payment Methods,Betalningsmetoder,
Process Statement Of Accounts,Behandla kontoutdrag,
General Ledger Filters,Huvudbanksfilter,
Customers,Kunder,
Select Customers By,Välj kunder efter,
Fetch Customers,Hämta kunder,
Send To Primary Contact,Skicka till primär kontakt,
Print Preferences,Utskriftsinställningar,
Include Ageing Summary,Inkludera åldringsöversikt,
Enable Auto Email,Aktivera automatisk e-post,
Filter Duration (Months),Filterlängd (månader),
CC To,CC till,
Help Text,Hjälp text,
Emails Queued,E-postmeddelanden i kö,
Process Statement Of Accounts Customer,Process Kontoöversikt Kund,
Billing Email,Fakturerings-e-post,
Primary Contact Email,Primär kontakt e-post,
PSOA Cost Center,PSOA Cost Center,
PSOA Project,PSOA-projekt,
ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.YYYY.-,
Supplier GSTIN,Leverantör GSTIN,
Place of Supply,Plats för leverans,
Select Billing Address,Välj faktureringsadress,
GST Details,GST-detaljer,
GST Category,GST-kategori,
Registered Regular,Registrerad regelbundet,
Registered Composition,Registrerad sammansättning,
Unregistered,Oregistrerad,
SEZ,SEZ,
Overseas,Utomlands,
UIN Holders,UIN-hållare,
With Payment of Tax,Med betalning av skatt,
Without Payment of Tax,Utan betalning av skatt,
Invoice Copy,Fakturakopia,
Original for Recipient,Original för mottagare,
Duplicate for Transporter,Dubblett för Transporter,
Duplicate for Supplier,Dubblett för leverantör,
Triplicate for Supplier,Triplikat för leverantör,
Reverse Charge,Omvänd laddning,
Y,Y,
N,N,
E-commerce GSTIN,E-handel GSTIN,
Reason For Issuing document,Anledning till utfärdande av dokument,
01-Sales Return,01-försäljningsavkastning,
02-Post Sale Discount,02-post rabatt på försäljning,
03-Deficiency in services,03-Brister i tjänster,
04-Correction in Invoice,04-Rättelse i faktura,
05-Change in POS,05-Ändring av POS,
06-Finalization of Provisional assessment,06-Slutförande av provisorisk bedömning,
07-Others,07-Övriga,
Eligibility For ITC,Behörighet för ITC,
Input Service Distributor,Input Service Distributör,
Import Of Service,Import av tjänst,
Import Of Capital Goods,Import av kapitalvaror,
Ineligible,Oberättigad,
All Other ITC,Alla andra ITC,
Availed ITC Integrated Tax,Availed ITC Integrated Tax,
Availed ITC Central Tax,Avancerad ITC-centralskatt,
Availed ITC State/UT Tax,Avgiven ITC-stat / UT-skatt,
Availed ITC Cess,Availed ITC Cess,
Is Nil Rated or Exempted,Är inget betyg eller undantaget,
Is Non GST,Är icke GST,
ACC-SINV-RET-.YYYY.-,ACC-SINV-RET-.YYYY.-,
E-Way Bill No.,E-Way Bill No.,
Is Consolidated,Är konsoliderad,
Billing Address GSTIN,Faktureringsadress GSTIN,
Customer GSTIN,Kund GSTIN,
GST Transporter ID,GST-transportörs-ID,
Distance (in km),Avstånd (i km),
Road,Väg,
Air,Luft,
Rail,Järnväg,
Ship,Fartyg,
GST Vehicle Type,GST Fordonstyp,
Over Dimensional Cargo (ODC),Överdimensionell last (ODC),
Consumer,Konsument,
Deemed Export,Anses vara export,
Port Code,Portkod,
 Shipping Bill Number,Sändningsnummer,
Shipping Bill Date,Leveransräkningsdatum,
Subscription End Date,Slutdatum för prenumeration,
Follow Calendar Months,Följ kalendermånaderna,
If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,"Om detta är markerat kommer efterföljande nya fakturor att skapas under kalendermånadens och kvartals startdatum, oavsett nuvarande fakturas startdatum",
Generate New Invoices Past Due Date,Skapa nya fakturor förfallodatum,
New invoices will be generated as per schedule even if current invoices are unpaid or past due date,Nya fakturor genereras enligt schema även om nuvarande fakturor är obetalda eller förfallna,
Document Type ,Dokumenttyp,
Subscription Price Based On,Prenumerationspris baserat på,
Fixed Rate,Fast ränta,
Based On Price List,Baserat på prislista,
Monthly Rate,Månadsavgift,
Cancel Subscription After Grace Period,Avbryt prenumeration efter Grace Period,
Source State,Källstat,
Is Inter State,Är mellanstat,
Purchase Details,Köpinformation,
Depreciation Posting Date,Datum för avskrivning,
"By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ",Som standard är leverantörens namn inställt enligt det angivna leverantörsnamnet. Om du vill att leverantörer ska namnges av a,
 choose the 'Naming Series' option.,välj alternativet &#39;Naming Series&#39;.,
Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Konfigurera standardprislistan när du skapar en ny köptransaktion. Varupriser hämtas från denna prislista.,
"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.",Om det här alternativet är konfigurerat &#39;Ja&#39; kommer ERPNext att hindra dig från att skapa en inköpsfaktura eller kvitto utan att först skapa en inköpsorder. Denna konfiguration kan åsidosättas för en viss leverantör genom att aktivera kryssrutan &quot;Tillåt skapande av fakturafråga utan inköpsorder&quot; i leverantörsmastern.,
"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.",Om detta alternativ är konfigurerat &#39;Ja&#39; kommer ERPNext att hindra dig från att skapa en inköpsfaktura utan att skapa ett inköpskvitto först. Den här konfigurationen kan åsidosättas för en viss leverantör genom att aktivera kryssrutan &quot;Tillåt inköp av fakturor utan inköpsmottagning&quot; i leverantörsmastern.,
Quantity & Stock,Antal &amp; lager,
Call Details,Samtalsinformation,
Authorised By,Auktoriserad av,
Signee (Company),Signee (företag),
Signed By (Company),Signerad av (företag),
First Response Time,Första svarstiden,
Request For Quotation,Offertförfrågan,
Opportunity Lost Reason Detail,Opportunity Lost Reason Detail,
Access Token Secret,Access Token Secret,
Add to Topics,Lägg till ämnen,
...Adding Article to Topics,... Lägga till artikel i ämnen,
Add Article to Topics,Lägg till artikel i ämnen,
This article is already added to the existing topics,Den här artikeln har redan lagts till i befintliga ämnen,
Add to Programs,Lägg till i program,
Programs,Program,
...Adding Course to Programs,... Lägga till kurs i program,
Add Course to Programs,Lägg till kurs i program,
This course is already added to the existing programs,Kursen har redan lagts till i befintliga program,
Learning Management System Settings,Systeminställningar för Learning Management,
Enable Learning Management System,Aktivera Learning Management System,
Learning Management System Title,Learning Management System-titel,
...Adding Quiz to Topics,... Lägga till frågesport till ämnen,
Add Quiz to Topics,Lägg till frågesport till ämnen,
This quiz is already added to the existing topics,Detta frågesport har redan lagts till i befintliga ämnen,
Enable Admission Application,Aktivera antagningsansökan,
EDU-ATT-.YYYY.-,EDU-ATT-.YYYY.-,
Marking attendance,Markerar närvaro,
Add Guardians to Email Group,Lägg till vårdnadshavare i e-postgruppen,
Attendance Based On,Närvaro baserat 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,Markera detta för att markera studenten som närvarande om studenten inte deltar i institutet för att delta eller representera institutet under alla omständigheter.,
Add to Courses,Lägg till kurser,
...Adding Topic to Courses,... Lägga till ämne i kurser,
Add Topic to Courses,Lägg till ämne i kurser,
This topic is already added to the existing courses,Detta ämne har redan lagts till i befintliga 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",Om Shopify inte har en kund i beställningen kommer systemet att betrakta standardkunden för beställningen medan den synkroniserar beställningarna.,
The accounts are set by the system automatically but do confirm these defaults,Kontona ställs in av systemet automatiskt men bekräftar dessa standardinställningar,
Default Round Off Account,Standardavrundningskonto,
Failed Import Log,Misslyckad importlogg,
Fixed Error Log,Fixad fellogg,
Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,Företaget {0} finns redan. Fortsätter kommer att skriva över bolaget och kontoplanen,
Meta Data,Metadata,
Unresolve,Oupplöst,
Create Document,Skapa dokument,
Mark as unresolved,Markera som olöst,
TaxJar Settings,TaxJar-inställningar,
Sandbox Mode,sandlådeläge,
Enable Tax Calculation,Aktivera skatteberäkning,
Create TaxJar Transaction,Skapa TaxJar-transaktion,
Credentials,Referenser,
Live API Key,Live API-nyckel,
Sandbox API Key,Sandbox API-nyckel,
Configuration,Konfiguration,
Tax Account Head,Skattekonto chef,
Shipping Account Head,Fraktkontohuvud,
Practitioner Name,Utövarens namn,
Enter a name for the Clinical Procedure Template,Ange ett namn för mall för klinisk procedur,
Set the Item Code which will be used for billing the Clinical Procedure.,Ställ in artikelkoden som ska användas för fakturering av den kliniska proceduren.,
Select an Item Group for the Clinical Procedure Item.,Välj en artikelgrupp för den kliniska proceduren.,
Clinical Procedure Rate,Klinisk procedurhastighet,
Check this if the Clinical Procedure is billable and also set the rate.,Kontrollera detta om det kliniska förfarandet är fakturerbart och ange även priset.,
Check this if the Clinical Procedure utilises consumables. Click ,Kontrollera detta om det kliniska förfarandet använder förbrukningsvaror. Klick,
 to know more,att veta mer,
"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 också ställa in medicinsk avdelning för mallen. Efter att dokumentet har sparats skapas automatiskt en artikel för fakturering av denna kliniska procedur. Du kan sedan använda den här mallen medan du skapar kliniska procedurer för patienter. Mallar sparar dig från att fylla i överflödig data varje gång. Du kan också skapa mallar för andra operationer som labtester, terapisessioner etc.",
Descriptive Test Result,Beskrivande testresultat,
Allow Blank,Tillåt tomt,
Descriptive Test Template,Beskrivande testmall,
"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Om du vill spåra löner och andra HRMS-operationer för en Practitoner, skapa en anställd och länka den här.",
Set the Practitioner Schedule you just created. This will be used while booking appointments.,Ställ in utövarschemat som du just skapade. Detta kommer att användas när du bokar möten.,
Create a service item for Out Patient Consulting.,Skapa en servicepost för Out Patient Consulting.,
"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.",Om den här sjukvårdsutövaren arbetar för vårdavdelningen skapar du en servicepost för slutenvårdsbesök.,
Set the Out Patient Consulting Charge for this Practitioner.,Ange avgiften för patientrådgivning för den här utövaren.,
"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Om denna vårdutövare också arbetar för vårdavdelningen, ställa in avgiften för öppenvårdsbesök för denna utövare.",
"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.",Om det är markerat skapas en kund för varje patient. Patientfakturor skapas mot denna kund. Du kan också välja befintlig kund när du skapar en patient. Det här fältet är markerat som standard.,
Collect Registration Fee,Samla in registreringsavgift,
"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.",Om din vårdinrättning fakturerar registreringar av patienter kan du kontrollera detta och ställa in registreringsavgiften i fältet nedan. Om du kontrollerar detta skapas nya patienter med inaktiverad status som standard och aktiveras först efter fakturering av registreringsavgiften.,
Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,Kontroll av detta skapar automatiskt en försäljningsfaktura varje gång en bokning görs för en patient.,
Healthcare Service Items,Hälsovårdstjänster,
"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 skapa ett servicepost för Inpatient Visit Charge och ställa in det här. På samma sätt kan du ställa in andra artiklar för hälsovårdstjänster för fakturering i detta avsnitt. Klick,
Set up default Accounts for the Healthcare Facility,Ställ in standardkonton för vårdinrättningen,
"If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.",Om du vill åsidosätta standardinställningar för konton och konfigurera inkomst- och fordringskonton för Healthcare kan du göra det här.,
Out Patient SMS alerts,Ut Patient SMS-varningar,
"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 ",Om du vill skicka SMS-varning vid patientregistrering kan du aktivera det här alternativet. På samma sätt kan du ställa in Out Patient SMS-varningar för andra funktioner i detta avsnitt. Klick,
Admission Order Details,Upptagsbeställningsinformation,
Admission Ordered For,Inträde beställt för,
Expected Length of Stay,Förväntad vistelsetid,
Admission Service Unit Type,Typ av entrétjänstenhet,
Healthcare Practitioner (Primary),Sjukvårdspersonal (primär),
Healthcare Practitioner (Secondary),Sjukvårdare (sekundär),
Admission Instruction,Antagningsinstruktion,
Chief Complaint,Chefsklagomål,
Medications,Läkemedel,
Investigations,Undersökningar,
Discharge Detials,Avlägsnande av detials,
Discharge Ordered Date,Utsläppsbeställt datum,
Discharge Instructions,Instruktioner för urladdning,
Follow Up Date,Uppföljningsdatum,
Discharge Notes,Anvisningar om utsläpp,
Processing Inpatient Discharge,Bearbetar utskrivning av slutenvård,
Processing Patient Admission,Behandlar patientintag,
Check-in time cannot be greater than the current time,Incheckningstiden kan inte vara längre än den aktuella tiden,
Process Transfer,Processöverföring,
HLC-LAB-.YYYY.-,HLC-LAB-.YYYY.-,
Expected Result Date,Förväntat resultatdatum,
Expected Result Time,Förväntad resultattid,
Printed on,Tryckt på,
Requesting Practitioner,Begärande utövare,
Requesting Department,Begärande avdelning,
Employee (Lab Technician),Anställd (labtekniker),
Lab Technician Name,Labteknikerns namn,
Lab Technician Designation,Labteknikerbeteckning,
Compound Test Result,Sammansatt testresultat,
Organism Test Result,Organism Test Resultat,
Sensitivity Test Result,Känslighetstestresultat,
Worksheet Print,Kalkylarkutskrift,
Worksheet Instructions,Instruktioner för arbetsblad,
Result Legend Print,Resultat Legend Print,
Print Position,Utskriftsposition,
Both,Både,
Result Legend,Resultatförklaring,
Lab Tests,Labtest,
No Lab Tests found for the Patient {0},Inga laboratorietester hittades för patienten {0},
"Did not send SMS, missing patient mobile number or message content.","Skickade inte SMS, saknade patientens mobilnummer eller meddelandeinnehåll.",
No Lab Tests created,Inga laboratorietester skapades,
Creating Lab Tests...,Skapa labtester ...,
Lab Test Group Template,Lab Test Group Mall,
Add New Line,Lägg till ny rad,
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>Singel</b> : Resultat som bara kräver en enda inmatning.<br> <b>Förening</b> : Resultat som kräver flera händelseingångar.<br> <b>Beskrivande</b> : Tester som har flera resultatkomponenter med manuell resultatinmatning.<br> <b>Grupperad</b> : Testmallar som är en grupp andra testmallar.<br> <b>Inget resultat</b> : Tester utan resultat, kan beställas och faktureras men inget labtest skapas. t.ex. Delprov för grupperade resultat",
"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ",Om det inte är markerat kommer artikeln inte att finnas tillgänglig i fakturor för fakturering men kan användas vid skapande av grupptest.,
Description ,Beskrivning,
Descriptive Test,Beskrivande test,
Group Tests,Grupptest,
Instructions to be printed on the worksheet,Instruktioner som ska skrivas ut på kalkylbladet,
"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",Information för att enkelt tolka testrapporten kommer att skrivas ut som en del av Lab Test-resultatet.,
Normal Test Result,Normalt testresultat,
Secondary UOM Result,Sekundärt UOM-resultat,
Italic,Kursiv,
Underline,Understrykning,
Organism,Organism,
Organism Test Item,Organism Test objekt,
Colony Population,Kolonibefolkning,
Colony UOM,Colony UOM,
Tobacco Consumption (Past),Tobaksförbrukning (tidigare),
Tobacco Consumption (Present),Tobaksförbrukning (nuvarande),
Alcohol Consumption (Past),Alkoholkonsumtion (tidigare),
Alcohol Consumption (Present),Alkoholkonsumtion (nuvarande),
Billing Item,Faktureringsartikel,
Medical Codes,Medicinska koder,
Clinical Procedures,Kliniska procedurer,
Order Admission,Beställ entré,
Scheduling Patient Admission,Schemaläggning av patientintag,
Order Discharge,Beställ urladdning,
Sample Details,Exempel på detaljer,
Collected On,Samlad på,
No. of prints,Antal tryck,
Number of prints required for labelling the samples,Antal tryck som krävs för märkning av proverna,
HLC-VTS-.YYYY.-,HLC-VTS-.YYYY.-,
Payroll Cost Center,Lönekostnadsställe,
Approvers,Omstridda,
The first Approver in the list will be set as the default Approver.,Den första godkännaren i listan kommer att ställas in som standard godkännare.,
Shift Request Approver,Skiftbegäran godkännare,
Provident Fund Account,Försäkringskassakonto,
MICR Code,MICR-kod,
Repay unclaimed amount from salary,Återbetala obefogat belopp från lönen,
Deduction from salary,Avdrag från lön,
If this is not checked the loan by default will be considered as a Demand Loan,Om detta inte är markerat kommer lånet som standard att betraktas som ett efterfrågelån,
This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Detta konto används för bokning av återbetalningar av lån från låntagaren och för utbetalning av lån till låntagaren,
This account is capital account which is used to allocate capital for loan disbursal account ,Det här kontot är ett kapitalkonto som används för att fördela kapital för lånekonto,
This account will be used for booking loan interest accruals,Det här kontot kommer att användas för bokning av låneräntor,
This account will be used for booking penalties levied due to delayed repayments,Det här kontot kommer att användas för bokning av böter på grund av försenad återbetalning,
Variant BOM,Variant BOM,
Template Item,Mallobjekt,
Select template item,Välj mallobjekt,
Select variant item code for the template item {0},Välj variantkod för mallobjektet {0},
Downtime Entry,Driftstopp,
DT-,DT-,
Workstation / Machine,Arbetsstation / maskin,
Operator,Operatör,
In Mins,In Mins,
Downtime Reason,Driftsstopp Anledning,
Stop Reason,Sluta resonera,
Excessive machine set up time,För hög maskininställningstid,
Unplanned machine maintenance,Oplanerat maskinunderhåll,
On-machine press checks,Presskontroller på maskinen,
Machine operator errors,Fel på maskinoperatören,
Machine malfunction,Maskinfel,
Electricity down,El nere,
Operation Row Number,Operation radnummer,
Operation {0} added multiple times in the work order {1},Åtgärd {0} har lagts till flera gånger i arbetsordern {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.",Om det är markerat kan flera material användas för en enda arbetsorder. Detta är användbart om en eller flera tidskrävande produkter tillverkas.,
Backflush Raw Materials,Backflush råvaror,
"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.","Lagerinmatningen av typen &#39;Tillverkning&#39; kallas backflush. Råvaror som konsumeras för att tillverka färdiga varor kallas backflushing.<br><br> När du skapar tillverkningsposter återflödas råvaruprodukter baserat på produktionsartikelns BOM. Om du vill att råvaruprodukter ska återflödas baserat på materialöverföringsposter som gjorts mot den arbetsordern istället, kan du ställa in det under det här fältet.",
Work In Progress Warehouse,Work In Progress Warehouse,
This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Detta lager uppdateras automatiskt i fältet Work In Progress Warehouse med arbetsorder.,
Finished Goods Warehouse,Färdigvarulager,
This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Detta lager uppdateras automatiskt i fältet Target Warehouse i arbetsordern.,
"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.",Om det är markerat uppdateras BOM-kostnaden automatiskt baserat på värderingsgrad / prislista / senaste inköpsränta för råvaror.,
Source Warehouses (Optional),Källlager (valfritt),
"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.",Systemet hämtar materialet från de valda lagren. Om det inte anges skapar systemet materialbegäran för köp.,
Lead Time,Ledtid,
PAN Details,PAN-detaljer,
Create Customer,Skapa kund,
Invoicing,Fakturering,
Enable Auto Invoicing,Aktivera automatisk fakturering,
Send Membership Acknowledgement,Skicka bekräftelse för medlemskap,
Send Invoice with Email,Skicka faktura med e-post,
Membership Print Format,Medlemskapets utskriftsformat,
Invoice Print Format,Fakturas utskriftsformat,
Revoke <Key></Key>,Återkalla&lt;Key&gt;&lt;/Key&gt;,
You can learn more about memberships in the manual. ,Du kan lära dig mer om medlemskap i handboken.,
ERPNext Docs,ERPNext Dokument,
Regenerate Webhook Secret,Återskapa Webhook Secret,
Generate Webhook Secret,Skapa Webhook Secret,
Copy Webhook URL,Kopiera Webhook URL,
Linked Item,Länkad artikel,
Feedback By,Feedback av,
Manufacturing Section,Tillverkningssektionen,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ",Som standard är kundnamnet inställt enligt det angivna fullständiga namnet. Om du vill att kunder ska namnges av a,
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Konfigurera standardprislistan när du skapar en ny försäljningstransaktion. Varupriser hämtas från denna prislista.,
"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.",Om det här alternativet är konfigurerat &#39;Ja&#39; kommer ERPNext att hindra dig från att skapa en försäljningsfaktura eller leveransnot utan att först skapa en försäljningsorder. Denna konfiguration kan åsidosättas för en viss kund genom att aktivera kryssrutan &quot;Tillåt försäljning av fakturor utan kundorder&quot; i kundmastern.,
"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.",Om det här alternativet är konfigurerat &#39;Ja&#39; kommer ERPNext att hindra dig från att skapa en försäljningsfaktura utan att först skapa en leveransnot. Denna konfiguration kan åsidosättas för en viss kund genom att aktivera kryssrutan &quot;Tillåt försäljning av fakturor utan leveransnot&quot; i kundmastern.,
Default Warehouse for Sales Return,Standardlager för försäljningsretur,
Default In Transit Warehouse,Standard i transiteringslagret,
Enable Perpetual Inventory For Non Stock Items,Aktivera ständig inventering för varor som inte finns i lager,
HRA Settings,HRA-inställningar,
Basic Component,Grundläggande komponent,
HRA Component,HRA-komponent,
Arrear Component,Förskjut komponent,
Please enter the company name to confirm,Ange företagsnamnet för att bekräfta,
Quotation Lost Reason Detail,Offert förlorad anledning detalj,
Enable Variants,Aktivera varianter,
Save Quotations as Draft,Spara offert som utkast,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.YYYY.-,
Please Select a Customer,Välj en kund,
Against Delivery Note Item,Mot leveransnota,
Is Non GST ,Är icke GST,
Image Description,Bildbeskrivning,
Transfer Status,Överföringsstatus,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
Track this Purchase Receipt against any Project,Spåra detta köpkvitto mot något projekt,
Please Select a Supplier,Välj en leverantör,
Add to Transit,Lägg till i kollektivtrafik,
Set Basic Rate Manually,Ställ in grundfrekvens manuellt,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ",Som standard är artikelnamnet inställt enligt den angivna artikelkoden. Om du vill att objekt ska namnges av a,
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Ange ett standardlager för lagertransaktioner. Detta hämtas till standardlagret i artikelmastern.,
"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.",Detta gör att lagerföremål kan visas i negativa värden. Att använda detta alternativ beror på ditt användningsfall. Med det här alternativet avmarkerat varnar systemet innan det hindrar en transaktion som orsakar negativt lager.,
Choose between FIFO and Moving Average Valuation Methods. Click ,Välj mellan FIFO och metod för rörlig genomsnittlig värdering. Klick,
 to know more about them.,att veta mer om dem.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Visa fältet &quot;Skanna streckkod&quot; ovanför varje underordnat bord för att enkelt infoga objekt.,
"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.","Serienummer för lager kommer att ställas in automatiskt baserat på de artiklar som anges baserat på först in först ut i transaktioner som inköps- / försäljningsfakturor, leveransnoteringar etc.",
"If blank, parent Warehouse Account or company default will be considered in transactions",Om det är tomt kommer överordnat lager konto eller företagets standard att beaktas i transaktioner,
Service Level Agreement Details,Detaljer om servicenivåavtal,
Service Level Agreement Status,Statusnivå för servicenivåavtal,
On Hold Since,På vänt sedan,
Total Hold Time,Total hålltid,
Response Details,Svarsinformation,
Average Response Time,Genomsnittlig svarstid,
User Resolution Time,Användarens upplösningstid,
SLA is on hold since {0},SLA är i väntan sedan {0},
Pause SLA On Status,Pausa SLA i status,
Pause SLA On,Pausa SLA på,
Greetings Section,Hälsningsavsnitt,
Greeting Title,Hälsningstitel,
Greeting Subtitle,Hälsning Undertext,
Youtube ID,Youtube-ID,
Youtube Statistics,Youtube-statistik,
Views,Visningar,
Dislikes,Ogillar inte,
Video Settings,Videoinställningar,
Enable YouTube Tracking,Aktivera YouTube-spårning,
30 mins,30 minuter,
1 hr,1 timme,
6 hrs,6 timmar,
Patient Progress,Patientens framsteg,
Targetted,Riktad,
Score Obtained,Poäng erhålls,
Sessions,Sessioner,
Average Score,Medelpoäng,
Select Assessment Template,Välj bedömningsmall,
 out of ,ut ur,
Select Assessment Parameter,Välj bedömningsparameter,
Gender: ,Kön:,
Contact: ,Kontakt:,
Total Therapy Sessions: ,Totala terapisessioner:,
Monthly Therapy Sessions: ,Månadsbehandlingsterapier:,
Patient Profile,Patientprofil,
Point Of Sale,Försäljningsstället,
Email sent successfully.,E-postmeddelandet skickades.,
Search by invoice id or customer name,Sök efter faktura-ID eller kundnamn,
Invoice Status,Fakturastatus,
Filter by invoice status,Filtrera efter fakturastatus,
Select item group,Välj artikelgrupp,
No items found. Scan barcode again.,Inga föremål hittades. Skanna streckkoden igen.,
"Search by customer name, phone, email.","Sök efter kundnamn, telefon, e-post.",
Enter discount percentage.,Ange rabattprocent.,
Discount cannot be greater than 100%,Rabatten får inte vara större än 100%,
Enter customer's email,Ange kundens e-post,
Enter customer's phone number,Ange kundens telefonnummer,
Customer contact updated successfully.,Kundkontakten uppdaterades.,
Item will be removed since no serial / batch no selected.,Objekt kommer att tas bort eftersom ingen serie / batch-nr har valts.,
Discount (%),Rabatt (%),
You cannot submit the order without payment.,Du kan inte skicka ordern utan betalning.,
You cannot submit empty order.,Du kan inte skicka tom beställning.,
To Be Paid,Att bli betald,
Create POS Opening Entry,Skapa POS-öppningspost,
Please add Mode of payments and opening balance details.,Vänligen lägg till betalningssätt och öppningsbalansinformation.,
Toggle Recent Orders,Växla senaste beställningar,
Save as Draft,Spara som utkast,
You must add atleast one item to save it as draft.,Du måste lägga till minst ett objekt för att spara det som utkast.,
There was an error saving the document.,Det gick inte att spara dokumentet.,
You must select a customer before adding an item.,Du måste välja en kund innan du lägger till en artikel.,
Please Select a Company,Välj ett företag,
Active Leads,Aktiva Leads,
Please Select a Company.,Välj ett företag.,
BOM Operations Time,BOM-driftstid,
BOM ID,BOM-ID,
BOM Item Code,BOM artikelkod,
Time (In Mins),Tid (i minuter),
Sub-assembly BOM Count,Delmonterad BOM-räkning,
View Type,Visa typ,
Total Delivered Amount,Totalt levererat belopp,
Downtime Analysis,Analys av stillestånd,
Machine,Maskin,
Downtime (In Hours),Stopptid (i timmar),
Employee Analytics,Anställdsanalys,
"""From date"" can not be greater than or equal to ""To date""",&quot;Från datum&quot; kan inte vara större än eller lika med &quot;Till dags dato&quot;,
Exponential Smoothing Forecasting,Exponentiell utjämningsprognosering,
First Response Time for Issues,Första svarstiden för problem,
First Response Time for Opportunity,Första svarstiden för möjligheter,
Depreciatied Amount,Avskrivet belopp,
Period Based On,Period baserat på,
Date Based On,Datum baserat på,
{0} and {1} are mandatory,{0} och {1} är obligatoriska,
Consider Accounting Dimensions,Överväg redovisningsdimensioner,
Reserved Quantity for Production,Reserverat antal för produktion,
Projected Quantity,Projicerad mängd,
 Total Sales Amount,Totalt försäljningsbelopp,
Job Card Summary,Sammanställning av jobbkort,
Id,Id,
Time Required (In Mins),Tid som krävs (i minuter),
From Posting Date,Från bokföringsdatum,
To Posting Date,Till bokföringsdatum,
No records found,Inga uppgifter funna,
Customer/Lead Name,Kund / Lead-namn,
Production Planning Report,Produktionsplaneringsrapport,
Order Qty,orderkvantitet,
Raw Material Code,Råvarukod,
Raw Material Name,Råvarunamn,
Allotted Qty,Tilldelat antal,
Expected Arrival Date,Förväntat ankomstdatum,
Arrival Quantity,Ankomstmängd,
Raw Material Warehouse,Råvarulager,
Order By,Sortera efter,
Include Sub-assembly Raw Materials,Inkludera undermonterade råvaror,
Program wise Fee Collection,Programvis avgift,
Fees Collected,Avgifter samlas in,
Project Summary,Projekt sammanfattning,
Total Tasks,Totalt antal uppgifter,
Tasks Completed,Uppgifterna har slutförts,
Tasks Overdue,Uppgifter försenade,
Completion,Komplettering,
Purchase Order Analysis,Inköpsorderanalys,
From and To Dates are required.,Från och till datum krävs.,
To Date cannot be before From Date.,Till datum kan inte vara före från datum.,
Qty to Bill,Antal till Bill,
Group by Purchase Order,Gruppera efter inköpsorder,
 Purchase Value,Anskaffningsvärde,
Total Received Amount,Totalt mottaget belopp,
Quality Inspection Summary,Sammanfattning av kvalitetsinspektion,
 Quoted Amount,Citerat belopp,
Lead Time (Days),Ledtid (dagar),
Include Expired,Inkludera utgången,
Requested Items to Order and Receive,Begärda artiklar att beställa och ta emot,
Sales Order Analysis,Analys av försäljningsorder,
Amount Delivered,Leveransbelopp,
Delay (in Days),Fördröjning (i dagar),
Group by Sales Order,Gruppera efter försäljningsorder,
 Sales Value,Försäljningsvärde,
Stock Qty vs Serial No Count,Antal i lager jämfört med serie nr Antal,
Serial No Count,Serienummer,
Work Order Summary,Sammanfattning av arbetsorder,
Produce Qty,Producera antal,
Lead Time (in mins),Ledtid (i minuter),
Charts Based On,Diagram baserade på,
YouTube Interactions,YouTube-interaktioner,
Published Date,Publiceringsdatum,
Barnch,Barnch,
Select a Company,Välj ett företag,
Opportunity {0} created,Möjlighet {0} skapad,
Kindly select the company first,Vänligen välj företaget först,
Please enter From Date and To Date to generate JSON,Ange Från datum och datum för att skapa JSON,
Download DATEV File,Ladda ner DATEV-fil,
Numero has not set in the XML file,Numero har inte ställts in i XML-filen,
Inward Supplies(liable to reverse charge),Innerförnödenheter (omvänd avgift),
This is based on the course schedules of this Instructor,Detta baseras på kursplanerna för denna instruktör,
Course and Assessment,Kurs och bedömning,
Course {0} has been added to all the selected programs successfully.,Kurs {0} har lagts till i alla valda program framgångsrikt.,
Programs updated,Program uppdaterade,
Program and Course,Program och kurs,
{0} or {1} is mandatory,{0} eller {1} är obligatoriskt,
Mandatory Fields,Obligatoriska fält,
Student {0}: {1} does not belong to Student Group {2},Student {0}: {1} tillhör inte studentgruppen {2},
Student Attendance record {0} already exists against the Student {1},Studentdeltagareposten {0} finns redan mot studenten {1},
Course and Fee,Kurs och avgift,
Not eligible for the admission in this program as per Date Of Birth,Inte berättigad till antagning i detta program enligt födelsedatum,
Topic {0} has been added to all the selected courses successfully.,Ämnet {0} har lagts till i alla valda kurser.,
Courses updated,Kurser uppdaterade,
{0} {1} has been added to all the selected topics successfully.,{0} {1} har lagts till i alla valda ämnen.,
Topics updated,Ämnen uppdaterade,
Academic Term and Program,Akademisk termin och program,
Please remove this item and try to submit again or update the posting time.,Ta bort det här objektet och försök att skicka in det igen eller uppdatera postningstiden.,
Failed to Authenticate the API key.,Det gick inte att autentisera API-nyckeln.,
Invalid Credentials,Ogiltiga uppgifter,
URL can only be a string,URL kan bara vara en sträng,
"Here is your webhook secret, this will be shown to you only once.","Här är din webbhookhemlighet, den här visas bara en gång.",
The payment for this membership is not paid. To generate invoice fill the payment details,Betalningen för detta medlemskap betalas inte. För att generera faktura fyll i betalningsuppgifterna,
An invoice is already linked to this document,En faktura är redan länkad till detta dokument,
No customer linked to member {},Ingen kund länkad till medlem {},
You need to set <b>Debit Account</b> in Membership Settings,Du måste ange <b>betalkonto</b> i medlemsinställningar,
You need to set <b>Default Company</b> for invoicing in Membership Settings,Du måste ange <b>standardföretag</b> för fakturering i medlemsinställningar,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Du måste aktivera <b>Skicka bekräftelsemeddelande</b> i medlemsinställningar,
Error creating membership entry for {0},Fel vid skapande av medlemskapspost för {0},
A customer is already linked to this Member,En kund är redan länkad till den här medlemmen,
End Date must not be lesser than Start Date,Slutdatum får inte vara lägre än startdatum,
Employee {0} already has Active Shift {1}: {2},Anställd {0} har redan Active Shift {1}: {2},
 from {0},från {0},
 to {0},till {0},
Please set {0} for the Employee or for Department: {1},Ange {0} för den anställde eller för avdelningen: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Onboarding för anställda: {0} är redan för jobbsökande: {1},
Asset Value Analytics,Analys av tillgångsvärde,
Category-wise Asset Value,Kategorimässigt tillgångsvärde,
Total Assets,Totala tillgångar,
New Assets (This Year),Nya tillgångar (i år),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Rad nr {}: Avskrivningsdatum bör inte vara lika med tillgängligt för användningsdatum.,
Incorrect Date,Fel datum,
Invalid Gross Purchase Amount,Ogiltigt bruttoköpsbelopp,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Det finns aktivt underhåll eller reparationer mot tillgången. Du måste slutföra alla innan du avbryter tillgången.,
% Complete,% Komplett,
Back to Course,Tillbaka till banan,
Finish Topic,Avsluta ämnet,
Mins,Min,
by,förbi,
Back to,Tillbaka till,
Enrolling...,Anmäler ...,
You have successfully enrolled for the program ,Du har registrerat dig för programmet,
Enrolled,Inskriven,
Watch Intro,Se Intro,
We're here to help!,Vi är här för att hjälpa!,
Frequently Read Articles,Läs artiklar ofta,
Please set a default company address,Ange en standardadress för företaget,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} är inte ett giltigt tillstånd! Sök efter skrivfel eller ange ISO-koden för ditt tillstånd.,
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,Fel uppstod vid analys av kontoplan: Se till att inga två konton har samma namn,
Plaid invalid request error,Felaktig ogiltig begäran fel,
Please check your Plaid client ID and secret values,Kontrollera ditt Plaid-klient-ID och hemliga värden,
Bank transaction creation error,Fel vid skapande av banktransaktioner,
Unit of Measurement,Måttenhet,
Fiscal Year {0} Does Not Exist,Räkenskapsåret {0} existerar inte,
Row # {0}: Returned Item {1} does not exist in {2} {3},Rad # {0}: Returnerat objekt {1} finns inte i {2} {3},
Valuation type charges can not be marked as Inclusive,Avgifter för värderingstyp kan inte markeras som inkluderande,
You do not have permissions to {} items in a {}.,Du har inte behörighet att {} objekt i en {}.,
Insufficient Permissions,Otillräckliga behörigheter,
You are not allowed to update as per the conditions set in {} Workflow.,Du får inte uppdatera enligt villkoren i {} Arbetsflöde.,
Expense Account Missing,Utgiftskonto saknas,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} är inte ett giltigt värde för attribut {1} för artikel {2}.,
Invalid Value,Ogiltigt värde,
The value {0} is already assigned to an existing Item {1}.,Värdet {0} har redan tilldelats en befintlig artikel {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","För att fortsätta med att redigera detta attributvärde, aktivera {0} i Inställningar för artikelvariant.",
Edit Not Allowed,Redigering ej tillåten,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Rad # {0}: Artikel {1} har redan tagits emot helt i inköpsordern {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},Du kan inte skapa eller avbryta några bokföringsposter med under den stängda redovisningsperioden {0},
POS Invoice should have {} field checked.,POS-fakturan ska ha {} kontrollerat.,
Invalid Item,Ogiltigt objekt,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Rad nr {}: Du kan inte lägga till postkvantiteter i en returfaktura. Ta bort artikeln {} för att slutföra returen.,
The selected change account {} doesn't belongs to Company {}.,Det valda ändringskontot {} tillhör inte företaget {}.,
Atleast one invoice has to be selected.,Åtminstone en faktura måste väljas.,
Payment methods are mandatory. Please add at least one payment method.,Betalningsmetoder är obligatoriska. Lägg till minst en betalningsmetod.,
Please select a default mode of payment,Välj ett standardbetalningssätt,
You can only select one mode of payment as default,Du kan bara välja ett betalningssätt som standard,
Missing Account,Saknat konto,
Customers not selected.,Kunder har inte valts.,
Statement of Accounts,Redovisning,
Ageing Report Based On ,Åldrande rapport baserad på,
Please enter distributed cost center,Ange distribuerat kostnadsställe,
Total percentage allocation for distributed cost center should be equal to 100,Den totala procentuella tilldelningen för distribuerade kostnadsställen bör vara lika med 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,Det går inte att aktivera distribuerat kostnadscenter för ett kostnadscenter som redan har tilldelats i ett annat distribuerat kostnadscenter,
Parent Cost Center cannot be added in Distributed Cost Center,Föräldrakostplats kan inte läggas till i distribuerad kostnad,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,Ett distribuerat kostnadscenter kan inte läggas till i fördelningstabellen för distribuerat kostnadscenter.,
Cost Center with enabled distributed cost center can not be converted to group,Kostnadscenter med aktiverat distribuerat kostnadsställe kan inte konverteras till grupp,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,Kostnadscenter som redan är allokerat i ett distribuerat kostnadscenter kan inte konverteras till grupp,
Trial Period Start date cannot be after Subscription Start Date,Testperiodens startdatum kan inte vara efter prenumerationsstartdatum,
Subscription End Date must be after {0} as per the subscription plan,Abonnemangets slutdatum måste vara efter {0} enligt prenumerationsplanen,
Subscription End Date is mandatory to follow calendar months,Abonnemangets slutdatum är obligatoriskt att följa kalendermånaderna,
Row #{}: POS Invoice {} is not against customer {},Rad # {}: POS-faktura {} är inte emot kund {},
Row #{}: POS Invoice {} is not submitted yet,Rad nr {}: POS-faktura {} har inte skickats in ännu,
Row #{}: POS Invoice {} has been {},Rad nr {}: POS-faktura {} har varit {},
No Supplier found for Inter Company Transactions which represents company {0},Ingen leverantör hittades för Inter Company Transactions som representerar företaget {0},
No Customer found for Inter Company Transactions which represents company {0},Ingen kund hittades för transaktioner mellan företag som representerar företaget {0},
Invalid Period,Ogiltig period,
Selected POS Opening Entry should be open.,Vald POS-öppning bör vara öppen.,
Invalid Opening Entry,Ogiltig öppningspost,
Please set a Company,Ställ ett företag,
"Sorry, this coupon code's validity has not started",Tyvärr har denna kupongkods giltighet inte startat,
"Sorry, this coupon code's validity has expired",Tyvärr har den här kupongkodens giltighet upphört att gälla,
"Sorry, this coupon code is no longer valid",Tyvärr är den här kupongkoden inte längre giltig,
For the 'Apply Rule On Other' condition the field {0} is mandatory,För villkoren &quot;Tillämpa regel på annat&quot; är fältet {0} obligatoriskt,
{1} Not in Stock,{1} Finns inte i lager,
Only {0} in Stock for item {1},Endast {0} i lager för artikel {1},
Please enter a coupon code,Ange en kupongkod,
Please enter a valid coupon code,Ange en giltig kupongkod,
Invalid Child Procedure,Ogiltigt barnförfarande,
Import Italian Supplier Invoice.,Importera italiensk leverantörsfaktura.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.",Värderingsfrekvens för artikeln {0} krävs för att göra bokföringsposter för {1} {2}.,
 Here are the options to proceed:,Här är alternativen för att fortsätta:,
"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.","Om artikeln omvandlas som en nollvärderingsfrekvens i denna post, aktivera &quot;Tillåt nollvärderingsfrekvens&quot; i {0} artikeltabellen.",
"If not, you can Cancel / Submit this entry ","Om inte, kan du avbryta / skicka denna post",
 performing either one below:,utför någon nedan:,
Create an incoming stock transaction for the Item.,Skapa en inkommande lagertransaktion för artikeln.,
Mention Valuation Rate in the Item master.,Nämn värderingsgrad i artikelmastern.,
Valuation Rate Missing,Värderingsgrad saknas,
Serial Nos Required,Serienummer krävs,
Quantity Mismatch,Kvantitetsmatchning,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Vänligen ladda om artiklar och uppdatera plocklistan för att fortsätta. För att avbryta, avbryt plocklistan.",
Out of Stock,Ej i lager,
{0} units of Item {1} is not available.,{0} enheter av artikel {1} är inte tillgängliga.,
Item for row {0} does not match Material Request,Objekt för rad {0} matchar inte materialförfrågan,
Warehouse for row {0} does not match Material Request,Lager för rad {0} matchar inte materialförfrågan,
Accounting Entry for Service,Bokföring för service,
All items have already been Invoiced/Returned,Alla artiklar har redan fakturerats / returnerats,
All these items have already been Invoiced/Returned,Alla dessa artiklar har redan fakturerats / returnerats,
Stock Reconciliations,Lageravstämningar,
Merge not allowed,Sammanfoga inte tillåtet,
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öljande raderade attribut finns i varianter men inte i mallen. Du kan antingen ta bort varianterna eller behålla attributen i mallen.,
Variant Items,Variantartiklar,
Variant Attribute Error,Variantattributfel,
The serial no {0} does not belong to item {1},Serienumret {0} tillhör inte artikeln {1},
There is no batch found against the {0}: {1},Det finns inget parti mot {0}: {1},
Completed Operation,Avslutad operation,
Work Order Analysis,Analys av arbetsorder,
Quality Inspection Analysis,Analys av kvalitetsinspektion,
Pending Work Order,Väntande arbetsorder,
Last Month Downtime Analysis,Förra månads nedetid analys,
Work Order Qty Analysis,Antal arbetsuppgifter,
Job Card Analysis,Analys av jobbkort,
Monthly Total Work Orders,Månatliga totala arbetsorder,
Monthly Completed Work Orders,Månatliga slutförda arbetsorder,
Ongoing Job Cards,Pågående jobbkort,
Monthly Quality Inspections,Månatliga kvalitetsinspektioner,
(Forecast),(Prognos),
Total Demand (Past Data),Total efterfrågan (tidigare data),
Total Forecast (Past Data),Total prognos (tidigare data),
Total Forecast (Future Data),Total prognos (framtida data),
Based On Document,Baserat på dokument,
Based On Data ( in years ),Baserat på data (i år),
Smoothing Constant,Utjämning konstant,
Please fill the Sales Orders table,Fyll i tabellen Försäljningsorder,
Sales Orders Required,Försäljningsorder krävs,
Please fill the Material Requests table,Fyll i tabellen för materialförfrågningar,
Material Requests Required,Materialförfrågningar krävs,
Items to Manufacture are required to pull the Raw Materials associated with it.,Föremål som ska tillverkas krävs för att dra de råvaror som är associerade med den.,
Items Required,Objekt krävs,
Operation {0} does not belong to the work order {1},Åtgärd {0} tillhör inte arbetsordern {1},
Print UOM after Quantity,Skriv UOM efter kvantitet,
Set default {0} account for perpetual inventory for non stock items,Ange standardkonto för {0} för bestående lager för icke-lagervaror,
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Rad # {0}: Underordnad artikel ska inte vara ett produktpaket. Ta bort objekt {1} och spara,
Credit limit reached for customer {0},Kreditgränsen har uppnåtts för kunden {0},
Could not auto create Customer due to the following missing mandatory field(s):,Kunde inte automatiskt skapa kund på grund av följande obligatoriska fält saknas:,
Please create Customer from Lead {0}.,Skapa kund från Lead {0}.,
Mandatory Missing,Obligatorisk saknas,
From Date can not be greater than To Date.,Från datum kan inte vara större än till datum.,
Row #{0}: Please enter the result value for {1},Rad # {0}: Ange resultatvärdet för {1},
Mandatory Results,Obligatoriska resultat,
Sales Invoice or Patient Encounter is required to create Lab Tests,Försäljningsfaktura eller patientmöte krävs för att skapa laboratorietester,
Insufficient Data,Otillräcklig data,
Lab Test(s) {0} created successfully,Labtest (er) {0} har skapats,
Test :,Test:,
Sample Collection {0} has been created,Exempelsamling {0} har skapats,
Normal Range: ,Normalt intervall:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Rad # {0}: Utcheckningstid kan inte vara mindre än Incheckningstid,
"Missing required details, did not create Inpatient Record","Saknade obligatoriska detaljer, skapade inte Inpatient Record",
Unbilled Invoices,Obegränsade fakturor,
Standard Selling Rate should be greater than zero.,Standardförsäljningshastigheten bör vara större än noll.,
Conversion Factor is mandatory,Conversion Factor är obligatorisk,
Row #{0}: Conversion Factor is mandatory,Rad # {0}: Omvandlingsfaktor är obligatorisk,
Sample Quantity cannot be negative or 0,Provmängden får inte vara negativ eller 0,
Invalid Quantity,Ogiltigt antal,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Ange standardvärden för kundgrupp, territorium och prislista i försäljningsinställningar",
{0} on {1},{0} den {1},
{0} with {1},{0} med {1},
Appointment Confirmation Message Not Sent,Mottagningsbekräftelsemeddelande skickades inte,
"SMS not sent, please check SMS Settings","SMS skickas inte, kontrollera SMS-inställningar",
Healthcare Service Unit Type cannot have both {0} and {1},Enhetstypen för vården kan inte ha både {0} och {1},
Healthcare Service Unit Type must allow atleast one among {0} and {1},Enhetstypen för sjukvården måste tillåta minst en bland {0} och {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Ställ in svarstid och upplösningstid för prioritet {0} i rad {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,Svarstiden för {0} prioritet i rad {1} kan inte vara längre än upplösningstid.,
{0} is not enabled in {1},{0} är inte aktiverat i {1},
Group by Material Request,Gruppera efter materialförfrågan,
Email Sent to Supplier {0},E-post skickad till leverantör {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","Åtkomsten till begäran om offert från portalen är inaktiverad. För att tillåta åtkomst, aktivera den i portalinställningar.",
Supplier Quotation {0} Created,Leverantör offert {0} Skapat,
Valid till Date cannot be before Transaction Date,Giltigt till datum kan inte vara före transaktionsdatum,
Unlink Advance Payment on Cancellation of Order,Lossa förskottsbetalning vid annullering av beställningen,
"Simple Python Expression, Example: territory != 'All Territories'","Enkelt Python-uttryck, Exempel: territorium! = &#39;Alla territorier&#39;",
Sales Contributions and Incentives,Försäljningsbidrag och incitament,
Sourced by Supplier,Hämtas av leverantör,
Total weightage assigned should be 100%.<br>It is {0},Total tilldelad vikt bör vara 100%.<br> Det är {0},
Account {0} exists in parent company {1}.,Kontot {0} finns i moderbolaget {1}.,
"To overrule this, enable '{0}' in company {1}","För att åsidosätta detta, aktivera {0} i företaget {1}",
Invalid condition expression,Ogiltigt tillståndsuttryck,
Please Select a Company First,Välj först ett företag,
Please Select Both Company and Party Type First,Välj först både företags- och festtyp,
Provide the invoice portion in percent,Ange fakturadelen i procent,
Give number of days according to prior selection,Ange antal dagar enligt tidigare val,
Email Details,E-postdetaljer,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Välj en hälsning till mottagaren. Till exempel Herr, Fru etc.",
Preview Email,Förhandsgranska e-post,
Please select a Supplier,Välj en leverantör,
Supplier Lead Time (days),Leverantörens ledtid (dagar),
"Home, Work, etc.","Hem, arbete etc.",
Exit Interview Held On,Avsluta intervjun hålls,
Sets 'Target Warehouse' in each row of the Items table.,Ställer in &#39;Target Warehouse&#39; i varje rad i tabellen Items.,
Sets 'Source Warehouse' in each row of the Items table.,Ställer in &#39;Source Warehouse&#39; i varje rad i tabellen Items.,
POS Register,POS-register,
"Can not filter based on POS Profile, if grouped by POS Profile","Kan inte filtrera baserat på POS-profil, om grupperad efter POS-profil",
"Can not filter based on Customer, if grouped by Customer","Kan inte filtrera baserat på kund, om grupperad efter kund",
"Can not filter based on Cashier, if grouped by Cashier","Kan inte filtrera baserat på Kassör, om grupperad efter Kassör",
Payment Method,Betalningsmetod,
"Can not filter based on Payment Method, if grouped by Payment Method","Kan inte filtrera baserat på betalningsmetod, om grupperad efter betalningsmetod",
Supplier Quotation Comparison,Jämförelse av leverantörsnotering,
Price per Unit (Stock UOM),Pris per enhet (lager UOM),
Group by Supplier,Gruppera efter leverantör,
Group by Item,Gruppera efter artikel,
Remember to set {field_label}. It is required by {regulation}.,Kom ihåg att ställa in {field_label}. Det krävs enligt {Regulation}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},Anmälningsdatum får inte vara före startåret för läsåret {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},Anmälningsdatum kan inte vara efter slutdatum för den akademiska termen {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},Anmälningsdatum kan inte vara före startdatumet för den akademiska termen {0},
Future Posting Not Allowed,Framtida utstationering tillåts inte,
"To enable Capital Work in Progress Accounting, ","För att aktivera Capital Work in Progress Accounting,",
you must select Capital Work in Progress Account in accounts table,du måste välja Capital Work in Progress-konto i kontotabellen,
You can also set default CWIP account in Company {},Du kan också ange standard CWIP-konto i företaget {},
The Request for Quotation can be accessed by clicking on the following button,Begäran om offert kan nås genom att klicka på följande knapp,
Regards,Hälsningar,
Please click on the following button to set your new password,Klicka på följande knapp för att ställa in ditt nya lösenord,
Update Password,Uppdatera lösenord,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Rad nr {}: Försäljningsgraden för artikeln {} är lägre än dess {}. Att sälja {} bör vara minst {},
You can alternatively disable selling price validation in {} to bypass this validation.,Du kan alternativt inaktivera validering av försäljningspris i {} för att kringgå denna validering.,
Invalid Selling Price,Ogiltigt försäljningspris,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,Adressen måste kopplas till ett företag. Lägg till en rad för företag i tabellen Länkar.,
Company Not Linked,Företaget är inte länkat,
Import Chart of Accounts from CSV / Excel files,Importera kontoplan från CSV / Excel-filer,
Completed Qty cannot be greater than 'Qty to Manufacture',Slutfört antal får inte vara större än &#39;Antal att tillverka&#39;,
"Row {0}: For Supplier {1}, Email Address is Required to send an email",Rad {0}: För leverantör {1} krävs e-postadress för att skicka ett e-postmeddelande,
"If enabled, the system will post accounting entries for inventory automatically",Om aktiverat kommer systemet att bokföra bokföringsposter för lager automatiskt,
Accounts Frozen Till Date,Konton frysta till datum,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Bokföringsposter är frusna fram till detta datum. Ingen kan skapa eller ändra poster förutom användare med rollen som anges nedan,
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Roll tillåten för att ställa in frysta konton och redigera frysta poster,
Address used to determine Tax Category in transactions,Adress som används för att bestämma 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 ","Procentandelen du får fakturera mer mot det beställda beloppet. Till exempel, om ordervärdet är $ 100 för en artikel och toleransen är satt till 10%, får du fakturera upp till $ 110",
This role is allowed to submit transactions that exceed credit limits,Denna roll har tillåtelse att skicka transaktioner som överskrider 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","Om du väljer &quot;Månader&quot; bokas ett fast belopp som uppskjuten intäkt eller kostnad för varje månad, oberoende av antalet dagar i en månad. Det kommer att värderas om uppskjuten intäkt eller kostnad inte bokförs under en hel månad",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense",Om detta inte är markerat skapas direkt GL-poster för att boka uppskjuten intäkt eller kostnad,
Show Inclusive Tax in Print,Visa inkluderande skatt i tryck,
Only select this if you have set up the Cash Flow Mapper documents,Välj bara detta om du har ställt in dokumenten för kassaflödesmappare,
Payment Channel,Betalningskanal,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Krävs inköpsorder för inköp av faktura och kvitto?,
Is Purchase Receipt Required for Purchase Invoice Creation?,Krävs inköpskvitto för att skapa faktura?,
Maintain Same Rate Throughout the Purchase Cycle,Håll samma hastighet under hela köpcykeln,
Allow Item To Be Added Multiple Times in a Transaction,Tillåt att objekt läggs till flera gånger i en transaktion,
Suppliers,Leverantörer,
Send Emails to Suppliers,Skicka e-post till leverantörer,
Select a Supplier,Välj en leverantör,
Cannot mark attendance for future dates.,Det går inte att markera närvaro för framtida datum.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},Vill du uppdatera närvaron?<br> Nuvarande: {0}<br> Frånvarande: {1},
Mpesa Settings,Mpesa-inställningar,
Initiator Name,Initiatörens namn,
Till Number,Till nummer,
Sandbox,Sandlåda,
 Online PassKey,Online PassKey,
Security Credential,Säkerhetsinformation,
Get Account Balance,Få kontosaldo,
Please set the initiator name and the security credential,Ställ in initiatorns namn och säkerhetsinformation,
Inpatient Medication Entry,Inlagd läkemedelsinträde,
HLC-IME-.YYYY.-,HLC-IME-.YYYY.-,
Item Code (Drug),Artikelkod (läkemedel),
Medication Orders,Läkemedelsorder,
Get Pending Medication Orders,Få väntande läkemedelsorder,
Inpatient Medication Orders,Läkemedelsorder för slutenvård,
Medication Warehouse,Läkemedelslager,
Warehouse from where medication stock should be consumed,Lager där läkemedelslager ska konsumeras,
Fetching Pending Medication Orders,Hämtar väntande läkemedelsorder,
Inpatient Medication Entry Detail,Inlagd detalj för läkemedelsintag,
Medication Details,Läkemedelsdetaljer,
Drug Code,Läkemedelskod,
Drug Name,Läkemedelsnamn,
Against Inpatient Medication Order,Mot beställning av läkemedel mot slutenvård,
Against Inpatient Medication Order Entry,Mot postering av läkemedel mot slutenvård,
Inpatient Medication Order,Läkemedelsorder för slutenvård,
HLC-IMO-.YYYY.-,HLC-IMO-.YYYY.-,
Total Orders,Totala beställningar,
Completed Orders,Slutförda beställningar,
Add Medication Orders,Lägg till läkemedelsorder,
Adding Order Entries,Lägga till orderposter,
{0} medication orders completed,{0} läkemedelsbeställningar slutförda,
{0} medication order completed,{0} läkemedelsordern slutförd,
Inpatient Medication Order Entry,Inlagd läkemedelsbeställning,
Is Order Completed,Är order slutförd,
Employee Records to Be Created By,Anställda som ska skapas av,
Employee records are created using the selected field,Anställdsposter skapas med det valda fältet,
Don't send employee birthday reminders,Skicka inte anställdas födelsedagspåminnelser,
Restrict Backdated Leave Applications,Begränsa daterade ansökningar om tillbaka,
Sequence ID,Sekvens-ID,
Sequence Id,Sekvens Id,
Allow multiple material consumptions against a Work Order,Tillåt flera materiella förbrukningar mot en arbetsorder,
Plan time logs outside Workstation working hours,Planera tidsloggar utanför arbetstids arbetstid,
Plan operations X days in advance,Planera operationer X dagar i förväg,
Time Between Operations (Mins),Tid mellan operationer (minuter),
Default: 10 mins,Standard: 10 minuter,
Overproduction for Sales and Work Order,Överproduktion för försäljning och arbetsorder,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Uppdatera BOM-kostnaden automatiskt via schemaläggaren, baserat på den senaste värderingsgraden / prislistan / senaste inköpsraten för råvaror",
Purchase Order already created for all Sales Order items,Inköpsorder redan skapad för alla försäljningsorder artiklar,
Select Items,Välj objekt,
Against Default Supplier,Mot standardleverantör,
Auto close Opportunity after the no. of days mentioned above,Auto stänga Möjlighet efter nej. ovan nämnda dagar,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Krävs försäljningsorder för att skapa försäljningsfaktura och leveransnot?,
Is Delivery Note Required for Sales Invoice Creation?,Krävs leveransnot för att skapa försäljningsfaktura?,
How often should Project and Company be updated based on Sales Transactions?,Hur ofta ska Project och Company uppdateras baserat på försäljningstransaktioner?,
Allow User to Edit Price List Rate in Transactions,Låt användaren redigera prislista i transaktioner,
Allow Item to Be Added Multiple Times in a Transaction,Tillåt att objekt läggs till flera gånger i en transaktion,
Allow Multiple Sales Orders Against a Customer's Purchase Order,Tillåt flera försäljningsorder mot en kunds inköpsorder,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Validera försäljningspris för artikel mot köpesats eller värderingsgrad,
Hide Customer's Tax ID from Sales Transactions,Dölj kundens skatte-ID från försäljningstransaktioner,
"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.","Procentandelen du får ta emot eller leverera mer mot den beställda kvantiteten. Till exempel, om du har beställt 100 enheter och din ersättning är 10%, får du ta emot 110 enheter.",
Action If Quality Inspection Is Not Submitted,Åtgärd om kvalitetskontroll inte lämnas in,
Auto Insert Price List Rate If Missing,Auto infoga prislista om det saknas,
Automatically Set Serial Nos Based on FIFO,Ställ in serienumren automatiskt baserat på FIFO,
Set Qty in Transactions Based on Serial No Input,Ange antal i transaktioner baserat på seriell ingen inmatning,
Raise Material Request When Stock Reaches Re-order Level,Höj materialförfrågan när lager når ombeställningsnivå,
Notify by Email on Creation of Automatic Material Request,Meddela via e-post om skapande av automatisk materialförfrågan,
Allow Material Transfer from Delivery Note to Sales Invoice,Tillåt materialöverföring från leveransnot till försäljningsfaktura,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Tillåt materialöverföring från inköpskvitto till inköpsfaktura,
Freeze Stocks Older Than (Days),Frysta lager äldre än (dagar),
Role Allowed to Edit Frozen Stock,Roll tillåtet att redigera fryst lager,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,Det odelade beloppet för betalningspost {0} är större än banktransaktionens odelade belopp,
Payment Received,Betalning mottagen,
Attendance cannot be marked outside of Academic Year {0},Närvaro kan inte markeras utanför läsåret {0},
Student is already enrolled via Course Enrollment {0},Studenten är redan inskriven via kursregistrering {0},
Attendance cannot be marked for future dates.,Närvaro kan inte markeras för framtida datum.,
Please add programs to enable admission application.,Lägg till program för att möjliggöra antagningsansökan.,
The following employees are currently still reporting to {0}:,Följande anställda rapporterar för närvarande fortfarande till {0}:,
Please make sure the employees above report to another Active employee.,Se till att de anställda ovan rapporterar till en annan aktiv anställd.,
Cannot Relieve Employee,Kan inte befria medarbetaren,
Please enter {0},Ange {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Välj en annan betalningsmetod. Mpesa stöder inte transaktioner i valutan &quot;{0}&quot;,
Transaction Error,Transaktionsfel,
Mpesa Express Transaction Error,Mpesa Express-transaktionsfel,
"Issue detected with Mpesa configuration, check the error logs for more details","Problem upptäckt med Mpesa-konfiguration, kolla felloggarna för mer information",
Mpesa Express Error,Mpesa Express-fel,
Account Balance Processing Error,Fel vid bearbetning av kontosaldo,
Please check your configuration and try again,Kontrollera din konfiguration och försök igen,
Mpesa Account Balance Processing Error,Fel vid bearbetning av Mpesa-kontosaldo,
Balance Details,Balansdetaljer,
Current Balance,Aktuellt saldo,
Available Balance,Tillgängligt Saldo,
Reserved Balance,Reserverad saldo,
Uncleared Balance,Oklarad balans,
Payment related to {0} is not completed,Betalning relaterad till {0} har inte slutförts,
Row #{}: Item Code: {} is not available under warehouse {}.,Rad nr {}: Artikelkod: {} är inte tillgänglig under lager {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Rad nr {}: Lagerkvantitet räcker inte för artikelkod: {} under lager {}. Tillgänglig kvantitet {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Rad nr {}: Välj ett serienummer och ett parti mot artikel: {} eller ta bort det för att slutföra transaktionen.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Rad nr {}: inget serienummer har valts mot artikel: {}. Välj en eller ta bort den för att slutföra transaktionen.,
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Rad nr {}: Ingen grupp vald mot artikel: {}. Välj ett parti eller ta bort det för att slutföra transaktionen.,
Payment amount cannot be less than or equal to 0,Betalningsbeloppet får inte vara mindre än eller lika med 0,
Please enter the phone number first,Ange telefonnumret först,
Row #{}: {} {} does not exist.,Rad # {}: {} {} finns inte.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Rad # {0}: {1} krävs för att skapa öppningsfakturorna {2},
You had {} errors while creating opening invoices. Check {} for more details,Du hade {} fel när du skapade öppningsfakturor. Kontrollera {} för mer information,
Error Occured,Fel uppstod,
Opening Invoice Creation In Progress,Öppna skapande av faktura pågår,
Creating {} out of {} {},Skapar {} av {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,(Serienummer: {0}) kan inte konsumeras eftersom den reserveras för fullföljande försäljningsorder {1}.,
Item {0} {1},Artikel {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,Den senaste lagertransaktionen för artikeln {0} under lagret {1} var den {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Lagertransaktioner för artikel {0} under lager {1} kan inte bokföras före denna tid.,
Posting future stock transactions are not allowed due to Immutable Ledger,Bokning av framtida lagertransaktioner är inte tillåtet på grund av Immutable Ledger,
A BOM with name {0} already exists for item {1}.,En stycklista med namnet {0} finns redan för artikeln {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Har du bytt namn på objektet? Vänligen kontakta administratör / teknisk support,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},På rad # {0}: sekvens-id {1} får inte vara mindre än föregående rad-sekvens-id {2},
The {0} ({1}) must be equal to {2} ({3}),{0} ({1}) måste vara lika med {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, slutför åtgärden {1} före operationen {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,Kan inte säkerställa leverans med serienummer eftersom artikel {0} läggs till med och utan säker leverans med serienummer,
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,Artikel {0} har inget serienummer. Endast seriliserade artiklar kan levereras baserat på serienummer,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Ingen aktiv stycklista hittades för artikeln {0}. Leverans med serienummer kan inte garanteras,
No pending medication orders found for selected criteria,Inga väntande läkemedelsbeställningar hittades för valda kriterier,
From Date cannot be after the current date.,Från datum kan inte vara efter det aktuella datumet.,
To Date cannot be after the current date.,Till datum kan inte vara efter det aktuella datumet.,
From Time cannot be after the current time.,Från tid kan inte vara efter aktuell tid.,
To Time cannot be after the current time.,Till tid kan inte vara efter den aktuella tiden.,
Stock Entry {0} created and ,Lagerpost {0} skapat och,
Inpatient Medication Orders updated successfully,Medicinska beställningar för slutenvård har uppdaterats,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Rad {0}: Det går inte att skapa post för läkemedel mot slutenvård mot avbruten beställning av läkemedel för slutenvård {1},
Row {0}: This Medication Order is already marked as completed,Rad {0}: Denna läkemedelsorder är redan markerad som slutförd,
Quantity not available for {0} in warehouse {1},Antal som inte är tillgängligt för {0} i lager {1},
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Aktivera Tillåt negativt lager i lagerinställningar eller skapa lagerinmatning för att fortsätta.,
No Inpatient Record found against patient {0},Ingen slutenvårdspost hittades mot patient {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Det finns redan ett läkemedelsbeställning för slutenvård {0} mot patientmötet {1}.,
Allow In Returns,Tillåt Returer,
Hide Unavailable Items,Dölj otillgängliga objekt,
Apply Discount on Discounted Rate,Tillämpa rabatt på rabatterat pris,
Therapy Plan Template,Terapiplanmall,
Fetching Template Details,Hämtar mallinformation,
Linked Item Details,Länkade artikeldetaljer,
Therapy Types,Terapityper,
Therapy Plan Template Detail,Behandlingsplan mall detalj,
Non Conformance,Bristande överensstämmelse,
Process Owner,Processägare,
Corrective Action,Korrigerande åtgärder,
Preventive Action,Förebyggande åtgärd,
Problem,Problem,
Responsible,Ansvarig,
Completion By,Slutförande av,
Process Owner Full Name,Processägarens fullständiga namn,
Right Index,Rätt index,
Left Index,Vänster index,
Sub Procedure,Underförfarande,
Passed,passerade,
Print Receipt,Skriv ut kvitto,
Edit Receipt,Redigera kvitto,
Focus on search input,Fokusera på sökinmatning,
Focus on Item Group filter,Fokusera på artikelgruppsfilter,
Checkout Order / Submit Order / New Order,Kassa Order / Skicka order / Ny order,
Add Order Discount,Lägg till beställningsrabatt,
Item Code: {0} is not available under warehouse {1}.,Artikelkod: {0} finns inte under lager {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Serienummer är inte tillgängligt för artikel {0} under lager {1}. Försök byta lager.,
Fetched only {0} available serial numbers.,Hämtade bara {0} tillgängliga serienummer.,
Switch Between Payment Modes,Växla mellan betalningssätt,
Enter {0} amount.,Ange {0} belopp.,
You don't have enough points to redeem.,Du har inte tillräckligt med poäng för att lösa in.,
You can redeem upto {0}.,Du kan lösa in upp till {0}.,
Enter amount to be redeemed.,Ange belopp som ska lösas in.,
You cannot redeem more than {0}.,Du kan inte lösa in mer än {0}.,
Open Form View,Öppna formulärvy,
POS invoice {0} created succesfully,POS-faktura {0} skapades framgångsrikt,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Lagerkvantitet räcker inte för artikelkod: {0} under lager {1}. Tillgängligt antal {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Serienummer: {0} har redan överförts till en annan POS-faktura.,
Balance Serial No,Balans Serienr,
Warehouse: {0} does not belong to {1},Lager: {0} tillhör inte {1},
Please select batches for batched item {0},Välj satser för satsvis artikel {0},
Please select quantity on row {0},Välj antal på rad {0},
Please enter serial numbers for serialized item {0},Ange serienummer för serienummer {0},
Batch {0} already selected.,Batch {0} har redan valts.,
Please select a warehouse to get available quantities,Välj ett lager för att få tillgängliga kvantiteter,
"For transfer from source, selected quantity cannot be greater than available quantity",För överföring från källa kan vald kvantitet inte vara större än tillgänglig kvantitet,
Cannot find Item with this Barcode,Det går inte att hitta objekt med denna streckkod,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} är obligatoriskt. Valutaväxlingspost skapas kanske inte för {1} till {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} har skickat tillgångar kopplade till den. Du måste avbryta tillgångarna för att skapa köpretur.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,Det går inte att avbryta detta dokument eftersom det är länkat till inlämnad tillgång {0}. Avbryt det för att fortsätta.,
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Rad nr {}: Serienr. {} Har redan överförts till en annan POS-faktura. Välj giltigt serienummer.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Rad nr {}: Serienummer. {} Har redan överförts till en annan POS-faktura. Välj giltigt serienummer.,
Item Unavailable,Artikeln är inte tillgänglig,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Rad nr {}: Serienr {} kan inte returneras eftersom den inte transakterades i originalfakturan {},
Please set default Cash or Bank account in Mode of Payment {},Ange standard kontant- eller bankkonto i betalningssätt {},
Please set default Cash or Bank account in Mode of Payments {},Ange standard kontant- eller bankkonto i betalningssätt {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Se till att {} kontot är ett balansräkningskonto. Du kan ändra föräldrakontot till ett balansräkningskonto eller välja ett annat konto.,
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Se till att {} kontot är ett betalbart konto. Ändra kontotyp till Betalbar eller välj ett annat konto.,
Row {}: Expense Head changed to {} ,Rad {}: Kostnadshuvud ändrat till {},
because account {} is not linked to warehouse {} ,eftersom konto {} inte är länkat till lager {},
or it is not the default inventory account,eller så är det inte standardlagerkontot,
Expense Head Changed,Kostnadshuvud ändrat,
because expense is booked against this account in Purchase Receipt {},eftersom kostnad bokförs mot detta konto i inköpskvittot {},
as no Purchase Receipt is created against Item {}. ,eftersom inget köpskvitto skapas mot artikel {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Detta görs för att hantera redovisning av fall när inköpskvitto skapas efter inköpsfaktura,
Purchase Order Required for item {},Inköpsorder krävs för artikel {},
To submit the invoice without purchase order please set {} ,"För att skicka fakturan utan inköpsorder, ställ in {}",
as {} in {},som i {},
Mandatory Purchase Order,Obligatorisk inköpsorder,
Purchase Receipt Required for item {},Inköpskvitton krävs för artikel {},
To submit the invoice without purchase receipt please set {} ,"För att skicka fakturan utan köpskvitto, ställ in {}",
Mandatory Purchase Receipt,Obligatoriskt inköpskvitto,
POS Profile {} does not belongs to company {},POS-profil {} tillhör inte företaget {},
User {} is disabled. Please select valid user/cashier,Användaren {} är inaktiverad. Välj giltig användare / kassör,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Rad nr {}: Originalfaktura {} för returfaktura {} är {}.,
Original invoice should be consolidated before or along with the return invoice.,Originalfakturan ska konsolideras före eller tillsammans med returfakturan.,
You can add original invoice {} manually to proceed.,Du kan lägga till originalfakturan {} manuellt för att fortsätta.,
Please ensure {} account is a Balance Sheet account. ,Se till att {} kontot är ett balansräkningskonto.,
You can change the parent account to a Balance Sheet account or select a different account.,Du kan ändra föräldrakontot till ett balansräkningskonto eller välja ett annat konto.,
Please ensure {} account is a Receivable account. ,Se till att {} kontot är ett mottagbart konto.,
Change the account type to Receivable or select a different account.,Ändra kontotyp till Mottagbar eller välj ett annat konto.,
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} kan inte annulleras eftersom intjänade lojalitetspoäng har lösts in. Avbryt först {} Nej {},
already exists,existerar redan,
POS Closing Entry {} against {} between selected period,POS-avslutningspost {} mot {} mellan vald period,
POS Invoice is {},POS-faktura är {},
POS Profile doesn't matches {},POS-profil matchar inte {},
POS Invoice is not {},POS-faktura är inte {},
POS Invoice isn't created by user {},POS-faktura skapas inte av användaren {},
Row #{}: {},Rad #{}: {},
Invalid POS Invoices,Ogiltiga POS-fakturor,
Please add the account to root level Company - {},Lägg till kontot i rotnivåföretaget - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA",När du skapade ett konto för Child Company {0} hittades inte föräldrakontot {1}. Skapa föräldrakontot i motsvarande COA,
Account Not Found,Konto inte funnet,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.",När du skapade ett konto för Child Company {0} hittades föräldrakontot {1} som ett huvudkontokonto.,
Please convert the parent account in corresponding child company to a group account.,Konvertera moderbolaget i motsvarande barnföretag till ett gruppkonto.,
Invalid Parent Account,Ogiltigt föräldrakonto,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.",Att byta namn på det är endast tillåtet via moderbolaget {0} för att undvika ojämnhet.,
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.",Om du {0} {1} kvantiteter av artikeln {2} kommer schemat {3} att tillämpas på artikeln.,
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.",Om du {0} {1} värderar artikel {2} kommer schemat {3} att tillämpas på artikeln.,
"As the field {0} is enabled, the field {1} is mandatory.",Eftersom fältet {0} är aktiverat är fältet {1} obligatoriskt.,
"As the field {0} is enabled, the value of the field {1} should be more than 1.",Eftersom fältet {0} är aktiverat bör värdet för fältet {1} vara mer än 1.,
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},Det går inte att leverera serienummer {0} av artikeln {1} eftersom den är reserverad för fullständig försäljningsorder {2},
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","Försäljningsorder {0} har en reservation för artikeln {1}, du kan bara leverera reserverad {1} mot {0}.",
{0} Serial No {1} cannot be delivered,{0} Serienummer {1} kan inte levereras,
Row {0}: Subcontracted Item is mandatory for the raw material {1},Rad {0}: Underleverantörsobjekt är obligatoriskt för råvaran {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.",Eftersom det finns tillräckligt med råvaror krävs inte materialförfrågan för lager {0}.,
" If you still want to proceed, please enable {0}.",Om du fortfarande vill fortsätta aktiverar du {0}.,
The item referenced by {0} - {1} is already invoiced,Varan som {0} - {1} refererar till faktureras redan,
Therapy Session overlaps with {0},Terapisessionen överlappar med {0},
Therapy Sessions Overlapping,Terapisessioner överlappar varandra,
Therapy Plans,Terapiplaner,
"Item Code, warehouse, quantity are required on row {0}","Artikelkod, lager, kvantitet krävs på rad {0}",
Get Items from Material Requests against this Supplier,Få objekt från materialförfrågningar mot denna leverantör,
Enable European Access,Aktivera europeisk åtkomst,
Creating Purchase Order ...,Skapar inköpsorder ...,
"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älj en leverantör bland standardleverantörerna av artiklarna nedan. Vid val kommer en inköpsorder endast göras mot föremål som tillhör vald leverantör.,
Row #{}: You must select {} serial numbers for item {}.,Rad nr {}: Du måste välja {} serienummer för artikeln {}.,
Add Comment,Lägg till kommentar,
More...,Mer...,
Notes,Anmärkningar,
Payment Gateway,Payment Gateway,
Payment Gateway Name,Betalnings Gateway Name,
Payments,Betalningar,
Plan Name,Plannamn,
Portal,Portal,
Scan Barcode,Skanna streckkod,
Some information is missing,Viss information saknas,
Successful,Framgångsrik,
Tools,Verktyg,
Use Sandbox,användning Sandbox,
Busy,Upptagen,
Completed By,Fullgjord av,
Payment Failed,Betalning misslyckades,
Column {0},Kolumn {0},
Field Mapping,Fältkartläggning,
Not Specified,Ej angivet,
Update Type,Uppdateringstyp,
Dr,Dr,
End Time,Sluttid,
Fetching...,Hämtar ...,
"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 verkar som om det finns ett problem med serverns randkonfiguration. Vid fel kommer beloppet att återbetalas till ditt konto.,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Ser ut som någon skickat till en ofullständig webbadress. Vänligen be dem att undersöka saken.,
Master,Ledar-,
Pay,Betala,
You can also copy-paste this link in your browser,Du kan också kopiera och klistra in den här länken i din webbläsare,
Verified By,Verifierad Av,
Invalid naming series (. missing) for {0},Ogiltig namngivningsserie (. Saknas) för {0},
Phone Number,Telefonnummer,
Account SID,Konto SID,
Global Defaults,Globala standardinställningar,
Is Mandatory,Är obligatorisk,
WhatsApp,WhatsApp,
Make a call,Ringa ett samtal,
Approve,Godkänna,
Reject,Avvisa,
