"""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",
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,
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,
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.,
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/Remove Recipients,Afegir / Treure Destinataris,
Added,Afegit,
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 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,
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},
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,
Application of Funds (Assets),Aplicació de fons (actius),
Applied,Aplicat,
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,
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),
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 To,Assignar a,
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 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 has been marked successfully.,L&#39;assistència ha estat marcada amb èxit.,
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 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 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,
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,
Black,Negre,
Blanket Orders from Costumers.,Comandes de manta de clients.,
Block Invoice,Factura de bloc,
Boms,Boms,
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,
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 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,
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,
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 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 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 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 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 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 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 Assets,Actiu Corrent,
Current BOM and New BOM can not be same,El BOM actual i el nou no poden ser el mateix,
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,
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 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 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,
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 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,
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 Advances,Avantatges dels empleats,
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 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 {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} of grade {1} have no default leave policy,L&#39;empleat {0} del grau {1} no té una política d&#39;abandonament predeterminat,
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,
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,
"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,
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 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,
"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,
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, 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 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 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 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},
Fulfillment,Realització,
Full,Complet,
Full Name,Nom 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',
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 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 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,
HR Manager,Gerent de Recursos Humans,
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Yearly,Semestrals,
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,
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,
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,
Interests,interessos,
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 card {0} created,S&#39;ha creat la targeta de treball {0},
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 Management,Deixa Gestió,
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},
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",
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,
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 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 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 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 discount for Item {0} is {1}%,El descompte màxim per a l&#39;element {0} és {1}%,
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,
Model,Model,
Moderate Sensitivity,Sensibilitat moderada,
Monday,Dilluns,
Monthly,Mensual,
Monthly Distribution,Distribució mensual,
More,Més,
More Information,Més informació,
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 Profit,Benefici net,
Net Total,Total net,
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 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 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 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 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 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.,
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 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. 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,
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,
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,
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 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 request {0} created,S&#39;ha creat la {0} sol·licitud de pagament,
Payments,Pagaments,
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,
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 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 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 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 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 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 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 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 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 {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 Customer Address,Definiu l&#39;adreça del client,
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 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 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,
Prev,Anterior,
Preview,Preestrena,
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,
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,
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,
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,
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,
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.,
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ó,
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}# 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}: 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 submitted for period from {0} to {1},Slip de pagament enviat per al període de {0} a {1},
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,
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,
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,
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 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 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 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 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 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,
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}",
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,
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 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 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,
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 this Work Order for further processing.,Envieu aquesta Ordre de treball per a un posterior processament.,
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,
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 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 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 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 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 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 {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 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 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 Invoiced Amount,Suma total facturada,
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 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 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 hours: {0},Total hores: {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.,
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 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 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 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",
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,
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: 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 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-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 set Frozen value,No estàs autoritzat per establir el valor bloquejat,
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'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 enough 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} 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 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} 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}: 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,
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,
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,
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",
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»,
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.,
Show {0},Mostra {0},
"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caràcters especials, excepte &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; I &quot;}}&quot; no estan permesos en nomenar sèries {0}",
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,
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,
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,
<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 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 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.,
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,
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,
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.,
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 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 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,
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ó,
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ó,
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,
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,
Leaves Taken,Fulles agafades,
Less Than Amount,Menys que Quantitat,
Liabilities,Passiu,
Loading...,Carregant ...,
Loan Applications from customers and employees.,Sol·licituds de préstecs de clients i empleats.,
Loan Processes,Processos de préstec,
Loan Type for interest and penalty rates,Tipus de préstec per als tipus d’interès i penalitzacions,
Loans,Préstecs,
Loans provided to customers and employees.,Préstecs proporcionats a clients i empleats.,
Location,Ubicació,
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 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",
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,
Patient History,Historial del pacient,
Pause,Pausa,
Pay,Pagar,
Payment Document Type,Tipus de document de pagament,
Payment Name,Nom de pagament,
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 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 Customer first,Seleccioneu primer el client,
Please select Item Code first,Seleccioneu primer el Codi de l’element,
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
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,
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,
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,
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},
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}).,
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 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,
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.",
Total,Total,
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,
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 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,
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,
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 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,
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,
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,
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 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,
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}.",
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,
Leaves Expired,Les fulles han caducat,
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,
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.",
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,
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,
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ó,
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 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,
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,
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,
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,
HR,HR,
Date on which this component is applied,Data en què s&#39;aplica aquest component,
Salary Slip,Slip Salari,
HR User,HR User,
Job Applicant,Job Applicant,
Body,Cos,
Appraisal Template,Plantilla d'Avaluació,
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,
Required Skills,Habilitats obligatòries,
Skills,Habilitats,
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,
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 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,
Returned Amount,Import retornat,
Advance Account,Compte avançat,
Benefits Applied,Beneficis aplicats,
Benefit Type and Amount,Tipus de benefici i import,
Task Weight,Pes de tasques,
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,
Employee Group Table,Taula de grup d&#39;empleats,
ERPNext User ID,ID d&#39;usuari ERPNext,
Employee Internal Work History,Historial de treball intern de l'empleat,
Activities,Activitats,
Employee Onboarding Activity,Activitat d&#39;embarcament d&#39;empleats,
Employee Promotion Detail,Detall de la promoció dels empleats,
Employee Transfer Property,Propietat de transferència d&#39;empleats,
Unclaimed amount,Quantitat no reclamada,
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,
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,
Leave Settings,Deixeu els paràmetres,
Accepted,Acceptat,
Printing Details,Impressió Detalls,
Job Title,Títol Professional,
Allocation,Assignació,
Select Employees,Seleccioneu Empleats,
Allocate,Assignar,
Max Leaves Allowed,Permet les fulles màx,
Maximum Continuous Days Applicable,Dies continus màxims aplicables,
Select Payroll Period,Seleccioneu el període de nòmina,
Abbr,Abbr,
Condition and Formula,Condició i fórmula,
Total Working Hours,Temps de treball total,
Hour Rate,Hour Rate,
Bank Account No.,Compte Bancari No.,
Earning & Deduction,Guanyar i Deducció,
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,
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.,
Staffing Plan Details,Detalls del pla de personal,
Optional,Opcional,
Costing,Costejament,
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,
last Odometer Value ,darrer valor Odòmetre,
Service Detail,Detall del servei,
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,
Repay From Salary,Pagar del seu sou,
Regular Payment,Pagament regular,
Loan Closure,Tancament del préstec,
Rate of Interest (%) Yearly,Taxa d&#39;interès (%) anual,
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 (via Timesheet),Hora real (en hores),
Costing and Billing,Càlcul de costos i facturació,
Total Costing Amount (via Timesheet),Import total de costos (a través de fulls de temps),
Total Expense Claim (via Expense Claim),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 Timesheet),Import total facturat (mitjançant fulls de temps),
Total Billed Amount (via Sales Invoice),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 Timesheet),Data d&#39;inici real (a través de fulla d&#39;hores),
Actual Time in Hours (via Timesheet),Temps real (en hores),
Actual End Date (via Timesheet),Data de finalització real (a través de fulla d&#39;hores),
Total Expense Claim (via Expense Claim),Reclamació de despeses totals (a través de despeses),
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,
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,
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,
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,
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 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,
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,
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,
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,
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,
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},
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.-,
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,
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,
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,
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,
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,
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ó,
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,
Requested Items to Order and Receive,Articles sol·licitats per demanar i rebre,
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,
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},
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 set {0} for the Employee or for Department: {1},Definiu {0} per a l&#39;empleat o per al departament: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Integració dels empleats: {0} ja és per al sol·licitant de feina: {1},
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,
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,
From Date can not be greater than To Date.,Des de la data no pot ser superior a fins a la data.,
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,
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 {}.,
