"""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 Row,Lägg till rad,
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,
Analytics,Analytics,
Annual Billing: {0},Årlig Billing: {0},
Anonymous,Anonym,
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,
Author,Författare,
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 Leaves,Tillgängliga löv,
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,
Basic,Grundläggande,
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,Fakturering,
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 Details,Kontaktuppgifter,
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,
Datetime,Datum Tid,
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,Gör det möjligt,
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:",
Event,Händelse,
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,Full,
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,
IFSC Code,IFSC-kod,
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 Book 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,
Insert,Infoga,
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,
Interests,Intressen,
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,
Language Name,språk Namn,
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,
License,Licens,
Limit,Begränsa,
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,
Log,Logga,
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,
Meeting,Möte,
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,
My Account,Mitt Konto,
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,
Newsletters,nyhetsbrev,
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)",
Others,Annat,
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,
Password,Lösenord,
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,
Pincode,Pinkod,
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 prefix first,Välj prefix först,
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 Email Address,Ställ in e-postadress,
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 the series to be used.,Ange serien som ska användas.,
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,
Portal Settings,Portal Settings,
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 Owner,referens Ägare,
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,
Region,Region,
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 Builder,Rapportgenerator,
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,Prov,
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,
Saved,sparad,
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,
Series {0} already used in {1},Serie {0} används redan i {1},
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 Default,Ange som standard,
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,Frakt,
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,Standard,
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,
Test,Test,
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 Allocated Leaves,Totalt tilldelade blad,
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,
Traceback,Spåra tillbaka,
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 DocType {0},Det gick inte att hitta DocType {0},
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,
Used Leaves,Använda löv,
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,
Weekdays,vardagar,
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,
Workflow,Workflow,
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 enought 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 be logged in to access this page,Du måste vara inloggad för att få tillgång till den här sidan,
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,
County,Grevskap,
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,
Images,Bilder,
Import,Import,
Language,Språk,
Likes,Gillar,
Merge with existing,Sammanfoga med befintlig,
Office,Kontors,
Orientation,Orientering,
Parent,Förälder,
Passive,Passiv,
Payment Failed,Betalning misslyckades,
Permanent,Permanent,
Personal,Personligt,
Plant,Fastighet,
Post,Inlägg,
Postal,Post,
Postal Code,Postkod,
Previous,Föregående,
Provider,provider,
Read Only,Endast läs,
Recipient,Mottagare,
Reviews,recensioner,
Sender,Avsändare,
Shop,Shop,
Subsidiary,Dotterbolag,
There is some problem with the file url: {0},Det finns vissa problem med filen url: {0},
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},
"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Specialtecken utom &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Och &quot;}}&quot; är inte tillåtna i namnserien {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,
Export Type,Exportera typ,
From Date,Från Datum,
Group By,Grupp av,
Invalid URL,Ogiltig URL,
Landscape,Landskap,
Last Sync On,Senast synkroniserad,
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,
Webhook Secret,Webhook Secret,
% 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 Home,Tillbaka till hemmet,
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,
Customize,Anpassa,
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,
Edit Profile,Redigera profil,
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,
File Manager,Filhanterare,
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,
Invite as User,Bjud in som Användare,
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,
Newsletter,Nyhetsbrev,
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
Printing,Tryckning,
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,Publicera,
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,
Refreshing,Uppfriskande,
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 All,Välj Alla,
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,Set,
Set Meta Tags,Ställ in metataggar,
Set {0} in company {1},Ställ in {0} i företag {1},
Setup,Inställning,
Setup Wizard,Installationsguiden,
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 Details,Uppdatera detaljer,
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,Du,
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} Name,{0} Namn,
{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,
Bold,Djärv,
Center,Centrum,
Clear,Klar,
Comment,Kommentar,
Comments,Kommentarer,
DocType,DocType,
Download,Ladda ner,
Left,Vänster,
Link,Länk,
New,Ny,
Not Found,Hittades Inte,
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,
User Id,Användar ID,
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,
Position,Placera,
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,Beskära,
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,Ä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,
Public Transport,Kollektivtrafik,
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,
Request Data,Förfrågningsuppgifter,
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,Steg,
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,
Reference DocType,Referens DocType,
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,
Select Transaction,Välj transaktion,
Help HTML,Hjälp HTML,
Series List for this Transaction,Serie Lista för denna transaktion,
User must always select,Användaren måste alltid välja,
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Markera det här om du vill tvinga användaren att välja en serie innan du sparar. Det blir ingen standard om du kontrollera detta.,
Update Series,Uppdatera Serie,
Change the starting / current sequence number of an existing series.,Ändra start / aktuella sekvensnumret av en befintlig serie.,
Prefix,Prefix,
This is the number of the last created transaction with this prefix,Detta är numret på den senast skapade transaktionen med detta prefix,
Update Series Number,Uppdatera Serie Nummer,
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 overrridden,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,
Validation Error,Valideringsfel,
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:,
Andaman and Nicobar Islands,Andaman- och Nicobaröarna,
Andhra Pradesh,Andhra Pradesh,
Arunachal Pradesh,Arunachal Pradesh,
Assam,Assam,
Bihar,Bihar,
Chandigarh,Chandigarh,
Chhattisgarh,Chhattisgarh,
Dadra and Nagar Haveli,Dadra och Nagar Haveli,
Daman and Diu,Daman och Diu,
Delhi,delhi,
Goa,Goa,
Gujarat,Gujarat,
Haryana,Haryana,
Himachal Pradesh,Himachal Pradesh,
Jammu and Kashmir,Jammu och Kashmir,
Jharkhand,Jharkhand,
Karnataka,Karnataka,
Kerala,Kerala,
Lakshadweep Islands,Lakshadweep Islands,
Madhya Pradesh,Madhya Pradesh,
Maharashtra,Maharashtra,
Manipur,Manipur,
Meghalaya,Meghalaya,
Mizoram,Mizoram,
Nagaland,Nagaland,
Odisha,Odisha,
Other Territory,Annat territorium,
Pondicherry,Pondicherry,
Punjab,Punjab,
Rajasthan,Rajasthan,
Sikkim,Sikkim,
Tamil Nadu,Tamil Nadu,
Telangana,Telangana,
Tripura,Tripura,
Uttar Pradesh,Uttar Pradesh,
Uttarakhand,Uttarakhand,
West Bengal,Västbengalen,
Is Mandatory,Är obligatorisk,
Published on,publicerad på,
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,
Bottom,Botten,
Top,Topp,
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,
PAN Number,PAN-nummer,
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,
Expired Leaves,Utgångna löv,
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 {}.,
