"""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 enought Loyalty Points to redeem,No teniu punts de fidelització previstos per bescanviar,
You have already assessed for the assessment criteria {}.,Vostè ja ha avaluat pels criteris d&#39;avaluació {}.,
You have already selected items from {0} {1},Ja ha seleccionat articles de {0} {1},
You have been invited to collaborate on the project: {0},Se li ha convidat a col·laborar en el projecte: {0},
You have entered duplicate items. Please rectify and try again.,"Has introduït articles duplicats. Si us plau, rectifica-ho i torna a intentar-ho.",
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Heu de ser un usuari diferent de l&#39;administrador amb les funcions Administrador del sistema i l&#39;Administrador d&#39;elements per registrar-se a Marketplace.,
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Heu de ser un usuari amb les funcions del Gestor del sistema i del Gestor d&#39;elements per afegir usuaris al Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Heu de ser un usuari amb les funcions d&#39;Administrador del sistema i d&#39;Administrador d&#39;elements per registrar-se a Marketplace.,
You need to be logged in to access this page,Ha d&#39;estar registrat per accedir a aquesta pàgina,
You need to enable Shopping Cart,Has d'habilitar el carro de la compra,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Perdin registres de factures generades prèviament. Esteu segur que voleu reiniciar aquesta subscripció?,
Your Organization,la seva Organització,
Your cart is Empty,El teu carro està buit,
Your email address...,La teva adreça de correu electrònic...,
Your order is out for delivery!,La teva comanda no està disponible.,
Your tickets,Les teves entrades,
ZIP Code,Codi ZIP,
[Error],[Error],
[{0}](#Form/Item/{0}) is out of stock,[{0}] (#Form/Item/{0}) està esgotat,
`Freeze Stocks Older Than` should be smaller than %d days.,`Bloqueja els estocs més antics que' ha de ser menor de %d dies.,
based_on,basat en,
cannot be greater than 100,no pot ser major que 100,
disabled user,desactivat usuari,
"e.g. ""Build tools for builders""","per exemple ""Construir eines per als constructors """,
"e.g. ""Primary School"" or ""University""","per exemple, &quot;escola primària&quot; o &quot;universitat&quot;",
"e.g. Bank, Cash, Credit Card","per exemple bancària, Efectiu, Targeta de crèdit",
hidden,Ocult,
modified,modificat,
old_parent,old_parent,
on,En,
{0} '{1}' is disabled,{0} '{1}' es desactiva,
{0} '{1}' not in Fiscal Year {2},{0} '{1}' no es troba en l'exercici fiscal {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) no pot ser major que la quantitat planificada  ({2}) a l'Ordre de Treball {3},
{0} - {1} is inactive student,{0} - {1} és estudiant inactiu,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} no està inscrit en el Lot {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} no està inscrit en el curs {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} El Pressupost per al Compte {1} contra {2} {3} és {4}. Es superarà per {5},
{0} Digest,{0} Digest,
{0} Request for {1},{0} Sol·licitud de {1},
{0} Result submittted,{0} Resultat enviat,
{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} Números de sèrie necessaris per Punt {1}. Vostè ha proporcionat {2}.,
{0} Student Groups created.,{0} Grups d&#39;estudiants creats.,
{0} Students have been enrolled,{0} Els estudiants han estat inscrits,
{0} against Bill {1} dated {2},{0} contra Factura amb data {1} {2},
{0} against Purchase Order {1},{0} contra l'Ordre de Compra {1},
{0} against Sales Invoice {1},{0} contra factura Vendes {1},
{0} against Sales Order {1},{0} en contra d'ordres de venda {1},
{0} 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 {}.,
