"""Customer Provided Item"" cannot be Purchase Item also",&quot;El producte subministrat pel client&quot; no pot ser també article de compra,
"""Customer Provided Item"" cannot have Valuation Rate",&quot;L&#39;element subministrat pel client&quot; no pot tenir un percentatge de valoració,
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""És actiu fix"" no pot estar sense marcar, ja que hi ha registre d'actius contra l'element",
'Based On' and 'Group By' can not be same,'Basat En' i 'Agrupar Per' no pot ser el mateix,
'Days Since Last Order' must be greater than or equal to zero,'Dies Des de la Darrera Comanda' ha de ser més gran que o igual a zero,
'Entries' cannot be empty,'Entrades' no pot estar buit,
'From Date' is required,'Des de la data' és obligatori,
'From Date' must be after 'To Date','Des de la data' ha de ser després de 'A data',
'Has Serial No' can not be 'Yes' for non-stock item,'Té Num de Sèrie' no pot ser 'Sí' per a items que no estan a l'estoc,
'Opening',&#39;Obertura&#39;,
'To Case No.' cannot be less than 'From Case No.',"""Per al cas núm ' no pot ser inferior a 'De Cas No.'",
'To Date' is required,'A Data' es requereix,
'Total',&quot;Total&quot;,
'Update Stock' can not be checked because items are not delivered via {0},"""Actualització d'Estoc""no es pot comprovar perquè els articles no es lliuren a través de {0}",
'Update Stock' cannot be checked for fixed asset sale,"""Actualització d'Estoc 'no es pot comprovar en venda d'actius fixos",
) for {0},) per {0},
1 exact match.,1 partit exacte.,
90-Above,Per sobre de 90-,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,"Hi ha un grup de clients amb el mateix nom, si us plau canvia el nom del client o el nom del Grup de Clients",
A Default Service Level Agreement already exists.,Ja existeix un acord de nivell de servei per defecte.,
A Lead requires either a person's name or an organization's name,Un client principal requereix el nom d’una persona o el nom d’una organització,
A customer with the same name already exists,Ja existeix un client amb el mateix nom,
A question must have more than one options,Una pregunta ha de tenir més d&#39;una opció,
A qustion must have at least one correct options,Una qustion ha de tenir almenys una opció correcta,
A {0} exists between {1} and {2} (,Hi ha {0} entre {1} i {2} (,
A4,A4,
API Endpoint,Endpoint API,
API Key,API Key,
Abbr can not be blank or space,Abbr no pot estar en blanc o l&#39;espai,
Abbreviation already used for another company,Abreviatura ja utilitzat per una altra empresa,
Abbreviation cannot have more than 5 characters,Abreviatura no pot tenir més de 5 caràcters,
Abbreviation is mandatory,Abreviatura és obligatori,
About the Company,Sobre la companyia,
About your company,Sobre la vostra empresa,
Above,Per sobre de,
Absent,Absent,
Academic Term,període acadèmic,
Academic Term: ,Terme acadèmic:,
Academic Year,Any escolar,
Academic Year: ,Any escolar:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},+ Acceptat Rebutjat Quantitat ha de ser igual a la quantitat rebuda per article {0},
Access Token,Token d'accés,
Accessable Value,Valor accessible,
Account,Compte,
Account Number,Número de compte,
Account Number {0} already used in account {1},Número del compte {0} ja utilitzat al compte {1},
Account Pay Only,Només compte de pagament,
Account Type,Tipus de compte,
Account Type for {0} must be {1},Tipus de compte per {0} ha de ser {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","El saldo del compte ja està en crèdit, no tens permisos per establir-lo com 'El balanç ha de ser ""com ""Dèbit """,
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Saldo del compte ja en dèbit, no se li permet establir ""El balanç ha de ser"" com ""crèdit""",
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,El número de compte del compte {0} no està disponible. <br> Configureu el vostre Gràfic de comptes correctament.,
Account with child nodes cannot be converted to ledger,Compta amb nodes secundaris no es pot convertir en llibre major,
Account with child nodes cannot be set as ledger,Compta amb nodes secundaris no es pot establir com a llibre major,
Account with existing transaction can not be converted to group.,Compta amb la transacció existent no es pot convertir en grup.,
Account with existing transaction can not be deleted,Un compte amb transaccions no es pot eliminar,
Account with existing transaction cannot be converted to ledger,El Compte de la transacció existent no es pot convertir a llibre major,
Account {0} does not belong to company: {1},Compte {0} no pertany a la companyia: {1},
Account {0} does not belongs to company {1},Compte {0} no pertany a la companyia de {1},
Account {0} does not exist,El compte {0} no existeix,
Account {0} does not exists,{0} no existeix Compte,
Account {0} does not match with Company {1} in Mode of Account: {2},Compte {0} no coincideix amb el de la seva empresa {1} en la manera de compte: {2},
Account {0} has been entered multiple times,Compte {0} s&#39;ha introduït diverses vegades,
Account {0} is added in the child company {1},El compte {0} s&#39;afegeix a l&#39;empresa infantil {1},
Account {0} is frozen,El compte {0} està bloquejat,
Account {0} is invalid. Account Currency must be {1},Compte {0} no és vàlid. Compte moneda ha de ser {1},
Account {0}: Parent account {1} can not be a ledger,Compte {0}: compte pare {1} no pot ser un llibre de comptabilitat,
Account {0}: Parent account {1} does not belong to company: {2},Compte {0}: el compte Pare {1} no pertany a la companyia: {2},
Account {0}: Parent account {1} does not exist,Compte {0}: el compte superior {1} no existeix,
Account {0}: You can not assign itself as parent account,Compte {0}: No es pot assignar com compte principal,
Account: {0} can only be updated via Stock Transactions,El compte: {0} només pot ser actualitzat a través de transaccions d'estoc,
Account: {0} with currency: {1} can not be selected,Compte: {0} amb la divisa: {1} no es pot seleccionar,
Accountant,Accountant,
Accounting,Comptabilitat,
Accounting Entry for Asset,Entrada de comptabilitat per actius,
Accounting Entry for Stock,Entrada Comptabilitat de Stock,
Accounting Entry for {0}: {1} can only be made in currency: {2},Entrada de Comptabilitat per a {0}: {1} només pot fer-se en moneda: {2},
Accounting Ledger,Comptabilitat principal,
Accounting journal entries.,Entrades de diari de comptabilitat.,
Accounts,Comptes,
Accounts Manager,Gerent de Comptes,
Accounts Payable,Comptes Per Pagar,
Accounts Payable Summary,Comptes per Pagar Resum,
Accounts Receivable,Comptes per cobrar,
Accounts Receivable Summary,Comptes per Cobrar Resum,
Accounts User,Comptes d'usuari,
Accounts table cannot be blank.,La taula de comptes no pot estar en blanc.,
Accrual Journal Entry for salaries from {0} to {1},Salari de la publicació de la periodificació de {0} a {1},
Accumulated Depreciation,Depreciació acumulada,
Accumulated Depreciation Amount,La depreciació acumulada Import,
Accumulated Depreciation as on,La depreciació acumulada com a,
Accumulated Monthly,acumulat Mensual,
Accumulated Values,Els valors acumulats,
Accumulated Values in Group Company,Valors acumulats a la companyia del grup,
Achieved ({}),Assolit ({}),
Action,Acció,
Action Initialised,Acció inicialitzada,
Actions,Accions,
Active,Actiu,
Activity Cost exists for Employee {0} against Activity Type - {1},Hi Cost Activitat d&#39;Empleat {0} contra el Tipus d&#39;Activitat - {1},
Activity Cost per Employee,Cost Activitat per Empleat,
Activity Type,Tipus d'activitat,
Actual Cost,Cost real,
Actual Delivery Date,Data de lliurament real,
Actual Qty,Actual Quantitat,
Actual Qty is mandatory,La quantitat actual és obligatòria,
Actual Qty {0} / Waiting Qty {1},Quantitat real {0} / tot esperant Quantitat {1},
Actual Qty: Quantity available in the warehouse.,Actual Quantitat: Quantitat disponible al magatzem.,
Actual qty in stock,Cant que aquesta en estoc,
Actual type tax cannot be included in Item rate in row {0},Impost de tipus real no pot ser inclòs en el preu de l&#39;article a la fila {0},
Add,Afegir,
Add / Edit Prices,Afegeix / Edita Preus,
Add Comment,Afegir comentari,
Add Customers,Afegir Clients,
Add Employees,Afegir Empleats,
Add Item,Afegeix element,
Add Items,Afegir els articles,
Add Leads,Add Leads,
Add Multiple Tasks,Afegeix diverses tasques,
Add Row,Afegir fila,
Add Sales Partners,Afegiu socis de vendes,
Add Serial No,Afegir Número de sèrie,
Add Students,Afegir estudiants,
Add Suppliers,Afegeix proveïdors,
Add Time Slots,Afegeix franges horàries,
Add Timesheets,Afegir parts d&#39;hores,
Add Timeslots,Afegeix Timeslots,
Add Users to Marketplace,Afegiu usuaris al mercat,
Add a new address,Afegeix una nova adreça,
Add cards or custom sections on homepage,Afegiu targetes o seccions personalitzades a la pàgina principal,
Add more items or open full form,Afegir més elements o forma totalment oberta,
Add notes,Afegiu notes,
Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Afegir la resta de la seva organització com als seus usuaris. També podeu afegir convidar els clients al seu portal amb l&#39;addició d&#39;ells des Contactes,
Add to Details,Afegeix als detalls,
Add/Remove Recipients,Afegir / Treure Destinataris,
Added,Afegit,
Added to details,S&#39;ha afegit als detalls,
Added {0} users,S&#39;han afegit {0} usuaris,
Additional Salary Component Exists.,Existeix un component salarial addicional.,
Address,Adreça,
Address Line 2,Adreça Línia 2,
Address Name,nom direcció,
Address Title,Direcció Títol,
Address Type,Tipus d'adreça,
Administrative Expenses,Despeses d'Administració,
Administrative Officer,Oficial Administratiu,
Administrator,Administrador,
Admission,admissió,
Admission and Enrollment,Admissió i matrícula,
Admissions for {0},Les admissions per {0},
Admit,Admit,
Admitted,acceptat,
Advance Amount,Quantitat Anticipada,
Advance Payments,Pagaments avançats,
Advance account currency should be same as company currency {0},La moneda del compte avançada hauria de ser igual que la moneda de l&#39;empresa {0},
Advance amount cannot be greater than {0} {1},quantitat d&#39;avanç no pot ser més gran que {0} {1},
Advertising,Publicitat,
Aerospace,Aeroespacial,
Against,Contra,
Against Account,Contra Compte,
Against Journal Entry {0} does not have any unmatched {1} entry,Contra Diari entrada {0} no té cap {1} entrada inigualable,
Against Journal Entry {0} is already adjusted against some other voucher,Contra Diari entrada {0} ja s'ajusta contra algun altre bo,
Against Supplier Invoice {0} dated {1},Contra Proveïdor Factura {0} {1} datat,
Against Voucher,Contra justificant,
Against Voucher Type,Contra el val tipus,
Age,Edat,
Age (Days),Edat (dies),
Ageing Based On,Envelliment basat en,
Ageing Range 1,Rang Envelliment 1,
Ageing Range 2,Rang 2 Envelliment,
Ageing Range 3,Rang 3 Envelliment,
Agriculture,Agricultura,
Agriculture (beta),Agricultura (beta),
Airline,Aerolínia,
All Accounts,Tots els comptes,
All Addresses.,Totes les direccions.,
All Assessment Groups,Tots els grups d&#39;avaluació,
All BOMs,Totes les llistes de materials,
All Contacts.,Tots els contactes.,
All Customer Groups,Tots els grups de clients,
All Day,Tot el dia,
All Departments,Tots els departaments,
All Healthcare Service Units,Totes les unitats de serveis sanitaris,
All Item Groups,Tots els grups d'articles,
All Jobs,Tots els treballs,
All Products,Tots els productes,
All Products or Services.,Tots els productes o serveis.,
All Student Admissions,Tots Admissió d&#39;Estudiants,
All Supplier Groups,Tots els grups de proveïdors,
All Supplier scorecards.,Tots els quadres de comandament del proveïdor.,
All Territories,Tots els territoris,
All Warehouses,tots els cellers,
All communications including and above this shall be moved into the new Issue,"Totes les comunicacions incloses i superiors a aquesta, s&#39;han de traslladar al nou número",
All items have already been transferred for this Work Order.,Ja s&#39;han transferit tots els ítems per a aquesta Ordre de treball.,
All other ITC,Tots els altres TIC,
All the mandatory Task for employee creation hasn't been done yet.,Tota la tasca obligatòria per a la creació d&#39;empleats encara no s&#39;ha fet.,
Allocate Payment Amount,Distribuir l&#39;import de pagament,
Allocated Amount,Monto assignat,
Allocated Leaves,Fulles assignades,
Allocating leaves...,Allocant fulles ...,
Already record exists for the item {0},Ja existeix un registre per a l&#39;element {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Ja heu definit el valor per defecte al perfil de pos {0} per a l&#39;usuari {1}, amabilitat per defecte",
Alternate Item,Element alternatiu,
Alternative item must not be same as item code,L&#39;element alternatiu no ha de ser el mateix que el codi de l&#39;element,
Amended From,Modificada Des de,
Amount,Quantitat,
Amount After Depreciation,Després quantitat Depreciació,
Amount of Integrated Tax,Import de l’impost integrat,
Amount of TDS Deducted,Import de TDS deduït,
Amount should not be less than zero.,La quantitat no ha de ser inferior a zero.,
Amount to Bill,La quantitat a Bill,
Amount {0} {1} against {2} {3},Suma {0} {1} {2} contra {3},
Amount {0} {1} deducted against {2},Suma {0} {1} presenta disminuint {2},
Amount {0} {1} transferred from {2} to {3},Suma {0} {1} transferit des {2} a {3},
Amount {0} {1} {2} {3},Suma {0} {1} {2} {3},
Amt,Amt,
"An Item Group exists with same name, please change the item name or rename the item group","Hi ha un grup d'articles amb el mateix nom, si us plau, canvieu el nom de l'article o del grup d'articles",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,"Un terme acadèmic amb això &#39;Any Acadèmic&#39; {0} i &#39;Nom terme&#39; {1} ja existeix. Si us plau, modificar aquestes entrades i torneu a intentar.",
An error occurred during the update process,S&#39;ha produït un error durant el procés d&#39;actualització,
"An item exists with same name ({0}), please change the item group name or rename the item","Hi ha un element amb el mateix nom ({0}), canvieu el nom de grup d'articles o canviar el nom de l'element",
Analyst,Analista,
Analytics,analítica,
Annual Billing: {0},Facturació anual: {0},
Annual Salary,Salari Anual,
Anonymous,Anònim,
Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Un altre rècord pressupostari &#39;{0}&#39; ja existeix contra {1} &#39;{2}&#39; i compte &#39;{3}&#39; per a l&#39;any fiscal {4},
Another Period Closing Entry {0} has been made after {1},Una altra entrada Període de Tancament {0} s'ha fet després de {1},
Another Sales Person {0} exists with the same Employee id,Hi ha una altra Sales Person {0} amb el mateix ID d&#39;empleat,
Antibiotic,Antibiòtics,
Apparel & Accessories,Roba i accessoris,
Applicable For,Aplicable per,
"Applicable if the company is SpA, SApA or SRL","Aplicable si l&#39;empresa és SpA, SApA o SRL",
Applicable if the company is a limited liability company,Aplicable si l&#39;empresa és una societat de responsabilitat limitada,
Applicable if the company is an Individual or a Proprietorship,Aplicable si l&#39;empresa és una persona física o privada,
Applicant,Sol · licitant,
Applicant Type,Tipus de sol·licitant,
Application of Funds (Assets),Aplicació de fons (actius),
Application period cannot be across two allocation records,El període d&#39;aplicació no pot estar en dos registres d&#39;assignació,
Application period cannot be outside leave allocation period,Període d&#39;aplicació no pot ser període d&#39;assignació llicència fos,
Applied,Aplicat,
Apply Now,Aplicar ara,
Appointment Confirmation,Confirmació de cita,
Appointment Duration (mins),Durada de la cita (minuts),
Appointment Type,Tipus de cita,
Appointment {0} and Sales Invoice {1} cancelled,S&#39;ha cancel·lat la cita {0} i la factura de vendes {1},
Appointments and Encounters,Nomenaments i trobades,
Appointments and Patient Encounters,Nomenaments i trobades de pacients,
Appraisal {0} created for Employee {1} in the given date range,Appraisal {0} creat per Empleat {1} en l'interval de dates determinat,
Apprentice,Aprenent,
Approval Status,Estat d'aprovació,
Approval Status must be 'Approved' or 'Rejected',"Estat d'aprovació ha de ser ""Aprovat"" o ""Rebutjat""",
Approve,aprovar,
Approving Role cannot be same as role the rule is Applicable To,El rol d'aprovador no pot ser el mateix que el rol al que la regla s'ha d'aplicar,
Approving User cannot be same as user the rule is Applicable To,Approving User cannot be same as user the rule is Applicable To,
"Apps using current key won't be able to access, are you sure?","Les aplicacions que utilitzin la clau actual no podran accedir, segurament?",
Are you sure you want to cancel this appointment?,Estàs segur que vols cancel·lar aquesta cita?,
Arrear,arriar,
As Examiner,Com a examinador,
As On Date,Com en la data,
As Supervisor,Com a supervisor,
As per rules 42 & 43 of CGST Rules,Segons les regles 42 i 43 de les normes CGST,
As per section 17(5),Segons l’apartat 17 (5),
As per your assigned Salary Structure you cannot apply for benefits,"Segons la seva Estructura Salarial assignada, no pot sol·licitar beneficis",
Assessment,valoració,
Assessment Criteria,Criteris d&#39;avaluació,
Assessment Group,Grup d&#39;avaluació,
Assessment Group: ,Grup d&#39;avaluació:,
Assessment Plan,Pla d&#39;avaluació,
Assessment Plan Name,Nom del pla d&#39;avaluació,
Assessment Report,Informe d&#39;avaluació,
Assessment Reports,Informes d&#39;avaluació,
Assessment Result,avaluació de resultat,
Assessment Result record {0} already exists.,El registre del resultat de l&#39;avaluació {0} ja existeix.,
Asset,Basa,
Asset Category,categoria actius,
Asset Category is mandatory for Fixed Asset item,Categoria actiu és obligatori per a la partida de l&#39;actiu fix,
Asset Maintenance,Manteniment d&#39;actius,
Asset Movement,moviment actiu,
Asset Movement record {0} created,registrar el moviment d&#39;actius {0} creat,
Asset Name,Nom d&#39;actius,
Asset Received But Not Billed,Asset rebut però no facturat,
Asset Value Adjustment,Ajust del valor d&#39;actius,
"Asset cannot be cancelled, as it is already {0}","Actiu no es pot cancel·lar, com ja ho és {0}",
Asset scrapped via Journal Entry {0},Actius rebutjat a través d&#39;entrada de diari {0},
"Asset {0} cannot be scrapped, as it is already {1}","Actius {0} no pot ser rebutjada, com ja ho és {1}",
Asset {0} does not belong to company {1},Actius {0} no pertany a l&#39;empresa {1},
Asset {0} must be submitted,Actius {0} ha de ser presentat,
Assets,Actius,
Assign,Assignar,
Assign Salary Structure,Assigna l&#39;estructura salarial,
Assign To,Assignar a,
Assign to Employees,Assigna a empleats,
Assigning Structures...,Assignació d&#39;estructures ...,
Associate,Associat,
At least one mode of payment is required for POS invoice.,Es requereix com a mínim una manera de pagament de la factura POS.,
Atleast one item should be entered with negative quantity in return document,Almenys un element ha de introduir-se amb quantitat negativa en el document de devolució,
Atleast one of the Selling or Buying must be selected,Has de marcar compra o venda,
Atleast one warehouse is mandatory,Almenys un magatzem és obligatori,
Attach Logo,Adjuntar Logo,
Attachment,Accessori,
Attachments,Adjunts,
Attendance,Assistència,
Attendance From Date and Attendance To Date is mandatory,Assistència Des de la data i Assistència a la data és obligatori,
Attendance can not be marked for future dates,No es poden entrar assistències per dates futures,
Attendance date can not be less than employee's joining date,data de l&#39;assistència no pot ser inferior a la data d&#39;unir-se als empleats,
Attendance for employee {0} is already marked,Assistència per a l'empleat {0} ja està marcat,
Attendance for employee {0} is already marked for this day,L&#39;assistència per a l&#39;empleat {0} ja està marcat per al dia d&#39;avui,
Attendance has been marked successfully.,L&#39;assistència ha estat marcada amb èxit.,
Attendance not submitted for {0} as it is a Holiday.,L&#39;assistència no s&#39;ha enviat per a {0} ja que és una festa.,
Attendance not submitted for {0} as {1} on leave.,L&#39;assistència no s&#39;ha enviat per {0} com {1} en excedència.,
Attribute table is mandatory,Taula d&#39;atributs és obligatori,
Attribute {0} selected multiple times in Attributes Table,Atribut {0} seleccionat diverses vegades en la taula Atributs,
Author,autor,
Authorized Signatory,Signant Autoritzat,
Auto Material Requests Generated,Les sol·licituds de material auto generada,
Auto Repeat,Repetició automàtica,
Auto repeat document updated,S&#39;ha actualitzat el document de repetició automàtica,
Automotive,Automòbil,
Available,Disponible,
Available Leaves,Fulles disponibles,
Available Qty,Disponible Quantitat,
Available Selling,Venda disponible,
Available for use date is required,Disponible per a la data d&#39;ús,
Available slots,Escletxes disponibles,
Available {0},Disponible {0},
Available-for-use Date should be after purchase date,La data d&#39;ús disponible ha de ser després de la data de compra,
Average Age,Edat Mitjana,
Average Rate,Tarifa mitjana,
Avg Daily Outgoing,Mitjana diària sortint,
Avg. Buying Price List Rate,Mitjana Preu de la tarifa de compra,
Avg. Selling Price List Rate,Mitjana Preu de la venda de tarifes,
Avg. Selling Rate,Avg. La venda de Tarifa,
BOM,BOM,
BOM Browser,BOM Browser,
BOM No,No BOM,
BOM Rate,BOM Rate,
BOM Stock Report,La llista de materials d&#39;Informe,
BOM and Manufacturing Quantity are required,Llista de materials i de fabricació es requereixen Quantitat,
BOM does not contain any stock item,BOM no conté cap article comuna,
BOM {0} does not belong to Item {1},BOM {0} no pertany a Punt {1},
BOM {0} must be active,BOM {0} ha d'estar activa,
BOM {0} must be submitted,BOM {0} ha de ser presentat,
Balance,Equilibri,
Balance (Dr - Cr),Equilibri (Dr - Cr),
Balance ({0}),Equilibri ({0}),
Balance Qty,Saldo Quantitat,
Balance Sheet,Balanç,
Balance Value,Valor Saldo,
Balance for Account {0} must always be {1},Balanç per compte {0} ha de ser sempre {1},
Bank,Banc,
Bank Account,Compte bancari,
Bank Accounts,Comptes bancaris,
Bank Draft,Lletra bancària,
Bank Entries,Entrades bancàries,
Bank Name,Nom del banc,
Bank Overdraft Account,Bank Overdraft Account,
Bank Reconciliation,Conciliació bancària,
Bank Reconciliation Statement,Declaració de conciliació bancària,
Bank Statement,Extracte de compte,
Bank Statement Settings,Configuració de la declaració del banc,
Bank Statement balance as per General Ledger,Equilibri extracte bancari segons Comptabilitat General,
Bank account cannot be named as {0},Compte bancari no pot ser nomenat com {0},
Bank/Cash transactions against party or for internal transfer,Operacions bancàries / efectiu contra la part que pertanyin a,
Banking,Banca,
Banking and Payments,De bancs i pagaments,
Barcode {0} already used in Item {1},Barcode {0} ja utilitzat en el punt {1},
Barcode {0} is not a valid {1} code,El codi de barres {0} no és un codi vàlid {1},
Base,Base,
Base URL,URL base,
Based On,Basat en,
Based On Payment Terms,Basat en termes de pagament,
Basic,Bàsic,
Batch,Lot,
Batch Entries,Entrades per lots,
Batch ID is mandatory,Identificació del lot és obligatori,
Batch Inventory,Inventari de lots,
Batch Name,Nom del lot,
Batch No,Lot número,
Batch number is mandatory for Item {0},Nombre de lot és obligatori per Punt {0},
Batch {0} of Item {1} has expired.,Lot {0} de {1} article ha expirat.,
Batch {0} of Item {1} is disabled.,El lot {0} de l&#39;element {1} està desactivat.,
Batch: ,Lote:,
Batches,Lots,
Become a Seller,Converteix-te en venedor,
Beginner,principiant,
Bill,projecte de llei,
Bill Date,Data de la factura,
Bill No,Factura Número,
Bill of Materials,Llista de materials,
Bill of Materials (BOM),Llista de materials (BOM),
Billable Hours,Hores factibles,
Billed,Facturat,
Billed Amount,Quantitat facturada,
Billing,Facturació,
Billing Address,Direcció De Enviament,
Billing Address is same as Shipping Address,L’adreça de facturació és la mateixa que l’adreça d’enviament,
Billing Amount,Facturació Monto,
Billing Status,Estat de facturació,
Billing currency must be equal to either default company's currency or party account currency,La moneda de facturació ha de ser igual a la moneda de la companyia per defecte o la moneda del compte de partit,
Bills raised by Suppliers.,Bills plantejades pels proveïdors.,
Bills raised to Customers.,Factures enviades als clients.,
Biotechnology,Biotecnologia,
Birthday Reminder,Recordatori d&#39;aniversari,
Black,Negre,
Blanket Orders from Costumers.,Comandes de manta de clients.,
Block Invoice,Factura de bloc,
Boms,Boms,
Bonus Payment Date cannot be a past date,La data de pagament addicional no pot ser una data passada,
Both Trial Period Start Date and Trial Period End Date must be set,Tant la data d&#39;inici del període de prova com la data de finalització del període de prova s&#39;han d&#39;establir,
Both Warehouse must belong to same Company,Tant Magatzem ha de pertànyer al mateix Company,
Branch,Branca,
Broadcasting,Radiodifusió,
Brokerage,Corretatge,
Browse BOM,Navegar per llista de materials,
Budget Against,contra pressupost,
Budget List,Llista de pressupostos,
Budget Variance Report,Pressupost Variància Reportar,
Budget cannot be assigned against Group Account {0},Pressupost no es pot assignar contra comptes de grup {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","Pressupost no es pot assignar en contra {0}, ja que no és un compte d&#39;ingressos o despeses",
Buildings,Edificis,
Bundle items at time of sale.,Articles agrupats en el moment de la venda.,
Business Development Manager,Gerent de Desenvolupament de Negocis,
Buy,comprar,
Buying,Compra,
Buying Amount,Import Comprar,
Buying Price List,Llista de preus de compra,
Buying Rate,Tarifa de compra,
"Buying must be checked, if Applicable For is selected as {0}","Compra de comprovar, si es selecciona aplicable Perquè {0}",
By {0},Per {0},
Bypass credit check at Sales Order ,Comprovació de desviació de crèdit a l&#39;ordre de vendes,
C-Form records,Registres C-Form,
C-form is not applicable for Invoice: {0},C-forma no és aplicable per a la factura: {0},
CEO,CEO,
CESS Amount,Import del CESS,
CGST Amount,Import de CGST,
CRM,CRM,
CWIP Account,Compte de CWIP,
Calculated Bank Statement balance,Calculat equilibri extracte bancari,
Calls,Trucades,
Campaign,Campanya,
Can be approved by {0},Pot ser aprovat per {0},
"Can not filter based on Account, if grouped by Account","No es pot filtrar en funció del compte, si agrupats per Compte",
"Can not filter based on Voucher No, if grouped by Voucher","Can not filter based on Voucher No, if grouped by Voucher",
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","No es pot marcar el registre hospitalari descarregat, hi ha factures no facturades {0}",
Can only make payment against unbilled {0},Només es pot fer el pagament contra facturats {0},
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Pot referir fila només si el tipus de càrrega és 'On Anterior Suma Fila ""o"" Anterior Fila Total'",
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","No es pot canviar el mètode de valoració, ja que hi ha transaccions en contra d&#39;alguns articles que no tenen el seu propi mètode de valoració",
Can't create standard criteria. Please rename the criteria,No es poden crear criteris estàndard. Canvia el nom dels criteris,
Cancel,Cancel·la,
Cancel Material Visit {0} before cancelling this Warranty Claim,Cancel·la material Visita {0} abans de cancel·lar aquest reclam de garantia,
Cancel Material Visits {0} before cancelling this Maintenance Visit,Cancel·la Visites Materials {0} abans de cancel·lar aquesta visita de manteniment,
Cancel Subscription,Cancel·la la subscripció,
Cancel the journal entry {0} first,Anul·la primer l&#39;entrada del diari {0},
Canceled,Cancel·lat,
"Cannot Submit, Employees left to mark attendance","No es pot enviar, els empleats deixen de marcar l&#39;assistència",
Cannot be a fixed asset item as Stock Ledger is created.,No es pot convertir en un element d&#39;actiu fix quan es creï Stock Ledger.,
Cannot cancel because submitted Stock Entry {0} exists,No es pot cancel·lar perquè l'entrada d'estoc {0} ja ha estat Presentada,
Cannot cancel transaction for Completed Work Order.,No es pot cancel·lar la transacció per a l&#39;ordre de treball finalitzat.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},No es pot cancel·lar {0} {1} perquè el número de sèrie {2} no pertany al magatzem {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,No es poden canviar els atributs després de la transacció d&#39;accions. Realitzeu un element nou i transfereixi valors al nou element,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,No es poden canviar les dates de l'any finscal (inici i fi) una vegada ha estat desat,
Cannot change Service Stop Date for item in row {0},No es pot canviar la data de parada del servei per a l&#39;element a la fila {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,No es poden canviar les propietats de variants després de la transacció d&#39;accions. Haureu de fer un nou element per fer-ho.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","No es pot canviar moneda per defecte de l'empresa, perquè hi ha operacions existents. Les transaccions han de ser cancel·lades a canviar la moneda per defecte.",
Cannot change status as student {0} is linked with student application {1},No es pot canviar l&#39;estat d&#39;estudiant {0} està vinculada amb l&#39;aplicació de l&#39;estudiant {1},
Cannot convert Cost Center to ledger as it has child nodes,"No es pot convertir de centres de cost per al llibre major, ja que té nodes secundaris",
Cannot covert to Group because Account Type is selected.,No es pot encoberta al grup perquè es selecciona Tipus de compte.,
Cannot create Retention Bonus for left Employees,No es pot crear un bonificador de retenció per als empleats de l&#39;esquerra,
Cannot create a Delivery Trip from Draft documents.,No es pot crear un viatge de lliurament a partir dels documents d&#39;esborrany.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,No es pot desactivar o cancel·lar BOM ja que està vinculat amb altres llistes de materials,
"Cannot declare as lost, because Quotation has been made.","No es pot declarar com perdut, perquè s'han fet ofertes",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',No es pot deduir quan categoria és per a 'Valoració' o 'Valoració i Total',
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',No es pot deduir que és la categoria de &#39;de Valoració &quot;o&quot; Vaulation i Total&#39;,
"Cannot delete Serial No {0}, as it is used in stock transactions","No es pot eliminar de sèrie n {0}, ja que s&#39;utilitza en les transaccions de valors",
Cannot enroll more than {0} students for this student group.,No es pot inscriure més de {0} estudiants d&#39;aquest grup d&#39;estudiants.,
Cannot find active Leave Period,No es pot trobar el període d&#39;abandonament actiu,
Cannot produce more Item {0} than Sales Order quantity {1},No es pot produir més Article {0} que en la quantitat de comandes de client {1},
Cannot promote Employee with status Left,No es pot promocionar l&#39;empleat amb estatus d&#39;esquerra,
Cannot refer row number greater than or equal to current row number for this Charge type,No es pot fer referència número de la fila superior o igual al nombre de fila actual d'aquest tipus de càrrega,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,No es pot seleccionar el tipus de càrrega com 'Suma de la fila anterior' o 'Total de la fila anterior' per la primera fila,
Cannot set as Lost as Sales Order is made.,No es pot establir tan perdut com està feta d'ordres de venda.,
Cannot set authorization on basis of Discount for {0},No es pot establir l'autorització sobre la base de Descompte per {0},
Cannot set multiple Item Defaults for a company.,No es poden establir diversos valors per defecte d&#39;elements per a una empresa.,
Cannot set quantity less than delivered quantity,No es pot establir la quantitat inferior a la quantitat lliurada,
Cannot set quantity less than received quantity,No es pot establir la quantitat inferior a la quantitat rebuda,
Cannot set the field <b>{0}</b> for copying in variants,No es pot configurar el camp <b>{0}</b> per copiar-ne les variants,
Cannot transfer Employee with status Left,No es pot transferir l&#39;empleat amb l&#39;estat Esquerra,
Cannot {0} {1} {2} without any negative outstanding invoice,No es pot {0} {1} {2} sense cap factura pendent negatiu,
Capital Equipments,Capital Equipments,
Capital Stock,Capital social,
Capital Work in Progress,Capital treball en progrés,
Cart,Carro,
Cart is Empty,El carret està buit,
Case No(s) already in use. Try from Case No {0},Cas No (s) ja en ús. Intenta Cas n {0},
Cash,Efectiu,
Cash Flow Statement,Estat de fluxos d&#39;efectiu,
Cash Flow from Financing,Flux de caixa de finançament,
Cash Flow from Investing,Flux d&#39;efectiu d&#39;inversió,
Cash Flow from Operations,Flux de caixa operatiu,
Cash In Hand,Efectiu disponible,
Cash or Bank Account is mandatory for making payment entry,Diners en efectiu o compte bancari és obligatòria per a realitzar el registre de pagaments,
Cashier Closing,Tancament de caixers,
Casual Leave,Deixar Casual,
Category,Categoria,
Category Name,Nom de categoria,
Caution,Precaució,
Central Tax,Impost central,
Certification,Certificació,
Cess,Cessar,
Change Amount,Import de canvi,
Change Item Code,Canvieu el codi de l&#39;element,
Change Release Date,Canvia la data de llançament,
Change Template Code,Canvieu el codi de la plantilla,
Changing Customer Group for the selected Customer is not allowed.,No es permet canviar el grup de clients del client seleccionat.,
Chapter,Capítol,
Chapter information.,Informació del capítol.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Càrrec del tipus 'real' a la fila {0} no pot ser inclòs en la partida Rate,
Chargeble,Càrrec,
Charges are updated in Purchase Receipt against each item,Els càrrecs s'actualitzen amb els rebuts de compra contra cada un dels articles,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Els càrrecs es distribuiran proporcionalment basen en Quantitat o import de l'article, segons la teva selecció",
Chart of Cost Centers,Gràfic de centres de cost,
Check all,Marqueu totes les,
Checkout,caixa,
Chemical,Químic,
Cheque,Xec,
Cheque/Reference No,Xec / No. de Referència,
Cheques Required,Xecs obligatoris,
Cheques and Deposits incorrectly cleared,Els xecs i dipòsits esborren de forma incorrecta,
Child Task exists for this Task. You can not delete this Task.,Existeix una tasca infantil per a aquesta tasca. No podeu suprimir aquesta tasca.,
Child nodes can be only created under 'Group' type nodes,Els nodes fills només poden ser creats sota els nodes de tipus &quot;grup&quot;,
Child warehouse exists for this warehouse. You can not delete this warehouse.,existeix magatzem nen per a aquest magatzem. No es pot eliminar aquest magatzem.,
Circular Reference Error,Referència Circular Error,
City,Ciutat,
City/Town,Ciutat / Poble,
Claimed Amount,Quantia reclamada,
Clay,Clay,
Clear filters,Esborra filtres,
Clear values,Neteja els valors,
Clearance Date,Data Liquidació,
Clearance Date not mentioned,No s'esmenta l'espai de dates,
Clearance Date updated,Liquidació Data s&#39;actualitza,
Client,Client,
Client ID,ID de client,
Client Secret,secreta de client,
Clinical Procedure,Procediment clínic,
Clinical Procedure Template,Plantilla de procediment clínic,
Close Balance Sheet and book Profit or Loss.,Tancar Balanç i llibre Guany o Pèrdua.,
Close Loan,Préstec tancat,
Close the POS,Tanca el TPV,
Closed,Tancat,
Closed order cannot be cancelled. Unclose to cancel.,ordre tancat no es pot cancel·lar. Unclose per cancel·lar.,
Closing (Cr),Tancament (Cr),
Closing (Dr),Tancament (Dr),
Closing (Opening + Total),Tancament (obertura + total),
Closing Account {0} must be of type Liability / Equity,Compte {0} Cloenda ha de ser de Responsabilitat / Patrimoni,
Closing Balance,Balanç de cloenda,
Code,Codi,
Collapse All,Col · lapsar tot,
Color,Color,
Colour,Color,
Combined invoice portion must equal 100%,La part de facturació combinada ha de ser igual al 100%,
Commercial,Comercial,
Commission,Comissió,
Commission Rate %,Taxa de la Comissió%,
Commission on Sales,Comissió de Vendes,
Commission rate cannot be greater than 100,La Comissió no pot ser major que 100,
Community Forum,Fòrum de la comunitat,
Company (not Customer or Supplier) master.,Companyia (no client o proveïdor) mestre.,
Company Abbreviation,Abreviatura de l'empresa,
Company Abbreviation cannot have more than 5 characters,L&#39;abreviatura de l&#39;empresa no pot tenir més de 5 caràcters,
Company Name,Nom de l'Empresa,
Company Name cannot be Company,Nom de l&#39;empresa no pot ser l&#39;empresa,
Company currencies of both the companies should match for Inter Company Transactions.,Les monedes d&#39;empreses d&#39;ambdues companyies han de coincidir amb les transaccions entre empreses.,
Company is manadatory for company account,La companyia és manadatura per compte d&#39;empresa,
Company name not same,El nom de l&#39;empresa no és el mateix,
Company {0} does not exist,Companyia {0} no existeix,
Compensatory Off,Compensatori,
Compensatory leave request days not in valid holidays,Dates de sol · licitud de baixa compensatòria no en vacances vàlides,
Complaint,Queixa,
Completion Date,Data d'acabament,
Computer,Ordinador,
Condition,Condició,
Configure,Configurar,
Configure {0},Configura {0},
Confirmed orders from Customers.,Comandes en ferm dels clients.,
Connect Amazon with ERPNext,Connecteu Amazon amb ERPNext,
Connect Shopify with ERPNext,Connecta Shopify amb ERPNext,
Connect to Quickbooks,Connecteu-vos a Quickbooks,
Connected to QuickBooks,Connectat a QuickBooks,
Connecting to QuickBooks,Connexió a QuickBooks,
Consultation,Consulta,
Consultations,Consultes,
Consulting,Consulting,
Consumable,Consumible,
Consumed,Consumit,
Consumed Amount,Quantitat consumida,
Consumed Qty,Quantitat utilitzada,
Consumer Products,Productes de Consum,
Contact,Contacte,
Contact Details,Detalls de contacte,
Contact Number,Nombre de contacte,
Contact Us,Contacta amb nosaltres,
Content,Contingut,
Content Masters,Mestres de contingut,
Content Type,Tipus de Contingut,
Continue Configuration,Continua la configuració,
Contract,Contracte,
Contract End Date must be greater than Date of Joining,La Data de finalització del contracte ha de ser major que la data d'inici,
Contribution %,Contribució%,
Contribution Amount,Quantitat aportada,
Conversion factor for default Unit of Measure must be 1 in row {0},Factor de conversió per a la unitat de mesura per defecte ha de ser d'1 a la fila {0},
Conversion rate cannot be 0 or 1,La taxa de conversió no pot ser 0 o 1,
Convert to Group,Convertir el Grup,
Convert to Non-Group,Convertir la no-Group,
Cosmetics,Productes cosmètics,
Cost Center,Centre de cost,
Cost Center Number,Número del centre de costos,
Cost Center and Budgeting,Centre de costos i pressupostos,
Cost Center is required in row {0} in Taxes table for type {1},Es requereix de centres de cost a la fila {0} en Impostos taula per al tipus {1},
Cost Center with existing transactions can not be converted to group,Un Centre de costos amb transaccions existents no es pot convertir en grup,
Cost Center with existing transactions can not be converted to ledger,Centre de costos de les transaccions existents no es pot convertir en llibre major,
Cost Centers,Centres de costos,
Cost Updated,Cost actualitzat,
Cost as on,costar en,
Cost of Delivered Items,Cost dels articles lliurats,
Cost of Goods Sold,Cost de Vendes,
Cost of Issued Items,Cost d'articles Emeses,
Cost of New Purchase,Cost de Compra de Nova,
Cost of Purchased Items,El cost d'articles comprats,
Cost of Scrapped Asset,Cost d&#39;Actius Scrapped,
Cost of Sold Asset,Cost d&#39;actiu venut,
Cost of various activities,Cost de diverses activitats,
"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again","No s&#39;ha pogut crear la Nota de crèdit de manera automàtica, desmarqueu &quot;Nota de crèdit d&#39;emissió&quot; i torneu a enviar-la",
Could not generate Secret,No es pot generar secret,
Could not retrieve information for {0}.,No s&#39;ha pogut obtenir la informació de {0}.,
Could not solve criteria score function for {0}. Make sure the formula is valid.,No s&#39;ha pogut resoldre la funció de puntuació de criteris per a {0}. Assegureu-vos que la fórmula sigui vàlida.,
Could not solve weighted score function. Make sure the formula is valid.,No s&#39;ha pogut resoldre la funció de puntuació ponderada. Assegureu-vos que la fórmula sigui vàlida.,
Could not submit some Salary Slips,No s&#39;han pogut enviar alguns esborranys salarials,
"Could not update stock, invoice contains drop shipping item.","No s&#39;ha pogut actualitzar valors, factura conté els articles de l&#39;enviament de la gota.",
Country wise default Address Templates,País savi defecte Plantilles de direcció,
Course,Curs,
Course Code: ,Codi del curs:,
Course Enrollment {0} does not exists,La inscripció al curs {0} no existeix,
Course Schedule,Horari del curs,
Course: ,Curs:,
Cr,Cr,
Create,Crear,
Create BOM,Creeu BOM,
Create Delivery Trip,Crea un viatge de lliurament,
Create Disbursement Entry,Creeu entrada de desemborsament,
Create Employee,Crear empleat,
Create Employee Records,Crear registres d&#39;empleats,
"Create Employee records to manage leaves, expense claims and payroll","Crear registres dels empleats per gestionar les fulles, les reclamacions de despeses i nòmina",
Create Fee Schedule,Creeu una programació de tarifes,
Create Fees,Crea tarifes,
Create Inter Company Journal Entry,Creeu l&#39;entrada del diari d&#39;Inter Company,
Create Invoice,Crea factura,
Create Invoices,Crea factures,
Create Job Card,Crea la targeta de treball,
Create Journal Entry,Crea entrada de diari,
Create Lead,Crea el plom,
Create Leads,crear Vendes,
Create Maintenance Visit,Crea una visita de manteniment,
Create Material Request,Crea sol·licitud de material,
Create Multiple,Crea diversos,
Create Opening Sales and Purchase Invoices,Creeu les factures de compra i venda d&#39;obertura,
Create Payment Entries,Creeu entrades de pagament,
Create Payment Entry,Creeu una entrada de pagament,
Create Print Format,Crear Format d&#39;impressió,
Create Purchase Order,Crea un ordre de compra,
Create Purchase Orders,Crear ordres de compra,
Create Quotation,Crear Cotització,
Create Salary Slip,Crear fulla de nòmina,
Create Salary Slips,Creeu Rebaixes salarials,
Create Sales Invoice,Crea factura de vendes,
Create Sales Order,Crea una comanda de vendes,
Create Sales Orders to help you plan your work and deliver on-time,Creeu comandes de vendes per ajudar-vos a planificar el vostre treball i a lliurar-lo puntualment,
Create Sample Retention Stock Entry,Creeu una entrada d’estoc de retenció d’exemple,
Create Student,Crear estudiant,
Create Student Batch,Crea lot lot d’estudiants,
Create Student Groups,Crear grups d&#39;estudiants,
Create Supplier Quotation,Creeu una cotització del proveïdor,
Create Tax Template,Crea una plantilla d’impostos,
Create Timesheet,Crea un full de temps,
Create User,crear usuari,
Create Users,crear usuaris,
Create Variant,Crea una variant,
Create Variants,Crear Variants,
"Create and manage daily, weekly and monthly email digests.","Creació i gestió de resums de correu electrònic diàries, setmanals i mensuals.",
Create customer quotes,Crear cites de clients,
Create rules to restrict transactions based on values.,Crear regles per restringir les transaccions basades en valors.,
Created {0} scorecards for {1} between: ,S&#39;ha creat {0} quadres de paràgraf per {1} entre:,
Creating Company and Importing Chart of Accounts,Creació de l&#39;empresa i importació de gràfics de comptes,
Creating Fees,Creació de tarifes,
Creating Payment Entries......,Creació d&#39;entrades de pagament ...,
Creating Salary Slips...,Creació d&#39;assentaments salaris ...,
Creating student groups,La creació de grups d&#39;estudiants,
Creating {0} Invoice,S&#39;està creant {0} factura,
Credit,Crèdit,
Credit ({0}),Crèdit ({0}),
Credit Account,Compte de crèdit,
Credit Balance,Saldo creditor,
Credit Card,Targeta de crèdit,
Credit Days cannot be a negative number,Els dies de crèdit no poden ser un nombre negatiu,
Credit Limit,Límit de crèdit,
Credit Note,Nota de crèdit,
Credit Note Amount,Nota de Crèdit Monto,
Credit Note Issued,Nota de Crèdit Publicat,
Credit Note {0} has been created automatically,La nota de crèdit {0} s&#39;ha creat automàticament,
Credit limit has been crossed for customer {0} ({1}/{2}),S&#39;ha creuat el límit de crèdit per al client {0} ({1} / {2}),
Creditors,Creditors,
Criteria weights must add up to 100%,Els pesos dels criteris han de sumar fins al 100%,
Crop Cycle,Cicle de cultius,
Crops & Lands,Cultius i terres,
Currency Exchange must be applicable for Buying or for Selling.,L&#39;intercanvi de divises ha de ser aplicable per a la compra o per a la venda.,
Currency can not be changed after making entries using some other currency,Moneda no es pot canviar després de fer entrades utilitzant alguna altra moneda,
Currency exchange rate master.,Tipus de canvi principal.,
Currency for {0} must be {1},Moneda per {0} ha de ser {1},
Currency is required for Price List {0},Informa de la divisa pera la Llista de preus {0},
Currency of the Closing Account must be {0},Divisa del compte de clausura ha de ser {0},
Currency of the price list {0} must be {1} or {2},La moneda de la llista de preus {0} ha de ser {1} o {2},
Currency should be same as Price List Currency: {0},La moneda ha de ser igual que la llista de preus Moneda: {0},
Current,actual,
Current Assets,Actiu Corrent,
Current BOM and New BOM can not be same,El BOM actual i el nou no poden ser el mateix,
Current Job Openings,Ofertes d&#39;ocupació actuals,
Current Liabilities,Passiu exigible,
Current Qty,Quantitat actual,
Current invoice {0} is missing,Falta la factura actual {0},
Custom HTML,HTML personalitzat,
Custom?,Personalitzada?,
Customer,Client,
Customer Addresses And Contacts,Adreces de clients i contactes,
Customer Contact,Client Contacte,
Customer Database.,Base de dades de clients.,
Customer Group,Grup de clients,
Customer LPO,Client LPO,
Customer LPO No.,Número de LPO del client,
Customer Name,Nom del client,
Customer POS Id,Aneu client POS,
Customer Service,Servei Al Client,
Customer and Supplier,Clients i Proveïdors,
Customer is required,Es requereix client,
Customer isn't enrolled in any Loyalty Program,El client no està inscrit en cap programa de lleialtat,
Customer required for 'Customerwise Discount',Client requereix per a 'Descompte Customerwise',
Customer {0} does not belong to project {1},Client {0} no pertany a projectar {1},
Customer {0} is created.,S&#39;ha creat el client {0}.,
Customers in Queue,Els clients en cua,
Customize Homepage Sections,Personalització de les seccions de la pàgina principal,
Customizing Forms,Formes Personalització,
Daily Project Summary for {0},Resum diari del projecte per a {0},
Daily Reminders,Recordatoris diaris,
Daily Work Summary,Resum diari de Treball,
Daily Work Summary Group,Grup de treball diari de resum,
Data Import and Export,Les dades d&#39;importació i exportació,
Data Import and Settings,Importació i configuració de dades,
Database of potential customers.,Base de dades de clients potencials.,
Date Format,Format de data,
Date Of Retirement must be greater than Date of Joining,Data de la jubilació ha de ser major que la data del contracte,
Date is repeated,Data repetida,
Date of Birth,Data de naixement,
Date of Birth cannot be greater than today.,Data de naixement no pot ser més gran que l&#39;actual.,
Date of Commencement should be greater than Date of Incorporation,La data de començament hauria de ser superior a la data d&#39;incorporació,
Date of Joining,Data d'ingrés,
Date of Joining must be greater than Date of Birth,Data d'ingrés ha de ser major que la data de naixement,
Date of Transaction,Data de la transacció,
Datetime,Data i hora,
Day,dia,
Debit,Dèbit,
Debit ({0}),Deute ({0}),
Debit A/C Number,Número A / C de dèbit,
Debit Account,Compte Dèbit,
Debit Note,Nota de dèbit,
Debit Note Amount,Nota de dèbit Quantitat,
Debit Note Issued,Nota de dèbit Publicat,
Debit To is required,Es requereix dèbit per,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,Dèbit i Crèdit no és igual per a {0} # {1}. La diferència és {2}.,
Debtors,Deutors,
Debtors ({0}),Deutors ({0}),
Declare Lost,Declara perdut,
Deduction,Deducció,
Default Activity Cost exists for Activity Type - {0},Hi Cost per defecte per al tipus d&#39;activitat Activitat - {0},
Default BOM ({0}) must be active for this item or its template,Per defecte la llista de materials ({0}) ha d&#39;estar actiu per aquest material o la seva plantilla,
Default BOM for {0} not found,BOM per defecte per {0} no trobat,
Default BOM not found for Item {0} and Project {1},Per defecte la llista de materials que no es troba d&#39;article {0} i {1} Projecte,
Default Letter Head,Capçalera per defecte,
Default Tax Template,Plantilla d&#39;impostos predeterminada,
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.,Unitat de mesura per defecte per a l&#39;article {0} no es pot canviar directament perquè ja ha realitzat alguna transacció (s) amb una altra UOM. Vostè haurà de crear un nou element a utilitzar un UOM predeterminat diferent.,
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Unitat de mesura per defecte per Variant &#39;{0}&#39; ha de ser el mateix que a la plantilla &#39;{1}&#39;,
Default settings for buying transactions.,Ajustos predeterminats per a transaccions de compra.,
Default settings for selling transactions.,Ajustos predeterminats per a les transaccions de venda,
Default tax templates for sales and purchase are created.,Es creen plantilles d&#39;impostos predeterminades per a vendes i compra.,
Defaults,Predeterminats,
Defense,Defensa,
Define Project type.,Defineix el tipus de projecte.,
Define budget for a financial year.,Definir pressupost per a un exercici.,
Define various loan types,Definir diversos tipus de préstecs,
Del,Del,
Delay in payment (Days),Retard en el pagament (dies),
Delete all the Transactions for this Company,Eliminar totes les transaccions per aquesta empresa,
Deletion is not permitted for country {0},La supressió no està permesa per al país {0},
Delivered,Alliberat,
Delivered Amount,Quantitat lliurada,
Delivered Qty,Quantitat lliurada,
Delivered: {0},Lliurat: {0},
Delivery,Lliurament,
Delivery Date,Data de lliurament,
Delivery Note,Nota de lliurament,
Delivery Note {0} is not submitted,La Nota de lliurament {0} no està presentada,
Delivery Note {0} must not be submitted,La Nota de lliurament {0} no es pot presentar,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,Albarans {0} ha de ser cancel·lat abans de cancel·lar aquesta comanda de vendes,
Delivery Notes {0} updated,Notes de lliurament {0} actualitzades,
Delivery Status,Estat de l'enviament,
Delivery Trip,Viatge de lliurament,
Delivery warehouse required for stock item {0},Magatzem de lliurament requerit per tema de valors {0},
Department,Departament,
Department Stores,Grans magatzems,
Depreciation,Depreciació,
Depreciation Amount,import de l&#39;amortització,
Depreciation Amount during the period,Import de l&#39;amortització durant el període,
Depreciation Date,La depreciació Data,
Depreciation Eliminated due to disposal of assets,La depreciació Eliminat causa de la disposició dels béns,
Depreciation Entry,Entrada depreciació,
Depreciation Method,Mètode de depreciació,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Fila de depreciació {0}: la data d&#39;inici de la depreciació s&#39;introdueix com data passada,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Fila d&#39;amortització {0}: el valor esperat després de vida útil ha de ser superior o igual a {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,La fila de depreciació {0}: la següent data de la depreciació no pot ser abans de la data d&#39;ús disponible,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Fila d&#39;amortització {0}: la següent data de depreciació no pot ser abans de la data de compra,
Designer,Dissenyador,
Detailed Reason,Motiu detallat,
Details,Detalls,
Details of Outward Supplies and inward supplies liable to reverse charge,Els detalls dels subministraments externs i els subministraments interiors poden generar una càrrega inversa,
Details of the operations carried out.,Els detalls de les operacions realitzades.,
Diagnosis,Diagnòstic,
Did not find any item called {0},No s&#39;ha trobat cap element anomenat {0},
Diff Qty,Diff Qty,
Difference Account,Compte de diferències,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Compte diferència ha de ser un tipus de compte d&#39;Actius / Passius, ja que aquest arxiu reconciliació és una entrada d&#39;Obertura",
Difference Amount,Diferència Monto,
Difference Amount must be zero,Diferència La quantitat ha de ser zero,
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.,UDMs diferents per als articles provocarà pesos nets (Total) erronis. Assegureu-vos que pes net de cada article és de la mateixa UDM.,
Direct Expenses,Despeses directes,
Direct Income,Ingrés Directe,
Disable,Desactiva,
Disabled template must not be default template,plantilla persones amb discapacitat no ha de ser plantilla per defecte,
Disburse Loan,Préstec de desemborsament,
Disbursed,Desemborsament,
Disc,Disc,
Discharge,Alta,
Discount,Descompte,
Discount Percentage can be applied either against a Price List or for all Price List.,El percentatge de descompte es pot aplicar ja sigui contra una llista de preus o per a tot Llista de Preus.,
Discount must be less than 100,Descompte ha de ser inferior a 100,
Diseases & Fertilizers,Malalties i fertilitzants,
Dispatch,Despatx,
Dispatch Notification,Notificació d&#39;enviaments,
Dispatch State,Estat de l&#39;enviament,
Distance,Distància,
Distribution,Distribució,
Distributor,Distribuïdor,
Dividends Paid,Dividends pagats,
Do you really want to restore this scrapped asset?,De veres voleu restaurar aquest actiu rebutjat?,
Do you really want to scrap this asset?,De veres voleu rebutjar aquest actiu?,
Do you want to notify all the customers by email?,Vols notificar a tots els clients per correu electrònic?,
Doc Date,Data de doc,
Doc Name,Nom del document,
Doc Type,Tipus Doc,
Docs Search,Cerca de documents,
Document Name,Nom del document,
Document Status,Estat del document,
Document Type,tipus de document,
Domain,Domini,
Domains,Dominis,
Done,Fet,
Donor,Donant,
Donor Type information.,Informació del tipus de donant.,
Donor information.,Informació de donants.,
Download JSON,Descarregueu JSON,
Draft,Esborrany,
Drop Ship,Nau de la gota,
Drug,Drogues,
Due / Reference Date cannot be after {0},A causa / Data de referència no pot ser posterior a {0},
Due Date cannot be before Posting / Supplier Invoice Date,La data de venciment no pot ser anterior a la data de publicació / factura del proveïdor,
Due Date is mandatory,Data de venciment és obligatori,
Duplicate Entry. Please check Authorization Rule {0},"Entrada duplicada. Si us plau, consulteu Regla d'autorització {0}",
Duplicate Serial No entered for Item {0},Número de sèrie duplicat per l'article {0},
Duplicate customer group found in the cutomer group table,Duplicar grup de clients que es troba a la taula de grups cutomer,
Duplicate entry,Entrada duplicada,
Duplicate item group found in the item group table,grup d&#39;articles duplicat trobat en la taula de grup d&#39;articles,
Duplicate roll number for student {0},nombre de rotllo duplicat per a l&#39;estudiant {0},
Duplicate row {0} with same {1},Duplicar fila {0} amb el mateix {1},
Duplicate {0} found in the table,Duplicar {0} que es troba a la taula,
Duration in Days,Durada en dies,
Duties and Taxes,Taxes i impostos,
E-Invoicing Information Missing,Informació de facturació electrònica que falta,
ERPNext Demo,demostració ERPNext,
ERPNext Settings,Configuració ERPNext,
Earliest,Earliest,
Earnest Money,Diners Earnest,
Earning,Guany,
Edit,Edita,
Edit Publishing Details,Edita els detalls de la publicació,
"Edit in full page for more options like assets, serial nos, batches etc.","Editeu a la pàgina completa per obtenir més opcions com a actius, números de sèrie, lots, etc.",
Education,Educació,
Either location or employee must be required,Tant la ubicació com l&#39;empleat han de ser obligatoris,
Either target qty or target amount is mandatory,Cal la Quantitat destí i la origen,
Either target qty or target amount is mandatory.,Tan quantitat destí com Quantitat són obligatoris.,
Electrical,Elèctric,
Electronic Equipments,Equips electrònics,
Electronics,Electrònica,
Eligible ITC,ITC elegible,
Email Account,Compte de correu electrònic,
Email Address,Correu electrònic,
"Email Address must be unique, already exists for {0}","Adreça de correu electrònic ha de ser únic, ja existeix per {0}",
Email Digest: ,Enviar Resum:,
Email Reminders will be sent to all parties with email contacts,Els recordatoris de correu electrònic s&#39;enviaran a totes les parts amb contactes de correu electrònic,
Email Sent,Correu electrònic enviat,
Email Template,Plantilla de correu electrònic,
Email not found in default contact,No s&#39;ha trobat el correu electrònic al contacte predeterminat,
Email sent to {0},Correu electrònic enviat a {0},
Employee,Empleat,
Employee A/C Number,Número d&#39;A / C de l&#39;empleat,
Employee Advances,Avantatges dels empleats,
Employee Benefits,Beneficis als empleats,
Employee Grade,Grau d&#39;empleat,
Employee ID,Identificació d’empleat,
Employee Lifecycle,Cicle de vida dels empleats,
Employee Name,Nom de l'Empleat,
Employee Promotion cannot be submitted before Promotion Date ,La promoció dels empleats no es pot enviar abans de la data de la promoció,
Employee Referral,Referències de feina,
Employee Transfer cannot be submitted before Transfer Date ,La transferència d&#39;empleats no es pot enviar abans de la data de transferència,
Employee cannot report to himself.,Empleat no pot informar-se a si mateix.,
Employee relieved on {0} must be set as 'Left',Empleat rellevat en {0} ha de ser establert com 'Esquerra',
Employee {0} already submited an apllication {1} for the payroll period {2},L&#39;empleat {0} ja ha enviat un apllication {1} per al període de nòmina {2},
Employee {0} has already applied for {1} between {2} and {3} : ,L&#39;empleat {0} ja ha sol·licitat {1} entre {2} i {3}:,
Employee {0} has no maximum benefit amount,L&#39;empleat {0} no té cap benefici màxim,
Employee {0} is not active or does not exist,L'Empleat {0} no està actiu o no existeix,
Employee {0} is on Leave on {1},L&#39;empleat {0} està en Leave on {1},
Employee {0} of grade {1} have no default leave policy,L&#39;empleat {0} del grau {1} no té una política d&#39;abandonament predeterminat,
Employee {0} on Half day on {1},Empleat {0} del mig dia del {1},
Enable,Permetre,
Enable / disable currencies.,Activar / desactivar les divises.,
Enabled,Activat,
"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Habilitació d &#39; «ús de Compres&#39;, com cistella de la compra és activat i ha d&#39;haver almenys una regla fiscal per Compres",
End Date,Data de finalització,
End Date can not be less than Start Date,La data de finalització no pot ser inferior a la data d&#39;inici,
End Date cannot be before Start Date.,La data de finalització no pot ser abans de la data d&#39;inici.,
End Year,De cap d&#39;any,
End Year cannot be before Start Year,Any de finalització no pot ser anterior inici any,
End on,Finalitza,
End time cannot be before start time,L’hora de finalització no pot ser abans de l’hora d’inici,
Ends On date cannot be before Next Contact Date.,Finalitza la data no pot ser abans de la següent data de contacte.,
Energy,Energia,
Engineer,Enginyer,
Enough Parts to Build,Peces suficient per construir,
Enroll,inscriure,
Enrolling student,estudiant que s&#39;inscriu,
Enrolling students,Inscripció d&#39;estudiants,
Enter depreciation details,Introduïu detalls de la depreciació,
Enter the Bank Guarantee Number before submittting.,Introduïu el número de garantia bancària abans de presentar-lo.,
Enter the name of the Beneficiary before submittting.,Introduïu el nom del Beneficiari abans de presentar-lo.,
Enter the name of the bank or lending institution before submittting.,Introduïu el nom del banc o de la institució creditícia abans de presentar-lo.,
Enter value betweeen {0} and {1},Introduïu el valor entre {0} i {1},
Entertainment & Leisure,Entreteniment i oci,
Entertainment Expenses,Despeses d'Entreteniment,
Equity,Equitat,
Error Log,Registre d&#39;errors,
Error evaluating the criteria formula,S&#39;ha produït un error en avaluar la fórmula de criteris,
Error in formula or condition: {0},Error en la fórmula o condició: {0},
Error: Not a valid id?,Error: No és un document d&#39;identitat vàlid?,
Estimated Cost,Cost estimat,
Evaluation,Avaluació,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Fins i tot si hi ha diverses regles de preus amb major prioritat, s'apliquen prioritats internes:",
Event,Esdeveniment,
Event Location,Ubicació de l&#39;esdeveniment,
Event Name,Nom de l&#39;esdeveniment,
Exchange Gain/Loss,Guany en Canvi / Pèrdua,
Exchange Rate Revaluation master.,Mestre de revaloració de tipus de canvi.,
Exchange Rate must be same as {0} {1} ({2}),Tipus de canvi ha de ser el mateix que {0} {1} ({2}),
Excise Invoice,Impostos Especials Factura,
Execution,Execució,
Executive Search,Cerca d'Executius,
Expand All,expandir tots,
Expected Delivery Date,Data de lliurament esperada,
Expected Delivery Date should be after Sales Order Date,La data de lliurament prevista hauria de ser posterior a la data de la comanda de vendes,
Expected End Date,Esperat Data de finalització,
Expected Hrs,Hores esperades,
Expected Start Date,Data prevista d'inici,
Expense,Despesa,
Expense / Difference account ({0}) must be a 'Profit or Loss' account,"El compte de despeses / diferències ({0}) ha de ser un compte ""Guany o Pèrdua '",
Expense Account,Compte de despeses,
Expense Claim,Compte de despeses,
Expense Claim for Vehicle Log {0},Reclamació de despeses per al registre de vehicles {0},
Expense Claim {0} already exists for the Vehicle Log,Relació de despeses {0} ja existeix per al registre de vehicles,
Expense Claims,Les reclamacions de despeses,
Expense account is mandatory for item {0},El compte de despeses és obligatòria per a cada element {0},
Expenses,Despeses,
Expenses Included In Asset Valuation,Despeses incloses en la valoració d&#39;actius,
Expenses Included In Valuation,Despeses incloses en la valoració,
Expired Batches,Llançaments caducats,
Expires On,Caduca el,
Expiring On,S&#39;està caducant,
Expiry (In Days),Caducitat (en dies),
Explore,Explorar,
Export E-Invoices,Exporta factures electròniques,
Extra Large,Extra gran,
Extra Small,Extra Petit,
Fail,Falla,
Failed,Fracassat,
Failed to create website,No s&#39;ha pogut crear el lloc web,
Failed to install presets,No s&#39;ha pogut instal·lar els valors predeterminats,
Failed to login,No s&#39;ha pogut iniciar la sessió,
Failed to setup company,No s&#39;ha pogut configurar l&#39;empresa,
Failed to setup defaults,No s&#39;ha pogut configurar els valors predeterminats de la configuració,
Failed to setup post company fixtures,No s&#39;ha pogut configurar els accessoris post company,
Fax,Fax,
Fee,quota,
Fee Created,Taxa creada,
Fee Creation Failed,Error en la creació de tarifes,
Fee Creation Pending,Creació de tarifes pendents,
Fee Records Created - {0},Els registres d&#39;honoraris creats - {0},
Feedback,Resposta,
Fees,taxes,
Female,Dona,
Fetch Data,Obteniu dades,
Fetch Subscription Updates,Obteniu actualitzacions de subscripció,
Fetch exploded BOM (including sub-assemblies),Fetch exploded BOM (including sub-assemblies),
Fetching records......,Recuperació de registres ......,
Field Name,Nom del camp,
Fieldname,FIELDNAME,
Fields,Camps,
Fill the form and save it,Ompliu el formulari i deseu,
Filter Employees By (Optional),Filtra els empleats per (opcional),
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Filtre de camps de fila # {0}: el nom de camp <b>{1}</b> ha de ser del tipus &quot;Enllaç&quot; o &quot;Taula multiSelect&quot;,
Filter Total Zero Qty,Nombre total de filtres zero,
Finance Book,Llibre de finances,
Financial / accounting year.,Exercici comptabilitat /.,
Financial Services,Serveis financers,
Financial Statements,Estats financers,
Financial Year,Any financer,
Finish,acabat,
Finished Good,Acabat bé,
Finished Good Item Code,Codi de l&#39;element bo acabat,
Finished Goods,Béns Acabats,
Finished Item {0} must be entered for Manufacture type entry,Article Acabat {0} ha de ser introduït per a l&#39;entrada Tipus de Fabricació,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,La quantitat de producte acabada <b>{0}</b> i la quantitat <b>{1}</b> no pot ser diferent,
First Name,Nom,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","El règim fiscal és obligatori, cal establir el règim fiscal a l&#39;empresa {0}",
Fiscal Year,Any fiscal,
Fiscal Year End Date should be one year after Fiscal Year Start Date,La data de finalització de l&#39;any fiscal hauria de ser un any després de la data d&#39;inici de l&#39;any fiscal,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Any fiscal Data d'Inici i Final de l'exercici fiscal data ja es troben en l'Any Fiscal {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,La data d&#39;inici de l&#39;any fiscal hauria de ser un any abans que la data de finalització de l&#39;any fiscal,
Fiscal Year {0} does not exist,Any fiscal {0} no existeix,
Fiscal Year {0} is required,Any fiscal {0} és necessari,
Fiscal Year {0} not found,Any fiscal {0} no trobat,
Fixed Asset,Actius Fixos,
Fixed Asset Item must be a non-stock item.,Actius Fixos L&#39;article ha de ser una posició no de magatzem.,
Fixed Assets,Actius fixos,
Following Material Requests have been raised automatically based on Item's re-order level,Després de sol·licituds de materials s&#39;han plantejat de forma automàtica segons el nivell de re-ordre de l&#39;article,
Following accounts might be selected in GST Settings:,Els comptes següents es podrien seleccionar a Configuració de GST:,
Following course schedules were created,Es van crear els horaris dels cursos següents,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,L&#39;element següent {0} no està marcat com a {1} element. Podeu habilitar-los com a {1} ítem des del vostre ítem principal,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Els següents elements {0} no estan marcats com a {1} element. Podeu habilitar-los com a {1} ítem des del vostre ítem principal,
Food,Menjar,
"Food, Beverage & Tobacco","Alimentació, begudes i tabac",
For,Per,
"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.","Pels articles &#39;Producte Bundle&#39;, Magatzem, Serial No i lots No serà considerat en el quadre &#39;Packing List&#39;. Si Warehouse i lots No són les mateixes per a tots els elements d&#39;embalatge per a qualsevol element &#39;Producte Bundle&#39;, aquests valors es poden introduir a la taula principal de l&#39;article, els valors es copiaran a la taula &quot;Packing List &#39;.",
For Employee,Per als Empleats,
For Quantity (Manufactured Qty) is mandatory,Per Quantitat (Fabricat Quantitat) és obligatori,
For Supplier,Per Proveïdor,
For Warehouse,Per Magatzem,
For Warehouse is required before Submit,Cal informar del magatzem destí abans de presentar,
"For an item {0}, quantity must be negative number","Per a un element {0}, la quantitat ha de ser un número negatiu",
"For an item {0}, quantity must be positive number","Per a un element {0}, la quantitat ha de ser un número positiu",
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry","Per a la targeta de treball {0}, només podeu fer l&#39;entrada al material &quot;Tipus de transferència de material per a la fabricació&quot;",
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Per a la fila {0} a {1}. Per incloure {2} en la taxa d&#39;article, files {3} també han de ser inclosos",
For row {0}: Enter Planned Qty,Per a la fila {0}: introduïu el qty planificat,
"For {0}, only credit accounts can be linked against another debit entry","Per {0}, només els comptes de crèdit es poden vincular amb un altre seient de dèbit",
"For {0}, only debit accounts can be linked against another credit entry","Per {0}, només els comptes de dèbit poden ser enllaçats amb una altra entrada de crèdit",
Forum Activity,Activitat del fòrum,
Free item code is not selected,El codi de l’element gratuït no està seleccionat,
Freight and Forwarding Charges,Freight and Forwarding Charges,
Frequency,Freqüència,
Friday,Divendres,
From,Des,
From Address 1,Des de l&#39;adreça 1,
From Address 2,Des de l&#39;adreça 2,
From Currency and To Currency cannot be same,Des moneda i moneda no pot ser el mateix,
From Date and To Date lie in different Fiscal Year,A partir de data i data es troben en diferents exercicis,
From Date cannot be greater than To Date,De la data no pot ser més gran que A Data,
From Date must be before To Date,A partir de la data ha de ser abans Per Data,
From Date should be within the Fiscal Year. Assuming From Date = {0},A partir de la data ha de ser dins de l'any fiscal. Suposant De Data = {0},
From Date {0} cannot be after employee's relieving Date {1},Des de la data {0} no es pot produir després de l&#39;alleujament de l&#39;empleat Data {1},
From Date {0} cannot be before employee's joining Date {1},Des de la data {0} no es pot fer abans de la data d&#39;incorporació de l&#39;empleat {1},
From Datetime,A partir de data i hora,
From Delivery Note,De la nota de lliurament,
From Fiscal Year,Des de l&#39;any fiscal,
From GSTIN,De GSTIN,
From Party Name,Del nom del partit,
From Pin Code,Des del codi del PIN,
From Place,Des de la Plaça,
From Range has to be less than To Range,De Gamma ha de ser menor que en la nostra gamma,
From State,De l&#39;Estat,
From Time,From Time,
From Time Should Be Less Than To Time,Des del temps hauria de ser menys que el temps,
From Time cannot be greater than To Time.,Des del temps no pot ser més gran que en tant.,
"From a supplier under composition scheme, Exempt and Nil rated","D’un proveïdor en règim de composició, ha valorat Exempt i Nil",
From and To dates required,Des i Fins a la data sol·licitada,
From date can not be less than employee's joining date,La data no pot ser inferior a la data d&#39;entrada de l&#39;empleat,
From value must be less than to value in row {0},De valor ha de ser inferior al valor de la fila {0},
From {0} | {1} {2},Des {0} | {1} {2},
Fuel Price,Preu del combustible,
Fuel Qty,Quantitat de combustible,
Fulfillment,Realització,
Full,Complet,
Full Name,Nom complet,
Full-time,Temps complet,
Fully Depreciated,Estant totalment amortitzats,
Furnitures and Fixtures,Mobles i accessoris,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Altres comptes es poden fer en grups, però les entrades es poden fer contra els no Grups",
Further cost centers can be made under Groups but entries can be made against non-Groups,"Centres de costos addicionals es poden fer en grups, però les entrades es poden fer contra els no Grups",
Further nodes can be only created under 'Group' type nodes,Només es poden crear més nodes amb el tipus 'Grup',
Future dates not allowed,No es permeten dates futures,
GSTIN,GSTIN,
GSTR3B-Form,Formulari GSTR3B,
Gain/Loss on Asset Disposal,Guany / Pèrdua per venda d&#39;actius,
Gantt Chart,Diagrama de Gantt,
Gantt chart of all tasks.,Diagrama de Gantt de totes les tasques.,
Gender,Gènere,
General,General,
General Ledger,Comptabilitat General,
Generate Material Requests (MRP) and Work Orders.,Generar sol·licituds de materials (MRP) i comandes de treball.,
Generate Secret,Genera el secret,
Get Details From Declaration,Obteniu detalls de la declaració,
Get Employees,Obtenir empleats,
Get Invocies,Obteniu invocacions,
Get Invoices,Obteniu factures,
Get Invoices based on Filters,Obteniu factures basades en filtres,
Get Items from BOM,Obtenir elements de la llista de materials,
Get Items from Healthcare Services,Obtenir articles dels serveis sanitaris,
Get Items from Prescriptions,Obtenir articles de les receptes,
Get Items from Product Bundle,Obtenir elements del paquet del producte,
Get Suppliers,Obteniu proveïdors,
Get Suppliers By,Obteniu proveïdors per,
Get Updates,Obtenir actualitzacions,
Get customers from,Obteniu clients,
Get from Patient Encounter,Obtenir de Trobada de pacients,
Getting Started,Començant,
GitHub Sync ID,Identificador de sincronització de GitHub,
Global settings for all manufacturing processes.,La configuració global per a tots els processos de fabricació.,
Go to the Desktop and start using ERPNext,Aneu a l&#39;escriptori i començar a utilitzar ERPNext,
GoCardless SEPA Mandate,Mandat de SEPA GoCardless,
GoCardless payment gateway settings,Configuració de la passarel·la de pagament GoCardless,
Goal and Procedure,Objectiu i procediment,
Goals cannot be empty,Els objectius no poden estar buits,
Goods In Transit,Béns en trànsit,
Goods Transferred,Transferència de mercaderies,
Goods and Services Tax (GST India),Béns i serveis (GST Índia),
Goods are already received against the outward entry {0},Les mercaderies ja es reben amb l&#39;entrada exterior {0},
Government,Govern,
Grand Total,Gran Total,
Grant,Concessió,
Grant Application,Sol·licitud de subvenció,
Grant Leaves,Fulles de subvenció,
Grant information.,Concedeix informació.,
Grocery,Botiga,
Gross Pay,Sou brut,
Gross Profit,Benefici brut,
Gross Profit %,Benefici Brut%,
Gross Profit / Loss,Utilitat Bruta / Pèrdua,
Gross Purchase Amount,Compra import brut,
Gross Purchase Amount is mandatory,Compra import brut és obligatori,
Group by Account,Agrupa Per Comptes,
Group by Party,Grup per partit,
Group by Voucher,Agrupa per comprovants,
Group by Voucher (Consolidated),Grup per val (consolidat),
Group node warehouse is not allowed to select for transactions,magatzem node de grup no se li permet seleccionar per a les transaccions,
Group to Non-Group,Grup de No-Grup,
Group your students in batches,Agrupar seus estudiants en lots,
Groups,Grups,
Guardian1 Email ID,Guardian1 ID de correu electrònic,
Guardian1 Mobile No,Sense Guardian1 mòbil,
Guardian1 Name,nom Guardian1,
Guardian2 Email ID,Guardian2 ID de correu electrònic,
Guardian2 Mobile No,Sense Guardian2 mòbil,
Guardian2 Name,nom Guardian2,
Guest,Convidat,
HR Manager,Gerent de Recursos Humans,
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Day,Medi Dia,
Half Day Date is mandatory,La data de mig dia és obligatòria,
Half Day Date should be between From Date and To Date,Mig dia de la data ha d&#39;estar entre De la data i Fins a la data,
Half Day Date should be in between Work From Date and Work End Date,La data de mig dia ha d&#39;estar entre el treball des de la data i la data de finalització del treball,
Half Yearly,Semestrals,
Half day date should be in between from date and to date,La data de mig dia ha d&#39;estar entre la data i la data,
Half-Yearly,Semestral,
Hardware,Maquinari,
Head of Marketing and Sales,Director de Màrqueting i Vendes,
Health Care,Sanitari,
Healthcare,Atenció sanitària,
Healthcare (beta),Assistència sanitària (beta),
Healthcare Practitioner,Practicant sanitari,
Healthcare Practitioner not available on {0},L&#39;assistent sanitari no està disponible a {0},
Healthcare Practitioner {0} not available on {1},L&#39;assistent sanitari {0} no està disponible el {1},
Healthcare Service Unit,Unitat de serveis sanitaris,
Healthcare Service Unit Tree,Servei d&#39;atenció mèdica Unitat arbre,
Healthcare Service Unit Type,Tipus d&#39;unitat de servei sanitari,
Healthcare Services,Serveis sanitaris,
Healthcare Settings,Configuració assistencial,
Hello,Hola,
Help Results for,Resultats d&#39;Ajuda per a,
High,Alt,
High Sensitivity,Alta sensibilitat,
Hold,Mantenir,
Hold Invoice,Mantenir la factura,
Holiday,Festiu,
Holiday List,Llista de vacances,
Hotel Rooms of type {0} are unavailable on {1},Les habitacions de tipus {0} de l&#39;hotel no estan disponibles a {1},
Hotels,Hotels,
Hourly,Hora per hora,
Hours,Hores,
House rent paid days overlapping with {0},Lloguer de casa dies pagats sobreposats a {0},
House rented dates required for exemption calculation,Data de lloguer de casa necessària per al càlcul d&#39;exempció,
House rented dates should be atleast 15 days apart,Les dates llogades de la casa han de ser almenys de 15 dies separades,
How Pricing Rule is applied?,Com s'aplica la regla de preus?,
Hub Category,Categoria de concentrador,
Hub Sync ID,Identificador de sincronització del concentrador,
Human Resource,Recursos humans,
Human Resources,Recursos humans,
IFSC Code,Codi IFSC,
IGST Amount,Import de l&#39;IGST,
IP Address,Adreça IP,
ITC Available (whether in full op part),TIC disponible (en qualsevol part opcional),
ITC Reversed,ITC invertit,
Identifying Decision Makers,Identificació de fabricants de decisions,
"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Si s&#39;activa Auto Opt In, els clients es connectaran automàticament al Programa de fidelització (en desar)",
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Si hi ha diverses regles de preus vàlides, es demanarà als usuaris que estableixin la prioritat manualment per resoldre el conflicte.",
"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.","Si es selecciona la regla de preus per a &quot;Tarifa&quot;, sobreescriurà la llista de preus. La tarifa de la tarifa de preus és la tarifa final, de manera que no s&#39;ha d&#39;aplicar un descompte addicional. Per tant, en transaccions com ara Ordre de vendes, Ordre de compra, etc., s&#39;obtindrà en el camp &quot;Tarifa&quot;, en lloc del camp &quot;Tarifa de tarifes de preus&quot;.",
"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.","Si dos o més regles de preus es troben basats en les condicions anteriors, s'aplica Prioritat. La prioritat és un nombre entre 0 a 20 mentre que el valor per defecte és zero (en blanc). Un nombre més alt significa que va a prevaler si hi ha diverses regles de preus amb mateixes condicions.",
"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Si expiració il·limitada dels Punts de fidelització, mantingueu la durada de caducitat buida o 0.",
"If you have any questions, please get back to us.","Si vostè té alguna pregunta, si us plau tornar a nosaltres.",
Ignore Existing Ordered Qty,Ignoreu la quantitat ordenada existent,
Image,Imatge,
Image View,Veure imatges,
Import Data,Importa dades,
Import Day Book Data,Importa les dades del llibre de dia,
Import Log,Importa registre,
Import Master Data,Importa dades de mestre,
Import in Bulk,Importació a granel,
Import of goods,Importació de mercaderies,
Import of services,Importació de serveis,
Importing Items and UOMs,Importació d&#39;elements i OIM,
Importing Parties and Addresses,Importació de parts i adreces,
In Maintenance,En manteniment,
In Production,En producció,
In Qty,En Quantitat,
In Stock Qty,En estoc Quantitat,
In Stock: ,En Stock:,
In Value,En valor,
"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","En el cas del programa de diversos nivells, els clients seran assignats automàticament al nivell corresponent segons el seu gastat",
Inactive,Inactiu,
Incentives,Incentius,
Include Default Book Entries,Inclou les entrades de llibres predeterminats,
Include Exploded Items,Inclou articles explotats,
Include POS Transactions,Inclou transaccions de POS,
Include UOM,Inclou UOM,
Included in Gross Profit,Inclòs en el benefici brut,
Income,Ingressos,
Income Account,Compte d'ingressos,
Income Tax,Impost sobre els guanys,
Incoming,Entrant,
Incoming Rate,Incoming Rate,
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Nombre incorrecte d'entrades del llibre major. És possible que hi hagi seleccionat un compte erroni en la transacció.,
Increment cannot be 0,Increment no pot ser 0,
Increment for Attribute {0} cannot be 0,Increment de Atribut {0} no pot ser 0,
Indirect Expenses,Despeses indirectes,
Indirect Income,Ingressos indirectes,
Individual,Individual,
Ineligible ITC,TIC no elegible,
Initiated,Iniciada,
Inpatient Record,Registre d&#39;hospitalització,
Insert,Insereix,
Installation Note,Nota d'instal·lació,
Installation Note {0} has already been submitted,La Nota d'Instal·lació {0} ja s'ha presentat,
Installation date cannot be before delivery date for Item {0},Data d'instal·lació no pot ser abans de la data de lliurament d'article {0},
Installing presets,Instal·lació de valors predeterminats,
Institute Abbreviation,Institut Abreviatura,
Institute Name,nom Institut,
Instructor,Instructor,
Insufficient Stock,insuficient Stock,
Insurance Start date should be less than Insurance End date,data d&#39;inici d&#39;assegurança ha de ser inferior a la data d&#39;Assegurances Fi,
Integrated Tax,Impost integrat,
Inter-State Supplies,Subministraments entre Estats,
Interest Amount,Suma d&#39;interès,
Interests,interessos,
Intern,Intern,
Internet Publishing,Publicant a Internet,
Intra-State Supplies,Subministraments intraestatals,
Introduction,Introducció,
Invalid Attribute,Atribut no vàlid,
Invalid Blanket Order for the selected Customer and Item,Ordre de manta no vàlid per al client i l&#39;article seleccionats,
Invalid Company for Inter Company Transaction.,Empresa no vàlida per a transaccions entre empreses.,
Invalid GSTIN! A GSTIN must have 15 characters.,GSTIN no vàlid. Un GSTIN ha de tenir 15 caràcters.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,GSTIN no vàlid. Els dos primers dígits de GSTIN haurien de coincidir amb el número d&#39;estat {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,GSTIN no vàlid. L&#39;entrada que heu introduït no coincideix amb el format de GSTIN.,
Invalid Posting Time,Hora de publicació no vàlida,
Invalid attribute {0} {1},Atribut no vàlid {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Quantitat no vàlid per a l'aricle {0}. Quantitat ha de ser major que 0.,
Invalid reference {0} {1},Invàlid referència {0} {1},
Invalid {0},No vàlida {0},
Invalid {0} for Inter Company Transaction.,{0} no vàlid per a transaccions entre empreses.,
Invalid {0}: {1},No vàlida {0}: {1},
Inventory,Inventari,
Investment Banking,Banca d'Inversió,
Investments,Inversions,
Invoice,Factura,
Invoice Created,Factura creada,
Invoice Discounting,Descompte de factura,
Invoice Patient Registration,Facturació Registre de pacients,
Invoice Posting Date,Data de la factura d&#39;enviament,
Invoice Type,Tipus de factura,
Invoice already created for all billing hours,Factura ja creada per a totes les hores de facturació,
Invoice can't be made for zero billing hour,La factura no es pot fer per zero hores de facturació,
Invoice {0} no longer exists,La factura {0} ja no existeix,
Invoiced,Facturació,
Invoiced Amount,Quantitat facturada,
Invoices,Factures,
Invoices for Costumers.,Factures per als clients.,
Inward supplies from ISD,Subministraments interiors de ISD,
Inward supplies liable to reverse charge (other than 1 & 2 above),Subministraments interns susceptibles de recàrrega inversa (que no siguin 1 i 2 anteriors),
Is Active,Està actiu,
Is Default,És per defecte,
Is Existing Asset,És existent d&#39;actius,
Is Frozen,Està congelat,
Is Group,És el grup,
Issue,Incidència,
Issue Material,Material Issue,
Issued,Emès,
Issues,Qüestions,
It is needed to fetch Item Details.,Es necessita a cercar Detalls de l&#39;article.,
Item,Article,
Item 1,Article 1,
Item 2,Article 2,
Item 3,Article 3,
Item 4,Article 4,
Item 5,Tema 5,
Item Cart,Cistella d&#39;articles,
Item Code,Codi de l'article,
Item Code cannot be changed for Serial No.,El Codi de l'article no es pot canviar de número de sèrie,
Item Code required at Row No {0},Codi de l'article necessari a la fila n {0},
Item Description,Descripció de l'Article,
Item Group,Grup d'articles,
Item Group Tree,Arbre de grups d'article,
Item Group not mentioned in item master for item {0},Grup L'article no esmenta en mestre d'articles per a l'article {0},
Item Name,Nom de l&#39;ítem,
Item Price added for {0} in Price List {1},Article Preu afegit per {0} en Preu de llista {1},
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","El preu de l&#39;element apareix diverses vegades segons la llista de preus, proveïdor / client, moneda, element, UOM, quantia i dates.",
Item Price updated for {0} in Price List {1},Article Preu s&#39;actualitza per {0} de la llista de preus {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,L&#39;element fila {0}: {1} {2} no existeix a la taula superior de &#39;{1}&#39;,
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,La fila de l'impost d'article {0} ha de tenir en compte el tipus d'impostos o ingressos o despeses o imposable,
Item Template,Plantilla d&#39;elements,
Item Variant Settings,Configuració de la variant de l&#39;element,
Item Variant {0} already exists with same attributes,Article Variant {0} ja existeix amb els mateixos atributs,
Item Variants,Variants de l&#39;article,
Item Variants updated,Variants d&#39;elements actualitzats,
Item has variants.,L&#39;article té variants.,
Item must be added using 'Get Items from Purchase Receipts' button,L'article ha de ser afegit usant 'Obtenir elements de rebuts de compra' botó,
Item valuation rate is recalculated considering landed cost voucher amount,La taxa de valorització de l'article es torna a calcular tenint en compte landed cost voucher amount,
Item variant {0} exists with same attributes,Hi ha la variant d&#39;article {0} amb mateixos atributs,
Item {0} does not exist,Article {0} no existeix,
Item {0} does not exist in the system or has expired,L'Article {0} no existeix en el sistema o ha caducat,
Item {0} has already been returned,Article {0} ja s'ha tornat,
Item {0} has been disabled,Element {0} ha estat desactivat,
Item {0} has reached its end of life on {1},Article {0} ha arribat a la seva fi de vida del {1},
Item {0} ignored since it is not a stock item,Article {0} ignorat ja que no és un article d'estoc,
"Item {0} is a template, please select one of its variants","Article {0} és una plantilla, per favor seleccioni una de les seves variants",
Item {0} is cancelled,L'article {0} està cancel·lat,
Item {0} is disabled,Article {0} està deshabilitat,
Item {0} is not a serialized Item,Article {0} no és un article serialitzat,
Item {0} is not a stock Item,Article {0} no és un article d'estoc,
Item {0} is not active or end of life has been reached,L'article {0} no està actiu o ha arribat al final de la seva vida,
Item {0} is not setup for Serial Nos. Check Item master,L'Article {0} no està configurat per a números de sèrie. Comprova la configuració d'articles,
Item {0} is not setup for Serial Nos. Column must be blank,L'Article {0} no està configurat per números de sèrie. La columna ha d'estar en blanc,
Item {0} must be a Fixed Asset Item,Element {0} ha de ser un element d&#39;actiu fix,
Item {0} must be a Sub-contracted Item,Article {0} ha de ser un subcontractada article,
Item {0} must be a non-stock item,Element {0} ha de ser una posició no de magatzem,
Item {0} must be a stock Item,Article {0} ha de ser un d'article de l'estoc,
Item {0} not found,Article {0} no trobat,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},Article {0} no es troba en &#39;matèries primeres subministrades&#39; taula en l&#39;Ordre de Compra {1},
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Article {0}: Quantitat ordenada {1} no pot ser menor que el qty comanda mínima {2} (definit en l&#39;article).,
Item: {0} does not exist in the system,Article: {0} no existeix en el sistema,
Items,Articles,
Items Filter,Filtre elements,
Items and Pricing,Articles i preus,
Items for Raw Material Request,Articles per a sol·licitud de matèries primeres,
Job Card,Targeta de treball,
Job Description,Descripció del Treball,
Job Offer,Oferta de treball,
Job card {0} created,S&#39;ha creat la targeta de treball {0},
Jobs,ocupacions,
Join,unir-se,
Journal Entries {0} are un-linked,Entrades de diari {0} són no enllaçat,
Journal Entry,Entrada de diari,
Journal Entry {0} does not have account {1} or already matched against other voucher,Seient {0} no té compte {1} o ja compara amb un altre bo,
Kanban Board,Junta Kanban,
Key Reports,Informes clau,
LMS Activity,Activitat LMS,
Lab Test,Prova de laboratori,
Lab Test Report,Informe de prova de laboratori,
Lab Test Sample,Exemple de prova de laboratori,
Lab Test Template,Plantilla de prova de laboratori,
Lab Test UOM,Prova de laboratori UOM,
Lab Tests and Vital Signs,Proves de laboratori i signes vitals,
Lab result datetime cannot be before testing datetime,El resultat del laboratori no es pot fer abans de provar datetime,
Lab testing datetime cannot be before collection datetime,La prova de laboratori datetime no pot ser abans de la data de cobrament,
Label,Etiqueta,
Laboratory,Laboratori,
Language Name,Nom d&#39;idioma,
Large,Gran,
Last Communication,Última comunicació,
Last Communication Date,Darrera data de comunicació,
Last Name,Cognoms,
Last Order Amount,Darrera Quantitat de l'ordre,
Last Order Date,Darrera Data de comanda,
Last Purchase Price,Darrer preu de compra,
Last Purchase Rate,Darrera Compra Rate,
Latest,Més recent,
Latest price updated in all BOMs,Últim preu actualitzat a totes les BOM,
Lead,Client potencial,
Lead Count,Comptador de plom,
Lead Owner,Responsable del client potencial,
Lead Owner cannot be same as the Lead,Propietari plom no pot ser la mateixa que la de plom,
Lead Time Days,Temps de Lliurament Dies,
Lead to Quotation,El plom a la Petició,
"Leads help you get business, add all your contacts and more as your leads","Cables ajuden a obtenir negoci, posar tots els seus contactes i més com els seus clients potencials",
Learn,Aprendre,
Leave Approval Notification,Deixeu la notificació d&#39;aprovació,
Leave Blocked,Absència bloquejada,
Leave Encashment,deixa Cobrament,
Leave Management,Deixa Gestió,
Leave Status Notification,Deixeu la notificació d&#39;estat,
Leave Type,Tipus de llicència,
Leave Type is madatory,El tipus de sort és madatorio,
Leave Type {0} cannot be allocated since it is leave without pay,Deixa Tipus {0} no pot ser assignat ja que es deixa sense paga,
Leave Type {0} cannot be carry-forwarded,Deixar tipus {0} no es poden enviar-portar,
Leave Type {0} is not encashable,El tipus de sortida {0} no es pot encaixar,
Leave Without Pay,Absències sense sou,
Leave and Attendance,Deixa i Assistència,
Leave application {0} already exists against the student {1},Deixar l&#39;aplicació {0} ja existeix contra l&#39;estudiant {1},
"Leave cannot be allocated before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Deixi no poden ser distribuïdes abans {0}, com a balanç de la llicència ja ha estat remès equipatge al futur registre d&#39;assignació de permís {1}",
"Leave cannot be applied/cancelled before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Deixa no pot aplicar / cancel·lada abans de {0}, com a balanç de la llicència ja ha estat remès equipatge al futur registre d&#39;assignació de permís {1}",
Leave of type {0} cannot be longer than {1},Una absència del tipus {0} no pot ser de més de {1},
Leaves,Fulles,
Leaves Allocated Successfully for {0},Les fulles Numerat amb èxit per {0},
Leaves has been granted sucessfully,Les fulles s&#39;han concedit amb èxit,
Leaves must be allocated in multiples of 0.5,"Les fulles han de ser assignats en múltiples de 0,5",
Leaves per Year,Deixa per any,
Ledger,Llibre major,
Legal,Legal,
Legal Expenses,Despeses legals,
Letter Head,Capçalera de la carta,
Letter Heads for print templates.,Caps de lletres per a les plantilles d'impressió.,
Level,Nivell,
Liability,Responsabilitat,
License,Llicència,
Lifecycle,Cicle de vida,
Limit,límit,
Limit Crossed,límit creuades,
Link to Material Request,Enllaç a la sol·licitud de material,
List of all share transactions,Llista de totes les transaccions d&#39;accions,
List of available Shareholders with folio numbers,Llista d&#39;accionistes disponibles amb números de foli,
Loading Payment System,S&#39;està carregant el sistema de pagament,
Loan,Préstec,
Loan Amount cannot exceed Maximum Loan Amount of {0},Suma del préstec no pot excedir quantitat màxima del préstec de {0},
Loan Application,Sol·licitud de préstec,
Loan Management,Gestió de préstecs,
Loan Repayment,reemborsament dels préstecs,
Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,La data d’inici del préstec i el període de préstec són obligatoris per guardar el descompte de la factura,
Loans (Liabilities),Préstecs (passius),
Loans and Advances (Assets),Préstecs i bestretes (Actius),
Local,Local,
Log,Sessió,
Logs for maintaining sms delivery status,Registres per mantenir l&#39;estat de lliurament de SMS,
Lost,Perdut,
Lost Reasons,Motius perduts,
Low,Sota,
Low Sensitivity,Baixa sensibilitat,
Lower Income,Lower Income,
Loyalty Amount,Import de fidelització,
Loyalty Point Entry,Entrada de punts de lleialtat,
Loyalty Points,Punts de fidelització,
"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Els punts de fidelització es calcularan a partir del fet gastat (a través de la factura de vendes), segons el factor de recollida esmentat.",
Loyalty Points: {0},Punts de fidelitat: {0},
Loyalty Program,Programa de fidelització,
Main,Inici,
Maintenance,Manteniment,
Maintenance Log,Registre de manteniment,
Maintenance Manager,Gerent de Manteniment,
Maintenance Schedule,Programa de manteniment,
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"El programa de manteniment no es genera per a tots els articles Si us plau, feu clic a ""Generar Planificació""",
Maintenance Schedule {0} exists against {1},Programa de manteniment {0} existeix en contra de {1},
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Programa de manteniment {0} ha de ser cancel·lat abans de cancel·lar aquesta comanda de vendes,
Maintenance Status has to be Cancelled or Completed to Submit,L&#39;estat de manteniment s&#39;ha de cancel·lar o completar per enviar,
Maintenance User,Usuari de Manteniment,
Maintenance Visit,Manteniment Visita,
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Manteniment Visita {0} ha de ser cancel·lat abans de cancel·lar aquesta comanda de vendes,
Maintenance start date can not be before delivery date for Serial No {0},Data d'inici de manteniment no pot ser abans de la data de lliurament pel número de sèrie {0},
Make,Fer,
Make Payment,Fer pagament,
Make project from a template.,Realitza el projecte a partir d’una plantilla.,
Making Stock Entries,Fer comentaris Imatges,
Male,Home,
Manage Customer Group Tree.,Administrar grup Client arbre.,
Manage Sales Partners.,Administrar Punts de vendes.,
Manage Sales Person Tree.,Organigrama de vendes,
Manage Territory Tree.,Administrar Territori arbre.,
Manage your orders,Gestionar les seves comandes,
Management,Administració,
Manager,Gerent,
Managing Projects,Gestió de projectes,
Managing Subcontracting,Subcontractació Gestió,
Mandatory,Obligatori,
Mandatory field - Academic Year,Camp obligatori - Any acadèmic,
Mandatory field - Get Students From,Camp obligatori - Obtenir estudiants de,
Mandatory field - Program,Camp obligatori - Programa,
Manufacture,Manufactura,
Manufacturer,Fabricant,
Manufacturer Part Number,PartNumber del fabricant,
Manufacturing,Fabricació,
Manufacturing Quantity is mandatory,Quantitat de fabricació és obligatori,
Mapping,Cartografia,
Mapping Type,Tipus de cartografia,
Mark Absent,Marc Absent,
Mark Attendance,Mark Attendance,
Mark Half Day,Medi Dia Marcos,
Mark Present,Marc Present,
Marketing,Màrqueting,
Marketing Expenses,Despeses de màrqueting,
Marketplace,Marketplace,
Marketplace Error,Error del mercat,
Masters,Màsters,
Match Payments with Invoices,Els pagaments dels partits amb les factures,
Match non-linked Invoices and Payments.,Coincideixen amb les factures i pagaments no vinculats.,
Material,Material,
Material Consumption,Consum de material,
Material Consumption is not set in Manufacturing Settings.,El consum de material no està establert en la configuració de fabricació.,
Material Receipt,Recepció de materials,
Material Request,Sol·licitud de materials,
Material Request Date,Data de sol·licitud de materials,
Material Request No,Número de sol·licitud de Material,
"Material Request not created, as quantity for Raw Materials already available.","Sol·licitud de material no creada, com a quantitat de matèries primeres ja disponible.",
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Per l'article {1} es poden fer un màxim de {0} sol·licituds de materials destinats a l'ordre de venda {2},
Material Request to Purchase Order,Sol·licitud de materials d&#39;Ordre de Compra,
Material Request {0} is cancelled or stopped,Material de Sol·licitud {0} es cancel·la o s'atura,
Material Request {0} submitted.,S&#39;ha enviat la sol·licitud de material {0}.,
Material Transfer,Transferència de material,
Material Transferred,Material transferit,
Material to Supplier,Materials de Proveïdor,
Max Exemption Amount cannot be greater than maximum exemption amount {0} of Tax Exemption Category {1},La quantitat màxima d&#39;exempció no pot ser superior a la quantitat màxima d&#39;exempció {0} de la categoria d&#39;exempció fiscal {1},
Max benefits should be greater than zero to dispense benefits,Els beneficis màxims haurien de ser més grans que zero per repartir beneficis,
Max discount allowed for item: {0} is {1}%,Descompte màxim permès per l'article: {0} és {1}%,
Max: {0},Max: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Es poden conservar mostres màximes: {0} per a lots {1} i element {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,S&#39;han conservat les mostres màximes ({0}) per al lot {1} i l&#39;element {2} en lot {3}.,
Maximum amount eligible for the component {0} exceeds {1},La quantitat màxima elegible per al component {0} supera {1},
Maximum benefit amount of component {0} exceeds {1},La quantitat màxima de beneficis del component {0} supera {1},
Maximum benefit amount of employee {0} exceeds {1},La quantitat de benefici màxim de l&#39;empleat {0} supera {1},
Maximum discount for Item {0} is {1}%,El descompte màxim per a l&#39;element {0} és {1}%,
Maximum leave allowed in the leave type {0} is {1},La permís màxim permès en el tipus d&#39;abandonament {0} és {1},
Medical,Metge,
Medical Code,Codi mèdic,
Medical Code Standard,Codi mèdic estàndard,
Medical Department,Departament mèdic,
Medical Record,Registre mèdic,
Medium,Medium,
Meeting,Reunió,
Member Activity,Activitat membre,
Member ID,Identificador de membre,
Member Name,Nom de membre,
Member information.,Informació dels membres.,
Membership,Membres,
Membership Details,Detalls de membres,
Membership ID,ID de membre,
Membership Type,Tipus de pertinença,
Memebership Details,Detalls de Memebership,
Memebership Type Details,Detalls del tipus Memebership,
Merge,Fusionar,
Merge Account,Compte de fusió,
Merge with Existing Account,Combinar-se amb el compte existent,
"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","La fusió només és possible si les propietats són les mateixes en tots dos registres. És el Grup, Tipus Arrel, Company",
Message Examples,Exemples de missatges,
Message Sent,Missatge enviat,
Method,Mètode,
Middle Income,Ingrés Mig,
Middle Name,Segon nom,
Middle Name (Optional),Cognom 1,
Min Amt can not be greater than Max Amt,Min Amt no pot ser major que Max Amt,
Min Qty can not be greater than Max Qty,Quantitat mínima no pot ser major que Quantitat màxima,
Minimum Lead Age (Days),El plom sobre l&#39;edat mínima (Dies),
Miscellaneous Expenses,Despeses diverses,
Missing Currency Exchange Rates for {0},Manca de canvi de moneda per {0},
Missing email template for dispatch. Please set one in Delivery Settings.,Falta la plantilla de correu electrònic per enviar-la. Establiu-ne una a la Configuració de lliurament.,
"Missing value for Password, API Key or Shopify URL","Falta el valor de Password, clau d&#39;API o URL de Shopify",
Mode of Payment,Mode de pagament,
Mode of Payments,Mode de pagament,
Mode of Transport,Mode de transport,
Mode of Transportation,Mode de transport,
Mode of payment is required to make a payment,Forma de pagament es requereix per fer un pagament,
Model,Model,
Moderate Sensitivity,Sensibilitat moderada,
Monday,Dilluns,
Monthly,Mensual,
Monthly Distribution,Distribució mensual,
Monthly Repayment Amount cannot be greater than Loan Amount,Quantitat Mensual La devolució no pot ser més gran que Suma del préstec,
More,Més,
More Information,Més informació,
More than one selection for {0} not allowed,No s’admeten més d’una selecció per a {0},
More...,Més ...,
Motion Picture & Video,Cinema i vídeo,
Move,moviment,
Move Item,moure element,
Multi Currency,Multi moneda,
Multiple Item prices.,Múltiples Preus d'articles,
Multiple Loyalty Program found for the Customer. Please select manually.,S&#39;ha trobat un programa de lleialtat múltiple per al client. Seleccioneu manualment.,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Regles Preu múltiples existeix amb el mateix criteri, si us plau, resoldre els conflictes mitjançant l&#39;assignació de prioritat. Regles de preus: {0}",
Multiple Variants,Variants múltiples,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Hi ha diversos exercicis per a la data {0}. Si us plau, estableix la companyia en l&#39;exercici fiscal",
Music,Música,
My Account,El meu compte,
Name error: {0},Nom d&#39;error: {0},
Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nom del nou compte. Nota: Si us plau no crear comptes de clients i proveïdors,
Name or Email is mandatory,Nom o Email és obligatori,
Nature Of Supplies,Natura dels subministraments,
Navigating,Navegació,
Needs Analysis,Necessita anàlisi,
Negative Quantity is not allowed,No s'admenten quantitats negatives,
Negative Valuation Rate is not allowed,No es permeten els ràtios de valoració negatius,
Negotiation/Review,Negociació / revisió,
Net Asset value as on,El valor net d&#39;actius com a,
Net Cash from Financing,Efectiu net de finançament,
Net Cash from Investing,Efectiu net d&#39;inversió,
Net Cash from Operations,Efectiu net de les operacions,
Net Change in Accounts Payable,Canvi net en comptes per pagar,
Net Change in Accounts Receivable,Canvi net en els comptes per cobrar,
Net Change in Cash,Canvi Net en Efectiu,
Net Change in Equity,Canvi en el Patrimoni Net,
Net Change in Fixed Asset,Canvi net en actius fixos,
Net Change in Inventory,Canvi net en l&#39;Inventari,
Net ITC Available(A) - (B),TIC net disponible (A) - (B),
Net Pay,Pay Net,
Net Pay cannot be less than 0,Pay Net no pot ser menor que 0,
Net Profit,Benefici net,
Net Salary Amount,Import net del salari,
Net Total,Total net,
Net pay cannot be negative,Salari net no pot ser negatiu,
New Account Name,Nou Nom de compte,
New Address,Nova adreça,
New BOM,Nova llista de materials,
New Batch ID (Optional),Nou lot d&#39;identificació (opcional),
New Batch Qty,Nou lot Quantitat,
New Company,Nova empresa,
New Cost Center Name,Nou nom de centres de cost,
New Customer Revenue,Nous ingressos al Client,
New Customers,Clients Nous,
New Department,Nou departament,
New Employee,Nou empleat,
New Location,Nova ubicació,
New Quality Procedure,Nou procediment de qualitat,
New Sales Invoice,Nova factura de venda,
New Sales Person Name,Nom nou encarregat de vendes,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Nou Nombre de sèrie no pot tenir Warehouse. Magatzem ha de ser ajustat per Stock entrada o rebut de compra,
New Warehouse Name,Magatzem nou nom,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nou límit de crèdit és menor que la quantitat pendent actual per al client. límit de crèdit ha de ser almenys {0},
New task,Nova tasca,
New {0} pricing rules are created,Es creen noves regles de preus {0},
Newsletters,Butlletins,
Newspaper Publishers,Editors de Newspapers,
Next,Següent,
Next Contact By cannot be same as the Lead Email Address,Per següent Contacte no pot ser la mateixa que la de plom Adreça de correu electrònic,
Next Contact Date cannot be in the past,Següent Contacte La data no pot ser en el passat,
Next Steps,Propers passos,
No Action,Sense acció,
No Customers yet!,Els clients no hi ha encara!,
No Data,No hi ha dades,
No Delivery Note selected for Customer {},No s&#39;ha seleccionat cap nota de lliurament per al client {},
No Employee Found,Cap empleat trobat,
No Item with Barcode {0},Número d'article amb Codi de barres {0},
No Item with Serial No {0},No Element amb Serial No {0},
No Items available for transfer,Sense articles disponibles per a la transferència,
No Items selected for transfer,No hi ha elements seleccionats per a la transferència,
No Items to pack,No hi ha articles per embalar,
No Items with Bill of Materials to Manufacture,No hi ha articles amb la llista de materials per a la fabricació de,
No Items with Bill of Materials.,No hi ha articles amb la factura de materials.,
No Permission,No permission,
No Remarks,Sense Observacions,
No Result to submit,Cap resultat per enviar,
No Salary Structure assigned for Employee {0} on given date {1},No s&#39;ha assignat cap estructura salarial assignada a l&#39;empleat {0} en una data determinada {1},
No Staffing Plans found for this Designation,No hi ha plans de personal per a aquesta designació,
No Student Groups created.,No hi ha grups d&#39;estudiants van crear.,
No Students in,No Estudiants en,
No Tax Withholding data found for the current Fiscal Year.,No es registren dades de retenció d&#39;impostos per a l&#39;actual exercici fiscal.,
No Work Orders created,No s&#39;ha creat cap Ordre de treball,
No accounting entries for the following warehouses,No hi ha assentaments comptables per als següents magatzems,
No active or default Salary Structure found for employee {0} for the given dates,Sense estructura activa o salari per defecte trobat d&#39;empleat {0} per a les dates indicades,
No contacts with email IDs found.,No s&#39;han trobat contactes amb identificadors de correu electrònic.,
No data for this period,No hi ha dades per a aquest període,
No description given,Cap descripció donada,
No employees for the mentioned criteria,Cap empleat pels criteris esmentats,
No gain or loss in the exchange rate,Sense guany o pèrdua en el tipus de canvi,
No items listed,No hi ha elements que s&#39;enumeren,
No items to be received are overdue,No hi ha elements pendents de rebre,
No material request created,No s&#39;ha creat cap sol·licitud de material,
No more updates,No hi ha més actualitzacions,
No of Interactions,No d&#39;interaccions,
No of Shares,No d&#39;accions,
No pending Material Requests found to link for the given items.,No s&#39;ha trobat cap sol·licitud de material pendent per enllaçar per als ítems indicats.,
No products found,No s&#39;han trobat productes,
No products found.,No s&#39;han trobat productes.,
No record found,No s'ha trobat registre,
No records found in the Invoice table,No es troben en la taula de registres de factures,
No records found in the Payment table,No hi ha registres a la taula de Pagaments,
No replies from,No hi ha respostes des,
No salary slip found to submit for the above selected criteria OR salary slip already submitted,No s&#39;ha trobat resoldre salarial per presentar els criteris seleccionats anteriorment o el resguard salarial ja presentat,
No tasks,No hi ha tasques,
No time sheets,De llistes d&#39;assistència,
No values,Sense valors,
No {0} found for Inter Company Transactions.,No s&#39;ha trobat {0} per a les transaccions de l&#39;empresa Inter.,
Non GST Inward Supplies,Subministraments interiors no GST,
Non Profit,Sense ànim de lucre,
Non Profit (beta),Sense ànim de lucre (beta),
Non-GST outward supplies,Subministraments externs no GST,
Non-Group to Group,No al Grup Grup,
None,Cap,
None of the items have any change in quantity or value.,Cap dels articles tenen qualsevol canvi en la quantitat o el valor.,
Nos,Ens,
Not Available,No disponible,
Not Marked,No marcat,
Not Paid and Not Delivered,"No satisfets, i no lliurats",
Not Permitted,No permès,
Not Started,Sense començar,
Not active,No actiu,
Not allow to set alternative item for the item {0},No permetis establir un element alternatiu per a l&#39;element {0},
Not allowed to update stock transactions older than {0},No es permet actualitzar les transaccions de valors més grans de {0},
Not authorized to edit frozen Account {0},No autoritzat per editar el compte bloquejat {0},
Not authroized since {0} exceeds limits,No distribuïdor oficial autoritzat des {0} excedeix els límits,
Not permitted for {0},No està permès per {0},
"Not permitted, configure Lab Test Template as required","No està permès, configureu la Plantilla de prova de laboratori segons sigui necessari",
Not permitted. Please disable the Service Unit Type,No permès. Desactiveu el tipus d&#39;unitat de servei,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Nota: A causa / Data de referència supera permesos dies de crèdit de clients per {0} dia (es),
Note: Item {0} entered multiple times,Nota: L'article {0} entrat diverses vegades,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,"Nota: L'entrada de pagament no es crearà perquè no s'ha especificat 'Caixa o compte bancari""",
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Nota: El sistema no verificarà el lliurament excessiva i l'excés de reserves per Punt {0} com la quantitat o la quantitat és 0,
Note: There is not enough leave balance for Leave Type {0},Note: There is not enough leave balance for Leave Type {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Nota: aquest centre de costos és un Grup. No es poden fer anotacions en compte als grups.,
Note: {0},Nota: {0},
Notes,Notes,
Nothing is included in gross,No s’inclou res en brut,
Nothing more to show.,Res més que mostrar.,
Nothing to change,Res per canviar,
Notice Period,Període de notificació,
Notify Customers via Email,Notifica als clients per correu electrònic,
Number,Número,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Nombre de Depreciacions reserva no pot ser més gran que el nombre total d&#39;amortitzacions,
Number of Interaction,Nombre d&#39;Interacció,
Number of Order,Número d'ordre,
"Number of new Account, it will be included in the account name as a prefix","Nombre de compte nou, s&#39;inclourà al nom del compte com a prefix",
"Number of new Cost Center, it will be included in the cost center name as a prefix","Nombre de nou Centre de costos, s&#39;inclourà al nom del centre de costos com a prefix",
Number of root accounts cannot be less than 4,El nombre de comptes root no pot ser inferior a 4,
Odometer,comptaquilòmetres,
Office Equipments,Material d'oficina,
Office Maintenance Expenses,Despeses de manteniment d'oficines,
Office Rent,lloguer de l'oficina,
On Hold,En espera,
On Net Total,En total net,
One customer can be part of only single Loyalty Program.,Un client pot formar part de l&#39;únic programa de lleialtat únic.,
Online Auctions,Subhastes en línia,
Only Leave Applications with status 'Approved' and 'Rejected' can be submitted,Només Deixa aplicacions amb estat &quot;Aprovat&quot; i &quot;Rebutjat&quot; pot ser presentat,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",Només es seleccionarà el sol·licitant d&#39;estudiants amb l&#39;estat &quot;Aprovat&quot; a la taula següent.,
Only users with {0} role can register on Marketplace,Només els usuaris amb {0} funció poden registrar-se a Marketplace,
Open BOM {0},Obrir la llista de materials {0},
Open Item {0},Obrir element {0},
Open Notifications,Obrir Notificacions,
Open Orders,Comandes obertes,
Open a new ticket,Obriu un nou bitllet,
Opening,Obertura,
Opening (Cr),Obertura (Cr),
Opening (Dr),Obertura (Dr),
Opening Accounting Balance,Obertura de Balanç de Comptabilitat,
Opening Accumulated Depreciation,L&#39;obertura de la depreciació acumulada,
Opening Accumulated Depreciation must be less than equal to {0},L&#39;obertura de la depreciació acumulada ha de ser inferior a igual a {0},
Opening Balance,Saldo d&#39;obertura,
Opening Balance Equity,Saldo inicial Equitat,
Opening Date and Closing Date should be within same Fiscal Year,Data i Data de Tancament d&#39;obertura ha de ser dins el mateix any fiscal,
Opening Date should be before Closing Date,Data d&#39;obertura ha de ser abans de la data de Tancament,
Opening Entry Journal,Revista d&#39;obertura,
Opening Invoice Creation Tool,Obrir l&#39;eina de creació de la factura,
Opening Invoice Item,Obertura de l&#39;element de la factura,
Opening Invoices,Obertura de factures,
Opening Invoices Summary,Obrir el resum de factures,
Opening Qty,Quantitat d'obertura,
Opening Stock,l&#39;obertura de la,
Opening Stock Balance,Obertura de la balança,
Opening Value,Valor d&#39;obertura,
Opening {0} Invoice created,S&#39;ha creat la factura {0},
Operation,Operació,
Operation Time must be greater than 0 for Operation {0},Temps de funcionament ha de ser major que 0 per a l&#39;operació {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Operació {0} ja que qualsevol temps de treball disponibles a l&#39;estació de treball {1}, trencar l&#39;operació en múltiples operacions",
Operations,Operacions,
Operations cannot be left blank,Les operacions no poden deixar-se en blanc,
Opp Count,Comte del OPP,
Opp/Lead %,OPP /% Plom,
Opportunities,Oportunitats,
Opportunities by lead source,Oportunitats per font de plom,
Opportunity,Oportunitat,
Opportunity Amount,Import de l&#39;oportunitat,
Optional Holiday List not set for leave period {0},Llista de vacances opcional no establerta per al període de descans {0},
"Optional. Sets company's default currency, if not specified.","Opcional. Estableix moneda per defecte de l&#39;empresa, si no s&#39;especifica.",
Optional. This setting will be used to filter in various transactions.,Opcional. Aquest ajust s'utilitza per filtrar en diverses transaccions.,
Options,Opcions,
Order Count,Recompte de sol·licituds,
Order Entry,Entrada de comanda,
Order Value,Valor de l&#39;ordre,
Order rescheduled for sync,Ordre reorganitzat per sincronitzar,
Order/Quot %,Comanda / quot%,
Ordered,Ordenat,
Ordered Qty,Quantitat demanada,
"Ordered Qty: Quantity ordered for purchase, but not received.","Demanem Quantitat: Quantitat va ordenar a la venda, però no va rebre.",
Orders,Ordres,
Orders released for production.,Comandes llançades per a la producció.,
Organization,Organització,
Organization Name,Nom de l'organització,
Other,Un altre,
Other Reports,Altres informes,
"Other outward supplies(Nil rated,Exempted)","Altres subministraments externs (Nil, eximitat)",
Others,Altres,
Out Qty,Quantitat de sortida,
Out Value,Valor fora,
Out of Order,No funciona,
Outgoing,Extravertida,
Outstanding,Excepcional,
Outstanding Amount,Quantitat Pendent,
Outstanding Amt,Excel·lent Amt,
Outstanding Cheques and Deposits to clear,Xecs pendents i Dipòsits per aclarir,
Outstanding for {0} cannot be less than zero ({1}),Excedent per {0} no pot ser menor que zero ({1}),
Outward taxable supplies(zero rated),Subministraments passius imposables (qualificació zero),
Overdue,Endarrerit,
Overlap in scoring between {0} and {1},Superposició entre puntuació entre {0} i {1},
Overlapping conditions found between:,La superposició de les condicions trobades entre:,
Owner,Propietari,
PAN,PAN,
POS,TPV,
POS Profile,POS Perfil,
POS Profile is required to use Point-of-Sale,El perfil de la TPV és obligatori per utilitzar Point-of-Sale,
POS Profile required to make POS Entry,POS perfil requerit per fer l&#39;entrada POS,
POS Settings,Configuració de la TPV,
Packed quantity must equal quantity for Item {0} in row {1},Quantitat embalada ha de ser igual a la quantitat d'articles per {0} a la fila {1},
Packing Slip,Llista de presència,
Packing Slip(s) cancelled,Fulla(s) d'embalatge cancel·lat,
Paid,Pagat,
Paid Amount,Quantitat pagada,
Paid Amount cannot be greater than total negative outstanding amount {0},La quantitat pagada no pot ser superior a la quantitat pendent negativa total de {0},
Paid amount + Write Off Amount can not be greater than Grand Total,Quantitat pagada + s'amortitza La quantitat no pot ser més gran que la Gran Total,
Paid and Not Delivered,A càrrec i no lliurats,
Parameter,Paràmetre,
Parent Item {0} must not be a Stock Item,Article Pare {0} no ha de ser un arxiu d&#39;articles,
Parents Teacher Meeting Attendance,Assistència a la reunió del professorat dels pares,
Part-time,Temps parcial,
Partially Depreciated,parcialment depreciables,
Partially Received,Parcialment rebut,
Party,Party,
Party Name,Nom del partit,
Party Type,Tipus Partit,
Party Type and Party is mandatory for {0} account,El tipus de festa i la festa són obligatoris per al compte {0},
Party Type is mandatory,Tipus del partit és obligatori,
Party is mandatory,Part és obligatòria,
Password,Contrasenya,
Password policy for Salary Slips is not set,La política de contrasenya dels salaris no està definida,
Past Due Date,Data vençuda,
Patient,Pacient,
Patient Appointment,Cita del pacient,
Patient Encounter,Trobada de pacients,
Patient not found,Pacient no trobat,
Pay Remaining,Pagament restant,
Pay {0} {1},Pagueu {0} {1},
Payable,Pagador,
Payable Account,Compte per Pagar,
Payable Amount,Import pagable,
Payment,Pagament,
Payment Cancelled. Please check your GoCardless Account for more details,"Pagament cancel·lat. Si us plau, consulteu el vostre compte GoCardless per obtenir més detalls",
Payment Confirmation,Confirmació de pagament,
Payment Date,Data de pagament,
Payment Days,Dies de pagament,
Payment Document,El pagament del document,
Payment Due Date,Data de pagament,
Payment Entries {0} are un-linked,Les entrades de pagament {0} són no-relacionat,
Payment Entry,Entrada de pagament,
Payment Entry already exists,Entrada de pagament ja existeix,
Payment Entry has been modified after you pulled it. Please pull it again.,"Entrada de pagament ha estat modificat després es va tirar d'ell. Si us plau, tiri d'ella de nou.",
Payment Entry is already created,Ja està creat Entrada Pagament,
Payment Failed. Please check your GoCardless Account for more details,"El pagament ha fallat. Si us plau, consulteu el vostre compte GoCardless per obtenir més detalls",
Payment Gateway,Passarel·la de Pagament,
"Payment Gateway Account not created, please create one manually.","Pagament de comptes de porta d&#39;enllaç no es crea, si us plau crear una manualment.",
Payment Gateway Name,Nom de la passarel·la de pagament,
Payment Mode,Mètode de pagament,
Payment Receipt Note,Pagament de rebuts Nota,
Payment Request,Sol·licitud de pagament,
Payment Request for {0},Sol·licitud de pagament de {0},
Payment Tems,Targetes de pagament,
Payment Term,Termini de pagament,
Payment Terms,Condicions de pagament,
Payment Terms Template,Plantilla de condicions de pagament,
Payment Terms based on conditions,Condicions de pagament en funció de les condicions,
Payment Type,Tipus de pagament,
"Payment Type must be one of Receive, Pay and Internal Transfer","Tipus de pagament ha de ser un Rebre, Pagar i Transferència interna",
Payment against {0} {1} cannot be greater than Outstanding Amount {2},Pagament contra {0} {1} no pot ser més gran que Destacat Suma {2},
Payment of {0} from {1} to {2},Pagament de {0} de {1} a {2},
Payment request {0} created,S&#39;ha creat la {0} sol·licitud de pagament,
Payments,Pagaments,
Payroll,nòmina de sous,
Payroll Number,Número de nòmina,
Payroll Payable,nòmina per pagar,
Payslip,rebut de sou,
Pending Activities,Activitats pendents,
Pending Amount,A l'espera de l'Import,
Pending Leaves,Fulles pendents,
Pending Qty,Pendent Quantitat,
Pending Quantity,Quantitat pendent,
Pending Review,Pendent de Revisió,
Pending activities for today,Activitats pendents per avui,
Pension Funds,Fons de pensions,
Percentage Allocation should be equal to 100%,Percentatge d'assignació ha de ser igual a 100%,
Perception Analysis,Anàlisi de percepció,
Period,Període,
Period Closing Entry,Entrada de tancament de període,
Period Closing Voucher,Comprovant de tancament de període,
Periodicity,Periodicitat,
Personal Details,Dades Personals,
Pharmaceutical,Farmacèutic,
Pharmaceuticals,Farmacèutics,
Physician,Metge,
Piecework,Treball a preu fet,
Pincode,Codi PIN,
Place Of Supply (State/UT),Lloc de subministrament (Estat / UT),
Place Order,Poseu l&#39;ordre,
Plan Name,Nom del pla,
Plan for maintenance visits.,Pla de visites de manteniment.,
Planned Qty,Planificada Quantitat,
"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Quantitat planificada: quantitat, per la qual s’ha augmentat l’ordre de treball, però està pendent de ser fabricada.",
Planning,Planificació,
Plants and Machineries,Les plantes i maquinàries,
Please Set Supplier Group in Buying Settings.,Establiu el grup de proveïdors a la configuració de compra.,
Please add a Temporary Opening account in Chart of Accounts,Afegiu un compte d&#39;obertura temporal al gràfic de comptes,
Please add the account to root level Company - ,Afegiu el compte a l’empresa root a nivell -,
Please add the remaining benefits {0} to any of the existing component,Afegiu els beneficis restants {0} a qualsevol dels components existents,
Please check Multi Currency option to allow accounts with other currency,"Si us plau, consulti l&#39;opció Multi moneda per permetre comptes amb una altra moneda",
Please click on 'Generate Schedule',"Si us plau, feu clic a ""Generar Planificació""",
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Si us plau, feu clic a ""Generar Planificació 'per reservar números de sèrie per l'article {0}",
Please click on 'Generate Schedule' to get schedule,"Si us plau, feu clic a ""Generar la Llista d'aconseguir horari",
Please confirm once you have completed your training,Confirmeu una vegada hagueu completat la vostra formació,
Please create purchase receipt or purchase invoice for the item {0},Creeu un rebut de compra o una factura de compra per a l&#39;element {0},
Please define grade for Threshold 0%,"Si us plau, defineixi el grau de Llindar 0%",
Please enable Applicable on Booking Actual Expenses,Activeu les despeses actuals aplicables a la reserva,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Activa Aplicable en l&#39;ordre de compra i aplicable a la reserva de despeses reals,
Please enable default incoming account before creating Daily Work Summary Group,Activeu el compte entrant per defecte abans de crear el grup de treball de treball diari,
Please enable pop-ups,"Si us plau, activa elements emergents",
Please enter 'Is Subcontracted' as Yes or No,"Si us plau, introdueixi 'subcontractació' com Sí o No",
Please enter API Consumer Key,Introduïu la clau de consumidor de l&#39;API,
Please enter API Consumer Secret,Introduïu el secret del consumidor de l&#39;API,
Please enter Account for Change Amount,"Si us plau, introdueixi el compte per al Canvi Monto",
Please enter Approving Role or Approving User,Si us plau entra el rol d'aprovació o l'usuari aprovador,
Please enter Cost Center,Si us plau entra el centre de cost,
Please enter Delivery Date,Introduïu la data de lliurament,
Please enter Employee Id of this sales person,Introdueixi Empleat Id d&#39;aquest venedor,
Please enter Expense Account,Si us plau ingressi Compte de Despeses,
Please enter Item Code to get Batch Number,"Si us plau, introdueixi el codi d&#39;article per obtenir el nombre de lot",
Please enter Item Code to get batch no,"Si us plau, introduïu el codi d'article per obtenir lots no",
Please enter Item first,Si us plau entra primer l'article,
Please enter Maintaince Details first,Si us plau entra primer els detalls de manteniment,
Please enter Planned Qty for Item {0} at row {1},Si us plau entra la quantitat Planificada per l'article {0} a la fila {1},
Please enter Preferred Contact Email,"Si us plau, introdueixi preferit del contacte de correu electrònic",
Please enter Production Item first,Si us plau indica primer l'Article a Producció,
Please enter Purchase Receipt first,Si us plau primer entra el rebut de compra,
Please enter Receipt Document,"Si us plau, introdueixi recepció de documents",
Please enter Reference date,"Si us plau, introduïu la data de referència",
Please enter Repayment Periods,"Si us plau, introdueixi terminis d&#39;amortització",
Please enter Reqd by Date,Introduïu Reqd per data,
Please enter Woocommerce Server URL,Introduïu l&#39;URL del servidor Woocommerce,
Please enter Write Off Account,Si us plau indica el Compte d'annotació,
Please enter atleast 1 invoice in the table,"Si us plau, introdueixi almenys 1 factura a la taula",
Please enter company first,Si us plau ingressi empresa primer,
Please enter company name first,Si us plau introdueix el nom de l'empresa primer,
Please enter default currency in Company Master,Si us plau ingressi moneda per defecte en l'empresa Mestre,
Please enter message before sending,"Si us plau, escriviu el missatge abans d'enviar-",
Please enter parent cost center,"Si us plau, introduïu el centre de cost dels pares",
Please enter quantity for Item {0},Introduïu la quantitat d'articles per {0},
Please enter relieving date.,Please enter relieving date.,
Please enter repayment Amount,"Si us plau, ingressi la suma d&#39;amortització",
Please enter valid Financial Year Start and End Dates,"Si us plau, introdueixi Any vàlida Financera dates inicial i final",
Please enter valid email address,"Si us plau, introdueixi l&#39;adreça de correu electrònic vàlida",
Please enter {0} first,"Si us plau, introdueixi {0} primer",
Please fill in all the details to generate Assessment Result.,Ompliu tots els detalls per generar el resultat de l’avaluació.,
Please identify/create Account (Group) for type - {0},Identifiqueu / creeu un compte (grup) per al tipus - {0},
Please identify/create Account (Ledger) for type - {0},Identifiqueu / creeu el compte (Ledger) del tipus - {0},
Please login as another user to register on Marketplace,Inicieu sessió com un altre usuari per registrar-se a 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.,"Si us plau, assegureu-vos que realment voleu esborrar totes les transaccions d&#39;aquesta empresa. Les seves dades mestres romandran tal com és. Aquesta acció no es pot desfer.",
Please mention Basic and HRA component in Company,Esmenteu el component bàsic i HRA a l&#39;empresa,
Please mention Round Off Account in Company,"Si us plau, Compte Off rodona a l&#39;empresa",
Please mention Round Off Cost Center in Company,"Si us plau, Ronda Off de centres de cost en l&#39;empresa",
Please mention no of visits required,"Si us plau, no de visites requerides",
Please mention the Lead Name in Lead {0},"Si us plau, mencioneu el nom principal al client {0}",
Please pull items from Delivery Note,"Si us plau, tiri d'articles de lliurament Nota",
Please register the SIREN number in the company information file,"Si us plau, registri el número SIREN en el fitxer d&#39;informació de l&#39;empresa",
Please remove this Invoice {0} from C-Form {1},"Si us plau, elimini aquest Factura {0} de C-Form {1}",
Please save the patient first,Deseu primer el pacient,
Please save the report again to rebuild or update,Torneu a guardar l’informe per reconstruir o actualitzar,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Seleccioneu suma assignat, Tipus factura i número de factura en almenys una fila",
Please select Apply Discount On,Seleccioneu Aplicar descompte en les,
Please select BOM against item {0},Selecciona BOM contra l&#39;element {0},
Please select BOM for Item in Row {0},Seleccioneu la llista de materials per a l&#39;article a la fila {0},
Please select BOM in BOM field for Item {0},Seleccioneu la llista de materials en el camp de llista de materials per al punt {0},
Please select Category first,"Si us plau, Selecciona primer la Categoria",
Please select Charge Type first,Seleccioneu Tipus de Càrrec primer,
Please select Company,Seleccioneu de l&#39;empresa,
Please select Company and Designation,Seleccioneu Companyia i Designació,
Please select Company and Posting Date to getting entries,Seleccioneu Companyia i Data de publicació per obtenir entrades,
Please select Company first,Si us plau seleccioneu l'empresa primer,
Please select Completion Date for Completed Asset Maintenance Log,Seleccioneu Data de finalització del registre de manteniment d&#39;actius completat,
Please select Completion Date for Completed Repair,Seleccioneu Data de finalització de la reparació completada,
Please select Course,Seleccioneu de golf,
Please select Drug,Seleccioneu medicaments,
Please select Employee,Seleccioneu Empleat,
Please select Existing Company for creating Chart of Accounts,Seleccioneu empresa ja existent per a la creació del pla de comptes,
Please select Healthcare Service,Seleccioneu Atenció mèdica,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Seleccioneu l&#39;ítem on &quot;És de la Element&quot; és &quot;No&quot; i &quot;És d&#39;articles de venda&quot; és &quot;Sí&quot;, i no hi ha un altre paquet de producte",
Please select Maintenance Status as Completed or remove Completion Date,Seleccioneu Estat de manteniment com a finalitzat o suprimiu la data de finalització,
Please select Party Type first,Seleccioneu Partit Tipus primer,
Please select Patient,Seleccioneu Pacient,
Please select Patient to get Lab Tests,Seleccioneu Pacient per obtenir proves de laboratori,
Please select Posting Date before selecting Party,Seleccioneu Data d&#39;entrada abans de seleccionar la festa,
Please select Posting Date first,Seleccioneu Data de comptabilització primer,
Please select Price List,Seleccionla llista de preus,
Please select Program,Seleccioneu Programa,
Please select Qty against item {0},Seleccioneu Qty contra l&#39;element {0},
Please select Sample Retention Warehouse in Stock Settings first,Seleccioneu primer el magatzem de conservació de mostra a la configuració de valors,
Please select Start Date and End Date for Item {0},Seleccioneu data d'inici i data de finalització per a l'article {0},
Please select Student Admission which is mandatory for the paid student applicant,"Si us plau, seleccioneu Admissió d&#39;estudiants que és obligatòria per al sol·licitant estudiant pagat",
Please select a BOM,Seleccioneu un BOM,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Seleccioneu un lot d&#39;articles per {0}. No és possible trobar un únic lot que compleix amb aquest requisit,
Please select a Company,Seleccioneu una empresa,
Please select a batch,Seleccioneu un lot,
Please select a csv file,Seleccioneu un arxiu csv,
Please select a field to edit from numpad,Seleccioneu un camp per editar des del teclat numèric,
Please select a table,Seleccioneu una taula,
Please select a valid Date,Seleccioneu una data vàlida,
Please select a value for {0} quotation_to {1},Please select a value for {0} quotation_to {1},
Please select a warehouse,Seleccioneu un magatzem,
Please select at least one domain.,Seleccioneu com a mínim un domini.,
Please select correct account,Seleccioneu el compte correcte,
Please select date,Si us plau seleccioni la data,
Please select item code,Seleccioneu el codi de l'article,
Please select month and year,Selecciona el mes i l'any,
Please select prefix first,Seleccioneu el prefix primer,
Please select the Company,Seleccioneu la Companyia,
Please select the Multiple Tier Program type for more than one collection rules.,Seleccioneu el tipus de programa de nivell múltiple per a més d&#39;una regla de recopilació.,
Please select the assessment group other than 'All Assessment Groups',"Si us plau, seleccioneu el grup d&#39;avaluació que no sigui &#39;Tots els grups d&#39;avaluació&#39;",
Please select the document type first,Si us plau. Primer seleccioneu el tipus de document,
Please select weekly off day,Si us plau seleccioni el dia lliure setmanal,
Please select {0},Seleccioneu {0},
Please select {0} first,Seleccioneu {0} primer,
Please set 'Apply Additional Discount On',"Si us plau, estableix &quot;Aplicar descompte addicional en &#39;",
Please set 'Asset Depreciation Cost Center' in Company {0},Ajust &#39;Centre de l&#39;amortització del cost de l&#39;actiu&#39; a l&#39;empresa {0},
Please set 'Gain/Loss Account on Asset Disposal' in Company {0},Ajust &#39;Compte / Pèrdua de beneficis per alienacions d&#39;actius&#39; en la seva empresa {0},
Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Establiu un compte al magatzem {0} o el compte d&#39;inventari predeterminat a la companyia {1},
Please set B2C Limit in GST Settings.,Establiu el límit B2C a la configuració de GST.,
Please set Company,Si us plau ajust l&#39;empresa,
Please set Company filter blank if Group By is 'Company',Si us plau ajust empresa de filtres en blanc si és Agrupa per &#39;empresa&#39;,
Please set Default Payroll Payable Account in Company {0},"Si us plau, estableix nòmina compte per pagar per defecte en l&#39;empresa {0}",
Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Si us plau, estableix els comptes relacionats de depreciació d&#39;actius en Categoria {0} o de la seva empresa {1}",
Please set Email Address,"Si us plau, estableix Adreça de correu electrònic",
Please set GST Accounts in GST Settings,Establiu els Comptes GST a la configuració de GST,
Please set Hotel Room Rate on {},Estableix la tarifa de l&#39;habitació de l&#39;hotel a {},
Please set Number of Depreciations Booked,"Si us plau, ajusteu el número d&#39;amortitzacions Reservats",
Please set Unrealized Exchange Gain/Loss Account in Company {0},Establiu el compte de guany / pèrdua de l&#39;Exchange no realitzat a l&#39;empresa {0},
Please set User ID field in an Employee record to set Employee Role,"Si us plau, estableix camp ID d'usuari en un registre d'empleat per establir Rol d'empleat",
Please set a default Holiday List for Employee {0} or Company {1},"Si us plau, estableix una llista predeterminada de festa per Empleat {0} o de la seva empresa {1}",
Please set account in Warehouse {0},Establiu el compte a Magatzem {0},
Please set an active menu for Restaurant {0},Establiu un menú actiu per al Restaurant {0},
Please set associated account in Tax Withholding Category {0} against Company {1},Estableix el compte associat a la categoria de retenció d&#39;impostos {0} contra la companyia {1},
Please set at least one row in the Taxes and Charges Table,Establiu almenys una fila a la taula d’impostos i càrrecs,
Please set default Cash or Bank account in Mode of Payment {0},"Si us plau, estableix pagament en efectiu o Compte bancari predeterminat a la Forma de pagament {0}",
Please set default account in Salary Component {0},Si us plau valor predeterminat en compte Salari El component {0},
Please set default customer in Restaurant Settings,Establiu el client predeterminat a la Configuració del restaurant,
Please set default template for Leave Approval Notification in HR Settings.,Establiu la plantilla predeterminada per deixar la notificació d&#39;aprovació a la configuració de recursos humans.,
Please set default template for Leave Status Notification in HR Settings.,Establiu la plantilla predeterminada per deixar la notificació d&#39;estat a la configuració de recursos humans.,
Please set default {0} in Company {1},Si us plau ajust per defecte {0} a l&#39;empresa {1},
Please set filter based on Item or Warehouse,"Si us plau, configurar el filtre basada en l&#39;apartat o Magatzem",
Please set leave policy for employee {0} in Employee / Grade record,Establiu la política d&#39;abandonament per al treballador {0} en el registre de l&#39;empleat / grau,
Please set recurring after saving,Si us plau conjunt recurrent després de guardar,
Please set the Company,Si us plau ajust la Companyia,
Please set the Customer Address,Definiu l&#39;adreça del client,
Please set the Date Of Joining for employee {0},Si us plau ajust la data d&#39;incorporació dels empleats {0},
Please set the Default Cost Center in {0} company.,Establiu el Centre de costos per defecte a {0} empresa.,
Please set the Email ID for the Student to send the Payment Request,Configureu l&#39;identificador de correu electrònic de l&#39;estudiant per enviar la sol·licitud de pagament,
Please set the Item Code first,Configureu primer el codi de l&#39;element,
Please set the Payment Schedule,Definiu la planificació de pagaments,
Please set the series to be used.,Estableix la sèrie a utilitzar.,
Please set {0} for address {1},Definiu {0} per a l&#39;adreça {1},
Please setup Students under Student Groups,Configureu els estudiants sota grups d&#39;estudiants,
Please share your feedback to the training by clicking on 'Training Feedback' and then 'New',"Compartiu els vostres comentaris a la formació fent clic a &quot;Feedback de formació&quot; i, a continuació, &quot;Nou&quot;",
Please specify Company,"Si us plau, especifiqui l'empresa",
Please specify Company to proceed,"Si us plau, especifiqui l'empresa per a procedir",
Please specify a valid 'From Case No.',"Si us plau, especifica un 'Des del Cas Número' vàlid",
Please specify a valid Row ID for row {0} in table {1},"Si us plau, especifiqueu un ID de fila vàlida per a la fila {0} a la taula {1}",
Please specify at least one attribute in the Attributes table,"Si us plau, especifiqui almenys un atribut a la taula d&#39;atributs",
Please specify currency in Company,"Si us plau, especifiqui la moneda a l'empresa",
Please specify either Quantity or Valuation Rate or both,Si us plau especificar Quantitat o valoració de tipus o ambdós,
Please specify from/to range,"Si us plau, especifiqui des de / fins oscil·lar",
Please supply the specified items at the best possible rates,Si us plau subministrar els elements especificats en les millors taxes possibles,
Please update your status for this training event,Actualitzeu el vostre estat per a aquest esdeveniment d&#39;entrenament,
Please wait 3 days before resending the reminder.,Espereu 3 dies abans de tornar a enviar el recordatori.,
Point of Sale,Punt de venda,
Point-of-Sale,Punt de venda,
Point-of-Sale Profile,Punt de Venda Perfil,
Portal,Portal,
Portal Settings,Característiques del portal,
Possible Supplier,Possible proveïdor,
Postal Expenses,Despeses postals,
Posting Date,Data de publicació,
Posting Date cannot be future date,Data d&#39;entrada no pot ser data futura,
Posting Time,Temps d'enviament,
Posting date and posting time is mandatory,Data de publicació i l'hora de publicar és obligatori,
Posting timestamp must be after {0},Data i hora d'enviament ha de ser posterior a {0},
Potential opportunities for selling.,Els possibles oportunitats de venda.,
Practitioner Schedule,Horari de practicants,
Pre Sales,abans de la compra,
Preference,Preferència,
Prescribed Procedures,Procediments prescrits,
Prescription,Prescripció,
Prescription Dosage,Dosificació de recepta,
Prescription Duration,Durada de la prescripció,
Prescriptions,Prescripcions,
Present,Present,
Prev,Anterior,
Preview,Preestrena,
Preview Salary Slip,Salari vista prèvia de lliscament,
Previous Financial Year is not closed,Exercici anterior no està tancada,
Price,Preu,
Price List,Llista de preus,
Price List Currency not selected,No s'ha escollit una divisa per la llista de preus,
Price List Rate,Preu de llista Rate,
Price List master.,Màster Llista de Preus.,
Price List must be applicable for Buying or Selling,Llista de preus ha de ser aplicable per comprar o vendre,
Price List {0} is disabled or does not exist,El preu de llista {0} està desactivat o no existeix,
Price or product discount slabs are required,Es requereixen lloses de descompte per preu o producte,
Pricing,la fixació de preus,
Pricing Rule,Regla preus,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Regla preus es selecciona per primera basada en 'Aplicar On' camp, que pot ser d'article, grup d'articles o Marca.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Regla de preus està feta per a sobreescriure la llista de preus/defineix percentatge de descompte, en base a algun criteri.",
Pricing Rule {0} is updated,S&#39;ha actualitzat la regla de preus {0},
Pricing Rules are further filtered based on quantity.,Regles de les tarifes es filtren més basat en la quantitat.,
Primary Address Details,Detalls de l&#39;adreça principal,
Primary Contact Details,Detalls de contacte primaris,
Principal Amount,Suma de Capital,
Print Format,Format d'impressió,
Print IRS 1099 Forms,Imprimeix formularis IRS 1099,
Print Report Card,Impressió de la targeta d&#39;informe,
Print Settings,Paràmetres d'impressió,
Print and Stationery,Impressió i papereria,
Print settings updated in respective print format,Els paràmetres d&#39;impressió actualitzats en format d&#39;impressió respectiu,
Print taxes with zero amount,Imprimiu impostos amb import zero,
Printing and Branding,Printing and Branding,
Private Equity,Private Equity,
Privilege Leave,Privilege Leave,
Probation,Probation,
Probationary Period,Període de prova,
Procedure,Procediment,
Process Day Book Data,Processa les dades del llibre del dia,
Process Master Data,Processar les dades principals,
Processing Chart of Accounts and Parties,Carta de processament de comptes i parts,
Processing Items and UOMs,Processament d&#39;elements i UOMs,
Processing Party Addresses,Processament d&#39;adreces d&#39;un partit,
Processing Vouchers,Elaboració de vals,
Procurement,obtenció,
Produced Qty,Quant produït,
Product,Producte,
Product Bundle,Bundle Producte,
Product Search,Cercar producte,
Production,Producció,
Production Item,Element Producció,
Products,Productes,
Profit and Loss,Pèrdues i Guanys,
Profit for the year,Benefici de l&#39;exercici,
Program,Programa,
Program in the Fee Structure and Student Group {0} are different.,El programa a l&#39;Estructura de tarifes i al grup d&#39;estudiants {0} són diferents.,
Program {0} does not exist.,El programa {0} no existeix.,
Program: ,Programa:,
Progress % for a task cannot be more than 100.,% D&#39;avanç per a una tasca no pot contenir més de 100.,
Project Collaboration Invitation,Invitació del Projecte de Col·laboració,
Project Id,Identificació del projecte,
Project Manager,Gerent De Projecte,
Project Name,nom del projecte,
Project Start Date,Projecte Data d'Inici,
Project Status,Estat del projecte,
Project Summary for {0},Resum del projecte per a {0},
Project Update.,Actualització del projecte.,
Project Value,Valor de Projecte,
Project activity / task.,Activitat del projecte / tasca.,
Project master.,Projecte mestre.,
Project-wise data is not available for Quotation,Dades-Project savi no està disponible per a la cita,
Projected,Projectat,
Projected Qty,Quantitat projectada,
Projected Quantity Formula,Fórmula de quantitat projectada,
Projects,Projectes,
Property,Propietat,
Property already added,La propietat ja s&#39;ha afegit,
Proposal Writing,Redacció de propostes,
Proposal/Price Quote,Cita de preu de proposta / preu,
Prospecting,Prospecció,
Provisional Profit / Loss (Credit),Compte de guanys / pèrdues provisional (Crèdit),
Publications,Publicacions,
Publish Items on Website,Publicar articles per pàgina web,
Published,Publicat,
Publishing,Publicant,
Purchase,Compra,
Purchase Amount,Import de la compra,
Purchase Date,Data de compra,
Purchase Invoice,Factura de Compra,
Purchase Invoice {0} is already submitted,La Factura de compra {0} ja està Presentada,
Purchase Manager,Gerent de Compres,
Purchase Master Manager,Administraodr principal de compres,
Purchase Order,Ordre de compra,
Purchase Order Amount,Import de la comanda de compra,
Purchase Order Amount(Company Currency),Import de la comanda de compra (moneda de l&#39;empresa),
Purchase Order Date,Data de comanda de compra,
Purchase Order Items not received on time,Els articles de la comanda de compra no s&#39;han rebut a temps,
Purchase Order number required for Item {0},Número d'ordre de Compra per {0},
Purchase Order to Payment,Ordre de compra de Pagament,
Purchase Order {0} is not submitted,Ordre de Compra {0} no es presenta,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Les ordres de compra no estan permeses per {0} a causa d&#39;un quadre de comandament de peu de {1}.,
Purchase Orders given to Suppliers.,Ordres de compra donades a Proveïdors.,
Purchase Price List,Llista de preus de compra,
Purchase Receipt,Albarà de compra,
Purchase Receipt {0} is not submitted,El rebut de compra {0} no està presentat,
Purchase Tax Template,Compra Plantilla Tributària,
Purchase User,Usuari de compres,
Purchase orders help you plan and follow up on your purchases,Les ordres de compra li ajudarà a planificar i donar seguiment a les seves compres,
Purchasing,adquisitiu,
Purpose must be one of {0},Propòsit ha de ser un de {0},
Qty,Quantitat,
Qty To Manufacture,Quantitat a fabricar,
Qty Total,Quantitat total,
Qty for {0},Quantitat de {0},
Qualification,Qualificació,
Quality,Qualitat,
Quality Action,Acció de qualitat,
Quality Goal.,Objectiu de qualitat.,
Quality Inspection,Inspecció de qualitat,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Inspecció de qualitat: {0} no s&#39;envia per a l&#39;element: {1} a la fila {2},
Quality Management,Gestió de la qualitat,
Quality Meeting,Reunió de qualitat,
Quality Procedure,Procediment de qualitat,
Quality Procedure.,Procediment de qualitat.,
Quality Review,Revisió de qualitat,
Quantity,Quantitat,
Quantity for Item {0} must be less than {1},Quantitat d'articles per {0} ha de ser menor de {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},Quantitat a la fila {0} ({1}) ha de ser igual que la quantitat fabricada {2},
Quantity must be less than or equal to {0},La quantitat ha de ser menor que o igual a {0},
Quantity must not be more than {0},La quantitat no ha de ser més de {0},
Quantity required for Item {0} in row {1},Quantitat necessària per Punt {0} a la fila {1},
Quantity should be greater than 0,Quantitat ha de ser més gran que 0,
Quantity to Make,Quantitat a fer,
Quantity to Manufacture must be greater than 0.,Quantitat de Fabricació ha de ser major que 0.,
Quantity to Produce,Quantitat a produir,
Quantity to Produce can not be less than Zero,La quantitat per produir no pot ser inferior a zero,
Query Options,Opcions de consulta,
Queued for replacing the BOM. It may take a few minutes.,En espera per reemplaçar la BOM. Pot trigar uns minuts.,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,En cua per actualitzar l&#39;últim preu en tota la factura de materials. Pot trigar uns quants minuts.,
Quick Journal Entry,Seient Ràpida,
Quot Count,Comte quot,
Quot/Lead %,Quot /% Plom,
Quotation,Oferta,
Quotation {0} is cancelled,L'annotació {0} està cancel·lada,
Quotation {0} not of type {1},Cita {0} no del tipus {1},
Quotations,Cites,
"Quotations are proposals, bids you have sent to your customers","Les cites són propostes, les ofertes que ha enviat als seus clients",
Quotations received from Suppliers.,Ofertes rebudes dels proveïdors.,
Quotations: ,cites:,
Quotes to Leads or Customers.,Cotitzacions a clients potencials o a clients.,
RFQs are not allowed for {0} due to a scorecard standing of {1},Les RFQ no estan permeses per {0} a causa d&#39;un quadre de comandament de peu de {1},
Range,Abast,
Rate,Tarifa,
Rate:,Valoració:,
Rating,classificació,
Raw Material,Matèria primera,
Raw Materials,Matèries primeres,
Raw Materials cannot be blank.,Matèries primeres no poden estar en blanc.,
Re-open,Torna a obrir,
Read blog,Llegir bloc,
Read the ERPNext Manual,Llegiu el Manual ERPNext,
Reading Uploaded File,Llegint el fitxer carregat,
Real Estate,Real Estate,
Reason For Putting On Hold,Motiu per posar-los en espera,
Reason for Hold,Motiu de la retenció,
Reason for hold: ,Motiu de la retenció:,
Receipt,Rebut,
Receipt document must be submitted,document de recepció ha de ser presentat,
Receivable,Compte per cobrar,
Receivable Account,Compte per Cobrar,
Received,Rebut,
Received On,Rebuda el,
Received Quantity,Quantitat rebuda,
Received Stock Entries,Entrades en accions rebudes,
Receiver List is empty. Please create Receiver List,"La llista de receptors és buida. Si us plau, crea la Llista de receptors",
Recipients,Destinataris,
Reconcile,Conciliar,
"Record of all communications of type email, phone, chat, visit, etc.","Registre de totes les comunicacions de tipus de correu electrònic, telèfon, xat, visita, etc.",
Records,Registres,
Redirect URL,URL de redireccionament,
Ref,Àrbitre,
Ref Date,Ref Data,
Reference,referència,
Reference #{0} dated {1},Referència #{0} amb data {1},
Reference Date,Data de Referència,
Reference Doctype must be one of {0},Referència Doctype ha de ser un {0},
Reference Document,Document de referència,
Reference Document Type,Referència Tipus de document,
Reference No & Reference Date is required for {0},No de referència i obres de consulta Data es requereix per {0},
Reference No and Reference Date is mandatory for Bank transaction,No de referència i data de referència és obligatòria per a les transaccions bancàries,
Reference No is mandatory if you entered Reference Date,Reference No és obligatori si introduir Data de Referència,
Reference No.,Número de referència.,
Reference Number,Número de referència,
Reference Owner,referència propietari,
Reference Type,Tipus de referència,
"Reference: {0}, Item Code: {1} and Customer: {2}","Referència: {0}, Codi de l&#39;article: {1} i el Client: {2}",
References,Referències,
Refresh Token,actualitzar Token,
Region,Regió,
Register,Registre,
Reject,Rebutjar,
Rejected,Rebutjat,
Related,connex,
Relation with Guardian1,Relació amb Guardian1,
Relation with Guardian2,Relació amb Guardian2,
Release Date,Data de publicació,
Reload Linked Analysis,Torneu a carregar l&#39;anàlisi enllaçat,
Remaining,Restant,
Remaining Balance,El saldo restant,
Remarks,Observacions,
Reminder to update GSTIN Sent,Recordatori per actualitzar GSTIN Enviat,
Remove item if charges is not applicable to that item,Treure article si els càrrecs no és aplicable a aquest,
Removed items with no change in quantity or value.,Elements retirats sense canvi en la quantitat o el valor.,
Reopen,Reobrir,
Reorder Level,Nivell de Reabastecimiento,
Reorder Qty,Quantitat per a generar comanda,
Repeat Customer Revenue,Repetiu els ingressos dels clients,
Repeat Customers,Repetiu els Clients,
Replace BOM and update latest price in all BOMs,Substituïu BOM i actualitzeu el preu més recent en totes les BOM,
Replied,Respost,
Replies,Respostes,
Report,Informe,
Report Builder,Generador d'informes,
Report Type,Tipus d'informe,
Report Type is mandatory,Tipus d'informe és obligatori,
Reports,Informes,
Reqd By Date,Reqd per data,
Reqd Qty,Reqd Qty,
Request for Quotation,Sol · licitud de pressupost,
Request for Quotations,Sol·licitud de Cites,
Request for Raw Materials,Sol·licitud de matèries primeres,
Request for purchase.,Sol·licitud de venda.,
Request for quotation.,Sol · licitud de pressupost.,
Requested Qty,Sol·licitat Quantitat,
"Requested Qty: Quantity requested for purchase, but not ordered.","Quantitat Sol·licitada: Quantitat sol·licitada per a la compra, però sense demanar.",
Requesting Site,Sol·licitant el lloc,
Requesting payment against {0} {1} for amount {2},Sol·licitant el pagament contra {0} {1} per la quantitat {2},
Requestor,Sol·licitant,
Required On,Requerit Per,
Required Qty,Quantitat necessària,
Required Quantity,Quantitat necessària,
Reschedule,Reprogramar,
Research,Recerca,
Research & Development,Investigació i Desenvolupament,
Researcher,Investigador,
Resend Payment Email,Torneu a enviar el pagament per correu electrònic,
Reserve Warehouse,Reserva Magatzem,
Reserved Qty,Reservats Quantitat,
Reserved Qty for Production,Quantitat reservada per a la Producció,
Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Quantitat reservada per a la producció: quantitat de matèries primeres per fabricar articles de fabricació.,
"Reserved Qty: Quantity ordered for sale, but not delivered.","Reservats Quantitat: Quantitat va ordenar a la venda, però no entregat.",
Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,El magatzem reservat és obligatori per l&#39;element {0} en matèries primeres subministrades,
Reserved for manufacturing,Reservat per a la fabricació,
Reserved for sale,Mantinguts per a la venda,
Reserved for sub contracting,Reservat per subcontractació,
Resistant,Resistent,
Resolve error and upload again.,Resol l’error i torna a carregar-lo.,
Responsibilities,Responsabilitats,
Rest Of The World,Resta del món,
Restart Subscription,Reinicia la subscripció,
Restaurant,Restaurant,
Result Date,Data de resultats,
Result already Submitted,Resultat ja enviat,
Resume,Resum,
Retail,Venda al detall,
Retail & Wholesale,Al detall i a l'engròs,
Retail Operations,Operacions minoristes,
Retained Earnings,Guanys Retingudes,
Retention Stock Entry,Retenció d&#39;existències,
Retention Stock Entry already created or Sample Quantity not provided,Retenció d&#39;existències ja creades o la quantitat de mostra no subministrada,
Return,Retorn,
Return / Credit Note,Retorn / Nota de Crèdit,
Return / Debit Note,Retorn / dèbit Nota,
Returns,les devolucions,
Reverse Journal Entry,Entrada periòdica inversa,
Review Invitation Sent,Revisa la invitació enviada,
Review and Action,Revisió i acció,
Role,Rol,
Rooms Booked,Habitacions reservades,
Root Company,Empresa d’arrel,
Root Type,Escrigui root,
Root Type is mandatory,Root Type is mandatory,
Root cannot be edited.,Root no es pot editar.,
Root cannot have a parent cost center,Root no pot tenir un centre de costos pares,
Round Off,Arrodonir,
Rounded Total,Total arrodonit,
Route,Ruta,
Row # {0}: ,Fila # {0}:,
Row # {0}: Batch No must be same as {1} {2},Fila # {0}: Lot No ha de ser igual a {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Fila # {0}: No es pot tornar més de {1} per a l&#39;article {2},
Row # {0}: Rate cannot be greater than the rate used in {1} {2},Fila # {0}: taxa no pot ser més gran que la taxa utilitzada en {1} {2},
Row # {0}: Serial No is mandatory,Fila # {0}: Nombre de sèrie és obligatori,
Row # {0}: Serial No {1} does not match with {2} {3},Fila # {0}: Nombre de sèrie {1} no coincideix amb {2} {3},
Row #{0} (Payment Table): Amount must be negative,Fila # {0} (Taula de pagaments): la quantitat ha de ser negativa,
Row #{0} (Payment Table): Amount must be positive,Fila # {0} (Taula de pagaments): la quantitat ha de ser positiva,
Row #{0}: Account {1} does not belong to company {2},Fila # {0}: el compte {1} no pertany a l&#39;empresa {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Fila # {0}: quantitat assignada no pot ser més gran que la quantitat pendent.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Fila # {0}: l&#39;element {1} no pot ser presentat, el que ja és {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Fila # {0}: no es pot establir la tarifa si la quantitat és superior a la quantitat facturada per l&#39;article {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Fila # {0}: data de liquidació {1} no pot ser anterior Xec Data {2},
Row #{0}: Duplicate entry in References {1} {2},Fila # {0}: Duplicar entrada a les Referències {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Fila # {0}: la data de lliurament prevista no pot ser abans de la data de la comanda de compra,
Row #{0}: Item added,Fila # {0}: element afegit,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Fila # {0}: Seient {1} no té en compte {2} o ja compara amb un altre bo,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Fila # {0}: No es permet canviar de proveïdors com l&#39;Ordre de Compra ja existeix,
Row #{0}: Please set reorder quantity,Fila # {0}: Configureu la quantitat de comanda,
Row #{0}: Please specify Serial No for Item {1},Fila #{0}: Si us plau especifica el número de sèrie per l'article {1},
Row #{0}: Qty increased by 1,Fila # {0}: quantitat augmentada en 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Fila # {0}: Taxa ha de ser el mateix que {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Fila # {0}: el tipus de document de referència ha de ser un de reclam de despeses o d&#39;entrada de diari,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Fila # {0}: Tipus de document de referència ha de ser un l&#39;ordre de compra, factura de compra o d&#39;entrada de diari",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Fila # {0}: No aprovat Quantitat no es pot introduir en la Compra de Retorn,
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Fila # {0}: Magatzem Rebutjat és obligatori en la partida rebutjada {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,La fila # {0}: la reqd per data no pot ser abans de la data de la transacció,
Row #{0}: Set Supplier for item {1},Fila # {0}: Conjunt de Proveïdors per a l&#39;element {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Fila # {0}: l&#39;estat ha de ser {1} per descomptar la factura {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","Fila # {0}: El lot {1} té solament {2} Quant. Si us plau seleccioni un altre lot que té {3} Cant disponible o dividir la fila en diverses files, per lliurar / tema des de diversos lots",
Row #{0}: Timings conflicts with row {1},Fila # {0}: conflictes Timings amb fila {1},
Row #{0}: {1} can not be negative for item {2},Fila # {0}: {1} no pot ser negatiu per a l&#39;element {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Fila n {0}: Munto no pot ser major que l&#39;espera Monto al Compte de despeses de {1}. A l&#39;espera de Monto és {2},
Row {0} : Operation is required against the raw material item {1},Fila {0}: es requereix operació contra l&#39;element de la matèria primera {1},
Row {0}# Allocated amount {1} cannot be greater than unclaimed amount {2},La fila {0} # quantitat assignada {1} no pot ser major que la quantitat no reclamada {2},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},La fila {0} # L&#39;element {1} no es pot transferir més de {2} contra l&#39;ordre de compra {3},
Row {0}# Paid Amount cannot be greater than requested advance amount,La fila {0} # Quantitat pagada no pot ser superior a la quantitat sol·licitada,
Row {0}: Activity Type is mandatory.,Fila {0}: Tipus d&#39;activitat és obligatòria.,
Row {0}: Advance against Customer must be credit,Fila {0}: Avanç contra el Client ha de ser de crèdit,
Row {0}: Advance against Supplier must be debit,Fila {0}: Avanç contra el Proveïdor ha de afeblir,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Fila {0}: quantitat assignada {1} ha de ser menor o igual a la quantitat d&#39;entrada de pagament {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Fila {0}: quantitat assignada {1} ha de ser menor o igual a quantitat pendent de facturar {2},
Row {0}: An Reorder entry already exists for this warehouse {1},Fila {0}: Una entrada Reordenar ja existeix per aquest magatzem {1},
Row {0}: Bill of Materials not found for the Item {1},Fila {0}: Llista de materials que no es troba per a l&#39;element {1},
Row {0}: Conversion Factor is mandatory,Fila {0}: el factor de conversió és obligatori,
Row {0}: Cost center is required for an item {1},Fila {0}: es requereix centre de costos per a un element {1},
Row {0}: Credit entry can not be linked with a {1},Fila {0}: entrada de crèdit no pot vincular amb un {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Fila {0}: Divisa de la llista de materials # {1} ha de ser igual a la moneda seleccionada {2},
Row {0}: Debit entry can not be linked with a {1},Fila {0}: seient de dèbit no pot vincular amb un {1},
Row {0}: Depreciation Start Date is required,Fila {0}: la data d&#39;inici de la depreciació és obligatòria,
Row {0}: Enter location for the asset item {1},Fila {0}: introduïu la ubicació de l&#39;element d&#39;actiu {1},
Row {0}: Exchange Rate is mandatory,Fila {0}: Tipus de canvi és obligatori,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Fila {0}: el valor esperat després de la vida útil ha de ser inferior a la quantitat bruta de compra,
Row {0}: From Time and To Time is mandatory.,Fila {0}: Del temps i el temps és obligatori.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Fila {0}: Del temps i Temps de {1} es solapen amb {2},
Row {0}: From time must be less than to time,Fila {0}: el temps ha de ser menor que el temps,
Row {0}: Hours value must be greater than zero.,Fila {0}: valor Hores ha de ser més gran que zero.,
Row {0}: Invalid reference {1},Fila {0}: referència no vàlida {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Fila {0}: Festa / Compte no coincideix amb {1} / {2} en {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Fila {0}: Partit Tipus i Partit es requereix per al compte per cobrar / pagar {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Fila {0}: El pagament contra Vendes / Ordre de Compra sempre ha d'estar marcat com a pagamet anticipat (bestreta),
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Fila {0}: Si us plau, vegeu ""És Avanç 'contra el Compte {1} si es tracta d'una entrada amb antelació.",
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Fila {0}: especifiqueu la raó d’exempció d’impostos en els impostos i els càrrecs de venda,
Row {0}: Please set the Mode of Payment in Payment Schedule,Fila {0}: estableix el mode de pagament a la planificació de pagaments,
Row {0}: Please set the correct code on Mode of Payment {1},Fila {0}: configureu el codi correcte al mode de pagament {1},
Row {0}: Qty is mandatory,Fila {0}: Quantitat és obligatori,
Row {0}: Quality Inspection rejected for item {1},Fila {0}: s&#39;ha rebutjat la inspecció de qualitat per a l&#39;element {1},
Row {0}: UOM Conversion Factor is mandatory,Fila {0}: UOM factor de conversió és obligatori,
Row {0}: select the workstation against the operation {1},Fila {0}: seleccioneu l&#39;estació de treball contra l&#39;operació {1},
Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Fila {0}: {1} Nombres de sèrie obligatoris per a l&#39;element {2}. Heu proporcionat {3}.,
Row {0}: {1} must be greater than 0,La fila {0}: {1} ha de ser superior a 0,
Row {0}: {1} {2} does not match with {3},Fila {0}: {1} {2} no coincideix amb {3},
Row {0}:Start Date must be before End Date,Fila {0}: Data d'inici ha de ser anterior Data de finalització,
Rows with duplicate due dates in other rows were found: {0},S&#39;han trobat files amb dates de venciment duplicades en altres files: {0},
Rules for adding shipping costs.,Regles per afegir les despeses d'enviament.,
Rules for applying pricing and discount.,Regles per a l'aplicació de preus i descomptes.,
S.O. No.,S.O. No.,
SGST Amount,Import SGST,
SO Qty,SO Qty,
Safety Stock,seguretat de la,
Salary,Salari,
Salary Slip ID,Salari Slip ID,
Salary Slip of employee {0} already created for this period,Nòmina dels empleats {0} ja creat per a aquest període,
Salary Slip of employee {0} already created for time sheet {1},La relliscada de sou de l&#39;empleat {0} ja creat per al full de temps {1},
Salary Slip submitted for period from {0} to {1},Slip de pagament enviat per al període de {0} a {1},
Salary Structure Assignment for Employee already exists,L&#39;assignació d&#39;estructura salarial per als empleats ja existeix,
Salary Structure Missing,Falta Estructura salarial,
Salary Structure must be submitted before submission of Tax Ememption Declaration,L’estructura salarial s’ha de presentar abans de la presentació de la declaració d’emissió d’impostos,
Salary Structure not found for employee {0} and date {1},No s&#39;ha trobat l&#39;estructura salarial per a l&#39;empleat {0} i la data {1},
Salary Structure should have flexible benefit component(s) to dispense benefit amount,L&#39;Estructura salarial hauria de tenir un (s) component (s) de benefici flexible per dispensar l&#39;import del benefici,
"Salary already processed for period between {0} and {1}, Leave application period cannot be between this date range.","Salari ja processada per al període entre {0} i {1}, Deixa període d&#39;aplicació no pot estar entre aquest interval de dates.",
Sales,Venda,
Sales Account,Compte de vendes,
Sales Expenses,Despeses de venda,
Sales Funnel,Sales Funnel,
Sales Invoice,Factura de vendes,
Sales Invoice {0} has already been submitted,Factura {0} ja s'ha presentat,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,La factura {0} ha de ser cancel·lada abans de cancel·lar aquesta comanda de vendes,
Sales Manager,Gerent De Vendes,
Sales Master Manager,Gerent de vendes,
Sales Order,Ordre de venda,
Sales Order Item,Sol·licitar Sales Item,
Sales Order required for Item {0},Ordres de venda requerides per l'article {0},
Sales Order to Payment,Ordres de venda al Pagament,
Sales Order {0} is not submitted,Comanda de client {0} no es presenta,
Sales Order {0} is not valid,Vendes Sol·licitar {0} no és vàlid,
Sales Order {0} is {1},Vendes Sol·licitar {0} és {1},
Sales Orders,Ordres de venda,
Sales Partner,Soci de vendes,
Sales Pipeline,pipeline vendes,
Sales Price List,Llista de preus de venda,
Sales Return,Devolucions de vendes,
Sales Summary,Resum de vendes,
Sales Tax Template,Plantilla d&#39;Impost a les Vendes,
Sales Team,Equip de vendes,
Sales User,Usuari de vendes,
Sales and Returns,Vendes i devolucions,
Sales campaigns.,Campanyes de venda.,
Sales orders are not available for production,Les comandes de venda no estan disponibles per a la seva producció,
Salutation,Salutació,
Same Company is entered more than once,Igual Company s&#39;introdueix més d&#39;una vegada,
Same item cannot be entered multiple times.,El mateix article no es pot introduir diverses vegades.,
Same supplier has been entered multiple times,Mateix proveïdor s&#39;ha introduït diverses vegades,
Sample,Mostra,
Sample Collection,Col.lecció de mostres,
Sample quantity {0} cannot be more than received quantity {1},La quantitat de mostra {0} no pot ser més de la quantitat rebuda {1},
Sanctioned,sancionada,
Sanctioned Amount,Sanctioned Amount,
Sanctioned Amount cannot be greater than Claim Amount in Row {0}.,Import sancionat no pot ser major que la reclamació Quantitat a la fila {0}.,
Sand,Sorra,
Saturday,Dissabte,
Saved,Saved,
Saving {0},S&#39;està desant {0},
Scan Barcode,Escanejar codi de barres,
Schedule,Horari,
Schedule Admission,Horari d&#39;admissió,
Schedule Course,Calendari de Cursos,
Schedule Date,Horari Data,
Schedule Discharge,Horari d&#39;alta,
Scheduled,Programat,
Scheduled Upto,Programat fins a,
"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Programes per a {0} superposicions, voleu continuar després de saltar les ranures superposades?",
Score cannot be greater than Maximum Score,Els resultats no pot ser més gran que puntuació màxim,
Score must be less than or equal to 5,Score ha de ser menor que o igual a 5,
Scorecards,Quadres de comandament,
Scrapped,rebutjat,
Search,Cerca,
Search Results,Resultats de la cerca,
Search Sub Assemblies,Assemblees Cercar Sub,
"Search by item code, serial number, batch no or barcode","Cerca per codi d&#39;article, número de sèrie, no per lots o codi de barres",
"Seasonality for setting budgets, targets etc.","L'estacionalitat d'establir pressupostos, objectius, etc.",
Secret Key,clau secreta,
Secretary,Secretari,
Section Code,Codi de secció,
Secured Loans,Préstecs garantits,
Securities & Commodity Exchanges,Securities & Commodity Exchanges,
Securities and Deposits,Valors i dipòsits,
See All Articles,Veure tots els articles,
See all open tickets,Veure tots els bitllets oberts,
See past orders,Consulteu ordres anteriors,
See past quotations,Consulteu cites anteriors,
Select,Seleccionar,
Select Alternate Item,Selecciona un element alternatiu,
Select Attribute Values,Seleccioneu els valors de l&#39;atribut,
Select BOM,Seleccioneu la llista de materials,
Select BOM and Qty for Production,Seleccioneu la llista de materials i d&#39;Unitats de Producció,
"Select BOM, Qty and For Warehouse","Seleccioneu BOM, Qty i For Warehouse",
Select Batch,Seleccioneu lot,
Select Batch Numbers,Seleccioneu els números de lot,
Select Brand...,Seleccioneu una marca ...,
Select Company,Seleccioneu l&#39;empresa,
Select Company...,Seleccioneu l'empresa ...,
Select Customer,Seleccioneu el client,
Select Days,Seleccioneu Dies,
Select Default Supplier,Tria un proveïdor predeterminat,
Select DocType,Seleccioneu doctype,
Select Fiscal Year...,Seleccioneu l'Any Fiscal ...,
Select Item (optional),Selecciona l&#39;element (opcional),
Select Items based on Delivery Date,Seleccioneu els elements segons la data de lliurament,
Select Items to Manufacture,Seleccionar articles a Fabricació,
Select Loyalty Program,Seleccioneu Programa de fidelització,
Select Patient,Seleccioneu el pacient,
Select Possible Supplier,Seleccionar Possible Proveïdor,
Select Property,Seleccioneu la propietat,
Select Quantity,Seleccioneu Quantitat,
Select Serial Numbers,Seleccionar números de sèrie,
Select Target Warehouse,Selecciona una destinació de dipòsit,
Select Warehouse...,Seleccioneu Magatzem ...,
Select an account to print in account currency,Seleccioneu un compte per imprimir a la moneda del compte,
Select an employee to get the employee advance.,Seleccioneu un empleat per fer avançar l&#39;empleat.,
Select at least one value from each of the attributes.,Seleccioneu com a mínim un valor de cadascun dels atributs.,
Select change amount account,Seleccioneu el canvi import del compte,
Select company first,Seleccioneu l&#39;empresa primer,
Select students manually for the Activity based Group,Estudiants seleccionats de forma manual per al grup basat en activitats,
Select the customer or supplier.,Seleccioneu el client o el proveïdor.,
Select the nature of your business.,Seleccioneu la naturalesa del seu negoci.,
Select the program first,Seleccioneu primer el programa,
Select to add Serial Number.,Seleccioneu per afegir número de sèrie.,
Select your Domains,Seleccioneu els vostres dominis,
Selected Price List should have buying and selling fields checked.,La llista de preus seleccionada hauria de comprovar els camps comprats i venuts.,
Sell,Vendre,
Selling,Vendes,
Selling Amount,Quantitat de venda,
Selling Price List,Llista de preus de venda,
Selling Rate,Velocitat de venda,
"Selling must be checked, if Applicable For is selected as {0}","Venda de comprovar, si es selecciona aplicable Perquè {0}",
Send Grant Review Email,Envieu un correu electrònic de revisió de la subvenció,
Send Now,Enviar ara,
Send SMS,Enviar SMS,
Send mass SMS to your contacts,Enviar SMS massiu als seus contactes,
Sensitivity,Sensibilitat,
Sent,Enviat,
Serial No and Batch,Número de sèrie i de lot,
Serial No is mandatory for Item {0},Nombre de sèrie és obligatòria per Punt {0},
Serial No {0} does not belong to Batch {1},El número de sèrie {0} no pertany a Batch {1},
Serial No {0} does not belong to Delivery Note {1},El número de sèrie {0} no pertany a la nota de lliurament {1},
Serial No {0} does not belong to Item {1},El número de Sèrie {0} no pertany a l'article {1},
Serial No {0} does not belong to Warehouse {1},Serial No {0} no pertany al Magatzem {1},
Serial No {0} does not belong to any Warehouse,Número de sèrie {0} no pertany a cap magatzem,
Serial No {0} does not exist,El número de sèrie {0} no existeix,
Serial No {0} has already been received,Nombre de sèrie {0} ja s'ha rebut,
Serial No {0} is under maintenance contract upto {1},Serial No {0} està sota contracte de manteniment fins {1},
Serial No {0} is under warranty upto {1},El número de sèrie {0} està en garantia fins {1},
Serial No {0} not found,Serial No {0} no trobat,
Serial No {0} not in stock,El número de sèrie {0} no està en estoc,
Serial No {0} quantity {1} cannot be a fraction,Número de sèrie {0} quantitat {1} no pot ser una fracció,
Serial Nos Required for Serialized Item {0},Nº de Sèrie Necessari per article serialitzat {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Número de sèrie: {0} ja es fa referència en factura de venda: {1},
Serial Numbers,Nombres de sèrie,
Serial Numbers in row {0} does not match with Delivery Note,Números de sèrie en fila {0} no coincideix amb la nota de lliurament,
Serial no {0} has been already returned,El número de sèrie {0} ja no s&#39;ha retornat,
Serial number {0} entered more than once,Nombre de sèrie {0} va entrar més d'una vegada,
Serialized Inventory,Inventari serialitzat,
Series Updated,Sèries Actualitzat,
Series Updated Successfully,Sèrie actualitzat correctament,
Series is mandatory,Sèries és obligatori,
Series {0} already used in {1},La sèrie {0} ja s'utilitza a {1},
Service,Servei,
Service Expense,despesa servei,
Service Level Agreement,Acord de nivell de servei,
Service Level Agreement.,Acord de nivell de servei.,
Service Level.,Nivell de servei.,
Service Stop Date cannot be after Service End Date,La data de parada del servei no pot ser després de la data de finalització del servei,
Service Stop Date cannot be before Service Start Date,La data de parada del servei no pot ser abans de la data d&#39;inici del servei,
Services,Serveis,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Establir valors predeterminats com a Empresa, vigència actual any fiscal, etc.",
Set Details,Estableix els detalls,
Set New Release Date,Estableix una nova data de llançament,
Set Project and all Tasks to status {0}?,Voleu definir el projecte i totes les tasques a l&#39;estat {0}?,
Set Status,Definiu l&#39;estat,
Set Tax Rule for shopping cart,Estableixi la regla fiscal de carret de la compra,
Set as Closed,Establir com Tancada,
Set as Completed,Estableix com a completat,
Set as Default,Estableix com a predeterminat,
Set as Lost,Establir com a Perdut,
Set as Open,Posar com a obert,
Set default inventory account for perpetual inventory,Establir compte d&#39;inventari predeterminat d&#39;inventari perpetu,
Set this if the customer is a Public Administration company.,Definiu-lo si el client és una empresa d’administració pública,
Set {0} in asset category {1} or company {2},Estableix {0} a la categoria d&#39;actius {1} o a l&#39;empresa {2},
"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Configura els esdeveniments a {0}, ja que l&#39;empleat que estigui connectat a la continuació venedors no té un ID d&#39;usuari {1}",
Setting defaults,Configuració de valors predeterminats,
Setting up Email,Configuració de Correu,
Setting up Email Account,Configuració de comptes de correu electrònic,
Setting up Employees,Configuració d&#39;Empleats,
Setting up Taxes,Configuració d&#39;Impostos,
Setting up company,Empresa de creació,
Settings,Ajustos,
"Settings for online shopping cart such as shipping rules, price list etc.","Ajustaments per a la compra en línia, com les normes d'enviament, llista de preus, etc.",
Settings for website homepage,Ajustos per a la pàgina d&#39;inici pàgina web,
Settings for website product listing,Configuració per a la llista de productes de llocs web,
Settled,Assentat,
Setup Gateway accounts.,Configuració de comptes de porta d&#39;enllaç.,
Setup SMS gateway settings,Paràmetres de configuració de Porta de SMS,
Setup cheque dimensions for printing,dimensions de verificació de configuració per a la impressió,
Setup default values for POS Invoices,Configuració dels valors predeterminats per a les factures de POS,
Setup mode of POS (Online / Offline),Mode de configuració de TPV (en línia o fora de línia),
Setup your Institute in ERPNext,Configura el vostre institut a ERPNext,
Share Balance,Comparteix equilibri,
Share Ledger,Comparteix el compilador,
Share Management,Gestió d&#39;accions,
Share Transfer,Transferència d&#39;accions,
Share Type,Tipus de compartició,
Shareholder,Accionista,
Ship To State,Enviament a estat,
Shipments,Els enviaments,
Shipping,Enviament,
Shipping Address,Adreça d'nviament,
"Shipping Address does not have country, which is required for this Shipping Rule","L&#39;adreça d&#39;enviament no té país, que es requereix per a aquesta regla d&#39;enviament",
Shipping rule only applicable for Buying,La norma d&#39;enviament només és aplicable per a la compra,
Shipping rule only applicable for Selling,La norma d&#39;enviament només és aplicable per a la venda,
Shopify Supplier,Compreu proveïdor,
Shopping Cart,Carro De La Compra,
Shopping Cart Settings,Ajustaments de la cistella de la compra,
Short Name,Nom curt,
Shortage Qty,Quantitat escassetat,
Show Completed,Espectacle finalitzat,
Show Cumulative Amount,Mostra la quantitat acumulativa,
Show Employee,Mostrar empleat,
Show Open,Mostra oberts,
Show Opening Entries,Mostra les entrades d&#39;obertura,
Show Payment Details,Mostra els detalls del pagament,
Show Return Entries,Mostra les entrades de retorn,
Show Salary Slip,Slip Mostra Salari,
Show Variant Attributes,Mostra atributs de variants,
Show Variants,Mostra variants,
Show closed,Mostra tancada,
Show exploded view,Mostra la vista desplegada,
Show only POS,Mostra només TPV,
Show unclosed fiscal year's P&L balances,Mostra P &amp; L saldos sense tancar l&#39;exercici fiscal,
Show zero values,Mostra valors zero,
Sick Leave,Baixa per malaltia,
Silt,Silt,
Single Variant,Variant única,
Single unit of an Item.,Unitat individual d'un article,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Excepte l&#39;assignació de la permís per als següents empleats, ja que ja existeixen registres d&#39;assignació de permisos contra ells. {0}",
"Skipping Salary Structure Assignment for the following employees, as Salary Structure Assignment records already exists against them. {0}","Saltar l&#39;assignació d&#39;estructura salarial per als empleats següents, ja que els registres d&#39;assignació d&#39;estructura salarial ja existeixen. {0}",
Slideshow,Slideshow,
Slots for {0} are not added to the schedule,Les ranures per a {0} no s&#39;afegeixen a la programació,
Small,Petit,
Soap & Detergent,Sabó i detergent,
Software,Programari,
Software Developer,Desenvolupador de programari,
Softwares,programaris,
Soil compositions do not add up to 100,Les composicions del sòl no contenen fins a 100,
Sold,Venut,
Some emails are invalid,Alguns correus electrònics no són vàlids,
Some information is missing,falta informació,
Something went wrong!,Quelcom ha fallat!,
"Sorry, Serial Nos cannot be merged","Ho sentim, els números de sèrie no es poden combinar",
Source,Font,
Source Name,font Nom,
Source Warehouse,Magatzem d'origen,
Source and Target Location cannot be same,La ubicació d&#39;origen i de destinació no pot ser igual,
Source and target warehouse cannot be same for row {0},Font i el magatzem de destinació no pot ser igual per fila {0},
Source and target warehouse must be different,Origen i destí de dipòsit han de ser diferents,
Source of Funds (Liabilities),Font dels fons (passius),
Source warehouse is mandatory for row {0},Magatzem d'origen obligatori per a la fila {0},
Specified BOM {0} does not exist for Item {1},BOM especificat {0} no existeix la partida {1},
Split,divisió,
Split Batch,Split Batch,
Split Issue,Esdeveniment dividit,
Sports,Esports,
Staffing Plan {0} already exist for designation {1},El pla de plantilla {0} ja existeix per a la designació {1},
Standard,Estàndard,
Standard Buying,Compra Standard,
Standard Selling,Standard Selling,
Standard contract terms for Sales or Purchase.,Condicions contractuals estàndard per Vendes o la compra.,
Start Date,Data De Inici,
Start Date of Agreement can't be greater than or equal to End Date.,La data d’inici de l’acord no pot ser superior o igual a la data de finalització.,
Start Year,Any d&#39;inici,
"Start and end dates not in a valid Payroll Period, cannot calculate {0}","Les dates d’inici i finalització no es troben en un període de nòmina vàlid, no es poden calcular {0}",
"Start and end dates not in a valid Payroll Period, cannot calculate {0}.","Les dates d&#39;inici i final no estan en un període de nòmina vàlid, no es pot calcular {0}.",
Start date should be less than end date for Item {0},La data d'inici ha de ser anterior a la data de finalització per l'article {0},
Start date should be less than end date for task {0},La data d&#39;inici hauria de ser inferior a la data de finalització de la tasca {0},
Start day is greater than end day in task '{0}',El dia d&#39;inici és superior al final del dia a la tasca &#39;{0}&#39;,
Start on,Comença,
State,Estat,
State/UT Tax,Impost estatal / UT,
Statement of Account,Estat de compte,
Status must be one of {0},Estat ha de ser un {0},
Stock,Estoc,
Stock Adjustment,Ajust d'estoc,
Stock Analytics,Imatges Analytics,
Stock Assets,Actius,
Stock Available,Stock disponible,
Stock Balance,Saldos d'estoc,
Stock Entries already created for Work Order ,Entrades de valors ja creades per a la comanda de treball,
Stock Entry,Entrada estoc,
Stock Entry {0} created,De l&#39;entrada {0} creat,
Stock Entry {0} is not submitted,Entrada de la {0} no es presenta,
Stock Expenses,Despeses d'estoc,
Stock In Hand,A la mà de la,
Stock Items,stockItems,
Stock Ledger,Ledger Stock,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Les entrades d'ajust d'estocs i les entrades de GL estan inserits en els rebuts de compra seleccionats,
Stock Levels,Els nivells d&#39;existències,
Stock Liabilities,Stock Liabilities,
Stock Options,Opcions sobre accions,
Stock Qty,existència Quantitat,
Stock Received But Not Billed,Estoc Rebudes però no facturats,
Stock Reports,Informes d&#39;arxiu,
Stock Summary,Resum de la,
Stock Transactions,Les transaccions de valors,
Stock UOM,UDM de l'Estoc,
Stock Value,Estoc Valor,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Estoc equilibri en Lot {0} es convertirà en negativa {1} per a la partida {2} a Magatzem {3},
Stock cannot be updated against Delivery Note {0},L'estoc no es pot actualitzar contra la Nota de Lliurament {0},
Stock cannot be updated against Purchase Receipt {0},Stock no es pot actualitzar en contra rebut de compra {0},
Stock cannot exist for Item {0} since has variants,Estoc no pot existir per al punt {0} ja té variants,
Stock transactions before {0} are frozen,Operacions borsàries abans de {0} es congelen,
Stop,Aturi,
Stopped,Detingut,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","No es pot cancel·lar la comanda de treball parada, sense desactivar-lo primer a cancel·lar",
Stores,Botigues,
Structures have been assigned successfully,S&#39;han assignat estructures amb èxit,
Student,Estudiant,
Student Activity,Activitat de l&#39;estudiant,
Student Address,Direcció de l&#39;estudiant,
Student Admissions,Admissió d&#39;Estudiants,
Student Attendance,Assistència de l&#39;estudiant,
"Student Batches help you track attendance, assessments and fees for students","Els lots dels estudiants ajuden a realitzar un seguiment d&#39;assistència, avaluacions i quotes per als estudiants",
Student Email Address,Estudiant Adreça de correu electrònic,
Student Email ID,Estudiant ID de correu electrònic,
Student Group,Grup d&#39;estudiants,
Student Group Strength,Força grup d&#39;alumnes,
Student Group is already updated.,Grup d&#39;alumnes ja està actualitzat.,
Student Group: ,Grup d&#39;estudiants:,
Student ID,Identificació de l&#39;estudiant,
Student ID: ,Identificador de l&#39;estudiant:,
Student LMS Activity,Activitat LMS dels estudiants,
Student Mobile No.,Nº d&#39;Estudiants mòbil,
Student Name,Nom de l&#39;estudiant,
Student Name: ,Nom de l&#39;estudiant:,
Student Report Card,Targeta d&#39;informe dels estudiants,
Student is already enrolled.,Estudiant ja està inscrit.,
Student {0} - {1} appears Multiple times in row {2} & {3},Estudiant {0} - {1} apareix en múltiples ocasions consecutives {2} i {3},
Student {0} does not belong to group {1},L&#39;estudiant {0} no pertany al grup {1},
Student {0} exist against student applicant {1},Estudiant {0} existeix contra l&#39;estudiant sol·licitant {1},
"Students are at the heart of the system, add all your students","Els estudiants estan en el cor del sistema, se sumen tots els seus estudiants",
Sub Assemblies,Sub Assemblies,
Sub Type,Sub Tipus,
Sub-contracting,la subcontractació,
Subcontract,Subcontracte,
Subject,Subjecte,
Submit,Presentar,
Submit Proof,Envieu la prova,
Submit Salary Slip,Presentar nòmina,
Submit this Work Order for further processing.,Envieu aquesta Ordre de treball per a un posterior processament.,
Submit this to create the Employee record,Envieu això per crear el registre d&#39;empleats,
Submitting Salary Slips...,S&#39;estan enviant resguards salaris ...,
Subscription,Subscripció,
Subscription Management,Gestió de subscripcions,
Subscriptions,Subscripcions,
Subtotal,total parcial,
Successful,Èxit,
Successfully Reconciled,Reconciliats amb èxit,
Successfully Set Supplier,S&#39;ha establert el proveïdor amb èxit,
Successfully created payment entries,S&#39;ha creat una entrada de pagament creada,
Successfully deleted all transactions related to this company!,Eliminat correctament totes les transaccions relacionades amb aquesta empresa!,
Sum of Scores of Assessment Criteria needs to be {0}.,Suma de les puntuacions de criteris d&#39;avaluació ha de ser {0}.,
Sum of points for all goals should be 100. It is {0},Suma de punts per a totes les metes ha de ser 100. És {0},
Summary,Resum,
Summary for this month and pending activities,Resum per a aquest mes i activitats pendents,
Summary for this week and pending activities,Resum per a aquesta setmana i activitats pendents,
Sunday,Diumenge,
Suplier,suplir,
Supplier,Proveïdor,
Supplier Group,Grup de proveïdors,
Supplier Group master.,Mestre del grup de proveïdors.,
Supplier Id,Identificador de Proveïdor,
Supplier Invoice Date cannot be greater than Posting Date,Factura Proveïdor La data no pot ser major que la data de publicació,
Supplier Invoice No,Número de Factura de Proveïdor,
Supplier Invoice No exists in Purchase Invoice {0},Proveïdor de factura no existeix en la factura de la compra {0},
Supplier Name,Nom del proveïdor,
Supplier Part No,Proveïdor de part,
Supplier Quotation,Cita Proveïdor,
Supplier Scorecard,Quadre de comandament del proveïdor,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Magatzem obligatori per rebut de compra de subcontractació de proveïdors,
Supplier database.,Base de dades de proveïdors.,
Supplier {0} not found in {1},El proveïdor {0} no s&#39;ha trobat a {1},
Supplier(s),Proveïdor (s),
Supplies made to UIN holders,Subministraments realitzats als titulars d’UIN,
Supplies made to Unregistered Persons,Subministraments realitzats a persones no registrades,
Suppliies made to Composition Taxable Persons,Complements realitzats per a la composició de persones imposables,
Supply Type,Tipus de subministrament,
Support,Suport,
Support Analytics,Suport Analytics,
Support Settings,Configuració de respatller,
Support Tickets,Entrades de suport,
Support queries from customers.,Consultes de suport de clients.,
Susceptible,Susceptible,
Sync has been temporarily disabled because maximum retries have been exceeded,S&#39;ha desactivat temporalment la sincronització perquè s&#39;han superat els recessos màxims,
Syntax error in condition: {0},Error de sintaxi en la condició: {0},
Syntax error in formula or condition: {0},Error de sintaxi en la fórmula o condició: {0},
System Manager,Administrador del sistema,
TDS Rate %,TDS percentatge%,
Tap items to add them here,Toc els articles a afegir aquí,
Target,Objectiu,
Target ({}),Objectiu ({}),
Target On,Target On,
Target Warehouse,Magatzem destí,
Target warehouse is mandatory for row {0},Magatzem destí obligatori per a la fila {0},
Task,Tasca,
Tasks,Tasques,
Tasks have been created for managing the {0} disease (on row {1}),S&#39;han creat tasques per gestionar la {0} malaltia (a la fila {1}),
Tax,Impost,
Tax Assets,Actius per impostos,
Tax Category,Categoria Tributària,
Tax Category for overriding tax rates.,Categoria de l’impost per a taxes impositives superiors.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items",Categoria impost ha estat canviat a &quot;total&quot; perquè tots els articles són articles no estan en estoc,
Tax ID,Identificació Tributària,
Tax Id: ,Identificació fiscal:,
Tax Rate,Tax Rate,
Tax Rule Conflicts with {0},Conflictes norma fiscal amb {0},
Tax Rule for transactions.,Regla fiscal per a les transaccions.,
Tax Template is mandatory.,Plantilla d&#39;impostos és obligatori.,
Tax Withholding rates to be applied on transactions.,Taxes de retenció d&#39;impostos que s&#39;aplicaran sobre les transaccions.,
Tax template for buying transactions.,Plantilla d'Impostos per a les transaccions de compres,
Tax template for item tax rates.,Plantilla d’impostos per tipus d’impost d’ítems.,
Tax template for selling transactions.,Plantilla d'Impostos per a la venda de les transaccions.,
Taxable Amount,base imposable,
Taxes,Impostos,
Team Updates,actualitzacions equip,
Technology,Tecnologia,
Telecommunications,Telecomunicacions,
Telephone Expenses,Despeses telefòniques,
Television,Televisió,
Template Name,Nom de la plantilla,
Template of terms or contract.,Plantilla de termes o contracte.,
Templates of supplier scorecard criteria.,Plantilles de criteri de quadre de comandament de proveïdors.,
Templates of supplier scorecard variables.,Plantilles de variables de quadre de comandament de proveïdors.,
Templates of supplier standings.,Plantilles de classificació dels proveïdors.,
Temporarily on Hold,Temporalment en espera,
Temporary,Temporal,
Temporary Accounts,Comptes temporals,
Temporary Opening,Obertura temporal,
Terms and Conditions,Condicions,
Terms and Conditions Template,Plantilla de termes i condicions,
Territory,Territori,
Test,Prova,
Thank you,Gràcies,
Thank you for your business!,Gràcies pel teu negoci!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,El &quot;Des del paquet&quot; el camp no ha d&#39;estar buit ni el valor és inferior a 1.,
The Brand,La marca,
The Item {0} cannot have Batch,L'article {0} no pot tenir per lots,
The Loyalty Program isn't valid for the selected company,El programa de fidelització no és vàlid per a l&#39;empresa seleccionada,
The Payment Term at row {0} is possibly a duplicate.,El termini de pagament a la fila {0} és possiblement un duplicat.,
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,"La data final de durada no pot ser anterior a la data d&#39;inici Termini. Si us plau, corregeixi les dates i torna a intentar-ho.",
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.,"La data final de durada no pot ser posterior a la data de cap d&#39;any de l&#39;any acadèmic a què està vinculat el terme (any acadèmic {}). Si us plau, corregeixi les dates i torna a intentar-ho.",
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.,"El Termini Data d&#39;inici no pot ser anterior a la data d&#39;inici d&#39;any de l&#39;any acadèmic a què està vinculat el terme (any acadèmic {}). Si us plau, corregeixi les dates i torna a intentar-ho.",
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,"L&#39;Any Data de finalització no pot ser anterior a la data d&#39;inici d&#39;any. Si us plau, corregeixi les dates i torna a intentar-ho.",
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.,L&#39;import de {0} establert en aquesta sol·licitud de pagament és diferent de l&#39;import calculat de tots els plans de pagament: {1}. Assegureu-vos que això sigui correcte abans de presentar el document.,
The day(s) on which you are applying for leave are holidays. You need not apply for leave.,El dia (s) en el qual està sol·licitant la llicència són els dies festius. Vostè no necessita sol·licitar l&#39;excedència.,
The field From Shareholder cannot be blank,El camp De l&#39;Accionista no pot estar en blanc,
The field To Shareholder cannot be blank,El camp A l&#39;Accionista no pot estar en blanc,
The fields From Shareholder and To Shareholder cannot be blank,Els camps de l&#39;accionista i l&#39;accionista no es poden deixar en blanc,
The folio numbers are not matching,Els números del foli no coincideixen,
The holiday on {0} is not between From Date and To Date,El dia de festa en {0} no és entre De la data i Fins a la data,
The name of the institute for which you are setting up this system.,El nom de l&#39;institut per al qual està configurant aquest sistema.,
The name of your company for which you are setting up this system.,El nom de la teva empresa per a la qual està creant aquest sistema.,
The number of shares and the share numbers are inconsistent,El nombre d&#39;accions i els números d&#39;accions són incompatibles,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,El compte de la passarel·la de pagament del pla {0} és diferent del compte de la passarel·la de pagament en aquesta sol·licitud de pagament,
The selected BOMs are not for the same item,Les llistes de materials seleccionats no són per al mateix article,
The selected item cannot have Batch,L'element seleccionat no pot tenir per lots,
The seller and the buyer cannot be the same,El venedor i el comprador no poden ser iguals,
The shareholder does not belong to this company,L&#39;accionista no pertany a aquesta empresa,
The shares already exist,Les accions ja existeixen,
The shares don't exist with the {0},Les accions no existeixen amb {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","La tasca es va obtenir com a tasca de fons. En cas que hi hagi algun problema sobre el processament en segon pla, el sistema afegirà un comentari sobre l&#39;error d&#39;aquesta reconciliació d&#39;existències i tornarà a la fase d&#39;esborrany.",
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Llavors Tarifes de Preu es filtren sobre la base de client, grup de clients, Territori, Proveïdor, Tipus Proveïdor, Campanya, soci de vendes, etc.",
"There are inconsistencies between the rate, no of shares and the amount calculated","Hi ha incongruències entre la taxa, la de les accions i l&#39;import calculat",
There are more holidays than working days this month.,Hi ha més vacances que els dies de treball aquest mes.,
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.,Pot haver-hi un factor de recopilació múltiple basat en el total gastat. Però el factor de conversió per a la redempció serà sempre igual per a tots els nivells.,
There can only be 1 Account per Company in {0} {1},Només pot haver 1 compte per l&#39;empresa en {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Només pot haver-hi una Enviament Condició de regla amb 0 o valor en blanc de ""valor""",
There is no leave period in between {0} and {1},No hi ha cap període de descans entre {0} i {1},
There is not enough leave balance for Leave Type {0},There is not enough leave balance for Leave Type {0},
There is nothing to edit.,No hi ha res a editar.,
There isn't any item variant for the selected item,No hi ha cap variant d&#39;element per a l&#39;element seleccionat,
"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.","Sembla que hi ha un problema amb la configuració GoCardless del servidor. No us preocupeu, en cas de fracàs, l&#39;import es reemborsarà al vostre compte.",
There were errors creating Course Schedule,S&#39;ha produït un error en crear un calendari de cursos,
There were errors.,Hi han hagut errors.,
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,Aquest article és una plantilla i no es pot utilitzar en les transaccions. Atributs article es copiaran en les variants menys que s'estableix 'No Copy',
This Item is a Variant of {0} (Template).,Aquest article és una variant de {0} (plantilla).,
This Month's Summary,Resum d&#39;aquest mes,
This Week's Summary,Resum de la setmana,
This action will stop future billing. Are you sure you want to cancel this subscription?,Aquesta acció aturarà la facturació futura. Estàs segur que vols cancel·lar aquesta subscripció?,
This covers all scorecards tied to this Setup,Cobreix totes les taules de seguiment vinculades a aquesta configuració,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Aquest document està per sobre del límit de {0} {1} per a l&#39;element {4}. Estàs fent una altra {3} contra el mateix {2}?,
This is a root account and cannot be edited.,Es tracta d'un compte principal i no es pot editar.,
This is a root customer group and cannot be edited.,Es tracta d'un grup de clients de l'arrel i no es pot editar.,
This is a root department and cannot be edited.,Aquest és un departament de l&#39;arrel i no es pot editar.,
This is a root healthcare service unit and cannot be edited.,Aquesta és una unitat de servei d&#39;assistència sanitària racial i no es pot editar.,
This is a root item group and cannot be edited.,This is a root item group and cannot be edited.,
This is a root sales person and cannot be edited.,Es tracta d'una persona de les vendes de l'arrel i no es pot editar.,
This is a root supplier group and cannot be edited.,Aquest és un grup de proveïdors root i no es pot editar.,
This is a root territory and cannot be edited.,This is a root territory and cannot be edited.,
This is an example website auto-generated from ERPNext,Aquest és un lloc web d'exemple d'auto-generada a partir ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Això es basa en els registres contra aquest vehicle. Veure cronologia avall per saber més,
This is based on stock movement. See {0} for details,Això es basa en el moviment de valors. Veure {0} per a més detalls,
This is based on the Time Sheets created against this project,Això es basa en la taula de temps creats en contra d&#39;aquest projecte,
This is based on the attendance of this Employee,Això es basa en la presència d&#39;aquest empleat,
This is based on the attendance of this Student,Això es basa en la presència d&#39;aquest Estudiant,
This is based on transactions against this Customer. See timeline below for details,Això es basa en transaccions en contra d&#39;aquest client. Veure cronologia avall per saber més,
This is based on transactions against this Healthcare Practitioner.,Això es basa en les transaccions contra aquest Practicant de Salut.,
This is based on transactions against this Patient. See timeline below for details,Això es basa en operacions contra aquest pacient. Vegeu la línia de temps a continuació per obtenir detalls,
This is based on transactions against this Sales Person. See timeline below for details,Això es basa en transaccions contra aquesta persona comercial. Vegeu la línia de temps a continuació per obtenir detalls,
This is based on transactions against this Supplier. See timeline below for details,Això es basa en transaccions amb aquest proveïdor. Veure cronologia avall per saber més,
This will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,Això enviarà Slips salarials i crear ingressos de periodificació acumulats. Voleu continuar?,
This {0} conflicts with {1} for {2} {3},Aquest {0} conflictes amb {1} de {2} {3},
Time Sheet for manufacturing.,Full de temps per a la fabricació.,
Time Tracking,temps de seguiment,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","S&#39;ha saltat la ranura de temps, la ranura {0} a {1} es solapa amb la ranura {2} a {3}",
Time slots added,S&#39;han afegit franges horàries,
Time(in mins),Temps (en minuts),
Timer,Temporitzador,
Timer exceeded the given hours.,El temporitzador va superar les hores indicades.,
Timesheet,Horari,
Timesheet for tasks.,Part d&#39;hores per a les tasques.,
Timesheet {0} is already completed or cancelled,Part d&#39;hores {0} ja s&#39;hagi completat o cancel·lat,
Timesheets,taula de temps,
"Timesheets help keep track of time, cost and billing for activites done by your team","Taula de temps ajuden a mantenir la noció del temps, el cost i la facturació d&#39;activitats realitzades pel seu equip",
Titles for print templates e.g. Proforma Invoice.,"Títols per a plantilles d'impressió, per exemple, factura proforma.",
To,A,
To Address 1,Adreça 1,
To Address 2,Adreça 2,
To Bill,Per Bill,
To Date,Fins La Data,
To Date cannot be before From Date,Fins a la data no pot ser anterior a partir de la data,
To Date cannot be less than From Date,La data no pot ser inferior a la data,
To Date must be greater than From Date,Fins a Data ha de ser superior a Des de Data,
To Date should be within the Fiscal Year. Assuming To Date = {0},Per a la data ha d'estar dins de l'any fiscal. Suposant Per Data = {0},
To Datetime,To Datetime,
To Deliver,Per lliurar,
To Deliver and Bill,Per Lliurar i Bill,
To Fiscal Year,A l&#39;any fiscal,
To GSTIN,A GSTIN,
To Party Name,Nom del partit,
To Pin Code,Per fer clic al codi,
To Place,Ficar,
To Receive,Rebre,
To Receive and Bill,Per Rebre i Bill,
To State,Estat,
To Warehouse,Magatzem destí,
To create a Payment Request reference document is required,Per a crear una sol·licitud de pagament es requereix document de referència,
To date can not be equal or less than from date,Fins a la data no pot ser igual o inferior a la data,
To date can not be less than from date,Fins a la data no pot ser inferior a la data,
To date can not greater than employee's relieving date,Fins a la data no pot ser superior a la data d&#39;alliberament de l&#39;empleat,
"To filter based on Party, select Party Type first","Per filtrar la base de la festa, seleccioneu Partit Escrigui primer",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Per obtenir el millor de ERPNext, us recomanem que es prengui un temps i veure aquests vídeos d&#39;ajuda.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Per incloure l'impost a la fila {0} en la tarifa d'article, els impostos a les files {1} també han de ser inclosos",
To make Customer based incentive schemes.,Fer esquemes d&#39;incentius basats en clients.,
"To merge, following properties must be same for both items","Per fusionar, propietats han de ser el mateix per a tots dos articles",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Per no aplicar la Regla de preus en una transacció en particular, totes les normes sobre tarifes aplicables han de ser desactivats.",
"To set this Fiscal Year as Default, click on 'Set as Default'","Per establir aquest any fiscal predeterminat, feu clic a ""Estableix com a predeterminat""",
To view logs of Loyalty Points assigned to a Customer.,Per visualitzar els registres de punts de fidelització assignats a un client.,
To {0},Per {0},
To {0} | {1} {2},Per {0} | {1} {2},
Toggle Filters,Canviar els filtres,
Too many columns. Export the report and print it using a spreadsheet application.,Massa columnes. Exporta l'informe i utilitza una aplicació de full de càlcul.,
Tools,Instruments,
Total (Credit),Total (de crèdit),
Total (Without Tax),Total (sense impostos),
Total Absent,Total absent,
Total Achieved,Total aconseguit,
Total Actual,Actual total,
Total Allocated Leaves,Total Allocated Leaves,
Total Amount,Quantitat total,
Total Amount Credited,Import total acreditat,
Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total d&#39;comissions aplicables en la compra Taula de rebuts Els articles han de ser iguals que les taxes totals i càrrecs,
Total Budget,Pressupost total,
Total Collected: {0},Total recopilat: {0},
Total Commission,Total Comissió,
Total Contribution Amount: {0},Import total de la contribució: {0},
Total Credit/ Debit Amount should be same as linked Journal Entry,L&#39;import total de crèdit / de deute hauria de ser igual que l&#39;entrada de diari enllaçada,
Total Debit must be equal to Total Credit. The difference is {0},Dèbit total ha de ser igual al total de crèdit. La diferència és {0},
Total Deduction,Deducció total,
Total Invoiced Amount,Suma total facturada,
Total Leaves,Fulles totals,
Total Order Considered,Total de la comanda Considerat,
Total Order Value,Valor total de la comanda,
Total Outgoing,Sortint total,
Total Outstanding,Total pendent,
Total Outstanding Amount,Total Monto Pendent,
Total Outstanding: {0},Total pendent: {0},
Total Paid Amount,Suma total de pagament,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,L&#39;import total del pagament en el calendari de pagaments ha de ser igual a Grand / Rounded Total,
Total Payments,Total de pagaments,
Total Present,Present total,
Total Qty,Quantitat total,
Total Quantity,Quantitat total,
Total Revenue,Ingressos totals,
Total Student,Total d&#39;estudiants,
Total Target,Totals de l'objectiu,
Total Tax,Impost total,
Total Taxable Amount,Import total impost,
Total Taxable Value,Valor total imposable,
Total Unpaid: {0},Total no pagat: {0},
Total Variance,Variància total,
Total Weightage of all Assessment Criteria must be 100%,Coeficient de ponderació total de tots els criteris d&#39;avaluació ha de ser del 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),avanç total ({0}) contra l&#39;Ordre {1} no pot ser major que el total general ({2}),
Total advance amount cannot be greater than total claimed amount,L&#39;import total anticipat no pot ser superior a l&#39;import total reclamat,
Total advance amount cannot be greater than total sanctioned amount,L&#39;import anticipat total no pot ser superior al total de la quantitat sancionada,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Les fulles assignades totals són més dies que l&#39;assignació màxima de {0} leave type per a l&#39;empleat {1} en el període,
Total allocated leaves are more than days in the period,Total de fulles assignats més de dia en el període,
Total allocated percentage for sales team should be 100,El Percentatge del total assignat per a l'equip de vendes ha de ser de 100,
Total cannot be zero,El total no pot ser zero,
Total contribution percentage should be equal to 100,El percentatge total de contribució hauria de ser igual a 100,
Total flexible benefit component amount {0} should not be less than max benefits {1},Import total del component de benefici flexible {0} no ha de ser inferior al màxim de beneficis {1},
Total hours: {0},Total hores: {0},
Total leaves allocated is mandatory for Leave Type {0},Les fulles totals assignades són obligatòries per al tipus Leave {0},
Total working hours should not be greater than max working hours {0},Total d&#39;hores de treball no han de ser més grans que les hores de treball max {0},
Total {0} ({1}),Total {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Total d&#39;{0} per a tots els elements és zero, pot ser que vostè ha de canviar a &quot;Distribuir els càrrecs basats en &#39;",
Total(Amt),Total (Amt),
Total(Qty),Total (Quantitat),
Traceability,Traçabilitat,
Traceback,Rastrejar,
Track Leads by Lead Source.,Seguiment de conductes per Lead Source.,
Training,Formació,
Training Event,Esdeveniment de Capacitació,
Training Events,Esdeveniments de formació,
Training Feedback,Formació de vots,
Training Result,formació Resultat,
Transaction,Transacció,
Transaction Date,Data de Transacció,
Transaction Type,Tipus de transacció,
Transaction currency must be same as Payment Gateway currency,Moneda de la transacció ha de ser la mateixa que la moneda de pagament de porta d&#39;enllaç,
Transaction not allowed against stopped Work Order {0},No s&#39;ha permès la transacció contra l&#39;ordre de treball aturat {0},
Transaction reference no {0} dated {1},Referència de la transacció no {0} {1} datat,
Transactions,Transaccions,
Transactions can only be deleted by the creator of the Company,Les transaccions només poden ser esborrats pel creador de la Companyia,
Transfer,Transferència,
Transfer Material,Transferir material,
Transfer Type,Tipus de transferència,
Transfer an asset from one warehouse to another,Transferir un actiu d&#39;un magatzem a un altre,
Transfered,Transferit,
Transferred Quantity,Quantitat transferida,
Transport Receipt Date,Data de recepció del transport,
Transport Receipt No,Recepció del transport no,
Transportation,Transports,
Transporter ID,Identificador del transportista,
Transporter Name,Nom Transportista,
Travel,Viatges,
Travel Expenses,Despeses de viatge,
Tree Type,Tipus Arbre,
Tree of Bill of Materials,Arbre de la llista de materials,
Tree of Item Groups.,Arbre dels grups d'articles.,
Tree of Procedures,Arbre de procediments,
Tree of Quality Procedures.,Arbre de procediments de qualitat.,
Tree of financial Cost Centers.,Arbre de Centres de costos financers.,
Tree of financial accounts.,Arbre dels comptes financers.,
Treshold {0}% appears more than once,Llindar {0}% apareix més d&#39;una vegada,
Trial Period End Date Cannot be before Trial Period Start Date,Període de prova Data de finalització No pot ser abans de la data de començament del període de prova,
Trialling,Trialling,
Type of Business,Tipus de negoci,
Types of activities for Time Logs,Tipus d&#39;activitats per als registres de temps,
UOM,UOM,
UOM Conversion factor is required in row {0},Es requereix el factor de conversió de la UOM a la fila {0},
UOM coversion factor required for UOM: {0} in Item: {1},Es necessita un factor de coversió per la UDM: {0} per l'article: {1},
URL,URL,
Unable to find DocType {0},No es pot trobar DocType {0},
Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"No s&#39;ha pogut trobar el tipus de canvi per a {0} a {1} per a la data clau {2}. Si us plau, crear un registre de canvi manual",
Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,No s&#39;ha pogut trobar la puntuació a partir de {0}. Has de tenir puntuacions de peu que abasten 0 a 100,
Unable to find variable: ,No es pot trobar la variable:,
Unblock Invoice,Desbloqueja la factura,
Uncheck all,desactivar tot,
Unclosed Fiscal Years Profit / Loss (Credit),Sense tancar els anys fiscals guanys / pèrdues (de crèdit),
Unit,Unitat,
Unit of Measure,Unitat de mesura,
Unit of Measure {0} has been entered more than once in Conversion Factor Table,La unitat de mesura {0} s'ha introduït més d'una vegada a la taula de valors de conversió,
Unknown,Desconegut,
Unpaid,No pagat,
Unsecured Loans,Préstecs sense garantia,
Unsubscribe from this Email Digest,Donar-se de baixa d&#39;aquest butlletí per correu electrònic,
Unsubscribed,No subscriure,
Until,Fins,
Unverified Webhook Data,Dades Webhook no verificades,
Update Account Name / Number,Actualitza el nom / número del compte,
Update Account Number / Name,Actualitza el número / nom del compte,
Update Cost,Actualització de Costos,
Update Items,Actualitza elements,
Update Print Format,Format d&#39;impressió d&#39;actualització,
Update Response,Actualitza la resposta,
Update bank payment dates with journals.,Actualització de les dates de pagament dels bancs amb les revistes.,
Update in progress. It might take a while.,Actualització en progrés. Pot trigar un temps.,
Update rate as per last purchase,Taxa d&#39;actualització segons l&#39;última compra,
Update stock must be enable for the purchase invoice {0},L&#39;actualització de valors ha de ser habilitada per a la factura de compra {0},
Updating Variants...,S&#39;estan actualitzant les variants ...,
Upload your letter head and logo. (you can edit them later).,Puja el teu cap lletra i logotip. (Pots editar més tard).,
Upper Income,Ingrés Alt,
Use Sandbox,ús Sandbox,
Used Leaves,Fulles utilitzades,
User,Usuari,
User ID,ID d'usuari,
User ID not set for Employee {0},ID d'usuari no entrat per l'Empleat {0},
User Remark,Observació de l'usuari,
User has not applied rule on the invoice {0},L&#39;usuari no ha aplicat regla a la factura {0},
User {0} already exists,L&#39;usuari {0} ja existeix,
User {0} created,S&#39;ha creat l&#39;usuari {0},
User {0} does not exist,L'usuari {0} no existeix,
User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,L&#39;usuari {0} no té cap perfil de POS per defecte. Comprova la configuració predeterminada a la fila {1} per a aquest usuari.,
User {0} is already assigned to Employee {1},L'usuari {0} ja està assignat a l'Empleat {1},
User {0} is already assigned to Healthcare Practitioner {1},L&#39;usuari {0} ja està assignat a Healthcare Practitioner {1},
Users,Usuaris,
Utility Expenses,Despeses de serveis públics,
Valid From Date must be lesser than Valid Upto Date.,Vàlid des de la data ha de ser inferior a Vàlid fins a la data.,
Valid Till,Vàlid fins a,
Valid from and valid upto fields are mandatory for the cumulative,"Per als acumulatius, els camps vàlids i vàlids no són obligatoris",
Valid from date must be less than valid upto date,La data vàlida ha de ser inferior a la data vàlida fins a la data,
Valid till date cannot be before transaction date,Vàlid fins a la data no pot ser abans de la data de la transacció,
Validity,Validesa,
Validity period of this quotation has ended.,El període de validesa d&#39;aquesta cita ha finalitzat.,
Valuation Rate,Tarifa de Valoració,
Valuation Rate is mandatory if Opening Stock entered,Valoració dels tipus és obligatòria si l&#39;obertura Stock entrar,
Valuation type charges can not marked as Inclusive,Càrrecs de tipus de valoració no poden marcat com Inclòs,
Value Or Qty,Valor o quantitat,
Value Proposition,Proposició de valor,
Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Valor de l&#39;atribut {0} ha d&#39;estar dins del rang de {1} a {2} en els increments de {3} per a l&#39;article {4},
Value missing,Valor que falta,
Value must be between {0} and {1},El valor ha d&#39;estar entre {0} i {1},
"Values of exempt, nil rated and non-GST inward supplies","Valors dels subministraments interns exempts, no classificats i no GST",
Variable,Variable,
Variance,Desacord,
Variance ({}),Desacord ({}),
Variant,Variant,
Variant Attributes,Atributs Variant,
Variant Based On cannot be changed,La variant basada en no es pot canviar,
Variant Details Report,Informe de detalls de variants,
Variant creation has been queued.,S&#39;ha creat la creació de variants.,
Vehicle Expenses,Les despeses de vehicles,
Vehicle No,Vehicle n,
Vehicle Type,Tipus de vehicle,
Vehicle/Bus Number,Vehicle / Nombre Bus,
Venture Capital,Venture Capital,
View Chart of Accounts,Veure el gràfic de comptes,
View Fees Records,Veure registres de tarifes,
View Form,Formulari de visualització,
View Lab Tests,Veure proves de laboratori,
View Leads,Veure ofertes,
View Ledger,Veure Ledger,
View Now,Veure ara,
View a list of all the help videos,Veure una llista de tots els vídeos d&#39;ajuda,
View in Cart,veure Cistella,
Visit report for maintenance call.,Visita informe de presa de manteniment.,
Visit the forums,Visiteu els fòrums,
Vital Signs,Signes vitals,
Volunteer,Voluntari,
Volunteer Type information.,Informació del tipus de voluntariat.,
Volunteer information.,Informació voluntària.,
Voucher #,Comprovant #,
Voucher No,Número de comprovant,
Voucher Type,Tipus de Vals,
WIP Warehouse,WIP Magatzem,
Walk In,Walk In,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,El Magatzem no es pot eliminar perquè hi ha entrades al llibre major d'existències d'aquest magatzem.,
Warehouse cannot be changed for Serial No.,Magatzem no pot ser canviat pel Nº de Sèrie,
Warehouse is mandatory,Magatzem és obligatori,
Warehouse is mandatory for stock Item {0} in row {1},El magatzem és obligatòria per l'article d'estoc {0} a la fila {1},
Warehouse not found in the system,Magatzem no trobat al sistema,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Es necessita un magatzem a la fila No {0}, definiu el magatzem predeterminat per a l&#39;element {1} per a l&#39;empresa {2}",
Warehouse required for stock Item {0},Magatzem necessari per a l'article d'estoc {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},Magatzem {0} no es pot eliminar com existeix quantitat d'article {1},
Warehouse {0} does not belong to company {1},Magatzem {0} no pertany a l'empresa {1},
Warehouse {0} does not exist,El magatzem {0} no existeix,
"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","Magatzem {0} no està vinculada a cap compte, si us plau esmentar el compte en el registre de magatzem o un conjunt predeterminat compte d&#39;inventari en companyia {1}.",
Warehouses with child nodes cannot be converted to ledger,Magatzems amb nodes secundaris no poden ser convertits en llibre major,
Warehouses with existing transaction can not be converted to group.,Complexos de transacció existents no poden ser convertits en grup.,
Warehouses with existing transaction can not be converted to ledger.,Complexos de dipòsit de transaccions existents no es poden convertir en el llibre major.,
Warning,Advertència,
Warning: Another {0} # {1} exists against stock entry {2},Hi ha un altre {0} # {1} contra l&#39;entrada de població {2}: Són els,
Warning: Invalid SSL certificate on attachment {0},Avís: certificat SSL no vàlid en la inclinació {0},
Warning: Invalid attachment {0},Advertència: no vàlida Adjunt {0},
Warning: Leave application contains following block dates,Advertència: Deixa aplicació conté dates bloc,
Warning: Material Requested Qty is less than Minimum Order Qty,Advertència: La quantitat de Material sol·licitada és inferior a la Quantitat mínima,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Són els Vendes Sol·licitar {0} ja existeix en contra del client Ordre de Compra {1},
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Advertència: El sistema no comprovarà sobrefacturació si la quantitat de l'article {0} a {1} és zero,
Warranty,Garantia,
Warranty Claim,Reclamació de la Garantia,
Warranty Claim against Serial No.,Reclamació de garantia davant el No. de sèrie,
Website,Lloc web,
Website Image should be a public file or website URL,Lloc web imatge ha de ser un arxiu públic o URL del lloc web,
Website Image {0} attached to Item {1} cannot be found,Lloc web Imatge {0} unit a l&#39;article {1} no es pot trobar,
Website Listing,Llistat de llocs web,
Website Manager,Gestor de la Pàgina web,
Website Settings,Configuració del lloc web,
Wednesday,Dimecres,
Week,setmana,
Weekdays,Dies laborables,
Weekly,Setmanal,
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","S'esmenta Pes, \n Si us plau, ""Pes UOM"" massa",
Welcome email sent,Correu electrònic de benvinguda enviat,
Welcome to ERPNext,Benvingut a ERPNext,
What do you need help with?,En què necessites ajuda?,
What does it do?,Què fa?,
Where manufacturing operations are carried.,On es realitzen les operacions de fabricació.,
White,Blanc,
Wire Transfer,Transferència bancària,
WooCommerce Products,Productes WooCommerce,
Work In Progress,Treball en curs,
Work Order,Ordre de treball,
Work Order already created for all items with BOM,Ordre de treball ja creada per a tots els articles amb BOM,
Work Order cannot be raised against a Item Template,L&#39;Ordre de treball no es pot plantar contra una plantilla d&#39;elements,
Work Order has been {0},L&#39;ordre de treball ha estat {0},
Work Order not created,No s&#39;ha creat l&#39;ordre de treball,
Work Order {0} must be cancelled before cancelling this Sales Order,L&#39;ordre de treball {0} s&#39;ha de cancel·lar abans de cancel·lar aquesta comanda de venda,
Work Order {0} must be submitted,L&#39;ordre de treball {0} s&#39;ha de presentar,
Work Orders Created: {0},Ordres de treball creades: {0},
Work Summary for {0},Resum de treball per a {0},
Work-in-Progress Warehouse is required before Submit,Es requereix Magatzem de treballs en procés abans de Presentar,
Workflow,Workflow,
Working,Treballant,
Working Hours,Hores de Treball,
Workstation,Lloc de treball,
Workstation is closed on the following dates as per Holiday List: {0},Estació de treball està tancada en les següents dates segons Llista de vacances: {0},
Wrapping up,Embolcall,
Wrong Password,Contrasenya incorrecta,
Year start date or end date is overlapping with {0}. To avoid please set company,"Any d'inici o any finalització es solapa amb {0}. Per evitar, configuri l'empresa",
You are not authorized to add or update entries before {0},No té permisos per afegir o actualitzar les entrades abans de {0},
You are not authorized to approve leaves on Block Dates,No està autoritzat per aprovar els fulls de bloquejar les dates,
You are not authorized to set Frozen value,No estàs autoritzat per establir el valor bloquejat,
You are not present all day(s) between compensatory leave request days,No estàs present durant els dies o dies entre els dies de sol·licitud de baixa compensatòria,
You can not change rate if BOM mentioned agianst any item,No es pot canviar la tarifa si el BOM va cap a un article,
You can not enter current voucher in 'Against Journal Entry' column,Vostè no pot entrar bo actual a 'Contra entrada de diari' columna,
You can only have Plans with the same billing cycle in a Subscription,Només podeu tenir plans amb el mateix cicle de facturació en una subscripció,
You can only redeem max {0} points in this order.,Només podeu bescanviar màxims {0} punts en aquest ordre.,
You can only renew if your membership expires within 30 days,Només podeu renovar si la vostra pertinença caduca en un termini de 30 dies,
You can only select a maximum of one option from the list of check boxes.,Només podeu seleccionar un màxim d&#39;una opció a la llista de caselles de verificació.,
You can only submit Leave Encashment for a valid encashment amount,Només podeu enviar Leave Encashment per una quantitat de pagaments vàlida,
You can't redeem Loyalty Points having more value than the Grand Total.,No es poden bescanviar els punts de fidelitat amb més valor que el Gran Total.,
You cannot credit and debit same account at the same time,No es pot configurar el mateix compte com crèdit i dèbit a la vegada,
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,No es pot eliminar l&#39;any fiscal {0}. Any fiscal {0} s&#39;estableix per defecte en la configuració global,
You cannot delete Project Type 'External',No es pot eliminar el tipus de projecte &#39;Extern&#39;,
You cannot edit root node.,No podeu editar el node arrel.,
You cannot restart a Subscription that is not cancelled.,No podeu reiniciar una subscripció que no es cancel·la.,
You don't have enought Loyalty Points to redeem,No teniu punts de fidelització previstos per bescanviar,
You have already assessed for the assessment criteria {}.,Vostè ja ha avaluat pels criteris d&#39;avaluació {}.,
You have already selected items from {0} {1},Ja ha seleccionat articles de {0} {1},
You have been invited to collaborate on the project: {0},Se li ha convidat a col·laborar en el projecte: {0},
You have entered duplicate items. Please rectify and try again.,"Has introduït articles duplicats. Si us plau, rectifica-ho i torna a intentar-ho.",
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Heu de ser un usuari diferent de l&#39;administrador amb les funcions Administrador del sistema i l&#39;Administrador d&#39;elements per registrar-se a Marketplace.,
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Heu de ser un usuari amb les funcions del Gestor del sistema i del Gestor d&#39;elements per afegir usuaris al Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Heu de ser un usuari amb les funcions d&#39;Administrador del sistema i d&#39;Administrador d&#39;elements per registrar-se a Marketplace.,
You need to be logged in to access this page,Ha d&#39;estar registrat per accedir a aquesta pàgina,
You need to enable Shopping Cart,Has d'habilitar el carro de la compra,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Perdin registres de factures generades prèviament. Esteu segur que voleu reiniciar aquesta subscripció?,
Your Organization,la seva Organització,
Your cart is Empty,El teu carro està buit,
Your email address...,La teva adreça de correu electrònic...,
Your order is out for delivery!,La teva comanda no està disponible.,
Your tickets,Les teves entrades,
ZIP Code,Codi ZIP,
[Error],[Error],
[{0}](#Form/Item/{0}) is out of stock,[{0}] (#Form/Item/{0}) està esgotat,
`Freeze Stocks Older Than` should be smaller than %d days.,`Bloqueja els estocs més antics que' ha de ser menor de %d dies.,
based_on,basat en,
cannot be greater than 100,no pot ser major que 100,
disabled user,desactivat usuari,
"e.g. ""Build tools for builders""","per exemple ""Construir eines per als constructors """,
"e.g. ""Primary School"" or ""University""","per exemple, &quot;escola primària&quot; o &quot;universitat&quot;",
"e.g. Bank, Cash, Credit Card","per exemple bancària, Efectiu, Targeta de crèdit",
hidden,Ocult,
modified,modificat,
old_parent,old_parent,
on,En,
{0} '{1}' is disabled,{0} '{1}' es desactiva,
{0} '{1}' not in Fiscal Year {2},{0} '{1}' no es troba en l'exercici fiscal {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) no pot ser major que la quantitat planificada  ({2}) a l'Ordre de Treball {3},
{0} - {1} is inactive student,{0} - {1} és estudiant inactiu,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} no està inscrit en el Lot {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} no està inscrit en el curs {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} El Pressupost per al Compte {1} contra {2} {3} és {4}. Es superarà per {5},
{0} Digest,{0} Digest,
{0} Request for {1},{0} Sol·licitud de {1},
{0} Result submittted,{0} Resultat enviat,
{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} Números de sèrie necessaris per Punt {1}. Vostè ha proporcionat {2}.,
{0} Student Groups created.,{0} Grups d&#39;estudiants creats.,
{0} Students have been enrolled,{0} Els estudiants han estat inscrits,
{0} against Bill {1} dated {2},{0} contra Factura amb data {1} {2},
{0} against Purchase Order {1},{0} contra l'Ordre de Compra {1},
{0} against Sales Invoice {1},{0} contra factura Vendes {1},
{0} against Sales Order {1},{0} en contra d'ordres de venda {1},
{0} already allocated for Employee {1} for period {2} to {3},{0} ja assignat a empleat {1} per al període {2} a {3},
{0} applicable after {1} working days,{0} aplicable després de {1} dies hàbils,
{0} asset cannot be transferred,{0} actiu no es pot transferir,
{0} can not be negative,{0} no pot ser negatiu,
{0} created,{0} creat,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.","{0} té actualment un {1} Quadre de comandament del proveïdor en peu, i les ordres de compra d&#39;aquest proveïdor s&#39;han de fer amb precaució.",
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.",{0} té actualment un {1} Quadre de comandament del proveïdor en posició i les RFQs a aquest proveïdor s&#39;han de fer amb precaució.,
{0} does not belong to Company {1},{0} no pertany a l'empresa {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} no té un horari de pràctica de la salut. Afegiu-lo al mestre de pràctica mèdica,
{0} entered twice in Item Tax,{0} entrat dues vegades en l'Impost d'article,
{0} for {1},{0} de {1},
{0} has been submitted successfully,{0} s&#39;ha enviat correctament,
{0} has fee validity till {1},{0} té validesa de tarifa fins a {1},
{0} hours,{0} hores,
{0} in row {1},{0} a la fila {1},
{0} is blocked so this transaction cannot proceed,{0} està bloquejat perquè aquesta transacció no pugui continuar,
{0} is mandatory,{0} és obligatori,
{0} is mandatory for Item {1},{0} és obligatori per l'article {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} és obligatori. És posiible que el registre de Canvi de Divises no s'ha creat per al canvi de {1} a {2}.,
{0} is not a stock Item,{0} no és un Article d'estoc,
{0} is not a valid Batch Number for Item {1},El Número de Lot {0} de l'Article {1} no és vàlid,
{0} is not added in the table,{0} no s&#39;afegeix a la taula,
{0} is not in Optional Holiday List,{0} no està a la llista de vacances opcional,
{0} is not in a valid Payroll Period,{0} no està en un període de nòmina vàlid,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,"{0} és ara l'Any Fiscal.oer defecte Si us plau, actualitzi el seu navegador perquè el canvi tingui efecte.",
{0} is on hold till {1},{0} està en espera fins a {1},
{0} item found.,S&#39;ha trobat {0} element.,
{0} items found.,S&#39;han trobat {0} articles.,
{0} items in progress,{0} articles en procés,
{0} items produced,{0} articles produïts,
{0} must appear only once,{0} ha d'aparèixer només una vegada,
{0} must be negative in return document,{0} ha de ser negatiu en el document de devolució,
{0} must be submitted,{0} s&#39;ha de presentar,
{0} not allowed to transact with {1}. Please change the Company.,{0} no està permès transaccionar amb {1}. Canvieu la companyia.,
{0} not found for item {1},{0} no s&#39;ha trobat per a l&#39;element {1},
{0} parameter is invalid,El paràmetre {0} no és vàlid,
{0} payment entries can not be filtered by {1},{0} entrades de pagament no es poden filtrar per {1},
{0} should be a value between 0 and 100,{0} ha de ser un valor entre 0 i 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} unitats de [{1}] (# Formulari / article / {1}) que es troba en [{2}] (# Formulari / Magatzem / {2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} unitats de {1} necessària en {2} sobre {3} {4} {5} per completar aquesta transacció.,
{0} units of {1} needed in {2} to complete this transaction.,{0} unitats de {1} necessària en {2} per completar aquesta transacció.,
{0} valid serial nos for Item {1},{0} amb números de sèrie vàlids per Punt {1},
{0} variants created.,S&#39;han creat {0} variants.,
{0} {1} created,{0} {1} creat,
{0} {1} does not exist,{0} {1} no existeix,
{0} {1} has been modified. Please refresh.,"{0} {1} ha estat modificat. Si us plau, actualitzia",
{0} {1} has not been submitted so the action cannot be completed,"{0} {1} no s'ha presentat, de manera que l'acció no es pot completar",
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} està associat a {2}, però el compte de partit és {3}",
{0} {1} is cancelled or closed,{0} {1} està cancel·lat o tancat,
{0} {1} is cancelled or stopped,{0} {1} està cancel·lat o parat,
{0} {1} is cancelled so the action cannot be completed,"{0} {1} està cancel·lat, no es pot completar l'acció",
{0} {1} is closed,{0} {1} està tancat,
{0} {1} is disabled,{0} {1} està desactivat,
{0} {1} is frozen,{0} {1} està congelat,
{0} {1} is fully billed,{0} {1} està totalment facturat,
{0} {1} is not active,{0} {1} no està actiu,
{0} {1} is not associated with {2} {3},{0} {1} no està associat amb {2} {3},
{0} {1} is not present in the parent company,{0} {1} no està present a l&#39;empresa matriu,
{0} {1} is not submitted,{0} {1} no está presentat,
{0} {1} is {2},{0} {1} és {2},
{0} {1} must be submitted,{0} {1} s'ha de Presentar,
{0} {1} not in any active Fiscal Year.,{0} {1} no està en cap any fiscal actiu.,
{0} {1} status is {2},L'estat {0} {1} està {2},
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,{0} {1}: &quot;Pèrdues i Guanys&quot; compte de tipus {2} no es permet l&#39;entrada Entrada d&#39;obertura,
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: El compte {2} no pertany a l'Empresa {3},
{0} {1}: Account {2} is inactive,{0} {1}: el compte {2} està inactiu,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: L'Entrada de Comptabilitat per a {2} només es pot usar amb la moneda: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Centre de Cost és obligatori per l'article {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}: es requereix un Centre de Cost per al compte 'Pèrdues i Guanys' {2}. Si us plau, estableix un Centre de Cost per defecte per a la l'Empresa.",
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: El Centre de Cost {2} no pertany a l'Empresa {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: Es requereix al client contra el compte per cobrar {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: Es requereix un import de dèbit o crèdit per {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: es requereix Proveïdor contra el compte per pagar {2},
{0}% Billed,{0}% Anunciat,
{0}% Delivered,{0}% Lliurat,
"{0}: Employee email not found, hence email not sent","{0}: No s&#39;ha trobat el correu electrònic dels empleats, per tant, no correu electrònic enviat",
{0}: From {0} of type {1},{0}: Des {0} de tipus {1},
{0}: From {1},{0}: Des {1},
{0}: {1} does not exists,{0}: {1} no existeix,
{0}: {1} not found in Invoice Details table,{0}: {1} no es troba a Detalls de la factura taula,
{} of {},{} de {},
Assigned To,Assignat a,
Chat,Chat,
Completed By,Completat amb,
Conditions,Condicions,
County,comtat,
Day of Week,Dia de la setmana,
"Dear System Manager,","Benvolgut Administrador del sistema,",
Default Value,Valor per defecte,
Email Group,Grup correu electrònic,
Email Settings,Configuració del correu electrònic,
Email not sent to {0} (unsubscribed / disabled),El correu electrònic no enviat a {0} (donat de baixa / desactivat),
Error Message,Missatge d&#39;error,
Fieldtype,FieldType,
Help Articles,Ajuda a les persones,
ID,identificació,
Images,imatges,
Import,Importació,
Language,Idioma,
Likes,Gustos,
Merge with existing,Combinar amb existent,
Office,Oficina,
Orientation,Orientació,
Parent,Pare,
Passive,Passiu,
Payment Failed,Error en el pagament,
Percent,Per cent,
Permanent,permanent,
Personal,Personal,
Plant,Planta,
Post,Post,
Postal,Postal,
Postal Code,Codi Postal,
Previous,Anterior,
Provider,Proveïdor,
Read Only,Només lectura,
Recipient,Receptor,
Reviews,Ressenyes,
Sender,Remitent,
Shop,Botiga,
Sign Up,Registra&#39;t,
Subsidiary,Filial,
There is some problem with the file url: {0},Hi ha una mica de problema amb la url de l&#39;arxiu: {0},
There were errors while sending email. Please try again.,"Hi ha hagut errors a l'enviar el correu electrònic. Si us plau, torna a intentar-ho.",
Values Changed,Els valors modificats,
or,o,
Ageing Range 4,Range 4 de la criança,
Allocated amount cannot be greater than unadjusted amount,La quantitat assignada no pot ser superior a la quantitat no ajustada,
Allocated amount cannot be negative,L’import assignat no pot ser negatiu,
"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","El compte de diferència ha de ser un compte de tipus Actiu / Passiu, ja que aquesta entrada en accions és una entrada d&#39;obertura",
Error in some rows,Error en algunes files,
Import Successful,Importa èxit,
Please save first,Desa primer,
Price not found for item {0} in price list {1},Preu que no s&#39;ha trobat per a l&#39;article {0} a la llista de preus {1},
Warehouse Type,Tipus de magatzem,
'Date' is required,És necessària la «data»,
Benefit,Benefici,
Budgets,Pressupostos,
Bundle Qty,Qty del paquet,
Company GSTIN,companyia GSTIN,
Company field is required,El camp de l&#39;empresa és obligatori,
Creating Dimensions...,Creació de dimensions ...,
Duplicate entry against the item code {0} and manufacturer {1},Duplicar l&#39;entrada amb el codi de l&#39;article {0} i el fabricant {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,GSTIN no vàlid. L&#39;entrada que heu introduït no coincideix amb el format GSTIN per a titulars d&#39;UIN o proveïdors de serveis OIDAR no residents,
Invoice Grand Total,Factura total total,
Last carbon check date cannot be a future date,L&#39;última data de revisió del carboni no pot ser una data futura,
Make Stock Entry,Fes una entrada en accions,
Quality Feedback,Feedback de qualitat,
Quality Feedback Template,Plantilla de comentaris de qualitat,
Rules for applying different promotional schemes.,Normes per aplicar diferents règims promocionals.,
Shift,Majúscules,
Show {0},Mostra {0},
"Special Characters except ""-"", ""#"", ""."", ""/"", ""{"" and ""}"" not allowed in naming series","Caràcters especials, excepte &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{&quot; I &quot;}&quot; no estan permesos en nomenar sèries",
Target Details,Detalls de l&#39;objectiu,
{0} already has a Parent Procedure {1}.,{0} ja té un procediment progenitor {1}.,
API,API,
Annual,Anual,
Approved,Aprovat,
Change,Canvi,
Contact Email,Correu electrònic de contacte,
Export Type,Tipus d&#39;exportació,
From Date,Des de la data,
Group By,Agrupar per,
Importing {0} of {1},Important {0} de {1},
Invalid URL,URL no vàlid,
Landscape,Paisatge,
Last Sync On,Última sincronització activada,
Naming Series,Sèrie de nomenclatura,
No data to export,No hi ha dades a exportar,
Portrait,Retrat,
Print Heading,Imprimir Capçalera,
Scheduler Inactive,Planificador inactiu,
Scheduler is inactive. Cannot import data.,El planificador està inactiu. No es poden importar dades.,
Show Document,Mostra el document,
Show Traceback,Mostra el seguiment,
Video,Vídeo,
Webhook Secret,Secret del webhook,
% Of Grand Total,% Del total total,
'employee_field_value' and 'timestamp' are required.,Es requereix &#39;empleo_field_valu&#39; i &#39;marca de temps&#39;.,
<b>Company</b> is a mandatory filter.,<b>L’empresa</b> és un filtre obligatori.,
<b>From Date</b> is a mandatory filter.,<b>De Data</b> és un filtre obligatori.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>From Time</b> no pot ser més tard de <b>To Time</b> per {0},
<b>To Date</b> is a mandatory filter.,<b>Fins a la data</b> és un filtre obligatori.,
A new appointment has been created for you with {0},S&#39;ha creat una cita nova amb {0},
Account Value,Valor del compte,
Account is mandatory to get payment entries,El compte és obligatori per obtenir entrades de pagament,
Account is not set for the dashboard chart {0},El compte no està definit per al gràfic de tauler {0},
Account {0} does not belong to company {1},El compte {0} no pertany a l'empresa {1},
Account {0} does not exists in the dashboard chart {1},El compte {0} no existeix al gràfic de tauler {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Compte: <b>{0}</b> és un treball capital en curs i no pot ser actualitzat per Journal Entry,
Account: {0} is not permitted under Payment Entry,Compte: {0} no està permès a l&#39;entrada de pagament,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,La dimensió comptable <b>{0}</b> és necessària per al compte de &quot;Balanç&quot; {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,La dimensió comptable <b>{0}</b> és necessària per al compte &quot;pèrdues i guanys&quot; {1}.,
Accounting Masters,Màsters Comptables,
Accounting Period overlaps with {0},El període de comptabilitat es superposa amb {0},
Activity,Activitat,
Add / Manage Email Accounts.,Afegir / Administrar comptes de correu electrònic.,
Add Child,Afegir Nen,
Add Loan Security,Afegir seguretat de préstec,
Add Multiple,Afegir múltiple,
Add Participants,Afegeix participants,
Add to Featured Item,Afegeix a l&#39;element destacat,
Add your review,Afegiu la vostra ressenya,
Add/Edit Coupon Conditions,Afegiu / editeu les condicions del cupó,
Added to Featured Items,Afegit a articles destacats,
Added {0} ({1}),Afegit {0} ({1}),
Address Line 1,Adreça Línia 1,
Addresses,Direccions,
Admission End Date should be greater than Admission Start Date.,La data de finalització de l’entrada ha de ser superior a la data d’inici d’entrada.,
Against Loan,Contra el préstec,
Against Loan:,Contra el préstec:,
All,Tots,
All bank transactions have been created,S&#39;han creat totes les transaccions bancàries,
All the depreciations has been booked,S&#39;han reservat totes les depreciacions,
Allocation Expired!,Assignació caducada!,
Allow Resetting Service Level Agreement from Support Settings.,Permet restablir l&#39;Acord de nivell de servei des de la configuració de suport.,
Amount of {0} is required for Loan closure,Es necessita una quantitat de {0} per al tancament del préstec,
Amount paid cannot be zero,La quantitat pagada no pot ser zero,
Applied Coupon Code,Codi de cupó aplicat,
Apply Coupon Code,Apliqueu el codi de cupó,
Appointment Booking,Reserva de cites,
"As there are existing transactions against item {0}, you can not change the value of {1}","Com que hi ha transaccions existents contra l&#39;element {0}, no es pot canviar el valor de {1}",
Asset Id,Identificador de l’actiu,
Asset Value,Valor d&#39;actiu,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,L&#39;ajust de valor d&#39;actiu no es pot publicar abans de la data de compra de l&#39;actiu <b>{0}</b> .,
Asset {0} does not belongs to the custodian {1},L&#39;actiu {0} no pertany al client {1},
Asset {0} does not belongs to the location {1},L&#39;actiu {0} no pertany a la ubicació {1},
At least one of the Applicable Modules should be selected,Cal seleccionar almenys un dels mòduls aplicables,
Atleast one asset has to be selected.,S&#39;ha de seleccionar com a mínim un actiu.,
Attendance Marked,Assistència marcada,
Attendance has been marked as per employee check-ins,L&#39;assistència s&#39;ha marcat segons els check-in dels empleats,
Authentication Failed,L&#39;autenticació ha fallat,
Automatic Reconciliation,Reconciliació automàtica,
Available For Use Date,Disponible per a la data d’ús,
Available Stock,Estoc disponible,
"Available quantity is {0}, you need {1}","La quantitat disponible és {0}, necessiteu {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,Eina de comparació de BOM,
BOM recursion: {0} cannot be child of {1},Recursió de BOM: {0} no pot ser fill de {1},
BOM recursion: {0} cannot be parent or child of {1},Recurs de BOM: {0} no pot ser pare o fill de {1},
Back to Home,De tornada a casa,
Back to Messages,Torna als missatges,
Bank Data mapper doesn't exist,El mapper de dades bancari no existeix,
Bank Details,Detalls del banc,
Bank account '{0}' has been synchronized,El compte bancari &quot;{0}&quot; s&#39;ha sincronitzat,
Bank account {0} already exists and could not be created again,El compte bancari {0} ja existeix i no es pot tornar a crear,
Bank accounts added,S&#39;han afegit comptes bancaris,
Batch no is required for batched item {0},No es requereix cap lot per a l&#39;element lots {0},
Billing Date,Data de facturació,
Billing Interval Count cannot be less than 1,El recompte d’interval de facturació no pot ser inferior a 1,
Blue,Blau,
Book,llibre,
Book Appointment,Cita del llibre,
Brand,Marca comercial,
Browse,Explorar,
Call Connected,Trucada connectada,
Call Disconnected,Trucada desconnectada,
Call Missed,Truca perduda,
Call Summary,Resum de trucada,
Call Summary Saved,Resum de trucades Desat,
Cancelled,CANCERAT,
Cannot Calculate Arrival Time as Driver Address is Missing.,No es pot calcular l&#39;hora d&#39;arribada perquè falta l&#39;adreça del conductor.,
Cannot Optimize Route as Driver Address is Missing.,No es pot optimitzar la ruta com a adreça del conductor.,
Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,No es pot completar / cancel·lar la tasca {0} com a tasca depenent {1}.,
Cannot create loan until application is approved,No es pot crear préstec fins que no s&#39;aprovi l&#39;aplicació,
Cannot find a matching Item. Please select some other value for {0}.,Si no troba un article a joc. Si us plau seleccioni un altre valor per {0}.,
"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","No es pot generar l&#39;excés de l&#39;element {0} a la fila {1} més de {2}. Per permetre l&#39;excés de facturació, establiu la quantitat a la configuració del compte",
"Capacity Planning Error, planned start time can not be same as end time","Error de planificació de la capacitat, l&#39;hora d&#39;inici planificada no pot ser el mateix que el de finalització",
Categories,Categories,
Changes in {0},Canvis en {0},
Chart,Gràfic,
Choose a corresponding payment,Trieu un pagament corresponent,
Click on the link below to verify your email and confirm the appointment,Feu clic a l’enllaç següent per verificar el vostre correu electrònic i confirmeu la cita,
Close,Close,
Communication,Comunicació,
Compact Item Print,Compacte article Imprimir,
Company,Empresa,
Company of asset {0} and purchase document {1} doesn't matches.,La companyia d’actius {0} i el document de compra {1} no coincideixen.,
Compare BOMs for changes in Raw Materials and Operations,Compareu els BOM per a canvis en les operacions i matèries primeres,
Compare List function takes on list arguments,La funció de llista Llista té arguments en la llista,
Complete,Completa,
Completed,Acabat,
Completed Quantity,Quantitat completada,
Connect your Exotel Account to ERPNext and track call logs,Connecteu el vostre compte Exotel a ERPNext i feu el seguiment dels registres de trucades,
Connect your bank accounts to ERPNext,Connecteu els vostres comptes bancaris a ERPNext,
Contact Seller,Contacte amb el venedor,
Continue,Continuar,
Cost Center: {0} does not exist,Centre de costos: {0} no existeix,
Couldn't Set Service Level Agreement {0}.,No s&#39;ha pogut establir un acord de nivell de servei {0}.,
Country,País,
Country Code in File does not match with country code set up in the system,El codi de país al fitxer no coincideix amb el codi de país configurat al sistema,
Create New Contact,Crea un contacte nou,
Create New Lead,Creeu un servei principal,
Create Pick List,Crea una llista de selecció,
Create Quality Inspection for Item {0},Creeu una inspecció de qualitat per a l&#39;element {0},
Creating Accounts...,Creació de comptes ...,
Creating bank entries...,Creació d&#39;entrades bancàries ...,
Credit limit is already defined for the Company {0},El límit de crèdit ja està definit per a l&#39;empresa {0},
Ctrl + Enter to submit,Ctrl + Enter per enviar,
Ctrl+Enter to submit,Ctrl + Intro per enviar,
Currency,Moneda,
Current Status,Situació actual,
Customer PO,PO del client,
Customize,Personalitza,
Daily,Diari,
Date,Data,
Date Range,Rang de dates,
Date of Birth cannot be greater than Joining Date.,La data de naixement no pot ser superior a la data d&#39;unió.,
Dear,Estimat,
Default,Defecte,
Define coupon codes.,Definiu codis de cupó.,
Delayed Days,Dies retardats,
Delete,Esborrar,
Delivered Quantity,Quantitat lliurada,
Delivery Notes,Notes de lliurament,
Depreciated Amount,Import depreciat,
Description,Descripció,
Designation,Designació,
Difference Value,Valor de diferència,
Dimension Filter,Filtre de dimensions,
Disabled,Deshabilitat,
Disbursement and Repayment,Desemborsament i devolució,
Distance cannot be greater than 4000 kms,La distància no pot ser superior a 4.000 kms,
Do you want to submit the material request,Voleu enviar la sol·licitud de material,
Doctype,DocType,
Document {0} successfully uncleared,El document {0} no ha estat clar,
Download Template,Descarregar plantilla,
Dr,Dr,
Due Date,Data De Venciment,
Duplicate,Duplicar,
Duplicate Project with Tasks,Projecte duplicat amb tasques,
Duplicate project has been created,S&#39;ha creat un projecte duplicat,
E-Way Bill JSON can only be generated from a submitted document,E-Way Bill JSON només es pot generar a partir d’un document enviat,
E-Way Bill JSON can only be generated from submitted document,E-Way Bill JSON només es pot generar a partir del document enviat,
E-Way Bill JSON cannot be generated for Sales Return as of now,e-Way Bill JSON no es pot generar fins ara a la devolució de vendes,
ERPNext could not find any matching payment entry,ERPNext no ha trobat cap entrada de pagament coincident,
Earliest Age,Edat més primerenca,
Edit Details,Edita els detalls,
Edit Profile,Edita el perfil,
Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Si el mode de transport és per carretera, no és necessari identificar el número de transport GST o el vehicle",
Email,Correu electrònic,
Email Campaigns,Campanyes de correu electrònic,
Employee ID is linked with another instructor,La identificació de l’empleat està enllaçada amb un altre instructor,
Employee Tax and Benefits,Impostos i prestacions dels empleats,
Employee is required while issuing Asset {0},L&#39;empleat és obligatori durant l&#39;emissió d&#39;actiu {0},
Employee {0} does not belongs to the company {1},L&#39;empleat {0} no pertany a l&#39;empresa {1},
Enable Auto Re-Order,Activa la reordena automàtica,
End Date of Agreement can't be less than today.,La data de finalització de l’acord no pot ser inferior a avui.,
End Time,Hora de finalització,
Energy Point Leaderboard,Quadre d’energia del punt d’energia,
Enter API key in Google Settings.,Introduïu la clau d’API a la configuració de Google.,
Enter Supplier,Introduïu el proveïdor,
Enter Value,Introduir valor,
Entity Type,Tipus d&#39;entitat,
Error,Error,
Error in Exotel incoming call,S&#39;ha produït un error en la trucada entrant a Exotel,
Error: {0} is mandatory field,Error: {0} és un camp obligatori,
Event Link,Enllaç d&#39;esdeveniments,
Exception occurred while reconciling {0},S&#39;ha produït una excepció durant la conciliació {0},
Expected and Discharge dates cannot be less than Admission Schedule date,Les dates previstes i de descàrrega no poden ser inferiors a la data de la programació d&#39;admissió,
Expire Allocation,Expira l&#39;assignació,
Expired,Caducat,
Export,Exportació,
Export not allowed. You need {0} role to export.,No es pot exportar. Cal el rol {0} per a exportar.,
Failed to add Domain,No s&#39;ha pogut afegir domini,
Fetch Items from Warehouse,Obtenir articles de magatzem,
Fetching...,S&#39;obté ...,
Field,camp,
File Manager,Gestor de fitxers,
Filters,Filtres,
Finding linked payments,Cerca de pagaments enllaçats,
Fleet Management,Gestió de flotes,
Following fields are mandatory to create address:,Els camps següents són obligatoris per crear una adreça:,
For Month,Per mes,
"For item {0} at row {1}, count of serial numbers does not match with the picked quantity","Per a l’element {0} de la fila {1}, el nombre de números de sèrie no coincideix amb la quantitat recollida",
For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),Per a l&#39;operació {0}: la quantitat ({1}) no pot ser més gran que la quantitat pendent ({2}),
For quantity {0} should not be greater than work order quantity {1},Per a la quantitat {0} no ha de ser superior a la quantitat de comanda {1},
Free item not set in the pricing rule {0},Element gratuït no definit a la regla de preus {0},
From Date and To Date are Mandatory,De data i fins a data són obligatoris,
From employee is required while receiving Asset {0} to a target location,Cal que des d’un empleat es rebin l’actiu {0} a una ubicació de destinació,
Fuel Expense,Despesa de combustible,
Future Payment Amount,Import futur de pagament,
Future Payment Ref,Pagament futur Ref,
Future Payments,Pagaments futurs,
GST HSN Code does not exist for one or more items,El codi HSN GST no existeix per a un o diversos articles,
Generate E-Way Bill JSON,Genereu el compte JSON per e-Way,
Get Items,Obtenir elements,
Get Outstanding Documents,Obteniu documents destacats,
Goal,Meta,
Greater Than Amount,Més gran que la quantitat,
Green,Verd,
Group,Grup,
Group By Customer,Grup per client,
Group By Supplier,Grup per proveïdors,
Group Node,Group Node,
Group Warehouses cannot be used in transactions. Please change the value of {0},Les Magatzems de Grup no es poden utilitzar en transaccions. Canvieu el valor de {0},
Help,Ajuda,
Help Article,ajuda article,
"Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Us ajuda a mantenir un seguiment de contractes basats en proveïdors, clients i empleats",
Helps you manage appointments with your leads,Us ajuda a gestionar les cites amb els vostres clients,
Home,casa,
IBAN is not valid,L&#39;IBAN no és vàlid,
Import Data from CSV / Excel files.,Importar dades des de fitxers CSV / Excel.,
In Progress,En progrés,
Incoming call from {0},Trucada entrant de {0},
Incorrect Warehouse,Magatzem incorrecte,
Intermediate,intermedi,
Invalid Barcode. There is no Item attached to this barcode.,Codi de barres no vàlid. No hi ha cap article adjunt a aquest codi de barres.,
Invalid credentials,Credencials no vàlides,
Invite as User,Convida com usuari,
Issue Priority.,Prioritat de problema.,
Issue Type.,Tipus de problema.,
"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.","Sembla que hi ha un problema amb la configuració de la xarxa del servidor. En cas de fracàs, l&#39;import es reemborsarà al vostre compte.",
Item Reported,Article reportat,
Item listing removed,S&#39;ha eliminat la llista d&#39;elements,
Item quantity can not be zero,La quantitat d’element no pot ser zero,
Item taxes updated,Impostos d’articles actualitzats,
Item {0}: {1} qty produced. ,Element {0}: {1} quantitat produïda.,
Joining Date can not be greater than Leaving Date,La data de combinació no pot ser superior a la data de sortida,
Lab Test Item {0} already exist,L’element de prova de laboratori {0} ja existeix,
Last Issue,Últim número,
Latest Age,Última Edat,
Leave application is linked with leave allocations {0}. Leave application cannot be set as leave without pay,L’aplicació de permís està enllaçada amb les assignacions de permís {0}. La sol·licitud de permís no es pot configurar com a permís sense pagar,
Leaves Taken,Fulles agafades,
Less Than Amount,Menys que Quantitat,
Liabilities,Passiu,
Loading...,Carregant ...,
Loan Amount exceeds maximum loan amount of {0} as per proposed securities,L&#39;import del préstec supera l&#39;import màxim del préstec de {0} segons els valors proposats,
Loan Applications from customers and employees.,Sol·licituds de préstecs de clients i empleats.,
Loan Disbursement,Desemborsament de préstecs,
Loan Processes,Processos de préstec,
Loan Security,Seguretat del préstec,
Loan Security Pledge,Préstec de seguretat,
Loan Security Pledge Created : {0},Seguretat de préstec creat: {0},
Loan Security Price,Preu de seguretat de préstec,
Loan Security Price overlapping with {0},Preu de seguretat de préstec sobreposat amb {0},
Loan Security Unpledge,Desconnexió de seguretat del préstec,
Loan Security Value,Valor de seguretat del préstec,
Loan Type for interest and penalty rates,Tipus de préstec per als tipus d’interès i penalitzacions,
Loan amount cannot be greater than {0},La quantitat de préstec no pot ser superior a {0},
Loan is mandatory,El préstec és obligatori,
Loans,Préstecs,
Loans provided to customers and employees.,Préstecs proporcionats a clients i empleats.,
Location,Ubicació,
Log Type is required for check-ins falling in the shift: {0}.,El tipus de registre és necessari per als registres registrats en el canvi: {0}.,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Sembla que algú li va enviar a un URL incompleta. Si us plau, demanar-los que mirar-hi.",
Make Journal Entry,Feu entrada de diari,
Make Purchase Invoice,Feu Compra Factura,
Manufactured,Fabricat,
Mark Work From Home,Marca el treball des de casa,
Master,Mestre,
Max strength cannot be less than zero.,La resistència màxima no pot ser inferior a zero.,
Maximum attempts for this quiz reached!,S&#39;ha arribat al màxim d&#39;intents d&#39;aquest qüestionari.,
Message,Missatge,
Missing Values Required,Camps Obligatoris,
Mobile No,Número de Mòbil,
Mobile Number,Número de mòbil,
Month,Mes,
Name,Nom,
Near you,A prop teu,
Net Profit/Loss,Resultat / pèrdua neta,
New Expense,Nova despesa,
New Invoice,Nova factura,
New Payment,Nou pagament,
New release date should be in the future,La nova data de llançament hauria de ser en el futur,
Newsletter,Newsletter,
No Account matched these filters: {},Cap compte ha coincidit amb aquests filtres: {},
No Employee found for the given employee field value. '{}': {},No s&#39;ha trobat cap empleat pel valor de camp de l&#39;empleat indicat. &#39;{}&#39;: {},
No Leaves Allocated to Employee: {0} for Leave Type: {1},No s&#39;ha assignat cap full a l&#39;empleat: {0} per al tipus de permís: {1},
No communication found.,No s&#39;ha trobat cap comunicació.,
No correct answer is set for {0},No s&#39;ha definit cap resposta correcta per a {0},
No description,Sense descripció,
No issue has been raised by the caller.,La persona que ha trucat no ha plantejat cap problema.,
No items to publish,No hi ha articles a publicar,
No outstanding invoices found,No s&#39;ha trobat cap factura pendent,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,No s&#39;ha trobat cap factura pendent per al {0} {1} que compleixi els filtres que heu especificat.,
No outstanding invoices require exchange rate revaluation,No hi ha factures pendents que requereixin una revaloració del tipus de canvi,
No reviews yet,Cap comentari encara,
No views yet,Encara no hi ha visualitzacions,
Non stock items,Articles no existents,
Not Allowed,No es permet,
Not allowed to create accounting dimension for {0},No es permet crear una dimensió de comptabilitat per a {0},
Not permitted. Please disable the Lab Test Template,No permès. Desactiveu la plantilla de prova de laboratori,
Note,Nota,
Notes: ,Notes:,
On Converting Opportunity,En convertir l&#39;oportunitat,
On Purchase Order Submission,Enviament de la comanda de compra,
On Sales Order Submission,Enviament de la comanda de venda,
On Task Completion,Completat la tasca,
On {0} Creation,Creació {0},
Only .csv and .xlsx files are supported currently,"Actualment, només són compatibles els fitxers .csv i .xlsx",
Only expired allocation can be cancelled,Només es pot cancel·lar l&#39;assignació caducada,
Only users with the {0} role can create backdated leave applications,Només els usuaris amb la funció {0} poden crear aplicacions de permís endarrerides,
Open,Obert,
Open Contact,Contacte obert,
Open Lead,Plom Obert,
Opening and Closing,Obertura i cloenda,
Operating Cost as per Work Order / BOM,Cost operatiu segons l&#39;Ordre de Treball / BOM,
Order Amount,Import de la comanda,
Page {0} of {1},Pàgina {0} de {1},
Paid amount cannot be less than {0},L’import pagat no pot ser inferior a {0},
Parent Company must be a group company,La Societat Dominant ha de ser una empresa del grup,
Passing Score value should be between 0 and 100,El valor de la puntuació de superació hauria d’estar entre 0 i 100,
Password policy cannot contain spaces or simultaneous hyphens. The format will be restructured automatically,La política de contrasenya no pot contenir espais ni guionets simultanis. El format es reestructurarà automàticament,
Patient History,Historial del pacient,
Pause,Pausa,
Pay,Pagar,
Payment Document Type,Tipus de document de pagament,
Payment Name,Nom de pagament,
Penalty Amount,Import de la sanció,
Pending,Pendent,
Performance,Rendiment,
Period based On,Període basat en,
Perpetual inventory required for the company {0} to view this report.,Inventari perpetu necessari per a l’empresa {0} per veure aquest informe.,
Phone,Telèfon,
Pick List,Llista de seleccions,
Plaid authentication error,Error d&#39;autenticació de plaid,
Plaid public token error,Error de testimoni públic de l&#39;escriptura,
Plaid transactions sync error,Error de sincronització de transaccions amb plaid,
Please check the error log for details about the import errors,Consulteu el registre d’errors per obtenir més detalls sobre els errors d’importació,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,<b>Creeu la configuració de DATEV</b> per a l&#39;empresa <b>{}</b> .,
Please create adjustment Journal Entry for amount {0} ,Creeu l’entrada del diari d’ajust per l’import {0}.,
Please do not create more than 500 items at a time,No creeu més de 500 articles alhora,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Introduïu el <b>compte de diferència</b> o configureu el <b>compte d&#39;ajust d&#39;estoc</b> predeterminat per a l&#39;empresa {0},
Please enter GSTIN and state for the Company Address {0},Introduïu GSTIN i indiqueu l&#39;adreça de l&#39;empresa {0},
Please enter Item Code to get item taxes,Introduïu el codi de l&#39;article per obtenir impostos sobre articles,
Please enter Warehouse and Date,Introduïu la data i el magatzem,
Please enter the designation,Introduïu la designació,
Please login as a Marketplace User to edit this item.,Inicieu la sessió com a usuari del Marketplace per editar aquest article.,
Please login as a Marketplace User to report this item.,Inicieu la sessió com a usuari del Marketplace per informar d&#39;aquest article.,
Please select <b>Template Type</b> to download template,Seleccioneu <b>Tipus de plantilla</b> per baixar la plantilla,
Please select Applicant Type first,Seleccioneu primer el tipus d’aplicant,
Please select Customer first,Seleccioneu primer el client,
Please select Item Code first,Seleccioneu primer el Codi de l’element,
Please select Loan Type for company {0},Seleccioneu Tipus de préstec per a l&#39;empresa {0},
Please select a Delivery Note,Seleccioneu un albarà,
Please select a Sales Person for item: {0},Seleccioneu una persona de vendes per a l&#39;article: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Si us plau seleccioneu un altre mètode de pagament. Raya no admet transaccions en moneda &#39;{0}&#39;,
Please select the customer.,Seleccioneu el client.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Configureu un proveïdor contra els articles que es consideraran a la comanda de compra.,
Please set account heads in GST Settings for Compnay {0},Configureu els caps de compte a Configuració de GST per a Compnay {0},
Please set an email id for the Lead {0},Configureu un identificador de correu electrònic per al client {0},
Please set default UOM in Stock Settings,Definiu l&#39;UOM per defecte a la configuració d&#39;existències,
Please set filter based on Item or Warehouse due to a large amount of entries.,Configureu el filtre en funció de l&#39;element o el magatzem a causa d&#39;una gran quantitat d&#39;entrades.,
Please set up the Campaign Schedule in the Campaign {0},Configureu la programació de la campanya a la campanya {0},
Please set valid GSTIN No. in Company Address for company {0},Configureu el número de GSTIN vàlid a l&#39;adreça de l&#39;empresa de l&#39;empresa {0},
Please set {0},Definiu {0},customer
Please setup a default bank account for company {0},Configureu un compte bancari predeterminat per a l&#39;empresa {0},
Please specify,"Si us plau, especifiqui",
Please specify a {0},Especifiqueu un {0},lead
Pledge Status,Estat de la promesa,
Pledge Time,Temps de promesa,
Printing,Impressió,
Priority,Prioritat,
Priority has been changed to {0}.,La prioritat s&#39;ha canviat a {0}.,
Priority {0} has been repeated.,La prioritat {0} s&#39;ha repetit.,
Processing XML Files,Processament de fitxers XML,
Profitability,Rendibilitat,
Project,Projecte,
Proposed Pledges are mandatory for secured Loans,Els compromisos proposats són obligatoris per a préstecs garantits,
Provide the academic year and set the starting and ending date.,Proporciona el curs acadèmic i estableix la data d’inici i finalització.,
Public token is missing for this bank,Falta un testimoni públic per a aquest banc,
Publish,Publica,
Publish 1 Item,Publica 1 ítem,
Publish Items,Publicar articles,
Publish More Items,Publica més articles,
Publish Your First Items,Publica els teus primers articles,
Publish {0} Items,Publica {0} articles,
Published Items,Articles publicats,
Purchase Invoice cannot be made against an existing asset {0},La factura de compra no es pot realitzar amb un recurs existent {0},
Purchase Invoices,Factures de compra,
Purchase Orders,Ordres de compra,
Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,El rebut de compra no té cap element per al qual estigui habilitat la conservació de l&#39;exemple.,
Purchase Return,Devolució de compra,
Qty of Finished Goods Item,Quantitat d&#39;articles de productes acabats,
Qty or Amount is mandatroy for loan security,Quantitat o import és mandatroy per a la seguretat del préstec,
Quality Inspection required for Item {0} to submit,Inspecció de qualitat necessària per enviar l&#39;article {0},
Quantity to Manufacture,Quantitat a la fabricació,
Quantity to Manufacture can not be zero for the operation {0},La quantitat a la fabricació no pot ser zero per a l&#39;operació {0},
Quarterly,Trimestral,
Queued,En cua,
Quick Entry,Entrada ràpida,
Quiz {0} does not exist,El test {0} no existeix,
Quotation Amount,Import de la cotització,
Rate or Discount is required for the price discount.,"Per a descompte en el preu, es requereix tarifa o descompte.",
Reason,Raó,
Reconcile Entries,Reconciliar entrades,
Reconcile this account,Reconcilieu aquest compte,
Reconciled,Reconciliat,
Recruitment,reclutament,
Red,Vermell,
Refreshing,Refrescant,
Release date must be in the future,La data de llançament ha de ser en el futur,
Relieving Date must be greater than or equal to Date of Joining,La data de alleujament ha de ser superior o igual a la data d&#39;adhesió,
Rename,Canviar el nom,
Rename Not Allowed,Canvia de nom no permès,
Repayment Method is mandatory for term loans,El mètode de reemborsament és obligatori per a préstecs a termini,
Repayment Start Date is mandatory for term loans,La data d’inici del reemborsament és obligatòria per als préstecs a termini,
Report Item,Informe,
Report this Item,Informa d&#39;aquest element,
Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Quantitat reservada per a subcontractes: quantitat de matèries primeres per fabricar articles subcontractats.,
Reset,reajustar,
Reset Service Level Agreement,Restableix el contracte de nivell de servei,
Resetting Service Level Agreement.,Restabliment de l&#39;Acord de nivell de servei.,
Return amount cannot be greater unclaimed amount,L’import de devolució no pot ser un import no reclamat superior,
Review,Revisió,
Room,habitació,
Room Type,Tipus d&#39;habitació,
Row # ,Fila #,
Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Fila # {0}: el magatzem i el magatzem de proveïdors acceptats no poden ser el mateix,
Row #{0}: Cannot delete item {1} which has already been billed.,Fila # {0}: no es pot suprimir l&#39;element {1} que ja s&#39;ha facturat.,
Row #{0}: Cannot delete item {1} which has already been delivered,Fila # {0}: no es pot eliminar l&#39;element {1} que ja s&#39;ha lliurat,
Row #{0}: Cannot delete item {1} which has already been received,Fila # {0}: no es pot suprimir l&#39;element {1} que ja s&#39;ha rebut,
Row #{0}: Cannot delete item {1} which has work order assigned to it.,Fila # {0}: no es pot eliminar l&#39;element {1} que té assignada una ordre de treball.,
Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Fila # {0}: no es pot eliminar l&#39;element {1} que s&#39;assigna a la comanda de compra del client.,
Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,Fila # {0}: no es pot seleccionar el magatzem del proveïdor mentre se subministra matèries primeres al subcontractista,
Row #{0}: Cost Center {1} does not belong to company {2},Fila # {0}: el centre de cost {1} no pertany a l&#39;empresa {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}.,Fila # {0}: L&#39;operació {1} no es completa per a {2} la quantitat de productes acabats en l&#39;Ordre de Treball {3}. Actualitzeu l&#39;estat de l&#39;operació mitjançant la targeta de treball {4}.,
Row #{0}: Payment document is required to complete the transaction,Fila # {0}: el document de pagament és necessari per completar la transacció,
Row #{0}: Serial No {1} does not belong to Batch {2},Fila # {0}: el número de sèrie {1} no pertany a la llista de lots {2},
Row #{0}: Service End Date cannot be before Invoice Posting Date,Fila # {0}: la data de finalització del servei no pot ser anterior a la data de publicació de la factura,
Row #{0}: Service Start Date cannot be greater than Service End Date,Fila # {0}: la data d&#39;inici del servei no pot ser superior a la data de finalització del servei,
Row #{0}: Service Start and End Date is required for deferred accounting,Fila # {0}: La data d&#39;inici i finalització del servei és necessària per a la comptabilitat diferida,
Row {0}: Invalid Item Tax Template for item {1},Fila {0}: plantilla d&#39;impostos de l&#39;article no vàlida per a l&#39;element {1},
Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Fila {0}: quantitat no disponible per a {4} al magatzem {1} en el moment de la publicació de l&#39;entrada ({2} {3}),
Row {0}: user has not applied the rule {1} on the item {2},Fila {0}: l&#39;usuari no ha aplicat la regla {1} a l&#39;element {2},
Row {0}:Sibling Date of Birth cannot be greater than today.,Fila {0}: la data de naixement de la comunitat no pot ser superior a l&#39;actualitat.,
Row({0}): {1} is already discounted in {2},Fila ({0}): {1} ja es descompta a {2},
Rows Added in {0},Línies afegides a {0},
Rows Removed in {0},Línies suprimides a {0},
Sanctioned Amount limit crossed for {0} {1},Límit de quantitat sancionat traspassat per {0} {1},
Sanctioned Loan Amount already exists for {0} against company {1},La quantitat de préstec sancionat ja existeix per a {0} contra l&#39;empresa {1},
Save,Guardar,
Save Item,Desa l&#39;element,
Saved Items,Elements desats,
Search Items ...,Cercar articles ...,
Search for a payment,Cerqueu un pagament,
Search for anything ...,Cerqueu qualsevol cosa ...,
Search results for,Resultats de la cerca,
Select All,Selecciona tot,
Select Difference Account,Seleccioneu el compte de diferències,
Select a Default Priority.,Seleccioneu una prioritat per defecte.,
Select a company,Seleccioneu una empresa,
Select finance book for the item {0} at row {1},Seleccioneu un llibre de finances per a l&#39;element {0} de la fila {1},
Select only one Priority as Default.,Seleccioneu només una prioritat com a predeterminada.,
Seller Information,Informació del venedor,
Send,Enviar,
Send a message,Enviar un missatge,
Sending,Enviament,
Sends Mails to lead or contact based on a Campaign schedule,Envia Mails per dirigir-los o contactar-los en funció d’una programació de la campanya,
Serial Number Created,Número de sèrie creat,
Serial Numbers Created,Nombres de sèrie creats,
Serial no(s) required for serialized item {0},No és necessari número de sèrie per a l&#39;element serialitzat {0},
Series,Sèrie,
Server Error,Error del servidor,
Service Level Agreement has been changed to {0}.,L’acord de nivell de servei s’ha canviat a {0}.,
Service Level Agreement was reset.,S&#39;ha restablert l&#39;Acord de nivell de servei.,
Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Ja existeix un contracte de nivell de servei amb el tipus d&#39;entitat {0} i l&#39;entitat {1}.,
Set,Setembre,
Set Meta Tags,Estableix les etiquetes meta,
Set {0} in company {1},Estableix {0} a l&#39;empresa {1},
Setup,Ajustos,
Setup Wizard,Assistent de configuració,
Shift Management,Gestió de canvis,
Show Future Payments,Mostra els futurs pagaments,
Show Linked Delivery Notes,Mostra alba de lliurament enllaçat,
Show Sales Person,Espectacle de vendes,
Show Stock Ageing Data,Mostra dades d’envelliment d’estoc,
Show Warehouse-wise Stock,Mostra el magatzem correcte de magatzem,
Size,Mida,
Something went wrong while evaluating the quiz.,Alguna cosa va funcionar malament durant la valoració del qüestionari.,
Sr,sr,
Start,Començar,
Start Date cannot be before the current date,La data d&#39;inici no pot ser anterior a la data actual,
Start Time,Hora d'inici,
Status,Estat,
Status must be Cancelled or Completed,Cal cancel·lar o completar l&#39;estat,
Stock Balance Report,Informe de saldos,
Stock Entry has been already created against this Pick List,L’entrada d’accions ja s’ha creat en aquesta llista de recollida,
Stock Ledger ID,Identificador de registre d&#39;estoc,
Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,El valor de les accions ({0}) i el saldo del compte ({1}) no estan sincronitzats per al compte {2} i els magatzems enllaçats.,
Stores - {0},Botigues - {0},
Student with email {0} does not exist,L’estudiant amb correu electrònic {0} no existeix,
Submit Review,Envieu una revisió,
Submitted,Enviat,
Supplier Addresses And Contacts,Adreces i contactes dels proveïdors,
Synchronize this account,Sincronitza aquest compte,
Tag,Etiqueta,
Target Location is required while receiving Asset {0} from an employee,La ubicació de l&#39;objectiu és necessària mentre rep l&#39;actiu {0} d&#39;un empleat,
Target Location is required while transferring Asset {0},La ubicació de la destinació és necessària mentre es transfereixen actius {0},
Target Location or To Employee is required while receiving Asset {0},La ubicació de la destinació o el treballador és obligatori mentre rep l&#39;actiu {0},
Task's {0} End Date cannot be after Project's End Date.,La data de finalització de la tasca {0} no pot ser posterior a la data de finalització del projecte.,
Task's {0} Start Date cannot be after Project's End Date.,La {0} data d&#39;inici de la tasca no pot ser posterior a la data de finalització del projecte.,
Tax Account not specified for Shopify Tax {0},Compte fiscal no especificat per a Shopify Tax {0},
Tax Total,Total d’impostos,
Template,Plantilla,
The Campaign '{0}' already exists for the {1} '{2}',La campanya &#39;{0}&#39; ja existeix per a la {1} &#39;{2}&#39;,
The difference between from time and To Time must be a multiple of Appointment,La diferència entre el temps i el Temps ha de ser un múltiple de cites,
The field Asset Account cannot be blank,El camp Compte d&#39;actius no pot estar en blanc,
The field Equity/Liability Account cannot be blank,El camp Compte de responsabilitat / responsabilitat no pot estar en blanc,
The following serial numbers were created: <br><br> {0},Es van crear els números de sèrie següents: <br><br> {0},
The parent account {0} does not exists in the uploaded template,El compte pare {0} no existeix a la plantilla penjada,
The question cannot be duplicate,La pregunta no es pot duplicar,
The selected payment entry should be linked with a creditor bank transaction,L’entrada de pagament seleccionada s’hauria d’enllaçar amb una transacció bancària creditora,
The selected payment entry should be linked with a debtor bank transaction,L’entrada de pagament seleccionada s’hauria d’enllaçar amb una transacció bancària deutora,
The total allocated amount ({0}) is greated than the paid amount ({1}).,L’import total assignat ({0}) obté més valor que l’import pagat ({1}).,
There are no vacancies under staffing plan {0},No hi ha places vacants en el pla de personal {0},
This Service Level Agreement is specific to Customer {0},Aquest Acord de nivell de servei és específic per al client {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Aquesta acció desvincularà aquest compte de qualsevol servei extern que integri ERPNext amb els vostres comptes bancaris. No es pot desfer. Estàs segur?,
This bank account is already synchronized,Aquest compte bancari ja està sincronitzat,
This bank transaction is already fully reconciled,Aquesta transacció bancària ja està totalment conciliada,
This employee already has a log with the same timestamp.{0},Aquest empleat ja té un registre amb la mateixa marca de temps. {0},
This page keeps track of items you want to buy from sellers.,Aquesta pàgina fa un seguiment dels articles que voleu comprar als venedors.,
This page keeps track of your items in which buyers have showed some interest.,Aquesta pàgina fa un seguiment dels vostres articles pels quals els compradors han mostrat cert interès.,
Thursday,Dijous,
Timing,Cronologia,
Title,Títol,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.","Per permetre la facturació excessiva, actualitzeu &quot;Indemnització sobre facturació&quot; a la configuració del compte o a l&#39;element.",
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Per permetre el rebut / lliurament, actualitzeu &quot;Indemnització de recepció / lliurament&quot; a la configuració de les accions o a l&#39;article.",
To date needs to be before from date,"Fins a la data, ha de ser abans de la data",
Total,Total,
Total Early Exits,Total sortides anticipades,
Total Late Entries,Total d’entrades tardanes,
Total Payment Request amount cannot be greater than {0} amount,L&#39;import total de la sol·licitud de pagament no pot ser superior a {0},
Total payments amount can't be greater than {},L&#39;import total dels pagaments no pot ser superior a {},
Totals,Totals,
Training Event:,Esdeveniment de formació:,
Transactions already retreived from the statement,Les transaccions ja s&#39;han recuperat de l&#39;estat,
Transfer Material to Supplier,Transferència de material a proveïdor,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,El número de recepció i la data de transport no són obligatoris per al mode de transport escollit,
Tuesday,Dimarts,
Type,Tipus,
Unable to find Salary Component {0},No es pot trobar el component salari {0},
Unable to find the time slot in the next {0} days for the operation {1}.,No s&#39;ha pogut trobar la franja horària en els propers {0} dies per a l&#39;operació {1}.,
Unable to update remote activity,No es pot actualitzar l&#39;activitat remota,
Unknown Caller,Trucador desconegut,
Unlink external integrations,Desconnecteu les integracions externes,
Unmarked Attendance for days,Assistència no marcada durant dies,
Unpublish Item,Element inèdit,
Unreconciled,No conciliada,
Unsupported GST Category for E-Way Bill JSON generation,Categoria GST no compatible per a la generació e-Way Bill JSON,
Update,Actualització,
Update Details,Detalls d’actualització,
Update Taxes for Items,Actualitzar els impostos dels articles,
"Upload a bank statement, link or reconcile a bank account","Pengeu un extracte bancari, enllaceu o reconcilieu un compte bancari",
Upload a statement,Carregueu una declaració,
Use a name that is different from previous project name,Utilitzeu un nom diferent del nom del projecte anterior,
User {0} is disabled,L'usuari {0} està deshabilitat,
Users and Permissions,Usuaris i permisos,
Vacancies cannot be lower than the current openings,Les places vacants no poden ser inferiors a les obertures actuals,
Valid From Time must be lesser than Valid Upto Time.,Valid From Time ha de ser inferior al Valid Upto Time.,
Valuation Rate required for Item {0} at row {1},Taxa de valoració necessària per a l’element {0} a la fila {1},
Values Out Of Sync,Valors fora de sincronització,
Vehicle Type is required if Mode of Transport is Road,El tipus de vehicle és obligatori si el mode de transport és per carretera,
Vendor Name,Nom del venedor,
Verify Email,verificar Correu,
View,Veure,
View all issues from {0},Veure tots els problemes de {0},
View call log,Veure registre de trucades,
Warehouse,Magatzem,
Warehouse not found against the account {0},No s&#39;ha trobat el magatzem amb el compte {0},
Welcome to {0},Benvingut a {0},
Why do think this Item should be removed?,Per què creieu que s’ha d’eliminar aquest ítem?,
Work Order {0}: Job Card not found for the operation {1},Ordre de treball {0}: no s&#39;ha trobat la targeta de treball per a l&#39;operació {1},
Workday {0} has been repeated.,La jornada laboral {0} s&#39;ha repetit.,
XML Files Processed,Arxius XML processats,
Year,Any,
Yearly,Anual,
You,Vostè,
You are not allowed to enroll for this course,No teniu permís per inscriure-us en aquest curs,
You are not enrolled in program {0},No esteu inscrit al programa {0},
You can Feature upto 8 items.,Podeu aparèixer fins a 8 articles.,
You can also copy-paste this link in your browser,També podeu copiar i enganxar aquest enllaç al teu navegador,
You can publish upto 200 items.,Podeu publicar fins a 200 articles.,
You have to enable auto re-order in Stock Settings to maintain re-order levels.,Heu d’habilitar la reordena automàtica a Configuració d’accions per mantenir els nivells de reordenament.,
You must be a registered supplier to generate e-Way Bill,Heu de ser un proveïdor registrat per generar la factura electrònica,
You need to login as a Marketplace User before you can add any reviews.,"Per poder afegir ressenyes, heu d’iniciar la sessió com a usuari del Marketplace.",
Your Featured Items,Els vostres articles destacats,
Your Items,Els seus articles,
Your Profile,El teu perfil,
Your rating:,El teu vot:,
and,i,
e-Way Bill already exists for this document,e-Way Bill ja existeix per a aquest document,
woocommerce - {0},woocommerce - {0},
{0} Coupon used are {1}. Allowed quantity is exhausted,{0} El cupó utilitzat són {1}. La quantitat permesa s’esgota,
{0} Name,{0} Nom,
{0} Operations: {1},{0} Operacions: {1},
{0} bank transaction(s) created,S&#39;han creat {0} operacions bancàries,
{0} bank transaction(s) created and {1} errors,S&#39;han creat {0} transaccions bancàries i {1} errors,
{0} can not be greater than {1},{0} no pot ser superior a {1},
{0} conversations,{0} converses,
{0} is not a company bank account,{0} no és un compte bancari de l&#39;empresa,
{0} is not a group node. Please select a group node as parent cost center,{0} no és un node de grup. Seleccioneu un node de grup com a centre de cost parental,
{0} is not the default supplier for any items.,{0} no és el proveïdor predeterminat de cap element.,
{0} is required,{0} és necessari,
{0}: {1} must be less than {2},{0}: {1} ha de ser inferior a {2},
{} is an invalid Attendance Status.,{} és un estat d’assistència no vàlid.,
{} is required to generate E-Way Bill JSON,{} és necessari generar Bill JSON per e-Way,
"Invalid lost reason {0}, please create a new lost reason","Motiu perdut no vàlid {0}, crea un motiu nou perdut",
Profit This Year,Ànim de lucre aquest any,
Total Expense,Despesa Total,
Total Expense This Year,Despesa total d’aquest any,
Total Income,Ingressos totals,
Total Income This Year,Ingressos totals aquest any,
Barcode,Codi de barres,
Bold,Negre,
Center,Centre,
Clear,Clar,
Comment,Comentar,
Comments,Comentaris,
DocType,DocType,
Download,descarregar,
Left,Esquerra,
Link,Enllaç,
New,Nou,
Not Found,Extraviat,
Print,Imprimir,
Reference Name,Nom de referència,
Refresh,Refrescar,
Success,Èxit,
Time,Temps,
Value,Valor,
Actual,Actual,
Add to Cart,Afegir a la cistella,
Days Since Last Order,Dies des de la darrera comanda,
In Stock,En estoc,
Loan Amount is mandatory,La quantitat de préstec és obligatòria,
Mode Of Payment,Forma de pagament,
No students Found,No s’han trobat estudiants,
Not in Stock,No en Stock,
Please select a Customer,Seleccioneu un client,
Printed On,impresa:,
Received From,Rebut des,
Sales Person,Persona de vendes,
To date cannot be before From date,Fins a la data no pot ser anterior a partir de la data,
Write Off,Cancel,
{0} Created,{0} creat,
Email Id,Identificació de l'email,
No,No,
Reference Doctype,Reference DocType,
User Id,ID d&#39;usuari,
Yes,Sí,
Actual ,Reial,
Add to cart,Afegir a la cistella,
Budget,Pressupost,
Chart of Accounts,Taula de comptes,
Customer database.,Base de dades de clients.,
Days Since Last order,Dies des de la darrera comanda,
Download as JSON,Descarregueu com a Json,
End date can not be less than start date,Data de finalització no pot ser inferior a data d'inici,
For Default Supplier (Optional),Per proveïdor predeterminat (opcional),
From date cannot be greater than To date,Des de la data no pot ser superior a la data,
Group by,Agrupar per,
In stock,En estoc,
Item name,Nom de l'article,
Loan amount is mandatory,La quantitat de préstec és obligatòria,
Minimum Qty,Quantitat mínima,
More details,Més detalls,
Nature of Supplies,Natura dels subministraments,
No Items found.,No s’ha trobat cap element.,
No employee found,Cap empleat trobat,
No students found,No s&#39;han trobat estudiants,
Not in stock,No en estoc,
Not permitted,No permès,
Open Issues ,qüestions obertes,
Open Projects ,Projectes Oberts,
Open To Do ,Obert a fer,
Operation Id,Operació ID,
Partially ordered,Parcialment ordenat,
Please select company first,Si us plau seleccioneu l'empresa primer,
Please select patient,Seleccioneu el pacient,
Printed On ,Imprès al,
Projected qty,Quantitat projectada,
Sales person,Sales Person,
Serial No {0} Created,Serial No {0} creat,
Source Location is required for the Asset {0},La ubicació d&#39;origen és obligatòria per a l&#39;actiu {0},
Tax Id,Identificació fiscal,
To Time,Per Temps,
To date cannot be before from date,La data no pot ser anterior a la data,
Total Taxable value,Valor imposable total,
Upcoming Calendar Events ,Calendari d&#39;Esdeveniments Pròxims,
Value or Qty,Valor o quantitat,
Variance ,Desacord,
Variant of,Variant de,
Write off,Cancel,
hours,hores,
received from,Rebut des,
to,a,
Cards,Targetes,
Percentage,Percentatge,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,No s&#39;ha pogut configurar els valors predeterminats del país {0}. Contacteu amb support@erpnext.com,
Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Fila # {0}: l&#39;element {1} no és un element serialitzat / combinat. No pot tenir un número de sèrie / un lot no.,
Please set {0},"Si us plau, estableix {0}",
Please set {0},Definiu {0},supplier
Draft,Esborrany,"docstatus,=,0"
Cancelled,Cancel·lat,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Configureu un sistema de nom de l’Instructor a Educació&gt; Configuració d’educació,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Configureu Naming Series per a {0} mitjançant Configuració&gt; Configuració&gt; Sèries de nom,
UOM Conversion factor ({0} -> {1}) not found for item: {2},Factor de conversió UOM ({0} -&gt; {1}) no trobat per a l&#39;element: {2},
Item Code > Item Group > Brand,Codi de l&#39;article&gt; Grup d&#39;elements&gt; Marca,
Customer > Customer Group > Territory,Client&gt; Grup de clients&gt; Territori,
Supplier > Supplier Type,Proveïdor&gt; Tipus de proveïdor,
Please setup Employee Naming System in Human Resource > HR Settings,Configureu un sistema de nominació dels empleats a Recursos humans&gt; Configuració de recursos humans,
Please setup numbering series for Attendance via Setup > Numbering Series,Configureu les sèries de numeració per assistència mitjançant Configuració&gt; Sèries de numeració,
The value of {0} differs between Items {1} and {2},El valor de {0} difereix entre els elements {1} i {2},
Auto Fetch,Recupera automàtica,
Fetch Serial Numbers based on FIFO,Obteniu números de sèrie basats en FIFO,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Subministraments imposables a l&#39;exterior (diferents de la qualificació zero, nul·la i exempta)",
"To allow different rates, disable the {0} checkbox in {1}.","Per permetre tarifes diferents, desactiveu la casella de selecció {0} a {1}.",
Current Odometer Value should be greater than Last Odometer Value {0},El valor actual del comptaquilòmetres ha de ser superior al valor de l’últim comptaquilòmetres {0},
No additional expenses has been added,No s&#39;ha afegit cap despesa addicional,
Asset{} {assets_link} created for {},Recurs {} {assets_link} creat per a {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Fila {}: la sèrie de denominació d&#39;actius és obligatòria per a la creació automàtica de l&#39;element {},
Assets not created for {0}. You will have to create asset manually.,Recursos no creats per a {0}. Haureu de crear recursos manualment.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} té entrades comptables en moneda {2} per a l&#39;empresa {3}. Seleccioneu un compte a cobrar o a pagar amb la moneda {2}.,
Invalid Account,Compte no vàlid,
Purchase Order Required,Ordre de Compra Obligatori,
Purchase Receipt Required,Es requereix rebut de compra,
Account Missing,Falta el compte,
Requested,Comanda,
Partially Paid,Parcialment pagat,
Invalid Account Currency,La moneda del compte no és vàlida,
"Row {0}: The item {1}, quantity must be positive number","Fila {0}: l&#39;element {1}, la quantitat ha de ser un nombre positiu",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Definiu {0} per a l&#39;element per lots {1}, que s&#39;utilitza per definir {2} a Envia.",
Expiry Date Mandatory,Data de caducitat Obligatòria,
Variant Item,Article de la variant,
BOM 1 {0} and BOM 2 {1} should not be same,La BOM 1 {0} i la BOM 2 {1} no haurien de ser iguals,
Note: Item {0} added multiple times,Nota: l&#39;element {0} s&#39;ha afegit diverses vegades,
YouTube,YouTube,
Vimeo,Vimeo,
Publish Date,Data de publicació,
Duration,Durada,
Advanced Settings,Configuració avançada,
Path,Camí,
Components,components,
Verified By,Verified Per,
Invalid naming series (. missing) for {0},Sèrie de noms no vàlida (. Falta) per a {0},
Filter Based On,Filtre basat en,
Reqd by date,Reqd per data,
Manufacturer Part Number <b>{0}</b> is invalid,El número de part del fabricant <b>{0}</b> no és vàlid,
Invalid Part Number,Número de peça no vàlid,
Select atleast one Social Media from Share on.,Seleccioneu com a mínim una xarxa social de Compartir a.,
Invalid Scheduled Time,Temps programat no vàlid,
Length Must be less than 280.,La longitud ha de ser inferior a 280.,
Error while POSTING {0},Error en POSTAR {0},
"Session not valid, Do you want to login?","La sessió no és vàlida, voleu iniciar la sessió?",
Session Active,Sessió activa,
Session Not Active. Save doc to login.,Sessió no activa. Desa el document per iniciar la sessió.,
Error! Failed to get request token.,Error! No s&#39;ha pogut obtenir el testimoni de sol·licitud.,
Invalid {0} or {1},{0} o {1} no vàlid,
Error! Failed to get access token.,Error! No s&#39;ha pogut obtenir el testimoni d&#39;accés.,
Invalid Consumer Key or Consumer Secret Key,Clau del consumidor o clau del consumidor no vàlida,
Your Session will be expire in ,La vostra sessió caducarà d&#39;aquí a,
 days.,dies.,
Session is expired. Save doc to login.,La sessió ha caducat. Desa el document per iniciar la sessió.,
Error While Uploading Image,Error en penjar la imatge,
You Didn't have permission to access this API,No teníeu permís per accedir a aquesta API,
Valid Upto date cannot be before Valid From date,La data d&#39;actualització vàlida no pot ser anterior a la data de vàlid des de,
Valid From date not in Fiscal Year {0},Data vàlida des de l&#39;any fiscal {0},
Valid Upto date not in Fiscal Year {0},La data d&#39;actualització vàlida no és a l&#39;any fiscal {0},
Group Roll No,Rotllo de grup núm,
Maintain Same Rate Throughout Sales Cycle,Mantenir la mateixa tarifa durant tot el cicle de vendes,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Fila {1}: la quantitat ({0}) no pot ser una fracció. Per permetre-ho, desactiveu &quot;{2}&quot; a UOM {3}.",
Must be Whole Number,Ha de ser nombre enter,
Please setup Razorpay Plan ID,Configureu l&#39;identificador del pla Razorpay,
Contact Creation Failed,La creació del contacte ha fallat,
{0} already exists for employee {1} and period {2},{0} ja existeix per als empleats {1} i el període {2},
Leaves Allocated,Fulles assignades,
Leaves Expired,Les fulles han caducat,
Leave Without Pay does not match with approved {} records,Deixa sense pagar no coincideix amb els registres {} aprovats,
Income Tax Slab not set in Salary Structure Assignment: {0},La llosa de l&#39;Impost sobre la Renda no s&#39;ha definit a la cessió de l&#39;estructura salarial: {0},
Income Tax Slab: {0} is disabled,Llosa de l&#39;impost sobre la renda: {0} està desactivat,
Income Tax Slab must be effective on or before Payroll Period Start Date: {0},La llosa de l&#39;Impost sobre la Renda ha de ser efectiva el dia o abans del període de nòmina Data d&#39;inici: {0},
No leave record found for employee {0} on {1},No s&#39;ha trobat cap registre d&#39;excedència per a l&#39;empleat {0} a {1},
Row {0}: {1} is required in the expenses table to book an expense claim.,Fila {0}: es requereix {1} a la taula de despeses per reservar una reclamació de despeses.,
Set the default account for the {0} {1},Definiu el compte predeterminat per a {0} {1},
(Half Day),(Mig dia),
Income Tax Slab,Llosa de l&#39;Impost sobre la Renda,
Row #{0}: Cannot set amount or formula for Salary Component {1} with Variable Based On Taxable Salary,Fila núm. {0}: no es pot establir l&#39;import ni la fórmula per al component salarial {1} amb variable basada en el salari imposable,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Fila núm. {}: {} De {} hauria de ser {}. Modifiqueu el compte o seleccioneu un altre compte.,
Row #{}: Please asign task to a member.,Fila núm. {}: Assigneu la tasca a un membre.,
Process Failed,Ha fallat el procés,
Tally Migration Error,Error de migració de Tally,
Please set Warehouse in Woocommerce Settings,Configureu Magatzem a la configuració de Woocommerce,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Fila {0}: el magatzem de lliurament ({1}) i el magatzem del client ({2}) no poden ser iguals,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Fila {0}: la data de venciment a la taula de condicions de pagament no pot ser anterior a la data de publicació,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,No es pot trobar {} per a l&#39;article {}. Establiu el mateix a la configuració de l&#39;article principal o de valors.,
Row #{0}: The batch {1} has already expired.,Fila núm. {0}: el lot {1} ja ha caducat.,
Start Year and End Year are mandatory,L’any inicial i el final de curs són obligatoris,
GL Entry,Entrada GL,
Cannot allocate more than {0} against payment term {1},No es poden assignar més de {0} contra el termini de pagament {1},
The root account {0} must be a group,El compte arrel {0} ha de ser un grup,
Shipping rule not applicable for country {0} in Shipping Address,La regla d&#39;enviament no s&#39;aplica al país {0} a l&#39;adreça d&#39;enviament,
Get Payments from,Obteniu pagaments de,
Set Shipping Address or Billing Address,Definiu l&#39;adreça d&#39;enviament o l&#39;adreça de facturació,
Consultation Setup,Configuració de la consulta,
Fee Validity,Valida tarifes,
Laboratory Setup,Configuració del laboratori,
Dosage Form,Forma de dosificació,
Records and History,Registres i història,
Patient Medical Record,Registre mèdic del pacient,
Rehabilitation,Rehabilitació,
Exercise Type,Tipus d’exercici,
Exercise Difficulty Level,Nivell de dificultat de l’exercici,
Therapy Type,Tipus de teràpia,
Therapy Plan,Pla de teràpia,
Therapy Session,Sessió de teràpia,
Motor Assessment Scale,Escala d’avaluació motora,
[Important] [ERPNext] Auto Reorder Errors,[Important] [ERPNext] Errors de reordenament automàtic,
"Regards,","Salutacions,",
The following {0} were created: {1},Es van crear els següents {0}: {1},
Work Orders,Comandes de treball,
The {0} {1} created sucessfully,El {0} {1} s&#39;ha creat correctament,
Work Order cannot be created for following reason: <br> {0},No es pot crear l&#39;ordre de treball pel motiu següent:<br> {0},
Add items in the Item Locations table,Afegiu elements a la taula Ubicacions d’elements,
Update Current Stock,Actualitza l&#39;estoc actual,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Retenir la mostra es basa en el lot, marqueu Té el lot per conservar la mostra de l&#39;element",
Empty,Buit,
Currently no stock available in any warehouse,Actualment no hi ha existències disponibles a cap magatzem,
BOM Qty,Quantitat BOM,
Time logs are required for {0} {1},Calen registres de temps per a {0} {1},
Total Completed Qty,Quantitat total completada,
Qty to Manufacture,Quantitat a fabricar,
Repay From Salary can be selected only for term loans,La devolució del salari només es pot seleccionar per a préstecs a termini,
No valid Loan Security Price found for {0},No s&#39;ha trobat cap preu de seguretat de préstec vàlid per a {0},
Loan Account and Payment Account cannot be same,El compte de préstec i el compte de pagament no poden ser els mateixos,
Loan Security Pledge can only be created for secured loans,La promesa de seguretat de préstecs només es pot crear per a préstecs garantits,
Social Media Campaigns,Campanyes de xarxes socials,
From Date can not be greater than To Date,Des de la data no pot ser superior a fins a la data,
Please set a Customer linked to the Patient,Configureu un client vinculat al pacient,
Customer Not Found,No s&#39;ha trobat el client,
Please Configure Clinical Procedure Consumable Item in ,Configureu l&#39;article consumible del procediment clínic a,
Missing Configuration,Falta la configuració,
Out Patient Consulting Charge Item,Consultar al pacient Punt de càrrec,
Inpatient Visit Charge Item,Article sobre càrrecs de càrrec hospitalari,
OP Consulting Charge,OP Consultancy Charge,
Inpatient Visit Charge,Càrrec d&#39;estada hospitalària,
Appointment Status,Estat de la cita,
Test: ,Prova:,
Collection Details: ,Detalls de la col·lecció:,
{0} out of {1},{0} de {1},
Select Therapy Type,Seleccioneu Tipus de teràpia,
{0} sessions completed,{0} sessions completades,
{0} session completed,S&#39;ha completat la sessió de {0},
 out of {0},de {0},
Therapy Sessions,Sessions de teràpia,
Add Exercise Step,Afegiu l&#39;exercici Pas,
Edit Exercise Step,Editeu el pas de l&#39;exercici,
Patient Appointments,Cites al pacient,
Item with Item Code {0} already exists,L&#39;element amb el codi d&#39;article {0} ja existeix,
Registration Fee cannot be negative or zero,La quota d’inscripció no pot ser negativa ni nul·la,
Configure a service Item for {0},Configureu un element de servei per a {0},
Temperature: ,Temperatura:,
Pulse: ,Pols:,
Respiratory Rate: ,Freqüència respiratòria:,
BP: ,TA:,
BMI: ,IMC:,
Note: ,Nota:,
Check Availability,Comprova disponibilitat,
Please select Patient first,Seleccioneu primer Pacient,
Please select a Mode of Payment first,Seleccioneu primer un mode de pagament,
Please set the Paid Amount first,Definiu primer l’import pagat,
Not Therapies Prescribed,No es prescriuen teràpies,
There are no Therapies prescribed for Patient {0},No hi ha teràpies prescrites per al pacient {0},
Appointment date and Healthcare Practitioner are Mandatory,La data de la cita i el professional sanitari són obligatoris,
No Prescribed Procedures found for the selected Patient,No s&#39;ha trobat cap procediment prescrit per al pacient seleccionat,
Please select a Patient first,Seleccioneu primer un pacient,
There are no procedure prescribed for ,No hi ha cap procediment prescrit,
Prescribed Therapies,Teràpies prescrites,
Appointment overlaps with ,La cita es solapa amb,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} té una cita programada amb {1} a les {2} amb una durada de {3} minuts.,
Appointments Overlapping,Cites que se superposen,
Consulting Charges: {0},Càrrecs de consultoria: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Cita cancel·lada. Reviseu i cancel·leu la factura {0},
Appointment Cancelled.,Cita cancel·lada.,
Fee Validity {0} updated.,S&#39;ha actualitzat la validesa de la tarifa {0}.,
Practitioner Schedule Not Found,No s’ha trobat l’horari del professional,
{0} is on a Half day Leave on {1},{0} és de baixa de mig dia el {1},
{0} is on Leave on {1},{0} és a Deixa el {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} no té un horari per a professionals de la salut. Afegiu-lo a Healthcare Practitioner,
Healthcare Service Units,Unitats de Servei Sanitari,
Complete and Consume,Completar i consumir,
Complete {0} and Consume Stock?,Voleu completar {0} i consumir estoc?,
Complete {0}?,Voleu completar {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,La quantitat d&#39;estoc per iniciar el procediment no està disponible al magatzem {0}. Voleu enregistrar una entrada d’estoc?,
{0} as on {1},{0} com a {1},
Clinical Procedure ({0}):,Procediment clínic ({0}):,
Please set Customer in Patient {0},Configureu el client a Pacient {0},
Item {0} is not active,L&#39;element {0} no està actiu,
Therapy Plan {0} created successfully.,El pla de teràpia {0} s&#39;ha creat correctament.,
Symptoms: ,Símptomes:,
No Symptoms,Sense símptomes,
Diagnosis: ,Diagnòstic:,
No Diagnosis,Sense diagnòstic,
Drug(s) Prescribed.,Medicament (s) prescrit (s).,
Test(s) Prescribed.,Prova (s) prescrita (s).,
Procedure(s) Prescribed.,Procediment prescrit.,
Counts Completed: {0},Comptes completats: {0},
Patient Assessment,Valoració del pacient,
Assessments,Avaluacions,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Capçaleres (o grups) contra els quals es mantenen els assentaments comptables i els saldos,
Account Name,Nom del Compte,
Inter Company Account,Compte d&#39;empresa Inter,
Parent Account,Compte primària,
Setting Account Type helps in selecting this Account in transactions.,Configurar el Tipus de compte ajuda en la selecció d'aquest compte en les transaccions.,
Chargeable,Facturable,
Rate at which this tax is applied,Rati a la qual s'aplica aquest impost,
Frozen,Bloquejat,
"If the account is frozen, entries are allowed to restricted users.","Si el compte està bloquejat, només es permeten entrades alguns usuaris.",
Balance must be,El balanç ha de ser,
Lft,Lft,
Rgt,Rgt,
Old Parent,Antic Pare,
Include in gross,Incloure en brut,
Auditor,Auditor,
Accounting Dimension,Dimensió comptable,
Dimension Name,Nom de la dimensió,
Dimension Defaults,Valors per defecte de la dimensió,
Accounting Dimension Detail,Detall de la comptabilitat,
Default Dimension,Dimensió predeterminada,
Mandatory For Balance Sheet,Obligatori per al balanç,
Mandatory For Profit and Loss Account,Obligatori per al compte de pèrdues i guanys,
Accounting Period,Període de comptabilitat,
Period Name,Nom del període,
Closed Documents,Documents tancats,
Accounts Settings,Ajustaments de comptabilitat,
Settings for Accounts,Ajustaments de Comptes,
Make Accounting Entry For Every Stock Movement,Feu Entrada Comptabilitat Per Cada moviment d'estoc,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Els usuaris amb aquest rol poden establir comptes bloquejats i crear/modificar els assentaments comptables contra els comptes bloquejats,
Determine Address Tax Category From,Determineu la categoria d’impost d’adreces de,
Over Billing Allowance (%),Percentatge de facturació superior (%),
Credit Controller,Credit Controller,
Check Supplier Invoice Number Uniqueness,Comprovar Proveïdor Nombre de factura Singularitat,
Make Payment via Journal Entry,Fa el pagament via entrada de diari,
Unlink Payment on Cancellation of Invoice,Desvinculació de Pagament a la cancel·lació de la factura,
Book Asset Depreciation Entry Automatically,Llibre d&#39;Actius entrada Depreciació automàticament,
Automatically Add Taxes and Charges from Item Tax Template,Afegiu automàticament impostos i càrrecs de la plantilla d’impost d’ítems,
Automatically Fetch Payment Terms,Recupera automàticament els termes de pagament,
Show Payment Schedule in Print,Mostra el calendari de pagaments a la impressió,
Currency Exchange Settings,Configuració de canvi de divises,
Allow Stale Exchange Rates,Permet els tipus d&#39;intercanvi moderats,
Stale Days,Stale Days,
Report Settings,Configuració de l&#39;informe,
Use Custom Cash Flow Format,Utilitzeu el format de flux de caixa personalitzat,
Allowed To Transact With,Permès transitar amb,
SWIFT number,Número SWIFT,
Branch Code,Codi de sucursal,
Address and Contact,Direcció i Contacte,
Address HTML,Adreça HTML,
Contact HTML,Contacte HTML,
Data Import Configuration,Configuració de la importació de dades,
Bank Transaction Mapping,Cartografia de transaccions bancàries,
Plaid Access Token,Fitxa d&#39;accés a escoces,
Company Account,Compte de l&#39;empresa,
Account Subtype,Subtipus del compte,
Is Default Account,És el compte per defecte,
Is Company Account,És el compte d&#39;empresa,
Party Details,Party Details,
Account Details,Detalls del compte,
IBAN,IBAN,
Bank Account No,Compte bancari núm,
Integration Details,Detalls de la integració,
Integration ID,ID d&#39;integració,
Last Integration Date,Última data d’integració,
Change this date manually to setup the next synchronization start date,Canvieu aquesta data manualment per configurar la següent data d&#39;inici de sincronització,
Mask,Màscara,
Bank Account Subtype,Subtipus de compte bancari,
Bank Account Type,Tipus de compte bancari,
Bank Guarantee,garantia bancària,
Bank Guarantee Type,Tipus de Garantia Bancària,
Receiving,Recepció,
Providing,Proporcionar,
Reference Document Name,Nom del document de referència,
Validity in Days,Validesa de Dies,
Bank Account Info,Informació del compte bancari,
Clauses and Conditions,Clàusules i condicions,
Other Details,Altres detalls,
Bank Guarantee Number,Nombre de Garantia Bancària,
Name of Beneficiary,Nom del beneficiari,
Margin Money,Marge de diners,
Charges Incurred,Despeses incorregudes,
Fixed Deposit Number,Número de dipòsit fixat,
Account Currency,Compte moneda,
Select the Bank Account to reconcile.,Seleccioneu el compte bancari per compatibilitzar-lo.,
Include Reconciled Entries,Inclogui els comentaris conciliades,
Get Payment Entries,Obtenir registres de pagament,
Payment Entries,Les entrades de pagament,
Update Clearance Date,Actualització Data Liquidació,
Bank Reconciliation Detail,Detall Conciliació Bancària,
Cheque Number,Número de Xec,
Cheque Date,Data Xec,
Statement Header Mapping,Assignació de capçalera de declaració,
Statement Headers,Capçaleres d&#39;estatus,
Transaction Data Mapping,Mapatge de dades de transaccions,
Mapped Items,Objectes assignats,
Bank Statement Settings Item,Element de configuració de la declaració del banc,
Mapped Header,Capçalera assignada,
Bank Header,Capçalera del banc,
Bank Statement Transaction Entry,Entrada de transacció de l&#39;extracte bancari,
Bank Transaction Entries,Entrades de transaccions bancàries,
New Transactions,Noves transaccions,
Match Transaction to Invoices,Transacció de coincidència amb les factures,
Create New Payment/Journal Entry,Crea un nou pagament / entrada de diari,
Submit/Reconcile Payments,Enviar / reconciliació de pagaments,
Matching Invoices,Combinació de factures,
Payment Invoice Items,Elements de factura de pagament,
Reconciled Transactions,Transaccions reconciliades,
Bank Statement Transaction Invoice Item,Estat de la factura de la factura de la transacció bancària,
Payment Description,Descripció del pagament,
Invoice Date,Data de la factura,
invoice,factura,
Bank Statement Transaction Payment Item,Estat del pagament del pagament de la transacció,
outstanding_amount,outstanding_amount,
Payment Reference,Referència de pagament,
Bank Statement Transaction Settings Item,Paràmetres de la transacció de l&#39;estat del banc,
Bank Data,Dades bancàries,
Mapped Data Type,Tipus de dades assignats,
Mapped Data,Dades assignades,
Bank Transaction,Transacció bancària,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,ID de transacció,
Unallocated Amount,Suma sense assignar,
Field in Bank Transaction,Camp a la transacció bancària,
Column in Bank File,Columna al fitxer del banc,
Bank Transaction Payments,Pagaments de transaccions bancàries,
Control Action,Acció de control,
Applicable on Material Request,Aplicable a la sol·licitud de material,
Action if Annual Budget Exceeded on MR,Acció si el pressupost anual es va superar a MR,
Warn,Advertir,
Ignore,Ignorar,
Action if Accumulated Monthly Budget Exceeded on MR,Acció si el pressupost mensual acumulat va superar el MR,
Applicable on Purchase Order,Aplicable a l&#39;ordre de compra,
Action if Annual Budget Exceeded on PO,Acció si el Pressupost Anual va superar la PO,
Action if Accumulated Monthly Budget Exceeded on PO,Acció si es va superar el pressupost mensual acumulat a la PO,
Applicable on booking actual expenses,Aplicable a la reserva de despeses reals,
Action if Annual Budget Exceeded on Actual,Acció si el Pressupost Anual es va superar a Actual,
Action if Accumulated Monthly Budget Exceeded on Actual,Acció si es va superar el pressupost mensual acumulat a Actual,
Budget Accounts,comptes Pressupost,
Budget Account,compte pressupostària,
Budget Amount,pressupost Monto,
C-Form,C-Form,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,C-Form No,
Received Date,Data de recepció,
Quarter,Trimestre,
I,jo,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,C-Form Invoice Detail,
Invoice No,Número de Factura,
Cash Flow Mapper,Cartera de flux d&#39;efectiu,
Section Name,Nom de la secció,
Section Header,Capçalera de secció,
Section Leader,Líder de secció,
e.g Adjustments for:,"per exemple, ajustaments per a:",
Section Subtotal,Subtotal de secció,
Section Footer,Peer de secció,
Position,Posició,
Cash Flow Mapping,Cartografia del flux d&#39;efectiu,
Select Maximum Of 1,Seleccioneu un màxim de 1,
Is Finance Cost,El cost financer,
Is Working Capital,És capital operatiu,
Is Finance Cost Adjustment,L&#39;ajust del cost financer,
Is Income Tax Liability,La responsabilitat fiscal de la renda,
Is Income Tax Expense,La despesa de l&#39;impost sobre la renda,
Cash Flow Mapping Accounts,Comptes de cartografia de fluxos d&#39;efectiu,
account,Compte,
Cash Flow Mapping Template,Plantilla de cartografia de fluxos d&#39;efectiu,
Cash Flow Mapping Template Details,Detalls de la plantilla d&#39;assignació de fluxos d&#39;efectiu,
POS-CLO-,POS-CLO-,
Custody,Custòdia,
Net Amount,Import Net,
Cashier Closing Payments,Caixer de tancament de pagaments,
Chart of Accounts Importer,Importador de plànols de comptes,
Import Chart of Accounts from a csv file,Importa la taula de comptes d&#39;un fitxer csv,
Attach custom Chart of Accounts file,Adjunteu un fitxer gràfic de comptes personalitzat,
Chart Preview,Vista prèvia del gràfic,
Chart Tree,Arbre gràfic,
Cheque Print Template,Plantilla d&#39;impressió de xecs,
Has Print Format,Format d&#39;impressió té,
Primary Settings,ajustos primaris,
Cheque Size,xec Mida,
Regular,regular,
Starting position from top edge,posició des de la vora superior de partida,
Cheque Width,ample Xec,
Cheque Height,xec Alçada,
Scanned Cheque,escanejada Xec,
Is Account Payable,És compte per pagar,
Distance from top edge,Distància des de la vora superior,
Distance from left edge,Distància des la vora esquerra,
Message to show,Missatge a mostrar,
Date Settings,Configuració de la data,
Starting location from left edge,Posició inicial des la vora esquerra,
Payer Settings,Configuració del pagador,
Width of amount in word,Amplada de l&#39;import de paraula,
Line spacing for amount in words,interlineat de la suma en paraules,
Amount In Figure,A la Figura quantitat,
Signatory Position,posició signatari,
Closed Document,Document tancat,
Track separate Income and Expense for product verticals or divisions.,Seguiment d'Ingressos i Despeses per separat per a les verticals de productes o divisions.,
Cost Center Name,Nom del centre de cost,
Parent Cost Center,Centre de Cost de Pares,
lft,LFT,
rgt,RGT,
Coupon Code,Codi de cupó,
Coupon Name,Nom del cupó,
"e.g. ""Summer Holiday 2019 Offer 20""","Per exemple, &quot;Oferta estival de vacances d&#39;estiu 2019&quot;",
Coupon Type,Tipus de cupó,
Promotional,Promocional,
Gift Card,Targeta Regal,
unique e.g. SAVE20  To be used to get discount,"exclusiu, per exemple, SAVE20 Per utilitzar-se per obtenir descompte",
Validity and Usage,Validesa i ús,
Valid From,Vàlid des de,
Valid Upto,Fins al vàlid,
Maximum Use,Ús màxim,
Used,Utilitzat,
Coupon Description,Descripció del cupó,
Discounted Invoice,Factura amb descompte,
Debit to,Dèbit a,
Exchange Rate Revaluation,Revaloració del tipus de canvi,
Get Entries,Obteniu entrades,
Exchange Rate Revaluation Account,Compte de revaloració de tipus de canvi,
Total Gain/Loss,Pèrdua / guany total,
Balance In Account Currency,Saldo en compte de divises,
Current Exchange Rate,Tipus de canvi actual,
Balance In Base Currency,Saldo en moneda base,
New Exchange Rate,Nou tipus de canvi,
New Balance In Base Currency,Nou saldo en moneda base,
Gain/Loss,Guany / pèrdua,
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,** Any Fiscal ** representa un exercici financer. Els assentaments comptables i altres transaccions importants es segueixen contra ** Any Fiscal **.,
Year Name,Nom Any,
"For e.g. 2012, 2012-13","Per exemple, 2012, 2012-13",
Year Start Date,Any Data d'Inici,
Year End Date,Any Data de finalització,
Companies,Empreses,
Auto Created,Creada automàticament,
Stock User,Fotografia de l&#39;usuari,
Fiscal Year Company,Any fiscal Companyia,
Debit Amount,Suma Dèbit,
Credit Amount,Suma de crèdit,
Debit Amount in Account Currency,Suma Dèbit en Compte moneda,
Credit Amount in Account Currency,Suma de crèdit en compte Moneda,
Voucher Detail No,Número de detall del comprovant,
Is Opening,Està obrint,
Is Advance,És Avanç,
To Rename,Per canviar el nom,
GST Account,Compte GST,
CGST Account,Compte CGST,
SGST Account,Compte SGST,
IGST Account,Compte IGST,
CESS Account,Compte CESS,
Loan Start Date,Data d&#39;inici del préstec,
Loan Period (Days),Període de préstec (dies),
Loan End Date,Data de finalització del préstec,
Bank Charges,Càrrecs bancaris,
Short Term Loan Account,Compte de préstec a curt termini,
Bank Charges Account,Compte de càrregues bancàries,
Accounts Receivable Credit Account,Comptes de crèdit a cobrar,
Accounts Receivable Discounted Account,Comptes a rebre amb el descompte,
Accounts Receivable Unpaid Account,Comptes a cobrar,
Item Tax Template,Plantilla d’impost d’ítems,
Tax Rates,Tipus d’impostos,
Item Tax Template Detail,Detall de plantilla fiscal,
Entry Type,Tipus d&#39;entrada,
Inter Company Journal Entry,Entrada de la revista Inter Company,
Bank Entry,Entrada Banc,
Cash Entry,Entrada Efectiu,
Credit Card Entry,Introducció d'una targeta de crèdit,
Contra Entry,Entrada Contra,
Excise Entry,Entrada impostos especials,
Write Off Entry,Escriu Off Entrada,
Opening Entry,Entrada Obertura,
ACC-JV-.YYYY.-,ACC-JV-.YYYY.-,
Accounting Entries,Assentaments comptables,
Total Debit,Dèbit total,
Total Credit,Crèdit Total,
Difference (Dr - Cr),Diferència (Dr - Cr),
Make Difference Entry,Feu Entrada Diferència,
Total Amount Currency,Suma total de divises,
Total Amount in Words,Suma total en Paraules,
Remark,Observació,
Paid Loan,Préstec pagat,
Inter Company Journal Entry Reference,Referència de l&#39;entrada de revista a l&#39;empresa Inter,
Write Off Based On,Anotació basada en,
Get Outstanding Invoices,Rep les factures pendents,
Write Off Amount,Import de cancel·lació,
Printing Settings,Paràmetres d&#39;impressió,
Pay To / Recd From,Pagar a/Rebut de,
Payment Order,Ordre de pagament,
Subscription Section,Secció de subscripció,
Journal Entry Account,Compte entrada de diari,
Account Balance,Saldo del compte,
Party Balance,Equilibri Partit,
Accounting Dimensions,Dimensions comptables,
If Income or Expense,Si ingressos o despeses,
Exchange Rate,Tipus De Canvi,
Debit in Company Currency,Dèbit a Companyia moneda,
Credit in Company Currency,Crèdit en moneda Companyia,
Payroll Entry,Entrada de nòmina,
Employee Advance,Avanç dels empleats,
Reference Due Date,Referència Data de venciment,
Loyalty Program Tier,Nivell del Programa de fidelització,
Redeem Against,Bescanviar contra,
Expiry Date,Data De Caducitat,
Loyalty Point Entry Redemption,Rescat de l&#39;entrada de punts de lleialtat,
Redemption Date,Data de reemborsament,
Redeemed Points,Punts redimits,
Loyalty Program Name,Nom del programa de fidelització,
Loyalty Program Type,Tipus de programa de fidelització,
Single Tier Program,Programa de nivell individual,
Multiple Tier Program,Programa de nivell múltiple,
Customer Territory,Territori de clients,
Auto Opt In (For all customers),Opció automàtica (per a tots els clients),
Collection Tier,Col.lecció Nivell,
Collection Rules,Regles de cobrament,
Redemption,Redempció,
Conversion Factor,Factor de conversió,
1 Loyalty Points = How much base currency?,1 Punts de fidelització = Quant moneda base?,
Expiry Duration (in days),Durada de caducitat (en dies),
Help Section,Secció d&#39;ajuda,
Loyalty Program Help,Ajuda del programa de lleialtat,
Loyalty Program Collection,Col·lecció de programes de lleialtat,
Tier Name,Nom del nivell,
Minimum Total Spent,Mínim total gastat,
Collection Factor (=1 LP),Factor de recopilació (= 1 LP),
For how much spent = 1 Loyalty Point,Quant gasteu = 1 punt de lleialtat,
Mode of Payment Account,Mode de Compte de Pagament,
Default Account,Compte predeterminat,
Default account will be automatically updated in POS Invoice when this mode is selected.,El compte predeterminada s&#39;actualitzarà automàticament a la factura POS quan aquest mode estigui seleccionat.,
**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.,** ** Distribució mensual ajuda a distribuir el pressupost / Target a través de mesos si té l&#39;estacionalitat del seu negoci.,
Distribution Name,Distribution Name,
Name of the Monthly Distribution,Nom de la Distribució Mensual,
Monthly Distribution Percentages,Els percentatges de distribució mensuals,
Monthly Distribution Percentage,Mensual Distribució percentual,
Percentage Allocation,Percentatge d'Assignació,
Create Missing Party,Crea partit desaparegut,
Create missing customer or supplier.,Crea un client o proveïdor que falti.,
Opening Invoice Creation Tool Item,Obrir l&#39;element de la eina de creació de la factura,
Temporary Opening Account,Compte d&#39;obertura temporal,
Party Account,Compte Partit,
Type of Payment,Tipus de Pagament,
ACC-PAY-.YYYY.-,ACC-PAY -YYYY.-,
Receive,Rebre,
Internal Transfer,transferència interna,
Payment Order Status,Estat de l’ordre de pagament,
Payment Ordered,Pagament sol·licitat,
Payment From / To,El pagament de / a,
Company Bank Account,Compte bancari de l&#39;empresa,
Party Bank Account,Compte bancari del partit,
Account Paid From,De compte de pagament,
Account Paid To,Compte pagat fins,
Paid Amount (Company Currency),Suma Pagat (Companyia moneda),
Received Amount,quantitat rebuda,
Received Amount (Company Currency),Quantitat rebuda (Companyia de divises),
Get Outstanding Invoice,Obteniu una factura excepcional,
Payment References,Referències de pagament,
Writeoff,Demanar-ho per escrit,
Total Allocated Amount,total assignat,
Total Allocated Amount (Company Currency),Total assignat (Companyia de divises),
Set Exchange Gain / Loss,Ajust de guany de l&#39;intercanvi / Pèrdua,
Difference Amount (Company Currency),Diferència Suma (Companyia de divises),
Write Off Difference Amount,Amortitzar import de la diferència,
Deductions or Loss,Deduccions o Pèrdua,
Payment Deductions or Loss,Les deduccions de pagament o pèrdua,
Cheque/Reference Date,Xec / Data de referència,
Payment Entry Deduction,El pagament Deducció d&#39;entrada,
Payment Entry Reference,El pagament d&#39;entrada de referència,
Allocated,Situat,
Payment Gateway Account,Compte Passarel·la de Pagament,
Payment Account,Compte de Pagament,
Default Payment Request Message,Defecte de sol·licitud de pagament del missatge,
PMO-,PMO-,
Payment Order Type,Tipus de comanda de pagament,
Payment Order Reference,Referència de comanda de pagament,
Bank Account Details,Detalls del compte bancari,
Payment Reconciliation,Reconciliació de Pagaments,
Receivable / Payable Account,Compte de cobrament / pagament,
Bank / Cash Account,Compte Bancari / Efectiu,
From Invoice Date,Des Data de la factura,
To Invoice Date,Per Factura,
Minimum Invoice Amount,Volum mínim Factura,
Maximum Invoice Amount,Import Màxim Factura,
System will fetch all the entries if limit value is zero.,El sistema buscarà totes les entrades si el valor límit és zero.,
Get Unreconciled Entries,Aconsegueix entrades no reconciliades,
Unreconciled Payment Details,Detalls de Pagaments Sense conciliar,
Invoice/Journal Entry Details,Factura / Diari Detalls de l'entrada,
Payment Reconciliation Invoice,Factura de Pagament de Reconciliació,
Invoice Number,Número de factura,
Payment Reconciliation Payment,Payment Reconciliation Payment,
Reference Row,referència Fila,
Allocated amount,Monto assignat,
Payment Request Type,Tipus de sol·licitud de pagament,
Outward,Cap a fora,
Inward,Endins,
ACC-PRQ-.YYYY.-,ACC-PRQ-.YYYY.-,
Transaction Details,Detalls de la transacció,
Amount in customer's currency,Suma de la moneda del client,
Is a Subscription,És una subscripció,
Transaction Currency,moneda de la transacció,
Subscription Plans,Plans de subscripció,
SWIFT Number,Número SWIFT,
Recipient Message And Payment Details,Missatge receptor i formes de pagament,
Make Sales Invoice,Fer Factura Vendes,
Mute Email,Silenciar-mail,
payment_url,payment_url,
Payment Gateway Details,Passarel·la de Pagaments detalls,
Payment Schedule,Calendari de pagaments,
Invoice Portion,Factura de la porció,
Payment Amount,Quantitat de pagament,
Payment Term Name,Nom del terme de pagament,
Due Date Based On,Data de venciment basada,
Day(s) after invoice date,Dia (s) després de la data de la factura,
Day(s) after the end of the invoice month,Dia (s) després del final del mes de la factura,
Month(s) after the end of the invoice month,Mes (s) després del final del mes de la factura,
Credit Days,Dies de Crèdit,
Credit Months,Mesos de Crèdit,
Allocate Payment Based On Payment Terms,Assigneu el pagament en funció de les condicions de pagament,
"If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term","Si es marca aquesta casella de selecció, l&#39;import pagat es dividirà i s&#39;assignarà segons els imports del calendari de pagaments per a cada termini de pagament",
Payment Terms Template Detail,Detall de plantilla de termes de pagament,
Closing Fiscal Year,Tancant l'Any Fiscal,
Closing Account Head,Tancant el Compte principal,
"The account head under Liability or Equity, in which Profit/Loss will be booked","El capçal compte sota passiu o patrimoni, en el qual serà reservat Guany / Pèrdua",
POS Customer Group,POS Grup de Clients,
POS Field,Camp POS,
POS Item Group,POS Grup d&#39;articles,
Company Address,Direcció de l&#39;empresa,
Update Stock,Actualització de Stock,
Ignore Pricing Rule,Ignorar Regla preus,
Applicable for Users,Aplicable per als usuaris,
Sales Invoice Payment,El pagament de factures de vendes,
Item Groups,els grups d&#39;articles,
Only show Items from these Item Groups,Mostra només els articles d’aquests grups d’elements,
Customer Groups,Grups de clients,
Only show Customer of these Customer Groups,Mostra només el client d’aquests grups de clients,
Write Off Account,Escriu Off Compte,
Write Off Cost Center,Escriu Off Centre de Cost,
Account for Change Amount,Compte per al Canvi Monto,
Taxes and Charges,Impostos i càrrecs,
Apply Discount On,Aplicar de descompte en les,
POS Profile User,Usuari de perfil de TPV,
Apply On,Aplicar a,
Price or Product Discount,Preu o descompte del producte,
Apply Rule On Item Code,Aplica la regla del codi de l&#39;article,
Apply Rule On Item Group,Aplica la regla del grup d’elements,
Apply Rule On Brand,Aplica la regla sobre la marca,
Mixed Conditions,Condicions mixtes,
Conditions will be applied on all the selected items combined. ,S’aplicaran les condicions sobre tots els ítems seleccionats combinats.,
Is Cumulative,És acumulatiu,
Coupon Code Based,Basat en codi de cupó,
Discount on Other Item,Descompte en un altre article,
Apply Rule On Other,Aplica la regla sobre les altres,
Party Information,Informació del partit,
Quantity and Amount,Quantitat i quantitat,
Min Qty,Quantitat mínima,
Max Qty,Quantitat màxima,
Min Amt,Amt mín,
Max Amt,Max Amt,
Period Settings,Configuració del període,
Margin,Marge,
Margin Type,tipus marge,
Margin Rate or Amount,Taxa de marge o Monto,
Price Discount Scheme,Règim de descompte de preus,
Rate or Discount,Tarifa o descompte,
Discount Percentage,%Descompte,
Discount Amount,Quantitat de Descompte,
For Price List,Per Preu,
Product Discount Scheme,Esquema de descompte del producte,
Same Item,El mateix article,
Free Item,Article gratuït,
Threshold for Suggestion,Llindar de suggeriments,
System will notify to increase or decrease quantity or amount ,El sistema notificarà per augmentar o disminuir quantitat o quantitat,
"Higher the number, higher the priority","Més gran sigui el nombre, més gran és la prioritat",
Apply Multiple Pricing Rules,Aplica normes de preus múltiples,
Apply Discount on Rate,Apliqueu el descompte sobre la tarifa,
Validate Applied Rule,Validar la regla aplicada,
Rule Description,Descripció de la regla,
Pricing Rule Help,Ajuda de la Regla de preus,
Promotional Scheme Id,Identificador del règim promocional,
Promotional Scheme,Règim promocional,
Pricing Rule Brand,Marca de regla de preus,
Pricing Rule Detail,Detall de la regla de preus,
Child Docname,Nom del document fill,
Rule Applied,Regla aplicada,
Pricing Rule Item Code,Codi de l&#39;article de la regla de preus,
Pricing Rule Item Group,Grup d’articles de la regla de preus,
Price Discount Slabs,Lloses de descompte en preu,
Promotional Scheme Price Discount,Escompte de preus en règim promocional,
Product Discount Slabs,Lloses de descompte de producte,
Promotional Scheme Product Discount,Esquema de promoció Descompte de producte,
Min Amount,Import mínim,
Max Amount,Import màxim,
Discount Type,Tipus de descompte,
ACC-PINV-.YYYY.-,ACC-PINV -YYYY.-,
Tax Withholding Category,Categoria de retenció d&#39;impostos,
Edit Posting Date and Time,Edita data i hora d&#39;enviament,
Is Paid,es paga,
Is Return (Debit Note),És retorn (Nota de dèbit),
Apply Tax Withholding Amount,Apliqueu la quantitat de retenció d&#39;impostos,
Accounting Dimensions ,Dimensions comptables,
Supplier Invoice Details,Detalls de la factura del proveïdor,
Supplier Invoice Date,Data Factura Proveïdor,
Return Against Purchase Invoice,Retorn Contra Compra Factura,
Select Supplier Address,Seleccionar adreça del proveïdor,
Contact Person,Persona De Contacte,
Select Shipping Address,Seleccioneu l&#39;adreça d&#39;enviament,
Currency and Price List,Moneda i Preus,
Price List Currency,Price List Currency,
Price List Exchange Rate,Tipus de canvi per a la llista de preus,
Set Accepted Warehouse,Magatzem acceptat,
Rejected Warehouse,Magatzem no conformitats,
Warehouse where you are maintaining stock of rejected items,Magatzem en què es desen les existències dels articles rebutjats,
Raw Materials Supplied,Matèries primeres subministrades,
Supplier Warehouse,Magatzem Proveïdor,
Pricing Rules,Normes de preus,
Supplied Items,Articles subministrats,
Total (Company Currency),Total (Companyia moneda),
Net Total (Company Currency),Net Total (En la moneda de la Companyia),
Total Net Weight,Pes net total,
Shipping Rule,Regla d'enviament,
Purchase Taxes and Charges Template,Compra les taxes i càrrecs Plantilla,
Purchase Taxes and Charges,Compra Impostos i Càrrecs,
Tax Breakup,desintegració impostos,
Taxes and Charges Calculation,Impostos i Càrrecs Càlcul,
Taxes and Charges Added (Company Currency),Impostos i Càrrecs Afegits (Divisa de la Companyia),
Taxes and Charges Deducted (Company Currency),Impostos i despeses deduïdes (Companyia moneda),
Total Taxes and Charges (Company Currency),Total Impostos i càrrecs (En la moneda de la Companyia),
Taxes and Charges Added,Impostos i càrregues afegides,
Taxes and Charges Deducted,Impostos i despeses deduïdes,
Total Taxes and Charges,Total d'impostos i càrrecs,
Additional Discount,Descompte addicional,
Apply Additional Discount On,Aplicar addicional de descompte en les,
Additional Discount Amount (Company Currency),Import addicional de descompte (moneda Company),
Additional Discount Percentage,Percentatge de descompte addicional,
Additional Discount Amount,Import de descompte addicional,
Grand Total (Company Currency),Total (En la moneda de la companyia),
Rounding Adjustment (Company Currency),Ajust d&#39;arrodoniment (moneda d&#39;empresa),
Rounded Total (Company Currency),Total arrodonit (en la divisa de la companyia),
In Words (Company Currency),En paraules (Divisa de la Companyia),
Rounding Adjustment,Ajust de redondeig,
In Words,En Paraules,
Total Advance,Avanç total,
Disable Rounded Total,Desactivar total arrodonit,
Cash/Bank Account,Compte de Caixa / Banc,
Write Off Amount (Company Currency),Escriu Off Import (Companyia moneda),
Set Advances and Allocate (FIFO),Establir avenços i assignar (FIFO),
Get Advances Paid,Obtenir bestretes pagades,
Advances,Advances,
Terms,Condicions,
Terms and Conditions1,Termes i Condicions 1,
Group same items,Grup mateixos articles,
Print Language,Llenguatge d&#39;impressió,
"Once set, this invoice will be on hold till the set date","Una vegada configurat, aquesta factura estarà en espera fins a la data establerta",
Credit To,Crèdit Per,
Party Account Currency,Compte Partit moneda,
Against Expense Account,Contra el Compte de Despeses,
Inter Company Invoice Reference,Referència a la factura de la companyia Inter,
Is Internal Supplier,És proveïdor intern,
Start date of current invoice's period,Data inicial del període de facturació actual,
End date of current invoice's period,Data de finalització del període de facturació actual,
Update Auto Repeat Reference,Actualitza la referència de repetició automàtica,
Purchase Invoice Advance,Factura de compra anticipada,
Purchase Invoice Item,Compra Factura article,
Quantity and Rate,Quantitat i taxa,
Received Qty,Quantitat rebuda,
Accepted Qty,Quantitat acceptada,
Rejected Qty,rebutjat Quantitat,
UOM Conversion Factor,UOM factor de conversió,
Discount on Price List Rate (%),Descompte Preu de llista Taxa (%),
Price List Rate (Company Currency),Tarifa de preus (en la moneda de la companyia),
Rate ,Tarifa,
Rate (Company Currency),Rate (Companyia moneda),
Amount (Company Currency),Import (Companyia moneda),
Is Free Item,És l’article gratuït,
Net Rate,Taxa neta,
Net Rate (Company Currency),Taxa neta (Companyia moneda),
Net Amount (Company Currency),Import net (Companyia moneda),
Item Tax Amount Included in Value,Element d&#39;import de la quantitat inclòs en el valor,
Landed Cost Voucher Amount,Landed Cost Monto Voucher,
Raw Materials Supplied Cost,Cost matèries primeres subministrades,
Accepted Warehouse,Magatzem Acceptat,
Serial No,Número de sèrie,
Rejected Serial No,Número de sèrie Rebutjat,
Expense Head,Cap de despeses,
Is Fixed Asset,És actiu fix,
Asset Location,Ubicació de l&#39;actiu,
Deferred Expense,Despeses diferides,
Deferred Expense Account,Compte de despeses diferit,
Service Stop Date,Data de parada del servei,
Enable Deferred Expense,Activa la despesa diferida,
Service Start Date,Data de començament del servei,
Service End Date,Data de finalització del servei,
Allow Zero Valuation Rate,Permetre zero taxa de valorització,
Item Tax Rate,Element Tipus impositiu,
Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,Impost taula de detalls descarregui de mestre d'articles com una cadena i emmagatzemada en aquest camp.\n S'utilitza per a les taxes i càrrecs,
Purchase Order Item,Ordre de compra d'articles,
Purchase Receipt Detail,Detall de rebuda de compra,
Item Weight Details,Detalls del pes de l&#39;element,
Weight Per Unit,Pes per unitat,
Total Weight,Pes total,
Weight UOM,UDM del pes,
Page Break,Salt de pàgina,
Consider Tax or Charge for,Consider Tax or Charge for,
Valuation and Total,Valoració i total,
Valuation,Valoració,
Add or Deduct,Afegir o Deduir,
Deduct,Deduir,
On Previous Row Amount,A limport de la fila anterior,
On Previous Row Total,Total fila anterior,
On Item Quantity,Quantitat de l&#39;article,
Reference Row #,Referència Fila #,
Is this Tax included in Basic Rate?,Aqeust impost està inclòs a la tarifa bàsica?,
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","If checked, the tax amount will be considered as already included in the Print Rate / Print Amount",
Account Head,Cap Compte,
Tax Amount After Discount Amount,Suma d'impostos Després del Descompte,
Item Wise Tax Detail ,Article Detall fiscal savi,
"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.","Plantilla de gravamen que es pot aplicar a totes les operacions de compra. Aquesta plantilla pot contenir llista de caps d'impostos i també altres caps de despeses com ""enviament"", ""Assegurances"", ""Maneig"", etc. \n\n #### Nota \n\n El tipus impositiu es defineix aquí serà el tipus de gravamen general per a tots els articles ** **. Si hi ha ** ** Els articles que tenen diferents taxes, han de ser afegits en l'Impost ** ** Article taula a l'article ** ** mestre.\n\n #### Descripció de les Columnes \n\n 1. Tipus de Càlcul: \n - Això pot ser en ** Net Total ** (que és la suma de la quantitat bàsica).\n - ** En Fila Anterior total / import ** (per impostos o càrrecs acumulats). Si seleccioneu aquesta opció, l'impost s'aplica com un percentatge de la fila anterior (a la taula d'impostos) Quantitat o total.\n - Actual ** ** (com s'ha esmentat).\n 2. Compte Cap: El llibre major de comptes en què es va reservar aquest impost \n 3. Centre de Cost: Si l'impost / càrrega és un ingrés (com l'enviament) o despesa en què ha de ser reservat en contra d'un centre de costos.\n 4. Descripció: Descripció de l'impost (que s'imprimiran en factures / cometes).\n 5. Rate: Taxa d'impost.\n Juny. Quantitat: Quantitat d'impost.\n 7. Total: Total acumulat fins aquest punt.\n 8. Introdueixi Row: Si es basa en ""Anterior Fila Total"" es pot seleccionar el nombre de la fila que serà pres com a base per a aquest càlcul (per defecte és la fila anterior).\n Setembre. Penseu impost o càrrec per: En aquesta secció es pot especificar si l'impost / càrrega és només per a la valoració (no una part del total) o només per al total (no afegeix valor a l'element) o per tots dos.\n 10. Afegir o deduir: Si vostè vol afegir o deduir l'impost.",
Salary Component Account,Compte Nòmina Component,
Default Bank / Cash account will be automatically updated in Salary Journal Entry when this mode is selected.,Defecte del compte bancari / efectiu s&#39;actualitzarà automàticament en el Salari entrada de diari quan es selecciona aquesta manera.,
ACC-SINV-.YYYY.-,ACC-SINV -YYYY.-,
Include Payment (POS),Incloure Pagament (POS),
Offline POS Name,Desconnectat Nom POS,
Is Return (Credit Note),És retorn (Nota de crèdit),
Return Against Sales Invoice,Retorn Contra Vendes Factura,
Update Billed Amount in Sales Order,Actualitza la quantitat facturada en l&#39;ordre de venda,
Customer PO Details,Detalls de la PO dels clients,
Customer's Purchase Order,Àrea de clients Ordre de Compra,
Customer's Purchase Order Date,Data de l'ordre de compra del client,
Customer Address,Direcció del client,
Shipping Address Name,Nom de l'Adreça d'enviament,
Company Address Name,Direcció Nom de l&#39;empresa,
Rate at which Customer Currency is converted to customer's base currency,Canvi al qual la divisa del client es converteix la moneda base del client,
Rate at which Price list currency is converted to customer's base currency,Velocitat a la qual la llista de preus de divises es converteix la moneda base del client,
Set Source Warehouse,Magatzem Source Source,
Packing List,Llista De Embalatge,
Packed Items,Dinar Articles,
Product Bundle Help,Producte Bundle Ajuda,
Time Sheet List,Llista de fulls de temps,
Time Sheets,Els fulls d&#39;assistència,
Total Billing Amount,Suma total de facturació,
Sales Taxes and Charges Template,Impostos i càrrecs de venda de plantilla,
Sales Taxes and Charges,Els impostos i càrrecs de venda,
Loyalty Points Redemption,Punts de lleialtat Redenció,
Redeem Loyalty Points,Canvieu els punts de fidelització,
Redemption Account,Compte de rescat,
Redemption Cost Center,Centre de costos de reemborsament,
In Words will be visible once you save the Sales Invoice.,En paraules seran visibles un cop que guardi la factura de venda.,
Allocate Advances Automatically (FIFO),Assigna avanços automàticament (FIFO),
Get Advances Received,Obtenir les bestretes rebudes,
Base Change Amount (Company Currency),Base quantitat de canvi (moneda de l&#39;empresa),
Write Off Outstanding Amount,Write Off Outstanding Amount,
Terms and Conditions Details,Termes i Condicions Detalls,
Is Internal Customer,El client intern,
Is Discounted,Està descomptat,
Unpaid and Discounted,No pagat i amb descompte,
Overdue and Discounted,Retardat i descomptat,
Accounting Details,Detalls de Comptabilitat,
Debit To,Per Dèbit,
Is Opening Entry,És assentament d'obertura,
C-Form Applicable,C-Form Applicable,
Commission Rate (%),Comissió (%),
Sales Team1,Equip de Vendes 1,
Against Income Account,Contra el Compte d'Ingressos,
Sales Invoice Advance,Factura proforma,
Advance amount,Quantitat Anticipada,
Sales Invoice Item,Factura Sales Item,
Customer's Item Code,Del client Codi de l'article,
Brand Name,Marca,
Qty as per Stock UOM,La quantitat d'existències ha d'estar expresada en la UDM,
Discount and Margin,Descompte i Marge,
Rate With Margin,Amb la taxa de marge,
Discount (%) on Price List Rate with Margin,Descompte (%) sobre el preu de llista tarifa amb Marge,
Rate With Margin (Company Currency),Taxa amb marge (moneda d&#39;empresa),
Delivered By Supplier,Lliurat per proveïdor,
Deferred Revenue,Ingressos diferits,
Deferred Revenue Account,Compte d&#39;ingressos diferits,
Enable Deferred Revenue,Activa els ingressos diferits,
Stock Details,Estoc detalls,
Customer Warehouse (Optional),Magatzem al client (opcional),
Available Batch Qty at Warehouse,Disponible lot Quantitat en magatzem,
Available Qty at Warehouse,Disponible Quantitat en magatzem,
Delivery Note Item,Nota de lliurament d'articles,
Base Amount (Company Currency),Import base (Companyia de divises),
Sales Invoice Timesheet,Factura de venda de parts d&#39;hores,
Time Sheet,Horari,
Billing Hours,Hores de facturació,
Timesheet Detail,Detall de part d&#39;hores,
Tax Amount After Discount Amount (Company Currency),Suma d&#39;impostos Després Quantitat de Descompte (Companyia moneda),
Item Wise Tax Detail,Detall d'impostos de tots els articles,
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.","Plantilla de gravamen que es pot aplicar a totes les transaccions de venda. Aquesta plantilla pot contenir llista de caps d'impostos i també altres caps de despeses / ingressos com ""enviament"", ""Assegurances"", ""Maneig"", etc. \n\n #### Nota \n\n La taxa d'impost que definir aquí serà el tipus impositiu general per a tots els articles ** **. Si hi ha ** ** Els articles que tenen diferents taxes, han de ser afegits en l'Impost ** ** Article taula a l'article ** ** mestre.\n\n #### Descripció de les Columnes \n\n 1. Tipus de Càlcul: \n - Això pot ser en ** Net Total ** (que és la suma de la quantitat bàsica).\n - ** En Fila Anterior total / import ** (per impostos o càrrecs acumulats). Si seleccioneu aquesta opció, l'impost s'aplica com un percentatge de la fila anterior (a la taula d'impostos) Quantitat o total.\n - Actual ** ** (com s'ha esmentat).\n 2. Compte Cap: El llibre major de comptes en què es va reservar aquest impost \n 3. Centre de Cost: Si l'impost / càrrega és un ingrés (com l'enviament) o despesa en què ha de ser reservat en contra d'un centre de costos.\n 4. Descripció: Descripció de l'impost (que s'imprimiran en factures / cometes).\n 5. Rate: Taxa d'impost.\n Juny. Quantitat: Quantitat d'impost.\n 7. Total: Total acumulat fins aquest punt.\n 8. Introdueixi Row: Si es basa en ""Anterior Fila Total"" es pot seleccionar el nombre de la fila que serà pres com a base per a aquest càlcul (per defecte és la fila anterior).\n Setembre. És aquesta Impostos inclosos en Taxa Bàsica?: Marcant això, vol dir que aquest impost no es mostrarà sota de la taula de partides, però serà inclòs en la tarifa bàsica de la taula principal element. Això és útil en la qual desitja donar un preu fix (inclosos tots els impostos) preu als clients.",
* Will be calculated in the transaction.,* Es calcularà en la transacció.,
From No,Del núm,
To No,No,
Is Company,És l&#39;empresa,
Current State,Estat actual,
Purchased,Comprat,
From Shareholder,De l&#39;accionista,
From Folio No,Des del Folio núm,
To Shareholder,A l&#39;accionista,
To Folio No,A Folio núm,
Equity/Liability Account,Compte de Patrimoni / Responsabilitat,
Asset Account,Compte d&#39;actius,
(including),(incloent-hi),
ACC-SH-.YYYY.-,ACC-SH-.YYYY.-,
Folio no.,Folio no.,
Address and Contacts,Adreça i contactes,
Contact List,Llista de contactes,
Hidden list maintaining the list of contacts linked to Shareholder,Llista oculta que manté la llista de contactes enllaçats amb l&#39;accionista,
Specify conditions to calculate shipping amount,Especifica les condicions d'enviament per calcular l'import del transport,
Shipping Rule Label,Regla Etiqueta d'enviament,
example: Next Day Shipping,exemple: Enviament Dia següent,
Shipping Rule Type,Tipus de regla d&#39;enviament,
Shipping Account,Compte d'Enviaments,
Calculate Based On,Calcula a causa del,
Fixed,S&#39;ha solucionat,
Net Weight,Pes Net,
Shipping Amount,Total de l'enviament,
Shipping Rule Conditions,Condicions d'enviament,
Restrict to Countries,Restringeix als països,
Valid for Countries,Vàlid per als Països,
Shipping Rule Condition,Condicions d'enviaments,
A condition for a Shipping Rule,Una condició per a una regla d'enviament,
From Value,De Valor,
To Value,Per Valor,
Shipping Rule Country,Regla País d&#39;enviament,
Subscription Period,Període de subscripció,
Subscription Start Date,Data d&#39;inici de la subscripció,
Cancelation Date,Data de cancel·lació,
Trial Period Start Date,Data de començament del període de prova,
Trial Period End Date,Període de prova Data de finalització,
Current Invoice Start Date,Data d&#39;inici de factura actual,
Current Invoice End Date,Data de finalització de la factura actual,
Days Until Due,Dies fins a vençuts,
Number of days that the subscriber has to pay invoices generated by this subscription,Nombre de dies que el subscriptor ha de pagar les factures generades per aquesta subscripció,
Cancel At End Of Period,Cancel·la al final de període,
Generate Invoice At Beginning Of Period,Genera la factura al principi del període,
Plans,Plans,
Discounts,Descomptes,
Additional DIscount Percentage,Percentatge de descompte addicional,
Additional DIscount Amount,Import addicional de descompte,
Subscription Invoice,Factura de subscripció,
Subscription Plan,Pla de subscripció,
Cost,Cost,
Billing Interval,Interval de facturació,
Billing Interval Count,Compte d&#39;interval de facturació,
"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","Nombre d&#39;intervals per al camp d&#39;interval, per exemple, si l&#39;interval és &quot;Dies&quot; i el recompte d&#39;interval de facturació és de 3, es generaran factures cada 3 dies.",
Payment Plan,Pla de pagament,
Subscription Plan Detail,Detall del pla de subscripció,
Plan,Pla,
Subscription Settings,Configuració de la subscripció,
Grace Period,Període de gràcia,
Number of days after invoice date has elapsed before canceling subscription or marking subscription as unpaid,El nombre de dies després de la data de la factura ha passat abans de cancel·lar la subscripció o la subscripció de marca com a no remunerada,
Prorate,Prorate,
Tax Rule,Regla Fiscal,
Tax Type,Tipus d&#39;Impostos,
Use for Shopping Cart,L&#39;ús per Compres,
Billing City,Facturació Ciutat,
Billing County,Comtat de facturació,
Billing State,Estat de facturació,
Billing Zipcode,Codi Postal de Facturació,
Billing Country,Facturació País,
Shipping City,Enviaments City,
Shipping County,Comtat d&#39;enviament,
Shipping State,Estat de l&#39;enviament,
Shipping Zipcode,Codi postal d&#39;enviament,
Shipping Country,País d&#39;enviament,
Tax Withholding Account,Compte de retenció d&#39;impostos,
Tax Withholding Rates,Taxes de retenció d&#39;impostos,
Rates,Tarifes,
Tax Withholding Rate,Taxa de retenció d&#39;impostos,
Single Transaction Threshold,Llindar d&#39;una sola transacció,
Cumulative Transaction Threshold,Llindar de transacció acumulativa,
Agriculture Analysis Criteria,Criteris d&#39;anàlisi agrícola,
Linked Doctype,Doctype enllaçat,
Water Analysis,Anàlisi de l&#39;aigua,
Soil Analysis,Anàlisi del sòl,
Plant Analysis,Anàlisi de plantes,
Fertilizer,Fertilitzant,
Soil Texture,Textura del sòl,
Weather,El temps,
Agriculture Manager,Gerent d&#39;Agricultura,
Agriculture User,Usuari de l&#39;agricultura,
Agriculture Task,Tasca de l&#39;agricultura,
Task Name,Nom de tasca,
Start Day,Dia d&#39;inici,
End Day,Dia final,
Holiday Management,Gestió de vacances,
Ignore holidays,Ignora les vacances,
Previous Business Day,Dia laborable anterior,
Next Business Day,Proper dia laborable,
Urgent,Urgent,
Crop,Cultiu,
Crop Name,Nom del cultiu,
Scientific Name,Nom científic,
"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.. ","Podeu definir totes les tasques que cal dur a terme aquí. El camp del dia s&#39;utilitza per esmentar el dia en què s&#39;ha de dur a terme la tasca, 1 és el primer dia, etc.",
Crop Spacing,Espaiat de cultiu,
Crop Spacing UOM,UOM d&#39;espaiat de cultiu,
Row Spacing,Espaiat de fila,
Row Spacing UOM,UOM de l&#39;espaiat de files,
Perennial,Perenne,
Biennial,Biennal,
Planting UOM,Plantar UOM,
Planting Area,Àrea de plantació,
Yield UOM,Rendiment UOM,
Materials Required,Materials obligatoris,
Produced Items,Articles produïts,
Produce,Produir,
Byproducts,Subproductes,
Linked Location,Ubicació enllaçada,
A link to all the Locations in which the Crop is growing,Un enllaç a totes les ubicacions en què el Cultiu creix,
This will be day 1 of the crop cycle,Aquest serà el dia 1 del cicle del cultiu,
ISO 8601 standard,Estàndard ISO 8601,
Cycle Type,Tipus de cicle,
Less than a year,Menys d&#39;un any,
The minimum length between each plant in the field for optimum growth,La longitud mínima entre cada planta del camp per a un creixement òptim,
The minimum distance between rows of plants for optimum growth,La distància mínima entre files de plantes per a un creixement òptim,
Detected Diseases,Malalties detectades,
List of diseases detected on the field. When selected it'll automatically add a list of tasks to deal with the disease ,"Llista de malalties detectades al camp. Quan estigui seleccionat, afegirà automàticament una llista de tasques per fer front a la malaltia",
Detected Disease,Malaltia detectada,
LInked Analysis,Anàlisi lliscada,
Disease,Malaltia,
Tasks Created,Tasques creades,
Common Name,Nom comú,
Treatment Task,Tasca del tractament,
Treatment Period,Període de tractament,
Fertilizer Name,Nom del fertilitzant,
Density (if liquid),Densitat (si és líquid),
Fertilizer Contents,Contingut de fertilitzants,
Fertilizer Content,Contingut d&#39;abonament,
Linked Plant Analysis,Anàlisi de plantes enllaçades,
Linked Soil Analysis,Anàlisi del sòl enllaçat,
Linked Soil Texture,Textura de sòl enllaçada,
Collection Datetime,Col · lecció Datetime,
Laboratory Testing Datetime,Prova de laboratori Datetime,
Result Datetime,Datetime de resultats,
Plant Analysis Criterias,Criteris d&#39;anàlisi de plantes,
Plant Analysis Criteria,Criteris d&#39;anàlisi de plantes,
Minimum Permissible Value,Valor mínim permès,
Maximum Permissible Value,Valor màxim permès,
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,Els criteris d&#39;anàlisi del sòl,
Soil Analysis Criteria,Criteris d&#39;anàlisi del sòl,
Soil Type,Tipus de sòl,
Loamy Sand,Loamy Sand,
Sandy Loam,Sandy Loam,
Loam,Loam,
Silt Loam,Silt Loam,
Sandy Clay Loam,Sandy Clay Loam,
Clay Loam,Clay Loam,
Silty Clay Loam,Silty Clay Loam,
Sandy Clay,Sandy Clay,
Silty Clay,Silty Clay,
Clay Composition (%),Composició de fang (%),
Sand Composition (%),Composició de sorra (%),
Silt Composition (%),Composició de sèrum (%),
Ternary Plot,Parcel·la ternària,
Soil Texture Criteria,Criteris de textura del sòl,
Type of Sample,Tipus d&#39;exemple,
Container,Contenidor,
Origin,Origen,
Collection Temperature ,Temperatura de recollida,
Storage Temperature,Temperatura del magatzem,
Appearance,Aparença,
Person Responsible,Persona Responsable,
Water Analysis Criteria,Criteris d&#39;anàlisi de l&#39;aigua,
Weather Parameter,Paràmetre del temps,
ACC-ASS-.YYYY.-,ACC-ASS-.YYYY.-,
Asset Owner,Propietari d&#39;actius,
Asset Owner Company,Propietari de l&#39;empresa propietària,
Custodian,Custòdia,
Disposal Date,disposició Data,
Journal Entry for Scrap,Entrada de diari de la ferralla,
Available-for-use Date,Data disponible per a ús,
Calculate Depreciation,Calcula la depreciació,
Allow Monthly Depreciation,Permeten la depreciació mensual,
Number of Depreciations Booked,Nombre de reserva Depreciacions,
Finance Books,Llibres de finances,
Straight Line,Línia recta,
Double Declining Balance,Doble saldo decreixent,
Manual,manual,
Value After Depreciation,Valor després de la depreciació,
Total Number of Depreciations,Nombre total d&#39;amortitzacions,
Frequency of Depreciation (Months),Freqüència de Depreciació (Mesos),
Next Depreciation Date,Següent Depreciació Data,
Depreciation Schedule,Programació de la depreciació,
Depreciation Schedules,programes de depreciació,
Insurance details,Dades de l’assegurança,
Policy number,Número de la policia,
Insurer,Assegurador,
Insured value,Valor assegurat,
Insurance Start Date,Data d&#39;inici de l&#39;assegurança,
Insurance End Date,Data de finalització de l&#39;assegurança,
Comprehensive Insurance,Assegurança integral,
Maintenance Required,Manteniment obligatori,
Check if Asset requires Preventive Maintenance or Calibration,Comproveu si Asset requereix manteniment preventiu o calibratge,
Booked Fixed Asset,Activat fix reservat,
Purchase Receipt Amount,Compreu la quantitat del rebut,
Default Finance Book,Llibre financer predeterminat,
Quality Manager,Gerent de Qualitat,
Asset Category Name,Nom de la categoria d&#39;actius,
Depreciation Options,Opcions de depreciació,
Enable Capital Work in Progress Accounting,Habiliteu la comptabilitat del Treball de Capital en Progrés,
Finance Book Detail,Detall del llibre de finances,
Asset Category Account,Compte categoria d&#39;actius,
Fixed Asset Account,Compte d&#39;actiu fix,
Accumulated Depreciation Account,Compte de depreciació acumulada,
Depreciation Expense Account,Compte de despeses de depreciació,
Capital Work In Progress Account,Compte de capital en curs de progrés,
Asset Finance Book,Asset Finance Book,
Written Down Value,Valor escrit per sota,
Expected Value After Useful Life,Valor esperat després de la vida útil,
Rate of Depreciation,Taxa d’amortització,
In Percentage,En percentatge,
Maintenance Team,Equip de manteniment,
Maintenance Manager Name,Nom del gestor de manteniment,
Maintenance Tasks,Tasques de manteniment,
Manufacturing User,Usuari de fabricació,
Asset Maintenance Log,Registre de manteniment d&#39;actius,
ACC-AML-.YYYY.-,ACC-AML-.YYYY.-,
Maintenance Type,Tipus de Manteniment,
Maintenance Status,Estat de manteniment,
Planned,Planificat,
Has Certificate ,Té certificat,
Certificate,Certificat,
Actions performed,Accions realitzades,
Asset Maintenance Task,Tasca de manteniment d&#39;actius,
Maintenance Task,Tasca de manteniment,
Preventive Maintenance,Manteniment preventiu,
Calibration,Calibratge,
2 Yearly,2 Anual,
Certificate Required,Certificat obligatori,
Assign to Name,Assigna a Nom,
Next Due Date,Pròxima data de venciment,
Last Completion Date,Última data de finalització,
Asset Maintenance Team,Equip de manteniment d&#39;actius,
Maintenance Team Name,Nom de l&#39;equip de manteniment,
Maintenance Team Members,Membres de l&#39;equip de manteniment,
Purpose,Propòsit,
Stock Manager,Gerent,
Asset Movement Item,Element de moviment d&#39;actius,
Source Location,Ubicació de la font,
From Employee,D'Empleat,
Target Location,Ubicació del destí,
To Employee,Per a l&#39;empleat,
Asset Repair,Reparació d&#39;actius,
ACC-ASR-.YYYY.-,ACC-ASR-.YYYY.-,
Failure Date,Data de fracàs,
Assign To Name,Assigna al nom,
Repair Status,Estat de reparació,
Error Description,Descripció de l&#39;error,
Downtime,Temps d&#39;inactivitat,
Repair Cost,Cost de reparació,
Manufacturing Manager,Gerent de Fàbrica,
Current Asset Value,Valor actiu actual,
New Asset Value,Nou valor d&#39;actius,
Make Depreciation Entry,Fer l&#39;entrada de Depreciació,
Finance Book Id,Identificador del llibre de finances,
Location Name,Nom de la ubicació,
Parent Location,Ubicació principal,
Is Container,És contenidor,
Check if it is a hydroponic unit,Comproveu si és una unitat hidropònica,
Location Details,Detalls de la ubicació,
Latitude,Latitude,
Longitude,Longitud,
Area,Àrea,
Area UOM,Àrea UOM,
Tree Details,Detalls de l&#39;arbre,
Maintenance Team Member,Membre de l&#39;equip de manteniment,
Team Member,Membre de l&#39;equip,
Maintenance Role,Paper de manteniment,
Buying Settings,Ajustaments de compra,
Settings for Buying Module,Ajustaments del mòdul de Compres,
Supplier Naming By,NOmenament de proveïdors per,
Default Supplier Group,Grup de proveïdors per defecte,
Default Buying Price List,Llista de preus per defecte,
Backflush Raw Materials of Subcontract Based On,Contenidors de matèries primeres de subcontractació basades en,
Material Transferred for Subcontract,Material transferit per subcontractar,
Over Transfer Allowance (%),Indemnització de transferència (%),
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.,"Percentatge on es pot transferir més en funció de la quantitat ordenada. Per exemple: si heu ordenat 100 unitats. i la vostra quota és del 10%, llavors podreu transferir 110 unitats.",
PUR-ORD-.YYYY.-,PUR-ORD -YYYY.-,
Get Items from Open Material Requests,Obtenir elements de sol·licituds obert de materials,
Fetch items based on Default Supplier.,Recupereu elements basats en el proveïdor predeterminat.,
Required By,Requerit per,
Order Confirmation No,Confirmació d&#39;ordre no,
Order Confirmation Date,Data de confirmació de la comanda,
Customer Mobile No,Client Mòbil No,
Customer Contact Email,Client de correu electrònic de contacte,
Set Target Warehouse,Conjunt de target objectiu,
Sets 'Warehouse' in each row of the Items table.,Estableix &quot;Magatzem&quot; a cada fila de la taula Elements.,
Supply Raw Materials,Subministrament de Matèries Primeres,
Purchase Order Pricing Rule,Regla de preus de compra de comandes,
Set Reserve Warehouse,Conjunt de magatzem de reserves,
In Words will be visible once you save the Purchase Order.,En paraules seran visibles un cop que es guardi l'ordre de compra.,
Advance Paid,Bestreta pagada,
Tracking,Seguiment,
% Billed,% Facturat,
% Received,% Rebut,
Ref SQ,Ref SQ,
Inter Company Order Reference,Referència de la comanda entre empreses,
Supplier Part Number,PartNumber del proveïdor,
Billed Amt,Quantitat facturada,
Warehouse and Reference,Magatzem i Referència,
To be delivered to customer,Per ser lliurat al client,
Material Request Item,Material Request Item,
Supplier Quotation Item,Oferta del proveïdor d'article,
Against Blanket Order,Contra ordre de manta,
Blanket Order,Ordre de manta,
Blanket Order Rate,Tarifa de comanda de mantega,
Returned Qty,Tornat Quantitat,
Purchase Order Item Supplied,Article de l'ordre de compra Subministrat,
BOM Detail No,Detall del BOM No,
Stock Uom,UDM de l'Estoc,
Raw Material Item Code,Matèria Prima Codi de l'article,
Supplied Qty,Subministrat Quantitat,
Purchase Receipt Item Supplied,Rebut de compra dels articles subministrats,
Current Stock,Estoc actual,
PUR-RFQ-.YYYY.-,PUR-RFQ -YYYY.-,
For individual supplier,Per proveïdor individual,
Link to Material Requests,Enllaç a sol·licituds de material,
Message for Supplier,Missatge per als Proveïdors,
Request for Quotation Item,Sol·licitud de Cotització d&#39;articles,
Required Date,Data Requerit,
Request for Quotation Supplier,Sol·licitud de Cotització Proveïdor,
Send Email,Enviar per correu electrònic,
Quote Status,Estat de cotització,
Download PDF,descarregar PDF,
Supplier of Goods or Services.,Proveïdor de productes o serveis.,
Name and Type,Nom i Tipus,
SUP-.YYYY.-,SUP-.YYYY.-,
Default Bank Account,Compte bancari per defecte,
Is Transporter,És transportista,
Represents Company,Representa l&#39;empresa,
Supplier Type,Tipus de Proveïdor,
Allow Purchase Invoice Creation Without Purchase Order,Permet la creació de factures de compra sense ordre de compra,
Allow Purchase Invoice Creation Without Purchase Receipt,Permet la creació de factures de compra sense comprovant de compra,
Warn RFQs,Adverteu RFQs,
Warn POs,Avisa els PO,
Prevent RFQs,Evita les RFQ,
Prevent POs,Evitar les PO,
Billing Currency,Facturació moneda,
Default Payment Terms Template,Plantilla de condicions de pagament per defecte,
Block Supplier,Proveïdor de blocs,
Hold Type,Tipus de retenció,
Leave blank if the Supplier is blocked indefinitely,Deixeu-ho en blanc si el proveïdor està bloquejat indefinidament,
Default Payable Accounts,Comptes per Pagar per defecte,
Mention if non-standard payable account,Esmentar si compta per pagar no estàndard,
Default Tax Withholding Config,Configuració de retenció d&#39;impostos predeterminada,
Supplier Details,Detalls del proveïdor,
Statutory info and other general information about your Supplier,Informació legal i altra informació general sobre el Proveïdor,
PUR-SQTN-.YYYY.-,PUR-SQTN -YYYY.-,
Supplier Address,Adreça del Proveïdor,
Link to material requests,Enllaç a les sol·licituds de materials,
Rounding Adjustment (Company Currency,Ajust d&#39;arrodoniment (moneda d&#39;empresa,
Auto Repeat Section,Secció de repetició automàtica,
Is Subcontracted,Es subcontracta,
Lead Time in days,Termini d&#39;execució en dies,
Supplier Score,Puntuació del proveïdor,
Indicator Color,Color indicador,
Evaluation Period,Període d&#39;avaluació,
Per Week,Per setmana,
Per Month,Per mes,
Per Year,Per any,
Scoring Setup,Configuració de puntuacions,
Weighting Function,Funció de ponderació,
"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","Es poden utilitzar variables de quadre de comandament, així com: {total_score} (la puntuació total d&#39;aquest període), {period_number} (el nombre de períodes actuals)",
Scoring Standings,Classificació de puntuació,
Criteria Setup,Configuració de criteris,
Load All Criteria,Carregueu tots els criteris,
Scoring Criteria,Criteris de puntuació,
Scorecard Actions,Accions de quadre de comandament,
Warn for new Request for Quotations,Adverteu una nova sol·licitud de pressupostos,
Warn for new Purchase Orders,Adverteix noves comandes de compra,
Notify Supplier,Notifica el proveïdor,
Notify Employee,Notificar a l&#39;empleat,
Supplier Scorecard Criteria,Criteris de quadre de comandament de proveïdors,
Criteria Name,Nom del criteri,
Max Score,Puntuació màxima,
Criteria Formula,Fórmula de criteris,
Criteria Weight,Criteris de pes,
Supplier Scorecard Period,Període del quadre de subministrament,
PU-SSP-.YYYY.-,PU-SSP-.YYYY.-,
Period Score,Puntuació de períodes,
Calculations,Càlculs,
Criteria,Criteris,
Variables,Les variables,
Supplier Scorecard Setup,Configuració del quadre de comandaments del proveïdor,
Supplier Scorecard Scoring Criteria,Punts de referència del proveïdor Criteris de puntuació,
Score,puntuació,
Supplier Scorecard Scoring Standing,Quadre de puntuació de proveïdors,
Standing Name,Nom estable,
Purple,Porpra,
Yellow,Groc,
Orange,taronja,
Min Grade,Grau mínim,
Max Grade,Grau màxim,
Warn Purchase Orders,Aviseu comandes de compra,
Prevent Purchase Orders,Evitar les comandes de compra,
Employee ,Empleat,
Supplier Scorecard Scoring Variable,Quadre de puntuació de proveïdors Variable,
Variable Name,Nom de la variable,
Parameter Name,Nom del paràmetre,
Supplier Scorecard Standing,Quadre de comandament del proveïdor,
Notify Other,Notificar-ne un altre,
Supplier Scorecard Variable,Variable del quadre de comandament del proveïdor,
Call Log,Historial de trucades,
Received By,Rebuda per,
Caller Information,Informació de la trucada,
Contact Name,Nom de Contacte,
Lead ,Dirigir,
Lead Name,Nom Plom,
Ringing,Sona,
Missed,Perdut,
Call Duration in seconds,Durada de la trucada en segons,
Recording URL,URL de gravació,
Communication Medium,Mitjà Comunicació,
Communication Medium Type,Tipus de comunicació,
Voice,Veu,
Catch All,Agafa tot,
"If there is no assigned timeslot, then communication will be handled by this group","Si no hi ha un timelot assignat, aquest grup la gestionarà la comunicació",
Timeslots,Horaris,
Communication Medium Timeslot,Media Timeslot de comunicació,
Employee Group,Grup d&#39;empleats,
Appointment,Cita,
Scheduled Time,Temps previst,
Unverified,No verificat,
Customer Details,Dades del client,
Phone Number,Número de telèfon,
Skype ID,Identificador d’Skype,
Linked Documents,Documents enllaçats,
Appointment With,Cita amb,
Calendar Event,Calendari Esdeveniment,
Appointment Booking Settings,Configuració de reserva de cites,
Enable Appointment Scheduling,Activa la programació de cites,
Agent Details,Detalls de l&#39;agent,
Availability Of Slots,Disponibilitat de ranures,
Number of Concurrent Appointments,Nombre de cites simultànies,
Agents,Agents,
Appointment Details,Detalls de cita,
Appointment Duration (In Minutes),Durada de la cita (en minuts),
Notify Via Email,Notificar-ho mitjançant correu electrònic,
Notify customer and agent via email on the day of the appointment.,Aviseu el client i l’agent per correu electrònic el dia de la cita.,
Number of days appointments can be booked in advance,Es poden reservar cites de dies per endavant,
Success Settings,Configuració d’èxit,
Success Redirect URL,URL de redirecció d&#39;èxit,
"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Deixeu en blanc a casa. Això és relatiu a l’URL del lloc, per exemple &quot;sobre&quot; es redirigirà a &quot;https://yoursitename.com/about&quot;",
Appointment Booking Slots,Cites de reserva de cites,
Day Of Week,Dia de la setmana,
From Time ,From Time,
Campaign Email Schedule,Programa de correu electrònic de la campanya,
Send After (days),Envia després de (dies),
Signed,Signat,
Party User,Usuari del partit,
Unsigned,Sense signar,
Fulfilment Status,Estat de compliment,
N/A,N / A,
Unfulfilled,No s&#39;ha complert,
Partially Fulfilled,Completat parcialment,
Fulfilled,S&#39;ha completat,
Lapsed,Ha caducat,
Contract Period,Període del contracte,
Signee Details,Detalls del signe,
Signee,Signat,
Signed On,S&#39;ha iniciat la sessió,
Contract Details,Detalls del contracte,
Contract Template,Plantilla de contracte,
Contract Terms,Termes del contracte,
Fulfilment Details,Detalls de compliment,
Requires Fulfilment,Requereix compliment,
Fulfilment Deadline,Termini de compliment,
Fulfilment Terms,Termes de compliment,
Contract Fulfilment Checklist,Llista de verificació del compliment del contracte,
Requirement,Requisit,
Contract Terms and Conditions,Termes i condicions del contracte,
Fulfilment Terms and Conditions,Termes i condicions de compliment,
Contract Template Fulfilment Terms,Termes de compliment de la plantilla de contracte,
Email Campaign,Campanya de correu electrònic,
Email Campaign For ,Per a campanya de correu electrònic,
Lead is an Organization,El plom és una organització,
CRM-LEAD-.YYYY.-,CRM-LEAD -YYYY.-,
Person Name,Nom de la Persona,
Lost Quotation,cita perduda,
Interested,Interessat,
Converted,Convertit,
Do Not Contact,No entri en contacte,
From Customer,De Client,
Campaign Name,Nom de la campanya,
Follow Up,Segueix,
Next Contact By,Següent Contactar Per,
Next Contact Date,Data del següent contacte,
Ends On,Acaba el dia,
Address & Contact,Direcció i Contacte,
Mobile No.,No mòbil,
Lead Type,Tipus de client potencial,
Channel Partner,Partner de Canal,
Consultant,Consultor,
Market Segment,Sector de mercat,
Industry,Indústria,
Request Type,Tipus de sol·licitud,
Product Enquiry,Consulta de producte,
Request for Information,Sol·licitud d'Informació,
Suggestions,Suggeriments,
Blog Subscriber,Bloc subscriptor,
LinkedIn Settings,Configuració de LinkedIn,
Company ID,Identificador d&#39;empresa,
OAuth Credentials,Credencials OAuth,
Consumer Key,Clau del consumidor,
Consumer Secret,Secret del consumidor,
User Details,Detalls de l&#39;usuari,
Person URN,Persona URN,
Session Status,Estat de la sessió,
Lost Reason Detail,Detall de la raó perduda,
Opportunity Lost Reason,Motiu perdut per l&#39;oportunitat,
Potential Sales Deal,Tracte de vendes potencials,
CRM-OPP-.YYYY.-,CRM-OPP -YYYY.-,
Opportunity From,Oportunitat De,
Customer / Lead Name,nom del Client/Client Potencial,
Opportunity Type,Tipus d'Oportunitats,
Converted By,Convertit per,
Sales Stage,Etapa de vendes,
Lost Reason,Raó Perdut,
Expected Closing Date,Data de tancament prevista,
To Discuss,Per Discutir,
With Items,Amb articles,
Probability (%),Probabilitat (%),
Contact Info,Informació de Contacte,
Customer / Lead Address,Client / Direcció Plom,
Contact Mobile No,Contacte Mòbil No,
Enter name of campaign if source of enquiry is campaign,Introduïu el nom de la campanya si la font de la investigació és la campanya,
Opportunity Date,Data oportunitat,
Opportunity Item,Opportunity Item,
Basic Rate,Tarifa Bàsica,
Stage Name,Nom artistic,
Social Media Post,Publicació a les xarxes socials,
Post Status,Estat de la publicació,
Posted,Publicat,
Share On,Comparteix a,
Twitter,Twitter,
LinkedIn,LinkedIn,
Twitter Post Id,Identificador de publicació de Twitter,
LinkedIn Post Id,Identificador de publicació de LinkedIn,
Tweet,Tweet,
Twitter Settings,Configuració de Twitter,
API Secret Key,Clau secreta de l&#39;API,
Term Name,nom termini,
Term Start Date,Termini Data d&#39;Inici,
Term End Date,Termini Data de finalització,
Academics User,acadèmics usuari,
Academic Year Name,Nom Any Acadèmic,
Article,Article,
LMS User,Usuari de LMS,
Assessment Criteria Group,Criteris d&#39;avaluació del Grup,
Assessment Group Name,Nom del grup d&#39;avaluació,
Parent Assessment Group,Pares Grup d&#39;Avaluació,
Assessment Name,nom avaluació,
Grading Scale,Escala de Qualificació,
Examiner,examinador,
Examiner Name,Nom de l&#39;examinador,
Supervisor,supervisor,
Supervisor Name,Nom del supervisor,
Evaluate,Avaluar,
Maximum Assessment Score,Puntuació màxima d&#39;Avaluació,
Assessment Plan Criteria,Criteris d&#39;avaluació del pla,
Maximum Score,puntuació màxima,
Result,Resultat,
Total Score,Puntuació total,
Grade,grau,
Assessment Result Detail,Avaluació de Resultats Detall,
Assessment Result Tool,Eina resultat de l&#39;avaluació,
Result HTML,El resultat HTML,
Content Activity,Activitat de contingut,
Last Activity ,Última activitat,
Content Question,Pregunta sobre contingut,
Question Link,Enllaç de preguntes,
Course Name,Nom del curs,
Topics,Temes,
Hero Image,Imatge de l&#39;heroi,
Default Grading Scale,Escala de Qualificació per defecte,
Education Manager,Gerent d&#39;Educació,
Course Activity,Activitat del curs,
Course Enrollment,Matrícula del curs,
Activity Date,Data de l’activitat,
Course Assessment Criteria,Criteris d&#39;avaluació del curs,
Weightage,Weightage,
Course Content,Contingut del curs,
Quiz,Test,
Program Enrollment,programa d&#39;Inscripció,
Enrollment Date,Data d&#39;inscripció,
Instructor Name,nom instructor,
EDU-CSH-.YYYY.-,EDU-CSH -YYYY.-,
Course Scheduling Tool,Eina de Programació de golf,
Course Start Date,Curs Data d&#39;Inici,
To TIme,Per Temps,
Course End Date,Curs Data de finalització,
Course Topic,Tema del curs,
Topic,tema,
Topic Name,Nom del tema,
Education Settings,Configuració educativa,
Current Academic Year,Any acadèmic actual,
Current Academic Term,Període acadèmic actual,
Attendance Freeze Date,L&#39;assistència Freeze Data,
Validate Batch for Students in Student Group,Validar lots per a estudiants en grup d&#39;alumnes,
"For Batch based Student Group, the Student Batch will be validated for every Student from the Program Enrollment.","Per grup d&#39;alumnes amb base de lots, el lot dels estudiants serà vàlida per a tots els estudiants de la inscripció en el programa.",
Validate Enrolled Course for Students in Student Group,Validar matriculats Curs per a estudiants en grup d&#39;alumnes,
"For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.","Per grup d&#39;alumnes basat curs, aquest serà validat per cada estudiant dels cursos matriculats en el Programa d&#39;Inscripció.",
Make Academic Term Mandatory,Fer el mandat acadèmic obligatori,
"If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.","Si està habilitat, el camp acadèmic de camp serà obligatori en l&#39;eina d&#39;inscripció del programa.",
Skip User creation for new Student,Omet la creació d&#39;usuaris per a un nou estudiant,
"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.","Per defecte, es crea un usuari nou per a cada estudiant nou. Si està activat, no es crearà cap usuari nou quan es creï un estudiant nou.",
Instructor Records to be created by,Instructor Records a ser creat per,
Employee Number,Número d'empleat,
Fee Category,Fee Categoria,
Fee Component,Quota de components,
Fees Category,taxes Categoria,
Fee Schedule,Llista de tarifes,
Fee Structure,Estructura de tarifes,
EDU-FSH-.YYYY.-,EDU-FSH-.YYYY.-,
Fee Creation Status,Estat de creació de tarifes,
In Process,En procés,
Send Payment Request Email,Enviar correu electrònic de sol·licitud de pagament,
Student Category,categoria estudiant,
Fee Breakup for each student,Taxa d&#39;interrupció per cada estudiant,
Total Amount per Student,Import total per estudiant,
Institution,institució,
Fee Schedule Program,Programa de tarifes Programa,
Student Batch,lot estudiant,
Total Students,Total d&#39;estudiants,
Fee Schedule Student Group,Calendari de tarifes Grup d&#39;estudiants,
EDU-FST-.YYYY.-,EDU-FST-.YYYY.-,
EDU-FEE-.YYYY.-,EDU-FEE -YYYY.-,
Include Payment,Inclou el pagament,
Send Payment Request,Enviar sol·licitud de pagament,
Student Details,Detalls dels estudiants,
Student Email,Correu electrònic dels estudiants,
Grading Scale Name,Nom Escala de classificació,
Grading Scale Intervals,Intervals de classificació en l&#39;escala,
Intervals,intervals,
Grading Scale Interval,Escala de Qualificació d&#39;interval,
Grade Code,codi grau,
Threshold,Llindar,
Grade Description,grau Descripció,
Guardian,tutor,
Guardian Name,nom tutor,
Alternate Number,nombre alternatiu,
Occupation,ocupació,
Work Address,Direcció del treball,
Guardian Of ,El guarda de,
Students,els estudiants,
Guardian Interests,Interessos de la guarda,
Guardian Interest,guardià interès,
Interest,interès,
Guardian Student,guardià de l&#39;Estudiant,
EDU-INS-.YYYY.-,EDU-INS-.YYYY.-,
Instructor Log,Registre d&#39;instructors,
Other details,Altres detalls,
Option,Opció,
Is Correct,És correcte,
Program Name,Nom del programa,
Program Abbreviation,abreviatura programa,
Courses,cursos,
Is Published,Es publica,
Allow Self Enroll,Permetre la matrícula automàtica,
Is Featured,Es destaca,
Intro Video,Introducció al vídeo,
Program Course,curs programa,
School House,Casa de l&#39;escola,
Boarding Student,Estudiant d&#39;embarcament,
Check this if the Student is residing at the Institute's Hostel.,Comprovar això si l&#39;estudiant està residint a l&#39;alberg de l&#39;Institut.,
Walking,per caminar,
Institute's Bus,Bus de l&#39;Institut,
Public Transport,Transport públic,
Self-Driving Vehicle,Vehicle auto-conducció,
Pick/Drop by Guardian,Esculli / gota per Guardian,
Enrolled courses,cursos matriculats,
Program Enrollment Course,I matrícula Programa,
Program Enrollment Fee,Programa de quota d&#39;inscripció,
Program Enrollment Tool,Eina d&#39;Inscripció Programa,
Get Students From,Rep estudiants de,
Student Applicant,estudiant sol·licitant,
Get Students,obtenir estudiants,
Enrollment Details,Detalls d&#39;inscripció,
New Program,nou Programa,
New Student Batch,Nou lot d&#39;estudiants,
Enroll Students,inscriure els estudiants,
New Academic Year,Nou Any Acadèmic,
New Academic Term,Nou terme acadèmic,
Program Enrollment Tool Student,Estudiant Eina d&#39;Inscripció Programa,
Student Batch Name,Lot Nom de l&#39;estudiant,
Program Fee,tarifa del programa,
Question,Pregunta,
Single Correct Answer,Resposta única i correcta,
Multiple Correct Answer,Resposta correcta múltiple,
Quiz Configuration,Configuració del test,
Passing Score,Puntuació de superació,
Score out of 100,Puntuació sobre 100,
Max Attempts,Intents màxims,
Enter 0 to waive limit,Introduïu 0 al límit d’exoneració,
Grading Basis,Bases de classificació,
Latest Highest Score,Puntuació més alta més recent,
Latest Attempt,Últim intent,
Quiz Activity,Activitat de proves,
Enrollment,Matrícula,
Pass,Passar,
Quiz Question,Pregunta del qüestionari,
Quiz Result,Resultat de la prova,
Selected Option,Opció seleccionada,
Correct,Correcte,
Wrong,Mal,
Room Name,Nom de la sala,
Room Number,Número d&#39;habitació,
Seating Capacity,nombre de places,
House Name,Nom de la casa,
EDU-STU-.YYYY.-,EDU-STU -YYYY.-,
Student Mobile Number,Nombre mòbil Estudiant,
Joining Date,Data d&#39;incorporació,
Blood Group,Grup sanguini,
A+,A +,
A-,A-,
B+,B +,
B-,B-,
O+,O +,
O-,O-,
AB+,AB +,
AB-,AB-,
Nationality,nacionalitat,
Home Address,Adreça de casa,
Guardian Details,guardià detalls,
Guardians,guardians,
Sibling Details,Detalls de germans,
Siblings,els germans,
Exit,Sortida,
Date of Leaving,Data de baixa,
Leaving Certificate Number,Deixant Nombre de certificat,
Reason For Leaving,Raó per marxar,
Student Admission,Admissió d&#39;Estudiants,
Admission Start Date,L&#39;entrada Data d&#39;Inici,
Admission End Date,L&#39;entrada Data de finalització,
Publish on website,Publicar al lloc web,
Eligibility and Details,Elegibilitat i detalls,
Student Admission Program,Programa d&#39;admissió dels estudiants,
Minimum Age,Edat mínima,
Maximum Age,Edat màxima,
Application Fee,Taxa de sol·licitud,
Naming Series (for Student Applicant),Sèrie de nomenclatura (per Estudiant Sol·licitant),
LMS Only,Només LMS,
EDU-APP-.YYYY.-,EDU-APP-.YYYY.-,
Application Status,Estat de la sol·licitud,
Application Date,Data de Sol·licitud,
Student Attendance Tool,Eina d&#39;assistència dels estudiants,
Group Based On,Grup basat en,
Students HTML,Els estudiants HTML,
Group Based on,Grup d&#39;acord amb,
Student Group Name,Nom del grup d&#39;estudiant,
Max Strength,força màx,
Set 0 for no limit,Ajust 0 indica sense límit,
Instructors,els instructors,
Student Group Creation Tool,Eina de creació de grup d&#39;alumnes,
Leave blank if you make students groups per year,Deixar en blanc si fas grups d&#39;estudiants per any,
Get Courses,obtenir Cursos,
Separate course based Group for every Batch,Grup basat curs separat per a cada lot,
Leave unchecked if you don't want to consider batch while making course based groups. ,Deixa sense marcar si no vol tenir en compte per lots alhora que els grups basats en curs.,
Student Group Creation Tool Course,Curs eina de creació de grup d&#39;alumnes,
Course Code,Codi del curs,
Student Group Instructor,Instructor grup d&#39;alumnes,
Student Group Student,Estudiant grup d&#39;alumnes,
Group Roll Number,Nombre Rotllo Grup,
Student Guardian,Guardià de l&#39;estudiant,
Relation,Relació,
Mother,Mare,
Father,pare,
Student Language,idioma de l&#39;estudiant,
Student Leave Application,Aplicació Deixar estudiant,
Mark as Present,Marcar com a present,
Student Log,Inicia estudiant,
Academic,acadèmic,
Achievement,assoliment,
Student Report Generation Tool,Eina de generació d&#39;informes per a estudiants,
Include All Assessment Group,Inclou tot el grup d&#39;avaluació,
Show Marks,Mostra marques,
Add letterhead,Afegeix un capçalera,
Print Section,Imprimeix la secció,
Total Parents Teacher Meeting,Reunió total del professorat dels pares,
Attended by Parents,Assistit pels pares,
Assessment Terms,Termes d&#39;avaluació,
Student Sibling,germà de l&#39;estudiant,
Studying in Same Institute,Estudiar en el mateix Institut,
NO,NO,
YES,SÍ,
Student Siblings,Els germans dels estudiants,
Topic Content,Contingut del tema,
Amazon MWS Settings,Configuració d&#39;Amazon MWS,
ERPNext Integrations,ERPNext Integracions,
Enable Amazon,Activa Amazon,
MWS Credentials,Credencials MWS,
Seller ID,Identificador del venedor,
AWS Access Key ID,Identificador de clau d&#39;accés AWS,
MWS Auth Token,MWS Auth Token,
Market Place ID,Market Place ID,
AE,AE,
AU,AU,
BR,BR,
CA,CA,
CN,CN,
DE,DE,
ES,ES,
FR,FR,
IN,IN,
JP,JP,
IT,IT,
MX,mx,
UK,UK,
US,nosaltres,
Customer Type,Tipus de client,
Market Place Account Group,Grup de comptes del lloc de mercat,
After Date,Després de la data,
Amazon will synch data updated after this date,Amazon sincronitzarà les dades actualitzades després d&#39;aquesta data,
Sync Taxes and Charges,Sincronitza impostos i càrrecs,
Get financial breakup of Taxes and charges data by Amazon ,Obteniu una ruptura financera d&#39;impostos i dades de càrregues d&#39;Amazon,
Sync Products,Productes de sincronització,
Always sync your products from Amazon MWS before synching the Orders details,Sincronitzeu sempre els vostres productes des d’Amazon MWS abans de sincronitzar els detalls de les comandes,
Sync Orders,Sincronitza les comandes,
Click this button to pull your Sales Order data from Amazon MWS.,Feu clic en aquest botó per treure les dades de la comanda de venda d&#39;Amazon MWS.,
Enable Scheduled Sync,Activa la sincronització programada,
Check this to enable a scheduled Daily synchronization routine via scheduler,Activeu aquesta opció per habilitar una rutina de sincronització diària programada a través del programador,
Max Retry Limit,Límit de repetició màx,
Exotel Settings,Configuració exòtica,
Account SID,Compte SID,
API Token,Títol API,
GoCardless Mandate,Mandat sense GoCard,
Mandate,Mandat,
GoCardless Customer,Client GoCardless,
GoCardless Settings,Configuració sense GoCard,
Webhooks Secret,Webhooks Secret,
Plaid Settings,Configuració del Plaid,
Synchronize all accounts every hour,Sincronitza tots els comptes cada hora,
Plaid Client ID,Identificador de client de Plaid,
Plaid Secret,Plaid Secret,
Plaid Environment,Entorn Plaid,
sandbox,caixa de sorra,
development,desenvolupament,
production,producció,
QuickBooks Migrator,QuickBooks Migrator,
Application Settings,Configuració de l&#39;aplicació,
Token Endpoint,Punt final del token,
Scope,Abast,
Authorization Settings,Configuració de l&#39;autorització,
Authorization Endpoint,Endpoint d&#39;autorització,
Authorization URL,URL d&#39;autorització,
Quickbooks Company ID,Quickbooks Company ID,
Company Settings,Configuració de la companyia,
Default Shipping Account,Compte d&#39;enviament predeterminat,
Default Warehouse,Magatzem predeterminat,
Default Cost Center,Centre de cost predeterminat,
Undeposited Funds Account,Compte de fons no transferit,
Shopify Log,Registre de compres,
Request Data,Sol·licitud de dades,
Shopify Settings,Configuració de Shopify,
status html,Estat html,
Enable Shopify,Activa Shopify,
App Type,Tipus d&#39;aplicació,
Last Sync Datetime,Data de sincronització de la darrera sincronització,
Shop URL,Compreu l&#39;URL,
eg: frappe.myshopify.com,Per exemple: frappe.myshopify.com,
Shared secret,Secret compartit,
Webhooks Details,Detalls de Webhooks,
Webhooks,Webhooks,
Customer Settings,Configuració del client,
Default Customer,Client per defecte,
Customer Group will set to selected group while syncing customers from Shopify,El Grup de clients s&#39;establirà al grup seleccionat mentre sincronitza els clients de Shopify,
For Company,Per a l'empresa,
Cash Account will used for Sales Invoice creation,El compte de caixa s&#39;utilitzarà per a la creació de factures de vendes,
Update Price from Shopify To ERPNext Price List,Actualitza el preu de Storeify a la llista de preus d&#39;ERPNext,
Default Warehouse to to create Sales Order and Delivery Note,Default Warehouse a per crear la comanda de vendes i la nota de lliurament,
Sales Order Series,Sèrie de vendes,
Import Delivery Notes from Shopify on Shipment,Importa les notes de lliurament de Shopify on Shipment,
Delivery Note Series,Sèrie de notes de lliurament,
Import Sales Invoice from Shopify if Payment is marked,Importeu la factura de vendes de Shopify si el pagament està marcat,
Sales Invoice Series,Sèrie de factures de vendes,
Shopify Tax Account,Compte fiscal comptable,
Shopify Tax/Shipping Title,Compreu impostos / títol d&#39;enviament,
ERPNext Account,Compte ERPNext,
Shopify Webhook Detail,Compra el detall Webhook,
Webhook ID,Identificador de Webhook,
Tally Migration,Migració del compte,
Master Data,Dades mestres,
"Data exported from Tally that consists of the Chart of Accounts, Customers, Suppliers, Addresses, Items and UOMs","Dades exportades des de Tally que consisteixen en el pla de comptes, clients, proveïdors, adreces, articles i UOM",
Is Master Data Processed,S&#39;han processat les dades mestres,
Is Master Data Imported,S’importen les dades principals,
Tally Creditors Account,Compte de creditors de comptes,
Creditors Account set in Tally,Compte de creditors establert a Tally,
Tally Debtors Account,Compte de deutes de compte,
Debtors Account set in Tally,Compte de deutors establert a Tally,
Tally Company,Tally Company,
Company Name as per Imported Tally Data,Nom de l’empresa segons les dades Tally importades,
Default UOM,UOM per defecte,
UOM in case unspecified in imported data,UOM per si no s’especifica a les dades importades,
ERPNext Company,Empresa ERPNext,
Your Company set in ERPNext,La vostra empresa es va instal·lar a ERPNext,
Processed Files,Arxius processats,
Parties,Festa,
UOMs,UOMS,
Vouchers,Vals,
Round Off Account,Per arrodonir el compte,
Day Book Data,Dades del llibre de dia,
Day Book Data exported from Tally that consists of all historic transactions,Dades del llibre de dia exportades des de Tally que consisteixen en totes les transaccions històriques,
Is Day Book Data Processed,Es processen les dades del llibre de dia,
Is Day Book Data Imported,S&#39;importen les dades del llibre de dia,
Woocommerce Settings,Configuració de Woocommerce,
Enable Sync,Habilita la sincronització,
Woocommerce Server URL,URL del servidor Woocommerce,
Secret,Secret,
API consumer key,Clau de consum de l&#39;API,
API consumer secret,Secret de consum de l&#39;API,
Tax Account,Compte fiscal,
Freight and Forwarding Account,Compte de càrrega i transmissió,
Creation User,Usuari de creació,
"The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.","L’usuari que s’utilitzarà per crear Clients, Articles i Comandes de Vendes. Aquest usuari hauria de tenir els permisos pertinents.",
"This warehouse will be used to create Sales Orders. The fallback warehouse is ""Stores"".",Aquest magatzem s’utilitzarà per crear comandes de venda. El magatzem faller és &quot;Botigues&quot;.,
"The fallback series is ""SO-WOO-"".",La sèrie de fallback és &quot;SO-WOO-&quot;.,
This company will be used to create Sales Orders.,Aquesta empresa s’utilitzarà per crear comandes de vendes.,
Delivery After (Days),Lliurament després de (dies),
This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Aquest és el decalatge (dies) predeterminat de la data de lliurament a les comandes de venda. La compensació de retard és de 7 dies des de la data de col·locació de la comanda.,
"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Aquest és l&#39;UOM per defecte que s&#39;utilitza per a articles i comandes de vendes. L’UOM de caiguda és &quot;Nos&quot;.,
Endpoints,Punts extrems,
Endpoint,Punt final,
Antibiotic Name,Nom antibiòtic,
Healthcare Administrator,Administrador sanitari,
Laboratory User,Usuari del laboratori,
Is Inpatient,És internat,
Default Duration (In Minutes),Durada predeterminada (en minuts),
Body Part,Part del cos,
Body Part Link,Enllaç de la part del cos,
HLC-CPR-.YYYY.-,HLC-CPR-.YYYY.-,
Procedure Template,Plantilla de procediment,
Procedure Prescription,Procediment Prescripció,
Service Unit,Unitat de servei,
Consumables,Consumibles,
Consume Stock,Consumir estoc,
Invoice Consumables Separately,Consumibles de factura per separat,
Consumption Invoiced,Consum facturat,
Consumable Total Amount,Import total consumible,
Consumption Details,Detalls del consum,
Nursing User,Usuari d&#39;infermeria,
Clinical Procedure Item,Article del procediment clínic,
Invoice Separately as Consumables,Factura per separat com a consumibles,
Transfer Qty,Quantitat de transferència,
Actual Qty (at source/target),Actual Quantitat (en origen / destinació),
Is Billable,És facturable,
Allow Stock Consumption,Permet el consum d&#39;existències,
Sample UOM,Mostra UOM,
Collection Details,Detalls de la col·lecció,
Change In Item,Canvi d&#39;element,
Codification Table,Taula de codificació,
Complaints,Queixes,
Dosage Strength,Força de dosificació,
Strength,Força,
Drug Prescription,Prescripció per drogues,
Drug Name / Description,Nom / descripció del medicament,
Dosage,Dosificació,
Dosage by Time Interval,Dosificació per interval de temps,
Interval,Interval,
Interval UOM,Interval UOM,
Hour,Hora,
Update Schedule,Actualitza la programació,
Exercise,Exercici,
Difficulty Level,Nivell de dificultat,
Counts Target,Comptes objectiu,
Counts Completed,Comptes completats,
Assistance Level,Nivell d&#39;assistència,
Active Assist,Assistència activa,
Exercise Name,Nom de l’exercici,
Body Parts,Parts del cos,
Exercise Instructions,Instruccions per fer exercici,
Exercise Video,Vídeo d’exercici,
Exercise Steps,Passos d’exercici,
Steps,Passos,
Steps Table,Taula de passos,
Exercise Type Step,Tipus d’exercici Pas,
Max number of visit,Nombre màxim de visites,
Visited yet,Visitat encara,
Reference Appointments,Cites de referència,
Valid till,Vàlid fins a,
Fee Validity Reference,Referència de validesa de la taxa,
Basic Details,Detalls bàsics,
HLC-PRAC-.YYYY.-,HLC-PRAC-.YYYY.-,
Mobile,Mòbil,
Phone (R),Telèfon (R),
Phone (Office),Telèfon (oficina),
Employee and User Details,Detalls de l’empleat i de l’usuari,
Hospital,Hospital,
Appointments,Cites,
Practitioner Schedules,Horaris professionals,
Charges,Càrrecs,
Out Patient Consulting Charge,Càrrec de consulta de pacients fora,
Default Currency,Moneda per defecte,
Healthcare Schedule Time Slot,Horari d&#39;horari d&#39;assistència sanitària,
Parent Service Unit,Unitat de servei al pare,
Service Unit Type,Tipus d&#39;unitat de servei,
Allow Appointments,Permet cites,
Allow Overlap,Permet la superposició,
Inpatient Occupancy,Ocupació hospitalària,
Occupancy Status,Estat d&#39;ocupació,
Vacant,Vacant,
Occupied,Ocupada,
Item Details,Detalls de l'article,
UOM Conversion in Hours,Conversió UOM en hores,
Rate / UOM,Taxa / UOM,
Change in Item,Canvi en l&#39;element,
Out Patient Settings,Fora de configuració del pacient,
Patient Name By,Nom del pacient mitjançant,
Patient Name,Nom del pacient,
Link Customer to Patient,Enllaça el client amb el pacient,
"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.","Si està marcada, es crearà un client, assignat a Pacient. Les factures del pacient es crearan contra aquest client. També podeu seleccionar el client existent mentre feu el pacient.",
Default Medical Code Standard,Codi per defecte de codi mèdic,
Collect Fee for Patient Registration,Recull la tarifa per al registre del pacient,
Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,"Si ho comproveu, es crearan nous pacients amb l’estat de Discapacitat per defecte i només s’habilitaran després de facturar la quota de registre.",
Registration Fee,Quota d&#39;inscripció,
Automate Appointment Invoicing,Automatitzar la facturació de cites,
Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Gestioneu la factura de cita enviada i cancel·lada automàticament per a la trobada de pacients,
Enable Free Follow-ups,Activa el seguiment gratuït,
Number of Patient Encounters in Valid Days,Nombre de trobades de pacients en dies vàlids,
The number of free follow ups (Patient Encounters in valid days) allowed,El nombre de seguiments gratuïts (Trobades de pacients en dies vàlids) permesos,
Valid Number of Days,Nombre de dies vàlid,
Time period (Valid number of days) for free consultations,Període de temps (nombre vàlid de dies) per a consultes gratuïtes,
Default Healthcare Service Items,Elements predeterminats del servei sanitari,
"You can configure default Items for billing consultation charges, procedure consumption items and inpatient visits","Podeu configurar els articles predeterminats per als càrrecs de consulta de facturació, els articles de consum de procediments i les visites hospitalàries",
Clinical Procedure Consumable Item,Procediment clínic Consumible Article,
Default Accounts,Comptes per defecte,
Default income accounts to be used if not set in Healthcare Practitioner to book Appointment charges.,Compte de renda per defecte que s&#39;utilitzarà si no s&#39;estableix a Healthcare Practitioner per reservar càrrecs de cita.,
Default receivable accounts to be used to book Appointment charges.,Comptes per cobrar per defecte que s’utilitzaran per reservar els càrrecs de les cites.,
Out Patient SMS Alerts,Alertes SMS de pacients,
Patient Registration,Registre de pacients,
Registration Message,Missatge de registre,
Confirmation Message,Missatge de confirmació,
Avoid Confirmation,Eviteu la confirmació,
Do not confirm if appointment is created for the same day,No confirmeu si es crea una cita per al mateix dia,
Appointment Reminder,Recordatori de cites,
Reminder Message,Missatge de recordatori,
Remind Before,Recordeu abans,
Laboratory Settings,Configuració del Laboratori,
Create Lab Test(s) on Sales Invoice Submission,Creeu proves de laboratori en enviar factures de vendes,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,"Si ho marqueu, es crearan proves de laboratori especificades a la factura de venda en enviar-les.",
Create Sample Collection document for Lab Test,Creeu un document de recopilació de mostres per a la prova de laboratori,
Checking this will create a Sample Collection document  every time you create a Lab Test,"Si ho marqueu, es crearà un document de recopilació de mostres cada vegada que creeu una prova de laboratori",
Employee name and designation in print,Nom de l&#39;empleat i designació en format imprès,
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.,Marqueu aquesta opció si voleu que el nom i la designació de l’empleat associats a l’usuari que envia el document s’imprimeixin a l’informe de proves de laboratori.,
Do not print or email Lab Tests without Approval,No imprimiu ni envieu per correu electrònic proves de laboratori sense aprovació,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,"Si ho marqueu, es restringiran la impressió i el correu electrònic de documents de prova de laboratori tret que tinguin l&#39;estat d&#39;aprovat.",
Custom Signature in Print,Signatura personalitzada a la impressió,
Laboratory SMS Alerts,Alertes SMS de laboratori,
Result Printed Message,Missatge imprès de resultats,
Result Emailed Message,Resultat Missatge enviat per correu electrònic,
Check In,Registrar,
Check Out,Sortida,
HLC-INP-.YYYY.-,HLC-INP-.YYYY.-,
A Positive,Un positiu,
A Negative,A negatiu,
AB Positive,AB Positiu,
AB Negative,AB negatiu,
B Positive,B Positiu,
B Negative,B negatiu,
O Positive,O positiu,
O Negative,O negatiu,
Date of birth,Data de naixement,
Admission Scheduled,Admissió programada,
Discharge Scheduled,Descàrrega programada,
Discharged,Descarregat,
Admission Schedule Date,Data d&#39;admissió Data,
Admitted Datetime,Datetime admès,
Expected Discharge,Alta esperada,
Discharge Date,Data de caducitat,
Lab Prescription,Prescripció del laboratori,
Lab Test Name,Nom de la prova de laboratori,
Test Created,Prova creada,
Submitted Date,Data enviada,
Approved Date,Data aprovada,
Sample ID,Identificador de mostra,
Lab Technician,Tècnic de laboratori,
Report Preference,Prefereixen informes,
Test Name,Nom de la prova,
Test Template,Plantilla de prova,
Test Group,Grup de prova,
Custom Result,Resultat personalitzat,
LabTest Approver,LabTest Approver,
Add Test,Afegir prova,
Normal Range,Rang normal,
Result Format,Format de resultats,
Single,Solter,
Compound,Compòsit,
Descriptive,Descriptiva,
Grouped,Agrupats,
No Result,sense Resultat,
This value is updated in the Default Sales Price List.,Aquest valor s&#39;actualitza a la llista de preus de venda predeterminada.,
Lab Routine,Rutina de laboratori,
Result Value,Valor de resultat,
Require Result Value,Requereix un valor de resultat,
Normal Test Template,Plantilla de prova normal,
Patient Demographics,Demografia del pacient,
HLC-PAT-.YYYY.-,HLC-PAT-.YYYY.-,
Middle Name (optional),Segon nom (opcional),
Inpatient Status,Estat d&#39;internament,
"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.","Si l&#39;opció &quot;Enllaça client amb pacient&quot; està marcada a Configuració sanitària i no es selecciona un client existent, es crearà un client per a aquest pacient per registrar les transaccions al mòdul Comptes.",
Personal and Social History,Història personal i social,
Marital Status,Estat Civil,
Married,Casat,
Divorced,Divorciat,
Widow,Viuda,
Patient Relation,Relació del pacient,
"Allergies, Medical and Surgical History","Al·lèrgies, història mèdica i quirúrgica",
Allergies,Al·lèrgies,
Medication,Medicaments,
Medical History,Historial mèdic,
Surgical History,Història quirúrgica,
Risk Factors,Factors de risc,
Occupational Hazards and Environmental Factors,Riscos laborals i factors ambientals,
Other Risk Factors,Altres factors de risc,
Patient Details,Detalls del pacient,
Additional information regarding the patient,Informació addicional sobre el pacient,
HLC-APP-.YYYY.-,HLC-APP-.AAAA.-,
Patient Age,Edat del pacient,
Get Prescribed Clinical Procedures,Obteniu procediments clínics prescrits,
Therapy,Teràpia,
Get Prescribed Therapies,Obteniu teràpies prescrites,
Appointment Datetime,Cita Data i hora,
Duration (In Minutes),Durada (en minuts),
Reference Sales Invoice,Factura de vendes de referència,
More Info,Més Info,
Referring Practitioner,Practitioner referent,
Reminded,Recordat,
HLC-PA-.YYYY.-,HLC-PA-.AAAA.-,
Assessment Template,Plantilla d&#39;avaluació,
Assessment Datetime,Avaluació Datetime,
Assessment Description,Descripció de l&#39;avaluació,
Assessment Sheet,Full d&#39;avaluació,
Total Score Obtained,Puntuació total obtinguda,
Scale Min,Escala mín,
Scale Max,Escala màx,
Patient Assessment Detail,Detall de l’avaluació del pacient,
Assessment Parameter,Paràmetre d&#39;avaluació,
Patient Assessment Parameter,Paràmetre d’avaluació del pacient,
Patient Assessment Sheet,Full de valoració del pacient,
Patient Assessment Template,Plantilla d&#39;avaluació del pacient,
Assessment Parameters,Paràmetres d&#39;avaluació,
Parameters,Paràmetres,
Assessment Scale,Escala d’avaluació,
Scale Minimum,Escala mínima,
Scale Maximum,Escala màxima,
HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
Encounter Date,Data de trobada,
Encounter Time,Temps de trobada,
Encounter Impression,Impressió de trobada,
Symptoms,Símptomes,
In print,En impressió,
Medical Coding,Codificació mèdica,
Procedures,Procediments,
Therapies,Teràpies,
Review Details,Revisa els detalls,
Patient Encounter Diagnosis,Diagnòstic de trobada de pacients,
Patient Encounter Symptom,Símptoma de trobada de pacients,
HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
Attach Medical Record,Adjunta la història clínica,
Reference DocType,DocType de referència,
Spouse,Cònjuge,
Family,Família,
Schedule Details,Detalls de l’horari,
Schedule Name,Programar el nom,
Time Slots,Tragamonedas de temps,
Practitioner Service Unit Schedule,Calendari de la Unitat de Servei de Practitioner,
Procedure Name,Nom del procediment,
Appointment Booked,Cita prèvia reservada,
Procedure Created,Procediment creat,
HLC-SC-.YYYY.-,HLC-SC-.YYYY.-,
Collected By,Recollida per,
Particulars,Particulars,
Result Component,Component de resultats,
HLC-THP-.YYYY.-,HLC-THP-.AAAA.-,
Therapy Plan Details,Detalls del pla de teràpia,
Total Sessions,Sessions totals,
Total Sessions Completed,Total de sessions completades,
Therapy Plan Detail,Detall del pla de teràpia,
No of Sessions,No de sessions,
Sessions Completed,Sessions finalitzades,
Tele,Tele,
Exercises,Exercicis,
Therapy For,Teràpia per a,
Add Exercises,Afegiu exercicis,
Body Temperature,Temperatura corporal,
Presence of a fever (temp &gt; 38.5 °C/101.3 °F or sustained temp &gt; 38 °C/100.4 °F),"Presència d&#39;una febre (temperatura&gt; 38,5 ° C / 101.3 ° F o temperatura sostinguda&gt; 38 ° C / 100.4 ° F)",
Heart Rate / Pulse,Taxa / pols del cor,
Adults' pulse rate is anywhere between 50 and 80 beats per minute.,El ritme de pols dels adults és entre 50 i 80 batecs per minut.,
Respiratory rate,Taxa respiratòria,
Normal reference range for an adult is 16–20 breaths/minute (RCP 2012),El rang de referència normal per a un adult és de 16-20 respiracions / minut (RCP 2012),
Tongue,Llengua,
Coated,Recobert,
Very Coated,Molt recobert,
Normal,Normal,
Furry,Pelut,
Cuts,Retalls,
Abdomen,Abdomen,
Bloated,Bloated,
Fluid,Fluid,
Constipated,Constipat,
Reflexes,Reflexos,
Hyper,Hyper,
Very Hyper,Molt Hyper,
One Sided,Un costat,
Blood Pressure (systolic),Pressió sanguínia (sistòlica),
Blood Pressure (diastolic),Pressió sanguínia (diastòlica),
Blood Pressure,Pressió sanguínea,
"Normal resting blood pressure in an adult is approximately 120 mmHg systolic, and 80 mmHg diastolic, abbreviated ""120/80 mmHg""","La pressió arterial normal en un adult és d&#39;aproximadament 120 mmHg sistòlica i 80 mmHg diastòlica, abreujada &quot;120/80 mmHg&quot;",
Nutrition Values,Valors nutricionals,
Height (In Meter),Alçada (en metro),
Weight (In Kilogram),Pes (en quilogram),
BMI,IMC,
Hotel Room,Habitació d&#39;hotel,
Hotel Room Type,Tipus d&#39;habitació de l&#39;hotel,
Capacity,Capacitat,
Extra Bed Capacity,Capacitat de llit supletori,
Hotel Manager,Gerent d&#39;hotel,
Hotel Room Amenity,Habitació de l&#39;hotel Amenity,
Billable,Facturable,
Hotel Room Package,Paquet d&#39;habitacions de l&#39;hotel,
Amenities,Serveis,
Hotel Room Pricing,Preus de l&#39;habitació de l&#39;hotel,
Hotel Room Pricing Item,Element de preus de l&#39;habitació de l&#39;hotel,
Hotel Room Pricing Package,Paquet de tarifes de l&#39;habitació de l&#39;hotel,
Hotel Room Reservation,Reserva d&#39;habitació de l&#39;hotel,
Guest Name,Nom d&#39;amfitrió,
Late Checkin,Late Checkin,
Booked,Reservat,
Hotel Reservation User,Usuari de la reserva d&#39;hotel,
Hotel Room Reservation Item,Element de reserva d&#39;habitacions de l&#39;hotel,
Hotel Settings,Configuració de l&#39;hotel,
Default Taxes and Charges,Impostos i Càrrecs per defecte,
Default Invoice Naming Series,Sèrie de nomenclatura per facturar per defecte,
Additional Salary,Salari addicional,
HR,HR,
HR-ADS-.YY.-.MM.-,HR-ADS-.YY .-. MM.-,
Salary Component,component salari,
Overwrite Salary Structure Amount,Sobreescriure la quantitat d&#39;estructura salarial,
Deduct Full Tax on Selected Payroll Date,Deduïu l&#39;impost complet a la data de nòmina seleccionada,
Payroll Date,Data de nòmina,
Date on which this component is applied,Data en què s&#39;aplica aquest component,
Salary Slip,Slip Salari,
Salary Component Type,Tipus de component salarial,
HR User,HR User,
Appointment Letter,Carta de cita,
Job Applicant,Job Applicant,
Applicant Name,Nom del sol·licitant,
Appointment Date,Data de citació,
Appointment Letter Template,Plantilla de carta de cites,
Body,Cos,
Closing Notes,Notes de cloenda,
Appointment Letter content,Cita Contingut de la carta,
Appraisal,Avaluació,
HR-APR-.YY.-.MM.,HR-APR-.YY.-.MM.,
Appraisal Template,Plantilla d'Avaluació,
For Employee Name,Per Nom de l'Empleat,
Goals,Objectius,
Total Score (Out of 5),Puntuació total (de 5),
"Any other remarks, noteworthy effort that should go in the records.","Altres observacions, esforç notable que ha d&#39;anar en els registres.",
Appraisal Goal,Avaluació Meta,
Key Responsibility Area,Àrea de Responsabilitat clau,
Weightage (%),Ponderació (%),
Score (0-5),Puntuació (0-5),
Score Earned,Score Earned,
Appraisal Template Title,Títol de plantilla d'avaluació,
Appraisal Template Goal,Meta Plantilla Appraisal,
KRA,KRA,
Key Performance Area,Àrea Clau d'Acompliment,
HR-ATT-.YYYY.-,HR-ATT-.YYYY.-,
On Leave,De baixa,
Work From Home,Treball des de casa,
Leave Application,Deixar Aplicació,
Attendance Date,Assistència Data,
Attendance Request,Sol·licitud d&#39;assistència,
Late Entry,Entrada tardana,
Early Exit,Sortida anticipada,
Half Day Date,Medi Dia Data,
On Duty,De servei,
Explanation,Explicació,
Compensatory Leave Request,Sol·licitud de baixa compensatòria,
Leave Allocation,Assignació d'absència,
Worked On Holiday,Va treballar en vacances,
Work From Date,Treball des de la data,
Work End Date,Data de finalització de treball,
Email Sent To,Correu electrònic enviat a,
Select Users,Seleccioneu usuaris,
Send Emails At,En enviar correus electrònics,
Reminder,Recordatori,
Daily Work Summary Group User,Usuari del grup Resum del treball diari,
email,correu electrònic,
Parent Department,Departament de pares,
Leave Block List,Deixa Llista de bloqueig,
Days for which Holidays are blocked for this department.,Dies de festa que estan bloquejats per aquest departament.,
Leave Approver,Aprovador d'absències,
Expense Approver,Aprovador de despeses,
Department Approver,Departament aprover,
Approver,Aprovador,
Required Skills,Habilitats obligatòries,
Skills,Habilitats,
Designation Skill,Habilitat de designació,
Skill,Habilitat,
Driver,Conductor,
HR-DRI-.YYYY.-,HR-DRI -YYYY.-,
Suspended,Suspès,
Transporter,Transportador,
Applicable for external driver,Aplicable per a controlador extern,
Cellphone Number,Número de telèfon,
License Details,Detalls de la llicència,
License Number,Número de llicència,
Issuing Date,Data d&#39;emissió,
Driving License Categories,Categories de llicències de conducció,
Driving License Category,Categoria de llicència de conducció,
Fleet Manager,Fleet Manager,
Driver licence class,Classe de permís de conduir,
HR-EMP-,HR-EMP-,
Employment Type,Tipus d'Ocupació,
Emergency Contact,Contacte d'Emergència,
Emergency Contact Name,Nom del contacte d’emergència,
Emergency Phone,Telèfon d'Emergència,
ERPNext User,Usuari ERPNext,
"System User (login) ID. If set, it will become default for all HR forms.","System User (login) ID. If set, it will become default for all HR forms.",
Create User Permission,Crea permís d&#39;usuari,
This will restrict user access to other employee records,Això restringirà l&#39;accés dels usuaris a altres registres dels empleats,
Joining Details,Informació d&#39;unió,
Offer Date,Data d'Oferta,
Confirmation Date,Data de confirmació,
Contract End Date,Data de finalització de contracte,
Notice (days),Avís (dies),
Date Of Retirement,Data de la jubilació,
Department and Grade,Departament i grau,
Reports to,Informes a,
Attendance and Leave Details,Detalls d’assistència i permís,
Leave Policy,Deixeu la política,
Attendance Device ID (Biometric/RF tag ID),Identificació de dispositiu d&#39;assistència (identificació de l&#39;etiqueta biomètrica / RF),
Applicable Holiday List,Llista de vacances aplicable,
Default Shift,Canvi per defecte,
Salary Details,Detalls salarials,
Salary Mode,Salary Mode,
Bank A/C No.,Número de Compte Corrent,
Health Insurance,Assegurança de salut,
Health Insurance Provider,Proveïdor d&#39;assegurances de salut,
Health Insurance No,Assegurança de Salut No,
Prefered Email,preferit per correu electrònic,
Personal Email,Email Personal,
Permanent Address Is,Adreça permanent,
Rented,Llogat,
Owned,Propietat de,
Permanent Address,Adreça Permanent,
Prefered Contact Email,Correu electrònic de contacte preferida,
Company Email,Email de l'empresa,
Provide Email Address registered in company,Proporcionar adreça de correu electrònic registrada a la companyia,
Current Address Is,L'adreça actual és,
Current Address,Adreça actual,
Personal Bio,Bio personal,
Bio / Cover Letter,Bio / Carta de presentació,
Short biography for website and other publications.,Breu biografia de la pàgina web i altres publicacions.,
Passport Number,Nombre de Passaport,
Date of Issue,Data d'emissió,
Place of Issue,Lloc de la incidència,
Widowed,Vidu,
Family Background,Antecedents de família,
"Here you can maintain family details like name and occupation of parent, spouse and children","Aquí pot mantenir els detalls de la família com el nom i ocupació dels pares, cònjuge i fills",
Health Details,Detalls de la Salut,
"Here you can maintain height, weight, allergies, medical concerns etc","Aquí pot actualitzar l'alçada, el pes, al·lèrgies, problemes mèdics, etc.",
Educational Qualification,Capacitació per a l'Educació,
Previous Work Experience,Experiència laboral anterior,
External Work History,Historial de treball extern,
History In Company,Història a la Companyia,
Internal Work History,Historial de treball intern,
Resignation Letter Date,Carta de renúncia Data,
Relieving Date,Data Alleujar,
Reason for Leaving,Raons per deixar el,
Leave Encashed?,Leave Encashed?,
Encashment Date,Data Cobrament,
New Workplace,Nou lloc de treball,
HR-EAD-.YYYY.-,HR-EAD -YYYY.-,
Returned Amount,Import retornat,
Claimed,Reclamat,
Advance Account,Compte avançat,
Employee Attendance Tool,Empleat Eina Assistència,
Unmarked Attendance,L&#39;assistència sense marcar,
Employees HTML,Els empleats HTML,
Marked Attendance,assistència marcada,
Marked Attendance HTML,Assistència marcat HTML,
Employee Benefit Application,Sol·licitud de prestació d&#39;empleats,
Max Benefits (Yearly),Beneficis màxims (anuals),
Remaining Benefits (Yearly),Beneficis restants (anuals),
Payroll Period,Període de nòmina,
Benefits Applied,Beneficis aplicats,
Dispensed Amount (Pro-rated),Quantitat distribuïda (prorratejada),
Employee Benefit Application Detail,Detall d&#39;aplicació de beneficis d&#39;empleats,
Earning Component,Complement guanyador,
Pay Against Benefit Claim,Paga contra la reclamació de beneficis,
Max Benefit Amount,Import màxim de beneficis,
Employee Benefit Claim,Reclamació de prestació d&#39;empleats,
Claim Date,Data de reclamació,
Benefit Type and Amount,Tipus de benefici i import,
Claim Benefit For,Reclamació per benefici,
Max Amount Eligible,Import màxim elegible,
Expense Proof,Comprovació de despeses,
Employee Boarding Activity,Activitat d&#39;embarcament d&#39;empleats,
Activity Name,Nom de l&#39;activitat,
Task Weight,Pes de tasques,
Required for Employee Creation,Obligatori per a la creació d&#39;empleats,
Applicable in the case of Employee Onboarding,Aplicable en el cas d&#39;Empleats a bord,
Employee Checkin,Registre d’empleats,
Log Type,Tipus de registre,
OUT,SORTIDA,
Location / Device ID,Ubicació / ID del dispositiu,
Skip Auto Attendance,Omet la assistència automàtica,
Shift Start,Inici Majúscules,
Shift End,Final de majúscules,
Shift Actual Start,Majúscul Inici inicial,
Shift Actual End,Maj final final,
Employee Education,Formació Empleat,
School/University,Escola / Universitat,
Graduate,Graduat,
Post Graduate,Postgrau,
Under Graduate,Baix de Postgrau,
Year of Passing,Any de defunció,
Class / Percentage,Classe / Percentatge,
Major/Optional Subjects,Major/Optional Subjects,
Employee External Work History,Historial de treball d'Empleat extern,
Total Experience,Experiència total,
Default Leave Policy,Política de sortida predeterminada,
Default Salary Structure,Estructura salarial predeterminada,
Employee Group Table,Taula de grup d&#39;empleats,
ERPNext User ID,ID d&#39;usuari ERPNext,
Employee Health Insurance,Assegurança mèdica dels empleats,
Health Insurance Name,Nom de l&#39;assegurança mèdica,
Employee Incentive,Incentiu a l&#39;empleat,
Incentive Amount,Monto Incentiu,
Employee Internal Work History,Historial de treball intern de l'empleat,
Employee Onboarding,Empleat a bord,
Notify users by email,Aviseu els usuaris per correu electrònic,
Employee Onboarding Template,Plantilla d&#39;embarcament d&#39;empleats,
Activities,Activitats,
Employee Onboarding Activity,Activitat d&#39;embarcament d&#39;empleats,
Employee Other Income,Altres ingressos dels empleats,
Employee Promotion,Promoció d&#39;empleats,
Promotion Date,Data de promoció,
Employee Promotion Details,Detalls de la promoció dels empleats,
Employee Promotion Detail,Detall de la promoció dels empleats,
Employee Property History,Historial de la propietat dels empleats,
Employee Separation,Separació d&#39;empleats,
Employee Separation Template,Plantilla de separació d&#39;empleats,
Exit Interview Summary,Surt del resum de la entrevista,
Employee Skill,Habilitat dels empleats,
Proficiency,Competència,
Evaluation Date,Data d&#39;avaluació,
Employee Skill Map,Mapa d’habilitats dels empleats,
Employee Skills,Habilitats dels empleats,
Trainings,Entrenaments,
Employee Tax Exemption Category,Categoria d&#39;exempció d&#39;impostos als empleats,
Max Exemption Amount,Import màxim d’exempció,
Employee Tax Exemption Declaration,Declaració d&#39;exempció d&#39;impostos als empleats,
Declarations,Declaracions,
Total Declared Amount,Import total declarat,
Total Exemption Amount,Import total d&#39;exempció,
Employee Tax Exemption Declaration Category,Categoria Declaració d&#39;exempció d&#39;impostos dels empleats,
Exemption Sub Category,Subcategoria d&#39;exempció,
Exemption Category,Categoria d&#39;exempció,
Maximum Exempted Amount,Import màxim eximit,
Declared Amount,Import declarat,
Employee Tax Exemption Proof Submission,Sol·licitud d&#39;exempció d&#39;impostos a l&#39;empleat,
Submission Date,Data de presentació,
Tax Exemption Proofs,Proves d&#39;exempció d&#39;impostos,
Total Actual Amount,Import total real,
Employee Tax Exemption Proof Submission Detail,Detall d&#39;enviament de prova d&#39;exempció d&#39;impostos als empleats,
Maximum Exemption Amount,Import màxim d&#39;exempció,
Type of Proof,Tipus de prova,
Actual Amount,Import real,
Employee Tax Exemption Sub Category,Sub categoria d&#39;exempció d&#39;impostos als empleats,
Tax Exemption Category,Categoria d&#39;exempció fiscal,
Employee Training,Formació dels empleats,
Training Date,Data de formació,
Employee Transfer,Transferència d&#39;empleats,
Transfer Date,Data de transferència,
Employee Transfer Details,Detalls de la transferència d&#39;empleats,
Employee Transfer Detail,Detall de transferència d&#39;empleats,
Re-allocate Leaves,Torneu a assignar les fulles,
Create New Employee Id,Crea una nova identificació d&#39;empleat,
New Employee ID,Nou ID d&#39;empleat,
Employee Transfer Property,Propietat de transferència d&#39;empleats,
HR-EXP-.YYYY.-,HR-EXP -YYYY.-,
Expense Taxes and Charges,Despeses i impostos,
Total Sanctioned Amount,Suma total Sancionat,
Total Advance Amount,Import avançat total,
Total Claimed Amount,Suma total del Reclamat,
Total Amount Reimbursed,Suma total reemborsat,
Vehicle Log,Inicia vehicle,
Employees Email Id,Empleats Identificació de l'email,
More Details,Més detalls,
Expense Claim Account,Compte de Despeses,
Expense Claim Advance,Avançament de la reclamació de despeses,
Unclaimed amount,Quantitat no reclamada,
Expense Claim Detail,Reclamació de detall de despesa,
Expense Date,Data de la Despesa,
Expense Claim Type,Expense Claim Type,
Holiday List Name,Nom de la Llista de vacances,
Total Holidays,Vacances totals,
Add Weekly Holidays,Afegeix vacances setmanals,
Weekly Off,Setmanal Off,
Add to Holidays,Afegeix a les vacances,
Holidays,Vacances,
Clear Table,Taula en blanc,
HR Settings,Configuració de recursos humans,
Employee Settings,Configuració dels empleats,
Retirement Age,Edat de jubilació,
Enter retirement age in years,Introdueixi l&#39;edat de jubilació en anys,
Stop Birthday Reminders,Aturar recordatoris d'aniversari,
Expense Approver Mandatory In Expense Claim,Aprovació de despeses obligatòria en la reclamació de despeses,
Payroll Settings,Ajustaments de Nòmines,
Leave,Marxa,
Max working hours against Timesheet,Màxim les hores de treball contra la part d&#39;hores,
Include holidays in Total no. of Working Days,Inclou vacances en el número total de dies laborables,
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Si es marca, número total. de dies de treball s'inclouran els festius, i això reduirà el valor de Salari per dia",
"If checked, hides and disables Rounded Total field in Salary Slips","Si es marca, amaga i inhabilita el camp Total arrodonit als traços de salari",
The fraction of daily wages to be paid for half-day attendance,La fracció dels salaris diaris a pagar per assistència a mig dia,
Email Salary Slip to Employee,Enviar correu electrònic am salari a l'empleat,
Emails salary slip to employee based on preferred email selected in Employee,Els correus electrònics de lliscament salarial als empleats basades en el correu electrònic preferit seleccionat en Empleat,
Encrypt Salary Slips in Emails,Xifra els salts de salari als correus electrònics,
"The salary slip emailed to the employee will be password protected, the password will be generated based on the password policy.","La fitxa salarial enviada per correu electrònic a l’empleat estarà protegida amb contrasenya, la contrasenya es generarà en funció de la política de contrasenyes.",
Password Policy,Política de contrasenya,
<b>Example:</b> SAL-{first_name}-{date_of_birth.year} <br>This will generate a password like SAL-Jane-1972,<b>Exemple:</b> SAL- {primer nom} - {data_of_birth.year} <br> Això generarà una contrasenya com SAL-Jane-1972,
Leave Settings,Deixeu els paràmetres,
Leave Approval Notification Template,Deixeu la plantilla de notificació d&#39;aprovació,
Leave Status Notification Template,Deixeu la plantilla de notificació d&#39;estat,
Role Allowed to Create Backdated Leave Application,Funció permesa per crear una sol·licitud d&#39;excedència retardada,
Leave Approver Mandatory In Leave Application,Deixeu l&#39;aprovació obligatòria a l&#39;aplicació Deixar,
Show Leaves Of All Department Members In Calendar,Mostra fulles de tots els membres del departament al calendari,
Auto Leave Encashment,Encens automàtic de permís,
Hiring Settings,Configuració de la contractació,
Check Vacancies On Job Offer Creation,Comproveu les vacants en la creació d’oferta de feina,
Identification Document Type,Tipus de document d&#39;identificació,
Effective from,A partir de,
Allow Tax Exemption,Permetre l&#39;exempció fiscal,
"If enabled, Tax Exemption Declaration will be considered for income tax calculation.","Si està habilitat, es considerarà la declaració d&#39;exempció fiscal per al càlcul de l&#39;impost sobre la renda.",
Standard Tax Exemption Amount,Import estàndard d’exempció d’impostos,
Taxable Salary Slabs,Lloses Salarials Tributables,
Taxes and Charges on Income Tax,Impostos i càrrecs per l&#39;Impost sobre la Renda,
Other Taxes and Charges,Altres impostos i càrrecs,
Income Tax Slab Other Charges,Llosa de l&#39;Impost sobre la Renda Altres Càrrecs,
Min Taxable Income,Renda imposable mínima,
Max Taxable Income,Renda imposable màxima,
Applicant for a Job,Sol·licitant d'ocupació,
Accepted,Acceptat,
Job Opening,Obertura de treball,
Cover Letter,carta de presentació,
Resume Attachment,Adjunt currículum vitae,
Job Applicant Source,Font sol·licitant del treball,
Applicant Email Address,Adreça de correu electrònic del sol·licitant,
Awaiting Response,Espera de la resposta,
Job Offer Terms,Termes de la oferta de feina,
Select Terms and Conditions,Selecciona Termes i Condicions,
Printing Details,Impressió Detalls,
Job Offer Term,Termini de la oferta de treball,
Offer Term,Oferta Termini,
Value / Description,Valor / Descripció,
Description of a Job Opening,Descripció d'una oferta de treball,
Job Title,Títol Professional,
Staffing Plan,Pla de personal,
Planned number of Positions,Nombre previst de posicions,
"Job profile, qualifications required etc.","Perfil del lloc, formació necessària, etc.",
HR-LAL-.YYYY.-,HR-LAL -YYYY.-,
Allocation,Assignació,
New Leaves Allocated,Noves absències Assignades,
Add unused leaves from previous allocations,Afegir les fulles no utilitzats de les assignacions anteriors,
Unused leaves,Fulles no utilitzades,
Total Leaves Allocated,Absències totals assignades,
Total Leaves Encashed,Total de fulles encastades,
Leave Period,Període d&#39;abandonament,
Carry Forwarded Leaves,Portar Fulles reenviats,
Apply / Approve Leaves,Aplicar / Aprovar Fulles,
HR-LAP-.YYYY.-,HR-LAP -YYYY.-,
Leave Balance Before Application,Leave Balance Before Application,
Total Leave Days,Dies totals d'absències,
Leave Approver Name,Nom de l'aprovador d'absències,
Follow via Email,Seguiu per correu electrònic,
Block Holidays on important days.,Vacances de Bloc en dies importants.,
Leave Block List Name,Deixa Nom Llista de bloqueig,
Applies to Company,S'aplica a l'empresa,
"If not checked, the list will have to be added to each Department where it has to be applied.","Si no està habilitada, la llista haurà de ser afegit a cada departament en què s'ha d'aplicar.",
Block Days,Bloc de Dies,
Stop users from making Leave Applications on following days.,No permetis que els usuaris realitzin Aplicacions d'absències els següents dies.,
Leave Block List Dates,Deixa llista de blocs dates,
Allow Users,Permetre que usuaris,
Allow the following users to approve Leave Applications for block days.,Deixi els següents usuaris per aprovar sol·licituds de llicència per a diversos dies de bloc.,
Leave Block List Allowed,Llista d'absències permeses bloquejades,
Leave Block List Allow,Leave Block List Allow,
Allow User,Permetre a l'usuari,
Leave Block List Date,Deixa Llista de bloqueig Data,
Block Date,Bloquejar Data,
Leave Control Panel,Deixa Panell de control,
Select Employees,Seleccioneu Empleats,
Employment Type (optional),Tipus d’ocupació (opcional),
Branch (optional),Oficina (opcional),
Department (optional),Departament (opcional),
Designation (optional),Designació (opcional),
Employee Grade (optional),Grau dels empleats (opcional),
Employee (optional),Empleat (opcional),
Allocate Leaves,Assigna les fulles,
Carry Forward,Portar endavant,
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,Seleccioneu Carry Forward si també voleu incloure el balanç de l'any fiscal anterior deixa a aquest any fiscal,
New Leaves Allocated (In Days),Noves Fulles Assignats (en dies),
Allocate,Assignar,
Leave Balance,Deixeu el saldo,
Encashable days,Dies incondicionals,
Encashment Amount,Quantitat de coberta,
Leave Ledger Entry,Deixeu l’entrada al registre,
Transaction Name,Nom de la transacció,
Is Carry Forward,Is Carry Forward,
Is Expired,Està caducat,
Is Leave Without Pay,Es llicencia sense sou,
Holiday List for Optional Leave,Llista de vacances per a la licitació opcional,
Leave Allocations,Deixeu les assignacions,
Leave Policy Details,Deixeu els detalls de la política,
Leave Policy Detail,Deixeu el detall de la política,
Annual Allocation,Assignació anual,
Leave Type Name,Deixa Tipus Nom,
Max Leaves Allowed,Permet les fulles màx,
Applicable After (Working Days),Aplicable després (Dies laborables),
Maximum Continuous Days Applicable,Dies continus màxims aplicables,
Is Optional Leave,L&#39;opció és Deixar,
Allow Negative Balance,Permetre balanç negatiu,
Include holidays within leaves as leaves,Inclogui les vacances dins de les fulles com les fulles,
Is Compensatory,És compensatori,
Maximum Carry Forwarded Leaves,Màxim de fulles reenviades,
Expire Carry Forwarded Leaves (Days),Expireu les fulles reenviades (dies),
Calculated in days,Calculat en dies,
Encashment,Encashment,
Allow Encashment,Permetre Encashment,
Encashment Threshold Days,Dies de llindar d&#39;encashment,
Earned Leave,Sortida guanyada,
Is Earned Leave,Es deixa guanyat,
Earned Leave Frequency,Freqüència de sortida guanyada,
Rounding,Redondeig,
Payroll Employee Detail,Detall d&#39;empleat de la nòmina,
Payroll Frequency,La nòmina de freqüència,
Fortnightly,quinzenal,
Bimonthly,bimensual,
Employees,empleats,
Number Of Employees,Nombre d&#39;empleats,
Employee Details,Detalls del Empleat,
Validate Attendance,Valideu l&#39;assistència,
Salary Slip Based on Timesheet,Sobre la base de nòmina de part d&#39;hores,
Select Payroll Period,Seleccioneu el període de nòmina,
Deduct Tax For Unclaimed Employee Benefits,Deducció d&#39;impostos per a beneficis d&#39;empleats no reclamats,
Deduct Tax For Unsubmitted Tax Exemption Proof,Deducció d&#39;impostos per a la prova d&#39;exempció d&#39;impostos no enviada,
Select Payment Account to make Bank Entry,Seleccionar el compte de pagament per fer l&#39;entrada del Banc,
Salary Slips Created,Esclats salaris creats,
Salary Slips Submitted,Rebutjos salaris enviats,
Payroll Periods,Períodes de nòmina,
Payroll Period Date,Període de nòmina Data,
Purpose of Travel,Propòsit dels viatges,
Retention Bonus,Bonificació de retenció,
Bonus Payment Date,Data de pagament addicional,
Bonus Amount,Import de la bonificació,
Abbr,Abbr,
Depends on Payment Days,Depèn dels dies de pagament,
Is Tax Applicable,L&#39;impost és aplicable,
Variable Based On Taxable Salary,Variable basada en el salari tributari,
Exempted from Income Tax,Exempta de l&#39;Impost sobre la Renda,
Round to the Nearest Integer,Ronda a l’entitat més propera,
Statistical Component,component estadística,
"If selected, the value specified or calculated in this component will not contribute to the earnings or deductions. However, it's value can be referenced by other components that can be added or deducted. ","Si es selecciona, el valor especificat o calculats d&#39;aquest component no contribuirà als ingressos o deduccions. No obstant això, el seu valor pot ser referenciat per altres components que es poden afegir o deduir.",
Do Not Include in Total,No inclogui en total,
Flexible Benefits,Beneficis flexibles,
Is Flexible Benefit,És un benefici flexible,
Max Benefit Amount (Yearly),Import màxim de beneficis (anual),
Only Tax Impact (Cannot Claim But Part of Taxable Income),Només impacte fiscal (no es pot reclamar sinó part de la renda imposable),
Create Separate Payment Entry Against Benefit Claim,Creeu una entrada de pagament separada contra la reclamació de beneficis,
Condition and Formula,Condició i fórmula,
Amount based on formula,Quantitat basada en la fórmula,
Formula,fórmula,
Salary Detail,Detall de sous,
Component,component,
Do not include in total,No s&#39;inclouen en total,
Default Amount,Default Amount,
Additional Amount,Import addicional,
Tax on flexible benefit,Impost sobre el benefici flexible,
Tax on additional salary,Impost sobre sou addicional,
Salary Structure,Estructura salarial,
Working Days,Dies feiners,
Salary Slip Timesheet,Part d&#39;hores de salari de lliscament,
Total Working Hours,Temps de treball total,
Hour Rate,Hour Rate,
Bank Account No.,Compte Bancari No.,
Earning & Deduction,Guanyar i Deducció,
Earnings,Guanys,
Deductions,Deduccions,
Loan repayment,Amortització del préstec,
Employee Loan,préstec empleat,
Total Principal Amount,Import total principal,
Total Interest Amount,Import total d&#39;interès,
Total Loan Repayment,El reemborsament total del préstec,
net pay info,Dades de la xarxa de pagament,
Gross Pay - Total Deduction - Loan Repayment,Pagament Brut - Deducció total - Pagament de Préstecs,
Total in words,Total en paraules,
Net Pay (in words) will be visible once you save the Salary Slip.,El sou net (en paraules) serà visible un cop que es guardi la nòmina.,
Salary Component for timesheet based payroll.,El component salarial per a la nòmina de part d&#39;hores basat.,
Leave Encashment Amount Per Day,Deixeu l&#39;import de l&#39;encashment per dia,
Max Benefits (Amount),Beneficis màxims (Quantia),
Salary breakup based on Earning and Deduction.,Salary breakup based on Earning and Deduction.,
Total Earning,Benefici total,
Salary Structure Assignment,Assignació d&#39;Estructura Salarial,
Shift Assignment,Assignació de canvis,
Shift Type,Tipus de canvi,
Shift Request,Sol·licitud de canvi,
Enable Auto Attendance,Activa l&#39;assistència automàtica,
Mark attendance based on 'Employee Checkin' for Employees assigned to this shift.,Assistir en una marca basada en la comprovació dels empleats per als empleats assignats a aquest torn.,
Auto Attendance Settings,Configuració d&#39;assistència automàtica,
Determine Check-in and Check-out,Determineu el registre d&#39;entrada i la sortida,
Alternating entries as IN and OUT during the same shift,Alternar les entrades com IN i OUT durant el mateix torn,
Strictly based on Log Type in Employee Checkin,Basat estrictament en el tipus de registre al registre de la feina,
Working Hours Calculation Based On,Basat en el càlcul de les hores de treball,
First Check-in and Last Check-out,Primera entrada i darrera sortida,
Every Valid Check-in and Check-out,Totes les check-in i check-out vàlides,
Begin check-in before shift start time (in minutes),Començar el registre d’entrada abans de l’hora d’inici del torn (en minuts),
The time before the shift start time during which Employee Check-in is considered for attendance.,El temps abans de l&#39;hora d&#39;inici del torn durant el qual es preveu el registre d&#39;entrada dels empleats per assistència.,
Allow check-out after shift end time (in minutes),Permet el check out després de l&#39;hora de finalització del torn (en minuts),
Time after the end of shift during which check-out is considered for attendance.,Temps després del final del torn durant el qual es preveu el check-out per assistència.,
Working Hours Threshold for Half Day,Llindar d’hores laborals per a mig dia,
Working hours below which Half Day is marked. (Zero to disable),Hores laborals inferiors a les que es marca el mig dia (Zero per desactivar),
Working Hours Threshold for Absent,Llindar d’hores de treball per a absents,
Working hours below which Absent is marked. (Zero to disable),Hores de treball inferiors a les que es marca l’absent. (Zero per desactivar),
Process Attendance After,Assistència al procés Després,
Attendance will be marked automatically only after this date.,L&#39;assistència es marcarà automàticament només després d&#39;aquesta data.,
Last Sync of Checkin,Última sincronització de registre,
Last Known Successful Sync of Employee Checkin. Reset this only if you are sure that all Logs are synced from all the locations. Please don't modify this if you are unsure.,"Última connexió amb èxit de la sincronització de registre de treballadors Restabliu-ho només si esteu segurs que tots els registres estan sincronitzats des de totes les ubicacions. Si us plau, no modifiqueu-ho si no esteu segurs.",
Grace Period Settings For Auto Attendance,Configuració del període de gràcia per assistència automàtica,
Enable Entry Grace Period,Activa el període de gràcia d’entrada,
Late Entry Grace Period,Període d’ingrés tardà,
The time after the shift start time when check-in is considered as late (in minutes).,L&#39;hora després de l&#39;hora d&#39;inici del torn quan el registre es considera tard (en minuts).,
Enable Exit Grace Period,Activa el període de gràcia de sortida,
Early Exit Grace Period,Període de gràcia de sortida,
The time before the shift end time when check-out is considered as early (in minutes).,El temps abans de l&#39;hora de finalització del torn quan es fa el check-out és precoç (en pocs minuts).,
Skill Name,Nom de l&#39;habilitat,
Staffing Plan Details,Detalls del pla de personal,
Staffing Plan Detail,Detall del pla de personal,
Total Estimated Budget,Pressupost total estimat,
Vacancies,Ofertes vacants,
Estimated Cost Per Position,Cost estimat per posició,
Total Estimated Cost,Cost estimat total,
Current Count,Compte corrent,
Current Openings,Obertures actuals,
Number Of Positions,Nombre de posicions,
Taxable Salary Slab,Llosa salarial tributària,
From Amount,De la quantitat,
To Amount,Quantificar,
Percent Deduction,Deducció per cent,
Training Program,Programa d&#39;entrenament,
Event Status,Estat d&#39;esdeveniments,
Has Certificate,Té un certificat,
Seminar,seminari,
Theory,teoria,
Workshop,Taller,
Conference,conferència,
Exam,examen,
Internet,Internet,
Self-Study,Acte estudi,
Advance,Avanç,
Trainer Name,nom entrenador,
Trainer Email,entrenador correu electrònic,
Attendees,els assistents,
Employee Emails,Correus electrònics d&#39;empleats,
Training Event Employee,Formació dels treballadors Esdeveniment,
Invited,convidat,
Feedback Submitted,comentaris enviats,
Optional,Opcional,
Training Result Employee,Empleat Formació Resultat,
Travel Itinerary,Itinerari de viatge,
Travel From,Des del viatge,
Travel To,Viatjar a,
Mode of Travel,Mode de viatge,
Flight,Vol,
Train,Tren,
Taxi,Taxi,
Rented Car,Cotxe llogat,
Meal Preference,Preferència de menjar,
Vegetarian,Vegetariana,
Non-Vegetarian,No vegetariana,
Gluten Free,Sense gluten,
Non Diary,No diari,
Travel Advance Required,Cal anticipar el viatge,
Departure Datetime,Sortida Datetime,
Arrival Datetime,Data d&#39;arribada datetime,
Lodging Required,Allotjament obligatori,
Preferred Area for Lodging,Àrea preferida per a allotjament,
Check-in Date,Data d&#39;entrada,
Check-out Date,Data de sortida,
Travel Request,Sol·licitud de viatge,
Travel Type,Tipus de viatge,
Domestic,Domèstics,
International,Internacional,
Travel Funding,Finançament de viatges,
Require Full Funding,Demana un finançament total,
Fully Sponsored,Totalment patrocinat,
"Partially Sponsored, Require Partial Funding","Patrocinat parcialment, requereix finançament parcial",
Copy of Invitation/Announcement,Còpia de Invitació / Anunci,
"Details of Sponsor (Name, Location)","Detalls del patrocinador (nom, ubicació)",
Identification Document Number,Número de document d&#39;identificació,
Any other details,Qualsevol altre detall,
Costing Details,Costant els detalls,
Costing,Costejament,
Event Details,Detalls de l&#39;esdeveniment,
Name of Organizer,Nom de l&#39;organitzador,
Address of Organizer,Adreça de l&#39;organitzador,
Travel Request Costing,Cost de la sol·licitud de viatge,
Expense Type,Tipus de despeses,
Sponsored Amount,Import patrocinat,
Funded Amount,Import finançat,
Upload Attendance,Pujar Assistència,
Attendance From Date,Assistència des de data,
Attendance To Date,Assistència fins a la Data,
Get Template,Aconsegueix Plantilla,
Import Attendance,Importa Assistència,
Upload HTML,Pujar HTML,
Vehicle,vehicle,
License Plate,Matrícula,
Odometer Value (Last),Valor del comptaquilòmetres (última),
Acquisition Date,Data d&#39;adquisició,
Chassis No,nº de xassís,
Vehicle Value,El valor del vehicle,
Insurance Details,Detalls d&#39;Assegurances,
Insurance Company,Companyia asseguradora,
Policy No,sense política,
Additional Details,Detalls addicionals,
Fuel Type,Tipus de combustible,
Petrol,gasolina,
Diesel,dièsel,
Natural Gas,Gas Natural,
Electric,elèctric,
Fuel UOM,UOM de combustible,
Last Carbon Check,Últim control de Carboni,
Wheels,rodes,
Doors,portes,
HR-VLOG-.YYYY.-,HR-VLOG -YYYY.-,
Odometer Reading,La lectura del odòmetre,
Current Odometer value ,Valor actual del comptador,
last Odometer Value ,darrer valor Odòmetre,
Refuelling Details,Detalls de repostatge,
Invoice Ref,Ref factura,
Service Details,Detalls del servei,
Service Detail,Detall del servei,
Vehicle Service,Servei en el vehicle,
Service Item,servei d&#39;articles,
Brake Oil,oli dels frens,
Brake Pad,Pastilla de fre,
Clutch Plate,placa d&#39;embragatge,
Engine Oil,d&#39;oli del motor,
Oil Change,Canviar l&#39;oli,
Inspection,inspecció,
Mileage,quilometratge,
Hub Tracked Item,Element del rastreig del cub,
Hub Node,Node Hub,
Image List,Llista d&#39;imatges,
Item Manager,Administració d&#39;elements,
Hub User,Usuari del cub,
Hub Password,Contrasenya del concentrador,
Hub Users,Usuaris del concentrador,
Marketplace Settings,Configuració del mercat,
Disable Marketplace,Desactiva el mercat,
Marketplace URL (to hide and update label),URL del mercat (per amagar i actualitzar l&#39;etiqueta),
Registered,Enregistrat,
Sync in Progress,Sincronització en progrés,
Hub Seller Name,Nom del venedor del concentrador,
Custom Data,Dades personalitzades,
Member,Membre,
Partially Disbursed,parcialment Desemborsament,
Loan Closure Requested,Sol·licitud de tancament del préstec,
Repay From Salary,Pagar del seu sou,
Loan Details,Detalls de préstec,
Loan Type,Tipus de préstec,
Loan Amount,Total del préstec,
Is Secured Loan,El préstec està garantit,
Rate of Interest (%) / Year,Taxa d&#39;interès (%) / Any,
Disbursement Date,Data de desemborsament,
Disbursed Amount,Import desemborsat,
Is Term Loan,És préstec a termini,
Repayment Method,Mètode d&#39;amortització,
Repay Fixed Amount per Period,Pagar una quantitat fixa per Període,
Repay Over Number of Periods,Retornar al llarg Nombre de períodes,
Repayment Period in Months,Termini de devolució en Mesos,
Monthly Repayment Amount,Quantitat de pagament mensual,
Repayment Start Date,Data d&#39;inici del reemborsament,
Loan Security Details,Detalls de seguretat del préstec,
Maximum Loan Value,Valor màxim del préstec,
Account Info,Informació del compte,
Loan Account,Compte de préstec,
Interest Income Account,Compte d&#39;Utilitat interès,
Penalty Income Account,Compte d&#39;ingressos sancionadors,
Repayment Schedule,Calendari de reemborsament,
Total Payable Amount,La quantitat total a pagar,
Total Principal Paid,Principal principal pagat,
Total Interest Payable,L&#39;interès total a pagar,
Total Amount Paid,Import total pagat,
Loan Manager,Gestor de préstecs,
Loan Info,Informació sobre préstecs,
Rate of Interest,Tipus d&#39;interès,
Proposed Pledges,Promesos proposats,
Maximum Loan Amount,La quantitat màxima del préstec,
Repayment Info,Informació de la devolució,
Total Payable Interest,L&#39;interès total a pagar,
Against Loan ,Contra el préstec,
Loan Interest Accrual,Meritació d’interès de préstec,
Amounts,Quantitats,
Pending Principal Amount,Import pendent principal,
Payable Principal Amount,Import principal pagable,
Paid Principal Amount,Import principal pagat,
Paid Interest Amount,Import d’interès pagat,
Process Loan Interest Accrual,Compra d’interessos de préstec de procés,
Repayment Schedule Name,Nom de l’horari d’amortització,
Regular Payment,Pagament regular,
Loan Closure,Tancament del préstec,
Payment Details,Detalls del pagament,
Interest Payable,Interessos a pagar,
Amount Paid,Quantitat pagada,
Principal Amount Paid,Import principal pagat,
Repayment Details,Detalls de la devolució,
Loan Repayment Detail,Detall de l’amortització del préstec,
Loan Security Name,Nom de seguretat del préstec,
Unit Of Measure,Unitat de mesura,
Loan Security Code,Codi de seguretat del préstec,
Loan Security Type,Tipus de seguretat del préstec,
Haircut %,Tall de cabell %,
Loan  Details,Detalls del préstec,
Unpledged,No inclòs,
Pledged,Prometut,
Partially Pledged,Parcialment compromès,
Securities,Valors,
Total Security Value,Valor de seguretat total,
Loan Security Shortfall,Falta de seguretat del préstec,
Loan ,Préstec,
Shortfall Time,Temps de falta,
America/New_York,Amèrica / New_York,
Shortfall Amount,Import de la falta,
Security Value ,Valor de seguretat,
Process Loan Security Shortfall,Fallada de seguretat del préstec de procés,
Loan To Value Ratio,Ràtio de préstec al valor,
Unpledge Time,Temps de desunió,
Loan Name,Nom del préstec,
Rate of Interest (%) Yearly,Taxa d&#39;interès (%) anual,
Penalty Interest Rate (%) Per Day,Tipus d’interès de penalització (%) per dia,
Penalty Interest Rate is levied on the pending interest amount on a daily basis in case of delayed repayment ,El tipus d’interès de penalització es percep sobre l’import de l’interès pendent diàriament en cas d’amortització retardada,
Grace Period in Days,Període de gràcia en dies,
No. of days from due date until which penalty won't be charged in case of delay in loan repayment,Nombre de dies des de la data de venciment fins a la qual no es cobrarà cap penalització en cas de retard en la devolució del préstec,
Pledge,Compromís,
Post Haircut Amount,Publicar la quantitat de tall de cabell,
Process Type,Tipus de procés,
Update Time,Hora d’actualització,
Proposed Pledge,Promesa proposada,
Total Payment,El pagament total,
Balance Loan Amount,Saldo del Préstec Monto,
Is Accrued,Es merita,
Salary Slip Loan,Préstec antilliscant,
Loan Repayment Entry,Entrada de reemborsament del préstec,
Sanctioned Loan Amount,Import del préstec sancionat,
Sanctioned Amount Limit,Límite de la quantitat sancionada,
Unpledge,Desconnectat,
Haircut,Tall de cabell,
MAT-MSH-.YYYY.-,MAT-MSH-.YYYY.-,
Generate Schedule,Generar Calendari,
Schedules,Horaris,
Maintenance Schedule Detail,Detall del Programa de manteniment,
Scheduled Date,Data Prevista,
Actual Date,Data actual,
Maintenance Schedule Item,Programa de manteniment d'articles,
Random,Aleatori,
No of Visits,Número de Visites,
MAT-MVS-.YYYY.-,MAT-MVS-.YYYY.-,
Maintenance Date,Manteniment Data,
Maintenance Time,Temps de manteniment,
Completion Status,Estat de finalització,
Partially Completed,Va completar parcialment,
Fully Completed,Totalment Acabat,
Unscheduled,No programada,
Breakdown,Breakdown,
Purposes,Propòsits,
Customer Feedback,Comentaris del client,
Maintenance Visit Purpose,Manteniment Motiu de visita,
Work Done,Treballs Realitzats,
Against Document No,Contra el document n,
Against Document Detail No,Contra Detall del document núm,
MFG-BLR-.YYYY.-,MFG-BLR -YYYY.-,
Order Type,Tipus d'ordre,
Blanket Order Item,Element de comanda de manta,
Ordered Quantity,Quantitat demanada,
Item to be manufactured or repacked,Article que es fabricarà o embalarà de nou,
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Quantitat de punt obtingut després de la fabricació / reempaque de determinades quantitats de matèries primeres,
Set rate of sub-assembly item based on BOM,Estableix el tipus d&#39;element de subconjunt basat en BOM,
Allow Alternative Item,Permetre un element alternatiu,
Item UOM,Article UOM,
Conversion Rate,Taxa de conversió,
Rate Of Materials Based On,Tarifa de materials basats en,
With Operations,Amb Operacions,
Manage cost of operations,Administrar cost de les operacions,
Transfer Material Against,Transferència de material en contra,
Routing,Encaminament,
Materials,Materials,
Quality Inspection Required,Inspecció de qualitat obligatòria,
Quality Inspection Template,Plantilla d&#39;inspecció de qualitat,
Scrap,ferralla,
Scrap Items,Els productes de rebuig,
Operating Cost,Cost de funcionament,
Raw Material Cost,Matèria primera Cost,
Scrap Material Cost,Cost de materials de rebuig,
Operating Cost (Company Currency),Cost de funcionament (Companyia de divises),
Raw Material Cost (Company Currency),Cost de la matèria primera (moneda de l&#39;empresa),
Scrap Material Cost(Company Currency),El cost del rebuig de materials (Companyia de divises),
Total Cost,Cost total,
Total Cost (Company Currency),Cost total (moneda de l&#39;empresa),
Materials Required (Exploded),Materials necessaris (explotat),
Exploded Items,Elements explotats,
Show in Website,Mostra al lloc web,
Item Image (if not slideshow),Imatge de l'article (si no hi ha presentació de diapositives),
Thumbnail,Ungla del polze,
Website Specifications,Especificacions del lloc web,
Show Items,Mostra elements,
Show Operations,Mostra Operacions,
Website Description,Descripció del lloc web,
BOM Explosion Item,Explosió de BOM d'article,
Qty Consumed Per Unit,Quantitat consumida per unitat,
Include Item In Manufacturing,Incloure un article a la fabricació,
BOM Item,Article BOM,
Item operation,Funcionament de l&#39;element,
Rate & Amount,Preu i quantitat,
Basic Rate (Company Currency),Tarifa Bàsica (En la divisa de la companyia),
Scrap %,Scrap%,
Original Item,Article original,
BOM Operation,BOM Operació,
Operation Time ,Temps d’operació,
In minutes,En qüestió de minuts,
Batch Size,Mida del lot,
Base Hour Rate(Company Currency),La tarifa bàsica d&#39;Hora (Companyia de divises),
Operating Cost(Company Currency),Cost de funcionament (Companyia de divises),
BOM Scrap Item,La llista de materials de ferralla d&#39;articles,
Basic Amount (Company Currency),Import de base (Companyia de divises),
BOM Update Tool,Eina d&#39;actualització de la BOM,
"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.","Reemplaceu una BOM en particular en totes les altres BOM on s&#39;utilitzi. Reemplaçarà l&#39;antic enllaç BOM, actualitzarà els costos i regenerarà la taula &quot;BOM Explosion Item&quot; segons la nova BOM. També actualitza el preu més recent en totes les BOM.",
Replace BOM,Reemplaça BOM,
Current BOM,BOM actual,
The BOM which will be replaced,Llista de materials que serà substituïda,
The new BOM after replacement,La nova llista de materials després del reemplaçament,
Replace,Reemplaçar,
Update latest price in all BOMs,Actualitzeu el preu més recent en totes les BOM,
BOM Website Item,BOM lloc web d&#39;articles,
BOM Website Operation,Operació Pàgina Web de llista de materials,
Operation Time,Temps de funcionament,
PO-JOB.#####,POBLACIÓ # #####,
Timing Detail,Detall de temporització,
Time Logs,Registres de temps,
Total Time in Mins,Temps total a Mins,
Operation ID,Identificació de l&#39;operació,
Transferred Qty,Quantitat Transferida,
Job Started,La feina va començar,
Started Time,Hora iniciada,
Current Time,Hora actual,
Job Card Item,Article de la targeta de treball,
Job Card Time Log,Registre de temps de la targeta de treball,
Time In Mins,Temps a Mins,
Completed Qty,Quantitat completada,
Manufacturing Settings,Ajustaments de Manufactura,
Raw Materials Consumption,Consum de matèries primeres,
Allow Multiple Material Consumption,Permet el consum de diversos materials,
Backflush Raw Materials Based On,Backflush matèries primeres Based On,
Material Transferred for Manufacture,Material transferit per a la Fabricació,
Capacity Planning,Planificació de la capacitat,
Disable Capacity Planning,Desactiva la planificació de la capacitat,
Allow Overtime,Permetre Overtime,
Allow Production on Holidays,Permetre Producció en Vacances,
Capacity Planning For (Days),Planificació de la capacitat per a (Dies),
Default Warehouses for Production,Magatzems per a la producció,
Default Work In Progress Warehouse,Per defecte Work In Progress Magatzem,
Default Finished Goods Warehouse,Defecte Acabat Productes Magatzem,
Default Scrap Warehouse,Magatzem de ferralla predeterminat,
Overproduction Percentage For Sales Order,Percentatge de superproducció per a l&#39;ordre de vendes,
Overproduction Percentage For Work Order,Percentatge de sobreproducció per ordre de treball,
Other Settings,altres ajustos,
Update BOM Cost Automatically,Actualitza el cost de la BOM automàticament,
Material Request Plan Item,Material del pla de sol·licitud de material,
Material Request Type,Material de Sol·licitud Tipus,
Material Issue,Material Issue,
Customer Provided,Atenció al client,
Minimum Order Quantity,Quantitat mínima de comanda,
Default Workstation,Per defecte l'estació de treball,
Production Plan,Pla de producció,
MFG-PP-.YYYY.-,MFG-PP-.YYYY.-,
Get Items From,Obtenir articles de,
Get Sales Orders,Rep ordres de venda,
Material Request Detail,Detall de sol·licitud de material,
Get Material Request,Obtenir Sol·licitud de materials,
Material Requests,Les sol·licituds de materials,
Get Items For Work Order,Obtenir articles per a l&#39;ordre de treball,
Material Request Planning,Sol·licitud de material de planificació,
Include Non Stock Items,Inclou articles no existents,
Include Subcontracted Items,Inclou articles subcontractats,
Ignore Existing Projected Quantity,Ignoreu la quantitat projectada existent,
"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>.","Per obtenir més informació sobre la quantitat projectada, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">feu clic aquí</a> .",
Download Required Materials,Descarregueu els materials obligatoris,
Get Raw Materials For Production,Obtenir matèries primeres per a la producció,
Total Planned Qty,Total de quantitats planificades,
Total Produced Qty,Quantitat total produïda,
Material Requested,Material sol·licitat,
Production Plan Item,Pla de Producció d'articles,
Make Work Order for Sub Assembly Items,Realitzar una comanda de treball per a articles de subassemblea,
"If enabled, system will create the work order for the exploded items against which BOM is available.","Si està activat, el sistema crearà l’ordre de treball dels elements explotats en els quals es disposa de BOM.",
Planned Start Date,Data d'inici prevista,
Quantity and Description,Quantitat i descripció,
material_request_item,material_request_item,
Product Bundle Item,Producte Bundle article,
Production Plan Material Request,Producció Sol·licitud Pla de materials,
Production Plan Sales Order,Pla de Producció d'ordres de venda,
Sales Order Date,Sol·licitar Sales Data,
Routing Name,Nom d&#39;enrutament,
MFG-WO-.YYYY.-,MFG-WO -YYYY.-,
Item To Manufacture,Article a fabricar,
Material Transferred for Manufacturing,Material transferit per a la Fabricació,
Manufactured Qty,Quantitat fabricada,
Use Multi-Level BOM,Utilitzeu Multi-Nivell BOM,
Plan material for sub-assemblies,Material de Pla de subconjunts,
Skip Material Transfer to WIP Warehouse,Omitir el trasllat de material al magatzem WIP,
Check if material transfer entry is not required,Comproveu si no es requereix l&#39;entrada de transferència de material,
Backflush Raw Materials From Work-in-Progress Warehouse,Reforça les matèries primeres del magatzem de treball en progrés,
Update Consumed Material Cost In Project,Actualitza el cost del material consumit en el projecte,
Warehouses,Magatzems,
This is a location where raw materials are available.,Aquest és un lloc on hi ha matèries primeres disponibles.,
Work-in-Progress Warehouse,Magatzem de treballs en procés,
This is a location where operations are executed.,Es tracta d’una ubicació on s’executen operacions.,
This is a location where final product stored.,Es tracta d’una ubicació on s’emmagatzema el producte final.,
Scrap Warehouse,Magatzem de ferralla,
This is a location where scraped materials are stored.,Es tracta d’una ubicació on s’emmagatzemen materials rascats.,
Required Items,elements necessaris,
Actual Start Date,Data d'inici real,
Planned End Date,Planejat Data de finalització,
Actual End Date,Data de finalització actual,
Operation Cost,Cost d'operació,
Planned Operating Cost,Planejat Cost de funcionament,
Actual Operating Cost,Cost de funcionament real,
Additional Operating Cost,Cost addicional de funcionament,
Total Operating Cost,Cost total de funcionament,
Manufacture against Material Request,Fabricació contra comanda Material,
Work Order Item,Element de comanda de treball,
Available Qty at Source Warehouse,Quantitats disponibles a Font Magatzem,
Available Qty at WIP Warehouse,Quantitats disponibles en magatzem WIP,
Work Order Operation,Operació d&#39;ordres de treball,
Operation Description,Descripció de la operació,
Operation completed for how many finished goods?,L'operació es va realitzar per la quantitat de productes acabats?,
Work in Progress,Treball en curs,
Estimated Time and Cost,Temps estimat i cost,
Planned Start Time,Planificació de l'hora d'inici,
Planned End Time,Planificació de Temps Final,
in Minutes,En qüestió de minuts,
Actual Time and Cost,Temps real i Cost,
Actual Start Time,Temps real d'inici,
Actual End Time,Actual Hora de finalització,
Updated via 'Time Log',Actualitzat a través de 'Hora de registre',
Actual Operation Time,Temps real de funcionament,
in Minutes\nUpdated via 'Time Log',en minuts \n Actualitzat a través de 'Hora de registre',
(Hour Rate / 60) * Actual Operation Time,(Hora Tarifa / 60) * Temps real de l&#39;Operació,
Workstation Name,Nom de l'Estació de treball,
Production Capacity,Capacitat de producció,
Operating Costs,Costos Operatius,
Electricity Cost,Cost d'electricitat,
per hour,per hores,
Consumable Cost,Cost de consumibles,
Rent Cost,Cost de lloguer,
Wages,Salari,
Wages per hour,Els salaris per hora,
Net Hour Rate,Hora taxa neta,
Workstation Working Hour,Estació de treball Hores de Treball,
Certification Application,Sol·licitud de certificació,
Name of Applicant,Nom del sol · licitant,
Certification Status,Estat de certificació,
Yet to appear,Tot i així aparèixer,
Certified,Certificat,
Not Certified,No està certificat,
USD,USD,
INR,INR,
Certified Consultant,Consultor certificat,
Name of Consultant,Nom del consultor,
Certification Validity,Validesa de certificació,
Discuss ID,Discuteix l&#39;identificador,
GitHub ID,Identificador de GitHub,
Non Profit Manager,Gerent sense ànim de lucre,
Chapter Head,Capítol Cap,
Meetup Embed HTML,Reunió HTML incrustar,
chapters/chapter_name\nleave blank automatically set after saving chapter.,capítols / title_name deixar en blanc automàticament després d&#39;emmagatzemar el capítol.,
Chapter Members,Membres del capítol,
Members,Membres,
Chapter Member,Membre del capítol,
Website URL,URL del lloc web,
Leave Reason,Deixeu la raó,
Donor Name,Nom del donant,
Donor Type,Tipus de donant,
Withdrawn,Retirat,
Grant Application Details ,Concediu els detalls de la sol·licitud,
Grant Description,Descripció de la subvenció,
Requested Amount,Import sol·licitat,
Has any past Grant Record,Té algun registre de Grant passat,
Show on Website,Mostra al lloc web,
Assessment  Mark (Out of 10),Marc d&#39;avaluació (de 10),
Assessment  Manager,Director d&#39;avaluació,
Email Notification Sent,Notificació per correu electrònic enviada,
NPO-MEM-.YYYY.-,NPO-MEM -YYYY.-,
Membership Expiry Date,Data de venciment de la pertinença,
Razorpay Details,Detalls de Razorpay,
Subscription ID,Identificador de subscripció,
Customer ID,identificació de client,
Subscription Activated,S&#39;ha activat la subscripció,
Subscription Start ,Inici de la subscripció,
Subscription End,Fi de la subscripció,
Non Profit Member,Membre sense ànim de lucre,
Membership Status,Estat de la pertinença,
Member Since,Membre des de,
Payment ID,Identificador de pagament,
Membership Settings,Configuració de la pertinença,
Enable RazorPay For Memberships,Activeu RazorPay per a membresies,
RazorPay Settings,Configuració de RazorPay,
Billing Cycle,Cicle de facturació,
Billing Frequency,Freqüència de facturació,
"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.","El nombre de cicles de facturació pels quals s’hauria de cobrar al client. Per exemple, si un client compra una subscripció d’un any que s’hauria de facturar mensualment, aquest valor hauria de ser 12.",
Razorpay Plan ID,Identificador del pla Razorpay,
Volunteer Name,Nom del voluntari,
Volunteer Type,Tipus de voluntariat,
Availability and Skills,Disponibilitat i competències,
Availability,Disponibilitat,
Weekends,Caps de setmana,
Availability Timeslot,Disponibilitat Timeslot,
Morning,Al matí,
Afternoon,Tarda,
Evening,Nit,
Anytime,En qualsevol moment,
Volunteer Skills,Habilitats de voluntariat,
Volunteer Skill,Habilitat voluntària,
Homepage,pàgina principal,
Hero Section Based On,Basada en la secció d’herois,
Homepage Section,Secció de la pàgina principal,
Hero Section,Secció Herois,
Tag Line,tag Line,
Company Tagline for website homepage,Lema de l&#39;empresa per a la pàgina d&#39;inici pàgina web,
Company Description for website homepage,Descripció de l&#39;empresa per a la pàgina d&#39;inici pàgina web,
Homepage Slideshow,Presentació de diapositives de la pàgina web,
"URL for ""All Products""",URL de &quot;Tots els productes&quot;,
Products to be shown on website homepage,Els productes que es mostren a la pàgina d&#39;inici pàgina web,
Homepage Featured Product,Pàgina d&#39;inici Producte destacat,
route,ruta,
Section Based On,Secció Basada en,
Section Cards,Seccions,
Number of Columns,Nombre de columnes,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,"Nombre de columnes d&#39;aquesta secció. Si es seleccionen 3 columnes, es mostraran 3 cartes per fila.",
Section HTML,Secció HTML,
Use this field to render any custom HTML in the section.,Utilitzeu aquest camp per mostrar qualsevol HTML personalitzat a la secció.,
Section Order,Ordre de secció,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Ordre en quines seccions han d&#39;aparèixer. 0 és primer, 1 és segon i així successivament.",
Homepage Section Card,Fitxa de la secció de la pàgina principal,
Subtitle,Subtítol,
Products Settings,productes Ajustaments,
Home Page is Products,Home Page is Products,
"If checked, the Home page will be the default Item Group for the website","Si se selecciona, la pàgina d&#39;inici serà el grup per defecte de l&#39;article per al lloc web",
Show Availability Status,Mostra l&#39;estat de disponibilitat,
Product Page,Pàgina del producte,
Products per Page,Productes per pàgina,
Enable Field Filters,Activa els filtres de camp,
Item Fields,Camps de l&#39;element,
Enable Attribute Filters,Activa els filtres d’atributs,
Attributes,Atributs,
Hide Variants,Amagueu les variants,
Website Attribute,Atribut del lloc web,
Attribute,Atribut,
Website Filter Field,Camp de filtre del lloc web,
Activity Cost,Cost Activitat,
Billing Rate,Taxa de facturació,
Costing Rate,Pago Rate,
title,títol,
Projects User,Usuari de Projectes,
Default Costing Rate,Taxa d&#39;Incompliment Costea,
Default Billing Rate,Per defecte Facturació Tarifa,
Dependent Task,Tasca dependent,
Project Type,Tipus de Projecte,
% Complete Method,Mètode complet%,
Task Completion,Finalització de tasques,
Task Progress,Grup de Progrés,
% Completed,% Completat,
From Template,Des de Plantilla,
Project will be accessible on the website to these users,Projecte serà accessible a la pàgina web a aquests usuaris,
Copied From,de copiat,
Start and End Dates,Les dates d&#39;inici i fi,
Actual Time (in Hours),Hora real (en hores),
Costing and Billing,Càlcul de costos i facturació,
Total Costing Amount (via Timesheets),Import total de costos (a través de fulls de temps),
Total Expense Claim (via Expense Claims),Reclamació de Despeses totals (a través de reclamacions de despeses),
Total Purchase Cost (via Purchase Invoice),Cost total de compra (mitjançant compra de la factura),
Total Sales Amount (via Sales Order),Import total de vendes (a través de l&#39;ordre de vendes),
Total Billable Amount (via Timesheets),Import total facturat (mitjançant fulls de temps),
Total Billed Amount (via Sales Invoices),Import total facturat (mitjançant factures de vendes),
Total Consumed Material Cost  (via Stock Entry),Cost del material consumit total (a través de l&#39;entrada d&#39;accions),
Gross Margin,Marge Brut,
Gross Margin %,Marge Brut%,
Monitor Progress,Progrés del monitor,
Collect Progress,Recopileu el progrés,
Frequency To Collect Progress,Freqüència per recollir el progrés,
Twice Daily,Dos vegades al dia,
First Email,Primer correu electrònic,
Second Email,Segon correu electrònic,
Time to send,Temps per enviar,
Day to Send,Dia per enviar,
Message will be sent to the users to get their status on the Project,S’enviarà un missatge als usuaris per obtenir el seu estat al Projecte,
Projects Manager,Gerent de Projectes,
Project Template,Plantilla de projecte,
Project Template Task,Tasca de plantilla de projecte,
Begin On (Days),Comença el dia (dies),
Duration (Days),Durada (dies),
Project Update,Actualització del projecte,
Project User,usuari projecte,
View attachments,Mostra els fitxers adjunts,
Projects Settings,Configuració dels projectes,
Ignore Workstation Time Overlap,Ignora la superposició del temps d&#39;estació de treball,
Ignore User Time Overlap,Ignora la superposició del temps d&#39;usuari,
Ignore Employee Time Overlap,Ignora la superposició del temps d&#39;empleat,
Weight,pes,
Parent Task,Tasca dels pares,
Timeline,Cronologia,
Expected Time (in hours),Temps esperat (en hores),
% Progress,% Progrés,
Is Milestone,és Milestone,
Task Description,Descripció de la tasca,
Dependencies,Dependències,
Dependent Tasks,Tasques depenents,
Depends on Tasks,Depèn de Tasques,
Actual Start Date (via Time Sheet),Data d&#39;inici real (a través de fulla d&#39;hores),
Actual Time (in hours),Temps real (en hores),
Actual End Date (via Time Sheet),Data de finalització real (a través de fulla d&#39;hores),
Total Costing Amount (via Time Sheet),Càlcul del cost total Monto (a través de fulla d&#39;hores),
Total Expense Claim (via Expense Claim),Reclamació de despeses totals (a través de despeses),
Total Billing Amount (via Time Sheet),Facturació quantitat total (a través de fulla d&#39;hores),
Review Date,Data de revisió,
Closing Date,Data de tancament,
Task Depends On,Tasca Depèn de,
Task Type,Tipus de tasca,
TS-.YYYY.-,TS-.AAAA.-,
Employee Detail,Detall dels empleats,
Billing Details,Detalls de facturació,
Total Billable Hours,Total d&#39;hores facturables,
Total Billed Hours,Total d&#39;hores facturades,
Total Costing Amount,Suma càlcul del cost total,
Total Billable Amount,Suma total facturable,
Total Billed Amount,Suma total Anunciada,
% Amount Billed,% Import Facturat,
Hrs,hrs,
Costing Amount,Pago Monto,
Corrective/Preventive,Correctiu / preventiu,
Corrective,Correctiu,
Preventive,Preventius,
Resolution,Resolució,
Resolutions,Resolucions,
Quality Action Resolution,Resolució d&#39;acció de qualitat,
Quality Feedback Parameter,Paràmetre de comentaris de qualitat,
Quality Feedback Template Parameter,Paràmetre de plantilla de comentaris de qualitat,
Quality Goal,Objectiu de qualitat,
Monitoring Frequency,Freqüència de seguiment,
Weekday,Dia de la setmana,
Objectives,Objectius,
Quality Goal Objective,Objectiu de Qualitat,
Objective,Objectiu,
Agenda,Agenda,
Minutes,Acta,
Quality Meeting Agenda,Agenda de reunions de qualitat,
Quality Meeting Minutes,Actes de reunions de qualitat,
Minute,Minut,
Parent Procedure,Procediment de pares,
Processes,Processos,
Quality Procedure Process,Procés de procediment de qualitat,
Process Description,Descripció del procés,
Link existing Quality Procedure.,Enllaça el procediment de qualitat existent.,
Additional Information,Informació adicional,
Quality Review Objective,Objectiu de revisió de qualitat,
DATEV Settings,Configuració DATEV,
Regional,regional,
Consultant ID,Identificador de consultor,
GST HSN Code,Codi HSN GST,
HSN Code,codi HSN,
GST Settings,ajustaments GST,
GST Summary,Resum GST,
GSTIN Email Sent On,GSTIN correu electrònic enviat el,
GST Accounts,Comptes GST,
B2C Limit,Límit B2C,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Estableix el valor de la factura per B2C. B2CL i B2CS calculats en funció d&#39;aquest valor de la factura.,
GSTR 3B Report,Informe GSTR 3B,
January,Gener,
February,Febrer,
March,Març,
April,Abril,
May,Maig,
June,juny,
July,Juliol,
August,Agost,
September,Setembre,
October,Octubre,
November,de novembre,
December,Desembre,
JSON Output,Sortida JSON,
Invoices with no Place Of Supply,Factures sense lloc de subministrament,
Import Supplier Invoice,Importa factura del proveïdor,
Invoice Series,Sèrie de factures,
Upload XML Invoices,Carregueu factures XML,
Zip File,Arxiu Zip,
Import Invoices,Importació de factures,
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.,Feu clic al botó Importa factures un cop s&#39;hagi unit el fitxer zip al document. Tots els errors relacionats amb el processament es mostraran al registre d’errors.,
Lower Deduction Certificate,Certificat de deducció inferior,
Certificate Details,Detalls del certificat,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,Certificat núm,
Deductee Details,Detalls del deduït,
PAN No,PAN núm,
Validity Details,Detalls de validesa,
Rate Of TDS As Per Certificate,Taxa de TDS segons el certificat,
Certificate Limit,Límit de certificat,
Invoice Series Prefix,Prefix de la sèrie de factures,
Active Menu,Menú actiu,
Restaurant Menu,Menú de restaurant,
Price List (Auto created),Llista de preus (creada automàticament),
Restaurant Manager,Gerent de restaurant,
Restaurant Menu Item,Element del menú del restaurant,
Restaurant Order Entry,Entrada de comanda de restaurant,
Restaurant Table,Taula de restaurants,
Click Enter To Add,Feu clic a Intro per afegir,
Last Sales Invoice,Factura de la darrera compra,
Current Order,Ordre actual,
Restaurant Order Entry Item,Element de l&#39;entrada a la comanda del restaurant,
Served,Servit,
Restaurant Reservation,Reserva de restaurants,
Waitlisted,Waitlisted,
No Show,No hi ha espectacle,
No of People,No de la gent,
Reservation Time,Temps de reserva,
Reservation End Time,Hora de finalització de la reserva,
No of Seats,No de seients,
Minimum Seating,Seient mínim,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Porteu un registre de les campanyes de venda. Porteu un registre de conductors, Cites, comandes de venda, etc de Campanyes per mesurar retorn de la inversió.",
SAL-CAM-.YYYY.-,SAL-CAM -YYYY.-,
Campaign Schedules,Horaris de la campanya,
Buyer of Goods and Services.,Compradors de Productes i Serveis.,
CUST-.YYYY.-,CUST -YYYY.-,
Default Company Bank Account,Compte bancari de l&#39;empresa per defecte,
From Lead,De client potencial,
Account Manager,Gestor de comptes,
Allow Sales Invoice Creation Without Sales Order,Permet la creació de factures de venda sense comanda de venda,
Allow Sales Invoice Creation Without Delivery Note,Permet la creació de factures de venda sense nota de lliurament,
Default Price List,Llista de preus per defecte,
Primary Address and Contact Detail,Direcció principal i detall de contacte,
"Select, to make the customer searchable with these fields","Seleccioneu, per fer que el client es pugui cercar amb aquests camps",
Customer Primary Contact,Contacte principal del client,
"Reselect, if the chosen contact is edited after save","Torneu a seleccionar, si el contacte escollit s&#39;edita després de desar-lo",
Customer Primary Address,Direcció principal del client,
"Reselect, if the chosen address is edited after save","Torneu a seleccionar, si l&#39;adreça escollida s&#39;edita després de desar-la",
Primary Address,Adreça principal,
Mention if non-standard receivable account,Esmenteu si compta per cobrar no estàndard,
Credit Limit and Payment Terms,Límits de crèdit i termes de pagament,
Additional information regarding the customer.,Informació addicional respecte al client.,
Sales Partner and Commission,Soci de vendes i de la Comissió,
Commission Rate,Percentatge de comissió,
Sales Team Details,Detalls de l'Equip de Vendes,
Customer POS id,Identificador de TPV del client,
Customer Credit Limit,Límit de crèdit al client,
Bypass Credit Limit Check at Sales Order,Comprovació del límit de crèdit bypass a l&#39;ordre de vendes,
Industry Type,Tipus d'Indústria,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Data d'instal·lació,
Installation Time,Temps d'instal·lació,
Installation Note Item,Nota d'instal·lació de l'article,
Installed Qty,Quantitat instal·lada,
Lead Source,Origen de clients potencials,
Period Start Date,Data d&#39;inici del període,
Period End Date,Data de finalització del període,
Cashier,Caixer,
Difference,Diferència,
Modes of Payment,Modes de pagament,
Linked Invoices,Factures enllaçades,
POS Closing Voucher Details,Detalls de vou tancament de la TPV,
Collected Amount,Import acumulat,
Expected Amount,Quantia esperada,
POS Closing Voucher Invoices,Factures de vals de tancament de punt de venda,
Quantity of Items,Quantitat d&#39;articles,
"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","Grup Global de l&#39;** ** Els productes que en un altre article ** **. Això és útil si vostè està empaquetant unes determinades Articles ** ** en un paquet i mantenir un balanç dels ** Els productes envasats ** i no l&#39;agregat ** ** Article. El paquet ** ** Article tindrà &quot;És l&#39;arxiu d&#39;articles&quot; com &quot;No&quot; i &quot;És article de vendes&quot; com &quot;Sí&quot;. Per exemple: Si vostè està venent ordinadors portàtils i motxilles per separat i tenen un preu especial si el client compra a la vegada, llavors l&#39;ordinador portàtil + Motxilla serà un nou paquet de productes d&#39;articles. Nota: BOM = Llista de materials",
Parent Item,Article Pare,
List items that form the package.,Llista d'articles que formen el paquet.,
SAL-QTN-.YYYY.-,SAL-QTN-.YYYY.-,
Quotation To,Oferta per,
Rate at which customer's currency is converted to company's base currency,Rati a la qual es converteix la divisa del client es converteix en la moneda base de la companyia,
Rate at which Price list currency is converted to company's base currency,Valor pel qual la divisa de la llista de preus es converteix a la moneda base de la companyia,
Additional Discount and Coupon Code,Codi de descompte addicional i cupó,
Referral Sales Partner,Soci de vendes de derivacions,
In Words will be visible once you save the Quotation.,En paraules seran visibles un cop que es guarda la Cotització.,
Term Details,Detalls termini,
Quotation Item,Cita d'article,
Against Doctype,Contra Doctype,
Against Docname,Contra DocName,
Additional Notes,Notes addicionals,
SAL-ORD-.YYYY.-,SAL-ORD-.YYYY.-,
Skip Delivery Note,Omet el lliurament,
In Words will be visible once you save the Sales Order.,En paraules seran visibles un cop que es guarda la comanda de vendes.,
Track this Sales Order against any Project,Seguir aquesta Ordre Vendes cap algun projecte,
Billing and Delivery Status,Facturació i Lliurament Estat,
Not Delivered,No Lliurat,
Fully Delivered,Totalment Lliurat,
Partly Delivered,Parcialment Lliurat,
Not Applicable,No Aplicable,
%  Delivered,% Lliurat,
% of materials delivered against this Sales Order,% de materials lliurats d'aquesta Ordre de Venda,
% of materials billed against this Sales Order,% de materials facturats d'aquesta Ordre de Venda,
Not Billed,No Anunciat,
Fully Billed,Totalment Anunciat,
Partly Billed,Parcialment Facturat,
Ensure Delivery Based on Produced Serial No,Assegureu-vos de lliurament a partir de la sèrie produïda No.,
Supplier delivers to Customer,Proveïdor lliura al Client,
Delivery Warehouse,Magatzem Lliurament,
Planned Quantity,Quantitat planificada,
For Production,Per Producció,
Work Order Qty,Quantitat de comanda de treball,
Produced Quantity,Quantitat produïda,
Used for Production Plan,S'utilitza per al Pla de Producció,
Sales Partner Type,Tipus de partner de vendes,
Contact No.,Número de Contacte,
Contribution (%),Contribució (%),
Contribution to Net Total,Contribució neta total,
Selling Settings,La venda d'Ajustaments,
Settings for Selling Module,Ajustos Mòdul de vendes,
Customer Naming By,Customer Naming By,
Campaign Naming By,Naming de Campanya Per,
Default Customer Group,Grup predeterminat Client,
Default Territory,Territori per defecte,
Close Opportunity After Days,Tancar Oportunitat Després Dies,
Default Quotation Validity Days,Dates de validesa de cotització per defecte,
Sales Update Frequency,Freqüència d&#39;actualització de vendes,
Each Transaction,Cada transacció,
SMS Center,Centre d'SMS,
Send To,Enviar a,
All Contact,Tots els contactes,
All Customer Contact,Contacte tot client,
All Supplier Contact,Contacte de Tot el Proveïdor,
All Sales Partner Contact,Tot soci de vendes Contacte,
All Lead (Open),Tots els clients potencials (Obert),
All Employee (Active),Tot Empleat (Actiu),
All Sales Person,Tot el personal de vendes,
Create Receiver List,Crear Llista de receptors,
Receiver List,Llista de receptors,
Messages greater than 160 characters will be split into multiple messages,Els missatges de més de 160 caràcters es divideixen en diversos missatges,
Total Characters,Personatges totals,
Total Message(s),Total Missatge(s),
Authorization Control,Control d'Autorització,
Authorization Rule,Regla d'Autorització,
Average Discount,Descompte Mig,
Customerwise Discount,Customerwise Descompte,
Itemwise Discount,Descompte d'articles,
Customer or Item,Client o article,
Customer / Item Name,Client / Nom de l'article,
Authorized Value,Valor Autoritzat,
Applicable To (Role),Aplicable a (Rol),
Applicable To (Employee),Aplicable a (Empleat),
Applicable To (User),Aplicable a (Usuari),
Applicable To (Designation),Aplicable a (Designació),
Approving Role (above authorized value),Aprovar Rol (per sobre del valor autoritzat),
Approving User  (above authorized value),L&#39;aprovació de l&#39;usuari (per sobre del valor autoritzat),
Brand Defaults,Defectes de marca,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Entitat Legal / Subsidiari amb un gràfic separat de comptes que pertanyen a l'Organització.,
Change Abbreviation,Canvi Abreviatura,
Parent Company,Empresa matriu,
Default Values,Valors Predeterminats,
Default Holiday List,Per defecte Llista de vacances,
Default Selling Terms,Condicions de venda predeterminades,
Default Buying Terms,Condicions de compra per defecte,
Create Chart Of Accounts Based On,Crear pla de comptes basada en,
Standard Template,plantilla estàndard,
Existing Company,Empresa existent,
Chart Of Accounts Template,Gràfic de la plantilla de Comptes,
Existing Company ,companyia existent,
Date of Establishment,Data d&#39;establiment,
Sales Settings,Configuració de vendes,
Monthly Sales Target,Objectiu de vendes mensuals,
Sales Monthly History,Historial mensual de vendes,
Transactions Annual History,Transaccions Historial anual,
Total Monthly Sales,Vendes mensuals totals,
Default Cash Account,Compte de Tresoreria predeterminat,
Default Receivable Account,Predeterminat Compte per Cobrar,
Round Off Cost Center,Completen centres de cost,
Discount Allowed Account,Compte permès amb descompte,
Discount Received Account,Compte rebut amb descompte,
Exchange Gain / Loss Account,Guany de canvi de compte / Pèrdua,
Unrealized Exchange Gain/Loss Account,Compte de guany / pèrdua d&#39;intercanvi no realitzat,
Allow Account Creation Against Child Company,Permet la creació de comptes contra l&#39;empresa infantil,
Default Payable Account,Compte per Pagar per defecte,
Default Employee Advance Account,Compte anticipat d&#39;empleats per defecte,
Default Cost of Goods Sold Account,Cost per defecte del compte mercaderies venudes,
Default Income Account,Compte d'Ingressos predeterminat,
Default Deferred Revenue Account,Compte d&#39;ingressos diferits per defecte,
Default Deferred Expense Account,Compte de desplaçament diferit predeterminat,
Default Payroll Payable Account,La nòmina per defecte del compte per pagar,
Default Expense Claim Payable Account,Compte pagable per reclamació de despeses predeterminat,
Stock Settings,Ajustaments d'estocs,
Enable Perpetual Inventory,Habilitar Inventari Permanent,
Default Inventory Account,Compte d&#39;inventari per defecte,
Stock Adjustment Account,Compte d'Ajust d'estocs,
Fixed Asset Depreciation Settings,Configuració de depreciació dels immobles,
Series for Asset Depreciation Entry (Journal Entry),Sèrie per a l&#39;entrada de depreciació d&#39;actius (entrada de diari),
Gain/Loss Account on Asset Disposal,Compte guany / pèrdua en la disposició d&#39;actius,
Asset Depreciation Cost Center,Centre de l&#39;amortització del cost dels actius,
Budget Detail,Detall del Pressupost,
Exception Budget Approver Role,Excepció paper de l&#39;aprovació pressupostària,
Company Info,Qui Som,
For reference only.,Només de referència.,
Company Logo,Logotip de l&#39;empresa,
Date of Incorporation,Data d&#39;incorporació,
Date of Commencement,Data de començament,
Phone No,Telèfon No,
Company Description,Descripció de l&#39;empresa,
Registration Details,Detalls de registre,
Company registration numbers for your reference. Tax numbers etc.,"Els números de registre de l'empresa per la seva referència. Nombres d'impostos, etc.",
Delete Company Transactions,Eliminar Transaccions Empresa,
Currency Exchange,Valor de Canvi de divisa,
Specify Exchange Rate to convert one currency into another,Especificar Tipus de canvi per convertir una moneda en una altra,
From Currency,De la divisa,
To Currency,Per moneda,
For Buying,Per a la compra,
For Selling,Per vendre,
Customer Group Name,Nom del grup al Client,
Parent Customer Group,Pares Grup de Clients,
Only leaf nodes are allowed in transaction,Només els nodes fulla es permet l'entrada de transaccions,
Mention if non-standard receivable account applicable,Esmenteu si compta per cobrar no estàndard aplicable,
Credit Limits,Límits de crèdit,
Email Digest,Butlletí per correu electrònic,
Send regular summary reports via Email.,Enviar informes periòdics resumits per correu electrònic.,
Email Digest Settings,Ajustos del processador d'emails,
How frequently?,Amb quina freqüència?,
Next email will be sent on:,El següent correu electrònic s'enviarà a:,
Note: Email will not be sent to disabled users,Nota: El correu electrònic no serà enviat als usuaris amb discapacitat,
Profit & Loss,D&#39;pèrdues i guanys,
New Income,nou Ingrés,
New Expenses,Les noves despeses,
Annual Income,Renda anual,
Annual Expenses,Les despeses anuals,
Bank Balance,Balanç de Banc,
Bank Credit Balance,Saldo de crèdit bancari,
Receivables,Cobrables,
Payables,Comptes per Pagar,
Sales Orders to Bill,Ordres de vendes a factures,
Purchase Orders to Bill,Compra d&#39;ordres per facturar,
New Sales Orders,Noves ordres de venda,
New Purchase Orders,Noves ordres de compra,
Sales Orders to Deliver,Comandes de vendes a lliurar,
Purchase Orders to Receive,Ordres de compra per rebre,
New Purchase Invoice,Nova factura de compra,
New Quotations,Noves Cites,
Open Quotations,Cites obertes,
Open Issues,Números oberts,
Open Projects,Projectes oberts,
Purchase Orders Items Overdue,Ordres de compra Elements pendents,
Upcoming Calendar Events,Pròxims esdeveniments del calendari,
Open To Do,Obert a fer,
Add Quote,Afegir Cita,
Global Defaults,Valors per defecte globals,
Default Company,Companyia defecte,
Current Fiscal Year,Any fiscal actual,
Default Distance Unit,Unitat de distància predeterminada,
Hide Currency Symbol,Amaga Símbol de moneda,
Do not show any symbol like $ etc next to currencies.,No mostrar qualsevol símbol com $ etc costat de monedes.,
"If disable, 'Rounded Total' field will not be visible in any transaction","Si ho desactives, el camp 'Arrodonir Total' no serà visible a cap transacció",
Disable In Words,En desactivar Paraules,
"If disable, 'In Words' field will not be visible in any transaction","Si desactivat, &quot;en les paraules de camp no serà visible en qualsevol transacció",
Item Classification,Classificació d'articles,
General Settings,Configuració general,
Item Group Name,Nom del Grup d'Articles,
Parent Item Group,Grup d'articles pare,
Item Group Defaults,Element Defaults del grup d&#39;elements,
Item Tax,Impost d'article,
Check this if you want to show in website,Seleccioneu aquesta opció si voleu que aparegui en el lloc web,
Show this slideshow at the top of the page,Mostra aquesta presentació de diapositives a la part superior de la pàgina,
HTML / Banner that will show on the top of product list.,HTML / Banner que apareixerà a la part superior de la llista de productes.,
Set prefix for numbering series on your transactions,Establir prefix de numeracions seriades a les transaccions,
Setup Series,Sèrie d'instal·lació,
Select Transaction,Seleccionar Transacció,
Help HTML,Ajuda HTML,
Series List for this Transaction,Llista de Sèries per a aquesta transacció,
User must always select,Usuari sempre ha de seleccionar,
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Seleccioneu aquesta opció si voleu obligar l'usuari a seleccionar una sèrie abans de desar. No hi haurà cap valor per defecte si marca aquesta.,
Update Series,Actualitza Sèries,
Change the starting / current sequence number of an existing series.,Canviar el número de seqüència inicial/actual d'una sèrie existent.,
Prefix,Prefix,
Current Value,Valor actual,
This is the number of the last created transaction with this prefix,Aquest és el nombre de l'última transacció creat amb aquest prefix,
Update Series Number,Actualització Nombre Sèries,
Quotation Lost Reason,Cita Perduda Raó,
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuïdor de tercers / distribuïdor / comissió de l'agent / de la filial / distribuïdor que ven els productes de les empreses d'una comissió.,
Sales Partner Name,Nom del revenedor,
Partner Type,Tipus de Partner,
Address & Contacts,Direcció i contactes,
Address Desc,Descripció de direcció,
Contact Desc,Descripció del Contacte,
Sales Partner Target,Sales Partner Target,
Targets,Blancs,
Show In Website,Mostra en el lloc web,
Referral Code,Codi de Referència,
To Track inbound purchase,Per fer el seguiment de la compra entrant,
Logo,Logo,
Partner website,lloc web de col·laboradors,
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Totes les transaccions de venda es poden etiquetar contra múltiples venedors ** ** perquè pugui establir i monitoritzar metes.,
Name and Employee ID,Nom i ID d'empleat,
Sales Person Name,Nom del venedor,
Parent Sales Person,Parent Sales Person,
Select company name first.,Seleccioneu el nom de l'empresa en primer lloc.,
Sales Person Targets,Objectius persona de vendes,
Set targets Item Group-wise for this Sales Person.,Establir Grup d'articles per aquest venedor.,
Supplier Group Name,Nom del grup del proveïdor,
Parent Supplier Group,Grup de proveïdors de pares,
Target Detail,Detall Target,
Target Qty,Objectiu Quantitat,
Target  Amount,Objectiu Monto,
Target Distribution,Target Distribution,
"Standard Terms and Conditions that can be added to Sales and Purchases.\n\nExamples:\n\n1. Validity of the offer.\n1. Payment Terms (In Advance, On Credit, part advance etc).\n1. What is extra (or payable by the Customer).\n1. Safety / usage warning.\n1. Warranty if any.\n1. Returns Policy.\n1. Terms of shipping, if applicable.\n1. Ways of addressing disputes, indemnity, liability, etc.\n1. Address and Contact of your Company.","Termes i Condicions que es poden afegir a compres i vendes estàndard.\n\n Exemples: \n\n 1. Validesa de l'oferta.\n 1. Condicions de pagament (per avançat, el crèdit, part antelació etc.).\n 1. Què és extra (o per pagar pel client).\n 1. / Avisos servei Seguretat.\n 1. Garantia si n'hi ha.\n 1. Política de les voltes.\n 1. Termes d'enviament, si escau.\n 1. Formes de disputes que aborden, indemnització, responsabilitat, etc. \n 1. Adreça i contacte de la seva empresa.",
Applicable Modules,Mòduls aplicables,
Terms and Conditions Help,Termes i Condicions Ajuda,
Classification of Customers by region,Classificació dels clients per regió,
Territory Name,Nom del Territori,
Parent Territory,Parent Territory,
Territory Manager,Gerent de Territory,
For reference,Per referència,
Territory Targets,Objectius Territori,
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Pressupostos Set-Group savi article sobre aquest territori. També pot incloure l'estacionalitat mitjançant l'establiment de la Distribució.,
UOM Name,Nom UDM,
Check this to disallow fractions. (for Nos),Habiliteu aquesta opció per no permetre fraccions. (Per números),
Website Item Group,Lloc web Grup d'articles,
Cross Listing of Item in multiple groups,Creu Fitxa d'article en diversos grups,
Default settings for Shopping Cart,Ajustos predeterminats del Carro de Compres,
Enable Shopping Cart,Habilita Compres,
Display Settings,Configuració de pantalla,
Show Public Attachments,Mostra adjunts Públiques,
Show Price,Mostra preu,
Show Stock Availability,Mostra la disponibilitat d&#39;existències,
Show Contact Us Button,Mostra el botó de contacte,
Show Stock Quantity,Mostra la quantitat d&#39;existències,
Show Apply Coupon Code,Mostra Aplica el codi de cupó,
Allow items not in stock to be added to cart,Permetre afegir articles a la cistella,
Prices will not be shown if Price List is not set,Els preus no es mostren si la llista de preus no s&#39;ha establert,
Quotation Series,Sèrie Cotització,
Checkout Settings,Comanda Ajustaments,
Enable Checkout,habilitar Comanda,
Payment Success Url,Pagament URL Èxit,
After payment completion redirect user to selected page.,Després de la realització del pagament redirigir l&#39;usuari a la pàgina seleccionada.,
Batch Details,Detalls del lot,
Batch ID,Identificació de lots,
image,imatge,
Parent Batch,lots dels pares,
Manufacturing Date,Data de fabricació,
Batch Quantity,Quantitat per lots,
Batch UOM,Lote UOM,
Source Document Type,Font de Tipus de Document,
Source Document Name,Font Nom del document,
Batch Description,Descripció lots,
Bin,Paperera,
Reserved Quantity,Quantitat reservades,
Actual Quantity,Quantitat real,
Requested Quantity,quantitat sol·licitada,
Reserved Qty for sub contract,Quant reservat per subcontractació,
Moving Average Rate,Moving Average Rate,
FCFS Rate,FCFS Rate,
Customs Tariff Number,Nombre aranzel duaner,
Tariff Number,Nombre de tarifes,
Delivery To,Lliurar a,
MAT-DN-.YYYY.-,MAT-DN -YYYY.-,
Is Return,És la tornada,
Issue Credit Note,Nota de crèdit d&#39;emissió,
Return Against Delivery Note,Retorn Contra lliurament Nota,
Customer's Purchase Order No,Del client Ordre de Compra No,
Billing Address Name,Nom de l'adressa de facturació,
Required only for sample item.,Només és necessari per l'article de mostra.,
"If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Si ha creat una plantilla estàndard de les taxes i càrrecs de venda de plantilla, escollir un i feu clic al botó de sota.",
In Words will be visible once you save the Delivery Note.,En paraules seran visibles un cop que es guarda l'albarà de lliurament.,
In Words (Export) will be visible once you save the Delivery Note.,En paraules (exportació) seran visibles quan es desi l'albarà de lliurament.,
Transporter Info,Informació del transportista,
Driver Name,Nom del controlador,
Track this Delivery Note against any Project,Seguir aquesta nota de lliurament contra qualsevol projecte,
Inter Company Reference,Referència entre empreses,
Print Without Amount,Imprimir Sense Monto,
% Installed,% Instal·lat,
% of materials delivered against this Delivery Note,% de materials lliurats d'aquesta Nota de Lliurament,
Installation Status,Estat d'instal·lació,
Excise Page Number,Excise Page Number,
Instructions,Instruccions,
From Warehouse,De Magatzem,
Against Sales Order,Contra l'Ordre de Venda,
Against Sales Order Item,Contra l'Ordre de Venda d'articles,
Against Sales Invoice,Contra la factura de venda,
Against Sales Invoice Item,Contra la factura de venda d'articles,
Available Batch Qty at From Warehouse,Quantitat de lots disponibles a De Magatzem,
Available Qty at From Warehouse,Disponible Quantitat a partir de Magatzem,
Delivery Settings,Configuració de lliurament,
Dispatch Settings,Configuració de l&#39;enviament,
Dispatch Notification Template,Plantilla de notificació d&#39;enviaments,
Dispatch Notification Attachment,Adjunt de notificació de distribució,
Leave blank to use the standard Delivery Note format,Deixeu-vos en blanc per utilitzar el format de nota de lliurament estàndard,
Send with Attachment,Envia amb adjunt,
Delay between Delivery Stops,Retard entre les parades de lliurament,
Delivery Stop,Parada de lliurament,
Lock,Bloqueig,
Visited,Visitat,
Order Information,Informació de comandes,
Contact Information,Informació de contacte,
Email sent to,Correu electrònic enviat a,
Dispatch Information,Informació d&#39;enviaments,
Estimated Arrival,Arribada estimada,
MAT-DT-.YYYY.-,MAT-DT-.YYYY.-,
Initial Email Notification Sent,Notificació de correu electrònic inicial enviada,
Delivery Details,Detalls del lliurament,
Driver Email,Correu electrònic del conductor,
Driver Address,Adreça del conductor,
Total Estimated Distance,Distància estimada total,
Distance UOM,UOM de distància,
Departure Time,Hora de sortida,
Delivery Stops,Els terminis de lliurament,
Calculate Estimated Arrival Times,Calcular els temps estimats d&#39;arribada,
Use Google Maps Direction API to calculate estimated arrival times,Utilitzeu l’API de Google Maps Direction per calcular els temps d’arribada estimats,
Optimize Route,Optimitza la ruta,
Use Google Maps Direction API to optimize route,Utilitzeu l&#39;API de Google Maps Direction per optimitzar la ruta,
In Transit,En trànsit,
Fulfillment User,Usuari de compliment,
"A Product or a Service that is bought, sold or kept in stock.","Un producte o un servei que es compra, es ven o es manté en estoc.",
STO-ITEM-.YYYY.-,STO-ITEM -YYYY.-,
Variant Of,Variant de,
"If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified","Si l'article és una variant d'un altre article llavors descripció, imatges, preus, impostos etc s'establirà a partir de la plantilla a menys que s'especifiqui explícitament",
Is Item from Hub,És l&#39;element del centre,
Default Unit of Measure,Unitat de mesura per defecte,
Maintain Stock,Mantenir Stock,
Standard Selling Rate,Estàndard tipus venedor,
Auto Create Assets on Purchase,Creació automàtica d’actius en compra,
Asset Naming Series,Sèrie de nomenclatura d&#39;actius,
Over Delivery/Receipt Allowance (%),Indemnització de lliurament / recepció (%),
Barcodes,Codis de barres,
Shelf Life In Days,Vida útil en dies,
End of Life,Final de la Vida,
Default Material Request Type,El material predeterminat Tipus de sol·licitud,
Valuation Method,Mètode de Valoració,
FIFO,FIFO,
Moving Average,Mitjana Mòbil,
Warranty Period (in days),Període de garantia (en dies),
Auto re-order,Acte reordenar,
Reorder level based on Warehouse,Nivell de comanda basat en Magatzem,
Will also apply for variants unless overrridden,També s'aplicarà per a les variants menys overrridden,
Units of Measure,Unitats de mesura,
Will also apply for variants,També s'aplicarà per a les variants,
Serial Nos and Batches,Nº de sèrie i lots,
Has Batch No,Té número de lot,
Automatically Create New Batch,Crear nou lot de forma automàtica,
Batch Number Series,Batch Number Sèries,
"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.","Exemple: ABCD. #####. Si s&#39;estableix la sèrie i el lot no es menciona en les transaccions, es crearà un nombre automàtic de lot en funció d&#39;aquesta sèrie. Si sempre voleu esmentar explícitament No per a aquest element, deixeu-lo en blanc. Nota: aquesta configuració tindrà prioritat sobre el Prefix de la sèrie de noms a la configuració de valors.",
Has Expiry Date,Té data de caducitat,
Retain Sample,Conserveu la mostra,
Max Sample Quantity,Quantitat màxima de mostra,
Maximum sample quantity that can be retained,Quantitat màxima de mostra que es pot conservar,
Has Serial No,No té de sèrie,
Serial Number Series,Nombre de sèrie de la sèrie,
"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.","Exemple :. ABCD ##### \n Si la sèrie s'estableix i Nombre de sèrie no s'esmenta en les transaccions, nombre de sèrie a continuació automàtica es crearà sobre la base d'aquesta sèrie. Si sempre vol esmentar explícitament els números de sèrie per a aquest article. deixeu en blanc.",
Variants,Variants,
Has Variants,Té variants,
"If this item has variants, then it cannot be selected in sales orders etc.","Si aquest article té variants, llavors no pot ser seleccionada en les comandes de venda, etc.",
Variant Based On,En variant basada,
Item Attribute,Element Atribut,
"Sales, Purchase, Accounting Defaults","Vendes, Compra, Valors comptables",
Item Defaults,Defaults de l&#39;element,
"Purchase, Replenishment Details","Detalls de compra, reposició",
Is Purchase Item,És Compra d'articles,
Default Purchase Unit of Measure,Unitat de compra predeterminada de la mesura,
Minimum Order Qty,Quantitat de comanda mínima,
Minimum quantity should be as per Stock UOM,La quantitat mínima hauria de ser segons la UOM d&#39;acció,
Average time taken by the supplier to deliver,Temps mitjà pel proveïdor per lliurar,
Is Customer Provided Item,És el producte subministrat pel client,
Delivered by Supplier (Drop Ship),Lliurat pel proveïdor (nau),
Supplier Items,Articles Proveïdor,
Foreign Trade Details,Detalls estrangera Comerç,
Country of Origin,País d&#39;origen,
Sales Details,Detalls de venda,
Default Sales Unit of Measure,Unitat de vendes predeterminada de mesura,
Is Sales Item,És article de venda,
Max Discount (%),Descompte màxim (%),
No of Months,No de mesos,
Customer Items,Articles de clients,
Inspection Criteria,Criteris d'Inspecció,
Inspection Required before Purchase,Inspecció requerida abans de la compra,
Inspection Required before Delivery,Inspecció requerida abans del lliurament,
Default BOM,BOM predeterminat,
Supply Raw Materials for Purchase,Materials Subministrament primeres per a la Compra,
If subcontracted to a vendor,Si subcontractat a un proveïdor,
Customer Code,Codi de Client,
Default Item Manufacturer,Fabricant d&#39;articles predeterminats,
Default Manufacturer Part No,Referència del fabricant per defecte,
Show in Website (Variant),Mostra en el lloc web (variant),
Items with higher weightage will be shown higher,Els productes amb major coeficient de ponderació se li apareixen més alta,
Show a slideshow at the top of the page,Mostra una presentació de diapositives a la part superior de la pàgina,
Website Image,Imatge del lloc web,
Website Warehouse,Lloc Web del magatzem,
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Mostra ""En estock"" o ""No en estoc"", basat en l'estoc disponible en aquest magatzem.",
Website Item Groups,Grups d'article del Web,
List this Item in multiple groups on the website.,Fes una llista d'articles en diversos grups en el lloc web.,
Copy From Item Group,Copiar del Grup d'Articles,
Website Content,Contingut del lloc web,
You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Podeu utilitzar qualsevol marca de Bootstrap 4 vàlida en aquest camp. Es mostrarà a la vostra pàgina d’elements.,
Total Projected Qty,Quantitat total projectada,
Hub Publishing Details,Detalls de publicació del Hub,
Publish in Hub,Publicar en el Hub,
Publish Item to hub.erpnext.com,Publicar article a hub.erpnext.com,
Hub Category to Publish,Categoria de concentradora per publicar,
Hub Warehouse,Hub Warehouse,
"Publish ""In Stock"" or ""Not in Stock"" on Hub based on stock available in this warehouse.",Publica &quot;En existència&quot; o &quot;No està en existència&quot; al Hub basant-se en les existències disponibles en aquest magatzem.,
Synced With Hub,Sincronitzat amb Hub,
Item Alternative,Element alternatiu,
Alternative Item Code,Codi d&#39;element alternatiu,
Two-way,Dues vies,
Alternative Item Name,Nom de l&#39;element alternatiu,
Attribute Name,Nom del Atribut,
Numeric Values,Els valors numèrics,
From Range,De Gamma,
Increment,Increment,
To Range,Per Abast,
Item Attribute Values,Element Valors d'atributs,
Item Attribute Value,Element Atribut Valor,
Attribute Value,Atribut Valor,
Abbreviation,Abreviatura,
"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""","Això s'afegeix al Codi de l'article de la variant. Per exemple, si la seva abreviatura és ""SM"", i el codi de l'article és ""samarreta"", el codi de l'article de la variant serà ""SAMARRETA-SM""",
Item Barcode,Codi de barres d'article,
Barcode Type,Tipus de codi de barres,
EAN,EAN,
UPC-A,UPC-A,
Item Customer Detail,Item Customer Detail,
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Per comoditat dels clients, aquests codis es poden utilitzar en formats d'impressió, com factures i albarans",
Ref Code,Codi de Referència,
Item Default,Element per defecte,
Purchase Defaults,Compra de valors per defecte,
Default Buying Cost Center,Centres de cost de compres predeterminat,
Default Supplier,Per defecte Proveïdor,
Default Expense Account,Compte de Despeses predeterminat,
Sales Defaults,Defaults de vendes,
Default Selling Cost Center,Per defecte Centre de Cost de Venda,
Item Manufacturer,article Fabricant,
Item Price,Preu d'article,
Packing Unit,Unitat d&#39;embalatge,
Quantity  that must be bought or sold per UOM,Quantitat que s&#39;ha de comprar o vendre per UOM,
Item Quality Inspection Parameter,Article de qualitat de paràmetres d'Inspecció,
Acceptance Criteria,Criteris d'acceptació,
Item Reorder,Punt de reorden,
Check in (group),El procés de registre (grup),
Request for,sol·licitud de,
Re-order Level,Re-Order Nivell,
Re-order Qty,Re-Quantitat,
Item Supplier,Article Proveïdor,
Item Variant,Article Variant,
Item Variant Attribute,Article Variant Atribut,
Do not update variants on save,No actualitzeu les variants en desar,
Fields will be copied over only at time of creation.,Els camps es copiaran només en el moment de la creació.,
Allow Rename Attribute Value,Permet canviar el nom del valor de l&#39;atribut,
Rename Attribute Value in Item Attribute.,Canvieu el nom del valor de l&#39;atribut a l&#39;atribut de l&#39;element.,
Copy Fields to Variant,Copia els camps a la variant,
Item Website Specification,Especificacions d'article al Web,
Table for Item that will be shown in Web Site,Taula d'article que es mostra en el lloc web,
Landed Cost Item,Landed Cost article,
Receipt Document Type,Rebut de Tipus de Document,
Receipt Document,la recepció de documents,
Applicable Charges,Càrrecs aplicables,
Purchase Receipt Item,Rebut de compra d'articles,
Landed Cost Purchase Receipt,Landed Cost rebut de compra,
Landed Cost Taxes and Charges,Impostos i Càrrecs Landed Cost,
Landed Cost Voucher,Val Landed Cost,
MAT-LCV-.YYYY.-,MAT-LCV -YYYY.-,
Purchase Receipts,Rebut de compra,
Purchase Receipt Items,Rebut de compra d'articles,
Get Items From Purchase Receipts,Obtenir els articles des dels rebuts de compra,
Distribute Charges Based On,Distribuir els càrrecs en base a,
Landed Cost Help,Landed Cost Ajuda,
Manufacturers used in Items,Fabricants utilitzats en articles,
Limited to 12 characters,Limitat a 12 caràcters,
MAT-MR-.YYYY.-,MAT-MR.- AAAA.-,
Partially Ordered,Parcialment ordenat,
Transferred,transferit,
% Ordered,Demanem%,
Terms and Conditions Content,Contingut de Termes i Condicions,
Quantity and Warehouse,Quantitat i Magatzem,
Lead Time Date,Termini d'execució Data,
Min Order Qty,Quantitat de comanda mínima,
Packed Item,Article amb embalatge,
To Warehouse (Optional),Per magatzems (Opcional),
Actual Batch Quantity,Quantitat actual de lots,
Prevdoc DocType,Prevdoc Doctype,
Parent Detail docname,Docname Detall de Pares,
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Generar albarans paquets que es lliuraran. S'utilitza per notificar el nombre de paquets, el contingut del paquet i el seu pes.",
Indicates that the package is a part of this delivery (Only Draft),Indica que el paquet és una part d'aquest lliurament (Només Projecte),
MAT-PAC-.YYYY.-,MAT-PAC-SIYY.-,
From Package No.,Del paquet número,
Identification of the package for the delivery (for print),La identificació del paquet per al lliurament (per imprimir),
To Package No.,Al paquet No.,
If more than one package of the same type (for print),Si més d'un paquet del mateix tipus (per impressió),
Package Weight Details,Pes del paquet Detalls,
The net weight of this package. (calculated automatically as sum of net weight of items),El pes net d'aquest paquet. (Calculats automàticament com la suma del pes net d'articles),
Net Weight UOM,Pes net UOM,
Gross Weight,Pes Brut,
The gross weight of the package. Usually net weight + packaging material weight. (for print),"El pes brut del paquet. En general, el pes net + embalatge pes del material. (Per imprimir)",
Gross Weight UOM,Pes brut UDM,
Packing Slip Item,Albarà d'article,
DN Detail,Detall DN,
STO-PICK-.YYYY.-,STO-PICK -YYYY.-,
Material Transfer for Manufacture,Transferència de material per a la fabricació,
Qty of raw materials will be decided based on the qty of the Finished Goods Item,La quantitat de matèries primeres es decidirà en funció de la quantitat de l’article de productes acabats,
Parent Warehouse,Magatzem dels pares,
Items under this warehouse will be suggested,Es proposa que hi hagi articles en aquest magatzem,
Get Item Locations,Obteniu ubicacions d’elements,
Item Locations,Ubicacions de l’element,
Pick List Item,Escolliu l&#39;element de la llista,
Picked Qty,Escollit Qty,
Price List Master,Llista de preus Mestre,
Price List Name,nom de la llista de preus,
Price Not UOM Dependent,Preu no dependent de UOM,
Applicable for Countries,Aplicable per als Països,
Price List Country,Preu de llista País,
MAT-PRE-.YYYY.-,MAT-PRE-.YYYY.-,
Supplier Delivery Note,Nota de lliurament del proveïdor,
Time at which materials were received,Moment en què es van rebre els materials,
Return Against Purchase Receipt,Retorn Contra Compra Rebut,
Rate at which supplier's currency is converted to company's base currency,Equivalència a la qual la divisa del proveïdor es converteixen a la moneda base de la companyia,
Sets 'Accepted Warehouse' in each row of the items table.,Estableix &quot;Magatzem acceptat&quot; a cada fila de la taula d&#39;elements.,
Sets 'Rejected Warehouse' in each row of the items table.,Estableix &quot;Magatzem rebutjat&quot; a cada fila de la taula d&#39;elements.,
Raw Materials Consumed,Matèries primeres consumides,
Get Current Stock,Obtenir Stock actual,
Consumed Items,Articles consumits,
Add / Edit Taxes and Charges,Afegeix / Edita les taxes i càrrecs,
Auto Repeat Detail,Detall automàtic de repetició,
Transporter Details,Detalls Transporter,
Vehicle Number,Nombre de vehicles,
Vehicle Date,Data de Vehicles,
Received and Accepted,Rebut i acceptat,
Accepted Quantity,Quantitat Acceptada,
Rejected Quantity,Quantitat Rebutjada,
Accepted Qty as per Stock UOM,Quantitat acceptada segons UOM d’estoc,
Sample Quantity,Quantitat de mostra,
Rate and Amount,Taxa i Quantitat,
MAT-QA-.YYYY.-,MAT-QA-.YYYY.-,
Report Date,Data de l'informe,
Inspection Type,Tipus d'Inspecció,
Item Serial No,Número de sèrie d'article,
Sample Size,Mida de la mostra,
Inspected By,Inspeccionat per,
Readings,Lectures,
Quality Inspection Reading,Qualitat de Lectura d'Inspecció,
Reading 1,Lectura 1,
Reading 2,Lectura 2,
Reading 3,Lectura 3,
Reading 4,Reading 4,
Reading 5,Lectura 5,
Reading 6,Lectura 6,
Reading 7,Lectura 7,
Reading 8,Lectura 8,
Reading 9,Lectura 9,
Reading 10,Reading 10,
Quality Inspection Template Name,Nom de plantilla d&#39;inspecció de qualitat,
Quick Stock Balance,Saldo de valors ràpids,
Available Quantity,Quantitat disponible,
Distinct unit of an Item,Unitat diferent d'un article,
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Magatzem només es pot canviar a través d'entrada d'estoc / Nota de lliurament / recepció de compra,
Purchase / Manufacture Details,Compra / Detalls de Fabricació,
Creation Document Type,Creació de tipus de document,
Creation Document No,Creació document nº,
Creation Date,Data de creació,
Creation Time,Hora de creació,
Asset Details,Detalls de l&#39;actiu,
Asset Status,Estat d&#39;actius,
Delivery Document Type,Tipus de document de lliurament,
Delivery Document No,Lliurament document nº,
Delivery Time,Temps de Lliurament,
Invoice Details,Detalls de la factura,
Warranty / AMC Details,Detalls de la Garantia/AMC,
Warranty Expiry Date,Data final de garantia,
AMC Expiry Date,AMC Data de caducitat,
Under Warranty,Sota Garantia,
Out of Warranty,Fora de la Garantia,
Under AMC,Sota AMC,
Out of AMC,Fora d'AMC,
Warranty Period (Days),Període de garantia (Dies),
Serial No Details,Serial No Detalls,
MAT-STE-.YYYY.-,MAT-STE-.YYYY.-,
Stock Entry Type,Tipus d’entrada d’accions,
Stock Entry (Outward GIT),Entrada d&#39;accions (GIT exterior),
Material Consumption for Manufacture,Consum de material per a la fabricació,
Repack,Torneu a embalar,
Send to Subcontractor,Envia al subcontractista,
Delivery Note No,Número d'albarà de lliurament,
Sales Invoice No,Factura No,
Purchase Receipt No,Número de rebut de compra,
Inspection Required,Inspecció requerida,
From BOM,A partir de la llista de materials,
For Quantity,Per Quantitat,
As per Stock UOM,Segons Stock UDM,
Including items for sub assemblies,Incloent articles per subconjunts,
Default Source Warehouse,Magatzem d'origen predeterminat,
Source Warehouse Address,Adreça del magatzem de fonts,
Default Target Warehouse,Magatzem de destí predeterminat,
Target Warehouse Address,Adreça de destinació de magatzem,
Update Rate and Availability,Actualització de tarifes i disponibilitat,
Total Incoming Value,Valor Total entrant,
Total Outgoing Value,Valor Total sortint,
Total Value Difference (Out - In),Diferència Total Valor (Out - En),
Additional Costs,Despeses addicionals,
Total Additional Costs,Total de despeses addicionals,
Customer or Supplier Details,Client o proveïdor Detalls,
Per Transferred,Per transferits,
Stock Entry Detail,Detall de les entrades d'estoc,
Basic Rate (as per Stock UOM),Taxa Bàsica (segons de la UOM),
Basic Amount,Suma Bàsic,
Additional Cost,Cost addicional,
Serial No / Batch,Número de sèrie / lot,
BOM No. for a Finished Good Item,BOM No. de producte acabat d'article,
Material Request used to make this Stock Entry,Sol·licitud de material utilitzat per fer aquesta entrada Stock,
Subcontracted Item,Article subcontractat,
Against Stock Entry,Contra l&#39;entrada en accions,
Stock Entry Child,Entrada d’accions d’infants,
PO Supplied Item,Article enviat per PO,
Reference Purchase Receipt,Recepció de compra de referència,
Stock Ledger Entry,Ledger entrada Stock,
Outgoing Rate,Sortint Rate,
Actual Qty After Transaction,Actual Quantitat Després de Transacció,
Stock Value Difference,Diferència del valor d'estoc,
Stock Queue (FIFO),Estoc de cua (FIFO),
Is Cancelled,Està cancel·lat,
Stock Reconciliation,Reconciliació d'Estoc,
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.,Aquesta eina us ajuda a actualitzar o corregir la quantitat i la valoració dels estocs en el sistema. Normalment s'utilitza per sincronitzar els valors del sistema i el que realment hi ha en els magatzems.,
MAT-RECO-.YYYY.-,MAT-RECO -YYYY.-,
Reconciliation JSON,Reconciliació JSON,
Stock Reconciliation Item,Estoc Reconciliació article,
Before reconciliation,Abans de la reconciliació,
Current Serial No,Número de sèrie actual,
Current Valuation Rate,Valoració actual Taxa,
Current Amount,suma actual,
Quantity Difference,quantitat Diferència,
Amount Difference,diferència suma,
Item Naming By,Article Naming Per,
Default Item Group,Grup d'articles predeterminat,
Default Stock UOM,UDM d'estoc predeterminat,
Sample Retention Warehouse,Mostres de retenció de mostres,
Default Valuation Method,Mètode de valoració predeterminat,
Show Barcode Field,Mostra Camp de codi de barres,
Convert Item Description to Clean HTML,Converteix la descripció de l&#39;element per netejar HTML,
Allow Negative Stock,Permetre existències negatives,
Automatically Set Serial Nos based on FIFO,Ajusta automàticament els números de sèrie basat en FIFO,
Auto Material Request,Sol·licitud de material automàtica,
Inter Warehouse Transfer Settings,Configuració de la transferència entre magatzems,
Freeze Stock Entries,Freeze Imatges entrades,
Stock Frozen Upto,Estoc bloquejat fins a,
Batch Identification,Identificació per lots,
Use Naming Series,Utilitzeu la sèrie de noms,
Naming Series Prefix,Assignació de noms del prefix de la sèrie,
UOM Category,Categoria UOM,
UOM Conversion Detail,Detall UOM Conversió,
Variant Field,Camp de variants,
A logical Warehouse against which stock entries are made.,Un Magatzem lògic contra el qual es fan les entrades en existències.,
Warehouse Detail,Detall Magatzem,
Warehouse Name,Nom Magatzem,
Warehouse Contact Info,Informació del contacte del magatzem,
PIN,PIN,
ISS-.YYYY.-,ISS-.AAAA.-,
Raised By (Email),Raised By (Email),
Issue Type,Tipus d&#39;emissió,
Issue Split From,Divisió d&#39;emissions,
Service Level,Nivell de servei,
Response By,Resposta de,
Response By Variance,Resposta per variació,
Ongoing,En marxa,
Resolution By,Resolució de,
Resolution By Variance,Resolució per variació,
Service Level Agreement Creation,Creació de contracte de nivell de servei,
First Responded On,Primer respost el,
Resolution Details,Resolució Detalls,
Opening Date,Data d'obertura,
Opening Time,Temps d'obertura,
Resolution Date,Resolució Data,
Via Customer Portal,A través del portal del client,
Support Team,Equip de suport,
Issue Priority,Prioritat de problema,
Service Day,Dia del servei,
Workday,Jornada laboral,
Default Priority,Prioritat per defecte,
Priorities,Prioritats,
Support Hours,Horari d&#39;assistència,
Support and Resolution,Suport i resolució,
Default Service Level Agreement,Acord de nivell de servei per defecte,
Entity,Entitat,
Agreement Details,Detalls de l&#39;acord,
Response and Resolution Time,Temps de resposta i resolució,
Service Level Priority,Prioritat de nivell de servei,
Resolution Time,Temps de resolució,
Support Search Source,Recolza la font de cerca,
Source Type,Tipus de font,
Query Route String,Quadre de ruta de la consulta,
Search Term Param Name,Nom del paràmetre de cerca del paràmetre,
Response Options,Opcions de resposta,
Response Result Key Path,Ruta de la clau de resultats de resposta,
Post Route String,Cadena de ruta de publicació,
Post Route Key List,Llista de claus de la ruta de publicació,
Post Title Key,Títol del títol de publicació,
Post Description Key,Clau per a la descripció del lloc,
Link Options,Opcions d&#39;enllaç,
Source DocType,Font DocType,
Result Title Field,Camp del títol del resultat,
Result Preview Field,Camp de vista prèvia de resultats,
Result Route Field,Camp de ruta del resultat,
Service Level Agreements,Acords de nivell de servei,
Track Service Level Agreement,Seguiment de l’acord de nivell de servei,
Allow Resetting Service Level Agreement,Permet restablir el contracte de nivell de servei,
Close Issue After Days,Tancar Problema Després Dies,
Auto close Issue after 7 days,Tancament automàtic d&#39;emissió després de 7 dies,
Support Portal,Portal de suport,
Get Started Sections,Comença les seccions,
Show Latest Forum Posts,Mostra les darreres publicacions del fòrum,
Forum Posts,Missatges del Fòrum,
Forum URL,URL del fòrum,
Get Latest Query,Obtenir l&#39;última consulta,
Response Key List,Llista de claus de resposta,
Post Route Key,Clau de la ruta de publicació,
Search APIs,API de cerca,
SER-WRN-.YYYY.-,SER-WRN -YYYY.-,
Issue Date,Data De Assumpte,
Item and Warranty Details,Objecte i de garantia Detalls,
Warranty / AMC Status,Garantia / Estat de l'AMC,
Resolved By,Resolta Per,
Service Address,Adreça de Servei,
If different than customer address,Si és diferent de la direcció del client,
Raised By,Raised By,
From Company,Des de l'empresa,
Rename Tool,Eina de canvi de nom,
Utilities,Utilitats,
Type of document to rename.,Tipus de document per canviar el nom.,
File to Rename,Arxiu per canviar el nom de,
"Attach .csv file with two columns, one for the old name and one for the new name","Adjunta el fitxer .csv amb dues columnes, una per al nom antic i un altre per al nou nom",
Rename Log,Canviar el nom de registre,
SMS Log,SMS Log,
Sender Name,Nom del remitent,
Sent On,Enviar on,
No of Requested SMS,No de SMS sol·licitada,
Requested Numbers,Números sol·licitats,
No of Sent SMS,No d'SMS enviats,
Sent To,Enviat A,
Absent Student Report,Informe de l&#39;alumne absent,
Assessment Plan Status,Estat del pla d&#39;avaluació,
Asset Depreciation Ledger,La depreciació d&#39;actius Ledger,
Asset Depreciations and Balances,Les depreciacions d&#39;actius i saldos,
Available Stock for Packing Items,Estoc disponible per articles d'embalatge,
Bank Clearance Summary,Resum Liquidació del Banc,
Bank Remittance,Remesió bancària,
Batch Item Expiry Status,Lots article Estat de caducitat,
Batch-Wise Balance History,Batch-Wise Balance History,
BOM Explorer,Explorador de BOM,
BOM Search,BOM Cercar,
BOM Stock Calculated,BOM Stock Calculated,
BOM Variance Report,Informe de variació de la BOM,
Campaign Efficiency,eficiència campanya,
Cash Flow,Flux d&#39;Efectiu,
Completed Work Orders,Comandes de treball realitzats,
To Produce,Per a Produir,
Produced,Produït,
Consolidated Financial Statement,Estat financer consolidat,
Course wise Assessment Report,Informe d&#39;avaluació el més prudent,
Customer Acquisition and Loyalty,Captació i Fidelització,
Customer Credit Balance,Saldo de crèdit al Client,
Customer Ledger Summary,Resum comptable,
Customer-wise Item Price,Preu de l’article en relació amb el client,
Customers Without Any Sales Transactions,Clients sense transaccions de vendes,
Daily Timesheet Summary,Resum diari d&#39;hores,
Daily Work Summary Replies,Resum del treball diari Respostes,
DATEV,DATEV,
Delayed Item Report,Informe de l&#39;article retardat,
Delayed Order Report,Informe de comanda retardat,
Delivered Items To Be Billed,Articles lliurats pendents de facturar,
Delivery Note Trends,Nota de lliurament Trends,
Electronic Invoice Register,Registre de factures electròniques,
Employee Advance Summary,Resum avançat dels empleats,
Employee Billing Summary,Resum de facturació dels empleats,
Employee Birthday,Aniversari d'Empleat,
Employee Information,Informació de l'empleat,
Employee Leave Balance,Balanç d'absències d'empleat,
Employee Leave Balance Summary,Resum del balanç de baixa dels empleats,
Employees working on a holiday,Els empleats que treballen en un dia festiu,
Eway Bill,Eway Bill,
Expiring Memberships,Expiració de membresies,
Fichier des Ecritures Comptables [FEC],Fichier des Ecritures comptables [FEC],
Final Assessment Grades,Qualificacions d&#39;avaluació final,
Fixed Asset Register,Registre d’actius fixos,
Gross and Net Profit Report,Informe de benefici brut i net,
GST Itemised Purchase Register,GST per elements de Compra Registre,
GST Itemised Sales Register,GST Detallat registre de vendes,
GST Purchase Register,GST Compra Registre,
GST Sales Register,GST Registre de Vendes,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Ocupació de l&#39;habitació de l&#39;hotel,
HSN-wise-summary of outward supplies,HSN-wise-summary of outward supplies,
Inactive Customers,Els clients inactius,
Inactive Sales Items,Articles de venda inactius,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Articles publicats contra l&#39;ordre de treball,
Projected Quantity as Source,Quantitat projectada com Font,
Item Balance (Simple),Saldo de l&#39;element (senzill),
Item Price Stock,Preu del preu de l&#39;article,
Item Prices,Preus de l'article,
Item Shortage Report,Informe d'escassetat d'articles,
Item Variant Details,Detalls de la variant de l&#39;element,
Item-wise Price List Rate,Llista de Preus de tarifa d'article,
Item-wise Purchase History,Historial de compres d'articles,
Item-wise Purchase Register,Registre de compra d'articles,
Item-wise Sales History,Història Sales Item-savi,
Item-wise Sales Register,Tema-savi Vendes Registre,
Items To Be Requested,Articles que s'han de demanar,
Reserved,Reservat,
Itemwise Recommended Reorder Level,Nivell d'articles recomanat per a tornar a passar comanda,
Lead Details,Detalls del client potencial,
Lead Owner Efficiency,Eficiència plom propietari,
Loan Repayment and Closure,Devolució i tancament del préstec,
Loan Security Status,Estat de seguretat del préstec,
Lost Opportunity,Oportunitat perduda,
Maintenance Schedules,Programes de manteniment,
Material Requests for which Supplier Quotations are not created,Les sol·licituds de material per als quals no es creen Ofertes de Proveïdor,
Monthly Attendance Sheet,Full d'Assistència Mensual,
Open Work Orders,Ordres de treball obertes,
Qty to Deliver,Quantitat a lliurar,
Patient Appointment Analytics,Anàlisi de cites del pacient,
Payment Period Based On Invoice Date,Període de pagament basat en Data de la factura,
Pending SO Items For Purchase Request,A l'espera dels Articles de la SO per la sol·licitud de compra,
Procurement Tracker,Seguidor de compres,
Product Bundle Balance,Saldo de paquets de productes,
Production Analytics,Anàlisi de producció,
Profit and Loss Statement,Guanys i Pèrdues,
Profitability Analysis,Compte de resultats,
Project Billing Summary,Resum de facturació del projecte,
Project wise Stock Tracking,Seguiment de valors del projecte,
Project wise Stock Tracking ,Projecte savi Stock Seguiment,
Prospects Engaged But Not Converted,Perspectives Enganxat Però no es converteix,
Purchase Analytics,Anàlisi de Compres,
Purchase Invoice Trends,Tendències de les Factures de Compra,
Qty to Receive,Quantitat a Rebre,
Received Qty Amount,Quantitat rebuda,
Billed Qty,Qty facturat,
Purchase Order Trends,Compra Tendències Sol·licitar,
Purchase Receipt Trends,Purchase Receipt Trends,
Purchase Register,Compra de Registre,
Quotation Trends,Quotation Trends,
Received Items To Be Billed,Articles rebuts per a facturar,
Qty to Order,Quantitat de comanda,
Requested Items To Be Transferred,Articles sol·licitats per a ser transferits,
Qty to Transfer,Quantitat a Transferir,
Salary Register,salari Registre,
Sales Analytics,Analytics de venda,
Sales Invoice Trends,Tendències de Factures de Vendes,
Sales Order Trends,Sales Order Trends,
Sales Partner Commission Summary,Resum de la comissió de socis comercials,
Sales Partner Target Variance based on Item Group,Variant objectiu del soci de vendes basat en el grup d&#39;ítems,
Sales Partner Transaction Summary,Resum de transaccions amb socis de vendes,
Sales Partners Commission,Comissió dels revenedors,
Invoiced Amount (Exclusive Tax),Import facturat (impost exclusiu),
Average Commission Rate,Comissió de Tarifes mitjana,
Sales Payment Summary,Resum de pagaments de vendes,
Sales Person Commission Summary,Resum de la Comissió de Persona de Vendes,
Sales Person Target Variance Based On Item Group,Persona de venda Variació objectiu basada en el grup d’elements,
Sales Person-wise Transaction Summary,Resum de transaccions de vendes Persona-savi,
Sales Register,Registre de vendes,
Serial No Service Contract Expiry,Número de sèrie del contracte de venciment del servei,
Serial No Status,Estat del número de sèrie,
Serial No Warranty Expiry,Venciment de la garantia del número de sèrie,
Stock Ageing,Estoc Envelliment,
Stock and Account Value Comparison,Comparació de valors i accions,
Stock Projected Qty,Quantitat d'estoc previst,
Student and Guardian Contact Details,Alumne i tutor detalls de contacte,
Student Batch-Wise Attendance,Discontinu assistència dels estudiants,
Student Fee Collection,Cobrament de l&#39;Estudiant,
Student Monthly Attendance Sheet,Estudiant Full d&#39;Assistència Mensual,
Subcontracted Item To Be Received,A rebre el document subcontractat,
Subcontracted Raw Materials To Be Transferred,Matèries primeres subcontractades a transferir,
Supplier Ledger Summary,Resum comptable de proveïdors,
Supplier-Wise Sales Analytics,Proveïdor-Wise Vendes Analytics,
Support Hour Distribution,Distribució horària de suport,
TDS Computation Summary,Resum de còmput de TDS,
TDS Payable Monthly,TDS mensuals pagables,
Territory Target Variance Based On Item Group,Variació objectiu del territori en funció del grup d&#39;ítems,
Territory-wise Sales,Vendes pròpies pel territori,
Total Stock Summary,Resum de la total,
Trial Balance,Balanç provisional,
Trial Balance (Simple),Saldo de prova (simple),
Trial Balance for Party,Balanç de comprovació per a la festa,
Unpaid Expense Claim,Reclamació de despeses no pagats,
Warehouse wise Item Balance Age and Value,Equilibri de l&#39;edat i valor del magatzem,
Work Order Stock Report,Informe d&#39;accions de la comanda de treball,
Work Orders in Progress,Ordres de treball en progrés,
Validation Error,Error de validació,
Automatically Process Deferred Accounting Entry,Processar automàticament l&#39;entrada comptable diferida,
Bank Clearance,Liquidació bancària,
Bank Clearance Detail,Detall de liquidació bancària,
Update Cost Center Name / Number,Actualitzeu el nom / número del centre de costos,
Journal Entry Template,Plantilla d’entrada de diari,
Template Title,Títol de la plantilla,
Journal Entry Type,Tipus d’entrada de diari,
Journal Entry Template Account,Compte de plantilla d’entrada de diari,
Process Deferred Accounting,Procés de comptabilitat diferida,
Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,No es pot crear l&#39;entrada manual. Desactiveu l&#39;entrada automàtica per a la comptabilitat diferida a la configuració dels comptes i torneu-ho a provar,
End date cannot be before start date,La data de finalització no pot ser anterior a la data d&#39;inici,
Total Counts Targeted,Recompte total orientat,
Total Counts Completed,Recompte total realitzat,
Counts Targeted: {0},Comptes orientats: {0},
Payment Account is mandatory,El compte de pagament és obligatori,
"If checked, the full amount will be deducted from taxable income before calculating income tax without any declaration or proof submission.","Si es marca, l&#39;import íntegre es descomptarà de la renda imposable abans de calcular l&#39;impost sobre la renda sense cap declaració ni presentació de proves.",
Disbursement Details,Detalls del desemborsament,
Material Request Warehouse,Sol·licitud de material Magatzem,
Select warehouse for material requests,Seleccioneu un magatzem per a sol·licituds de material,
Transfer Materials For Warehouse {0},Transferència de materials per a magatzem {0},
Production Plan Material Request Warehouse,Pla de producció Sol·licitud de material Magatzem,
Sets 'Source Warehouse' in each row of the items table.,Estableix &quot;Magatzem font&quot; a cada fila de la taula d&#39;elements.,
Sets 'Target Warehouse' in each row of the items table.,Estableix &quot;Magatzem objectiu&quot; a cada fila de la taula d&#39;elements.,
Show Cancelled Entries,Mostra les entrades cancel·lades,
Backdated Stock Entry,Entrada d’accions amb data de tornada,
Row #{}: Currency of {} - {} doesn't matches company currency.,Fila núm. {}: La moneda de {} - {} no coincideix amb la moneda de l&#39;empresa.,
{} Assets created for {},{} Recursos creats per a {},
{0} Number {1} is already used in {2} {3},El {0} número {1} ja s&#39;utilitza a {2} {3},
Update Bank Clearance Dates,Actualitza les dates de liquidació bancària,
Healthcare Practitioner: ,Metge professional:,
Lab Test Conducted: ,Prova de laboratori realitzada:,
Lab Test Event: ,Esdeveniment de prova de laboratori:,
Lab Test Result: ,Resultat de la prova de laboratori:,
Clinical Procedure conducted: ,Procediment clínic realitzat:,
Therapy Session Charges: {0},Càrrecs de la sessió de teràpia: {0},
Therapy: ,Teràpia:,
Therapy Plan: ,Pla de teràpia:,
Total Counts Targeted: ,Recompte total objectiu:,
Total Counts Completed: ,Recompte total realitzat:,
Andaman and Nicobar Islands,Illes Andaman i Nicobar,
Andhra Pradesh,Andhra Pradesh,
Arunachal Pradesh,Arunachal Pradesh,
Assam,Assam,
Bihar,Bihar,
Chandigarh,Chandigarh,
Chhattisgarh,Chhattisgarh,
Dadra and Nagar Haveli,Dadra i Nagar Haveli,
Daman and Diu,Daman i Diu,
Delhi,Delhi,
Goa,Goa,
Gujarat,Gujarat,
Haryana,Hariana,
Himachal Pradesh,Himachal Pradesh,
Jammu and Kashmir,Jammu i Caixmir,
Jharkhand,Jharkhand,
Karnataka,Karnataka,
Kerala,Kerala,
Lakshadweep Islands,Illes Lakshadweep,
Madhya Pradesh,Madhya Pradesh,
Maharashtra,Maharashtra,
Manipur,Manipur,
Meghalaya,Meghalaya,
Mizoram,Mizoram,
Nagaland,Nagaland,
Odisha,Odisha,
Other Territory,Un altre territori,
Pondicherry,Pondicherry,
Punjab,Punjab,
Rajasthan,Rajasthan,
Sikkim,Sikkim,
Tamil Nadu,Tamil Nadu,
Telangana,Telangana,
Tripura,Tripura,
Uttar Pradesh,Uttar Pradesh,
Uttarakhand,Uttarakhand,
West Bengal,Bengala Occidental,
Is Mandatory,És obligatori,
Published on,Publicat el,
Service Received But Not Billed,Servei rebut però no facturat,
Deferred Accounting Settings,Configuració de comptabilitat diferida,
Book Deferred Entries Based On,Llibre d&#39;entrades diferides basades en,
Days,Dies,
Months,Mesos,
Book Deferred Entries Via Journal Entry,Entrades diferides de llibres mitjançant entrada de diari,
Submit Journal Entries,Enviar entrades de diari,
If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,"Si no es marca aquesta opció, les entrades de diari es desaran en un esborrany i s’hauran d’enviar manualment",
Enable Distributed Cost Center,Activa el centre de costos distribuït,
Distributed Cost Center,Centre de costos distribuït,
Dunning,Dunning,
DUNN-.MM.-.YY.-,DUNN-.MM .-. YY.-,
Overdue Days,Dies vençuts,
Dunning Type,Tipus Dunning,
Dunning Fee,Tarifa de Dunning,
Dunning Amount,Quantitat Dunning,
Resolved,Resolt,
Unresolved,No resolt,
Printing Setting,Configuració d&#39;impressió,
Body Text,Text del cos,
Closing Text,Tancament del text,
Resolve,Resoldre,
Dunning Letter Text,Text de la carta Dunning,
Is Default Language,És l&#39;idioma predeterminat,
Letter or Email Body Text,Text corporal de carta o correu electrònic,
Letter or Email Closing Text,Text de tancament de carta o correu electrònic,
Body and Closing Text Help,Ajuda del cos i del text de tancament,
Overdue Interval,Interval vencit,
Dunning Letter,Carta Dunning,
"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.","Aquesta secció permet a l&#39;usuari configurar el text del cos i de tancament de la carta Dunning per al tipus Dunning en funció del llenguatge, que es pot utilitzar a Imprimir.",
Reference Detail No,Núm. Detall de referència,
Custom Remarks,Observacions personalitzades,
Please select a Company first.,Seleccioneu primer una empresa.,
"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Fila núm. {0}: el tipus de document de referència ha de ser una de les comandes de vendes, la factura de vendes, l&#39;entrada del diari o la reducció",
POS Closing Entry,Entrada de tancament de TPV,
POS Opening Entry,Entrada d&#39;obertura TPV,
POS Transactions,Transaccions TPV,
POS Closing Entry Detail,Detall de l&#39;entrada de tancament del TPV,
Opening Amount,Import inicial,
Closing Amount,Import de tancament,
POS Closing Entry Taxes,TPV Tancant els impostos d’entrada,
POS Invoice,Factura TPV,
ACC-PSINV-.YYYY.-,ACC-PSINV-.AAAA.-,
Consolidated Sales Invoice,Factura de vendes consolidada,
Return Against POS Invoice,Torna contra la factura TPV,
Consolidated,Consolidat,
POS Invoice Item,Article de factura TPV,
POS Invoice Merge Log,Registre de combinació de factures TPV,
POS Invoices,Factures TPV,
Consolidated Credit Note,Nota de crèdit consolidada,
POS Invoice Reference,Referència de factura TPV,
Set Posting Date,Estableix la data de publicació,
Opening Balance Details,Detalls del saldo inicial,
POS Opening Entry Detail,Detall de l&#39;entrada d&#39;obertura del TPV,
POS Payment Method,Forma de pagament TPV,
Payment Methods,Mètodes de Pagament,
Process Statement Of Accounts,Tramitació de l&#39;estat de comptes,
General Ledger Filters,Filtres de llibres majors,
Customers,Clients,
Select Customers By,Seleccioneu Clients per,
Fetch Customers,Obteniu clients,
Send To Primary Contact,Envia al contacte principal,
Print Preferences,Preferències d’impressió,
Include Ageing Summary,Inclou el resum de l&#39;envelliment,
Enable Auto Email,Activa el correu electrònic automàtic,
Filter Duration (Months),Durada del filtre (mesos),
CC To,CC a,
Help Text,Text d&#39;ajuda,
Emails Queued,Correus electrònics a la cua,
Process Statement Of Accounts Customer,Tractament de l&#39;estat de comptes del client,
Billing Email,Correu electrònic de facturació,
Primary Contact Email,Correu electrònic de contacte principal,
PSOA Cost Center,Centre de costos PSOA,
PSOA Project,Projecte PSOA,
ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.AAAA.-,
Supplier GSTIN,Proveïdor GSTIN,
Place of Supply,Lloc de subministrament,
Select Billing Address,Seleccioneu Adreça de facturació,
GST Details,Detalls de GST,
GST Category,Categoria GST,
Registered Regular,Registrat habitualment,
Registered Composition,Composició registrada,
Unregistered,No registrat,
SEZ,SEZ,
Overseas,A l’estranger,
UIN Holders,Titulars d&#39;UIN,
With Payment of Tax,Amb pagament d’impostos,
Without Payment of Tax,Sense pagament d’impostos,
Invoice Copy,Còpia de la factura,
Original for Recipient,Original per al destinatari,
Duplicate for Transporter,Duplicat per a Transporter,
Duplicate for Supplier,Duplicat per a proveïdor,
Triplicate for Supplier,Triplicat per a proveïdor,
Reverse Charge,Revertir la carga,
Y,Y,
N,N,
E-commerce GSTIN,Comerç electrònic GSTIN,
Reason For Issuing document,Motiu de l&#39;emissió del document,
01-Sales Return,01-Devolució de vendes,
02-Post Sale Discount,02-Descompte per venda posterior,
03-Deficiency in services,03-Deficiència de serveis,
04-Correction in Invoice,04-Correcció de la factura,
05-Change in POS,05-Canvi de TPV,
06-Finalization of Provisional assessment,06-Finalització de l’avaluació provisional,
07-Others,07-Altres,
Eligibility For ITC,Elegibilitat per al ITC,
Input Service Distributor,Distribuïdor de serveis d’entrada,
Import Of Service,Importació de serveis,
Import Of Capital Goods,Importació de béns d’equip,
Ineligible,No aptes,
All Other ITC,Tots els altres ITC,
Availed ITC Integrated Tax,Impost integrat ITC disponible,
Availed ITC Central Tax,Impost central ITC disponible,
Availed ITC State/UT Tax,Impost ITC State / UT disponible,
Availed ITC Cess,Cess ITC disponible,
Is Nil Rated or Exempted,Té una valoració nul·la o s’eximeix,
Is Non GST,No és GST,
ACC-SINV-RET-.YYYY.-,ACC-SINV-RET-.AAAA.-,
E-Way Bill No.,E-Way Bill núm.,
Is Consolidated,Es consolida,
Billing Address GSTIN,Adreça de facturació GSTIN,
Customer GSTIN,Client GSTIN,
GST Transporter ID,Identificador de transportista GST,
Distance (in km),Distància (en km),
Road,Carretera,
Air,Aire,
Rail,Carril,
Ship,Vaixell,
GST Vehicle Type,Tipus de vehicle GST,
Over Dimensional Cargo (ODC),Càrrega sobredimensional (ODC),
Consumer,Consumidor,
Deemed Export,Exportació estimada,
Port Code,Codi de port,
 Shipping Bill Number,Número de factura d’enviament,
Shipping Bill Date,Data de facturació d’enviament,
Subscription End Date,Data de finalització de la subscripció,
Follow Calendar Months,Segueix els mesos del calendari,
If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,"Si es marca aquesta opció, es crearan les noves factures posteriors a les dates d’inici del mes natural i del trimestre, independentment de la data d’inici de la factura actual",
Generate New Invoices Past Due Date,Genereu factures noves amb venciment,
New invoices will be generated as per schedule even if current invoices are unpaid or past due date,"Les factures noves es generaran segons la programació, fins i tot si les factures actuals no s’han pagat o s’han acabat la data de venciment",
Document Type ,tipus de document,
Subscription Price Based On,Preu de subscripció basat en,
Fixed Rate,Tarifa fixa,
Based On Price List,Basat en la llista de preus,
Monthly Rate,Tarifa mensual,
Cancel Subscription After Grace Period,Cancel·la la subscripció després del període de gràcia,
Source State,Estat d&#39;origen,
Is Inter State,És Inter State,
Purchase Details,Detalls de la compra,
Depreciation Posting Date,Data de publicació de l’amortització,
"By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","Per defecte, el nom del proveïdor s’estableix segons el nom del proveïdor introduït. Si voleu que els proveïdors siguin nomenats per un",
 choose the 'Naming Series' option.,trieu l&#39;opció &quot;Sèrie de noms&quot;.,
Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Configureu la llista de preus predeterminada quan creeu una nova transacció de compra. Els preus dels articles s’obtindran d’aquesta llista de preus.,
"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.","Si aquesta opció està configurada com a &quot;Sí&quot;, ERPNext us impedirà crear una factura o un rebut de compra sense crear primer una comanda de compra. Aquesta configuració es pot anul·lar per a un proveïdor concret si activeu la casella de selecció &quot;Permet la creació de factures de compra sense comanda de compra&quot; al mestre del proveïdor.",
"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.","Si aquesta opció està configurada com a &quot;Sí&quot;, ERPNext us impedirà crear una factura de compra sense haver de crear primer un comprovant de compra. Aquesta configuració es pot anul·lar per a un proveïdor concret si activeu la casella de selecció &quot;Permet la creació de factures de compra sense comprovant de compra&quot; al mestre del proveïdor.",
Quantity & Stock,Quantitat i estoc,
Call Details,Detalls de la trucada,
Authorised By,Autoritzat per,
Signee (Company),Destinatari (empresa),
Signed By (Company),Signat per (empresa),
First Response Time,Temps de primera resposta,
Request For Quotation,Sol · licitud de pressupost,
Opportunity Lost Reason Detail,Detall de la raó perduda de l’oportunitat,
Access Token Secret,Accediu al secret del testimoni,
Add to Topics,Afegeix a temes,
...Adding Article to Topics,... Addició d&#39;article a temes,
Add Article to Topics,Afegeix un article a temes,
This article is already added to the existing topics,Aquest article ja s&#39;ha afegit als temes existents,
Add to Programs,Afegeix a Programes,
Programs,Programes,
...Adding Course to Programs,... Afegir curs a programes,
Add Course to Programs,Afegeix curs als programes,
This course is already added to the existing programs,Aquest curs ja s’afegeix als programes existents,
Learning Management System Settings,Configuració del sistema de gestió de l&#39;aprenentatge,
Enable Learning Management System,Activa el sistema de gestió de l&#39;aprenentatge,
Learning Management System Title,Títol del sistema de gestió de l’aprenentatge,
...Adding Quiz to Topics,... Addició de qüestionari a temes,
Add Quiz to Topics,Afegiu un qüestionari a temes,
This quiz is already added to the existing topics,Aquest qüestionari ja s&#39;ha afegit als temes existents,
Enable Admission Application,Activa la sol·licitud d&#39;admissió,
EDU-ATT-.YYYY.-,EDU-ATT-.AAAA.-,
Marking attendance,Assistència marcada,
Add Guardians to Email Group,Afegiu Guardians al grup de correu electrònic,
Attendance Based On,Assistència basada en,
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,Marqueu aquesta opció per marcar l&#39;estudiant com a present en cas que l&#39;estudiant no assisteixi a l&#39;institut per participar o representi l&#39;institut en cap cas.,
Add to Courses,Afegeix a cursos,
...Adding Topic to Courses,... Afegint un tema als cursos,
Add Topic to Courses,Afegeix tema als cursos,
This topic is already added to the existing courses,Aquest tema ja s’afegeix als cursos existents,
"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","Si Shopify no té cap client a la comanda, mentre sincronitza les comandes, el sistema considerarà el client per defecte de la comanda",
The accounts are set by the system automatically but do confirm these defaults,"El sistema defineix els comptes automàticament, però confirma aquests valors predeterminats",
Default Round Off Account,Compte d&#39;arrodoniment predeterminat,
Failed Import Log,Error de registre d&#39;importació,
Fixed Error Log,S&#39;ha corregit el registre d&#39;errors,
Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,"L&#39;empresa {0} ja existeix. Si continueu, se sobreescriurà l&#39;empresa i el pla de comptes",
Meta Data,Meta dades,
Unresolve,No resoldre,
Create Document,Crea un document,
Mark as unresolved,Marca com a no resolt,
TaxJar Settings,Configuració de TaxJar,
Sandbox Mode,Mode Sandbox,
Enable Tax Calculation,Activa el càlcul dels impostos,
Create TaxJar Transaction,Creeu una transacció TaxJar,
Credentials,Credencials,
Live API Key,Clau d&#39;API en directe,
Sandbox API Key,Clau API Sandbox,
Configuration,Configuració,
Tax Account Head,Cap de compte fiscal,
Shipping Account Head,Cap de compte d&#39;enviament,
Practitioner Name,Nom del practicant,
Enter a name for the Clinical Procedure Template,Introduïu un nom per a la plantilla de procediment clínic,
Set the Item Code which will be used for billing the Clinical Procedure.,Establiu el codi d&#39;article que s&#39;utilitzarà per facturar el procediment clínic.,
Select an Item Group for the Clinical Procedure Item.,Seleccioneu un grup d&#39;elements per a l&#39;element de procediment clínic.,
Clinical Procedure Rate,Taxa de procediment clínic,
Check this if the Clinical Procedure is billable and also set the rate.,Comproveu-ho si el procediment clínic és facturable i també establiu la tarifa.,
Check this if the Clinical Procedure utilises consumables. Click ,Comproveu-ho si el procediment clínic utilitza consumibles. Feu clic a,
 to know more,per saber-ne més,
"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.","També podeu configurar el departament mèdic de la plantilla. Després de desar el document, es crearà automàticament un article per facturar aquest procediment clínic. A continuació, podeu utilitzar aquesta plantilla mentre creeu procediments clínics per a pacients. Les plantilles us estalvien d&#39;emplenar dades redundants cada vegada. També podeu crear plantilles per a altres operacions, com ara proves de laboratori, sessions de teràpia, etc.",
Descriptive Test Result,Resultat de la prova descriptiva,
Allow Blank,Permet en blanc,
Descriptive Test Template,Plantilla de prova descriptiva,
"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Si voleu fer un seguiment de la nòmina i altres operacions HRMS per a un professional, creeu un empleat i enllaceu-lo aquí.",
Set the Practitioner Schedule you just created. This will be used while booking appointments.,Establiu el calendari de professionals que acabeu de crear. S’utilitzarà durant la reserva de cites.,
Create a service item for Out Patient Consulting.,Creeu un element de servei per a la consulta de pacients externs.,
"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Si aquest professional de la salut treballa per al departament d’hospitalització, creeu un article de servei per a visites d’hospitalització.",
Set the Out Patient Consulting Charge for this Practitioner.,Definiu el càrrec de consulta per a pacients fora d’aquest professional.,
"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Si aquest professional de la salut també treballa per al departament d’hospitalització, fixeu el càrrec de visita per a aquest professional.",
"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.","Si es marca, es crearà un client per a cada pacient. Les factures del pacient es crearan contra aquest client. També podeu seleccionar el client existent mentre creeu un pacient. Aquest camp està marcat per defecte.",
Collect Registration Fee,Cobra la quota de registre,
"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.","Si el vostre centre sanitari factura els registres de pacients, podeu comprovar-ho i establir la tarifa de registre al camp següent. Si ho comproveu, es crearan nous pacients amb l’estat de Discapacitat per defecte i només s’habilitaran després de facturar la quota de registre.",
Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,"Si ho comproveu, es crearà automàticament una factura de vendes sempre que es reservi una cita per a un pacient.",
Healthcare Service Items,Articles de serveis sanitaris,
"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 ","Podeu crear un article de servei per al càrrec de visita hospitalitzada i configurar-lo aquí. De la mateixa manera, podeu configurar altres articles del servei sanitari per a la facturació en aquesta secció. Feu clic a",
Set up default Accounts for the Healthcare Facility,Configureu els comptes predeterminats per al centre sanitari,
"If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.","Si voleu anul·lar la configuració dels comptes predeterminats i configurar els comptes d’ingressos i deutes per a assistència sanitària, podeu fer-ho aquí.",
Out Patient SMS alerts,Alertes SMS per a pacients,
"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 ","Si voleu enviar una alerta per SMS al registre del pacient, podeu activar aquesta opció. De manera similar, podeu configurar alertes SMS de pacient per a altres funcions en aquesta secció. Feu clic a",
Admission Order Details,Detalls de la comanda d’admissió,
Admission Ordered For,Admissió ordenada,
Expected Length of Stay,Durada prevista de l&#39;estada,
Admission Service Unit Type,Tipus d&#39;unitat de servei d&#39;admissió,
Healthcare Practitioner (Primary),Practicant sanitari (primària),
Healthcare Practitioner (Secondary),Practicant sanitari (secundària),
Admission Instruction,Instrucció d’admissió,
Chief Complaint,Queixa principal,
Medications,Medicaments,
Investigations,Investigacions,
Discharge Detials,Detalls de descàrrega,
Discharge Ordered Date,Data de la comanda de descàrrega,
Discharge Instructions,Instruccions de descàrrega,
Follow Up Date,Data de seguiment,
Discharge Notes,Notes de descàrrega,
Processing Inpatient Discharge,Tramitació de l’alta hospitalària,
Processing Patient Admission,Tramitació de l’admissió del pacient,
Check-in time cannot be greater than the current time,L’hora d’entrada no pot ser superior a l’hora actual,
Process Transfer,Transferència de processos,
HLC-LAB-.YYYY.-,HLC-LAB-.AAAA.-,
Expected Result Date,Data de resultat prevista,
Expected Result Time,Temps de resultat esperat,
Printed on,Imprès a,
Requesting Practitioner,Practicant sol·licitant,
Requesting Department,Departament sol·licitant,
Employee (Lab Technician),Empleat (tècnic de laboratori),
Lab Technician Name,Nom del tècnic de laboratori,
Lab Technician Designation,Designació de tècnic de laboratori,
Compound Test Result,Resultat de la prova composta,
Organism Test Result,Resultat de la prova d’organisme,
Sensitivity Test Result,Resultat de la prova de sensibilitat,
Worksheet Print,Impressió del full de treball,
Worksheet Instructions,Instruccions del full de treball,
Result Legend Print,Impressió de llegenda de resultats,
Print Position,Posició d’impressió,
Bottom,Part inferior,
Top,Superior,
Both,Tots dos,
Result Legend,Llegenda del resultat,
Lab Tests,Proves de laboratori,
No Lab Tests found for the Patient {0},No s&#39;ha trobat cap prova de laboratori per al pacient {0},
"Did not send SMS, missing patient mobile number or message content.","No heu enviat SMS, faltava el número de mòbil del pacient o el contingut del missatge.",
No Lab Tests created,No s&#39;ha creat cap prova de laboratori,
Creating Lab Tests...,S&#39;estan creant proves de laboratori ...,
Lab Test Group Template,Plantilla de grup de proves de laboratori,
Add New Line,Afegeix una línia nova,
Secondary UOM,UOM secundària,
"<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>Individual</b> : resultats que només requereixen una entrada única.<br> <b>Compost</b> : resultats que requereixen diverses entrades d&#39;esdeveniments.<br> <b>Descriptiu</b> : proves que tenen múltiples components de resultat amb entrada manual de resultats.<br> <b>Agrupats</b> : plantilles de prova que són un grup d&#39;altres plantilles de prova.<br> <b>Cap resultat</b> : es poden demanar i facturar proves sense resultats, però no es crearà cap prova de laboratori. per exemple. Subproves de resultats agrupats",
"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Si no està marcat, l&#39;article no estarà disponible a Factures de vendes per facturar, però es podrà utilitzar en la creació de proves de grup.",
Description ,Descripció,
Descriptive Test,Prova descriptiva,
Group Tests,Proves de grup,
Instructions to be printed on the worksheet,Instruccions per imprimir al full de treball,
"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",La informació que ajudi a interpretar fàcilment l&#39;informe de la prova s&#39;imprimirà com a part del resultat de la prova de laboratori.,
Normal Test Result,Resultat normal de la prova,
Secondary UOM Result,Resultat UOM secundari,
Italic,Cursiva,
Underline,Subratllar,
Organism,Organisme,
Organism Test Item,Article de prova d’organisme,
Colony Population,Població de colònies,
Colony UOM,Colònia UOM,
Tobacco Consumption (Past),Consum de tabac (passat),
Tobacco Consumption (Present),Consum de tabac (present),
Alcohol Consumption (Past),Consum d&#39;alcohol (passat),
Alcohol Consumption (Present),Consum d’alcohol (present),
Billing Item,Article de facturació,
Medical Codes,Codis mèdics,
Clinical Procedures,Procediments clínics,
Order Admission,Admissió de la comanda,
Scheduling Patient Admission,Programació de l’ingrés del pacient,
Order Discharge,Descàrrega de la comanda,
Sample Details,Detalls de la mostra,
Collected On,Recollit el,
No. of prints,Nombre d&#39;impressions,
Number of prints required for labelling the samples,Nombre d&#39;impressions necessàries per etiquetar les mostres,
HLC-VTS-.YYYY.-,HLC-VTS-.AAAA.-,
In Time,En el temps,
Out Time,Temps fora,
Payroll Cost Center,Centre de costos de nòmines,
Approvers,Aprovadors,
The first Approver in the list will be set as the default Approver.,El primer aprovador de la llista s&#39;establirà com a aprovador predeterminat.,
Shift Request Approver,Aprovador de sol·licituds de torn,
PAN Number,Número PAN,
Provident Fund Account,Compte de fons de previsió,
MICR Code,Codi MICR,
Repay unclaimed amount from salary,Reemborsar l’import no reclamat del salari,
Deduction from salary,Deducció del salari,
Expired Leaves,Fulles caducades,
Reference No,Número de referència,
Haircut percentage is the percentage difference between market value of the Loan Security and the value ascribed to that Loan Security when used as collateral for that loan.,El percentatge de tall de cabell és la diferència percentual entre el valor de mercat del títol de préstec i el valor atribuït a aquest títol quan s’utilitza com a garantia d’aquest préstec.,
Loan To Value Ratio expresses the ratio of the loan amount to the value of the security pledged. A loan security shortfall will be triggered if this falls below the specified value for any loan ,La ràtio de préstec a valor expressa la relació entre l’import del préstec i el valor de la garantia compromesa. Es produirà un dèficit de seguretat del préstec si aquesta baixa per sota del valor especificat per a qualsevol préstec,
If this is not checked the loan by default will be considered as a Demand Loan,"Si no es comprova això, el préstec per defecte es considerarà un préstec a la demanda",
This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Aquest compte s’utilitza per reservar els pagaments de préstecs del prestatari i també per desemborsar préstecs al prestatari,
This account is capital account which is used to allocate capital for loan disbursal account ,Aquest compte és un compte de capital que s’utilitza per assignar capital per al compte de desemborsament del préstec,
This account will be used for booking loan interest accruals,Aquest compte s’utilitzarà per reservar meritacions d’interessos del préstec,
This account will be used for booking penalties levied due to delayed repayments,Aquest compte s&#39;utilitzarà per a les penalitzacions de reserva imposades a causa de les amortitzacions endarrerides,
Variant BOM,Matèria Variant,
Template Item,Element de plantilla,
Select template item,Seleccioneu un element de plantilla,
Select variant item code for the template item {0},Seleccioneu el codi de l&#39;element variant per a l&#39;element de la plantilla {0},
Downtime Entry,Entrada de temps d&#39;inactivitat,
DT-,DT-,
Workstation / Machine,Estació de treball / màquina,
Operator,Operador,
In Mins,A Mins,
Downtime Reason,Raó del temps d&#39;inactivitat,
Stop Reason,Atura la raó,
Excessive machine set up time,Temps excessiu de configuració de la màquina,
Unplanned machine maintenance,Manteniment no planificat de la màquina,
On-machine press checks,Comprovacions de premsa a màquina,
Machine operator errors,Errors de l&#39;operador de la màquina,
Machine malfunction,Mal funcionament de la màquina,
Electricity down,Electricitat baixada,
Operation Row Number,Número de fila d&#39;operació,
Operation {0} added multiple times in the work order {1},L&#39;operació {0} s&#39;ha afegit diverses vegades a l&#39;ordre de treball {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.","Si es marca, es poden utilitzar diversos materials per a una sola comanda de treball. Això és útil si es fabriquen un o més productes que consumeixen molt de temps.",
Backflush Raw Materials,Backflush Matèries Primeres,
"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.","L’entrada d’estoc del tipus &quot;Fabricació&quot; es coneix com a retroaigua. Les matèries primeres que es consumeixen per fabricar productes acabats es coneixen com a retroefluents.<br><br> En crear Entrada de fabricació, els articles de matèria primera es retroactiven en funció de la llista de material de l&#39;article de producció. Si voleu que els elements de matèria primera es retroactiven en funció de l&#39;entrada de transferència de material feta amb aquesta ordre de treball, podeu establir-la en aquest camp.",
Work In Progress Warehouse,Magatzem Work In Progress,
This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Aquest magatzem s&#39;actualitzarà automàticament al camp Magatzem en curs de les comandes de treball.,
Finished Goods Warehouse,Magatzem de productes acabats,
This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Aquest magatzem s&#39;actualitzarà automàticament al camp Magatzem objectiu de l&#39;Ordre de treball.,
"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Si s’activa, el cost de la llista de materials s’actualitzarà automàticament en funció de la taxa de valoració / tarifa de la llista de preus / taxa d’última compra de les matèries primeres.",
Source Warehouses (Optional),Magatzems d&#39;origen (opcional),
"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","El sistema recollirà els materials dels magatzems seleccionats. Si no s&#39;especifica, el sistema crearà una sol·licitud de compra de material.",
Lead Time,Temps de lliurament,
PAN Details,Detalls del PAN,
Create Customer,Crear client,
Invoicing,Facturació,
Enable Auto Invoicing,Activa la facturació automàtica,
Send Membership Acknowledgement,Envia un agraïment a la pertinença,
Send Invoice with Email,Enviar factura amb correu electrònic,
Membership Print Format,Format d’impressió de pertinença,
Invoice Print Format,Format d&#39;impressió de factures,
Revoke <Key></Key>,Revocar&lt;Key&gt;&lt;/Key&gt;,
You can learn more about memberships in the manual. ,Podeu obtenir més informació sobre els abonaments al manual.,
ERPNext Docs,Documents ERPNext,
Regenerate Webhook Secret,Regenereu el secret de Webhook,
Generate Webhook Secret,Genereu secret de Webhook,
Copy Webhook URL,Copia l&#39;URL de Webhook,
Linked Item,Element enllaçat,
Is Recurring,És recurrent,
HRA Exemption,Exempció HRA,
Monthly House Rent,Lloguer mensual de la casa,
Rented in Metro City,Es lloga a Metro City,
HRA as per Salary Structure,HRA segons l&#39;estructura salarial,
Annual HRA Exemption,Exempció HRA anual,
Monthly HRA Exemption,Exempció HRA mensual,
House Rent Payment Amount,Import del pagament del lloguer de la casa,
Rented From Date,Llogat a partir de la data,
Rented To Date,Llogat fins avui,
Monthly Eligible Amount,Import elegible mensual,
Total Eligible HRA Exemption,Exempció HRA total elegible,
Validating Employee Attendance...,Validació de l&#39;assistència dels empleats ...,
Submitting Salary Slips and creating Journal Entry...,Enviant fulls salarials i creant entrada de diari ...,
Calculate Payroll Working Days Based On,Calculeu els dies laborables de nòmina en funció de,
Consider Unmarked Attendance As,Penseu en l&#39;assistència no marcada,
Fraction of Daily Salary for Half Day,Fracció del salari diari durant mitja jornada,
Component Type,Tipus de component,
Provident Fund,fons de previsió,
Additional Provident Fund,Fons de previsió addicional,
Provident Fund Loan,Préstec del Fons Provident,
Professional Tax,Impost professional,
Is Income Tax Component,És un component de l&#39;Impost sobre la Renda,
Component properties and references ,Propietats i referències dels components,
Additional Salary ,Salari addicional,
Unmarked days,Dies sense marcar,
Absent Days,Dies absents,
Conditions and Formula variable and example,Condició i variable de fórmula i exemple,
Feedback By,Opinió de,
Manufacturing Section,Secció de fabricació,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","Per defecte, el nom del client s&#39;estableix segons el nom complet introduït. Si voleu que els clients siguin nomenats per un",
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Configureu la llista de preus predeterminada quan creeu una nova transacció de vendes. Els preus dels articles s’obtindran d’aquesta llista de preus.,
"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.","Si aquesta opció està configurada com a &quot;Sí&quot;, ERPNext us impedirà crear una factura de venda o una nota de lliurament sense crear primer una comanda de venda. Aquesta configuració es pot anul·lar per a un client concret si activeu la casella de selecció &quot;Permet la creació de factures de venda sense comanda de venda&quot; al mestre del client.",
"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.","Si aquesta opció està configurada com a &quot;Sí&quot;, ERPNext us impedirà crear una factura de vendes sense haver de crear abans una nota de lliurament. Aquesta configuració es pot anul·lar per a un client concret si activeu la casella de selecció &quot;Permet la creació de factures de venda sense nota de lliurament&quot; al mestre del client.",
Default Warehouse for Sales Return,Magatzem predeterminat per a la devolució de vendes,
Default In Transit Warehouse,Valor predeterminat al magatzem de trànsit,
Enable Perpetual Inventory For Non Stock Items,Activeu l&#39;inventari perpetu per a articles sense accions,
HRA Settings,Configuració HRA,
Basic Component,Component bàsic,
HRA Component,Component HRA,
Arrear Component,Component endarrerit,
Please enter the company name to confirm,Introduïu el nom de l’empresa per confirmar,
Quotation Lost Reason Detail,Cita Detall del motiu perdut,
Enable Variants,Activa les variants,
Save Quotations as Draft,Desa les ofertes com a esborrany,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.AAAA.-,
Please Select a Customer,Seleccioneu un client,
Against Delivery Note Item,Contra l&#39;article de nota de lliurament,
Is Non GST ,No és GST,
Image Description,Descripció de la imatge,
Transfer Status,Estat de la transferència,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
Track this Purchase Receipt against any Project,Feu un seguiment d’aquest comprovant de compra contra qualsevol projecte,
Please Select a Supplier,Seleccioneu un proveïdor,
Add to Transit,Afegeix a Transit,
Set Basic Rate Manually,Estableix la tarifa bàsica manualment,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","Per defecte, el nom de l’article s’estableix segons el codi d’article introduït. Si voleu que els articles siguin nomenats per",
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Definiu un magatzem predeterminat per a transaccions d&#39;inventari. Això s’obtindrà al magatzem predeterminat del mestre d’elements.,
"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.","Això permetrà que els articles en estoc es mostrin en valors negatius. L&#39;ús d&#39;aquesta opció depèn del vostre cas d&#39;ús. Amb aquesta opció desmarcada, el sistema avisa abans d’obstruir una transacció que provoca accions negatives.",
Choose between FIFO and Moving Average Valuation Methods. Click ,Trieu entre els mètodes de valoració FIFO i de mitjana mòbil. Feu clic a,
 to know more about them.,per saber-ne més.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Mostra el camp &quot;Escaneja codi de barres&quot; a sobre de cada taula infantil per inserir elements amb facilitat.,
"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.","Els números de sèrie de les existències s’establiran automàticament en funció dels articles introduïts en funció del primer d’entrada en sortida de transaccions com factures de compra / venda, albarans de lliurament, etc.",
"If blank, parent Warehouse Account or company default will be considered in transactions","Si es deixa en blanc, es considerarà el compte de magatzem principal o el valor predeterminat de l&#39;empresa en les transaccions",
Service Level Agreement Details,Detalls de l&#39;acord de nivell de servei,
Service Level Agreement Status,Estat de l&#39;acord de nivell de servei,
On Hold Since,En espera Des de,
Total Hold Time,Temps total de retenció,
Response Details,Detalls de la resposta,
Average Response Time,Temps mitjà de resposta,
User Resolution Time,Temps de resolució de l&#39;usuari,
SLA is on hold since {0},L&#39;SLA està en espera des del dia {0},
Pause SLA On Status,Posa en pausa l&#39;estat de l&#39;SLA,
Pause SLA On,Posa en pausa l&#39;SLA,
Greetings Section,Secció de salutacions,
Greeting Title,Títol de salutació,
Greeting Subtitle,Salutació del subtítol,
Youtube ID,Identificador de Youtube,
Youtube Statistics,Estadístiques de Youtube,
Views,Vistes,
Dislikes,No m&#39;agrada,
Video Settings,Configuració del vídeo,
Enable YouTube Tracking,Activa el seguiment de YouTube,
30 mins,30 minuts,
1 hr,1 hora,
6 hrs,6 hores,
Patient Progress,Progrés del pacient,
Targetted,Orientat,
Score Obtained,Puntuació obtinguda,
Sessions,Sessions,
Average Score,Puntuació mitjana,
Select Assessment Template,Seleccioneu una plantilla d&#39;avaluació,
 out of ,fora de,
Select Assessment Parameter,Seleccioneu Paràmetre d&#39;avaluació,
Gender: ,Gènere:,
Contact: ,Contacte:,
Total Therapy Sessions: ,Total de sessions de teràpia:,
Monthly Therapy Sessions: ,Sessions mensuals de teràpia:,
Patient Profile,Perfil del pacient,
Point Of Sale,Punt de venda,
Email sent successfully.,El correu electrònic s&#39;ha enviat correctament.,
Search by invoice id or customer name,Cerqueu per identificador de factura o nom de client,
Invoice Status,Estat de la factura,
Filter by invoice status,Filtra per estat de factura,
Select item group,Seleccioneu el grup d’elements,
No items found. Scan barcode again.,No s&#39;ha trobat cap element. Torneu a escanejar el codi de barres.,
"Search by customer name, phone, email.","Cerca per nom de client, telèfon, correu electrònic.",
Enter discount percentage.,Introduïu el percentatge de descompte.,
Discount cannot be greater than 100%,El descompte no pot ser superior al 100%,
Enter customer's email,Introduïu el correu electrònic del client,
Enter customer's phone number,Introduïu el número de telèfon del client,
Customer contact updated successfully.,El contacte amb el client s’ha actualitzat correctament.,
Item will be removed since no serial / batch no selected.,L&#39;element s&#39;eliminarà ja que no s&#39;ha seleccionat cap lot o sèrie.,
Discount (%),Descompte (%),
You cannot submit the order without payment.,No podeu enviar la comanda sense pagament.,
You cannot submit empty order.,No podeu enviar una comanda buida.,
To Be Paid,Cobrar,
Create POS Opening Entry,Crea una entrada d&#39;obertura de TPV,
Please add Mode of payments and opening balance details.,Afegiu els detalls del mode de pagament i del saldo inicial.,
Toggle Recent Orders,Commuta les comandes recents,
Save as Draft,Desa com a esborrany,
You must add atleast one item to save it as draft.,Heu d&#39;afegir almenys un element per desar-lo com a esborrany.,
There was an error saving the document.,S&#39;ha produït un error en desar el document.,
You must select a customer before adding an item.,Heu de seleccionar un client abans d&#39;afegir un article.,
Please Select a Company,Seleccioneu una empresa,
Active Leads,Leads actius,
Please Select a Company.,Seleccioneu una empresa.,
BOM Operations Time,Temps d&#39;operacions de la matèria,
BOM ID,Identificador de la matèria,
BOM Item Code,Codi de l&#39;article BOM,
Time (In Mins),Temps (en minuts),
Sub-assembly BOM Count,Recompte BOM del subconjunt,
View Type,Tipus de visualització,
Total Delivered Amount,Import total lliurat,
Downtime Analysis,Anàlisi del temps d&#39;inactivitat,
Machine,Màquina,
Downtime (In Hours),Temps d&#39;inactivitat (en hores),
Employee Analytics,Anàlisi dels empleats,
"""From date"" can not be greater than or equal to ""To date""",&quot;Des de la data&quot; no pot ser superior ni igual a &quot;Fins a la data&quot;,
Exponential Smoothing Forecasting,Previsió de suavització exponencial,
First Response Time for Issues,Temps de primera resposta per a problemes,
First Response Time for Opportunity,Temps de primera resposta per a l&#39;oportunitat,
Depreciatied Amount,Import depreciat,
Period Based On,Període basat en,
Date Based On,Data basada en,
{0} and {1} are mandatory,{0} i {1} són obligatoris,
Consider Accounting Dimensions,Considereu les dimensions comptables,
Income Tax Deductions,Deduccions de l&#39;Impost sobre la Renda,
Income Tax Component,Component de l&#39;Impost sobre la Renda,
Income Tax Amount,Import de l&#39;Impost sobre la Renda,
Reserved Quantity for Production,Quantitat reservada per a la producció,
Projected Quantity,Quantitat projectada,
 Total Sales Amount,Import total de vendes,
Job Card Summary,Resum de la targeta de treball,
Id,Id,
Time Required (In Mins),Temps necessari (en minuts),
From Posting Date,Des de la data de publicació,
To Posting Date,Fins a la data de publicació,
No records found,No s&#39;ha trobat cap registre,
Customer/Lead Name,Nom del client / client potencial,
Unmarked Days,Dies sense marcar,
Jan,Gener,
Feb,Febrer,
Mar,desfigurar,
Apr,Abr,
Aug,Agost,
Sep,Set,
Oct,Octubre,
Nov,Novembre,
Dec,Des,
Summarized View,Vista resumida,
Production Planning Report,Informe de planificació de la producció,
Order Qty,Quantitat de comanda,
Raw Material Code,Codi de matèries primeres,
Raw Material Name,Nom de la matèria primera,
Allotted Qty,Quantitat assignada,
Expected Arrival Date,Data d&#39;arribada prevista,
Arrival Quantity,Quantitat d&#39;arribada,
Raw Material Warehouse,Magatzem de matèries primeres,
Order By,Demanat per,
Include Sub-assembly Raw Materials,Incloeu matèries primeres del subconjunt,
Professional Tax Deductions,Deduccions fiscals professionals,
Program wise Fee Collection,Recollida de tarifes per programa,
Fees Collected,Tarifes cobrades,
Project Summary,Resum del projecte,
Total Tasks,Tasques totals,
Tasks Completed,Tasques completades,
Tasks Overdue,Tasques vençudes,
Completion,Finalització,
Provident Fund Deductions,Deduccions de fons de previsió,
Purchase Order Analysis,Anàlisi de comandes de compra,
From and To Dates are required.,Es requereixen dates de sortida i arribada.,
To Date cannot be before From Date.,Fins a la data no pot ser anterior a la data de sortida.,
Qty to Bill,Quantitat de factura,
Group by Purchase Order,Agrupa per ordre de compra,
 Purchase Value,Valor de compra,
Total Received Amount,Import total rebut,
Quality Inspection Summary,Resum de la inspecció de qualitat,
 Quoted Amount,Import citat,
Lead Time (Days),Temps de lliurament (dies),
Include Expired,Inclou Caducat,
Recruitment Analytics,Analítica de contractació,
Applicant name,Nom del sol · licitant,
Job Offer status,Estat de l’oferta de treball,
On Date,A la data,
Requested Items to Order and Receive,Articles sol·licitats per demanar i rebre,
Salary Payments Based On Payment Mode,Pagaments salarials en funció del mode de pagament,
Salary Payments via ECS,Pagaments salarials mitjançant ECS,
Account No,Núm de compte,
IFSC,IFSC,
MICR,MICR,
Sales Order Analysis,Anàlisi de comandes de venda,
Amount Delivered,Import lliurat,
Delay (in Days),Retard (en dies),
Group by Sales Order,Agrupa per comanda de venda,
 Sales Value,Valor de vendes,
Stock Qty vs Serial No Count,Quantitat d’estoc vs recompte en sèrie,
Serial No Count,Sèrie sense recompte,
Work Order Summary,Resum de la comanda de treball,
Produce Qty,Produeix la quantitat,
Lead Time (in mins),Temps de lliurament (en minuts),
Charts Based On,Gràfics basats en,
YouTube Interactions,Interaccions de YouTube,
Published Date,Data de publicació,
Barnch,Barnch,
Select a Company,Seleccioneu una empresa,
Opportunity {0} created,S&#39;ha creat l&#39;oportunitat {0},
Kindly select the company first,Seleccioneu primer l&#39;empresa,
Please enter From Date and To Date to generate JSON,Introduïu Des de la data i fins a la data per generar JSON,
PF Account,Compte PF,
PF Amount,Import de PF,
Additional PF,PF addicional,
PF Loan,Préstec PF,
Download DATEV File,Descarregueu el fitxer DATEV,
Numero has not set in the XML file,Numero no s&#39;ha definit al fitxer XML,
Inward Supplies(liable to reverse charge),Subministraments interns (susceptible de revertir la càrrega),
This is based on the course schedules of this Instructor,Això es basa en els horaris del curs d’aquest instructor,
Course and Assessment,Curs i avaluació,
Course {0} has been added to all the selected programs successfully.,El curs {0} s&#39;ha afegit amb èxit a tots els programes seleccionats.,
Programs updated,Programes actualitzats,
Program and Course,Programa i curs,
{0} or {1} is mandatory,{0} o {1} és obligatori,
Mandatory Fields,Camps obligatoris,
Student {0}: {1} does not belong to Student Group {2},Estudiant {0}: {1} no pertany al grup d&#39;estudiants {2},
Student Attendance record {0} already exists against the Student {1},El registre d&#39;assistència estudiantil {0} ja existeix contra l&#39;estudiant {1},
Duplicate Entry,Entrada duplicada,
Course and Fee,Curs i Tarifa,
Not eligible for the admission in this program as per Date Of Birth,No és elegible per a l’admissió a aquest programa segons la data de naixement,
Topic {0} has been added to all the selected courses successfully.,El tema {0} s&#39;ha afegit amb èxit a tots els cursos seleccionats.,
Courses updated,Cursos actualitzats,
{0} {1} has been added to all the selected topics successfully.,{0} {1} s&#39;ha afegit correctament a tots els temes seleccionats.,
Topics updated,Temes actualitzats,
Academic Term and Program,Terme acadèmic i programa,
Please remove this item and try to submit again or update the posting time.,Elimineu aquest element i proveu d&#39;enviar-lo de nou o actualitzeu l&#39;hora de publicació.,
Failed to Authenticate the API key.,No s&#39;ha pogut autenticar la clau API.,
Invalid Credentials,Credencials no vàlides,
URL can only be a string,L&#39;URL només pot ser una cadena,
"Here is your webhook secret, this will be shown to you only once.","Aquí teniu el secret del webhook, que només es mostrarà una vegada.",
The payment for this membership is not paid. To generate invoice fill the payment details,"El pagament d&#39;aquesta subscripció no es paga. Per generar factura, empleneu les dades de pagament",
An invoice is already linked to this document,Ja hi ha una factura enllaçada amb aquest document,
No customer linked to member {},Cap client enllaçat amb el membre {},
You need to set <b>Debit Account</b> in Membership Settings,Heu d’establir el <b>compte de dèbit</b> a Configuració de membres,
You need to set <b>Default Company</b> for invoicing in Membership Settings,Heu d’establir l’ <b>empresa predeterminada</b> per a la facturació a la configuració de la pertinença,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Heu d’habilitar l’ <b>enviament de correu electrònic</b> de confirmació a la configuració de la pertinença,
Error creating membership entry for {0},Error en crear l&#39;entrada de membre per a {0},
A customer is already linked to this Member,Un client ja està vinculat a aquest membre,
End Date must not be lesser than Start Date,La data de finalització no pot ser inferior a la data d’inici,
Employee {0} already has Active Shift {1}: {2},L&#39;empleat {0} ja té Active Shift {1}: {2},
 from {0},de {0},
 to {0},a {0},
Please select Employee first.,Seleccioneu primer Empleat.,
Please set {0} for the Employee or for Department: {1},Definiu {0} per a l&#39;empleat o per al departament: {1},
To Date should be greater than From Date,Fins a la data ha de ser superior a la data de sortida,
Employee Onboarding: {0} is already for Job Applicant: {1},Integració dels empleats: {0} ja és per al sol·licitant de feina: {1},
Job Offer: {0} is already for Job Applicant: {1},Oferta de feina: {0} ja és per al sol·licitant de feina: {1},
Only Shift Request with status 'Approved' and 'Rejected' can be submitted,Només es pot enviar la sol·licitud de canvi amb l&#39;estat &quot;Aprovat&quot; i &quot;Rebutjat&quot;,
Shift Assignment: {0} created for Employee: {1},Tasca de torn: {0} creada per a empleat: {1},
You can not request for your Default Shift: {0},No podeu sol·licitar el canvi per defecte: {0},
Only Approvers can Approve this Request.,Només els aprovadors poden aprovar aquesta sol·licitud.,
Asset Value Analytics,Anàlisi del valor dels recursos,
Category-wise Asset Value,Valor dels actius segons la categoria,
Total Assets,Els actius totals,
New Assets (This Year),Actius nous (aquest any),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Fila núm. {}: La data de publicació de l&#39;amortització no ha de ser igual a la data disponible per a l&#39;ús.,
Incorrect Date,Data incorrecta,
Invalid Gross Purchase Amount,Import brut de la compra no vàlid,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Hi ha manteniment actiu o reparacions de l’actiu. Heu de completar-los tots abans de cancel·lar el recurs.,
% Complete,% Complet,
Back to Course,Tornar al curs,
Finish Topic,Finalitza el tema,
Mins,Mins,
by,per,
Back to,Tornar,
Enrolling...,S&#39;està inscrivint ...,
You have successfully enrolled for the program ,Us heu inscrit amb èxit al programa,
Enrolled,Inscrit,
Watch Intro,Mireu Introducció,
We're here to help!,Som aquí per ajudar-vos.,
Frequently Read Articles,Articles de lectura freqüent,
Please set a default company address,Definiu una adreça predeterminada de l&#39;empresa,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} no és un estat vàlid. Comproveu si hi ha errors tipogràfics o introduïu el codi ISO del vostre estat.,
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,S&#39;ha produït un error en analitzar el pla de comptes: assegureu-vos que no hi hagi dos comptes amb el mateix nom,
Plaid invalid request error,Error de sol·licitud no vàlid a quadres,
Please check your Plaid client ID and secret values,Comproveu el vostre identificador de client Plaid i els valors secrets,
Bank transaction creation error,Error de creació de transaccions bancàries,
Unit of Measurement,Unitat de mesura,
Fiscal Year {0} Does Not Exist,L’any fiscal {0} no existeix,
Row # {0}: Returned Item {1} does not exist in {2} {3},Fila núm. {0}: l&#39;article retornat {1} no existeix a {2} {3},
Valuation type charges can not be marked as Inclusive,Els càrrecs per tipus de taxació no es poden marcar com a Inclosius,
You do not have permissions to {} items in a {}.,No teniu permisos per {} elements d&#39;un {}.,
Insufficient Permissions,Permisos insuficients,
You are not allowed to update as per the conditions set in {} Workflow.,No es pot actualitzar segons les condicions establertes a {} Workflow.,
Expense Account Missing,Falta un compte de despeses,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} no és un valor vàlid per a l&#39;atribut {1} de l&#39;element {2}.,
Invalid Value,Valor no vàlid,
The value {0} is already assigned to an existing Item {1}.,El valor {0} ja està assignat a un element existent {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Per continuar editant aquest valor d&#39;atribut, activeu {0} a Configuració de la variant de l&#39;element.",
Edit Not Allowed,L&#39;edició no es permet,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Fila núm. {0}: l&#39;article {1} ja s&#39;ha rebut completament a la comanda de compra {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},No podeu crear ni cancel·lar cap entrada comptable durant el període comptable tancat {0},
POS Invoice should have {} field checked.,La factura TPV hauria d&#39;haver marcat el camp {}.,
Invalid Item,Article no vàlid,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Fila núm. {}: No podeu afegir quantitats postives en una factura de devolució. Traieu l&#39;element {} per completar la devolució.,
The selected change account {} doesn't belongs to Company {}.,El compte de canvi seleccionat {} no pertany a l&#39;empresa {}.,
Atleast one invoice has to be selected.,Cal seleccionar una factura com a mínim.,
Payment methods are mandatory. Please add at least one payment method.,Els mètodes de pagament són obligatoris. Afegiu com a mínim una forma de pagament.,
Please select a default mode of payment,Seleccioneu un mode de pagament predeterminat,
You can only select one mode of payment as default,Només podeu seleccionar un mode de pagament per defecte,
Missing Account,Falta un compte,
Customers not selected.,Clients no seleccionats.,
Statement of Accounts,Estat de comptes,
Ageing Report Based On ,Informe sobre envelliment basat en,
Please enter distributed cost center,Introduïu el centre de cost distribuït,
Total percentage allocation for distributed cost center should be equal to 100,L’assignació percentual total per al centre de cost distribuït ha de ser igual a 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,No es pot habilitar el centre de costos distribuït per a un centre de costos ja assignat en un altre centre de costos distribuït,
Parent Cost Center cannot be added in Distributed Cost Center,No es pot afegir el Centre de costos principal al Centre de costos distribuït,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,No es pot afegir un centre de costos distribuït a la taula d&#39;assignació del centre de costos distribuït.,
Cost Center with enabled distributed cost center can not be converted to group,El centre de costos amb el centre de costos distribuït habilitat no es pot convertir en grup,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,El centre de costos ja assignat en un centre de costos distribuït no es pot convertir en grup,
Trial Period Start date cannot be after Subscription Start Date,La data d&#39;inici del període de prova no pot ser posterior a la data d&#39;inici de la subscripció,
Subscription End Date must be after {0} as per the subscription plan,La data de finalització de la subscripció ha de ser posterior a {0} segons el pla de subscripció,
Subscription End Date is mandatory to follow calendar months,La data de finalització de la subscripció és obligatòria per seguir els mesos naturals,
Row #{}: POS Invoice {} is not against customer {},Fila núm. {}: La factura TPV {} no està en contra del client {},
Row #{}: POS Invoice {} is not submitted yet,Fila núm. {}: La factura TPV {} encara no s&#39;ha enviat,
Row #{}: POS Invoice {} has been {},Fila núm. {}: La factura TPV {} ha estat {},
No Supplier found for Inter Company Transactions which represents company {0},No s&#39;ha trobat cap proveïdor per a les transaccions entre empreses que representi l&#39;empresa {0},
No Customer found for Inter Company Transactions which represents company {0},No s&#39;ha trobat cap client per a les transaccions entre empreses que representi l&#39;empresa {0},
Invalid Period,Període no vàlid,
Selected POS Opening Entry should be open.,L&#39;entrada d&#39;obertura del TPV seleccionat hauria d&#39;estar oberta.,
Invalid Opening Entry,Entrada d&#39;obertura no vàlida,
Please set a Company,Configureu una empresa,
"Sorry, this coupon code's validity has not started","Ho sentim, la validesa d&#39;aquest codi de cupó no s&#39;ha iniciat",
"Sorry, this coupon code's validity has expired","Ho sentim, la validesa d&#39;aquest codi de cupó ha caducat",
"Sorry, this coupon code is no longer valid","Ho sentim, aquest codi de cupó ja no és vàlid",
For the 'Apply Rule On Other' condition the field {0} is mandatory,"Per a la condició &quot;Aplica la regla a altres&quot;, el camp {0} és obligatori",
{1} Not in Stock,{1} No en estoc,
Only {0} in Stock for item {1},Només {0} en estoc per a l&#39;article {1},
Please enter a coupon code,Introduïu un codi de cupó,
Please enter a valid coupon code,Introduïu un codi de cupó vàlid,
Invalid Child Procedure,Procediment infantil no vàlid,
Import Italian Supplier Invoice.,Importa la factura del proveïdor italià.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.",El percentatge de valoració de l&#39;article {0} és obligatori per fer les entrades comptables de {1} {2}.,
 Here are the options to proceed:,Aquí teniu les opcions per continuar:,
"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.","Si l&#39;element està transaccionant com a element de taxa de valoració zero en aquesta entrada, activeu &quot;Permet la taxa de valoració zero&quot; a la taula {0} Article.",
"If not, you can Cancel / Submit this entry ","Si no, podeu cancel·lar / enviar aquesta entrada",
 performing either one below:,realitzant qualsevol de les següents:,
Create an incoming stock transaction for the Item.,Creeu una transacció d&#39;accions entrants per a l&#39;article.,
Mention Valuation Rate in the Item master.,Esmentar la taxa de valoració al document principal.,
Valuation Rate Missing,Falta la taxa de valoració,
Serial Nos Required,Es requereixen els números de sèrie,
Quantity Mismatch,Desajust quantitari,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Reposteu els articles i actualitzeu la llista de selecció per continuar. Per deixar de fer-ho, cancel·leu la llista de selecció.",
Out of Stock,Esgotat,
{0} units of Item {1} is not available.,{0} unitats de l&#39;article {1} no estan disponibles.,
Item for row {0} does not match Material Request,L&#39;element de la fila {0} no coincideix amb la sol·licitud de material,
Warehouse for row {0} does not match Material Request,El magatzem de la fila {0} no coincideix amb la sol·licitud de material,
Accounting Entry for Service,Entrada comptable del servei,
All items have already been Invoiced/Returned,Tots els articles ja han estat facturats / retornats,
All these items have already been Invoiced/Returned,Tots aquests articles ja han estat facturats / retornats,
Stock Reconciliations,Conciliacions d’estocs,
Merge not allowed,No es permet combinar,
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.,"Els atributs suprimits següents existeixen a les variants, però no a la plantilla. Podeu suprimir les variants o mantenir els atributs a la plantilla.",
Variant Items,Elements de la variant,
Variant Attribute Error,Error d&#39;atribut de variant,
The serial no {0} does not belong to item {1},El número de sèrie {0} no pertany a l&#39;element {1},
There is no batch found against the {0}: {1},No s&#39;ha trobat cap lot al {0}: {1},
Completed Operation,Operació finalitzada,
Work Order Analysis,Anàlisi d’ordre de treball,
Quality Inspection Analysis,Anàlisi de la inspecció de qualitat,
Pending Work Order,Ordre de treball pendent,
Last Month Downtime Analysis,Anàlisi del temps d’aturada del mes passat,
Work Order Qty Analysis,Anàlisi de la quantitat de comandes de treball,
Job Card Analysis,Anàlisi de la targeta de treball,
Monthly Total Work Orders,Total de comandes de treball mensuals,
Monthly Completed Work Orders,Comandes de treball finalitzades mensualment,
Ongoing Job Cards,Targetes de treball en curs,
Monthly Quality Inspections,Inspeccions mensuals de qualitat,
(Forecast),(Previsió),
Total Demand (Past Data),Demanda total (dades anteriors),
Total Forecast (Past Data),Previsió total (dades anteriors),
Total Forecast (Future Data),Previsió total (dades futures),
Based On Document,Basat en el document,
Based On Data ( in years ),Basat en dades (en anys),
Smoothing Constant,Suavitzant constant,
Please fill the Sales Orders table,Empleneu la taula de comandes de venda,
Sales Orders Required,Es requereixen comandes de venda,
Please fill the Material Requests table,Empleneu la taula de sol·licituds de material,
Material Requests Required,Es requereixen sol·licituds de material,
Items to Manufacture are required to pull the Raw Materials associated with it.,Els articles a fabricar són obligatoris per extreure les matèries primeres associades.,
Items Required,Elements necessaris,
Operation {0} does not belong to the work order {1},L&#39;operació {0} no pertany a l&#39;ordre de treball {1},
Print UOM after Quantity,Imprimiu UOM després de Quantity,
Set default {0} account for perpetual inventory for non stock items,Definiu un compte {0} predeterminat per a l&#39;inventari perpetu dels articles que no estiguin en estoc,
Loan Security {0} added multiple times,La seguretat del préstec {0} s&#39;ha afegit diverses vegades,
Loan Securities with different LTV ratio cannot be pledged against one loan,Els títols de préstec amb una ràtio LTV diferent no es poden empenyorar contra un préstec,
Qty or Amount is mandatory for loan security!,Quantitat o import és obligatori per a la seguretat del préstec.,
Only submittted unpledge requests can be approved,Només es poden aprovar les sol·licituds unpledge enviades,
Interest Amount or Principal Amount is mandatory,L’interès o l’import del capital són obligatoris,
Disbursed Amount cannot be greater than {0},La quantitat desemborsada no pot ser superior a {0},
Row {0}: Loan Security {1} added multiple times,Fila {0}: seguretat del préstec {1} afegida diverses vegades,
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Fila núm. {0}: l&#39;article secundari no ha de ser un paquet de productes. Traieu l&#39;element {1} i deseu,
Credit limit reached for customer {0},S&#39;ha assolit el límit de crèdit per al client {0},
Could not auto create Customer due to the following missing mandatory field(s):,No s&#39;ha pogut crear el client automàticament perquè falten els camps obligatoris següents:,
Please create Customer from Lead {0}.,Creeu client des de Lead {0}.,
Mandatory Missing,Falta obligatòriament,
Please set Payroll based on in Payroll settings,Configureu la nòmina segons la configuració de nòmines,
Additional Salary: {0} already exist for Salary Component: {1} for period {2} and {3},Salari addicional: {0} ja existeix per al component salari: {1} per al període {2} i {3},
From Date can not be greater than To Date.,Des de la data no pot ser superior a fins a la data.,
Payroll date can not be less than employee's joining date.,La data de nòmina no pot ser inferior a la data d’adhesió dels empleats.,
From date can not be less than employee's joining date.,La data de sortida no pot ser inferior a la data d’adhesió dels empleats.,
To date can not be greater than employee's relieving date.,Fins ara no pot ser superior a la data d’alleujament dels empleats.,
Payroll date can not be greater than employee's relieving date.,La data de nòmina no pot ser superior a la data d’alleujament dels empleats.,
Row #{0}: Please enter the result value for {1},Fila núm. {0}: introduïu el valor del resultat per a {1},
Mandatory Results,Resultats obligatoris,
Sales Invoice or Patient Encounter is required to create Lab Tests,Es necessita una factura de vendes o una trobada de pacients per crear proves de laboratori,
Insufficient Data,Dades insuficients,
Lab Test(s) {0} created successfully,Les proves de laboratori {0} s&#39;han creat correctament,
Test :,Prova:,
Sample Collection {0} has been created,S&#39;ha creat la col·lecció de mostres {0},
Normal Range: ,Rang normal:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Fila núm. {0}: la data i hora de sortida no pot ser inferior a la data i hora d’entrada,
"Missing required details, did not create Inpatient Record",Falta la informació requerida i no ha creat el registre d’hospitalització,
Unbilled Invoices,Factures sense facturar,
Standard Selling Rate should be greater than zero.,La taxa de venda estàndard ha de ser superior a zero.,
Conversion Factor is mandatory,El factor de conversió és obligatori,
Row #{0}: Conversion Factor is mandatory,Fila núm. {0}: el factor de conversió és obligatori,
Sample Quantity cannot be negative or 0,La quantitat de mostra no pot ser negativa ni 0,
Invalid Quantity,Quantitat no vàlida,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Estableix els valors predeterminats per al grup de clients, el territori i la llista de preus de venda a Configuració de venda",
{0} on {1},{0} a {1},
{0} with {1},{0} amb {1},
Appointment Confirmation Message Not Sent,Missatge de confirmació de cita no enviat,
"SMS not sent, please check SMS Settings","No s&#39;ha enviat l&#39;SMS, comproveu la configuració d&#39;SMS",
Healthcare Service Unit Type cannot have both {0} and {1},El tipus d&#39;unitat de servei sanitari no pot tenir tant {0} com {1},
Healthcare Service Unit Type must allow atleast one among {0} and {1},El tipus d&#39;unitat de servei sanitari ha de permetre almenys un entre {0} i {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Definiu el temps de resposta i el temps de resolució per a la prioritat {0} a la fila {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,El temps de resposta per a la {0} prioritat de la fila {1} no pot ser superior al temps de resolució.,
{0} is not enabled in {1},{0} no està habilitat a {1},
Group by Material Request,Agrupa per petició de material,
Email Sent to Supplier {0},Correu electrònic enviat al proveïdor {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","L&#39;accés a la sol·licitud de pressupost des del portal està desactivat. Per permetre l&#39;accés, activeu-lo a Configuració del portal.",
Supplier Quotation {0} Created,S&#39;ha creat la cotització del proveïdor {0},
Valid till Date cannot be before Transaction Date,La data vàlida fins a la data no pot ser anterior a la data de la transacció,
Unlink Advance Payment on Cancellation of Order,Desenllaçar el pagament anticipat de la cancel·lació de la comanda,
"Simple Python Expression, Example: territory != 'All Territories'","Expressió simple de Python, exemple: territori! = &quot;Tots els territoris&quot;",
Sales Contributions and Incentives,Contribucions a la venda i incentius,
Sourced by Supplier,Proveït pel proveïdor,
Total weightage assigned should be 100%.<br>It is {0},El pes total assignat ha de ser del 100%.<br> És {0},
Account {0} exists in parent company {1}.,El compte {0} existeix a l&#39;empresa matriu {1}.,
"To overrule this, enable '{0}' in company {1}","Per anul·lar això, activeu &quot;{0}&quot; a l&#39;empresa {1}",
Invalid condition expression,Expressió de condició no vàlida,
Please Select a Company First,Seleccioneu primer una empresa,
Please Select Both Company and Party Type First,Seleccioneu primer el tipus d’empresa i de festa,
Provide the invoice portion in percent,Proporcioneu la part de la factura en percentatge,
Give number of days according to prior selection,Indiqueu el nombre de dies segons la selecció prèvia,
Email Details,Detalls del correu electrònic,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Seleccioneu una felicitació per al receptor. Per exemple, senyor, senyora, etc.",
Preview Email,Vista prèvia del correu electrònic,
Please select a Supplier,Seleccioneu un proveïdor,
Supplier Lead Time (days),Temps de lliurament del proveïdor (dies),
"Home, Work, etc.","Llar, feina, etc.",
Exit Interview Held On,Surt de l&#39;entrevista realitzada,
Condition and formula,Condició i fórmula,
Sets 'Target Warehouse' in each row of the Items table.,Estableix &quot;Magatzem objectiu&quot; a cada fila de la taula Elements.,
Sets 'Source Warehouse' in each row of the Items table.,Estableix &quot;Magatzem font&quot; a cada fila de la taula Elements.,
POS Register,Registre TPV,
"Can not filter based on POS Profile, if grouped by POS Profile","No es pot filtrar segons el perfil de TPV, si s&#39;agrupa per perfil de TPV",
"Can not filter based on Customer, if grouped by Customer","No es pot filtrar en funció del client, si s&#39;agrupa per client",
"Can not filter based on Cashier, if grouped by Cashier","No es pot filtrar segons el Caixer, si s&#39;agrupa per Caixer",
Payment Method,Mètode de pagament,
"Can not filter based on Payment Method, if grouped by Payment Method","No es pot filtrar en funció del mètode de pagament, si s&#39;agrupa per mètode de pagament",
Supplier Quotation Comparison,Comparació de pressupostos de proveïdors,
Price per Unit (Stock UOM),Preu per unitat (UOM d’estoc),
Group by Supplier,Grup per proveïdor,
Group by Item,Agrupa per ítem,
Remember to set {field_label}. It is required by {regulation}.,Recordeu establir {field_label}. És obligatori per {reglament}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},La data d&#39;inscripció no pot ser anterior a la data d&#39;inici de l&#39;any acadèmic {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},La data d&#39;inscripció no pot ser posterior a la data de finalització del període acadèmic {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},La data d&#39;inscripció no pot ser anterior a la data d&#39;inici del període acadèmic {0},
Future Posting Not Allowed,No es permeten publicacions futures,
"To enable Capital Work in Progress Accounting, ","Per activar la comptabilitat de treballs en capital,",
you must select Capital Work in Progress Account in accounts table,heu de seleccionar el compte de capital en curs a la taula de comptes,
You can also set default CWIP account in Company {},També podeu definir un compte CWIP predeterminat a Company {},
The Request for Quotation can be accessed by clicking on the following button,Es pot accedir a la sol·licitud de pressupost fent clic al botó següent,
Regards,Salutacions,
Please click on the following button to set your new password,Feu clic al botó següent per configurar la vostra nova contrasenya,
Update Password,Actualitza la contrasenya,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Fila núm. {}: El percentatge de vendes de l&#39;article {} és inferior al seu {}. La venda {} hauria de ser mínima {},
You can alternatively disable selling price validation in {} to bypass this validation.,També podeu desactivar la validació de preus de venda a {} per evitar aquesta validació.,
Invalid Selling Price,Preu de venda no vàlid,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,L’adreça ha d’estar vinculada a una empresa. Afegiu una fila per a Empresa a la taula Enllaços.,
Company Not Linked,Empresa no vinculada,
Import Chart of Accounts from CSV / Excel files,Importeu un pla de comptes de fitxers CSV / Excel,
Completed Qty cannot be greater than 'Qty to Manufacture',La quantitat completada no pot ser superior a &quot;Quantitat per fabricar&quot;,
"Row {0}: For Supplier {1}, Email Address is Required to send an email","Fila {0}: per al proveïdor {1}, cal enviar una adreça electrònica per enviar un correu electrònic",
"If enabled, the system will post accounting entries for inventory automatically","Si està activat, el sistema publicarà automàticament les entrades comptables per a l&#39;inventari",
Accounts Frozen Till Date,Comptes Frozen fins a la data,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Les entrades comptables estan congelades fins aquesta data. Ningú pot crear o modificar entrades excepte usuaris amb el rol especificat a continuació,
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Funció permesa per establir comptes congelats i editar entrades congelades,
Address used to determine Tax Category in transactions,Adreça utilitzada per determinar la categoria fiscal en les transaccions,
"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 ","El percentatge que se us permet facturar més per l&#39;import ordenat. Per exemple, si el valor de la comanda és de 100 USD per a un article i la tolerància s&#39;estableix en un 10%, podeu facturar fins a 110 USD.",
This role is allowed to submit transactions that exceed credit limits,Aquesta funció permet enviar transaccions que superin els límits de crèdit,
"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","Si se selecciona &quot;Mesos&quot;, es reservarà una quantitat fixa com a ingrés o despesa diferida per a cada mes, independentment del nombre de dies d&#39;un mes. Es prorratejarà si no es registren ingressos o despeses diferits durant tot un mes",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Si no es marca aquesta opció, es crearan entrades GL directes per registrar els ingressos o despeses diferits",
Show Inclusive Tax in Print,Mostrar impostos inclosos a la impressió,
Only select this if you have set up the Cash Flow Mapper documents,Seleccioneu aquesta opció només si heu configurat els documents del Mapeador de fluxos d&#39;efectiu,
Payment Channel,Canal de pagament,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Es requereix una comanda de compra per a la creació de factures i rebuts de compra?,
Is Purchase Receipt Required for Purchase Invoice Creation?,Es requereix un rebut de compra per a la creació de factures de compra?,
Maintain Same Rate Throughout the Purchase Cycle,Mantingueu la mateixa tarifa durant tot el cicle de compra,
Allow Item To Be Added Multiple Times in a Transaction,Permet afegir l&#39;article diverses vegades en una transacció,
Suppliers,Proveïdors,
Send Emails to Suppliers,Enviar correus electrònics als proveïdors,
Select a Supplier,Seleccioneu un proveïdor,
Cannot mark attendance for future dates.,No es pot marcar l&#39;assistència per a properes dates.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},Voleu actualitzar l&#39;assistència?<br> Present: {0}<br> Absent: {1},
Mpesa Settings,Configuració de Mpesa,
Initiator Name,Nom de l&#39;iniciador,
Till Number,Fins al número,
Sandbox,Sandbox,
 Online PassKey,PassKey en línia,
Security Credential,Credencial de seguretat,
Get Account Balance,Obteniu el saldo del compte,
Please set the initiator name and the security credential,Definiu el nom de l&#39;iniciador i la credencial de seguretat,
Inpatient Medication Entry,Entrada de medicaments hospitalaris,
HLC-IME-.YYYY.-,HLC-IME-.AAAA.-,
Item Code (Drug),Codi de l&#39;article (droga),
Medication Orders,Comandes de medicaments,
Get Pending Medication Orders,Obteniu comandes de medicaments pendents,
Inpatient Medication Orders,Comandes de medicaments hospitalaris,
Medication Warehouse,Magatzem de medicaments,
Warehouse from where medication stock should be consumed,Magatzem des d&#39;on s&#39;ha de consumir material de medicació,
Fetching Pending Medication Orders,Recuperació de comandes de medicaments pendents,
Inpatient Medication Entry Detail,Detall d’entrada de medicaments hospitalaris,
Medication Details,Detalls de la medicació,
Drug Code,Codi de drogues,
Drug Name,Nom del medicament,
Against Inpatient Medication Order,Ordre contra la medicació hospitalària,
Against Inpatient Medication Order Entry,Contra l’entrada d’ordre de medicaments hospitalaris,
Inpatient Medication Order,Ordre de medicació hospitalària,
HLC-IMO-.YYYY.-,HLC-IMO-.YYYY.-,
Total Orders,Total de comandes,
Completed Orders,Comandes completades,
Add Medication Orders,Afegiu comandes de medicaments,
Adding Order Entries,Afegint entrades de comanda,
{0} medication orders completed,S&#39;han completat {0} comandes de medicaments,
{0} medication order completed,S&#39;ha completat la {0} comanda de medicament,
Inpatient Medication Order Entry,Entrada d’ordres de medicaments hospitalaris,
Is Order Completed,S&#39;ha completat la comanda,
Employee Records to Be Created By,Registres d&#39;empleats a crear,
Employee records are created using the selected field,Els registres dels empleats es creen mitjançant el camp seleccionat,
Don't send employee birthday reminders,No envieu recordatoris d’aniversari dels empleats,
Restrict Backdated Leave Applications,Restringeix les sol·licituds d&#39;abandonament actualitzades,
Sequence ID,Identificador de seqüència,
Sequence Id,Id. De seqüència,
Allow multiple material consumptions against a Work Order,Permetre diversos consums de material contra una comanda de treball,
Plan time logs outside Workstation working hours,Planifiqueu els registres horaris fora de l’horari laboral de l’estació de treball,
Plan operations X days in advance,Planifiqueu les operacions X dies abans,
Time Between Operations (Mins),Temps entre operacions (minuts),
Default: 10 mins,Per defecte: 10 minuts,
Overproduction for Sales and Work Order,Superproducció per a vendes i ordres de treball,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Actualitzeu el cost de la llista de material automàticament mitjançant el planificador, en funció de la darrera taxa de valoració / tarifa de llista de preus / taxa de darrera compra de matèries primeres",
Purchase Order already created for all Sales Order items,La comanda de compra ja s&#39;ha creat per a tots els articles de la comanda de venda,
Select Items,Seleccioneu elements,
Against Default Supplier,Contra el proveïdor predeterminat,
Auto close Opportunity after the no. of days mentioned above,Tancament automàtic Oportunitat després del núm. de dies esmentats anteriorment,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Cal fer una comanda de venda per a la creació de factures i lliuraments de lliurament?,
Is Delivery Note Required for Sales Invoice Creation?,Cal fer un lliurament per a la creació de factures de vendes?,
How often should Project and Company be updated based on Sales Transactions?,Amb quina freqüència s&#39;han d&#39;actualitzar Project i Companyia en funció de les transaccions de vendes?,
Allow User to Edit Price List Rate in Transactions,Permetre a l&#39;usuari editar la tarifa de llista de preus en transaccions,
Allow Item to Be Added Multiple Times in a Transaction,Permet afegir l&#39;article diverses vegades en una transacció,
Allow Multiple Sales Orders Against a Customer's Purchase Order,Permetre diverses comandes de venda contra una comanda de compra d&#39;un client,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Valideu el preu de venda de l’article contra la taxa de compra o la taxa de valoració,
Hide Customer's Tax ID from Sales Transactions,Amaga l&#39;identificador fiscal del client de les transaccions de vendes,
"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.","El percentatge que se us permet rebre o lliurar més en relació amb la quantitat demanada. Per exemple, si heu demanat 100 unitats i el vostre subsidi és del 10%, podreu rebre 110 unitats.",
Action If Quality Inspection Is Not Submitted,Acció si no s&#39;envia la inspecció de qualitat,
Auto Insert Price List Rate If Missing,Insereix una tarifa de llista de preus si falta,
Automatically Set Serial Nos Based on FIFO,Estableix automàticament els números de sèrie basats en FIFO,
Set Qty in Transactions Based on Serial No Input,Definiu la quantitat a les transaccions basades en cap entrada de sèrie,
Raise Material Request When Stock Reaches Re-order Level,Augmenteu la sol·licitud de material quan l&#39;estoc assoleixi el nivell de reordenació,
Notify by Email on Creation of Automatic Material Request,Notifiqueu per correu electrònic la creació de sol·licitud automàtica de material,
Allow Material Transfer from Delivery Note to Sales Invoice,Permet la transferència de material des de l’albarà a la factura de venda,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Permet la transferència de material des del rebut de compra a la factura de compra,
Freeze Stocks Older Than (Days),Congelar les existències de més de (dies),
Role Allowed to Edit Frozen Stock,Rol permès per editar material congelat,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,L&#39;import no assignat de l&#39;entrada de pagament {0} és superior a l&#39;import no assignat de la transacció bancària,
Payment Received,Pagament rebut,
Attendance cannot be marked outside of Academic Year {0},No es pot marcar l&#39;assistència fora del curs acadèmic {0},
Student is already enrolled via Course Enrollment {0},L&#39;estudiant ja està inscrit a través de la matrícula del curs {0},
Attendance cannot be marked for future dates.,No es pot marcar l&#39;assistència per a dates futures.,
Please add programs to enable admission application.,Afegiu programes per habilitar la sol·licitud d&#39;admissió.,
The following employees are currently still reporting to {0}:,"Actualment, els empleats següents segueixen informant a {0}:",
Please make sure the employees above report to another Active employee.,Assegureu-vos que els empleats anteriors informin a un altre empleat actiu.,
Cannot Relieve Employee,No es pot alleujar els empleats,
Please enter {0},Introduïu {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Seleccioneu una altra forma de pagament. Mpesa no admet transaccions en moneda &quot;{0}&quot;,
Transaction Error,Error de transacció,
Mpesa Express Transaction Error,Error de transacció Mpesa Express,
"Issue detected with Mpesa configuration, check the error logs for more details",Problema detectat amb la configuració de Mpesa. Consulteu els registres d&#39;errors per obtenir més informació,
Mpesa Express Error,Error Mpesa Express,
Account Balance Processing Error,Error de processament del saldo del compte,
Please check your configuration and try again,Comproveu la configuració i torneu-ho a provar,
Mpesa Account Balance Processing Error,Error de processament del saldo del compte Mpesa,
Balance Details,Detalls del saldo,
Current Balance,Balanç actual,
Available Balance,Saldo disponible,
Reserved Balance,Saldo reservat,
Uncleared Balance,Saldo no esborrat,
Payment related to {0} is not completed,El pagament relacionat amb {0} no s&#39;ha completat,
Row #{}: Item Code: {} is not available under warehouse {}.,Fila núm. {}: Codi d&#39;article: {} no està disponible al magatzem {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Fila núm. {}: Quantitat d&#39;estoc insuficient per al codi de l&#39;article: {} sota magatzem {}. Quantitat disponible {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Fila núm. {}: Seleccioneu un número de sèrie i feu un lot contra l&#39;element: {} o traieu-lo per completar la transacció.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Fila núm. {}: No s&#39;ha seleccionat cap número de sèrie per a l&#39;element: {}. Seleccioneu-ne un o suprimiu-lo per completar la transacció.,
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Fila núm. {}: No s&#39;ha seleccionat cap lot per a l&#39;element: {}. Seleccioneu un lot o traieu-lo per completar la transacció.,
Payment amount cannot be less than or equal to 0,L’import del pagament no pot ser inferior ni igual a 0,
Please enter the phone number first,Introduïu primer el número de telèfon,
Row #{}: {} {} does not exist.,Fila núm. {}: {} {} No existeix.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Fila núm. {0}: {1} és necessària per crear les factures d&#39;obertura {2},
You had {} errors while creating opening invoices. Check {} for more details,Teníeu {} errors en crear les factures d&#39;obertura. Consulteu {} per obtenir més informació,
Error Occured,S&#39;ha produït un error,
Opening Invoice Creation In Progress,Obertura de la creació de factures en curs,
Creating {} out of {} {},S&#39;està creant {} de {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,"(El número de sèrie: {0}) no es pot consumir, ja que es reserva per completar la comanda de vendes {1}.",
Item {0} {1},Element {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,La darrera transacció de valors de l&#39;article {0} al magatzem {1} va ser el {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Les transaccions en estoc de l&#39;article {0} al magatzem {1} no es poden publicar abans d&#39;aquest moment.,
Posting future stock transactions are not allowed due to Immutable Ledger,No es permet la publicació de futures transaccions d’accions a causa del llibre immutable,
A BOM with name {0} already exists for item {1}.,Ja existeix una llista de materials amb el nom {0} per a l&#39;element {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Heu canviat el nom de l&#39;element? Poseu-vos en contacte amb l’administrador / assistència tècnica,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},A la fila núm. {0}: l&#39;identificador de seqüència {1} no pot ser inferior a l&#39;identificador de seqüència de fila anterior {2},
The {0} ({1}) must be equal to {2} ({3}),El valor {0} ({1}) ha de ser igual a {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, completeu l&#39;operació {1} abans de l&#39;operació {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,"No es pot garantir el lliurament pel número de sèrie, ja que s&#39;afegeix l&#39;article {0} amb i sense Garantir el lliurament pel número de sèrie.",
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,L&#39;element {0} no té cap número de sèrie. Només es poden lliurar els articles serialitzats segons el número de sèrie,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,No s&#39;ha trobat cap llista de materials activa per a l&#39;element {0}. No es pot garantir el lliurament per número de sèrie,
No pending medication orders found for selected criteria,No s&#39;han trobat comandes de medicaments pendents per als criteris seleccionats,
From Date cannot be after the current date.,Data de sortida no pot ser posterior a la data actual.,
To Date cannot be after the current date.,Fins a la data no pot ser posterior a la data actual.,
From Time cannot be after the current time.,From Time no pot ser posterior a l&#39;hora actual.,
To Time cannot be after the current time.,To Time no pot ser posterior a l&#39;hora actual.,
Stock Entry {0} created and ,S&#39;ha creat l&#39;entrada de valors {0} i,
Inpatient Medication Orders updated successfully,Les comandes de medicaments interns s’han actualitzat correctament,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Fila {0}: no es pot crear una entrada de medicament hospitalari contra una comanda de medicament hospitalari cancel·lada {1},
Row {0}: This Medication Order is already marked as completed,Fila {0}: aquesta comanda de medicaments ja està marcada com a completada,
Quantity not available for {0} in warehouse {1},Quantitat no disponible per a {0} al magatzem {1},
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Habiliteu Permet l&#39;acció negativa a la configuració d&#39;estoc o creeu l&#39;entrada d&#39;estoc per continuar.,
No Inpatient Record found against patient {0},No s&#39;ha trobat cap registre d&#39;hospitalització del pacient {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Ja existeix una ordre de medicació hospitalària {0} contra la trobada de pacients {1}.,
Allow In Returns,Permetre devolucions,
Hide Unavailable Items,Amaga els elements no disponibles,
Apply Discount on Discounted Rate,Apliqueu un descompte en la tarifa amb descompte,
Therapy Plan Template,Plantilla de pla de teràpia,
Fetching Template Details,S&#39;estan obtenint els detalls de la plantilla,
Linked Item Details,Detalls de l’enllaç enllaçat,
Therapy Types,Tipus de teràpia,
Therapy Plan Template Detail,Detall de plantilla de pla de teràpia,
Non Conformance,No conformitat,
Process Owner,Propietari del procés,
Corrective Action,Acció correctiva,
Preventive Action,Acció preventiva,
Problem,Problema,
Responsible,Responsable,
Completion By,Finalització per,
Process Owner Full Name,Nom complet del propietari del procés,
Right Index,Índex correcte,
Left Index,Índex esquerre,
Sub Procedure,Subprocediment,
Passed,Aprovat,
Print Receipt,Imprimir el resguard,
Edit Receipt,Edita el rebut,
Focus on search input,Centreu-vos en l’entrada de cerca,
Focus on Item Group filter,Centreu-vos en el filtre del grup d’elements,
Checkout Order / Submit Order / New Order,Comanda de compra / Enviar comanda / Comanda nova,
Add Order Discount,Afegiu un descompte de comanda,
Item Code: {0} is not available under warehouse {1}.,Codi de l&#39;article: {0} no està disponible al magatzem {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Els números de sèrie no estan disponibles per a l&#39;article {0} al magatzem {1}. Proveu de canviar de magatzem.,
Fetched only {0} available serial numbers.,S&#39;han obtingut només {0} números de sèrie disponibles.,
Switch Between Payment Modes,Canvia entre els modes de pagament,
Enter {0} amount.,Introduïu l&#39;import de {0}.,
You don't have enough points to redeem.,No teniu prou punts per bescanviar.,
You can redeem upto {0}.,Podeu bescanviar fins a {0}.,
Enter amount to be redeemed.,Introduïu l&#39;import a canviar.,
You cannot redeem more than {0}.,No podeu bescanviar més de {0}.,
Open Form View,Obre la vista de formulari,
POS invoice {0} created succesfully,La factura TPV {0} s&#39;ha creat correctament,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Quantitat d’estoc insuficient per al codi de l’article: {0} al magatzem {1}. Quantitat disponible {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,No de sèrie: {0} ja s&#39;ha transaccionat a una altra factura TPV.,
Balance Serial No,Núm. De sèrie de saldo,
Warehouse: {0} does not belong to {1},Magatzem: {0} no pertany a {1},
Please select batches for batched item {0},Seleccioneu lots per a l&#39;element per lots {0},
Please select quantity on row {0},Seleccioneu la quantitat a la fila {0},
Please enter serial numbers for serialized item {0},Introduïu els números de sèrie de l&#39;element serialitzat {0},
Batch {0} already selected.,El lot {0} ja està seleccionat.,
Please select a warehouse to get available quantities,Seleccioneu un magatzem per obtenir les quantitats disponibles,
"For transfer from source, selected quantity cannot be greater than available quantity","Per a la transferència des de la font, la quantitat seleccionada no pot ser superior a la quantitat disponible",
Cannot find Item with this Barcode,No es pot trobar un element amb aquest codi de barres,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} és obligatori. Potser el registre de canvi de moneda no es crea de {1} a {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} ha enviat recursos que hi estan vinculats. Heu de cancel·lar els actius per crear la devolució de la compra.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,"No es pot cancel·lar aquest document, ja que està enllaçat amb el recurs enviat {0}. Cancel·leu-lo per continuar.",
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Fila núm. {}: El número de sèrie {} ja s&#39;ha transaccionat a una altra factura TPV. Seleccioneu el número de sèrie vàlid.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Fila núm. {}: Els números de sèrie {} ja s&#39;han transaccionat a una altra factura TPV. Seleccioneu el número de sèrie vàlid.,
Item Unavailable,Article no disponible,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},"Fila núm. {}: No es pot retornar el número de sèrie {}, ja que no es va transmetre a la factura original {}",
Please set default Cash or Bank account in Mode of Payment {},Establiu el compte bancari o efectiu per defecte al mode de pagament {},
Please set default Cash or Bank account in Mode of Payments {},Establiu el compte bancari o efectiu per defecte al mode de pagaments {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Assegureu-vos que el compte {} és un compte de balanç. Podeu canviar el compte principal per un compte de balanç o seleccionar un altre compte.,
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Assegureu-vos que el compte {} és un compte de pagament. Canvieu el tipus de compte a Pagable o seleccioneu un altre compte.,
Row {}: Expense Head changed to {} ,Fila {}: el cap de despesa ha canviat a {},
because account {} is not linked to warehouse {} ,perquè el compte {} no està enllaçat amb el magatzem {},
or it is not the default inventory account,o no és el compte d&#39;inventari predeterminat,
Expense Head Changed,Cap de despesa canviat,
because expense is booked against this account in Purchase Receipt {},perquè la despesa es reserva en aquest compte al rebut de compra {},
as no Purchase Receipt is created against Item {}. ,ja que no es crea cap rebut de compra contra l&#39;article {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Això es fa per gestionar la comptabilitat dels casos en què es crea el rebut de compra després de la factura de compra,
Purchase Order Required for item {},Cal fer una comanda de compra per a l&#39;article {},
To submit the invoice without purchase order please set {} ,"Per enviar la factura sense comanda de compra, configureu {}",
as {} in {},com a {},
Mandatory Purchase Order,Ordre de compra obligatòria,
Purchase Receipt Required for item {},Cal comprovar el comprovant de l&#39;article {},
To submit the invoice without purchase receipt please set {} ,"Per enviar la factura sense comprovant de compra, configureu {}",
Mandatory Purchase Receipt,Rebut de compra obligatori,
POS Profile {} does not belongs to company {},El perfil de TPV {} no pertany a l&#39;empresa {},
User {} is disabled. Please select valid user/cashier,L&#39;usuari {} està desactivat. Seleccioneu un usuari / caixer vàlid,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Fila núm. {}: La factura original {} de la factura de devolució {} és {}.,
Original invoice should be consolidated before or along with the return invoice.,La factura original s’ha de consolidar abans o junt amb la factura de devolució.,
You can add original invoice {} manually to proceed.,Podeu afegir la factura original {} manualment per continuar.,
Please ensure {} account is a Balance Sheet account. ,Assegureu-vos que el compte {} és un compte de balanç.,
You can change the parent account to a Balance Sheet account or select a different account.,Podeu canviar el compte principal per un compte de balanç o seleccionar un altre compte.,
Please ensure {} account is a Receivable account. ,Assegureu-vos que el compte {} és un compte per cobrar.,
Change the account type to Receivable or select a different account.,Canvieu el tipus de compte a Cobrar o seleccioneu un altre compte.,
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} no es pot cancel·lar ja que s&#39;han bescanviat els Punts de fidelitat guanyats. Primer cancel·leu el {} No {},
already exists,ja existeix,
POS Closing Entry {} against {} between selected period,Entrada de tancament de TPV {} contra {} entre el període seleccionat,
POS Invoice is {},La factura TPV és {},
POS Profile doesn't matches {},El perfil de TPV no coincideix amb {},
POS Invoice is not {},La factura TPV no és {},
POS Invoice isn't created by user {},L&#39;usuari {} no crea la factura TPV,
Row #{}: {},Fila núm. {}: {},
Invalid POS Invoices,Factures de TPV no vàlides,
Please add the account to root level Company - {},Afegiu el compte a l&#39;empresa de nivell root - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","En crear un compte per a Child Company {0}, no s&#39;ha trobat el compte principal {1}. Creeu el compte principal al COA corresponent",
Account Not Found,Compte no trobat,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.","En crear un compte per a Child Company {0}, el compte principal {1} es va trobar com a compte de llibres majors.",
Please convert the parent account in corresponding child company to a group account.,Convertiu el compte principal de l&#39;empresa secundària corresponent en un compte de grup.,
Invalid Parent Account,Compte principal no vàlid,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.",Només es permet canviar el nom a través de l&#39;empresa matriu {0} per evitar desajustos.,
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Si {0} {1} quantitats de l&#39;article {2}, l&#39;aplicació {3} s&#39;aplicarà a l&#39;article.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Si {0} {1} valeu l&#39;article {2}, l&#39;aplicació {3} s&#39;aplicarà a l&#39;element.",
"As the field {0} is enabled, the field {1} is mandatory.","Com que el camp {0} està habilitat, el camp {1} és obligatori.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Com que el camp {0} està habilitat, el valor del camp {1} ha de ser superior a 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},"No es pot lliurar el número de sèrie {0} de l&#39;article {1}, ja que està reservat per omplir la comanda de venda {2}",
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.",La comanda de vendes {0} té reserva per a l&#39;article {1}; només podeu enviar reservades {1} contra {0}.,
{0} Serial No {1} cannot be delivered,{0} No de sèrie {1} no es pot lliurar,
Row {0}: Subcontracted Item is mandatory for the raw material {1},Fila {0}: l&#39;element subcontractat és obligatori per a la matèria primera {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Com que hi ha prou matèries primeres, la sol·licitud de material no és necessària per a Magatzem {0}.",
" If you still want to proceed, please enable {0}.","Si encara voleu continuar, activeu {0}.",
The item referenced by {0} - {1} is already invoiced,L&#39;element a què fa referència {0} - {1} ja està facturat,
Therapy Session overlaps with {0},La sessió de teràpia es coincideix amb {0},
Therapy Sessions Overlapping,Sessions de teràpia superposades,
Therapy Plans,Plans de teràpia,
"Item Code, warehouse, quantity are required on row {0}","El codi de l&#39;article, el magatzem, la quantitat són obligatoris a la fila {0}",
Get Items from Material Requests against this Supplier,Obteniu articles de sol·licituds de material contra aquest proveïdor,
Enable European Access,Activa l&#39;accés europeu,
Creating Purchase Order ...,S&#39;està creant una comanda de compra ...,
"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.","Seleccioneu un proveïdor dels proveïdors predeterminats dels articles següents. En seleccionar-lo, es farà una Comanda de compra únicament contra articles pertanyents al Proveïdor seleccionat.",
Row #{}: You must select {} serial numbers for item {}.,Fila núm. {}: Heu de seleccionar {} números de sèrie de l&#39;element {}.,
