"""Customer Provided Item"" cannot be Purchase Item also","El ""artículo proporcionado por el cliente"" no puede ser un artículo de compra también",
"""Customer Provided Item"" cannot have Valuation Rate","El ""artículo proporcionado por el cliente"" no puede tener una tasa de valoración",
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""Es activo fijo"" no puede estar sin marcar, ya que existe registro de activos contra el elemento",
'Based On' and 'Group By' can not be same,'Basado en' y 'Agrupar por' no pueden ser iguales,
'Days Since Last Order' must be greater than or equal to zero,'Días desde la última orden' debe ser mayor que o igual a cero,
'Entries' cannot be empty,'Entradas' no pueden estar vacías,
'From Date' is required,'Desde la fecha' es requerido,
'From Date' must be after 'To Date','Desde la fecha' debe ser después de 'Hasta Fecha',
'Has Serial No' can not be 'Yes' for non-stock item,"'Posee numero de serie' no puede ser ""Sí"" para los productos que NO son de stock",
'Opening',&#39;Apertura&#39;,
'To Case No.' cannot be less than 'From Case No.','Hasta el caso nº' no puede ser menor que 'Desde el caso nº',
'To Date' is required,'Hasta la fecha' es requerido,
'Total',&#39;Total&#39;,
'Update Stock' can not be checked because items are not delivered via {0},'Actualizar existencias' no puede marcarse porque los artículos no se han entregado mediante {0},
'Update Stock' cannot be checked for fixed asset sale,'Actualización de Inventario' no se puede comprobar en venta de activos fijos,
1 exact match.,1 coincidencia exacta,
90-Above,90 o más,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,Existe una categoría de cliente con el mismo nombre. Por favor cambie el nombre de cliente o renombre la categoría de cliente,
A Default Service Level Agreement already exists.,Ya existe un Acuerdo de nivel de servicio predeterminado.,
A Lead requires either a person's name or an organization's name,Un cliente potencial requiere el nombre de una persona o el nombre de una organización,
A customer with the same name already exists,Ya existe un cliente con el mismo nombre,
A question must have more than one options,Una pregunta debe tener más de una opción.,
A qustion must have at least one correct options,Una pregunta debe tener al menos una opción correcta,
A4,A4,
API Endpoint,API Endpoint,
API Key,Clave de API,
Abbr can not be blank or space,La abreviatura no puede estar en blanco o usar espacios,
Abbreviation already used for another company,Abreviatura ya utilizada para otra empresa,
Abbreviation cannot have more than 5 characters,Abreviatura no puede tener más de 5 caracteres,
Abbreviation is mandatory,La abreviatura es obligatoria,
About the Company,Sobre la empresa,
About your company,Sobre su Compañía,
Above,Arriba,
Academic Term,Término académico,
Academic Term: ,Término académico:,
Academic Year,Año académico,
Academic Year: ,Año académico:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Cantidad Aceptada + Rechazada debe ser igual a la cantidad Recibida por el Artículo {0},
Access Token,Token de Acceso,
Accessable Value,Valor accesible,
Account,Cuenta,
Account Number,Número de cuenta,
Account Number {0} already used in account {1},Número de cuenta {0} ya usado en la cuenta {1},
Account Pay Only,Sólo cuenta de pago,
Account Type,Tipo de cuenta,
Account Type for {0} must be {1},Tipo de cuenta para {0} debe ser {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Balance de la cuenta ya en Crédito, no le está permitido establecer 'Balance Debe Ser' como 'Débito'",
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Balance de la cuenta ya en Débito, no le está permitido establecer ""Balance Debe Ser"" como ""Crédito""",
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,El número de cuenta para la cuenta {0} no está disponible. <br> Configure su plan de cuentas correctamente.,
Account with child nodes cannot be converted to ledger,Una cuenta con nodos hijos no puede convertirse en libro mayor,
Account with child nodes cannot be set as ledger,Una cuenta con nodos hijos no puede ser establecida como libro mayor,
Account with existing transaction can not be converted to group.,Cuenta con transacción existente no se puede convertir al grupo.,
Account with existing transaction can not be deleted,Cuenta con transacción existente no se puede eliminar,
Account with existing transaction cannot be converted to ledger,Cuenta con una transacción existente no se puede convertir en el libro mayor,
Account {0} does not belong to company: {1},Cuenta {0} no pertenece a la compañía: {1},
Account {0} does not belongs to company {1},La cuenta {0} no pertenece a la compañía {1},
Account {0} does not exist,Cuenta {0} no existe,
Account {0} does not exists,La cuenta {0} no existe,
Account {0} does not match with Company {1} in Mode of Account: {2},Cuenta {0} no coincide con la Compañía {1}en Modo de Cuenta: {2},
Account {0} has been entered multiple times,Cuenta {0} se ha introducido varias veces,
Account {0} is added in the child company {1},La cuenta {0} se agrega en la empresa secundaria {1},
Account {0} is frozen,La cuenta {0} está congelada,
Account {0} is invalid. Account Currency must be {1},La cuenta {0} no es válida. La divisa de la cuenta debe ser {1},
Account {0}: Parent account {1} can not be a ledger,Cuenta {0}: la cuenta padre {1} no puede ser una cuenta de libro mayor,
Account {0}: Parent account {1} does not belong to company: {2},Cuenta {0}: la cuenta padre {1} no pertenece a la empresa: {2},
Account {0}: Parent account {1} does not exist,Cuenta {0}: la cuenta padre {1} no existe,
Account {0}: You can not assign itself as parent account,Cuenta {0}: no puede asignarse a sí misma como cuenta padre,
Account: {0} can only be updated via Stock Transactions,Cuenta: {0} sólo puede ser actualizada mediante transacciones de inventario,
Account: {0} with currency: {1} can not be selected,Cuenta: {0} con divisa: {1} no puede ser seleccionada,
Accountant,Contador,
Accounting,Contabilidad,
Accounting Entry for Asset,Entrada Contable para Activos,
Accounting Entry for Stock,Asiento contable para inventario,
Accounting Entry for {0}: {1} can only be made in currency: {2},Asiento contable para {0}: {1} sólo puede realizarse con la divisa: {2},
Accounting Ledger,Libro de contabilidad,
Accounting journal entries.,Asientos en el diario de contabilidad.,
Accounts,Cuentas,
Accounts Manager,Gerente de Cuentas,
Accounts Payable,Cuentas por pagar,
Accounts Payable Summary,Balance de cuentas por pagar,
Accounts Receivable,Cuentas por cobrar,
Accounts Receivable Summary,Balance de cuentas por cobrar,
Accounts User,Cuentas de Usuario,
Accounts table cannot be blank.,La tabla de cuentas no puede estar en blanco,
Accumulated Depreciation,Depreciación acumulada,
Accumulated Depreciation Amount,Depreciación acumulada Importe,
Accumulated Depreciation as on,La depreciación acumulada como en,
Accumulated Monthly,acumulado Mensual,
Accumulated Values,Valores acumulados,
Accumulated Values in Group Company,Valores Acumulados en el Grupo de la Empresa,
Achieved ({}),Logrado ({}),
Action,Acción,
Action Initialised,Acción inicializada,
Actions,Acciones,
Active,Activo,
Activity Cost exists for Employee {0} against Activity Type - {1},Existe un coste de actividad para el empleado {0} contra el tipo de actividad - {1},
Activity Cost per Employee,Coste de actividad por empleado,
Activity Type,Tipo de actividad,
Actual Cost,Costo real,
Actual Delivery Date,Fecha de entrega real,
Actual Qty,Cantidad Real,
Actual Qty is mandatory,La cantidad real es obligatoria,
Actual Qty {0} / Waiting Qty {1},Cantidad real {0} / Cantidad esperada {1},
Actual Qty: Quantity available in the warehouse.,Cantidad actual: Cantidad disponible en el almacén.,
Actual qty in stock,Cantidad real en stock,
Actual type tax cannot be included in Item rate in row {0},El tipo de impuesto real no puede incluirse en la tarifa del artículo en la fila {0},
Add,Agregar,
Add / Edit Prices,Añadir / editar precios,
Add Comment,Agregar comentario,
Add Customers,Agregar Clientes,
Add Employees,Añadir empleados,
Add Item,Añadir artículo,
Add Items,Añadir los artículos,
Add Leads,Añadir Prospectos,
Add Multiple Tasks,Agregar Tareas Múltiples,
Add Sales Partners,Añadir socios de ventas,
Add Serial No,Agregar No. de serie,
Add Students,Añadir estudiantes,
Add Suppliers,Añadir Proveedores,
Add Time Slots,Agregar Intervalos de Tiempo,
Add Timesheets,Añadir partes de horas,
Add Timeslots,Añadir Intervalos de Tiempo,
Add Users to Marketplace,Agregar usuarios al mercado,
Add a new address,añadir una nueva dirección,
Add cards or custom sections on homepage,Agregar tarjetas o secciones personalizadas en la página de inicio,
Add more items or open full form,Añadir más elementos o abrir formulario completo,
Add notes,Agregar notas,
Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Añadir el resto de su organización como a sus usuarios. También puede agregar o invitar a los clientes a su portal con la adición de ellos desde Contactos,
Add/Remove Recipients,Agregar / Eliminar destinatarios,
Added,Agregado,
Added {0} users,Se agregaron {0} usuarios,
Additional Salary Component Exists.,Componente salarial adicional existe.,
Address,Dirección,
Address Line 2,Dirección línea 2,
Address Name,Nombre de la dirección,
Address Title,Dirección,
Address Type,Tipo de dirección,
Administrative Expenses,GASTOS DE ADMINISTRACIÓN,
Administrative Officer,Funcionario administrativo,
Administrator,Administrador,
Admission,Admisión,
Admission and Enrollment,Admisión e Inscripción,
Admissions for {0},Admisiones para {0},
Admit,Admitir,
Admitted,Aceptado,
Advance Amount,Importe Anticipado,
Advance Payments,Pagos adelantados,
Advance account currency should be same as company currency {0},La moneda de la cuenta adelantada debe ser la misma que la moneda de la empresa {0},
Advance amount cannot be greater than {0} {1},Cantidad de avance no puede ser mayor que {0} {1},
Advertising,Publicidad,
Aerospace,Aeroespacial,
Against,Contra,
Against Account,Contra la cuenta,
Against Journal Entry {0} does not have any unmatched {1} entry,El asiento contable {0} no tiene ninguna entrada {1} que vincular,
Against Journal Entry {0} is already adjusted against some other voucher,El asiento contable {0} ya se encuentra ajustado contra el importe de otro comprobante,
Against Supplier Invoice {0} dated {1},Contra factura de proveedor {0} con fecha{1},
Against Voucher,Contra comprobante,
Against Voucher Type,Tipo de comprobante,
Age,Edad,
Age (Days),Edad (Días),
Ageing Based On,Antigüedad basada en,
Ageing Range 1,Rango de antigüedad 1,
Ageing Range 2,Rango de antigüedad 2,
Ageing Range 3,Rango de antigüedad 3,
Agriculture,Agricultura,
Agriculture (beta),Agricultura (beta),
Airline,Línea aérea,
All Accounts,Todas las cuentas,
All Addresses.,Todas las direcciones.,
All Assessment Groups,Todos los grupos de evaluación,
All BOMs,Todas las listas de materiales,
All Contacts.,Todos los contactos.,
All Customer Groups,Todas las categorías de clientes,
All Day,Todo el Día,
All Departments,Todos los departamentos,
All Healthcare Service Units,Todas las unidades de servicios de salud,
All Item Groups,Todos los grupos de artículos,
All Products,Todos los productos,
All Products or Services.,Todos los productos o servicios.,
All Student Admissions,Todas las admisiones de estudiantes,
All Supplier Groups,Todos los grupos de proveedores,
All Supplier scorecards.,Todas las Evaluaciones del Proveedor,
All Territories,Todos los territorios,
All Warehouses,Todos los almacenes,
All communications including and above this shall be moved into the new Issue,Todas las comunicaciones incluidas y superiores se incluirán en el nuevo Issue,
All items have already been transferred for this Work Order.,Todos los artículos ya han sido transferidos para esta Orden de Trabajo.,
All other ITC,Todos los demás ITC,
All the mandatory Task for employee creation hasn't been done yet.,Las tareas obligatorias para la creación de empleados aún no se han realizado.,
Allocate Payment Amount,Distribuir el Importe de Pago,
Allocated Amount,Monto asignado,
Allocating leaves...,Asignando hojas ...,
Already record exists for the item {0},Ya existe un registro para el artículo {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Ya se configuró por defecto en el perfil de pos {0} para el usuario {1}, amablemente desactivado por defecto",
Alternate Item,Artículo Alternativo,
Alternative item must not be same as item code,El artículo alternativo no debe ser el mismo que el código del artículo,
Amended From,Modificado Desde,
Amount,Importe,
Amount After Depreciation,Cantidad Después de Depreciación,
Amount of Integrated Tax,Monto del impuesto integrado,
Amount of TDS Deducted,Cantidad de TDS deducida,
Amount should not be less than zero.,La cantidad no debe ser menor que cero.,
Amount to Bill,Monto a Facturar,
Amount {0} {1} against {2} {3},Monto {0} {1} {2} contra {3},
Amount {0} {1} deducted against {2},Monto {0} {1} deducido contra {2},
Amount {0} {1} transferred from {2} to {3},Monto {0} {1} transferido desde {2} a {3},
Amount {0} {1} {2} {3},Monto {0} {1} {2} {3},
Amt,Monto,
"An Item Group exists with same name, please change the item name or rename the item group","Existe un grupo de elementos con el mismo nombre , por favor, cambie el nombre del artículo , o cambiar el nombre del grupo de artículos",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,"Un término académico con este 'Año Académico' {0} y 'Nombre de término' {1} ya existe. Por favor, modificar estas entradas y vuelva a intentarlo.",
An error occurred during the update process,Se produjo un error durante el proceso de actualización,
"An item exists with same name ({0}), please change the item group name or rename the item","Existe un elemento con el mismo nombre ({0} ) , cambie el nombre del grupo de artículos o cambiar el nombre del elemento",
Analyst,Analista,
Annual Billing: {0},Facturación anual: {0},
Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Ya existe otro registro de presupuesto &#39;{0}&#39; contra {1} &#39;{2}&#39; y cuenta &#39;{3}&#39; para el año fiscal {4},
Another Period Closing Entry {0} has been made after {1},Otra entrada de Cierre de Período {0} se ha hecho después de {1},
Another Sales Person {0} exists with the same Employee id,Existe otro vendedor {0} con el mismo ID de empleado,
Antibiotic,Antibiótico,
Apparel & Accessories,ropa y accesorios,
Applicable For,Aplicable para.,
"Applicable if the company is SpA, SApA or SRL","Aplicable si la empresa es SpA, SApA o SRL",
Applicable if the company is a limited liability company,Aplicable si la empresa es una sociedad de responsabilidad limitada.,
Applicable if the company is an Individual or a Proprietorship,Aplicable si la empresa es un individuo o un propietario,
Application of Funds (Assets),UTILIZACIÓN DE FONDOS (ACTIVOS),
Applied,Aplicado,
Appointment Confirmation,Confirmación de la cita,
Appointment Duration (mins),Duración de la cita (minutos),
Appointment Type,Tipo de cita,
Appointment {0} and Sales Invoice {1} cancelled,La Cita {0} y la Factura de Venta {1} se cancelaron,
Appointments and Encounters,Citas y Encuentros,
Appointments and Patient Encounters,Citas y Encuentros de Pacientes,
Appraisal {0} created for Employee {1} in the given date range,La evaluación {0} creado para el empleado {1} en el rango de fechas determinado,
Approving Role cannot be same as role the rule is Applicable To,El rol que aprueba no puede ser igual que el rol al que se aplica la regla,
Approving User cannot be same as user the rule is Applicable To,El usuario que aprueba no puede ser igual que el usuario para el que la regla es aplicable,
"Apps using current key won't be able to access, are you sure?","Las Aplicaciones que usen la clave actual no podrán acceder, ¿está seguro?",
Are you sure you want to cancel this appointment?,¿Seguro que quieres cancelar esta cita?,
Arrear,Arrear,
As Examiner,Como examinador,
As On Date,A la fecha,
As Supervisor,Como supervisor,
As per rules 42 & 43 of CGST Rules,Según las reglas 42 y 43 de las reglas CGST,
As per section 17(5),Según la sección 17 (5),
Assessment,Evaluación,
Assessment Criteria,Criterios de evaluación,
Assessment Group,Grupo de evaluación,
Assessment Group: ,Grupo de evaluación:,
Assessment Plan,Plan de evaluación,
Assessment Plan Name,Nombre del plan de evaluación,
Assessment Report,Informe de evaluación,
Assessment Reports,Informes de evaluación,
Assessment Result,Resultado de Evaluación,
Assessment Result record {0} already exists.,El registro de Resultados de la Evaluación {0} ya existe.,
Asset,Activo,
Asset Category,Categoría de activos,
Asset Category is mandatory for Fixed Asset item,Categoría activo es obligatorio para la partida del activo fijo,
Asset Maintenance,Mantenimiento de activos,
Asset Movement,Movimiento de Activo,
Asset Movement record {0} created,Movimiento de activo {0} creado,
Asset Name,Nombre de Activo,
Asset Received But Not Billed,Activo recibido pero no facturado,
Asset Value Adjustment,Ajuste del valor del activo,
"Asset cannot be cancelled, as it is already {0}","Activo no se puede cancelar, como ya es {0}",
Asset scrapped via Journal Entry {0},Activos desechado a través de entrada de diario {0},
"Asset {0} cannot be scrapped, as it is already {1}","Activo {0} no puede ser desechado, debido a que ya es {1}",
Asset {0} does not belong to company {1},Activo {0} no pertenece a la empresa {1},
Asset {0} must be submitted,Activo {0} debe ser enviado,
Assets,Bienes,
Assign To,Asignar a,
Associate,Asociado,
At least one mode of payment is required for POS invoice.,Se requiere al menos un modo de pago de la factura POS.,
Atleast one item should be entered with negative quantity in return document,Al menos un elemento debe introducirse con cantidad negativa en el documento de devolución,
Atleast one of the Selling or Buying must be selected,Al menos uno de la venta o compra debe seleccionar,
Atleast one warehouse is mandatory,Al menos un almacén es obligatorio,
Attach Logo,Adjuntar Logo,
Attachment,Adjunto,
Attachments,Adjuntos,
Attendance can not be marked for future dates,La asistencia no se puede marcar para fechas futuras,
Attendance date can not be less than employee's joining date,La fecha de la asistencia no puede ser inferior a la fecha de ingreso de los empleados,
Attendance for employee {0} is already marked,Asistencia para el empleado {0} ya está marcado,
Attendance has been marked successfully.,La asistencia ha sido marcada con éxito.,
Attendance not submitted for {0} as {1} on leave.,Asistencia no enviada para {0} como {1} con permiso.,
Attribute table is mandatory,Tabla de atributos es obligatoria,
Attribute {0} selected multiple times in Attributes Table,Atributo {0} seleccionado varias veces en la tabla Atributos,
Authorized Signatory,Firmante autorizado,
Auto Material Requests Generated,Solicitudes de Material Automáticamente Generadas,
Auto Repeat,Repetición Automática,
Auto repeat document updated,Documento automático editado,
Automotive,Automotores,
Available,Disponible,
Available Qty,Cantidad disponible,
Available Selling,Venta disponible,
Available for use date is required,Disponible para la fecha de uso es obligatorio,
Available slots,Espacios de tiempo disponibles,
Available {0},Disponible {0},
Available-for-use Date should be after purchase date,La fecha de uso disponible debe ser posterior a la fecha de compra.,
Average Age,Edad promedio,
Average Rate,Tasa promedio,
Avg Daily Outgoing,Promedio diario saliente,
Avg. Buying Price List Rate,Promedio Precio de la Lista de Precios de Compra,
Avg. Selling Price List Rate,Promedio Precio de la Lista de Precios de Venta,
Avg. Selling Rate,Precio de venta promedio,
BOM,BOM,
BOM Browser,Explorar listas de materiales (LdM),
BOM No,Lista de materiales (LdM) No.,
BOM Rate,Coeficiente de la lista de materiales (LdM),
BOM Stock Report,Reporte de Stock de BOM,
BOM and Manufacturing Quantity are required,Se requiere la lista de materiales (LdM) y cantidad a manufacturar.,
BOM does not contain any stock item,BOM no contiene ningún artículo de stock,
BOM {0} does not belong to Item {1},La lista de materiales (LdM) {0} no pertenece al producto {1},
BOM {0} must be active,La lista de materiales (LdM) {0} debe estar activa,
BOM {0} must be submitted,La lista de materiales (LdM) {0} debe ser validada,
Balance,Balance,
Balance (Dr - Cr),Balance (Dr - Cr),
Balance ({0}),Balance ({0}),
Balance Qty,Balance,
Balance Sheet,Hoja de balance,
Balance Value,Valor de balance,
Balance for Account {0} must always be {1},El balance para la cuenta {0} siempre debe ser {1},
Bank,Banco,
Bank Account,Cuenta bancaria,
Bank Accounts,Cuentas bancarias,
Bank Draft,Giro bancario,
Bank Name,Nombre del banco,
Bank Overdraft Account,Cuenta de Sobre-Giros,
Bank Reconciliation,Conciliación bancaria,
Bank Reconciliation Statement,Estados de conciliación bancarios,
Bank Statement,Extracto de cuenta,
Bank Statement Settings,Configuración de Extracto Bancario,
Bank Statement balance as per General Ledger,Saldo de Extracto Bancario según Balance General,
Bank account cannot be named as {0},La cuenta bancaria no puede nombrarse como {0},
Bank/Cash transactions against party or for internal transfer,Transacciones de Banco/Efectivo contra Empresa o transferencia interna,
Banking,Banca,
Banking and Payments,Banco y Pagos,
Barcode {0} already used in Item {1},El código de barras {0} ya se utiliza en el artículo {1},
Barcode {0} is not a valid {1} code,Código de Barras {0} no es un código {1} válido,
Base URL,URL Base,
Based On,Basado en,
Based On Payment Terms,Basada en Término de Pago,
Batch,Lote,
Batch Entries,Entradas por lotes,
Batch ID is mandatory,El ID de lote es obligatorio,
Batch Inventory,Inventario de Lotes,
Batch Name,Nombre del lote,
Batch No,Lote Nro.,
Batch number is mandatory for Item {0},El número de lote es obligatorio para el producto {0},
Batch {0} of Item {1} has expired.,El lote {0} del producto {1} ha expirado.,
Batch {0} of Item {1} is disabled.,El lote {0} del elemento {1} está deshabilitado.,
Batch: ,Lote:,
Batches,Lotes,
Become a Seller,Ser un Vendedor,
Bill,Cuenta,
Bill Date,Fecha de factura,
Bill No,Factura No.,
Bill of Materials,Lista de materiales,
Bill of Materials (BOM),Lista de materiales (BOM),
Billable Hours,Horas facturables,
Billed,Facturado,
Billed Amount,Importe facturado,
Billing Address,Dirección de Facturación,
Billing Address is same as Shipping Address,Dirección de facturación es la misma que la dirección de envío,
Billing Amount,Monto de facturación,
Billing Status,Estado de facturación,
Billing currency must be equal to either default company's currency or party account currency,La moneda de facturación debe ser igual a la moneda de la compañía predeterminada o la moneda de la cuenta de la parte,
Bills raised by Suppliers.,Listado de facturas emitidas por los proveedores.,
Bills raised to Customers.,Listado de facturas emitidas a los clientes.,
Biotechnology,Biotecnología,
Black,Negro,
Blanket Orders from Costumers.,Órdenes generales de los clientes.,
Block Invoice,Factura en Bloque,
Boms,Boms,
Both Trial Period Start Date and Trial Period End Date must be set,Se deben configurar tanto la fecha de inicio del Período de Prueba como la fecha de finalización del Período de Prueba,
Both Warehouse must belong to same Company,Ambos almacenes deben pertenecer a la misma compañía,
Branch,Sucursal,
Broadcasting,Difusión,
Brokerage,Bolsa de valores,
Browse BOM,Explorar la lista de materiales,
Budget Against,Contra Presupuesto,
Budget List,Lista de Presupuesto,
Budget Variance Report,Variación de Presupuesto,
Budget cannot be assigned against Group Account {0},El presupuesto no se puede asignar contra el grupo de cuentas {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","El presupuesto no se puede asignar contra {0}, ya que no es una cuenta de ingresos o gastos",
Buildings,Edificios,
Bundle items at time of sale.,Agrupe elementos al momento de la venta.,
Business Development Manager,Gerente de Desarrollo de Negocios,
Buy,Comprar,
Buying,Compras,
Buying Amount,Importe de compra,
Buying Price List,Lista de precios de compra,
Buying Rate,Tipo de Cambio de Compra,
"Buying must be checked, if Applicable For is selected as {0}","'Compras' debe ser seleccionada, si la opción: 'Aplicable para' esta seleccionado como {0}",
By {0},Por {0},
Bypass credit check at Sales Order ,Omitir verificación de crédito en Orden de Venta,
C-Form records,Registros C -Form,
C-form is not applicable for Invoice: {0},Formulario-C no es aplicable para la factura: {0},
CEO,CEO,
CESS Amount,Cantidad de CESS,
CGST Amount,Cantidad de CGST,
CRM,CRM,
CWIP Account,Cuenta CWIP,
Calculated Bank Statement balance,Balance calculado del estado de cuenta bancario,
Campaign,Campaña,
Can be approved by {0},Puede ser aprobado por {0},
"Can not filter based on Account, if grouped by Account","No se puede filtrar en función de la cuenta , si se agrupan por cuenta",
"Can not filter based on Voucher No, if grouped by Voucher","No se puede filtrar en función al 'No. de comprobante', si esta agrupado por el nombre",
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","No se puede marcar Registro de paciente hospitalizado descargado, hay facturas no facturadas {0}",
Can only make payment against unbilled {0},Sólo se puede crear el pago contra {0} impagado,
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Puede referirse a la línea, sólo si el tipo de importe es 'previo al importe' o 'previo al total'",
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","No se puede cambiar el método de valoración, ya que hay transacciones contra algunos elementos que no tiene su propio método de valoración",
Can't create standard criteria. Please rename the criteria,No se pueden crear criterios estándar. Por favor cambie el nombre de los criterios,
Cancel,Cancelar,
Cancel Material Visit {0} before cancelling this Warranty Claim,Cancelar visita {0} antes de cancelar este reclamo de garantía,
Cancel Material Visits {0} before cancelling this Maintenance Visit,Cancelar visitas {0} antes de cancelar la visita de mantenimiento,
Cancel Subscription,Cancelar suscripción,
Cancel the journal entry {0} first,Cancelar el asiento contable {0} primero,
Canceled,Cancelado,
"Cannot Submit, Employees left to mark attendance","No se puede enviar, los empleados se marchan para marcar la asistencia",
Cannot be a fixed asset item as Stock Ledger is created.,No puede ser un elemento de Activo Fijo ya que se creo un Libro de Stock .,
Cannot cancel because submitted Stock Entry {0} exists,No se puede cancelar debido a que existe una entrada en el almacén {0},
Cannot cancel transaction for Completed Work Order.,No se puede cancelar la transacción para la orden de trabajo completada.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},No se puede cancelar {0} {1} porque el número de serie {2} no pertenece al almacén {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,No se pueden cambiar los Atributos después de la Transacciones de Stock. Haga un nuevo Artículo y transfiera el stock al nuevo Artículo,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,No se puede cambiar la 'Fecha de Inicio' y la 'Fecha Final' del año fiscal una vez que ha sido guardado.,
Cannot change Service Stop Date for item in row {0},No se puede cambiar la fecha de detención del servicio para el artículo en la fila {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,No se pueden cambiar las propiedades de la Variante después de una transacción de stock. Deberá crear un nuevo ítem para hacer esto.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","No se puede cambiar la divisa/moneda por defecto de la compañía, porque existen transacciones, estas deben ser canceladas antes de cambiarla",
Cannot change status as student {0} is linked with student application {1},No se puede cambiar el estado de estudiante {0} está vinculada con la aplicación del estudiante {1},
Cannot convert Cost Center to ledger as it has child nodes,"No se puede convertir de 'Centros de Costos' a una cuenta del libro mayor, ya que tiene sub-grupos",
Cannot covert to Group because Account Type is selected.,No se puede convertir a 'Grupo' porque se seleccionó 'Tipo de Cuenta'.,
Cannot create Retention Bonus for left Employees,No se puede crear una bonificación de retención para los empleados dejados,
Cannot create a Delivery Trip from Draft documents.,No se puede crear un viaje de entrega a partir de documentos de borrador.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,No se puede desactivar o cancelar la 'Lista de Materiales (LdM)' si esta vinculada con otras,
"Cannot declare as lost, because Quotation has been made.","No se puede declarar como perdida, porque se ha hecho el Presupuesto",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',No se puede deducir cuando categoría es para ' Valoración ' o ' de Valoración y Total ',
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',"No se puede deducir cuando la categoría es 'de Valoración ""o"" Vaulation y Total'",
"Cannot delete Serial No {0}, as it is used in stock transactions","No se puede eliminar el No. de serie {0}, ya que esta siendo utilizado en transacciones de stock",
Cannot enroll more than {0} students for this student group.,No se puede inscribir más de {0} estudiantes para este grupo de estudiantes.,
Cannot produce more Item {0} than Sales Order quantity {1},No se puede producir una cantidad mayor del producto {0} que lo requerido en el pedido de venta {1},
Cannot promote Employee with status Left,No se puede promocionar Empleado con estado dejado,
Cannot refer row number greater than or equal to current row number for this Charge type,No se puede referenciar a una línea mayor o igual al numero de línea actual.,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,No se puede seleccionar el tipo de cargo como 'Importe de línea anterior' o ' Total de línea anterior' para la primera linea,
Cannot set as Lost as Sales Order is made.,"No se puede definir como pérdida, cuando la orden de venta esta hecha.",
Cannot set authorization on basis of Discount for {0},No se puede establecer la autorización sobre la base de descuento para {0},
Cannot set multiple Item Defaults for a company.,No se pueden establecer varios valores predeterminados de artículos para una empresa.,
Cannot set quantity less than delivered quantity,No se puede establecer una cantidad menor que la cantidad entregada,
Cannot set quantity less than received quantity,No se puede establecer una cantidad menor que la cantidad recibida,
Cannot set the field <b>{0}</b> for copying in variants,No se puede establecer el campo <b>{0}</b> para copiar en variantes,
Cannot transfer Employee with status Left,No se puede transferir Empleado con estado dejado,
Cannot {0} {1} {2} without any negative outstanding invoice,No se puede {0} {1} {2} sin ninguna factura pendiente negativa,
Capital Equipments,BIENES DE CAPITAL,
Capital Stock,Capital de inventario,
Capital Work in Progress,Trabajo de capital en progreso,
Cart,Carrito,
Cart is Empty,El carrito esta vacío.,
Case No(s) already in use. Try from Case No {0},El numero de caso ya se encuentra en uso. Intente {0},
Cash,Efectivo,
Cash Flow Statement,Estado de Flujos de Efectivo,
Cash Flow from Financing,Flujo de caja de financiación,
Cash Flow from Investing,Flujo de efectivo de inversión,
Cash Flow from Operations,Flujo de caja operativo,
Cash In Hand,Efectivo en caja,
Cash or Bank Account is mandatory for making payment entry,'Cuenta de Efectivo' o 'Cuenta Bancaria' es obligatoria para hacer una entrada de pago,
Cashier Closing,Cierre de cajero,
Category,Categoría,
Category Name,Nombre Categoría,
Caution,Precaución,
Central Tax,Impuesto central,
Certification,Proceso de dar un título,
Cess,Impuesto,
Change Amount,Importe de Cambio,
Change Item Code,Cambiar código de artículo,
Change Release Date,Cambiar fecha de lanzamiento,
Change Template Code,Cambiar código de plantilla,
Changing Customer Group for the selected Customer is not allowed.,No se permite cambiar el grupo de clientes para el cliente seleccionado.,
Chapter,Capítulo,
Chapter information.,Información del capítulo.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Cambiar a tipo 'Actual' en la línea {0} no puede ser incluido en el precio,
Chargeble,Cobrable,
Charges are updated in Purchase Receipt against each item,Los cargos se actualizan en el recibo de compra  por cada producto,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Los cargos se distribuirán proporcionalmente basados en la cantidad o importe, según selección",
Chart of Cost Centers,Centros de costos,
Check all,Marcar todas,
Checkout,Pedido,
Chemical,Químico,
Cheque,Cheque,
Cheque/Reference No,Cheque / No. de Referencia,
Cheques Required,Cheques requeridos,
Cheques and Deposits incorrectly cleared,Cheques y Depósitos liquidados de forma incorrecta,
Child Task exists for this Task. You can not delete this Task.,Existe Tarea Hija para esta Tarea. No puedes eliminar esta Tarea.,
Child nodes can be only created under 'Group' type nodes,Los nodos hijos sólo pueden ser creados bajo los nodos de tipo &quot;grupo&quot;,
Child warehouse exists for this warehouse. You can not delete this warehouse.,No se puede eliminar este almacén. Existe almacén hijo para este almacén.,
Circular Reference Error,Error de referencia circular,
City,Ciudad,
City/Town,Ciudad / Provincia,
Clay,Arcilla,
Clear filters,Filtros claros,
Clear values,Quitar valores,
Clearance Date,Fecha de liquidación,
Clearance Date not mentioned,Fecha de liquidación no definida,
Clearance Date updated,Fecha de liquidación actualizada,
Client,Cliente,
Client ID,Client ID,
Client Secret,Client Secret,
Clinical Procedure,Procedimiento clinico,
Clinical Procedure Template,Plantilla de procedimiento clínico,
Close Balance Sheet and book Profit or Loss.,Cerrar balance general y el libro de pérdidas y ganancias.,
Close Loan,Préstamo cerrado,
Close the POS,Cierre el POS,
Closed,Cerrado,
Closed order cannot be cancelled. Unclose to cancel.,Orden cerrada no se puede cancelar. Abrir para cancelar.,
Closing (Cr),Cierre (Cred),
Closing (Dr),Cierre (Deb),
Closing (Opening + Total),Cierre (Apertura + Total),
Closing Account {0} must be of type Liability / Equity,Cuenta de Clausura {0} tiene que ser de Responsabilidad / Patrimonio,
Closing Balance,Balance de cierre,
Code,Código,
Collapse All,Desplegar todo,
Color,Color,
Colour,Color,
Combined invoice portion must equal 100%,La porción combinada de la factura debe ser igual al 100%,
Commercial,Comercial,
Commission,Comisión,
Commission Rate %,Porcentaje de comision %,
Commission on Sales,Comisiones sobre ventas,
Commission rate cannot be greater than 100,El porcentaje de comisión no puede ser superior a 100,
Community Forum,foro de la Comunidad,
Company (not Customer or Supplier) master.,Configuración general del sistema.,
Company Abbreviation,Abreviatura de la compañia,
Company Abbreviation cannot have more than 5 characters,La abreviatura de la Empresa no puede tener más de 5 caracteres,
Company Name,Nombre de compañía,
Company Name cannot be Company,Nombre de la empresa no puede ser Company,
Company currencies of both the companies should match for Inter Company Transactions.,Las monedas de la empresa de ambas compañías deben coincidir para las Transacciones entre empresas.,
Company is manadatory for company account,La compañía es administradora para la cuenta de la compañía,
Company name not same,El nombre de la empresa no es el mismo,
Company {0} does not exist,Compañía {0} no existe,
Compensatory leave request days not in valid holidays,Días de solicitud de permiso compensatorio no en días feriados válidos,
Complaint,Queja,
Completion Date,Fecha de  finalización,
Computer,Computadora,
Condition,Condición,
Configure,Configurar,
Configure {0},Configurar {0},
Confirmed orders from Customers.,Ordenes de clientes confirmadas.,
Connect Amazon with ERPNext,Conecte Amazon con ERPNext,
Connect Shopify with ERPNext,Conecte Shopify con ERPNext,
Connect to Quickbooks,Conectarse a Quickbooks,
Connected to QuickBooks,Conectado a QuickBooks,
Connecting to QuickBooks,Conectando a QuickBooks,
Consultation,Consulta,
Consultations,Consultas,
Consulting,Consuloría,
Consumable,Consumible,
Consumed,Consumido,
Consumed Amount,Monto consumido,
Consumed Qty,Cantidad consumida,
Consumer Products,Productos de consumo,
Contact,Contacto,
Contact Us,Contáctenos,
Content,Contenido,
Content Masters,Maestros de contenido,
Content Type,Tipo de contenido,
Continue Configuration,Continuar configuración,
Contract,Contrato,
Contract End Date must be greater than Date of Joining,La fecha de finalización de contrato debe ser mayor que la fecha de ingreso,
Contribution %,Margen %,
Contribution Amount,Importe de contribución,
Conversion factor for default Unit of Measure must be 1 in row {0},El factor de conversión de la unidad de medida (UdM) en la línea {0} debe ser 1,
Conversion rate cannot be 0 or 1,La tasa de conversión no puede ser 0 o 1,
Convert to Group,Convertir a grupo,
Convert to Non-Group,Convertir a 'Sin-Grupo',
Cosmetics,Cosméticos,
Cost Center,Centro de costos,
Cost Center Number,Número de centro de costo,
Cost Center and Budgeting,Centro de costos y presupuesto,
Cost Center is required in row {0} in Taxes table for type {1},Centro de costos requerido para la línea {0} en la tabla Impuestos para el tipo {1},
Cost Center with existing transactions can not be converted to group,El centro de costos con transacciones existentes no se puede convertir a 'grupo',
Cost Center with existing transactions can not be converted to ledger,El centro de costos con transacciones existentes no se puede convertir a libro mayor,
Cost Centers,Centros de costos,
Cost Updated,Costo actualizado,
Cost as on,Computar como,
Cost of Delivered Items,Costo de productos entregados,
Cost of Goods Sold,Costo sobre ventas,
Cost of Issued Items,Costo de productos entregados,
Cost of New Purchase,Costo de Compra de Nueva,
Cost of Purchased Items,Costo de productos comprados,
Cost of Scrapped Asset,Costo del Activo Desechado,
Cost of Sold Asset,Costo del activo vendido,
Cost of various activities,Costo de diversas actividades,
"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again","No se pudo crear una Nota de Crédito automáticamente, desmarque 'Emitir Nota de Crédito' y vuelva a enviarla",
Could not generate Secret,No se pudo generar el Secreto,
Could not retrieve information for {0}.,No se pudo recuperar la información de {0}.,
Could not solve criteria score function for {0}. Make sure the formula is valid.,No se pudo resolver la función de puntuación de criterios para {0}. Asegúrese de que la fórmula es válida.,
Could not solve weighted score function. Make sure the formula is valid.,No se pudo resolver la función de puntuación ponderada. Asegúrese de que la fórmula es válida.,
Could not submit some Salary Slips,No se pudieron enviar algunos resúmenes salariales,
"Could not update stock, invoice contains drop shipping item.","No se pudo actualizar valores, factura contiene los artículos con envío triangulado.",
Country wise default Address Templates,Plantillas predeterminadas para un país en especial,
Course Code: ,Código del curso:,
Course Enrollment {0} does not exists,La inscripción al curso {0} no existe,
Course Schedule,Calendario de cursos,
Course: ,Curso:,
Cr,Cred,
Create,Crear,
Create BOM,Crear lista de materiales,
Create Delivery Trip,Crear Ruta de entrega,
Create Employee,Crear empleado,
Create Employee Records,Crear registros de empleados,
"Create Employee records to manage leaves, expense claims and payroll","Crear registros de los empleados para gestionar los permisos, las reclamaciones de gastos y nómina",
Create Fee Schedule,Crear lista de tarifas,
Create Fees,Crear tarifas,
Create Inter Company Journal Entry,Crear entrada de diario entre empresas,
Create Invoice,Crear factura,
Create Invoices,Crear facturas,
Create Job Card,Crear tarjeta de trabajo,
Create Journal Entry,Crear entrada de diario,
Create Lead,Crear plomo,
Create Leads,Crear Leads,
Create Maintenance Visit,Crear visita de mantenimiento,
Create Material Request,Crear solicitud de material,
Create Multiple,Crear múltiples,
Create Opening Sales and Purchase Invoices,Crear facturas iniciales de compra y venta,
Create Payment Entries,Crear entradas de pago,
Create Payment Entry,Crear entrada de pago,
Create Print Format,Crear formato de impresión,
Create Purchase Order,Crear orden de compra,
Create Purchase Orders,Crear órdenes de compra,
Create Quotation,Crear cotización,
Create Sales Invoice,Crear factura de ventas,
Create Sales Order,Crear Pedido de Venta,
Create Sales Orders to help you plan your work and deliver on-time,Cree pedidos de ventas para ayudarlo a planificar su trabajo y entregarlo a tiempo,
Create Sample Retention Stock Entry,Crear entrada de stock de retención de muestra,
Create Student,Crear estudiante,
Create Student Batch,Crear lote de estudiantes,
Create Student Groups,Crear grupos de estudiantes,
Create Supplier Quotation,Crear presupuesto de proveedor,
Create Tax Template,Crear plantilla de impuestos,
Create Timesheet,Crear parte de horas,
Create User,Crear usuario,
Create Users,Crear Usuarios,
Create Variant,Crear variante,
Create Variants,Crear variantes,
"Create and manage daily, weekly and monthly email digests.","Crear y gestionar resúmenes de correos; diarios, semanales y mensuales.",
Create customer quotes,Crear cotizaciones de clientes,
Create rules to restrict transactions based on values.,Crear reglas para restringir las transacciones basadas en valores.,
Created {0} scorecards for {1} between: ,Creó {0} tarjetas de puntuación para {1} entre:,
Creating Company and Importing Chart of Accounts,Creación de empresa e importación de plan de cuentas,
Creating Fees,Creación de Tarifas,
Creating student groups,Crear grupos de estudiantes,
Creating {0} Invoice,Creando {0} Factura,
Credit,Haber,
Credit ({0}),Crédito ({0}),
Credit Account,Cuenta de crédito,
Credit Balance,Saldo Acreedor,
Credit Card,Tarjetas de credito,
Credit Days cannot be a negative number,Los Días de Crédito no pueden ser negativos,
Credit Limit,Límite de crédito,
Credit Note,Nota de crédito,
Credit Note Amount,Monto de Nota de Credito,
Credit Note Issued,Nota de crédito emitida,
Credit Note {0} has been created automatically,Nota de crédito {0} se ha creado automáticamente,
Credit limit has been crossed for customer {0} ({1}/{2}),Se ha cruzado el límite de crédito para el Cliente {0} ({1} / {2}),
Creditors,Acreedores,
Criteria weights must add up to 100%,Los pesos de los criterios deben sumar hasta el 100%,
Crop Cycle,Ciclo de cultivo,
Crops & Lands,Cultivos y tierras,
Currency Exchange must be applicable for Buying or for Selling.,El Cambio de Moneda debe ser aplicable para comprar o vender.,
Currency can not be changed after making entries using some other currency,El tipo de moneda/divisa no se puede cambiar después de crear la entrada contable,
Currency exchange rate master.,Configuración principal para el cambio de divisas,
Currency for {0} must be {1},Moneda para {0} debe ser {1},
Currency is required for Price List {0},La divisa/moneda es requerida para lista de precios {0},
Currency of the Closing Account must be {0},La divisa / moneda de la cuenta de cierre debe ser {0},
Currency of the price list {0} must be {1} or {2},La moneda de la lista de precios {0} debe ser {1} o {2},
Currency should be same as Price List Currency: {0},La moneda debe ser la misma que la moneda de la lista de precios: {0},
Current Assets,Activo circulante,
Current BOM and New BOM can not be same,La lista de materiales (LdM) actual y la nueva no pueden ser las mismas,
Current Liabilities,Pasivo circulante,
Current Qty,Cant. Actual,
Current invoice {0} is missing,La factura actual {0} falta,
Custom HTML,HTML Personalizado,
Custom?,¿Personalizado?,
Customer,Cliente,
Customer Addresses And Contacts,Direcciones de clientes y contactos,
Customer Contact,Contacto del Cliente,
Customer Database.,Base de datos de Clientes.,
Customer Group,Categoría de Cliente,
Customer LPO,Cliente LPO,
Customer LPO No.,Cliente LPO Nro.,
Customer Name,Nombre del cliente,
Customer POS Id,id de POS del Cliente,
Customer Service,Servicio al cliente,
Customer and Supplier,Clientes y proveedores,
Customer is required,Se requiere Cliente,
Customer isn't enrolled in any Loyalty Program,El cliente no está inscrito en ningún programa de lealtad,
Customer required for 'Customerwise Discount',Se requiere un cliente para el descuento,
Customer {0} does not belong to project {1},Cliente {0} no pertenece al proyecto {1},
Customer {0} is created.,Se crea el cliente {0}.,
Customers in Queue,Clientes en cola,
Customize Homepage Sections,Personalizar secciones de la página de inicio,
Customizing Forms,Formularios Personalizados,
Daily Project Summary for {0},Resumen diario del proyecto para {0},
Daily Reminders,Recordatorios diarios,
Data Import and Export,Importación y exportación de datos,
Data Import and Settings,Importación de datos y configuraciones,
Database of potential customers.,Base de datos de clientes potenciales.,
Date Format,Formato de Fecha,
Date Of Retirement must be greater than Date of Joining,La fecha de jubilación debe ser mayor que la fecha de ingreso,
Date of Birth,Fecha de nacimiento,
Date of Birth cannot be greater than today.,La fecha de nacimiento no puede ser mayor a la fecha de hoy.,
Date of Commencement should be greater than Date of Incorporation,La fecha de inicio debe ser mayor que la fecha de incorporación,
Date of Joining,Fecha de Ingreso,
Date of Joining must be greater than Date of Birth,La fecha de ingreso debe ser mayor a la fecha de nacimiento,
Date of Transaction,Fecha de la Transacción,
Day,Día,
Debit,Debe,
Debit ({0}),Débito ({0}),
Debit Account,Cuenta de debito,
Debit Note,Nota de debito,
Debit Note Amount,Monto de Nota de Debito,
Debit Note Issued,Nota de débito emitida,
Debit To is required,Débito Para es requerido,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,El Débito y Crédito no es igual para {0} # {1}. La diferencia es {2}.,
Debtors,DEUDORES VARIOS,
Debtors ({0}),Deudores ({0}),
Declare Lost,Declarar perdido,
Default Activity Cost exists for Activity Type - {0},Existe una actividad de costo por defecto para la actividad del tipo - {0},
Default BOM ({0}) must be active for this item or its template,La lista de materiales (LdM) por defecto ({0}) debe estar activa para este producto o plantilla,
Default BOM for {0} not found,BOM por defecto para {0} no encontrado,
Default BOM not found for Item {0} and Project {1},La lista de materiales predeterminada no se encontró para el Elemento {0} y el Proyecto {1},
Default Letter Head,Encabezado Predeterminado,
Default Tax Template,Plantilla de impuesto predeterminado,
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.,Unidad de medida predeterminada para el artículo {0} no se puede cambiar directamente porque ya ha realizado alguna transacción (s) con otra UOM. Usted tendrá que crear un nuevo elemento a utilizar un UOM predeterminado diferente.,
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Unidad de medida predeterminada para variante '{0}' debe ser la mismo que en la plantilla '{1}',
Default settings for buying transactions.,Ajustes predeterminados para las transacciones de compra.,
Default settings for selling transactions.,Ajustes por defecto para las transacciones de venta.,
Default tax templates for sales and purchase are created.,Se crean plantillas de impuestos predeterminadas para ventas y compras.,
Defaults,Predeterminados,
Defense,Defensa,
Define Project type.,Defina el Tipo de Proyecto.,
Define budget for a financial year.,Definir presupuesto para un año contable.,
Define various loan types,Definir varios tipos de préstamos,
Del,Elim,
Delay in payment (Days),Retraso en el pago (Días),
Delete all the Transactions for this Company,Eliminar todas las transacciones para esta compañía,
Deletion is not permitted for country {0},La eliminación no está permitida para el país {0},
Delivered,Enviado,
Delivered Amount,Importe entregado,
Delivered Qty,Cantidad entregada,
Delivered: {0},Entregado: {0},
Delivery,Entregar,
Delivery Date,Fecha de entrega,
Delivery Note,Nota de entrega,
Delivery Note {0} is not submitted,La nota de entrega {0} no está validada,
Delivery Note {0} must not be submitted,La nota de entrega {0} no debe estar validada,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,La nota de entrega {0} debe ser cancelada antes de cancelar esta orden ventas,
Delivery Notes {0} updated,Notas de entrega {0} actualizadas,
Delivery Status,Estado del envío,
Delivery Trip,Viaje de entrega,
Delivery warehouse required for stock item {0},Almacén de entrega requerido para el inventrio del producto {0},
Department,Departamento,
Department Stores,Tiendas por departamento,
Depreciation,DEPRECIACIONES,
Depreciation Amount,Monto de la depreciación,
Depreciation Amount during the period,Monto de la depreciación durante el período,
Depreciation Date,Fecha de depreciación,
Depreciation Eliminated due to disposal of assets,Depreciación Eliminada debido a la venta de activos,
Depreciation Entry,Entrada de depreciación,
Depreciation Method,Método de depreciación,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Fila de Depreciación {0}: Fecha de Inicio de Depreciación se ingresa como fecha pasada,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Fila de Depreciación {0}: el valor esperado después de la vida útil debe ser mayor o igual que {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Fila de depreciación {0}: la siguiente fecha de depreciación no puede ser anterior Fecha disponible para usar,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Fila de depreciación {0}: la siguiente fecha de depreciación no puede ser anterior a la fecha de compra,
Designer,Diseñador,
Detailed Reason,Motivo detallado,
Details,Detalles,
Details of Outward Supplies and inward supplies liable to reverse charge,Detalles de suministros externos y suministros internos sujetos a recargo,
Details of the operations carried out.,Detalles de las operaciones realizadas.,
Diagnosis,Diagnóstico,
Did not find any item called {0},No ha encontrado ningún elemento llamado {0},
Diff Qty,Dif. Cant.,
Difference Account,Cuenta para la Diferencia,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Una cuenta distinta debe ser del tipo Activo / Pasivo, ya que la reconciliación del stock es una entrada de apertura",
Difference Amount,Diferencia,
Difference Amount must be zero,La diferencia de montos debe ser cero,
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.,Unidad de Medida diferente para elementos dará lugar a Peso Neto (Total) incorrecto. Asegúrese de que el peso neto de cada artículo esté en la misma Unidad de Medida.,
Direct Expenses,Gastos directos,
Direct Income,Ingreso directo,
Disable,Desactivar,
Disabled template must not be default template,Plantilla deshabilitada no debe ser la plantilla predeterminada,
Disburse Loan,Préstamo de desembolso,
Disbursed,Desembolsado,
Disc,Desc,
Discharge,Descarga,
Discount,Descuento,
Discount Percentage can be applied either against a Price List or for all Price List.,El porcentaje de descuento puede ser aplicado ya sea en una lista de precios o para todas las listas de precios.,
Discount must be less than 100,El descuento debe ser inferior a 100,
Diseases & Fertilizers,Enfermedades y Fertilizantes,
Dispatch,Despacho,
Dispatch Notification,Notificación de Despacho,
Dispatch State,Estado de despacho,
Distance,Distancia,
Distribution,Distribución,
Distributor,Distribuidor,
Dividends Paid,Dividendos pagados,
Do you really want to restore this scrapped asset?,¿Realmente desea restaurar este activo desechado?,
Do you really want to scrap this asset?,¿Realmente desea desechar este activo?,
Do you want to notify all the customers by email?,¿Desea notificar a todos los clientes por correo electrónico?,
Doc Date,Fecha del Doc,
Doc Name,Nombre del documento,
Doc Type,DocType,
Docs Search,Búsqueda de documentos,
Document Name,Nombre de Documento,
Document Type,Tipo de Documento,
Domain,Dominio,
Domains,Dominios,
Done,Listo,
Donor,Donante,
Donor Type information.,Información de Tipo de Domante,
Donor information.,Información del Donante,
Download JSON,Descargar JSON,
Draft,Borrador,
Drop Ship,Envío Triangulado,
Drug,Droga,
Due / Reference Date cannot be after {0},Vencimiento / Fecha de referencia no puede ser posterior a {0},
Due Date cannot be before Posting / Supplier Invoice Date,La fecha de vencimiento no puede ser anterior a la fecha de contabilización / factura del proveedor,
Due Date is mandatory,La fecha de vencimiento es obligatoria,
Duplicate Entry. Please check Authorization Rule {0},Entrada duplicada. Por favor consulte la regla de autorización {0},
Duplicate Serial No entered for Item {0},Duplicar No. de serie para el producto {0},
Duplicate customer group found in the cutomer group table,Grupo de clientes duplicado encontrado en la tabla de grupo de clientes,
Duplicate entry,Entrada duplicada,
Duplicate item group found in the item group table,Se encontró grupo de artículos duplicado  en la table de grupo de artículos,
Duplicate roll number for student {0},Número de rol duplicado para el estudiante {0},
Duplicate row {0} with same {1},Línea {0} duplicada con igual {1},
Duplicate {0} found in the table,Duplicado {0} encontrado en la tabla,
Duration in Days,Duración en Días,
Duties and Taxes,IMPUESTOS Y ARANCELES,
E-Invoicing Information Missing,Falta información de facturación electrónica,
ERPNext Demo,Demostración ERPNext,
ERPNext Settings,Configuración de ERPNext,
Earliest,Primeras,
Earnest Money,GANANCIAS PERCIBIDAS,
Edit,Editar,
Edit Publishing Details,Editar detalles de publicación,
"Edit in full page for more options like assets, serial nos, batches etc.","Edite en la página completa para obtener más opciones como activos, números de serie, lotes, etc.",
Education,Educación,
Either location or employee must be required,Se debe requerir la ubicación o el empleado,
Either target qty or target amount is mandatory,Es obligatoria la meta de facturacion,
Either target qty or target amount is mandatory.,Es obligatoria la meta fe facturación.,
Electrical,Eléctrico,
Electronic Equipments,Equipos electronicos,
Electronics,Electrónicos,
Eligible ITC,ITC elegible,
Email Account,Cuentas de correo electrónico,
Email Address,Dirección de correo electrónico,
"Email Address must be unique, already exists for {0}","Dirección de correo electrónico debe ser única, ya existe para {0}",
Email Digest: ,Enviar boletín:,
Email Reminders will be sent to all parties with email contacts,Recordatorios de correo electrónico se enviarán a todas las partes con contactos de correo electrónico,
Email Sent,Correo Electrónico Enviado,
Email Template,Plantilla de Correo Electrónico,
Email not found in default contact,Correo electrónico no encontrado en contacto predeterminado,
Email sent to {0},Correo electrónico enviado a {0},
Employee,Empleado,
Employee Advances,Avances de Empleado,
Employee ID,ID de empleado,
Employee Lifecycle,Ciclo de vida del empleado,
Employee Name,Nombre de empleado,
Employee Promotion cannot be submitted before Promotion Date ,La Promoción del Empleado no se puede enviar antes de la fecha de promoción,
Employee Transfer cannot be submitted before Transfer Date ,La transferencia del empleado no se puede enviar antes de la fecha de transferencia,
Employee cannot report to himself.,El empleado no puede informar a sí mismo.,
Employee {0} has already applied for {1} between {2} and {3} : ,El empleado {0} ya ha solicitado {1} entre {2} y {3}:,
Employee {0} of grade {1} have no default leave policy,El Empleado {0} de la calificación {1} no tiene una política de licencia predeterminada,
Enable / disable currencies.,Habilitar o deshabilitar el tipo de divisas,
Enabled,Habilitado,
"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Habilitar' Uso para el carro de la compra', ya que el carro de la compra está habilitado y debería haber al menos una regla de impuestos para el carro de la compra.",
End Date,Fecha Final,
End Date can not be less than Start Date,La fecha de finalización no puede ser inferior a la fecha de inicio,
End Date cannot be before Start Date.,La fecha de finalización no puede ser anterior a la fecha de inicio.,
End Year,Año final,
End Year cannot be before Start Year,Año de finalización no puede ser anterior al ano de inicio,
End on,Finalizará el,
Ends On date cannot be before Next Contact Date.,La fecha de finalización no puede ser anterior a la fecha del próximo contacto.,
Energy,Energía,
Engineer,Ingeniero,
Enough Parts to Build,Piezas suficiente para construir,
Enroll,Inscribirse,
Enrolling student,Inscribiendo estudiante,
Enrolling students,Inscripción de Estudiantes,
Enter depreciation details,Ingrese detalles de depreciación,
Enter the Bank Guarantee Number before submittting.,Ingrese el número de garantía bancaria antes de enviar.,
Enter the name of the Beneficiary before submittting.,Ingrese el nombre del Beneficiario antes de enviarlo.,
Enter the name of the bank or lending institution before submittting.,Ingrese el nombre del banco o institución de crédito antes de enviarlo.,
Enter value betweeen {0} and {1},Ingrese el valor entre {0} y {1},
Entertainment & Leisure,Entretenimiento y Ocio,
Entertainment Expenses,GASTOS DE ENTRETENIMIENTO,
Equity,Patrimonio,
Error Log,Registro de Errores,
Error evaluating the criteria formula,Error al evaluar la fórmula de criterios,
Error in formula or condition: {0},Error Fórmula o Condición: {0},
Error: Not a valid id?,Error: ¿No es un ID válido?,
Estimated Cost,Costo estimado,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Incluso si hay varias reglas de precios con mayor prioridad, se aplican entonces siguientes prioridades internas:",
Exchange Gain/Loss,Ganancia/Pérdida en Cambio,
Exchange Rate Revaluation master.,Maestro de revaluación de tipo de cambio.,
Exchange Rate must be same as {0} {1} ({2}),El tipo de cambio debe ser el mismo que {0} {1} ({2}),
Excise Invoice,Factura con impuestos especiales,
Execution,Ejecución,
Executive Search,Búsqueda de ejecutivos,
Expand All,Expandir todo,
Expected Delivery Date,Fecha prevista de entrega,
Expected Delivery Date should be after Sales Order Date,La fecha de entrega esperada debe ser posterior a la fecha del pedido de cliente,
Expected End Date,Fecha prevista de finalización,
Expected Hrs,Horas esperadas,
Expected Start Date,Fecha prevista de inicio,
Expense,Gastos,
Expense / Difference account ({0}) must be a 'Profit or Loss' account,"La cuenta de Gastos/Diferencia ({0}) debe ser una cuenta de 'utilidad o pérdida """,
Expense Account,Cuenta de costos,
Expense Claim,Reembolso de gastos,
Expense Claims,Reembolsos de gastos,
Expense account is mandatory for item {0},La cuenta de gastos es obligatoria para el elemento {0},
Expenses,Gastos,
Expenses Included In Asset Valuation,Gastos incluidos en la valoración de activos,
Expenses Included In Valuation,GASTOS DE VALORACIÓN,
Expired Batches,Lotes Vencidos,
Expires On,Expira el,
Expiring On,Venciendo en,
Expiry (In Days),Caducidad (en días),
Explore,Explorar,
Export E-Invoices,Exportar facturas electrónicas,
Extra Large,Extra grande,
Extra Small,Extra Pequeño,
Fail,Falla,
Failed,Falló,
Failed to create website,Error al crear el sitio web,
Failed to install presets,Error al instalar los ajustes preestablecidos,
Failed to login,Error al iniciar sesión,
Failed to setup company,Error al configurar la compañía,
Failed to setup defaults,Error al cambiar a default,
Failed to setup post company fixtures,Error al configurar los accesorios de la empresa postal,
Fax,Fax,
Fee,Cuota,
Fee Created,Tarifa creada,
Fee Creation Failed,Error en la Creación de Cuotas,
Fee Creation Pending,Creación de Cuotas Pendientes,
Fee Records Created - {0},Registros de cuotas creados - {0},
Feedback,Retroalimentación,
Fees,Matrícula,
Female,Femenino,
Fetch Data,Obtener datos,
Fetch Subscription Updates,Obtener actualizaciones de suscripción,
Fetch exploded BOM (including sub-assemblies),Buscar lista de materiales (LdM) incluyendo subconjuntos,
Fetching records......,Obteniendo Registros......,
Field Name,Nombre de Campo,
Fieldname,Nombre del campo,
Fields,Campos,
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Fila de campos de filtro # {0}: El nombre de campo <b>{1}</b> debe ser del tipo &quot;Enlace&quot; o &quot;Tabla de selección múltiple&quot;,
Filter Total Zero Qty,Filter Total Zero Qty,
Finance Book,Libro de finanzas,
Financial / accounting year.,Finanzas / Ejercicio contable.,
Financial Services,Servicios financieros,
Financial Statements,Estados financieros,
Financial Year,Año financiero,
Finish,Terminar,
Finished Good,Bien Terminado,
Finished Good Item Code,Código de artículo bueno terminado,
Finished Goods,Productos terminados,
Finished Item {0} must be entered for Manufacture type entry,El producto terminado {0} debe ser introducido para el tipo de producción,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,La cantidad de productos terminados <b>{0}</b> y Por cantidad <b>{1}</b> no puede ser diferente,
First Name,Primer Nombre,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","El régimen fiscal es obligatorio, establezca amablemente el régimen fiscal en la empresa {0}",
Fiscal Year,Año fiscal,
Fiscal Year End Date should be one year after Fiscal Year Start Date,La fecha de finalización del año fiscal debe ser un año después de la fecha de inicio del año fiscal,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},La fecha de inicio y la fecha final ya están establecidos en el año fiscal {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,La fecha de inicio del año fiscal debe ser un año anterior a la fecha de finalización del año fiscal,
Fiscal Year {0} does not exist,Año Fiscal {0} no existe,
Fiscal Year {0} is required,Año Fiscal {0} es necesario,
Fixed Asset,Activo fijo,
Fixed Asset Item must be a non-stock item.,Artículo de Activos Fijos no debe ser un artículo de stock.,
Fixed Assets,Activos fijos,
Following Material Requests have been raised automatically based on Item's re-order level,Las Solicitudes de Materiales siguientes se han planteado de forma automática según el nivel de re-pedido del articulo,
Following accounts might be selected in GST Settings:,Las siguientes cuentas se pueden seleccionar en Configuración de GST:,
Following course schedules were created,Se crearon los siguientes horarios del curso,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,El siguiente artículo {0} no está marcado como {1} elemento. Puede habilitarlos como {1} elemento desde su Maestro de artículos,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Los siguientes elementos {0} no están marcados como {1} elemento. Puede habilitarlos como {1} elemento desde su Maestro de artículos,
"Food, Beverage & Tobacco","Alimentos, bebidas y tabaco",
For,por,
"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.","Para 'Paquete de Productos' el Almacén, No. de Serie y No. de lote serán considerados desde el 'Packing List'. Si el Almacén y No. de lote son los mismos para todos los productos empaquetados, los valores podrán ser ingresados en la tabla principal del artículo, estos valores serán copiados al 'Packing List'",
For Quantity (Manufactured Qty) is mandatory,Por cantidad (cantidad fabricada) es obligatoria,
For Supplier,De proveedor,
For Warehouse,Para el almacén,
For Warehouse is required before Submit,Para el almacén es requerido antes de enviar,
"For an item {0}, quantity must be negative number","Para un artículo {0}, la cantidad debe ser un número negativo",
"For an item {0}, quantity must be positive number","Para un Artículo {0}, la cantidad debe ser número positivo",
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry","Para la tarjeta de trabajo {0}, solo puede realizar la entrada de stock del tipo &#39;Transferencia de material para fabricación&#39;",
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Para la línea {0} en {1}. incluir {2} en la tasa del producto, las lineas {3} también deben ser incluidas",
For row {0}: Enter Planned Qty,Para la fila {0}: ingrese cantidad planificada,
"For {0}, only credit accounts can be linked against another debit entry","Para {0}, sólo las cuentas de crédito se pueden vincular con un asiento de débito",
"For {0}, only debit accounts can be linked against another credit entry","Para {0}, sólo las cuentas de débito pueden vincular con un asiento de crédito",
Forum Activity,Actividad del foro,
Free item code is not selected,El código de artículo gratuito no está seleccionado,
Freight and Forwarding Charges,CARGOS DE TRANSITO Y TRANSPORTE,
Frequency,Frecuencia,
Friday,Viernes,
From,Desde,
From Address 1,Dirección Desde 1,
From Address 2,Dirección Desde 2,
From Currency and To Currency cannot be same,'Desde moneda - a moneda' no pueden ser las mismas,
From Date and To Date lie in different Fiscal Year,Desde la fecha hasta la fecha se encuentran en diferentes años fiscales,
From Date cannot be greater than To Date,La fecha 'Desde' no puede ser mayor que la fecha 'Hasta',
From Date must be before To Date,La fecha 'Desde' tiene que ser menor de la fecha 'Hasta',
From Date should be within the Fiscal Year. Assuming From Date = {0},La fecha 'Desde' tiene que pertenecer al rango del año fiscal = {0},
From Datetime,Desde Fecha y Hora,
From Delivery Note,Desde nota de entrega,
From Fiscal Year,Del año fiscal,
From GSTIN,De GSTIN,
From Party Name,Del Nombre de la Parte,
From Pin Code,Del código pin,
From Place,Desde el lugar,
From Range has to be less than To Range,Rango Desde tiene que ser menor que Rango Hasta,
From State,Del estado,
From Time,Desde hora,
From Time Should Be Less Than To Time,"""Desde tiempo"" debe ser menos que ""Hasta tiempo""",
From Time cannot be greater than To Time.,Tiempo Desde no puede ser mayor Tiempo Hasta,
"From a supplier under composition scheme, Exempt and Nil rated","De un proveedor bajo esquema de composición, exento y sin calificación",
From and To dates required,Desde y Hasta la fecha solicitada,
From value must be less than to value in row {0},El valor debe ser menor que el valor de la línea {0},
From {0} | {1} {2},Desde {0} | {1} {2},
Fulfillment,Cumplimiento,
Full Name,Nombre completo,
Fully Depreciated,Totalmente depreciado,
Furnitures and Fixtures,Muebles y accesorios,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Las futuras cuentas se pueden crear bajo grupos, pero las entradas se crearán dentro de las subcuentas.",
Further cost centers can be made under Groups but entries can be made against non-Groups,"Los centros de costos se pueden crear bajo grupos, pero las entradas se crearán dentro de las subcuentas.",
Further nodes can be only created under 'Group' type nodes,Sólo se pueden crear más nodos bajo nodos de tipo  ' Grupo ',
GSTIN,GSTIN,
GSTR3B-Form,Forma GSTR3B,
Gain/Loss on Asset Disposal,Ganancia/Pérdida por enajenación de activos fijos,
Gantt Chart,Diagrama Gantt,
Gantt chart of all tasks.,Diagrama Gantt de todas las tareas.,
Gender,Género,
General,General,
General Ledger,Balance general,
Generate Material Requests (MRP) and Work Orders.,Generar Solicitudes de Material (MRP) y Órdenes de Trabajo.,
Generate Secret,Generar Secret,
Get Invocies,Obtener facturas,
Get Invoices,Obtenga facturas,
Get Invoices based on Filters,Obtenga facturas basadas en filtros,
Get Items from BOM,Obtener productos desde lista de materiales (LdM),
Get Items from Healthcare Services,Obtenga artículos de los servicios de salud,
Get Items from Prescriptions,Obtenga artículos de recetas,
Get Items from Product Bundle,Obtener Productos del Paquete de Productos,
Get Suppliers,Obtener proveedores,
Get Suppliers By,Obtener proveedores por,
Get Updates,Obtener actualizaciones,
Get customers from,Obtener clientes de,
Get from Patient Encounter,Obtenga del Encuentro de Pacientes,
Getting Started,Empezando,
GitHub Sync ID,ID de Sincronización de GitHub,
Global settings for all manufacturing processes.,Configuración global para todos los procesos de producción,
Go to the Desktop and start using ERPNext,Ir al escritorio y comenzar a usar ERPNext,
GoCardless SEPA Mandate,Mandato de SEPA GoCardless,
GoCardless payment gateway settings,Configuración de pasarela de pago GoCardless,
Goal and Procedure,Meta y procedimiento,
Goals cannot be empty,Los objetivos no pueden estar vacíos,
Goods In Transit,Las mercancías en tránsito,
Goods Transferred,Bienes transferidos,
Goods and Services Tax (GST India),Impuesto de Bienes y Servicios (GST India),
Goods are already received against the outward entry {0},Las mercancías ya se reciben contra la entrada exterior {0},
Government,Gubernamental,
Grand Total,Total,
Grant,Conceder,
Grant Application,Solicitud de subvención,
Grant Leaves,Concesión de Licencias,
Grant information.,Información de la Concesión.,
Grocery,Abarrotes,
Gross Profit,Beneficio bruto,
Gross Profit %,Beneficio bruto %,
Gross Profit / Loss,Utilidad / Pérdida Bruta,
Gross Purchase Amount,Importe Bruto de Compra,
Gross Purchase Amount is mandatory,Importe Bruto de Compra es obligatorio,
Group by Account,Agrupar por cuenta,
Group by Party,Agrupar por Tercero,
Group by Voucher,Agrupar por Comprobante,
Group by Voucher (Consolidated),Agrupar por Comprobante (Consolidado),
Group node warehouse is not allowed to select for transactions,No se permite seleccionar el almacén de nodos de grupo para operaciones,
Group to Non-Group,Grupo a No-Grupo,
Group your students in batches,Agrupar sus estudiantes en lotes,
Groups,Grupos,
Guardian1 Email ID,ID de correo electrónico del Tutor1,
Guardian1 Mobile No,Móvil del Tutor1,
Guardian1 Name,Nombre del Tutor1,
Guardian2 Email ID,ID de correo electrónico del Tutor2,
Guardian2 Mobile No,Móvil del Tutor2,
Guardian2 Name,Nombre del Tutor2,
HR Manager,Gerente de recursos humanos (RRHH),
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Yearly,Semestral,
Half-Yearly,Semestral,
Hardware,Hardware,
Head of Marketing and Sales,Director de marketing y ventas,
Health Care,Asistencia médica,
Healthcare,Atención Médica,
Healthcare (beta),Atención Médica (beta),
Healthcare Practitioner,Profesional de la salud,
Healthcare Practitioner not available on {0},Profesional de la salud no está disponible en {0},
Healthcare Practitioner {0} not available on {1},El profesional de la salud {0} no está disponible en {1},
Healthcare Service Unit,Unidad de servicios de salud,
Healthcare Service Unit Tree,Árbol de unidad de servicio de salud,
Healthcare Service Unit Type,Tipo de unidad de servicio de salud,
Healthcare Services,Servicios de atención médica,
Healthcare Settings,Configuración de Atención Médica,
Help Results for,Resultados de ayuda para,
High,Alto,
High Sensitivity,Alta sensibilidad,
Hold,Mantener,
Hold Invoice,Retener la Factura,
Holiday,Vacaciones,
Holiday List,Lista de festividades,
Hotel Rooms of type {0} are unavailable on {1},Las habitaciones de hotel del tipo {0} no están disponibles en {1},
Hotels,Hoteles,
Hourly,Cada Hora,
Hours,Horas,
How Pricing Rule is applied?,¿Cómo se aplica la regla precios?,
Hub Category,Categoría de Hub,
Hub Sync ID,ID de Sincronización del Hub,
Human Resource,Recursos humanos,
Human Resources,Recursos humanos,
IGST Amount,Monto IGST,
IP Address,Dirección IP,
ITC Available (whether in full op part),ITC disponible (ya sea en la parte op completa),
ITC Reversed,ITC invertido,
Identifying Decision Makers,Identificando a los Tomadores de Decisiones,
"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Si la opción Auto Opt In está marcada, los clientes se vincularán automáticamente con el programa de lealtad en cuestión (al guardar)",
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Si existen varias reglas de precios, se les pide a los usuarios que establezcan la prioridad manualmente para resolver el conflicto.",
"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 la Regla de fijación de precios seleccionada está hecha para &#39;Tarifa&#39;, sobrescribirá la Lista de precios. La tasa de la regla de fijación de precios es la tasa final, por lo que no debe aplicarse ningún descuento adicional. Por lo tanto, en transacciones como Orden de venta, Orden de compra, etc., se obtendrá en el campo &#39;Tarifa&#39;, en lugar del campo &#39;Tarifa de lista de precios&#39;.",
"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 reglas de precios se encuentran basados en las condiciones anteriores, se aplicará prioridad. La prioridad es un número entre 0 a 20 mientras que el valor por defecto es cero (en blanco). Un número más alto significa que va a prevalecer si hay varias reglas de precios con mismas condiciones.",
"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Si el vencimiento ilimitado para los puntos de fidelidad, mantenga la duración de vencimiento vacía o 0.",
"If you have any questions, please get back to us.","Si usted tiene alguna pregunta, por favor consultenos.",
Ignore Existing Ordered Qty,Ignorar la existencia ordenada Qty,
Image,Imagen,
Image View,Vista de Imagen,
Import Data,Datos de Importacion,
Import Day Book Data,Importar datos del libro diario,
Import Log,Importar registro,
Import Master Data,Importar datos maestros,
Import in Bulk,Importación en masa,
Import of goods,Importación de bienes,
Import of services,Importación de servicios,
Importing Items and UOMs,Importar artículos y unidades de medida,
Importing Parties and Addresses,Importando Partes y Direcciones,
In Maintenance,En mantenimiento,
In Production,En producción,
In Qty,En cantidad,
In Stock Qty,En Cantidad de Stock,
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 caso del programa de varios niveles, los Clientes se asignarán automáticamente al nivel correspondiente según su gasto",
Inactive,Inactivo,
Incentives,Incentivos,
Include Default FB Entries,Incluir entradas de libro predeterminadas,
Include Exploded Items,Incluir Elementos Estallados,
Include POS Transactions,Incluir transacciones POS,
Include UOM,Incluir UOM,
Included in Gross Profit,Incluido en el beneficio bruto,
Income,Ingresos,
Income Account,Cuenta de ingresos,
Income Tax,Impuesto sobre la renta,
Incoming,Entrante,
Incoming Rate,Tasa Entrante,
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Se encontró un número incorrecto de entradas del libro mayor. Es posible que haya seleccionado una cuenta equivocada en la transacción.,
Increment cannot be 0,Incremento no puede ser 0,
Increment for Attribute {0} cannot be 0,Incremento de Atributo {0} no puede ser 0,
Indirect Expenses,Egresos indirectos,
Indirect Income,Ingresos indirectos,
Individual,Individual,
Ineligible ITC,ITC no elegible,
Initiated,Iniciado,
Inpatient Record,Registro de pacientes hospitalizados,
Installation Note,Nota de instalación,
Installation Note {0} has already been submitted,La nota de instalación {0} ya se ha validado,
Installation date cannot be before delivery date for Item {0},La fecha de instalación no puede ser antes de la fecha de entrega para el elemento {0},
Installing presets,Instalación de Presets,
Institute Abbreviation,Abreviatura del Instituto,
Institute Name,nombre del Instituto,
Instructor,Instructor,
Insufficient Stock,insuficiente Stock,
Insurance Start date should be less than Insurance End date,La fecha de comienzo del seguro debe ser menos que la fecha de fin del seguro,
Integrated Tax,Impuesto integrado,
Inter-State Supplies,Suministros interestatales,
Internet Publishing,Publicación por internet,
Intra-State Supplies,Suministros intraestatales,
Introduction,Introducción,
Invalid Attribute,Atributo no válido,
Invalid Blanket Order for the selected Customer and Item,Pedido de manta inválido para el cliente y el artículo seleccionado,
Invalid Company for Inter Company Transaction.,Empresa inválida para transacciones entre empresas.,
Invalid GSTIN! A GSTIN must have 15 characters.,GSTIN inválido! Un GSTIN debe tener 15 caracteres.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,GSTIN inválido! Los primeros 2 dígitos de GSTIN deben coincidir con el número de estado {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,GSTIN inválido! La entrada que ha ingresado no coincide con el formato de GSTIN.,
Invalid Posting Time,Tiempo de publicación no válido,
Invalid attribute {0} {1},Atributo no válido {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,La cantidad especificada es inválida para el elemento {0}. La cantidad debe ser mayor que 0 .,
Invalid reference {0} {1},Referencia inválida {0} {1},
Invalid {0},No válida {0},
Invalid {0} for Inter Company Transaction.,No válido {0} para la transacción entre empresas.,
Invalid {0}: {1},No válido {0}: {1},
Inventory,Inventario,
Investment Banking,Inversión en la banca,
Investments,Inversiones,
Invoice,FACTURA,
Invoice Created,Factura creada,
Invoice Discounting,Descuento de facturas,
Invoice Patient Registration,Registro de Factura Paciente,
Invoice Posting Date,Fecha de la factura de envío,
Invoice Type,Tipo de factura,
Invoice already created for all billing hours,Factura ya creada para todas las horas de facturación,
Invoice can't be made for zero billing hour,No se puede facturar por cero horas de facturación,
Invoice {0} no longer exists,La factura {0} ya no existe,
Invoiced,Facturado,
Invoiced Amount,Cantidad facturada,
Invoices,Facturas,
Invoices for Costumers.,Facturas para clientes.,
Inward supplies from ISD,Suministros internos de ISD,
Inward supplies liable to reverse charge (other than 1 & 2 above),Suministros internos sujetos a recargo (aparte de 1 y 2 arriba),
Is Active,Está activo,
Is Default,Es por defecto,
Is Existing Asset,Es Activo Existente,
Is Frozen,Se encuentra congelado(a),
Is Group,Es un grupo,
Issue,Incidencia,
Issue Material,Distribuir materiales,
Issued,Emitido,
Issues,Incidencias,
It is needed to fetch Item Details.,Se necesita a buscar Detalles del artículo.,
Item,Producto,
Item 1,Elemento 1,
Item 2,Elemento 2,
Item 3,Elemento 3,
Item 4,Elemento 4,
Item 5,Elemento 5,
Item Cart,Articulo de Carrito de Compras,
Item Code,Código del Producto,
Item Code cannot be changed for Serial No.,El código del producto no se puede cambiar por un número de serie,
Item Code required at Row No {0},Código del producto requerido en la línea: {0},
Item Description,Descripción del Producto,
Item Group,Grupo de Productos,
Item Group Tree,Árbol de Productos,
Item Group not mentioned in item master for item {0},El grupo del artículo no se menciona en producto maestro para el elemento {0},
Item Name,Nombre del árticulo,
Item Price added for {0} in Price List {1},Precio del producto añadido para {0} en Lista de Precios {1},
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","El precio del artículo aparece varias veces según la Lista de precios, Proveedor / Cliente, Moneda, Artículo, UOM, Cantidad y fechas.",
Item Price updated for {0} in Price List {1},Precio del producto actualizado para {0} en Lista de Precios {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,La fila de elemento {0}: {1} {2} no existe en la tabla &#39;{1}&#39; anterior,
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,"El campo de impuesto del producto {0} debe tener un tipo de cuenta de impuestos, ingresos, cargos o gastos",
Item Template,Plantilla del Artículo,
Item Variant Settings,Configuraciones de Variante de Artículo,
Item Variant {0} already exists with same attributes,Artículo Variant {0} ya existe con los mismos atributos,
Item Variants,Variantes del Producto,
Item Variants updated,Variantes del artículo actualizadas,
Item has variants.,El producto tiene variantes.,
Item must be added using 'Get Items from Purchase Receipts' button,El producto debe ser agregado utilizando el botón 'Obtener productos desde recibos de compra',
Item valuation rate is recalculated considering landed cost voucher amount,La tasa de valorización del producto se vuelve a calcular considerando los costos adicionales del voucher,
Item variant {0} exists with same attributes,Existe la variante de artículo {0} con mismos atributos,
Item {0} does not exist,El elemento {0} no existe,
Item {0} does not exist in the system or has expired,El elemento {0} no existe en el sistema o ha expirado,
Item {0} has already been returned,El producto {0} ya ha sido devuelto,
Item {0} has been disabled,Elemento {0} ha sido desactivado,
Item {0} has reached its end of life on {1},El producto {0} ha llegado al fin de la vida útil el {1},
Item {0} ignored since it is not a stock item,El producto {0} ha sido ignorado ya que no es un elemento de stock,
"Item {0} is a template, please select one of its variants","El producto {0} es una plantilla, por favor seleccione una de sus variantes",
Item {0} is cancelled,El producto {0} esta cancelado,
Item {0} is disabled,Artículo {0} está deshabilitado,
Item {0} is not a serialized Item,El producto {0} no es un producto serializado,
Item {0} is not a stock Item,El producto {0} no es un producto de stock,
Item {0} is not active or end of life has been reached,El producto {0} no está activo o ha llegado al final de la vida útil,
Item {0} is not setup for Serial Nos. Check Item master,"El producto {0} no está configurado para utilizar Números de Serie, por favor revise el artículo maestro",
Item {0} is not setup for Serial Nos. Column must be blank,"El producto {0} no está configurado para utilizar Números de Serie, la columna debe permanecer en blanco",
Item {0} must be a Fixed Asset Item,Elemento {0} debe ser un elemento de activo fijo,
Item {0} must be a Sub-contracted Item,El elemento: {0} debe ser un producto sub-contratado,
Item {0} must be a non-stock item,Elemento {0} debe ser un elemento de no-stock,
Item {0} must be a stock Item,El producto {0} debe ser un producto en stock,
Item {0} not found,Producto {0} no encontrado,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},El elemento {0} no se encuentra en 'Materias Primas Suministradas' en la tabla de la órden de compra {1},
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,El producto {0}: Con la cantidad ordenada {1} no puede ser menor que el pedido mínimo {2} (definido en el producto).,
Item: {0} does not exist in the system,El producto: {0} no existe en el sistema,
Items,Productos,
Items Filter,Artículos Filtra,
Items and Pricing,Productos y Precios,
Items for Raw Material Request,Artículos para solicitud de materia prima,
Job Card,Tarjeta de trabajo,
Job card {0} created,Tarjeta de trabajo {0} creada,
Join,Unirse,
Journal Entries {0} are un-linked,Los asientos contables {0} no están enlazados,
Journal Entry,Asiento contable,
Journal Entry {0} does not have account {1} or already matched against other voucher,El asiento {0} no tiene cuenta de {1} o ya esta enlazado con otro comprobante,
Kanban Board,Tablero Kanban,
Key Reports,Reportes clave,
LMS Activity,Actividad de LMS,
Lab Test,Prueba de laboratorio,
Lab Test Report,Informe de prueba de laboratorio,
Lab Test Sample,Muestra de prueba de laboratorio,
Lab Test Template,Plantilla de prueba de laboratorio,
Lab Test UOM,UOM de Prueba de Laboratorio,
Lab Tests and Vital Signs,Pruebas de laboratorio y signos vitales,
Lab result datetime cannot be before testing datetime,La hora del resultado de laboratorio no puede ser antes de la hora de la prueba,
Lab testing datetime cannot be before collection datetime,La hora de prueba de laboratorio no puede ser antes de la fecha de recopilación,
Label,Etiqueta,
Laboratory,Laboratorio,
Large,Grande,
Last Communication,Última comunicación,
Last Communication Date,Fecha de la última comunicación,
Last Name,Apellido,
Last Order Amount,Monto de la última orden,
Last Order Date,Fecha del último pedido,
Last Purchase Price,Último precio de compra,
Last Purchase Rate,Tasa de cambio de última compra,
Latest,Más reciente,
Latest price updated in all BOMs,Último precio actualizado en todas las Listas de Materiales,
Lead,Iniciativa,
Lead Count,Cuenta de Iniciativa,
Lead Owner,Propietario de la iniciativa,
Lead Owner cannot be same as the Lead,Propietario de Iniciativa no puede ser igual que el de la Iniciativa,
Lead Time Days,Días de iniciativa,
Lead to Quotation,Iniciativa a Presupuesto,
"Leads help you get business, add all your contacts and more as your leads","Las Iniciativas ayudan a obtener negocios, agrega todos tus contactos y más como clientes potenciales",
Learn,Aprender,
Leave Management,Gestión de ausencias,
Leave and Attendance,Ausencia y Asistencia,
Leave application {0} already exists against the student {1},Dejar la aplicación {0} ya existe contra el estudiante {1},
Leaves has been granted sucessfully,Hojas se ha otorgado con éxito,
Leaves must be allocated in multiples of 0.5,Vacaciones deben distribuirse en múltiplos de 0.5,
Ledger,Libro mayor,
Legal,Legal,
Legal Expenses,Gastos legales,
Letter Head,Membrete,
Letter Heads for print templates.,Membretes para las plantillas de impresión.,
Level,Nivel,
Liability,Obligaciones,
Limit Crossed,Límite cruzado,
Link to Material Request,Enlace a la solicitud de material,
List of all share transactions,Lista de todas las transacciones de acciones,
List of available Shareholders with folio numbers,Lista de Accionistas disponibles con números de folio,
Loading Payment System,Cargando el Sistema de Pago,
Loan,Préstamo,
Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,La fecha de inicio del préstamo y el período de préstamo son obligatorios para guardar el descuento de facturas,
Loans (Liabilities),Préstamos (Pasivos),
Loans and Advances (Assets),INVERSIONES Y PRESTAMOS,
Local,Local,
Logs for maintaining sms delivery status,Estatus de mensajes SMS entregados,
Lost,Perdido,
Lost Reasons,Razones perdidas,
Low,Bajo,
Low Sensitivity,Baja sensibilidad,
Lower Income,Ingreso menor,
Loyalty Amount,Cantidad de lealtad,
Loyalty Point Entry,Punto de fidelidad,
Loyalty Points,Puntos de lealtad,
"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Los puntos de fidelidad se calcularán a partir del gasto realizado (a través de la factura de venta), según el factor de recaudación mencionado.",
Loyalty Points: {0},Puntos de fidelidad: {0},
Loyalty Program,Programa de fidelidad,
Main,Principal,
Maintenance,Mantenimiento,
Maintenance Log,Registro de mantenimiento,
Maintenance Manager,Gerente de Mantenimiento,
Maintenance Schedule,Calendario de Mantenimiento,
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"El programa de mantenimiento no se genera para todos los productos. Por favor, haga clic en 'Generar programación'",
Maintenance Schedule {0} exists against {1},El programa de mantenimiento {0} existe en contra de {1},
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,El programa de mantenimiento {0} debe ser cancelado antes de cancelar esta orden de venta,
Maintenance Status has to be Cancelled or Completed to Submit,El Estado de Mantenimiento debe ser Cancelado o Completado para Enviar,
Maintenance User,Mantenimiento por usuario,
Maintenance Visit,Visita de mantenimiento,
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,La visita de mantenimiento {0} debe ser cancelada antes de cancelar la orden de ventas,
Maintenance start date can not be before delivery date for Serial No {0},La fecha de inicio del mantenimiento no puede ser anterior de la fecha de entrega para {0},
Make,Crear,
Make Payment,Hacer el pago,
Make project from a template.,Hacer proyecto a partir de una plantilla.,
Making Stock Entries,Crear Asientos de Stock,
Male,Masculino,
Manage Customer Group Tree.,Administrar el listado de las categorías de clientes.,
Manage Sales Partners.,Administrar socios de ventas.,
Manage Sales Person Tree.,Administrar las categoría de los socios de ventas,
Manage Territory Tree.,Administración de Territorios,
Manage your orders,Gestionar sus Pedidos,
Management,Gerencia,
Manager,Gerente,
Managing Projects,Gestión de proyectos,
Managing Subcontracting,Gestión de sub-contrataciones,
Mandatory,Obligatorio,
Mandatory field - Academic Year,Campo obligatorio - Año académico,
Mandatory field - Get Students From,Campo obligatorio - Obtener estudiantes de,
Mandatory field - Program,Campo obligatorio - Programa,
Manufacture,Manufacturar,
Manufacturer,Fabricante,
Manufacturer Part Number,Número de componente del fabricante,
Manufacturing,Manufactura,
Manufacturing Quantity is mandatory,La cantidad a producir es obligatoria,
Mapping,Mapeo,
Mapping Type,Tipo de Mapeo,
Mark Absent,Marcar Ausente,
Mark Half Day,Marcar medio día,
Mark Present,Marcar Presente,
Marketing,Márketing,
Marketing Expenses,Gastos de Publicidad,
Marketplace,Mercado,
Marketplace Error,Error de Marketplace,
Masters,Maestros,
Match Payments with Invoices,Conciliacion de pagos con facturas,
Match non-linked Invoices and Payments.,Coincidir las facturas y pagos no vinculados.,
Material,Material,
Material Consumption,Material de consumo,
Material Consumption is not set in Manufacturing Settings.,El Consumo de Material no está configurado en Configuraciones de Fabricación.,
Material Receipt,Recepción de Materiales,
Material Request,Solicitud de Materiales,
Material Request Date,Fecha de Solicitud de materiales,
Material Request No,Requisición de materiales Nº,
"Material Request not created, as quantity for Raw Materials already available.","Requerimiento de material no creado, debido a que la cantidad de materia prima ya está disponible.",
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Máxima requisición de materiales {0} es posible para el producto {1} en las órdenes de venta {2},
Material Request to Purchase Order,Requisición de materiales hacia órden de compra,
Material Request {0} is cancelled or stopped,Requisición de materiales {0} cancelada o detenida,
Material Request {0} submitted.,Requerimiento de material {0} enviado.,
Material Transfer,Transferencia de material,
Material Transferred,Material transferido,
Material to Supplier,Materiales de Proveedor,
Max discount allowed for item: {0} is {1}%,Descuento máximo permitido para el producto: {0} es {1}%,
Max: {0},Máximo: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Las muestras máximas - {0} se pueden conservar para el lote {1} y el elemento {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Las muestras máximas - {0} ya se han conservado para el lote {1} y el elemento {2} en el lote {3}.,
Maximum discount for Item {0} is {1}%,El descuento máximo para el artículo {0} es {1}%,
Medical Code,Código médico,
Medical Code Standard,Norma del Código Médico,
Medical Department,Departamento médico,
Medical Record,Registro Médico,
Medium,Medio,
Member Activity,Actividad para Miembros,
Member ID,Identificación de miembro,
Member Name,Nombre del Miembro,
Member information.,Información del Miembro.,
Membership,Membresía,
Membership Details,Detalles de Membresía,
Membership ID,ID de membresía,
Membership Type,tipo de membresía,
Memebership Details,Detalles de la membresía,
Memebership Type Details,Detalle del Tipo de Membresía,
Merge,Unir,
Merge Account,Fusionar cuenta,
Merge with Existing Account,Fusionar con Cuenta Existente,
"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","La fusión sólo es posible si las propiedades son las mismas en ambos registros. Es Grupo, Tipo Raíz, Compañía",
Message Examples,Ejemplos de Mensaje,
Message Sent,Mensaje enviado,
Method,Método,
Middle Income,Ingreso medio,
Middle Name,Segundo Nombre,
Middle Name (Optional),Segundo nombre (Opcional),
Min Amt can not be greater than Max Amt,La cantidad mínima no puede ser mayor que la cantidad máxima,
Min Qty can not be greater than Max Qty,La cantidad mínima no puede ser mayor que la cantidad maxima,
Minimum Lead Age (Days),Edad mínima de Iniciativa (días),
Miscellaneous Expenses,Gastos varios,
Missing Currency Exchange Rates for {0},Se requiere la tasa de cambio para {0},
Missing email template for dispatch. Please set one in Delivery Settings.,"Falta la plantilla de correo electrónico para el envío. Por favor, establezca uno en la configuración de entrega.",
"Missing value for Password, API Key or Shopify URL","Falta valor para la contraseña, la clave API o la URL de Shopify",
Mode of Payment,Modo de pago,
Mode of Payments,Modo de pago,
Mode of Transport,Modo de transporte,
Mode of Transportation,Modo de transporte,
Model,Modelo,
Moderate Sensitivity,Sensibilidad moderada,
Monday,Lunes,
Monthly,Mensual,
Monthly Distribution,Distribución mensual,
More,Más,
More Information,Mas información,
More...,Más...,
Motion Picture & Video,Imagén en movimiento y vídeo,
Move,mover,
Move Item,Mover elemento,
Multi Currency,Multi moneda,
Multiple Item prices.,Configuración de múltiples precios para los productos,
Multiple Loyalty Program found for the Customer. Please select manually.,Múltiple programa de lealtad encontrado para el cliente. Por favor seleccione manualmente,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Reglas Precio múltiples existe con el mismo criterio, por favor, resolver los conflictos mediante la asignación de prioridad. Reglas de precios: {0}",
Multiple Variants,Multiples Variantes,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Existen varios ejercicios para la fecha {0}. Por favor, establece la compañía en el año fiscal",
Music,Música,
Name error: {0},Nombre de error: {0},
Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nombre de la nueva cuenta. Nota: Por favor no crear cuentas de clientes y proveedores,
Name or Email is mandatory,El nombre o e-mail es obligatorio,
Nature Of Supplies,Naturaleza de los suministros,
Navigating,Navegación,
Needs Analysis,Necesita Anáisis,
Negative Quantity is not allowed,No se permiten cantidades negativas,
Negative Valuation Rate is not allowed,La valoración negativa no está permitida,
Negotiation/Review,Negociación / Revisión,
Net Asset value as on,Valor neto de activos como en,
Net Cash from Financing,Efectivo neto de financiación,
Net Cash from Investing,Efectivo neto de inversión,
Net Cash from Operations,Efectivo neto de las operaciones,
Net Change in Accounts Payable,Cambio neto en cuentas por pagar,
Net Change in Accounts Receivable,Cambio neto en las Cuentas por Cobrar,
Net Change in Cash,Cambio neto en efectivo,
Net Change in Equity,Cambio en el Patrimonio Neto,
Net Change in Fixed Asset,Cambio neto en activos fijos,
Net Change in Inventory,Cambio neto en el inventario,
Net ITC Available(A) - (B),ITC neto disponible (A) - (B),
Net Profit,Beneficio neto,
Net Total,Total neto,
New Account Name,Nombre de la nueva cuenta,
New Address,Nueva direccion,
New BOM,Nueva Solicitud de Materiales,
New Batch ID (Optional),Nuevo ID de lote (opcional),
New Batch Qty,Nueva cantidad de lote,
New Company,Nueva compañia,
New Cost Center Name,Nombre del nuevo centro de costes,
New Customer Revenue,Ingresos del nuevo cliente,
New Customers,nuevos clientes,
New Department,Nuevo departamento,
New Employee,Nuevo empleado,
New Location,Nueva ubicacion,
New Quality Procedure,Nuevo procedimiento de calidad,
New Sales Invoice,Nueva factura de venta,
New Sales Person Name,Nombre nuevo encargado de ventas,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,El número de serie no tiene almacén asignado. El almacén debe establecerse por entradas de inventario o recibos de compra,
New Warehouse Name,Almacén nuevo nombre,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nuevo límite de crédito es menor que la cantidad pendiente actual para el cliente. límite de crédito tiene que ser al menos {0},
New task,Nueva tarea,
New {0} pricing rules are created,Se crean nuevas {0} reglas de precios,
Newspaper Publishers,Editores de Periódicos,
Next,Siguiente,
Next Contact By cannot be same as the Lead Email Address,"Siguiente contacto por, no puede ser el mismo que la  dirección de correo electrónico de la Iniciativa",
Next Contact Date cannot be in the past,Siguiente Fecha de Contacto no puede ser en el pasado,
Next Steps,Próximos pasos,
No Action,Ninguna acción,
No Customers yet!,¡Aún no hay clientes!,
No Data,No hay datos,
No Delivery Note selected for Customer {},No se ha seleccionado ninguna Nota de Entrega para el Cliente {},
No Item with Barcode {0},Ningún producto con código de barras {0},
No Item with Serial No {0},Ningún producto con numero de serie {0},
No Items available for transfer,No hay Elementos disponibles para transferir,
No Items selected for transfer,No hay Elementos seleccionados para transferencia,
No Items to pack,No hay productos para empacar,
No Items with Bill of Materials to Manufacture,No hay artículos con la lista de materiales para la fabricación de,
No Items with Bill of Materials.,No hay artículos con lista de materiales.,
No Permission,Sin permiso,
No Remarks,No hay observaciones,
No Result to submit,No hay resultados para enviar,
No Student Groups created.,No se crearon grupos de estudiantes.,
No Students in,No hay estudiantes en,
No Tax Withholding data found for the current Fiscal Year.,No se encontraron datos de retención de impuestos para el año fiscal en curso.,
No Work Orders created,No se crearon Órdenes de Trabajo,
No accounting entries for the following warehouses,No hay asientos contables para los siguientes almacenes,
No contacts with email IDs found.,No se encontraron contactos con ID de correo electrónico.,
No data for this period,No hay datos para este período.,
No description given,Ninguna descripción definida,
No employees for the mentioned criteria,Sin empleados por los criterios mencionados,
No gain or loss in the exchange rate,No hay ganancia o pérdida en el tipo de cambio,
No items listed,No hay elementos en la lista,
No items to be received are overdue,No hay elementos para ser recibidos están vencidos,
No material request created,No se ha creado ninguna solicitud material,
No of Interactions,No de interacciones,
No of Shares,Nro de Acciones,
No pending Material Requests found to link for the given items.,No se encontraron solicitudes de material pendientes de vincular para los artículos dados.,
No products found,No se encontraron productos.,
No products found.,No se encuentran productos,
No record found,No se han encontraron registros,
No records found in the Invoice table,No se encontraron registros en la tabla de facturas,
No records found in the Payment table,No se encontraron registros en la tabla de pagos,
No tasks,No hay tareas,
No time sheets,No hay hojas de tiempo,
No values,Sin valores,
No {0} found for Inter Company Transactions.,No se ha encontrado {0} para transacciones entre empresas.,
Non GST Inward Supplies,Suministros internos no GST,
Non Profit,Sin fines de lucro,
Non Profit (beta),Sin fines de lucro (beta),
Non-GST outward supplies,Suministros externos no GST,
Non-Group to Group,No-Grupo a Grupo,
None,Ninguna,
None of the items have any change in quantity or value.,Ninguno de los productos tiene cambios en el valor o en la existencias.,
Nos,Nos.,
Not Available,No disponible,
Not Marked,No marcado,
Not Paid and Not Delivered,No pago y no entregado,
Not Permitted,No permitido,
Not Started,No iniciado,
Not active,No activo,
Not allow to set alternative item for the item {0},No permitir establecer un elemento alternativo para el Artículo {0},
Not allowed to update stock transactions older than {0},No tiene permisos para actualizar las transacciones de stock mayores al  {0},
Not authorized to edit frozen Account {0},No autorizado para editar la cuenta congelada {0},
Not authroized since {0} exceeds limits,No autorizado desde {0} excede los límites,
Not permitted for {0},No está permitido para {0},
"Not permitted, configure Lab Test Template as required","No permitido, configure la plantilla de prueba de laboratorio según sea necesario",
Not permitted. Please disable the Service Unit Type,No permitido. Deshabilite el Tipo de Unidad de Servicio,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),"Nota: El Debido/Fecha de referencia, excede los días de créditos concedidos para el cliente por {0} día(s)",
Note: Item {0} entered multiple times,Nota : El producto {0} ha sido ingresado varias veces,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Nota : El registro del pago no se creará hasta que la cuenta del tipo 'Banco o Cajas' sea definida,
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Nota : El sistema no verificará sobre-entregas y exceso de almacenamiento para el producto {0} ya que la cantidad es 0,
Note: There is not enough leave balance for Leave Type {0},Nota : No cuenta con suficientes días para la ausencia del tipo {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Nota: este centro de costes es una categoría. No se pueden crear asientos contables en las categorías.,
Note: {0},Nota: {0},
Notes,Notas,
Nothing is included in gross,Nada está incluido en bruto,
Nothing more to show.,Nada más para mostrar.,
Notify Customers via Email,Notificar a los clientes por correo electrónico,
Number,Número,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Número de Depreciaciones Reservadas no puede ser mayor que el número total de Depreciaciones,
Number of Interaction,Número de Interacciones,
Number of Order,Número de orden,
"Number of new Account, it will be included in the account name as a prefix","Número de Cuenta Nueva, se incluirá en el nombre de la cuenta como prefijo",
"Number of new Cost Center, it will be included in the cost center name as a prefix",Número de centro de coste nuevo: se incluirá en el nombre del centro de coste como prefijo.,
Number of root accounts cannot be less than 4,El número de cuentas raíz no puede ser inferior a 4,
Odometer,Cuentakilómetros,
Office Equipments,Equipos de oficina,
Office Maintenance Expenses,Gastos de mantenimiento de oficina,
Office Rent,Alquiler de oficina,
On Hold,En espera,
On Net Total,Sobre el total neto,
One customer can be part of only single Loyalty Program.,Un cliente puede ser parte de un solo programa de lealtad.,
Online Auctions,Subastas en línea,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",En la tabla a continuación solo se seleccionará al Estudiante Solicitante con el estado &quot;Aprobado&quot;.,
Only users with {0} role can register on Marketplace,Solo los usuarios con el rol {0} pueden registrarse en Marketplace,
Open BOM {0},Abrir la lista de materiales {0},
Open Item {0},Abrir elemento {0},
Open Notifications,Abrir notificaciones,
Open Orders,Ordenes abiertas,
Open a new ticket,Abra un nuevo ticket,
Opening,Apertura,
Opening (Cr),Apertura (Cred),
Opening (Dr),Apertura (Deb),
Opening Accounting Balance,Apertura de saldos contables,
Opening Accumulated Depreciation,Apertura de la depreciación acumulada,
Opening Accumulated Depreciation must be less than equal to {0},La apertura de la depreciación acumulada debe ser inferior o igual a {0},
Opening Balance,Saldo de apertura,
Opening Balance Equity,Apertura de Capital,
Opening Date and Closing Date should be within same Fiscal Year,Fecha de Apertura y Fecha de Cierre deben ser dentro del mismo año fiscal,
Opening Date should be before Closing Date,Fecha de apertura debe ser antes de la Fecha de Cierre,
Opening Entry Journal,Diario de Inicio de Apertura,
Opening Invoice Creation Tool,Herramienta de Apertura de Creación de Facturas,
Opening Invoice Item,Abrir el Artículo de la Factura,
Opening Invoices,Factura de Apertura,
Opening Invoices Summary,Resumen de Facturas de Apertura,
Opening Qty,Cant. de Apertura,
Opening Stock,Stock de apertura,
Opening Stock Balance,Saldo inicial de Stock,
Opening Value,Valor de apertura,
Opening {0} Invoice created,Apertura Factura {0} Creada,
Operation,Operación,
Operation Time must be greater than 0 for Operation {0},El tiempo de operación debe ser mayor que 0 para {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","La operación {0} tomará mas tiempo que la capacidad de producción de la estación {1}, por favor divida la tarea en varias operaciones",
Operations,Operaciones,
Operations cannot be left blank,Las operaciones no pueden dejarse en blanco,
Opp Count,Cant Oportunidad,
Opp/Lead %,Opp / Inviciativa %,
Opportunities,Oportunidades,
Opportunities by lead source,Oportunidades por fuente de iniciativa,
Opportunity,Oportunidad,
Opportunity Amount,Monto de Oportunidad,
"Optional. Sets company's default currency, if not specified.","Opcional. Establece moneda por defecto de la empresa, si no se especifica.",
Optional. This setting will be used to filter in various transactions.,Opcional. Esta configuración es utilizada para filtrar la cuenta de otras transacciones,
Options,Opciones,
Order Count,Cantidad de Pedidos,
Order Entry,Orden de entrada,
Order Value,Valor del pedido,
Order rescheduled for sync,Orden reprogramada para sincronización,
Order/Quot %,Orden / Cotización %,
Ordered,Ordenado/a,
Ordered Qty,Cantidad ordenada,
"Ordered Qty: Quantity ordered for purchase, but not received.","Pedido Cantidad : Cantidad a pedir para la compra, pero no recibió .",
Orders,Órdenes,
Orders released for production.,Las órdenes publicadas para la producción.,
Organization,Organización,
Organization Name,Nombre de la Organización,
Other,Otro,
Other Reports,Otros Reportes,
"Other outward supplies(Nil rated,Exempted)","Otros suministros externos (sin calificación, exentos)",
Out Qty,Cant. enviada,
Out Value,Fuera de Valor,
Out of Order,Fuera de servicio,
Outgoing,Saliente,
Outstanding,Excepcional,
Outstanding Amount,Monto pendiente,
Outstanding Amt,Saldo pendiente,
Outstanding Cheques and Deposits to clear,Cheques pendientes y Depósitos para despejar,
Outstanding for {0} cannot be less than zero ({1}),El pago pendiente para {0} no puede ser menor que cero ({1}),
Outward taxable supplies(zero rated),Suministros gravables al exterior (tasa cero),
Overdue,Atrasado,
Overlap in scoring between {0} and {1},Se superponen las puntuaciones entre {0} y {1},
Overlapping conditions found between:,Condiciones traslapadas entre:,
Owner,Propietario,
PAN,PAN,
POS,Punto de venta POS,
POS Profile,Perfil de POS,
POS Profile is required to use Point-of-Sale,Se requiere el Perfil POS para usar el Punto de Venta,
POS Profile required to make POS Entry,Se requiere un perfil de TPV para crear entradas en el punto de venta,
POS Settings,Configuración de POS,
Packed quantity must equal quantity for Item {0} in row {1},La cantidad embalada debe ser igual a la del elemento {0} en la línea {1},
Packing Slip,Lista de embalaje,
Packing Slip(s) cancelled,Lista(s) de embalaje cancelada(s),
Paid,Pagado,
Paid Amount,Cantidad Pagada,
Paid Amount cannot be greater than total negative outstanding amount {0},La cantidad pagada no puede ser superior a cantidad pendiente negativa total de {0},
Paid amount + Write Off Amount can not be greater than Grand Total,"El total de la cantidad pagada + desajuste, no puede ser mayor que el gran total",
Paid and Not Delivered,Pagados y no entregados,
Parameter,Parámetro,
Parent Item {0} must not be a Stock Item,El producto principal {0} no debe ser un artículo de stock,
Parents Teacher Meeting Attendance,Padres Maestros Asistencia a la Reunión,
Partially Depreciated,Despreciables Parcialmente,
Partially Received,Parcialmente recibido,
Party,Tercero,
Party Name,Nombre de Parte,
Party Type,Tipo de entidad,
Party Type and Party is mandatory for {0} account,Tipo de Tercero y Tercero es obligatorio para la Cuenta {0},
Party Type is mandatory,Tipo de parte es obligatorio,
Party is mandatory,Parte es obligatoria,
Past Due Date,Fecha de vencimiento anterior,
Patient,Paciente,
Patient Appointment,Cita del paciente,
Patient Encounter,Encuentro con el paciente,
Patient not found,Paciente no encontrado,
Pay Remaining,Pagar restante,
Pay {0} {1},Pagar {0} {1},
Payable,Pagadero,
Payable Account,Cuenta por pagar,
Payment,Pago,
Payment Cancelled. Please check your GoCardless Account for more details,Pago cancelado Verifique su Cuenta GoCardless para más detalles,
Payment Confirmation,Confirmación de pago,
Payment Document,Documento de pago,
Payment Due Date,Fecha de pago,
Payment Entries {0} are un-linked,Las entradas de pago {0} estan no-relacionadas,
Payment Entry,Entrada de pago,
Payment Entry already exists,Entrada de pago ya existe,
Payment Entry has been modified after you pulled it. Please pull it again.,"El registro del pago ha sido modificado antes de su modificación. Por favor, inténtelo de nuevo.",
Payment Entry is already created,Entrada de Pago ya creada,
Payment Failed. Please check your GoCardless Account for more details,Pago Fallido. Verifique su Cuenta GoCardless para más detalles,
Payment Gateway,Pasarela de Pago,
"Payment Gateway Account not created, please create one manually.","Cuenta de Pasarela de Pago no creada, por favor crear una manualmente.",
Payment Gateway Name,Nombre de Pasarela de Pago,
Payment Mode,Método de Pago,
Payment Receipt Note,Nota de Recibo de Pago,
Payment Request,Solicitud de pago,
Payment Request for {0},Solicitud de pago para {0},
Payment Tems,Términos de Pago,
Payment Term,Plazo de pago,
Payment Terms,Términos de pago,
Payment Terms Template,Plantilla de Términos de Pago,
Payment Terms based on conditions,Términos de pago basados en condiciones,
Payment Type,Tipo de pago,
"Payment Type must be one of Receive, Pay and Internal Transfer","Tipo de pago debe ser uno de Recibir, Pagar y Transferencia Interna",
Payment against {0} {1} cannot be greater than Outstanding Amount {2},El pago para {0} {1} no puede ser mayor que el pago pendiente {2},
Payment request {0} created,Pedido de pago {0} creado,
Payments,Pagos.,
Payroll Payable,Nómina por Pagar,
Payslip,Recibo de Sueldo,
Pending Activities,Actividades pendientes,
Pending Amount,Monto pendiente,
Pending Leaves,Licencias Pendientes,
Pending Qty,Cantidad pendiente,
Pending Quantity,Cantidad pendiente,
Pending Review,Pendiente de revisar,
Pending activities for today,Actividades pendientes para hoy,
Pension Funds,Fondo de pensiones,
Percentage Allocation should be equal to 100%,El porcentaje de asignación debe ser igual al 100%,
Perception Analysis,Análisis de percepción,
Period,Período,
Period Closing Entry,Asiento de cierre de período,
Period Closing Voucher,Cierre de período,
Periodicity,Periodo,
Personal Details,Datos personales,
Pharmaceutical,Farmacéutico,
Pharmaceuticals,Productos farmacéuticos,
Physician,Médico,
Place Of Supply (State/UT),Lugar de suministro (Estado / UT),
Place Order,Realizar pedido,
Plan Name,Nombre del Plan,
Plan for maintenance visits.,Plan para las visitas,
Planned Qty,Cantidad planificada,
"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Cantidad planificada: Cantidad, para la cual, la orden de trabajo se ha elevado, pero está pendiente de fabricación.",
Planning,Planificación,
Plants and Machineries,Plantas y maquinarias,
Please Set Supplier Group in Buying Settings.,"Por favor, configure el grupo de proveedores en las configuraciones de compra.",
Please add a Temporary Opening account in Chart of Accounts,Agregue una Cuenta de Apertura Temporal en el Plan de Cuentas,
Please add the account to root level Company - ,Agregue la cuenta a la empresa de nivel raíz:,
Please check Multi Currency option to allow accounts with other currency,"Por favor, consulte la opción Multi moneda para permitir cuentas con otra divisa",
Please click on 'Generate Schedule',"Por favor, haga clic en 'Generar planificación'",
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Por favor, haga clic en 'Generar planificación' para obtener el no. de serie del producto {0}",
Please click on 'Generate Schedule' to get schedule,"Por favor, haga clic en 'Generar planificación' para obtener las tareas",
Please create purchase receipt or purchase invoice for the item {0},Cree un recibo de compra o una factura de compra para el artículo {0},
Please define grade for Threshold 0%,Por favor defina el grado para el Umbral 0%,
Please enable Applicable on Booking Actual Expenses,Habilite Aplicable a los gastos reales de reserva,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Habilite la opción Aplicable en el pedido y aplicable a los gastos reales de reserva,
Please enable pop-ups,"Por favor, active los pop-ups",
Please enter 'Is Subcontracted' as Yes or No,"Por favor, introduzca si 'Es sub-contratado' o no",
Please enter API Consumer Key,Por favor ingrese la Clave de Consumidor de API,
Please enter API Consumer Secret,Por favor ingrese API Consumer Secret,
Please enter Account for Change Amount,"Por favor, introduzca la cuenta para el importe de cambio",
Please enter Approving Role or Approving User,"Por favor, introduzca 'Función para aprobar' o 'Usuario de aprobación'---",
Please enter Cost Center,"Por favor, introduzca el centro de costos",
Please enter Delivery Date,"Por favor, introduzca la Fecha de Entrega",
Please enter Employee Id of this sales person,"Por favor, Introduzca ID de empleado para este vendedor",
Please enter Expense Account,"Por favor, ingrese la Cuenta de Gastos",
Please enter Item Code to get Batch Number,"Por favor, introduzca el código de artículo para obtener el número de lote",
Please enter Item Code to get batch no,"Por favor, ingrese el código del producto para obtener el numero de lote",
Please enter Item first,"Por favor, introduzca primero un producto",
Please enter Maintaince Details first,Por favor ingrese primero los detalles del mantenimiento,
Please enter Planned Qty for Item {0} at row {1},"Por favor, ingrese la cantidad planeada para el producto {0} en la fila {1}",
Please enter Preferred Contact Email,"Por favor, introduzca el contacto de correo electrónico preferido",
Please enter Production Item first,"Por favor, ingrese primero el producto a fabricar",
Please enter Purchase Receipt first,"Por favor, ingrese primero el recibo de compra",
Please enter Receipt Document,"Por favor, introduzca recepción de documentos",
Please enter Reference date,"Por favor, introduzca la fecha de referencia",
Please enter Reqd by Date,Ingrese Requerido por Fecha,
Please enter Woocommerce Server URL,Ingrese la URL del servidor WooCommerce,
Please enter Write Off Account,"Por favor, ingrese la cuenta de desajuste",
Please enter atleast 1 invoice in the table,"Por favor, introduzca al menos 1 factura en la tabla",
Please enter company first,"Por favor, ingrese primero la compañía",
Please enter company name first,"Por favor, ingrese el nombre de la compañia",
Please enter default currency in Company Master,"Por favor, ingrese la divisa por defecto en la compañía principal",
Please enter message before sending,"Por favor, ingrese el mensaje antes de enviarlo",
Please enter parent cost center,"Por favor, ingrese el centro de costos principal",
Please enter quantity for Item {0},"Por favor, ingrese la cantidad para el producto {0}",
Please enter relieving date.,"Por favor, introduzca la fecha de relevo",
Please enter valid Financial Year Start and End Dates,"Por favor, introduzca fecha de Inicio y Fin válidas para el Año Fiscal",
Please enter valid email address,Por favor ingrese una dirección de correo electrónico válida,
Please enter {0} first,"Por favor, introduzca {0} primero",
Please fill in all the details to generate Assessment Result.,Complete todos los detalles para generar el resultado de la evaluación.,
Please identify/create Account (Group) for type - {0},Identifique / cree una cuenta (grupo) para el tipo - {0},
Please identify/create Account (Ledger) for type - {0},Identifique / cree una cuenta (Libro mayor) para el tipo - {0},
Please login as another user to register on Marketplace,Inicie sesión como otro usuario para registrarse en 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.,"Por favor, asegurate de que realmente desea borrar todas las transacciones de esta compañía. Sus datos maestros permanecerán intactos. Esta acción no se puede deshacer.",
Please mention Basic and HRA component in Company,Mencione el componente básico y HRA en la empresa,
Please mention Round Off Account in Company,"Por favor, indique la cuenta que utilizará para el redondeo",
Please mention Round Off Cost Center in Company,"Por favor, indique las centro de costos de redondeo",
Please mention no of visits required,"Por favor, indique el numero de visitas requeridas",
Please mention the Lead Name in Lead {0},Por favor mencione el nombre principal en la iniciativa {0},
Please pull items from Delivery Note,"Por favor, extraiga los productos de la nota de entrega",
Please register the SIREN number in the company information file,Registre el número SIREN en el archivo de información de la empresa,
Please remove this Invoice {0} from C-Form {1},"Por favor, elimine esta factura {0} de C-Form {1}",
Please save the patient first,Por favor guarde al paciente primero,
Please save the report again to rebuild or update,Guarde el informe nuevamente para reconstruir o actualizar,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Por favor seleccione el monto asignado, tipo de factura y número en una fila",
Please select Apply Discount On,Por favor seleccione 'Aplicar descuento en',
Please select BOM against item {0},Seleccione la Lista de Materiales contra el Artículo {0},
Please select BOM for Item in Row {0},"Por favor, seleccione la lista de materiales para el artículo en la fila {0}",
Please select BOM in BOM field for Item {0},"Por favor, seleccione la lista de materiales (LdM) para el producto {0}",
Please select Category first,"Por favor, seleccione primero la categoría",
Please select Charge Type first,"Por favor, seleccione primero el tipo de cargo",
Please select Company,"Por favor, seleccione la empresa",
Please select Company and Posting Date to getting entries,Seleccione Empresa y Fecha de publicación para obtener entradas,
Please select Company first,"Por favor, seleccione primero la compañía",
Please select Completion Date for Completed Asset Maintenance Log,Seleccione Fecha de Finalización para el Registro de Mantenimiento de Activos Completado,
Please select Completion Date for Completed Repair,Seleccione Fecha de Finalización para la Reparación Completa,
Please select Course,Por favor seleccione Curso,
Please select Drug,Por favor seleccione fármaco,
Please select Existing Company for creating Chart of Accounts,"Por favor, seleccione empresa ya existente para la creación del plan de cuentas",
Please select Healthcare Service,Por favor seleccione Servicio de Salud,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Por favor, seleccione el ítem donde ""Es Elemento de Stock"" es ""No"" y ""¿Es de artículos de venta"" es ""Sí"", y no hay otro paquete de producto",
Please select Maintenance Status as Completed or remove Completion Date,Seleccione Estado de Mantenimiento como Completado o elimine Fecha de Finalización,
Please select Party Type first,"Por favor, seleccione primero el tipo de entidad",
Please select Patient,Seleccione Paciente,
Please select Patient to get Lab Tests,Seleccione Paciente para obtener Pruebas de Laboratorio,
Please select Posting Date before selecting Party,"Por favor, seleccione fecha de publicación antes de seleccionar la Parte",
Please select Posting Date first,"Por favor, seleccione fecha de publicación primero",
Please select Price List,"Por favor, seleccione la lista de precios",
Please select Program,Seleccione el programa,
Please select Qty against item {0},Seleccione Cant. contra el Elemento {0},
Please select Sample Retention Warehouse in Stock Settings first,Seleccione primero Almacén de Retención de Muestras en la Configuración de Stock.,
Please select Start Date and End Date for Item {0},"Por favor, seleccione Fecha de inicio y Fecha de finalización para el elemento {0}",
Please select Student Admission which is mandatory for the paid student applicant,Seleccione la Admisión de Estudiante que es obligatoria para la Solicitud de Estudiante paga,
Please select a BOM,Seleccione una Lista de Materiales,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Seleccione un lote para el artículo {0}. No se puede encontrar un solo lote que cumpla este requisito,
Please select a Company,"Por favor, seleccione la compañía",
Please select a batch,Por favor seleccione un lote,
Please select a field to edit from numpad,"Por favor, seleccione un campo para editar desde numpad",
Please select a table,Por favor seleccione una mesa,
Please select a valid Date,Por favor seleccione una fecha valida,
Please select a value for {0} quotation_to {1},"Por favor, seleccione un valor para {0} quotation_to {1}",
Please select a warehouse,Por favor seleccione un almacén,
Please select at least one domain.,Seleccione al menos un dominio.,
Please select correct account,"Por favor, seleccione la cuenta correcta",
Please select date,Por favor seleccione la fecha,
Please select item code,"Por favor, seleccione el código del producto",
Please select month and year,Por favor seleccione el mes y el año,
Please select the Company,Por favor seleccione la Compañía,
Please select the Multiple Tier Program type for more than one collection rules.,Seleccione el tipo de Programa de niveles múltiples para más de una reglas de recopilación.,
Please select the assessment group other than 'All Assessment Groups',Seleccione el grupo de evaluación que no sea &#39;Todos los grupos de evaluación&#39;,
Please select the document type first,"Por favor, seleccione primero el tipo de documento",
Please select weekly off day,Por favor seleccione el día libre de la semana,
Please select {0},"Por favor, seleccione {0}",
Please select {0} first,"Por favor, seleccione primero {0}",
Please set 'Apply Additional Discount On',"Por favor, establece ""Aplicar descuento adicional en""",
Please set 'Asset Depreciation Cost Center' in Company {0},Ajuste &#39;Centro de la amortización del coste del activo&#39; en la empresa {0},
Please set 'Gain/Loss Account on Asset Disposal' in Company {0},"Por favor, fije ""Ganancia/Pérdida en la venta de activos"" en la empresa {0}.",
Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Configure la cuenta en el almacén {0} o la cuenta de inventario predeterminada en la compañía {1},
Please set B2C Limit in GST Settings.,Establezca el límite B2C en la configuración de GST.,
Please set Company,Por favor seleccione Compañía,
Please set Company filter blank if Group By is 'Company',"Por favor, ponga el filtro de la Compañía en blanco si el Grupo Por es ' Empresa'.",
Please set Default Payroll Payable Account in Company {0},"Por favor, defina la cuenta de pago de nómina predeterminada en la empresa {0}.",
Please set Depreciation related Accounts in Asset Category {0} or Company {1},Por favor establezca Cuentas relacionadas con la depreciación en la Categoría de Activo {0} o Compañía {1}.,
Please set GST Accounts in GST Settings,Configura las cuentas GST en la configuración de GST,
Please set Hotel Room Rate on {},Configura la Tarifa de la Habitación del Hotel el {},
Please set Number of Depreciations Booked,"Por favor, ajuste el número de amortizaciones Reservados",
Please set Unrealized Exchange Gain/Loss Account in Company {0},Configure la Cuenta de Ganancias / Pérdidas de Exchange no realizada en la Empresa {0},
Please set User ID field in an Employee record to set Employee Role,"Por favor, seleccione el ID y el nombre del empleado para establecer el rol.",
Please set a default Holiday List for Employee {0} or Company {1},"Por favor, establece una lista predeterminada de feriados para Empleado {0} o de su empresa {1}",
Please set account in Warehouse {0},Configura la Cuenta en Almacén {0},
Please set an active menu for Restaurant {0},Configura un menú activo para Restaurant {0},
Please set associated account in Tax Withholding Category {0} against Company {1},"Por favor, establezca una cuenta asociada en la categoría de retención de impuestos {0} contra la compañía {1}",
Please set at least one row in the Taxes and Charges Table,Establezca al menos una fila en la Tabla de impuestos y cargos,
Please set default Cash or Bank account in Mode of Payment {0},"Por favor, defina la cuenta de bancos o caja predeterminados en el método de pago {0}",
Please set default account in Salary Component {0},Por favor ajuste la cuenta por defecto en Componente Salarial {0},
Please set default customer in Restaurant Settings,"Por favor, configure el cliente predeterminado en la configuración del Restaurante",
Please set default {0} in Company {1},Por favor seleccione el valor por defecto {0} en la empresa {1},
Please set filter based on Item or Warehouse,"Por favor, configurar el filtro basado en Elemento o Almacén",
Please set leave policy for employee {0} in Employee / Grade record,Establezca la política de licencia para el empleado {0} en el registro de Empleado / Grado,
Please set recurring after saving,Por favor configura recurrente después de guardar,
Please set the Customer Address,"Por favor, configure la dirección del cliente",
Please set the Default Cost Center in {0} company.,Configure el Centro de Costo predeterminado en la empresa {0}.,
Please set the Email ID for the Student to send the Payment Request,Configure la ID de correo electrónico para que el estudiante envíe la solicitud de pago,
Please set the Item Code first,Configure primero el Código del Artículo,
Please set the Payment Schedule,Por favor establezca el calendario de pagos,
Please set {0} for address {1},Establezca {0} para la dirección {1},
Please setup Students under Student Groups,"Por favor, configure los estudiantes en grupos de estudiantes",
Please specify Company,"Por favor, especifique la compañía",
Please specify Company to proceed,"Por favor, especifique la compañía para continuar",
Please specify a valid 'From Case No.',"Por favor, especifique un numero de caso válido",
Please specify a valid Row ID for row {0} in table {1},"Por favor, especifique un ID de fila válida para la línea {0} en la tabla {1}",
Please specify at least one attribute in the Attributes table,"Por favor, especifique al menos un atributo en la tabla",
Please specify currency in Company,"Por favor, especifique la divisa en la compañía",
Please specify either Quantity or Valuation Rate or both,"Por favor indique la Cantidad o el Tipo de Valoración, o ambos",
Please specify from/to range,"Por favor, especifique el rango (desde / hasta)",
Please supply the specified items at the best possible rates,Por favor suministrar los elementos especificados en las mejores tasas posibles,
Please wait 3 days before resending the reminder.,Espere 3 días antes de volver a enviar el recordatorio.,
Point of Sale,Punto de Venta,
Point-of-Sale,Punto de Venta (POS),
Point-of-Sale Profile,Perfiles de punto de venta (POS),
Portal,Portal,
Possible Supplier,Posible proveedor,
Postal Expenses,Gastos postales,
Posting Date,Fecha de Contabilización,
Posting Date cannot be future date,Fecha de entrada no puede ser fecha futura,
Posting Time,Hora de Contabilización,
Posting date and posting time is mandatory,La fecha y hora de contabilización son obligatorias,
Posting timestamp must be after {0},Fecha y hora de contabilización deberá ser posterior a {0},
Potential opportunities for selling.,Oportunidades de venta.,
Practitioner Schedule,Horario del practicante,
Pre Sales,Pre ventas,
Preference,Preferencia,
Prescribed Procedures,Procedimientos prescritos,
Prescription,Prescripción,
Prescription Dosage,Dosis de prescripción,
Prescription Duration,Duración de la receta,
Prescriptions,Prescripciones,
Prev,Anterior,
Preview,Vista Previa,
Previous Financial Year is not closed,Ejercicio anterior no está cerrado,
Price,Precio,
Price List,Lista de precios,
Price List Currency not selected,El tipo de divisa para la lista de precios no ha sido seleccionado,
Price List Rate,Tarifa de la lista de precios,
Price List master.,Configuracion de las listas de precios,
Price List must be applicable for Buying or Selling,La lista de precios debe ser aplicable para las compras o ventas,
Price List {0} is disabled or does not exist,Lista de precios {0} está desactivada o no existe,
Price or product discount slabs are required,Se requieren losas de descuento de precio o producto,
Pricing,Precios,
Pricing Rule,Regla de precios,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","La 'regla precios' es seleccionada primero basada en el campo 'Aplicar En' que puede ser un artículo, grupo de artículos o marca.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","La regla de precios está hecha para sobrescribir la lista de precios y define un porcentaje de descuento, basado en algunos criterios.",
Pricing Rule {0} is updated,La regla de precios {0} se actualiza,
Pricing Rules are further filtered based on quantity.,Las 'reglas de precios' se pueden filtrar en base a la cantidad.,
Primary Address Details,Detalles de la Dirección Primaria,
Primary Contact Details,Detalles de Contacto Principal,
Print Format,Formatos de Impresión,
Print IRS 1099 Forms,Imprimir formularios del IRS 1099,
Print Report Card,Imprimir Boleta de Calificaciones,
Print Settings,Ajustes de Impresión,
Print and Stationery,Impresión y Papelería,
Print settings updated in respective print format,Los ajustes de impresión actualizados en formato de impresión respectivo,
Print taxes with zero amount,Imprimir impuestos con importe nulo,
Printing and Branding,Impresión y marcas,
Private Equity,Capital de Riesgo,
Procedure,Procedimiento,
Process Day Book Data,Procesar datos del libro de día,
Process Master Data,Procesar datos maestros,
Processing Chart of Accounts and Parties,Plan de procesamiento de cuentas y partes,
Processing Items and UOMs,Procesamiento de artículos y unidades de medida,
Processing Party Addresses,Procesamiento de direcciones de fiestas,
Processing Vouchers,Procesando vales,
Procurement,Obtención,
Produced Qty,Cantidad producida,
Product,Producto,
Product Bundle,Conjunto / paquete de productos,
Product Search,Búsqueda de Producto,
Production,Producción,
Production Item,Elemento de producción,
Products,Productos,
Profit and Loss,Pérdidas y ganancias,
Profit for the year,Ganancias del año,
Program,Programa,
Program in the Fee Structure and Student Group {0} are different.,El programa en la estructura de tarifas y el grupo de estudiantes {0} son diferentes.,
Program {0} does not exist.,El programa {0} no existe.,
Program: ,Programa:,
Progress % for a task cannot be more than 100.,El % de avance para una tarea no puede ser más de 100.,
Project Collaboration Invitation,Invitación a Colaboración  de Proyecto,
Project Id,ID del proyecto,
Project Manager,Gerente de proyectos,
Project Name,Nombre de Proyecto,
Project Start Date,Fecha de inicio del proyecto,
Project Status,Estado del proyecto,
Project Summary for {0},Resumen del proyecto para {0},
Project Update.,Actualización del proyecto.,
Project Value,Valor del proyecto,
Project activity / task.,Actividad del proyecto / tarea.,
Project master.,Listado de todos los proyectos.,
Project-wise data is not available for Quotation,Los datos del proyecto no están disponibles para el presupuesto,
Projected,Proyectado,
Projected Qty,Cantidad proyectada,
Projected Quantity Formula,Fórmula de cantidad proyectada,
Projects,Proyectos,
Proposal Writing,Redacción de propuestas,
Proposal/Price Quote,Propuesta / Presupuesto,
Prospecting,Prospección,
Provisional Profit / Loss (Credit),Beneficio provisional / pérdida (Crédito),
Publications,Publicaciones,
Publish Items on Website,Publicar artículos en la página web,
Published,Publicado,
Publishing,Publicación,
Purchase,Compra,
Purchase Amount,Monto de la compra,
Purchase Date,Fecha de compra,
Purchase Invoice,Factura de compra,
Purchase Invoice {0} is already submitted,La factura de compra {0} ya existe o se encuentra validada,
Purchase Manager,Gerente de compras,
Purchase Master Manager,Director de compras,
Purchase Order,Orden de compra (OC),
Purchase Order Amount,Monto de orden de compra,
Purchase Order Amount(Company Currency),Monto del pedido de compra (moneda de la compañía),
Purchase Order Date,Fecha de Orden de Compra,
Purchase Order Items not received on time,Artículos de orden de compra no recibidos a tiempo,
Purchase Order number required for Item {0},Se requiere el numero de orden de compra para el producto {0},
Purchase Order to Payment,Orden de Compra a Pago,
Purchase Order {0} is not submitted,La orden de compra {0} no se encuentra validada,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Las órdenes de compra no están permitidas para {0} debido a una tarjeta de puntuación de {1}.,
Purchase Orders given to Suppliers.,Órdenes de compra enviadas a los proveedores.,
Purchase Price List,Lista de precios para las compras,
Purchase Receipt,Recibo de compra,
Purchase Receipt {0} is not submitted,El recibo de compra {0} no esta validado,
Purchase Tax Template,Plantilla de Impuestos sobre compras,
Purchase User,Usuario de compras,
Purchase orders help you plan and follow up on your purchases,Las órdenes de compra le ayudará a planificar y dar seguimiento a sus compras,
Purchasing,Adquisitivo,
Purpose must be one of {0},Propósito debe ser uno de {0},
Qty,Cantidad,
Qty To Manufacture,Cantidad para producción,
Qty Total,Cantidad total,
Qty for {0},Cantidad de {0},
Qualification,Calificación,
Quality,Calidad,
Quality Action,Acción de calidad,
Quality Goal.,Objetivo de calidad.,
Quality Inspection,Inspeccion de calidad,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Inspección de calidad: {0} no se envía para el artículo: {1} en la fila {2},
Quality Management,Gestión de Calidad,
Quality Meeting,Reunión de calidad,
Quality Procedure,Procedimiento de calidad,
Quality Procedure.,Procedimiento de calidad.,
Quality Review,Revisión de calidad,
Quantity,Cantidad,
Quantity for Item {0} must be less than {1},La cantidad del producto {0} debe ser menor que {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},La cantidad en la línea {0} ({1}) debe ser la misma que la cantidad producida {2},
Quantity must be less than or equal to {0},La cantidad debe ser menor que o igual a {0},
Quantity must not be more than {0},La cantidad no debe ser más de {0},
Quantity required for Item {0} in row {1},Cantidad requerida para el producto {0} en la línea {1},
Quantity should be greater than 0,Cantidad debe ser mayor que 0,
Quantity to Make,Cantidad para Hacer,
Quantity to Manufacture must be greater than 0.,La cantidad a producir debe ser mayor que 0.,
Quantity to Produce,Cantidad a Producir,
Quantity to Produce can not be less than Zero,Cantidad a Producir no puede ser menor a cero,
Query Options,Opciones de Consulta,
Queued for replacing the BOM. It may take a few minutes.,En cola para reemplazar la BOM. Puede tomar unos minutos..,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,En cola para actualizar el último precio en todas las listas de materiales. Puede tomar algunos minutos.,
Quick Journal Entry,Asiento Contable Rápido,
Quot Count,Cuenta Cotización,
Quot/Lead %,Cotización / Iniciativa %,
Quotation,Cotización,
Quotation {0} is cancelled,El presupuesto {0} se ha cancelado,
Quotation {0} not of type {1},El presupuesto {0} no es del tipo {1},
Quotations,Presupuestos,
"Quotations are proposals, bids you have sent to your customers","Las citas son propuestas, las ofertas que ha enviado a sus clientes",
Quotations received from Suppliers.,Presupuestos recibidos de proveedores.,
Quotations: ,Presupuestos:,
Quotes to Leads or Customers.,Cotizaciones enviadas a los clientes u oportunidades de venta.,
RFQs are not allowed for {0} due to a scorecard standing of {1},Las solicitudes de Presupuesto (RFQs) no están permitidas para {0} debido a un puntaje de {1},
Range,Rango,
Rate,Precio,
Rate:,Tarifa:,
Rating,Clasificación,
Raw Material,Materia prima,
Raw Materials,Materias primas,
Raw Materials cannot be blank.,'Materias primas' no puede estar en blanco.,
Re-open,Re-Abrir,
Read blog,Leer blog,
Read the ERPNext Manual,Lea el Manual ERPNext,
Reading Uploaded File,Leer el archivo cargado,
Real Estate,Bienes raíces,
Reason For Putting On Hold,Motivo de Poner en Espera,
Reason for Hold,Motivo de espera,
Reason for hold: ,Motivo de la espera:,
Receipt,Recibo,
Receipt document must be submitted,documento de recepción debe ser presentado,
Receivable,A cobrar,
Receivable Account,Cuenta por cobrar,
Received,Recibido,
Received On,Recibida el,
Received Quantity,Cantidad recibida,
Received Stock Entries,Entradas de stock recibidas,
Receiver List is empty. Please create Receiver List,"La lista de receptores se encuentra vacía. Por favor, cree una lista de receptores",
Recipients,Destinatarios,
Reconcile,Conciliar,
"Record of all communications of type email, phone, chat, visit, etc.","Registro de todas las comunicaciones: correo electrónico, teléfono, chats, visitas, etc.",
Records,Registros,
Redirect URL,Redireccionar URL,
Ref,Referencia,
Ref Date,Fecha Ref.,
Reference,Referencia,
Reference #{0} dated {1},Referencia # {0} de fecha {1},
Reference Date,Fecha de referencia,
Reference Doctype must be one of {0},Doctype de referencia debe ser uno de {0},
Reference Document,Documento de referencia,
Reference Document Type,Tipo de Documento de Referencia,
Reference No & Reference Date is required for {0},Se requiere de No. de referencia y fecha para {0},
Reference No and Reference Date is mandatory for Bank transaction,Nro de referencia y fecha de referencia es obligatoria para las transacciones bancarias,
Reference No is mandatory if you entered Reference Date,El No. de referencia es obligatoria si usted introdujo la fecha,
Reference No.,Numero de referencia.,
Reference Number,Número de referencia,
Reference Type,Tipo de referencia,
"Reference: {0}, Item Code: {1} and Customer: {2}","Referencia: {0}, Código del artículo: {1} y Cliente: {2}",
References,Referencias,
Refresh Token,Actualizar Token,
Register,Registro,
Rejected,Rechazado,
Related,Relacionado,
Relation with Guardian1,Relación con Tutor1,
Relation with Guardian2,Relación con Tutor2,
Release Date,Fecha de lanzamiento,
Reload Linked Analysis,Recargar Análisis Vinculado,
Remaining,Restante,
Remaining Balance,Balance restante,
Remarks,Observaciones,
Reminder to update GSTIN Sent,Recordatorio para actualizar GSTIN Enviado,
Remove item if charges is not applicable to that item,Eliminar el elemento si los cargos no son aplicables al mismo,
Removed items with no change in quantity or value.,Elementos eliminados que no han sido afectados en cantidad y valor,
Reopen,Reabrir,
Reorder Level,Nivel de reabastecimiento,
Reorder Qty,Cantidad a reabastecer,
Repeat Customer Revenue,Ingresos de clientes recurrentes,
Repeat Customers,Clientes recurrentes,
Replace BOM and update latest price in all BOMs,Sustituya la Lista de Materiales (BOM)  y actualice el último precio en todas las listas de materiales,
Replied,Respondido,
Report,Reporte,
Report Type,Tipo de reporte,
Report Type is mandatory,El tipo de reporte es obligatorio,
Reports,Informes,
Reqd By Date,Fecha de solicitud,
Reqd Qty,Cant. Requerida,
Request for Quotation,Solicitud de Cotización,
Request for Quotations,Solicitud de Presupuestos,
Request for Raw Materials,Solicitud de materias primas,
Request for purchase.,Solicitudes de compra.,
Request for quotation.,Solicitud de cotización.,
Requested Qty,Cant. Solicitada,
"Requested Qty: Quantity requested for purchase, but not ordered.","Cantidad Solicitada: Cantidad solicitada para la compra, pero no ordenada.",
Requesting Site,Sitio solicitante,
Requesting payment against {0} {1} for amount {2},Solicitando el pago contra {0} {1} para la cantidad {2},
Requestor,Solicitante,
Required On,Solicitado el,
Required Qty,Cant. Solicitada,
Required Quantity,Cantidad requerida,
Reschedule,Reprogramar,
Research,Investigación,
Research & Development,Investigación y desarrollo,
Researcher,Investigador,
Resend Payment Email,Vuelva a enviar el pago por correo electrónico,
Reserve Warehouse,Almacén de reserva,
Reserved Qty,Cant. Reservada,
Reserved Qty for Production,Cantidad reservada para la Producción,
Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Cantidad reservada para producción: Cantidad de materias primas para fabricar artículos.,
"Reserved Qty: Quantity ordered for sale, but not delivered.","Cantidad Reservada: Cantidad a pedir a la venta , pero no entregado.",
Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,El almacén reservado es obligatorio para el artículo {0} en las materias primas suministradas,
Reserved for manufacturing,Reservado para la fabricación,
Reserved for sale,Reservado para venta,
Reserved for sub contracting,Reservado para Subcontratación,
Resistant,Resistente,
Resolve error and upload again.,Resolver error y subir de nuevo.,
Rest Of The World,Resto del mundo,
Restart Subscription,Reiniciar Suscripción,
Restaurant,Restaurante,
Result Date,Fecha del Resultado,
Result already Submitted,Resultado ya Presentado,
Resume,Reanudar,
Retail,Al por menor,
Retail & Wholesale,Ventas al por menor y por mayor,
Retail Operations,Operaciones Retail,
Retained Earnings,UTILIDADES RETENIDAS,
Retention Stock Entry,Entrada de Retención de Acciones,
Retention Stock Entry already created or Sample Quantity not provided,Entrada de Inventario de Retención ya creada o Cantidad de muestra no proporcionada,
Return,Retornar,
Return / Credit Note,Devolución / Nota de Crédito,
Return / Debit Note,Retorno / Nota de Crédito,
Returns,Devoluciones,
Reverse Journal Entry,Invertir Entrada de Diario,
Review Invitation Sent,Invitación de Revisión enviada,
Review and Action,Revisión y Acción,
Rooms Booked,Habitaciones reservadas,
Root Company,Root Company,
Root Type,Tipo de root,
Root Type is mandatory,tipo de root es obligatorio,
Root cannot be edited.,Usuario root no se puede editar.,
Root cannot have a parent cost center,la tabla raíz no puede tener un centro de costes padre / principal,
Round Off,REDONDEOS,
Rounded Total,Total redondeado,
Route,Ruta,
Row # {0}: ,Fila #{0}:,
Row # {0}: Batch No must be same as {1} {2},Fila #{0}: El lote no puede ser igual a {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Fila #{0}: No se puede devolver más de {1} para el producto {2},
Row # {0}: Rate cannot be greater than the rate used in {1} {2},Fila #{0}: La tasa no puede ser mayor que la tasa utilizada en {1} {2},
Row # {0}: Serial No is mandatory,Fila #{0}: El número de serie es obligatorio,
Row # {0}: Serial No {1} does not match with {2} {3},Fila #{0}: Número de serie {1} no coincide con {2} {3},
Row #{0} (Payment Table): Amount must be negative,Fila # {0} (Tabla de pagos): la cantidad debe ser negativa,
Row #{0} (Payment Table): Amount must be positive,Fila # {0} (Tabla de pagos): la cantidad debe ser positiva,
Row #{0}: Account {1} does not belong to company {2},Fila # {0}: La Cuenta {1} no pertenece a la Empresa {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Fila #{0}: Importe asignado no puede ser mayor que la cantidad pendiente.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Fila  #{0}: el elemento {1} no puede ser presentado, ya es {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Fila # {0}: no se puede establecer el precio si el monto es mayor que el importe facturado para el elemento {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Fila #{0}: Fecha de Liquidación {1} no puede ser anterior a la Fecha de Cheque {2},
Row #{0}: Duplicate entry in References {1} {2},Fila #{0}: Entrada duplicada en Referencias {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Fila #{0}: La fecha de entrega esperada no puede ser anterior a la fecha de la orden de compra,
Row #{0}: Item added,Fila # {0}: Elemento agregado,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Fila #{0}: Asiento {1} no tiene cuenta {2} o ya compara con otro bono,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Fila #{0}: No se permite cambiar de proveedores debido a que la Orden de Compra ya existe,
Row #{0}: Please set reorder quantity,Fila  #{0}: Configure la cantidad de pedido,
Row #{0}: Please specify Serial No for Item {1},"Fila #{0}: Por favor, especifique el número de serie para el producto {1}",
Row #{0}: Qty increased by 1,Fila # {0}: la cantidad aumentó en 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Fila #{0}: El valor debe ser el mismo que {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Fila #{0}: El tipo de documento de referencia debe ser uno de Reembolso de Gastos o Asiento Contable,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Fila #{0}: Tipo de documento de referencia debe ser uno de la orden de compra, factura de compra o de entrada de diario",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Fila #{0}: La cantidad rechazada no se puede introducir en el campo 'retorno de compras',
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Fila #{0}: Almacén Rechazado es obligatorio en la partida rechazada {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,Fila# {0}: Requerido por fecha no puede ser anterior a Fecha de Transacción,
Row #{0}: Set Supplier for item {1},Fila #{0}: Asignar Proveedor para el elemento {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Fila # {0}: El estado debe ser {1} para el descuento de facturas {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 lote {1} tiene sólo {2} de cantidad. Por favor, seleccione otro lote que tenga {3} de cantidad disponible o dividido la fila en varias filas, para entregar / emitir desde varios lotes",
Row #{0}: Timings conflicts with row {1},Línea #{0}: tiene conflictos de tiempo con la linea {1},
Row #{0}: {1} can not be negative for item {2},Fila #{0}: {1} no puede ser negativo para el elemento {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Línea #{0}: El importe no puede ser mayor que el reembolso pendiente {1}. El importe pendiente es {2},
Row {0} : Operation is required against the raw material item {1},Fila {0}: se requiere operación contra el artículo de materia prima {1},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Fila {0}# El elemento {1} no puede transferirse más de {2} a la Orden de Compra {3},
Row {0}: Activity Type is mandatory.,Fila {0}: Tipo de actividad es obligatoria.,
Row {0}: Advance against Customer must be credit,Fila {0}: Avance contra el Cliente debe ser de crédito,
Row {0}: Advance against Supplier must be debit,Fila {0}: Avance contra el Proveedor debe ser debito,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Fila {0}: cantidad asignada {1} debe ser menor o igual a la cantidad de entrada de pago {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Línea {0}: la cantidad asignada {1} debe ser menor o igual al importe pendiente de factura {2},
Row {0}: An Reorder entry already exists for this warehouse {1},Línea {0}: Una entrada de abastecimiento ya existe para el almacén {1},
Row {0}: Bill of Materials not found for the Item {1},Fila {0}: Lista de materiales no se encuentra para el elemento {1},
Row {0}: Conversion Factor is mandatory,Línea {0}: El factor de conversión es obligatorio,
Row {0}: Cost center is required for an item {1},Fila {0}: Centro de Costos es necesario para un elemento {1},
Row {0}: Credit entry can not be linked with a {1},Línea {0}: La entrada de crédito no puede vincularse con {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Fila {0}: Divisa de la lista de materiales # {1} debe ser igual a la moneda seleccionada {2},
Row {0}: Debit entry can not be linked with a {1},Línea {0}: La entrada de débito no puede vincularse con {1},
Row {0}: Depreciation Start Date is required,Fila {0}: se requiere la Fecha de Inicio de Depreciación,
Row {0}: Enter location for the asset item {1},Fila {0}: ingrese la ubicación para el artículo del activo {1},
Row {0}: Exchange Rate is mandatory,Fila {0}: Tipo de cambio es obligatorio,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Fila {0}: valor esperado después de la vida útil debe ser menor que el importe de compra bruta,
Row {0}: From Time and To Time is mandatory.,Fila {0}: Tiempo Desde y Tiempo Hasta es obligatorio.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Fila {0}: Tiempo Desde y Tiempo Hasta de {1} se solapan con {2},
Row {0}: From time must be less than to time,Fila {0}: el tiempo debe ser menor que el tiempo,
Row {0}: Hours value must be greater than zero.,Fila {0}: valor Horas debe ser mayor que cero.,
Row {0}: Invalid reference {1},Fila {0}: Referencia no válida {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Línea {0}: Socio / Cuenta no coincide con {1} / {2} en {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Línea {0}: el tipo de entidad se requiere para la cuenta por cobrar/pagar {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Línea {0}: El pago para la compra/venta siempre debe estar marcado como anticipo,
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Línea {0}: Por favor, verifique 'Es un anticipo' para la cuenta {1} si se trata de una entrada de pago anticipado.",
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Fila {0}: establezca el Motivo de exención de impuestos en Impuestos y cargos de ventas,
Row {0}: Please set the Mode of Payment in Payment Schedule,Fila {0}: establezca el modo de pago en el calendario de pagos,
Row {0}: Please set the correct code on Mode of Payment {1},Fila {0}: establezca el código correcto en Modo de pago {1},
Row {0}: Quality Inspection rejected for item {1},Fila {0}: Inspección de calidad rechazada para el artículo {1},
Row {0}: UOM Conversion Factor is mandatory,Línea {0}: El factor de conversión de (UdM) es obligatorio,
Row {0}: select the workstation against the operation {1},Fila {0}: seleccione la estación de trabajo contra la operación {1},
Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Fila {0}: {1} Números de serie necesarios para el elemento {2}. Ha proporcionado {3}.,
Row {0}: {1} must be greater than 0,Fila {0}: {1} debe ser mayor que 0,
Row {0}: {1} {2} does not match with {3},Línea {0}: {1} {2} no coincide con {3},
Row {0}:Start Date must be before End Date,Línea {0}: La fecha de inicio debe ser anterior fecha de finalización,
Rows with duplicate due dates in other rows were found: {0},Se encontraron filas con fechas de vencimiento duplicadas en otras filas: {0},
Rules for adding shipping costs.,Reglas para añadir los gastos de envío.,
Rules for applying pricing and discount.,Reglas para la aplicación de distintos precios y descuentos sobre los productos.,
S.O. No.,OV No.,
SGST Amount,Cantidad SGST,
SO Qty,Cant. OV,
Safety Stock,Stock de seguridad,
Salary,Salario.,
Salary Slip submitted for period from {0} to {1},Recibo de Salario enviado para el período de {0} a {1},
Salary Structure must be submitted before submission of Tax Ememption Declaration,La estructura salarial debe presentarse antes de la presentación de la Declaración de exención fiscal,
Sales,Ventas,
Sales Account,Cuenta de ventas,
Sales Expenses,Gastos de venta,
Sales Funnel,"""Embudo"" de ventas",
Sales Invoice,Factura de venta,
Sales Invoice {0} has already been submitted,La factura {0} ya ha sido validada,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,La factura {0} debe ser cancelada antes de cancelar esta orden ventas,
Sales Manager,Gerente de ventas,
Sales Master Manager,Gerente principal de ventas,
Sales Order,Orden de venta (OV),
Sales Order Item,Producto de la orden de venta,
Sales Order required for Item {0},Orden de venta requerida para el producto {0},
Sales Order to Payment,Órdenes de venta a pagar,
Sales Order {0} is not submitted,La órden de venta {0} no esta validada,
Sales Order {0} is not valid,Orden de venta {0} no es válida,
Sales Order {0} is {1},Orden de Venta {0} es {1},
Sales Orders,Ordenes de venta,
Sales Partner,Socio de ventas,
Sales Pipeline,Flujo de ventas,
Sales Price List,Lista de precios para la venta,
Sales Return,Devoluciones de ventas,
Sales Summary,Resumen de ventas,
Sales Tax Template,Plantilla de impuesto sobre ventas,
Sales Team,Equipo de ventas,
Sales User,Usuario de ventas,
Sales and Returns,Ventas y devoluciones,
Sales campaigns.,Campañas de venta.,
Sales orders are not available for production,Los Pedidos de Venta no están disponibles para producción,
Salutation,Saludo.,
Same Company is entered more than once,La misma Compañia es ingresada mas de una vez,
Same item cannot be entered multiple times.,El mismo artículo no se puede introducir varias veces.,
Same supplier has been entered multiple times,Mismo proveedor se ha introducido varias veces,
Sample Collection,Coleccion de muestra,
Sample quantity {0} cannot be more than received quantity {1},La Cantidad de Muestra {0} no puede ser más que la Cantidad Recibida {1},
Sanctioned,Sancionada,
Sand,Arena,
Saturday,Sábado,
Saving {0},Guardando {0},
Scan Barcode,Escanear Código de Barras,
Schedule,Programa,
Schedule Admission,Programar Admisión,
Schedule Course,Calendario de Cursos,
Schedule Date,Fecha de programa,
Schedule Discharge,Programar el Alta,
Scheduled,Programado.,
Scheduled Upto,Programado hasta,
"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Las planificaciones para superposiciones de {0}, ¿Desea continuar después de omitir las ranuras superpuestas?",
Score cannot be greater than Maximum Score,El puntaje no puede ser mayor que puntaje máximo,
Scorecards,Tarjetas de Puntuación,
Scrapped,Desechado,
Search,Buscar,
Search Results,Resultados de la búsqueda,
Search Sub Assemblies,Buscar Sub-ensamblajes,
"Search by item code, serial number, batch no or barcode","Buscar por Código de Artículo, Número de Serie, Lote o Código de Barras",
"Seasonality for setting budgets, targets etc.","Configuración general para establecer presupuestos, objetivos, etc.",
Secret Key,Llave secreta,
Secretary,Secretaria,
Section Code,Código de sección,
Secured Loans,Prestamos en garantía,
Securities & Commodity Exchanges,Cambios de valores y bienes,
Securities and Deposits,Valores y Depósitos,
See All Articles,Ver todos los artículos,
See all open tickets,Ver todos los tickets abiertos,
See past orders,Ver pedidos anteriores,
See past quotations,Ver citas pasadas,
Select,Seleccionar,
Select Alternate Item,Seleccionar artículo alternativo,
Select Attribute Values,Seleccionar valores de atributo,
Select BOM,Seleccione la lista de materiales,
Select BOM and Qty for Production,Seleccione la lista de materiales y Cantidad para Producción,
"Select BOM, Qty and For Warehouse","Seleccionar BOM, Cant. and Almacén destino",
Select Batch,Seleccione Lote,
Select Batch Numbers,Seleccionar números de lote,
Select Brand...,Seleccione una marca ...,
Select Company,Seleccionar Compañia,
Select Company...,Seleccione la compañía...,
Select Customer,Seleccione Cliente,
Select Days,Seleccionar Días,
Select Default Supplier,Elija un proveedor predeterminado,
Select DocType,Seleccione un 'DocType',
Select Fiscal Year...,Seleccione el año fiscal...,
Select Item (optional),Seleccionar Elemento (opcional),
Select Items based on Delivery Date,Seleccionar Elementos según la Fecha de Entrega,
Select Items to Manufacture,Seleccionar artículos para Fabricación,
Select Loyalty Program,Seleccionar un Programa de Lealtad,
Select Patient,Seleccionar paciente,
Select Possible Supplier,Seleccionar Posible Proveedor,
Select Quantity,Seleccione cantidad,
Select Serial Numbers,Seleccionar números de serie,
Select Target Warehouse,Seleccionar Almacén Objetivo,
Select Warehouse...,Seleccione Almacén ...,
Select an account to print in account currency,Seleccione una cuenta para imprimir en la moneda de la cuenta,
Select at least one value from each of the attributes.,Seleccione al menos un valor de cada uno de los atributos.,
Select change amount account,Seleccione la cuenta de cambio,
Select company first,Seleccione primero la Compañia,
Select students manually for the Activity based Group,Seleccionar a los estudiantes manualmente para el grupo basado en actividad,
Select the customer or supplier.,Seleccione el cliente o proveedor.,
Select the nature of your business.,Seleccione la naturaleza de su negocio.,
Select the program first,Seleccione el programa primero,
Select to add Serial Number.,Seleccione para agregar número de serie.,
Select your Domains,Seleccione sus dominios,
Selected Price List should have buying and selling fields checked.,La Lista de Precios seleccionada debe tener los campos de compra y venta marcados.,
Sell,Vender,
Selling,Ventas,
Selling Amount,Cantidad de venta,
Selling Price List,Lista de precios de venta,
Selling Rate,Precio de venta,
"Selling must be checked, if Applicable For is selected as {0}","'Ventas' debe ser seleccionada, si la opción: 'Aplicable para' esta seleccionado como {0}",
Send Grant Review Email,Enviar correo electrónico de revisión de subvención,
Send Now,Enviar ahora,
Send SMS,Enviar mensaje SMS,
Send mass SMS to your contacts,Enviar mensajes SMS masivos a sus contactos,
Sensitivity,Sensibilidad,
Sent,Enviado,
Serial No and Batch,Número de serie y de lote,
Serial No is mandatory for Item {0},No. de serie es obligatoria para el producto {0},
Serial No {0} does not belong to Batch {1},El número de serie {0} no pertenece al lote {1},
Serial No {0} does not belong to Delivery Note {1},El número de serie {0} no pertenece a la Nota de entrega {1},
Serial No {0} does not belong to Item {1},Número de serie {0} no pertenece al producto {1},
Serial No {0} does not belong to Warehouse {1},Número de serie {0} no pertenece al Almacén {1},
Serial No {0} does not belong to any Warehouse,El número de serie {0} no pertenece a ningún almacén,
Serial No {0} does not exist,El número de serie {0} no existe,
Serial No {0} has already been received,El número de serie {0} ya ha sido recibido,
Serial No {0} is under maintenance contract upto {1},Número de serie {0} tiene un contrato de mantenimiento hasta {1},
Serial No {0} is under warranty upto {1},Número de serie {0} está en garantía hasta {1},
Serial No {0} not found,Número de serie {0} no encontrado,
Serial No {0} not in stock,El número de serie {0} no se encuentra en stock,
Serial No {0} quantity {1} cannot be a fraction,"Número de serie {0}, la cantidad {1} no puede ser una fracción",
Serial Nos Required for Serialized Item {0},Número de serie requerido para el producto serializado {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Número de serie: {0} ya se hace referencia en Factura de venta: {1},
Serial Numbers,Números seriales,
Serial Numbers in row {0} does not match with Delivery Note,Los números de serie en la fila {0} no coinciden con Nota de entrega,
Serial no {0} has been already returned,El número de serie {0} ya ha sido devuelto,
Serial number {0} entered more than once,Número de serie {0} ha sido ingresado mas de una vez,
Serialized Inventory,Inventario serializado,
Series Updated,Secuencia actualizada,
Series Updated Successfully,Secuencia actualizada correctamente,
Series is mandatory,La secuencia es obligatoria,
Service,Servicios,
Service Level Agreement,Acuerdo de nivel de servicio,
Service Level Agreement.,Acuerdo de nivel de servicio.,
Service Level.,Nivel de servicio.,
Service Stop Date cannot be after Service End Date,La Fecha de Detención del Servicio no puede ser posterior a la Fecha de Finalización del Servicio,
Service Stop Date cannot be before Service Start Date,La Fecha de Detención del Servicio no puede ser anterior a la Decha de Inicio del Servicio,
Services,Servicios,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Establecer los valores predeterminados como: empresa, moneda / divisa, año fiscal, etc.",
Set Details,Establecer detalles,
Set New Release Date,Establecer nueva fecha de lanzamiento,
Set Project and all Tasks to status {0}?,¿Establecer el proyecto y todas las tareas en el estado {0}?,
Set Status,Establecer estado,
Set Tax Rule for shopping cart,Establezca la regla fiscal (Impuestos) del carrito de compras,
Set as Closed,Establecer como cerrado/a,
Set as Completed,Establecer como completado,
Set as Lost,Establecer como perdido,
Set as Open,Establecer como abierto/a,
Set default inventory account for perpetual inventory,Seleccionar la cuenta de inventario por defecto para el inventario perpetuo,
Set this if the customer is a Public Administration company.,Establezca esto si el cliente es una empresa de Administración Pública.,
Set {0} in asset category {1} or company {2},Establezca {0} en la categoría de activos {1} o en la empresa {2},
"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Ajustar Eventos a {0}, ya que el Empleado adjunto a las Personas de Venta siguientes no tiene un ID de Usuario{1}.",
Setting defaults,Establecer Valores Predeterminados,
Setting up Email,Configuración de correo,
Setting up Email Account,Configuración de cuentas de correo electrónico,
Setting up Employees,Configuración de empleados,
Setting up Taxes,Configuración de Impuestos,
Setting up company,Creando compañía,
Settings,Configuración,
"Settings for online shopping cart such as shipping rules, price list etc.","Ajustes para las compras online, normas de envío, lista de precios, etc.",
Settings for website homepage,Ajustes para la página de inicio de la página web,
Settings for website product listing,Configuraciones para el listado de productos del sitio web,
Settled,Colocado,
Setup Gateway accounts.,Configuración de cuentas de puerta de enlace.,
Setup SMS gateway settings,Configuración de pasarela SMS,
Setup cheque dimensions for printing,Configurar dimensiones de cheque para la impresión,
Setup default values for POS Invoices,Configurar los valores predeterminados para facturas de POS,
Setup mode of POS (Online / Offline),Modo de configuración de POS (Online / Offline),
Setup your Institute in ERPNext,Configura tu instituto en ERPNext,
Share Balance,Balance de Acciones,
Share Ledger,Share Ledger,
Share Management,Administración de Acciones,
Share Transfer,Transferir Acciones,
Share Type,Tipo de acción,
Shareholder,Accionista,
Ship To State,Enviar al Estado,
Shipments,Envíos,
Shipping Address,Dirección de Envío.,
"Shipping Address does not have country, which is required for this Shipping Rule","Dirección de Envío no tiene país, que se requiere para esta Regla de Envío",
Shipping rule only applicable for Buying,Regla de Envío solo aplicable para la Compra,
Shipping rule only applicable for Selling,Regla de Envío solo aplicable para Ventas,
Shopify Supplier,Proveedor de Shopify,
Shopping Cart,Carrito de compras,
Shopping Cart Settings,Ajustes de carrito de compras,
Short Name,Nombre corto,
Shortage Qty,Cantidad faltante,
Show Completed,Mostrar completado,
Show Cumulative Amount,Mostrar la cantidad acumulada,
Show Open,Mostrar abiertos,
Show Opening Entries,Mostrar entradas de apertura,
Show Payment Details,Mostrar detalles de pago,
Show Return Entries,Mostrar Entradas de Devolución,
Show Variant Attributes,Mostrar Atributos de Variantes,
Show Variants,Mostrar Variantes,
Show closed,Mostrar cerrada,
Show exploded view,Mostrar Vista Explosionada,
Show only POS,Mostrar solo POS,
Show unclosed fiscal year's P&L balances,Mostrar saldos de pérdidas y ganancias del ejercicio no cerrado,
Show zero values,Mostrar valores en cero,
Silt,Limo,
Single Variant,Variante Individual,
Single unit of an Item.,Elemento de producto,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Saltarse la asignación de permiso para los siguientes empleados, ya que los registros de Dejar asignación ya existen en su contra. {0}",
Slideshow,Presentación,
Slots for {0} are not added to the schedule,Los espacios para {0} no se han agregado a la programación,
Small,Pequeño,
Soap & Detergent,Jabón y detergente,
Software,Software.,
Software Developer,Desarrollador de Software.,
Softwares,Softwares,
Soil compositions do not add up to 100,Las Composiciones de Suelo no suman 100,
Sold,Vendido,
Some emails are invalid,Algunos correos electrónicos no son válidos,
Some information is missing,Falta información,
Something went wrong!,Algo salió mal!,
"Sorry, Serial Nos cannot be merged","Lamentablemente, los numeros de serie no se puede fusionar",
Source,Referencia,
Source Name,Nombre de la Fuente,
Source Warehouse,Almacén de origen,
Source and Target Location cannot be same,La ubicación de origen y destino no puede ser la misma,
Source and target warehouse cannot be same for row {0},"Almacenes de origen y destino no pueden ser los mismos, línea {0}",
Source and target warehouse must be different,Almacén de Origen y Destino deben ser diferentes,
Source of Funds (Liabilities),Origen de fondos (Pasivo),
Source warehouse is mandatory for row {0},El almacén de origen es obligatorio para la línea {0},
Specified BOM {0} does not exist for Item {1},La solicitud de la lista de materiales (LdM) especificada: {0} no existe para el producto {1},
Split,División,
Split Batch,Lote dividido,
Split Issue,Problema de División,
Sports,Deportes,
Standard Buying,Compra estandar,
Standard Selling,Venta estándar,
Standard contract terms for Sales or Purchase.,Contrato estándar de términos y condiciones para ventas y compras.,
Start Date,Fecha de inicio,
Start Date of Agreement can't be greater than or equal to End Date.,La fecha de inicio del acuerdo no puede ser mayor o igual que la fecha de finalización.,
Start Year,Año de inicio,
Start date should be less than end date for Item {0},La fecha de inicio debe ser menor que la fecha de finalización para el producto {0},
Start date should be less than end date for task {0},La fecha de inicio debe ser menor que la fecha de finalización para la tarea {0},
Start day is greater than end day in task '{0}',El día de inicio es mayor que el día final en la tarea &#39;{0}&#39;,
Start on,Comienza en,
State,Estado,
State/UT Tax,Impuesto estatal / UT,
Statement of Account,Estado de cuenta,
Status must be one of {0},El estado debe ser uno de {0},
Stock,Almacén,
Stock Adjustment,Ajuste de existencias,
Stock Analytics,Análisis de existencias.,
Stock Assets,Inventarios,
Stock Available,Stock disponible,
Stock Balance,Balance de Inventarios.,
Stock Entries already created for Work Order ,Entradas de stock ya creadas para Orden de trabajo,
Stock Entry,Entradas de inventario,
Stock Entry {0} created,Entrada de stock {0} creada,
Stock Entry {0} is not submitted,La entrada de stock {0} no esta validada,
Stock Expenses,Gastos sobre existencias,
Stock In Hand,Stock en mano,
Stock Items,Artículos en stock,
Stock Ledger,Mayor de Inventarios,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Entradas del Libro Mayor de Inventarios y GL están insertados en los recibos de compra seleccionados,
Stock Levels,Niveles de Stock,
Stock Liabilities,Inventarios por pagar,
Stock Qty,Cantidad de existencias,
Stock Received But Not Billed,Inventario Recibido pero no Facturado,
Stock Reports,Reportes de Stock,
Stock Summary,Resumen de Existencia,
Stock Transactions,Transacciones de Stock,
Stock UOM,Unidad de media utilizada en el almacen,
Stock Value,Valor de Inventarios,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},El balance de Inventario en el lote {0} se convertirá en negativo {1} para el producto {2} en el almacén {3},
Stock cannot be updated against Delivery Note {0},Inventario no puede actualizarse contra la nota de envío {0},
Stock cannot be updated against Purchase Receipt {0},Stock no se puede actualizar en contra recibo de compra {0},
Stock cannot exist for Item {0} since has variants,El inventario no puede existir para el pproducto {0} ya que tiene variantes,
Stock transactions before {0} are frozen,Las operaciones de inventario antes de {0} se encuentran congeladas,
Stop,Detener,
Stopped,Detenido.,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","La Órden de Trabajo detenida no se puede cancelar, desactívela primero para cancelarla",
Stores,Sucursales,
Student,Estudiante,
Student Activity,Actividad del Estudiante,
Student Address,Dirección del estudiante,
Student Admissions,Admisión de Estudiantes,
Student Attendance,Asistencia del estudiante,
"Student Batches help you track attendance, assessments and fees for students","Los Lotes de Estudiantes ayudan a realizar un seguimiento de asistencia, evaluaciones y cuotas para los estudiantes",
Student Email Address,Dirección de correo electrónico del estudiante,
Student Email ID,ID de Correo Electrónico de Estudiante,
Student Group,Grupo de estudiantes,
Student Group Strength,Fortaleza del grupo de estudiantes,
Student Group is already updated.,El grupo de estudiantes ya está actualizado.,
Student Group: ,Grupo de estudiantes:,
Student ID,Identificación del Estudiante,
Student ID: ,Identificación del Estudiante:,
Student LMS Activity,Actividad del estudiante LMS,
Student Mobile No.,Número de Móvil del Estudiante.,
Student Name,Nombre del estudiante,
Student Name: ,Nombre del estudiante:,
Student Report Card,Boleta de Calificaciones Estudiantil,
Student is already enrolled.,Estudiante ya está inscrito.,
Student {0} - {1} appears Multiple times in row {2} & {3},Estudiante {0} - {1} aparece múltiples veces en fila {2} y {3},
Student {0} does not belong to group {1},El estudiante {0} no pertenece al grupo {1},
Student {0} exist against student applicant {1},Estudiante {0} existe contra la solicitud de estudiante {1},
"Students are at the heart of the system, add all your students","Los estudiantes son el corazón del sistema, agrega todos tus estudiantes",
Sub Assemblies,Sub-Ensamblajes,
Sub Type,Subtipo,
Sub-contracting,Subcontratación,
Subcontract,Sub-contrato,
Subject,Asunto,
Submit,Validar,
Submit this Work Order for further processing.,Presente esta Órden de Trabajo para su posterior procesamiento.,
Subscription,Suscripción,
Subscription Management,Gestión de suscripciones,
Subscriptions,Suscripciones,
Subtotal,Subtotal,
Successful,Exitoso,
Successfully Reconciled,Reconciliado exitosamente,
Successfully Set Supplier,Proveedor establecido con éxito,
Successfully created payment entries,Entradas de Pago creadas con éxito,
Successfully deleted all transactions related to this company!,Todas las transacciones relacionadas con esta compañía han sido eliminadas correctamente.,
Sum of Scores of Assessment Criteria needs to be {0}.,Suma de las puntuaciones de criterios de evaluación tiene que ser {0}.,
Sum of points for all goals should be 100. It is {0},La suma de puntos para los objetivos debe ser 100. y es {0},
Summary,Resumen,
Summary for this month and pending activities,Resumen para este mes y actividades pendientes,
Summary for this week and pending activities,Resumen para esta semana y actividades pendientes,
Sunday,Domingo,
Suplier,Proveedor,
Supplier,Proveedor,
Supplier Group,Grupo de proveedores,
Supplier Group master.,Maestro del Grupo de Proveedores.,
Supplier Id,ID de Proveedor,
Supplier Invoice Date cannot be greater than Posting Date,Fecha de Factura de Proveedor no puede ser mayor que la fecha de publicación,
Supplier Invoice No,Factura de proveedor No.,
Supplier Invoice No exists in Purchase Invoice {0},Factura de proveedor No existe en la factura de compra {0},
Supplier Name,Nombre de proveedor,
Supplier Part No,Parte de Proveedor Nro,
Supplier Quotation,Presupuesto de Proveedor,
Supplier Scorecard,Calificación del Proveedor,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,El almacén del proveedor es necesario para compras sub-contratadas,
Supplier database.,Base de datos de proveedores.,
Supplier {0} not found in {1},Proveedor {0} no encontrado en {1},
Supplier(s),Proveedor(es),
Supplies made to UIN holders,Suministros hechos a los titulares de UIN,
Supplies made to Unregistered Persons,Suministros hechos a personas no registradas,
Suppliies made to Composition Taxable Persons,Suministros hechos a los sujetos pasivos de composición,
Supply Type,Tipo de Suministro,
Support,Soporte,
Support Analytics,Soporte Analítico,
Support Settings,Configuración de respaldo,
Support Tickets,Tickets de Soporte,
Support queries from customers.,Soporte técnico para los clientes,
Susceptible,Susceptible,
Sync has been temporarily disabled because maximum retries have been exceeded,La sincronización se ha desactivado temporalmente porque se han excedido los reintentos máximos,
Syntax error in condition: {0},Error de sintaxis en la condición: {0},
Syntax error in formula or condition: {0},Error de sintaxis en la fórmula o condición: {0},
System Manager,Administrador del sistema,
TDS Rate %,Tasa % de TDS,
Tap items to add them here,Toca los elementos para agregarlos aquí,
Target,Objetivo,
Target ({}),Objetivo ({}),
Target On,Objetivo en,
Target Warehouse,Inventario estimado,
Target warehouse is mandatory for row {0},El almacén de destino es obligatorio para la línea {0},
Task,Tarea,
Tasks,Tareas,
Tasks have been created for managing the {0} disease (on row {1}),Se han creado Tareas para administrar la enfermedad {0} (en la fila {1}),
Tax,Impuesto,
Tax Assets,Impuestos pagados,
Tax Category,Categoría de impuestos,
Tax Category for overriding tax rates.,Categoría de impuestos para anular las tasas impositivas.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items","Categoría de Impuesto fue cambiada a ""Total"" debido a que todos los Productos son items de no stock",
Tax ID,ID de impuesto,
Tax Id: ,Identificación del impuesto:,
Tax Rate,Procentaje del impuesto,
Tax Rule Conflicts with {0},Conflicto de impuestos con {0},
Tax Rule for transactions.,Regla de impuestos para las transacciones.,
Tax Template is mandatory.,Plantilla de impuestos es obligatorio.,
Tax Withholding rates to be applied on transactions.,Tasas de Retención de Impuestos que se aplicarán a las Transacciones.,
Tax template for buying transactions.,Plantilla de impuestos para las transacciones de compra,
Tax template for item tax rates.,Plantilla de impuestos para tasas impositivas de artículos.,
Tax template for selling transactions.,Plantilla de Impuestos para las transacciones de venta,
Taxable Amount,Base imponible,
Taxes,Impuestos,
Technology,Tecnología,
Telecommunications,Telecomunicaciones,
Telephone Expenses,Cuenta telefonica,
Television,Televisión,
Template Name,Nombre de Plantilla,
Template of terms or contract.,Configuración de las plantillas de términos y condiciones.,
Templates of supplier scorecard criteria.,Plantillas de criterios de Calificación de Proveedores.,
Templates of supplier scorecard variables.,Plantillas de variables de Calificación de Proveedores.,
Templates of supplier standings.,Plantillas de posiciones de proveedores.,
Temporarily on Hold,Temporalmente en espera,
Temporary,Temporal,
Temporary Accounts,Cuentas temporales,
Temporary Opening,Apertura temporal,
Terms and Conditions,Términos y Condiciones,
Terms and Conditions Template,Plantillas de términos y condiciones,
Territory,Territorio,
Thank you for your business!,¡Gracias por hacer negocios!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,El campo 'Desde Paquete Nro' no debe estar vacío ni su valor es menor a 1.,
The Brand,La marca,
The Item {0} cannot have Batch,El producto {0} no puede contener lotes,
The Loyalty Program isn't valid for the selected company,El Programa de Lealtad no es válido para la Empresa seleccionada,
The Payment Term at row {0} is possibly a duplicate.,El Término de Pago en la fila {0} es posiblemente un duplicado.,
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,"La fecha final de duración no puede ser anterior a la fecha de inicio Plazo. Por favor, corrija las fechas y vuelve a intentarlo.",
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 fecha final de duración no puede ser posterior a la fecha de fin de año del año académico al que está vinculado el término (año académico {}). Por favor, corrija las fechas y vuelve a intentarlo.",
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 Plazo Fecha de inicio no puede ser anterior a la fecha de inicio de año del año académico al que está vinculado el término (año académico {}). Por favor, corrija las fechas y vuelve a intentarlo.",
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,"El Año Fecha de finalización no puede ser anterior a la fecha de inicio de año. Por favor, corrija las fechas y vuelve a intentarlo.",
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.,El monto de {0} establecido en esta Solicitud de Pago es diferente del monto calculado de todos los planes de pago: {1}. Asegúrese de que esto sea correcto antes de enviar el documento.,
The field From Shareholder cannot be blank,El campo Desde accionista no puede estar en blanco,
The field To Shareholder cannot be blank,El campo Para el accionista no puede estar en blanco,
The fields From Shareholder and To Shareholder cannot be blank,Los campos De Accionista y Para Accionista no pueden estar en blanco,
The folio numbers are not matching,Los números de folio no coinciden,
The holiday on {0} is not between From Date and To Date,El día de fiesta en {0} no es entre De la fecha y Hasta la fecha,
The name of the institute for which you are setting up this system.,El nombre del instituto para el que está configurando este sistema.,
The name of your company for which you are setting up this system.,Ingrese el nombre de la compañía para configurar el sistema.,
The number of shares and the share numbers are inconsistent,El número de acciones y el número de acciones son inconsistentes,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,La cuenta de puerta de enlace de pago en el plan {0} es diferente de la cuenta de puerta de enlace de pago en esta solicitud de pago,
The selected BOMs are not for the same item,Las listas de materiales seleccionados no son para el mismo artículo,
The selected item cannot have Batch,El producto seleccionado no puede contener lotes,
The seller and the buyer cannot be the same,El vendedor y el comprador no pueden ser el mismo,
The shareholder does not belong to this company,El accionista no pertenece a esta empresa,
The shares already exist,Las acciones ya existen,
The shares don't exist with the {0},Las acciones no existen con el {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 tarea se ha puesto en cola como un trabajo en segundo plano. En caso de que haya algún problema con el procesamiento en segundo plano, el sistema agregará un comentario sobre el error en esta Reconciliación de inventario y volverá a la etapa Borrador",
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Luego las reglas de precios son filtradas por cliente, categoría de cliente, territorio, proveedor, tipo de proveedor, campaña, socio de ventas, etc.",
"There are inconsistencies between the rate, no of shares and the amount calculated","Hay inconsistencias entre la tasa, numero de acciones y la cantidad calculada",
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.,Puede haber un factor de recopilación de niveles múltiples basado en el total gastado. Pero el factor de conversión para el canje siempre será el mismo para todos los niveles.,
There can only be 1 Account per Company in {0} {1},Sólo puede existir una (1) cuenta por compañía en {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""",Sólo puede existir una 'regla de envió' con valor 0 o valor en blanco en 'para el valor',
There is not enough leave balance for Leave Type {0},No hay suficiente días para las ausencias del tipo: {0},
There is nothing to edit.,No hay nada que modificar.,
There isn't any item variant for the selected item,No hay ninguna variante de artículo para el artículo seleccionado,
"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.","Parece que hay un problema con la configuración del servidor GoCardless. No se preocupe, en caso de falla, la cantidad será reembolsada a su cuenta.",
There were errors creating Course Schedule,Hubo errores al crear el Programa del Curso,
There were errors.,Hubo errores .,
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,"Este producto es una plantilla y no se puede utilizar en las transacciones. Los atributos del producto se copiarán sobre las variantes, a menos que la opción 'No copiar' este seleccionada",
This Item is a Variant of {0} (Template).,Este elemento es una variante de {0} (plantilla).,
This Month's Summary,Resumen de este mes,
This Week's Summary,Resumen de la semana.,
This action will stop future billing. Are you sure you want to cancel this subscription?,Esta acción detendrá la facturación futura. ¿Seguro que quieres cancelar esta suscripción?,
This covers all scorecards tied to this Setup,Esto cubre todas las tarjetas de puntuación vinculadas a esta configuración,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Este documento está por encima del límite de {0} {1} para el elemento {4}. ¿Estás haciendo otra {3} contra el mismo {2}?,
This is a root account and cannot be edited.,Esta es una cuenta raíz y no se puede editar.,
This is a root customer group and cannot be edited.,Este es una categoría de cliente raíz (principal) y no se puede editar.,
This is a root department and cannot be edited.,Este es un departamento raíz y no se puede editar.,
This is a root healthcare service unit and cannot be edited.,Esta es una unidad de servicio de atención de salud raíz y no se puede editar.,
This is a root item group and cannot be edited.,Este es un grupo principal y no se puede editar.,
This is a root sales person and cannot be edited.,Este es el vendedor principal y no se puede editar.,
This is a root supplier group and cannot be edited.,Este es un grupo de proveedores raíz y no se puede editar.,
This is a root territory and cannot be edited.,Este es un territorio principal y no se puede editar.,
This is an example website auto-generated from ERPNext,Este es un sitio web de ejemplo generado automáticamente por ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Esta basado en registros contra este Vehículo. Ver el cronograma debajo para más detalles,
This is based on stock movement. See {0} for details,Esto se basa en el movimiento de stock. Ver {0} para obtener más detalles,
This is based on the Time Sheets created against this project,Esto se basa en la tabla de tiempos creada en contra de este proyecto,
This is based on the attendance of this Student,Basado en la asistencia de este estudiante,
This is based on transactions against this Customer. See timeline below for details,Esto se basa en transacciones con este cliente. Ver cronología más abajo para los detalles,
This is based on transactions against this Healthcare Practitioner.,Esto se basa en transacciones contra este profesional de la salud.,
This is based on transactions against this Patient. See timeline below for details,Esto se basa en transacciones contra este Paciente. Vea la cronología a continuación para más detalles,
This is based on transactions against this Sales Person. See timeline below for details,Esto se basa en transacciones contra este Vendedor. Ver la línea de tiempo a continuación para detalles,
This is based on transactions against this Supplier. See timeline below for details,Esto se basa en transacciones con este proveedor. Ver cronología abajo para más detalles,
This {0} conflicts with {1} for {2} {3},Este {0} conflictos con {1} de {2} {3},
Time Sheet for manufacturing.,Hoja de tiempo para la fabricación.,
Time Tracking,Seguimiento de Tiempo,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Ranura de tiempo omitida, la ranura {0} a {1} se superpone al intervalo existente {2} a {3}",
Time slots added,Horarios Añadidos,
Time(in mins),Tiempo (en minutos),
Timer,Temporizador,
Timer exceeded the given hours.,El Temporizador excedió las horas dadas.,
Timesheet,Registro de Horas,
Timesheet for tasks.,Tabla de Tiempo para las tareas.,
Timesheet {0} is already completed or cancelled,Table de Tiempo {0} ya se haya completado o cancelado,
Timesheets,Tabla de Tiempos,
"Timesheets help keep track of time, cost and billing for activites done by your team","Las Tablas de Tiempos ayudan a mantener la noción del tiempo, el coste y la facturación de actividades realizadas por su equipo",
Titles for print templates e.g. Proforma Invoice.,"Títulos para las plantillas de impresión, por ejemplo, Factura proforma.",
To,A,
To Address 1,DIrección a 1,
To Address 2,DIrección a 2,
To Bill,Por facturar,
To Date,Hasta la fecha,
To Date cannot be before From Date,La fecha no puede ser anterior a la fecha actual,
To Date cannot be less than From Date,Fecha Hasta no puede ser menor a la Fecha Desde,
To Date must be greater than From Date,Hasta la fecha debe ser mayor que Desde la fecha,
To Date should be within the Fiscal Year. Assuming To Date = {0},La fecha debe estar dentro del año fiscal. Asumiendo a la fecha = {0},
To Datetime,Para fecha y hora,
To Deliver,Para entregar,
To Deliver and Bill,Para entregar y facturar,
To Fiscal Year,Al año fiscal,
To GSTIN,Para GSTIN,
To Party Name,Para el nombre de la Parte,
To Pin Code,Al Código Postal,
To Place,Al Lugar,
To Receive,Recibir,
To Receive and Bill,Para recibir y pagar,
To State,Al Estado,
To Warehouse,Para Almacén,
To create a Payment Request reference document is required,Para crear una Solicitud de Pago se requiere el documento de referencia,
"To filter based on Party, select Party Type first","Para filtrar en base a terceros, seleccione el tipo de entidad",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Para obtener lo mejor de ERPNext, le recomendamos que se tome un tiempo y vea estos videos de ayuda.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included",Para incluir el impuesto en la línea {0} los impuestos de las lineas {1} tambien deben ser incluidos,
To make Customer based incentive schemes.,Para crear Clientes basados en  esquemas de incentivos.,
"To merge, following properties must be same for both items","Para fusionar, la siguientes propiedades deben ser las mismas en ambos productos",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Para no utilizar la regla de precios en una única transacción, todas las reglas de precios aplicables deben ser desactivadas.",
"To set this Fiscal Year as Default, click on 'Set as Default'","Para establecer este año fiscal por defecto, haga clic en 'Establecer como predeterminado'",
To view logs of Loyalty Points assigned to a Customer.,Para ver los registros de Puntos de Lealtad asignados a un Cliente.,
To {0},Para {0},
To {0} | {1} {2},Para {0} | {1} {2},
Toggle Filters,Alternar filtros,
Too many columns. Export the report and print it using a spreadsheet application.,Hay demasiadas columnas. Exportar el informe e imprimirlo mediante una aplicación de hoja de cálculo.,
Tools,Herramientas,
Total (Credit),Total (Crédito),
Total (Without Tax),Total (Sin Impuestos),
Total Achieved,Total Conseguido,
Total Actual,Total Actual,
Total Amount,Importe total,
Total Amount Credited,Monto Total Acreditado,
Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total de comisiones aplicables en la compra Tabla de recibos Los artículos deben ser iguales que las tasas totales y cargos,
Total Budget,Presupuesto total,
Total Collected: {0},Total Cobrado: {0},
Total Commission,Comisión Total,
Total Contribution Amount: {0},Monto total de la Contribución: {0},
Total Credit/ Debit Amount should be same as linked Journal Entry,La cantidad total de Crédito / Débito debe ser la misma que la entrada de diario vinculada,
Total Debit must be equal to Total Credit. The difference is {0},El débito total debe ser igual al crédito. La diferencia es {0},
Total Invoiced Amount,Total Facturado,
Total Order Considered,Total del Pedido Considerado,
Total Order Value,Valor total del pedido,
Total Outgoing,Total saliente,
Total Outstanding,Total Excepcional,
Total Outstanding Amount,Monto total pendiente,
Total Outstanding: {0},Total Pendiente: {0},
Total Paid Amount,Importe total pagado,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,El monto total del pago en el cronograma de pago debe ser igual al total / Total Redondeado,
Total Payments,Pagos totales,
Total Qty,Cantidad Total,
Total Quantity,Cantidad total,
Total Revenue,Ingresos Totales,
Total Student,Total de Estudiantes,
Total Target,Total Meta / Objetivo,
Total Tax,Impuesto Total,
Total Taxable Amount,Monto Imponible Total,
Total Taxable Value,Valor total imponible,
Total Unpaid: {0},Total no pagado: {0},
Total Variance,Total Variacion,
Total Weightage of all Assessment Criteria must be 100%,Coeficiente de ponderación total de todos los criterios de evaluación debe ser del 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Avance total ({0}) contra la Orden {1} no puede ser mayor que el Total ({2}),
Total advance amount cannot be greater than total claimed amount,El monto total anticipado no puede ser mayor que la cantidad total reclamada,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Las Licencias asignadas totales son más días que la asignación máxima del Tipo de Licencia {0} para el Empleado {1} en el período,
Total allocated leaves are more than days in the period,Total de hojas asignados son más que los días en el período,
Total allocated percentage for sales team should be 100,Porcentaje del total asignado para el equipo de ventas debe ser de 100,
Total cannot be zero,Total no puede ser cero,
Total contribution percentage should be equal to 100,El porcentaje de contribución total debe ser igual a 100,
Total hours: {0},Horas totales: {0},
Total {0} ({1}),Total {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Total de {0} para todos los elementos es cero, puede ser que usted debe cambiar en &quot;Distribuir los cargos basados en &#39;",
Total(Amt),Monto total,
Total(Qty),Total (Cantidad),
Traceability,Trazabilidad,
Track Leads by Lead Source.,Seguimiento de Oportunidades por fuente de Opotunidades.,
Transaction,Transacción,
Transaction Date,Fecha de Transacción,
Transaction Type,tipo de transacción,
Transaction currency must be same as Payment Gateway currency,Moneda de la transacción debe ser la misma que la moneda de la pasarela de pago,
Transaction not allowed against stopped Work Order {0},Transacción no permitida contra orden de trabajo detenida {0},
Transaction reference no {0} dated {1},Referencia de la transacción nro {0} fechada {1},
Transactions,Transacciones,
Transactions can only be deleted by the creator of the Company,Las transacciones sólo pueden ser borradas por el creador de la compañía,
Transfer,Transferencia,
Transfer Material,Transferencia de Material,
Transfer Type,Tipo de transferencia,
Transfer an asset from one warehouse to another,Transferir un activo de un almacén a otro,
Transfered,Transferido,
Transferred Quantity,Cantidad transferida,
Transport Receipt Date,Fecha del Recibo de Transporte,
Transport Receipt No,Recibo de Transporte Nro,
Transportation,Transporte,
Transporter ID,ID de Transportador,
Transporter Name,Nombre del Transportista,
Travel Expenses,Gastos de Viaje,
Tree Type,Tipo de arbol,
Tree of Bill of Materials,Árbol de lista de materiales,
Tree of Item Groups.,Árbol de las categorías de producto,
Tree of Procedures,Árbol de Procedimientos,
Tree of Quality Procedures.,Árbol de procedimientos de calidad.,
Tree of financial Cost Centers.,Árbol de Centros de costes financieros.,
Tree of financial accounts.,Árbol de las cuentas financieras.,
Treshold {0}% appears more than once,Umbral {0}% aparece más de una vez,
Trial Period End Date Cannot be before Trial Period Start Date,La fecha de finalización del período de prueba no puede ser anterior a la fecha de inicio del período de prueba,
Trialling,Periodo de Prueba,
Type of Business,Tipo de negocio,
Types of activities for Time Logs,Tipos de actividades para los registros de tiempo,
UOM,UOM,
UOM Conversion factor is required in row {0},El factor de conversión de la (UdM) es requerido en la línea {0},
UOM coversion factor required for UOM: {0} in Item: {1},Factor de conversion de la Unidad de Medida requerido para la Unidad de Medida {0} en el artículo: {1},
URL,URL,
Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,No se puede encontrar el tipo de cambio para {0} a {1} para la fecha clave {2}. Crea un registro de cambio de divisas manualmente,
Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,No se puede encontrar la puntuación a partir de {0}. Usted necesita tener puntuaciones en pie que cubren 0 a 100,
Unable to find variable: ,No se puede encontrar la variable:,
Unblock Invoice,Desbloquear factura,
Uncheck all,Desmarcar todos,
Unclosed Fiscal Years Profit / Loss (Credit),Sin cerrar los años fiscales ganancias / pérdidas (de crédito),
Unit,Unidad(es),
Unit of Measure,Unidad de Medida (UdM),
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Unidad de Medida (UdM) {0} se ha introducido más de una vez en la tabla de factores de conversión,
Unknown,Desconocido,
Unpaid,Impagado,
Unsecured Loans,Préstamos sin garantía,
Unsubscribe from this Email Digest,Darse de baja de este boletín por correo electrónico,
Unsubscribed,No suscrito,
Until,Hasta,
Unverified Webhook Data,Datos Webhook no Verificados,
Update Account Name / Number,Actualizar el Nombre / Número  de la Cuenta,
Update Account Number / Name,Actualizar el Número / Nombre  de la Cuenta,
Update Cost,Actualizar costos,
Update Items,Actualizar elementos,
Update Print Format,Formato de impresión de actualización,
Update bank payment dates with journals.,Actualización de las fechas de pago del banco con los registros.,
Update in progress. It might take a while.,Actualización en progreso. Podría tomar un tiempo.,
Update rate as per last purchase,Tasa de actualización según la última compra,
Update stock must be enable for the purchase invoice {0},Actualizar Stock debe estar habilitado para la Factura de Compra {0},
Updating Variants...,Actualizando Variantes ...,
Upload your letter head and logo. (you can edit them later).,Cargue su membrete y el logotipo. (Estos pueden editarse más tarde).,
Upper Income,Ingresos superior,
Use Sandbox,Utilizar Sandbox,
User,Usuario,
User ID,ID de usuario,
User ID not set for Employee {0},ID de usuario no establecido para el empleado {0},
User Remark,Observaciones,
User has not applied rule on the invoice {0},El usuario no ha aplicado la regla en la factura {0},
User {0} already exists,El usuario {0} ya existe,
User {0} created,Usuario {0} creado,
User {0} does not exist,El usuario {0} no existe,
User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,El usuario {0} no tiene ningún perfil POS predeterminado. Verifique el valor predeterminado en la fila {1} para este usuario.,
User {0} is already assigned to Employee {1},El usuario {0} ya está asignado al empleado {1},
User {0} is already assigned to Healthcare Practitioner {1},El Usuario {0} ya está asignado al profesional de la salud {1},
Users,Usuarios,
Utility Expenses,Servicios públicos,
Valid From Date must be lesser than Valid Upto Date.,Fecha desde Válida ser menor que Válido hasta la Fecha,
Valid Till,Válida hasta,
Valid from and valid upto fields are mandatory for the cumulative,Los campos válidos desde y válidos hasta son obligatorios para el acumulado,
Valid from date must be less than valid upto date,La fecha de validez debe ser inferior a la válida,
Valid till date cannot be before transaction date,La fecha de vencimiento no puede ser anterior a la fecha de la transacción,
Validity,Validez,
Validity period of this quotation has ended.,El período de validez de esta cotización ha finalizado.,
Valuation Rate,Tasa de valoración,
Valuation Rate is mandatory if Opening Stock entered,Rango de Valoración es obligatorio si se ha ingresado una Apertura de Almacén,
Valuation type charges can not marked as Inclusive,Cargos de tipo de valoración no pueden marcado como Incluido,
Value Or Qty,Valor o cantidad,
Value Proposition,Propuesta de valor,
Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Valor del atributo {0} debe estar dentro del rango de {1} a {2} en los incrementos de {3} para el artículo {4},
Value must be between {0} and {1},El valor debe estar entre {0} y {1},
"Values of exempt, nil rated and non-GST inward supplies","Valores de suministros internos exentos, nulos y no GST",
Variance,Variación,
Variance ({}),Varianza ({}),
Variant,Variante,
Variant Attributes,Atributos de Variante,
Variant Based On cannot be changed,La variante basada en no se puede cambiar,
Variant Details Report,Informe de Detalles de Variaciones,
Variant creation has been queued.,La creación de variantes se ha puesto en cola.,
Vehicle Expenses,Los gastos del vehículo,
Vehicle No,Nro de Vehículo.,
Vehicle Type,tipo de vehiculo,
Vehicle/Bus Number,Número de Vehículo/Autobús,
Venture Capital,Capital de riesgo,
View Chart of Accounts,Ver el Cuadro de Cuentas,
View Fees Records,Ver Registros de Honorarios,
View Form,Ver formulario,
View Lab Tests,Ver pruebas de laboratorio,
View Leads,Ver Iniciativas,
View Ledger,Mostrar Libro Mayor,
View Now,Ver ahora,
View a list of all the help videos,Ver una lista de todos los videos de ayuda,
View in Cart,Ver en Carrito,
Visit report for maintenance call.,Reporte de visitas para mantenimiento,
Visit the forums,Visita los foros,
Vital Signs,Signos vitales,
Volunteer,Voluntario,
Volunteer Type information.,Información de Tipo de Voluntario,
Volunteer information.,Información del Voluntario.,
Voucher #,Comprobante #,
Voucher No,Comprobante No.,
Voucher Type,Tipo de Comprobante,
WIP Warehouse,Almacén de trabajos en proceso,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,"El almacén no se puede eliminar, porque existen registros de inventario para el mismo.",
Warehouse cannot be changed for Serial No.,Almacén no se puede cambiar para el N º de serie,
Warehouse is mandatory,Almacén es Obligatorio,
Warehouse is mandatory for stock Item {0} in row {1},El almacén es obligatorio para el producto {0} en la línea {1},
Warehouse not found in the system,El almacén no se encuentra en el sistema,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Se requiere Almacén en la Fila Nro {0}, configure el Almacén Predeterminado para el Artículo {1} para la Empresa {2}",
Warehouse required for stock Item {0},El almacén es requerido para el stock del producto {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},El almacén {0} no se puede eliminar ya que existen elementos para el Producto {1},
Warehouse {0} does not belong to company {1},El almacén {0} no pertenece a la compañía {1},
Warehouse {0} does not exist,El almacén {0} no existe,
"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","El Almacén {0} no esta vinculado a ninguna cuenta, por favor mencione la cuenta en el registro del almacén o seleccione una cuenta de inventario por defecto en la compañía {1}.",
Warehouses with child nodes cannot be converted to ledger,Almacenes con nodos secundarios no pueden ser convertidos en libro mayor,
Warehouses with existing transaction can not be converted to group.,Complejos de transacción existentes no pueden ser convertidos en grupo.,
Warehouses with existing transaction can not be converted to ledger.,Complejos de depósito de transacciones existentes no se pueden convertir en el libro mayor.,
Warning,Advertencia,
Warning: Another {0} # {1} exists against stock entry {2},Advertencia: Existe otra {0} # {1} para la entrada de inventario {2},
Warning: Invalid SSL certificate on attachment {0},Advertencia: certificado SSL no válido en el apego {0},
Warning: Invalid attachment {0},Advertencia! archivo adjunto no valido: {0},
Warning: Material Requested Qty is less than Minimum Order Qty,Advertencia: La requisición de materiales es menor que la orden mínima establecida,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Advertencia: La orden de venta {0} ya existe para la orden de compra {1} del cliente,
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Advertencia: El sistema no comprobará la sobrefacturación si la cantidad del producto {0} en {1} es cero,
Warranty,Garantía,
Warranty Claim,Reclamación de Garantía,
Warranty Claim against Serial No.,Reclamación de garantía por numero de serie,
Website,Sitio Web,
Website Image should be a public file or website URL,Sitio web imagen debe ser un archivo público o URL del sitio web,
Website Image {0} attached to Item {1} cannot be found,Sitio web Imagen {0} unido al artículo {1} no se puede encontrar,
Website Manager,Administrar Página Web,
Website Settings,Configuración del Sitio Web,
Wednesday,Miércoles,
Week,Semana,
Weekly,Semanal,
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","El peso está definido,\nPor favor indique ""UDM Peso"" también",
Welcome email sent,Correo electrónico de bienvenida enviado,
Welcome to ERPNext,Bienvenido a ERPNext,
What do you need help with?,Con qué necesitas ayuda?,
What does it do?,¿A qué se dedica?,
Where manufacturing operations are carried.,Dónde se realizan las operaciones de producción,
White,Blanco,
Wire Transfer,Transferencia bancaria,
WooCommerce Products,Productos WooCommerce,
Work In Progress,Trabajo en Proceso,
Work Order,Orden de trabajo,
Work Order already created for all items with BOM,Órden de Trabajo ya creada para todos los artículos con lista de materiales,
Work Order cannot be raised against a Item Template,La Órden de Trabajo no puede levantarse contra una Plantilla de Artículo,
Work Order has been {0},La orden de trabajo ha sido {0},
Work Order not created,Orden de trabajo no creada,
Work Order {0} must be cancelled before cancelling this Sales Order,La orden de trabajo {0} debe cancelarse antes de cancelar esta orden de venta,
Work Order {0} must be submitted,La Órden de Trabajo {0} debe enviarse,
Work Orders Created: {0},Órdenes de trabajo creadas: {0},
Work-in-Progress Warehouse is required before Submit,Se requiere un almacén de trabajos en proceso antes de validar,
Working,Trabajando,
Working Hours,Horas de Trabajo,
Workstation,Puesto de trabajo,
Workstation is closed on the following dates as per Holiday List: {0},La estación de trabajo estará cerrada en las siguientes fechas según la lista de festividades: {0},
Wrapping up,Terminando,
Wrong Password,Contraseña incorrecta,
Year start date or end date is overlapping with {0}. To avoid please set company,Fecha de inicio de año o fecha de finalización  de año está traslapando con {0}. Para evitar porfavor establezca empresa,
You are not authorized to add or update entries before {0},No tiene permisos para agregar o actualizar las entradas antes de {0},
You are not authorized to set Frozen value,Usted no está autorizado para definir el 'valor congelado',
You can not change rate if BOM mentioned agianst any item,No se puede cambiar el precio si existe una Lista de materiales (LdM) en el producto,
You can not enter current voucher in 'Against Journal Entry' column,Usted no puede ingresar Comprobante Actual en la comumna 'Contra Contrada de Diario',
You can only have Plans with the same billing cycle in a Subscription,Solo puede tener Planes con el mismo ciclo de facturación en una Suscripción,
You can only redeem max {0} points in this order.,Solo puede canjear max {0} puntos en este orden.,
You can only renew if your membership expires within 30 days,Solo puede renovar si su membresía vence dentro de los 30 días,
You can only select a maximum of one option from the list of check boxes.,Solo puede seleccionar un máximo de una opción de la lista de casillas de verificación.,
You can't redeem Loyalty Points having more value than the Grand Total.,No puede canjear puntos de lealtad que tengan más valor que el total general.,
You cannot credit and debit same account at the same time,No se pueden registrar Debitos y Creditos a la misma Cuenta al mismo tiempo,
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,No se puede eliminar el año fiscal {0}. Año fiscal {0} se establece por defecto en la configuración global,
You cannot delete Project Type 'External',No puede eliminar Tipo de proyecto &#39;Externo&#39;,
You cannot edit root node.,No puedes editar el nodo raíz.,
You cannot restart a Subscription that is not cancelled.,No puede reiniciar una suscripción que no está cancelada.,
You don't have enough Loyalty Points to redeem,No tienes suficientes puntos de lealtad para canjear,
You have already assessed for the assessment criteria {}.,Ya ha evaluado los criterios de evaluación {}.,
You have already selected items from {0} {1},Ya ha seleccionado artículos de {0} {1},
You have been invited to collaborate on the project: {0},Se le ha invitado a colaborar en el proyecto: {0},
You have entered duplicate items. Please rectify and try again.,Ha introducido elementos duplicados . Por favor rectifique y vuelva a intentarlo .,
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Para poder registrarse en Marketplace, debe ser un usuario que no sea Administrador con funciones de Administrador del Sistema y Administrador de Artículos.",
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Debe ser un usuario con funciones de Administrador del sistema y Administrador de artículos para agregar usuarios a Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Debe ser un usuario con funciones de Administrador del sistema y Administrador de artículos para registrarse en Marketplace.,
You need to enable Shopping Cart,Necesita habilitar el carrito de compras,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Perderá registros de facturas generadas previamente. ¿Seguro que quieres reiniciar esta suscripción?,
Your Organization,Tu organización,
Your cart is Empty,Tu carrito esta vacío,
Your email address...,Tu correo electrónico...,
Your order is out for delivery!,¡Su pedido está listo para la entrega!,
Your tickets,Tus boletos,
ZIP Code,Código postal,
[Error],[Error],
[{0}](#Form/Item/{0}) is out of stock,[{0}](#Form/Item/{0}) está agotado,
`Freeze Stocks Older Than` should be smaller than %d days.,'Congelar stock mayor a' debe ser menor a %d días.,
based_on,basado_en,
cannot be greater than 100,No puede ser mayor de 100,
disabled user,usuario deshabilitado,
"e.g. ""Build tools for builders""",por ejemplo 'Herramientas para los constructores',
"e.g. ""Primary School"" or ""University""","por ejemplo, &quot;escuela primaria&quot; o &quot;universidad&quot;",
"e.g. Bank, Cash, Credit Card","Los métodos de pago normalmente utilizados por ejemplo: banco, efectivo, tarjeta de crédito, etc.",
hidden,oculto,
modified,modificado,
old_parent,old_parent,
on,Encendido,
{0} '{1}' is disabled,{0} '{1}' está deshabilitado,
{0} '{1}' not in Fiscal Year {2},{0} '{1}' no esta en el año fiscal {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) no puede ser mayor que la cantidad planificada ({2}) en la Orden de trabajo {3},
{0} - {1} is inactive student,{0} - {1} es un estudiante inactivo,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} no está inscrito en el lote {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} no está inscrito en el curso {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},El presupuesto {0} de la cuenta {1} para {2} {3} es {4} superior por {5},
{0} Digest,{0} Resumen,
{0} Request for {1},{0} Solicitud de {1},
{0} Result submittted,{0} Resultado enviado,
{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} números de serie son requeridos para el artículo {1}. Usted ha proporcionado {2}.,
{0} Student Groups created.,{0} Grupos de alumnos creados.,
{0} Students have been enrolled,{0} Estudiantes han sido inscritos,
{0} against Bill {1} dated {2},{0} contra la factura {1} de fecha {2},
{0} against Purchase Order {1},{0} contra la orden de compra {1},
{0} against Sales Invoice {1},{0} contra la factura de ventas {1},
{0} against Sales Order {1},{0} contra la orden de ventas {1},
{0} asset cannot be transferred,{0} activo no se puede transferir,
{0} can not be negative,{0} no puede ser negativo,
{0} created,{0} creado,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.",{0} tiene actualmente una {1} Tarjeta de Puntuación de Proveedores y las Órdenes de Compra a este Proveedor deben ser emitidas con precaución.,
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.",{0} tiene actualmente un {1} Calificación de Proveedor en pie y las solicitudes de ofertas a este proveedor deben ser emitidas con precaución.,
{0} does not belong to Company {1},{0} no pertenece a la Compañía {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} no tiene agenda del profesional médico . Asígnele al médico.,
{0} entered twice in Item Tax,{0} se ingresó dos veces en impuesto del artículo,
{0} for {1},{0} de {1},
{0} has been submitted successfully,{0} ha sido enviado con éxito,
{0} has fee validity till {1},{0} tiene validez de honorarios hasta {1},
{0} hours,{0} horas,
{0} in row {1},{0} en la fila {1},
{0} is blocked so this transaction cannot proceed,{0} está bloqueado por lo que esta transacción no puede continuar,
{0} is mandatory,{0} es obligatorio,
{0} is mandatory for Item {1},{0} es obligatorio para el artículo {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} es obligatorio. Posiblemente el registro de cambio de moneda no ha sido creado para {1} hasta {2}.,
{0} is not a stock Item,{0} no es un artículo en existencia,
{0} is not a valid Batch Number for Item {1},{0} no es un número de lote válido para el artículo {1},
{0} is not added in the table,{0} no se agrega a la tabla,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,"{0} es ahora el año fiscal predeterminado. Por favor, actualice su navegador para que el cambio surta efecto.",
{0} is on hold till {1},{0} está en espera hasta {1},
{0} item found.,Se ha encontrado {0} artículo.,
{0} items found.,Se han encontrado {0} elementos.,
{0} items in progress,{0} artículos en curso,
{0} items produced,{0} artículos producidos,
{0} must appear only once,{0} debe aparecer solo una vez,
{0} must be negative in return document,{0} debe ser negativo en el documento de devolución,
{0} not allowed to transact with {1}. Please change the Company.,{0} no se permite realizar transacciones con {1}. Por favor cambia la Compañía.,
{0} not found for item {1},{0} no encontrado para el Artículo {1},
{0} parameter is invalid,El parámetro {0} no es válido,
{0} payment entries can not be filtered by {1},{0} entradas de pago no pueden ser filtradas por {1},
{0} should be a value between 0 and 100,{0} debe ser un valor entre 0 y 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} unidades de [{1}] (# Formulario / Artículo / {1}) encontradas en [{2}] (# Formulario / Almacén / {2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} unidades de {1} necesaria en {2} sobre {3} {4} {5} para completar esta transacción.,
{0} units of {1} needed in {2} to complete this transaction.,{0} unidades de {1} necesaria en {2} para completar esta transacción.,
{0} valid serial nos for Item {1},{0} núms. de serie válidos para el artículo {1},
{0} variants created.,{0} variantes creadas,
{0} {1} created,{0} {1} creado,
{0} {1} does not exist,{0} {1} no existe,
{0} {1} has been modified. Please refresh.,{0} {1} ha sido modificado. Por favor actualice.,
{0} {1} has not been submitted so the action cannot be completed,{0} {1} no fue enviado por lo tanto la acción no   puede estar completa,
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} está asociado con {2}, pero la cuenta de grupo es {3}",
{0} {1} is cancelled or closed,{0} {1} está cancelado o cerrado,
{0} {1} is cancelled or stopped,{0} {1} está cancelado o detenido,
{0} {1} is cancelled so the action cannot be completed,{0} {1} está cancelado por lo tanto la acción no puede ser completada,
{0} {1} is closed,{0} {1} está cerrado,
{0} {1} is disabled,{0} {1} está desactivado,
{0} {1} is frozen,{0} {1} está congelado,
{0} {1} is fully billed,{0} {1} está totalmente facturado,
{0} {1} is not active,{0} {1} no está activo,
{0} {1} is not associated with {2} {3},{0} {1} no está asociado con {2} {3},
{0} {1} is not present in the parent company,{0} {1} no está presente en la empresa padre,
{0} {1} is not submitted,{0} {1} no se ha enviado,
{0} {1} is {2},{0} {1} es {2},
{0} {1} must be submitted,{0} {1} debe ser presentado,
{0} {1} not in any active Fiscal Year.,{0} {1} no en cualquier año fiscal activa.,
{0} {1} status is {2},{0} {1} el estado es {2},
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,"{0} {1}: cuenta de tipo ""Pérdidas y Ganancias"" {2} no se permite una entrada de apertura",
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Cuenta {2} no pertenece a la compañía {3},
{0} {1}: Account {2} is inactive,{0} {1}: la cuenta {2} está inactiva,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: La entrada contable para {2} sólo puede hacerse en la moneda: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Centro de Costes es obligatorio para el artículo {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}: El centros de costos es requerido para la cuenta de 'pérdidas y ganancias' {2}. Por favor, configure un centro de costos por defecto para la compañía.",
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: El centro de costos {2} no pertenece a la empresa {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: Se requiere al cliente para la cuenta por cobrar {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: O bien se requiere tarjeta de débito o crédito por importe {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: se requiere un proveedor para la cuenta por pagar {2},
{0}% Billed,{0}% facturado,
{0}% Delivered,{0}% entregado,
{0}: From {1},{0}: desde {1},
{0}: {1} does not exists,{0}: {1} no existe,
{0}: {1} not found in Invoice Details table,{0}: {1} no se encontró en la tabla de detalles de factura,
{} of {},{} de {},
Assigned To,Asignado a,
Chat,Chat,
Completed By,Completado Por,
Day of Week,Día de la semana,
"Dear System Manager,","Estimado administrador del sistema,",
Default Value,Valor predeterminado,
Email Group,Grupo de Correo Electrónico,
Email Settings,Configuración de Correo Electrónico,
Email not sent to {0} (unsubscribed / disabled),Correo electrónico no enviado a {0} (dado de baja / desactivado),
Error Message,Mensaje de error,
Fieldtype,FieldType,
Help Articles,Artículos de Ayuda,
ID,Identificador,
Import,Importar / Exportar,
Language,Idioma,
Likes,Me Gustas,
Merge with existing,Combinar con existente,
Orientation,Orientación,
Parent,Principal,
Payment Failed,Pago Fallido,
Personal,Personal,
Post,Publicar,
Postal Code,Codigo postal,
Provider,Proveedor,
Read Only,Sólo lectura,
Recipient,Beneficiario,
Reviews,Comentarios,
Sender,Remitente,
There were errors while sending email. Please try again.,"Ha ocurrido un error al enviar el correo electrónico. Por favor, inténtelo de nuevo.",
Values Changed,Valores Cambiados,
or,o,
Ageing Range 4,Rango de envejecimiento 4,
Allocated amount cannot be greater than unadjusted amount,La cantidad asignada no puede ser mayor que la cantidad no ajustada,
Allocated amount cannot be negative,La cantidad asignada no puede ser negativa,
"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","La cuenta de diferencia debe ser una cuenta de tipo activo / pasivo, ya que esta entrada de stock es una entrada de apertura",
Import Successful,Importación exitosa,
Please save first,Por favor guarde primero,
Price not found for item {0} in price list {1},Precio no encontrado para el artículo {0} en la lista de precios {1},
Warehouse Type,Tipo de almacén,
'Date' is required,Se requiere &#39;fecha&#39;,
Budgets,Presupuestos,
Bundle Qty,Cantidad del paquete,
Company GSTIN,GSTIN de la Compañía,
Company field is required,Campo de la empresa es obligatorio,
Creating Dimensions...,Creando Dimensiones ...,
Duplicate entry against the item code {0} and manufacturer {1},Entrada duplicada contra el código de artículo {0} y el fabricante {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,GSTIN inválido! La entrada que ingresó no coincide con el formato GSTIN para titulares de UIN o proveedores de servicios OIDAR no residentes,
Invoice Grand Total,Factura Gran Total,
Last carbon check date cannot be a future date,La última fecha de verificación de carbono no puede ser una fecha futura,
Make Stock Entry,Hacer entrada de stock,
Quality Feedback,Comentarios de calidad,
Quality Feedback Template,Plantilla de comentarios de calidad,
Rules for applying different promotional schemes.,Reglas para aplicar diferentes esquemas promocionales.,
Show {0},Mostrar {0},
Target Details,Detalles del objetivo,
{0} already has a Parent Procedure {1}.,{0} ya tiene un Procedimiento principal {1}.,
API,API,
Annual,Anual,
Change,Cambio,
Contact Email,Correo electrónico de contacto,
From Date,Desde la fecha,
Group By,Agrupar por,
Invalid URL,URL invalida,
Landscape,Paisaje,
Naming Series,Secuencias e identificadores,
No data to export,No hay datos para exportar,
Portrait,Retrato,
Print Heading,Imprimir Encabezado,
Scheduler Inactive,Programador inactivo,
Scheduler is inactive. Cannot import data.,El programador está inactivo. No se pueden importar datos.,
Show Document,Mostrar documento,
Show Traceback,Mostrar rastreo,
Video,Vídeo,
% Of Grand Total,% Del total general,
<b>Company</b> is a mandatory filter.,<b>La empresa</b> es un filtro obligatorio.,
<b>From Date</b> is a mandatory filter.,<b>Desde la fecha</b> es un filtro obligatorio.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>From Time</b> no puede ser posterior a <b>To Time</b> para {0},
<b>To Date</b> is a mandatory filter.,<b>Hasta la fecha</b> es un filtro obligatorio.,
A new appointment has been created for you with {0},Se ha creado una nueva cita para usted con {0},
Account Value,Valor de la cuenta,
Account is mandatory to get payment entries,La cuenta es obligatoria para obtener entradas de pago,
Account is not set for the dashboard chart {0},La cuenta no está configurada para el cuadro de mandos {0},
Account {0} does not exists in the dashboard chart {1},La cuenta {0} no existe en el cuadro de mandos {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Cuenta: <b>{0}</b> es capital Trabajo en progreso y no puede actualizarse mediante Entrada de diario,
Account: {0} is not permitted under Payment Entry,Cuenta: {0} no está permitido en Entrada de pago,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,La dimensión contable <b>{0}</b> es necesaria para la cuenta &#39;Balance&#39; {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,La dimensión contable <b>{0}</b> es necesaria para la cuenta &#39;Ganancias y pérdidas&#39; {1}.,
Accounting Masters,Maestros Contables,
Accounting Period overlaps with {0},El período contable se superpone con {0},
Activity,Actividad,
Add / Manage Email Accounts.,Añadir / Administrar cuentas de correo electrónico.,
Add Child,Agregar hijo,
Add Multiple,Añadir Multiple,
Add Participants,Agregar Participantes,
Add to Featured Item,Agregar al artículo destacado,
Add your review,Agrega tu evaluación,
Add/Edit Coupon Conditions,Agregar / editar condiciones de cupón,
Added to Featured Items,Agregado a elementos destacados,
Added {0} ({1}),Añadido: {0} ({1}),
Address Line 1,Dirección línea 1,
Addresses,Direcciones,
Admission End Date should be greater than Admission Start Date.,La fecha de finalización de la admisión debe ser mayor que la fecha de inicio de la admisión.,
All,Todos,
All bank transactions have been created,Se han creado todas las transacciones bancarias.,
All the depreciations has been booked,Todas las amortizaciones han sido registradas,
Allow Resetting Service Level Agreement from Support Settings.,Permitir restablecer el acuerdo de nivel de servicio desde la configuración de soporte.,
Amount of {0} is required for Loan closure,Se requiere una cantidad de {0} para el cierre del préstamo,
Applied Coupon Code,Código de cupón aplicado,
Apply Coupon Code,Aplicar código de cupón,
Appointment Booking,Reserva de citas,
"As there are existing transactions against item {0}, you can not change the value of {1}","Como hay transacciones existentes contra el elemento {0}, no se puede cambiar el valor de {1}",
Asset Id,ID de activo,
Asset Value,Valor del activo,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,El ajuste del valor del activo no puede contabilizarse antes de la fecha de compra del activo <b>{0}</b> .,
Asset {0} does not belongs to the custodian {1},El activo {0} no pertenece al custodio {1},
Asset {0} does not belongs to the location {1},El activo {0} no pertenece a la ubicación {1},
At least one of the Applicable Modules should be selected,Se debe seleccionar al menos uno de los módulos aplicables.,
Atleast one asset has to be selected.,Al menos un activo tiene que ser seleccionado.,
Authentication Failed,Autenticación fallida,
Automatic Reconciliation,Reconciliación automática,
Available For Use Date,Disponible para uso Fecha,
Available Stock,Stock disponible,
"Available quantity is {0}, you need {1}","La cantidad disponible es {0}, necesita {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,Herramienta de comparación de lista de materiales,
BOM recursion: {0} cannot be child of {1},Recurrencia de la lista de materiales: {0} no puede ser hijo de {1},
BOM recursion: {0} cannot be parent or child of {1},Recurrencia de la lista de materiales: {0} no puede ser padre o hijo de {1},
Back to Messages,Regresar a Mensajes,
Bank Data mapper doesn't exist,El mapeador de datos bancarios no existe,
Bank Details,Detalles del banco,
Bank account '{0}' has been synchronized,La cuenta bancaria &#39;{0}&#39; se ha sincronizado,
Bank account {0} already exists and could not be created again,La cuenta bancaria {0} ya existe y no se pudo volver a crear,
Bank accounts added,Cuentas bancarias agregadas,
Batch no is required for batched item {0},No se requiere lote para el artículo en lote {0},
Billing Date,Fecha de facturación,
Billing Interval Count cannot be less than 1,El recuento de intervalos de facturación no puede ser inferior a 1,
Blue,Azul,
Book,Libro,
Book Appointment,Reservar una cita,
Brand,Marca,
Browse,Explorar,
Call Connected,Llamar conectado,
Call Disconnected,Llamada desconectada,
Call Missed,Llamada perdida,
Call Summary,Resumen de llamadas,
Call Summary Saved,Resumen de llamada guardado,
Cancelled,Cancelado,
Cannot Calculate Arrival Time as Driver Address is Missing.,No se puede calcular la hora de llegada porque falta la dirección del conductor.,
Cannot Optimize Route as Driver Address is Missing.,No se puede optimizar la ruta porque falta la dirección del conductor.,
Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,No se puede completar la tarea {0} ya que su tarea dependiente {1} no se ha completado / cancelado.,
Cannot find a matching Item. Please select some other value for {0}.,No se peude encontrar un artículo que concuerde.  Por favor seleccione otro valor para {0}.,
"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","No se puede facturar en exceso el artículo {0} en la fila {1} más de {2}. Para permitir una facturación excesiva, configure la asignación en la Configuración de cuentas",
"Capacity Planning Error, planned start time can not be same as end time","Error de planificación de capacidad, la hora de inicio planificada no puede ser la misma que la hora de finalización",
Categories,Categorias,
Changes in {0},Cambios en {0},
Chart,Gráfico,
Choose a corresponding payment,Elige un pago correspondiente,
Click on the link below to verify your email and confirm the appointment,Haga clic en el enlace a continuación para verificar su correo electrónico y confirmar la cita,
Close,Cerrar,
Communication,Comunicaciones,
Compact Item Print,Impresión Compacta de Artículo,
Company,Compañía,
Company of asset {0} and purchase document {1} doesn't matches.,La empresa del activo {0} y el documento de compra {1} no coinciden.,
Compare BOMs for changes in Raw Materials and Operations,Comparar listas de materiales para cambios en materias primas y operaciones,
Compare List function takes on list arguments,La función Comparar lista toma argumentos de la lista,
Complete,Completar,
Completed,Completado,
Completed Quantity,Cantidad completada,
Connect your Exotel Account to ERPNext and track call logs,Conecte su cuenta de Exotel a ERPNext y rastree los registros de llamadas,
Connect your bank accounts to ERPNext,Conecte sus cuentas bancarias a ERPNext,
Contact Seller,Contacte al vendedor,
Continue,Continuar,
Cost Center: {0} does not exist,Centro de coste: {0} no existe,
Couldn't Set Service Level Agreement {0}.,No se pudo establecer el acuerdo de nivel de servicio {0}.,
Country,País,
Country Code in File does not match with country code set up in the system,El código de país en el archivo no coincide con el código de país configurado en el sistema,
Create New Contact,Crear nuevo contacto,
Create New Lead,Crear nuevo cliente potencial,
Create Pick List,Crear lista de selección,
Create Quality Inspection for Item {0},Crear inspección de calidad para el artículo {0},
Creating Accounts...,Creando Cuentas ...,
Creating bank entries...,Creando asientos bancarios ...,
Credit limit is already defined for the Company {0},El límite de crédito ya está definido para la Compañía {0},
Ctrl + Enter to submit,Ctrl + Enter para enviar,
Ctrl+Enter to submit,Ctrl + Enter para enviar,
Currency,Divisa / Moneda,
Current Status,Estado actual,
Customer PO,PO del cliente,
Daily,Diario,
Date,Fecha,
Date of Birth cannot be greater than Joining Date.,La fecha de nacimiento no puede ser mayor que la fecha de ingreso.,
Dear,Estimado,
Default,Predeterminado,
Define coupon codes.,Definir códigos de cupones.,
Delayed Days,Días retrasados,
Delete,Eliminar,
Delivered Quantity,Cantidad entregada,
Delivery Notes,Notas de entrega,
Depreciated Amount,Monto Depreciado,
Description,Descripción,
Designation,Puesto,
Difference Value,Valor de diferencia,
Dimension Filter,Filtro de dimensiones,
Disabled,Deshabilitado,
Disbursement and Repayment,Desembolso y reembolso,
Distance cannot be greater than 4000 kms,La distancia no puede ser mayor a 4000 kms,
Do you want to submit the material request,¿Quieres enviar la solicitud de material?,
Doctype,Doctype,
Document {0} successfully uncleared,El documento {0} no se ha borrado correctamente,
Download Template,Descargar plantilla,
Dr,Dr.,
Due Date,Fecha de vencimiento,
Duplicate,Duplicar,
Duplicate Project with Tasks,Proyecto duplicado con tareas,
Duplicate project has been created,Se ha creado un proyecto duplicado.,
E-Way Bill JSON can only be generated from a submitted document,E-Way Bill JSON solo se puede generar a partir de un documento enviado,
E-Way Bill JSON can only be generated from submitted document,E-Way Bill JSON solo se puede generar a partir del documento enviado,
E-Way Bill JSON cannot be generated for Sales Return as of now,e-Way Bill JSON no se puede generar para devolución de ventas a partir de ahora,
ERPNext could not find any matching payment entry,ERPNext no pudo encontrar ninguna entrada de pago coincidente,
Earliest Age,Edad más temprana,
Edit Details,Editar detalles,
Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Se requiere la identificación del transportista GST o el número de vehículo si el modo de transporte es carretera,
Email,Correo electrónico,
Email Campaigns,Campañas de correo electrónico,
Employee ID is linked with another instructor,La identificación del empleado está vinculada con otro instructor,
Employee Tax and Benefits,Impuestos y beneficios a empleados,
Employee is required while issuing Asset {0},Se requiere empleado al emitir el activo {0},
Employee {0} does not belongs to the company {1},El empleado {0} no pertenece a la empresa {1},
Enable Auto Re-Order,Habilitar reordenamiento automático,
End Date of Agreement can't be less than today.,La fecha de finalización del acuerdo no puede ser inferior a la actual.,
End Time,Hora de finalización,
Energy Point Leaderboard,Tabla de clasificación de puntos de energía,
Enter API key in Google Settings.,Ingrese la clave API en la Configuración de Google.,
Enter Supplier,Ingresar proveedor,
Enter Value,Ingrese el Valor,
Entity Type,Tipo de Entidad,
Error,Error,
Error in Exotel incoming call,Error en llamada entrante de Exotel,
Error: {0} is mandatory field,Error: {0} es un campo obligatorio,
Exception occurred while reconciling {0},Se produjo una excepción al conciliar {0},
Expected and Discharge dates cannot be less than Admission Schedule date,Las fechas esperadas y de alta no pueden ser inferiores a la fecha del horario de admisión,
Expired,Expirado,
Export,Exportar,
Export not allowed. You need {0} role to export.,Exportación no permitida. Se necesita el rol {0} para exportar.,
Failed to add Domain,Error al agregar dominio,
Fetch Items from Warehouse,Obtener artículos del almacén,
Fetching...,Atractivo...,
Field,Campo,
Filters,Filtros,
Finding linked payments,Encontrar pagos vinculados,
Fleet Management,Gestión de Flota,
Following fields are mandatory to create address:,Los siguientes campos son obligatorios para crear una dirección:,
For Month,Por mes,
"For item {0} at row {1}, count of serial numbers does not match with the picked quantity","Para el artículo {0} en la fila {1}, el recuento de números de serie no coincide con la cantidad seleccionada",
For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),Para la operación {0}: la cantidad ({1}) no puede ser mayor que la cantidad pendiente ({2}),
For quantity {0} should not be greater than work order quantity {1},Para la cantidad {0} no debe ser mayor que la cantidad de la orden de trabajo {1},
Free item not set in the pricing rule {0},Artículo gratuito no establecido en la regla de precios {0},
From Date and To Date are Mandatory,Desde la fecha y hasta la fecha son obligatorios,
From employee is required while receiving Asset {0} to a target location,Se requiere del empleado mientras recibe el activo {0} en una ubicación de destino,
Future Payment Amount,Monto de pago futuro,
Future Payment Ref,Ref. De pago futuro,
Future Payments,Pagos futuros,
GST HSN Code does not exist for one or more items,El código GST HSN no existe para uno o más artículos,
Generate E-Way Bill JSON,Generar E-Way Bill JSON,
Get Items,Obtener artículos,
Get Outstanding Documents,Obtenga documentos sobresalientes,
Goal,Objetivo,
Greater Than Amount,Mayor que la cantidad,
Green,Verde,
Group,Grupo,
Group By Customer,Agrupar por cliente,
Group By Supplier,Agrupar por proveedor,
Group Node,Agrupar por nota,
Group Warehouses cannot be used in transactions. Please change the value of {0},Los Almacenes de grupo no se pueden usar en transacciones. Cambie el valor de {0},
Help,Ayuda,
Help Article,Artículo de Ayuda,
"Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Le ayuda a realizar un seguimiento de los contratos basados en proveedores, clientes y empleados",
Helps you manage appointments with your leads,Le ayuda a gestionar citas con sus clientes potenciales,
Home,Inicio,
IBAN is not valid,IBAN no es válido,
Import Data from CSV / Excel files.,Importar Datos desde Archivos CSV / Excel.,
In Progress,En Progreso,
Incoming call from {0},Llamada entrante de {0},
Incorrect Warehouse,Almacén incorrecto,
Invalid Barcode. There is no Item attached to this barcode.,Código de barras inválido. No hay ningún elemento adjunto a este código de barras.,
Invalid credentials,Credenciales no válidas,
Issue Priority.,Prioridad de emisión.,
Issue Type.,Tipo 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.","Parece que hay un problema con la configuración de la banda del servidor. En caso de falla, la cantidad será reembolsada a su cuenta.",
Item Reported,Artículo reportado,
Item listing removed,Listado de artículos eliminado,
Item taxes updated,Impuestos de artículos actualizados,
Item {0}: {1} qty produced. ,Elemento {0}: {1} cantidad producida.,
Joining Date can not be greater than Leaving Date,La fecha de incorporación no puede ser mayor que la fecha de salida,
Lab Test Item {0} already exist,El elemento de prueba de laboratorio {0} ya existe,
Last Issue,Ultimo numero,
Latest Age,Última edad,
Leaves Taken,Hojas tomadas,
Less Than Amount,Menos de la cantidad,
Liabilities,Pasivo,
Loading...,Cargando ...,
Loan Applications from customers and employees.,Solicitudes de préstamos de clientes y empleados.,
Loan Processes,Procesos de préstamo,
Loan Type for interest and penalty rates,Tipo de préstamo para tasas de interés y multas,
Loans,Préstamos,
Loans provided to customers and employees.,Préstamos otorgados a clientes y empleados.,
Location,Ubicación,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Parece que alguien le envió a una URL incompleta. Por favor, pídeles que revisen.",
Make Journal Entry,Crear asiento contable,
Make Purchase Invoice,Hacer factura de compra,
Manufactured,Fabricado,
Mark Work From Home,Marcar trabajo desde casa,
Master,Maestro,
Max strength cannot be less than zero.,La fuerza máxima no puede ser inferior a cero.,
Maximum attempts for this quiz reached!,¡Intentos máximos para este cuestionario alcanzado!,
Message,Mensaje,
Missing Values Required,Valores faltantes requeridos,
Mobile No,Nº Móvil,
Mobile Number,Número de teléfono móvil,
Month,Mes,
Name,Nombre,
Near you,Cerca de usted,
Net Profit/Loss,Beneficio neto (pérdidas,
New Expense,Nuevo gasto,
New Invoice,Nueva factura,
New Payment,Nuevo pago,
New release date should be in the future,La nueva fecha de lanzamiento debe estar en el futuro,
No Account matched these filters: {},Ninguna cuenta coincide con estos filtros: {},
No communication found.,No se encontró comunicación.,
No correct answer is set for {0},No se establece una respuesta correcta para {0},
No description,Sin descripción,
No issue has been raised by the caller.,La persona que llama no ha planteado ningún problema.,
No items to publish,No hay elementos para publicar.,
No outstanding invoices found,No se encontraron facturas pendientes,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,No se encontraron facturas pendientes para el {0} {1} que califican los filtros que ha especificado.,
No outstanding invoices require exchange rate revaluation,No hay facturas pendientes requieren revalorización del tipo de cambio,
No reviews yet,Aún no hay comentarios,
No views yet,Sin vistas aún,
Non stock items,Artículos sin stock,
Not Allowed,No permitido,
Not allowed to create accounting dimension for {0},No se permite crear una dimensión contable para {0},
Not permitted. Please disable the Lab Test Template,No permitido. Deshabilite la plantilla de prueba de laboratorio,
Note,Nota,
Notes: ,Notas:,
On Converting Opportunity,Sobre la oportunidad de conversión,
On Purchase Order Submission,En el envío de la orden de compra,
On Sales Order Submission,En el envío de pedidos de ventas,
On Task Completion,Al finalizar la tarea,
On {0} Creation,En {0} Creación,
Only .csv and .xlsx files are supported currently,Actualmente solo se admiten archivos .csv y .xlsx,
Open,Abrir/Abierto,
Open Contact,Contacto abierto,
Open Lead,Plomo abierto,
Opening and Closing,Abriendo y cerrando,
Operating Cost as per Work Order / BOM,Costo operativo según la orden de trabajo / BOM,
Order Amount,Total de la orden,
Page {0} of {1},Página {0} de {1},
Paid amount cannot be less than {0},El monto pagado no puede ser inferior a {0},
Parent Company must be a group company,La empresa matriz debe ser una empresa grupal,
Passing Score value should be between 0 and 100,El valor del puntaje de aprobación debe estar entre 0 y 100,
Patient History,Historia del paciente,
Pause,Pausa,
Pay,Pagar,
Payment Document Type,Tipo de documento de pago,
Payment Name,Nombre de pago,
Pending,Pendiente,
Performance,Actuación,
Period based On,Período basado en,
Perpetual inventory required for the company {0} to view this report.,Se requiere un inventario perpetuo para que la empresa {0} vea este informe.,
Phone,Teléfono,
Pick List,Lista de selección,
Plaid authentication error,Error de autenticación a cuadros,
Plaid public token error,Error de token público a cuadros,
Plaid transactions sync error,Error de sincronización de transacciones a cuadros,
Please check the error log for details about the import errors,Consulte el registro de errores para obtener detalles sobre los errores de importación.,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,<b>Cree la configuración de DATEV</b> para la empresa <b>{}</b> .,
Please create adjustment Journal Entry for amount {0} ,Cree una entrada de diario de ajuste para la cantidad {0},
Please do not create more than 500 items at a time,No cree más de 500 artículos a la vez.,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Ingrese la <b>cuenta de diferencia</b> o configure la <b>cuenta de ajuste de stock</b> predeterminada para la compañía {0},
Please enter GSTIN and state for the Company Address {0},Ingrese GSTIN e indique la dirección de la empresa {0},
Please enter Item Code to get item taxes,Ingrese el código del artículo para obtener los impuestos del artículo,
Please enter Warehouse and Date,"Por favor, introduzca el almacén y la fecha",
Please login as a Marketplace User to edit this item.,Inicie sesión como usuario de Marketplace para editar este artículo.,
Please login as a Marketplace User to report this item.,Inicie sesión como usuario de Marketplace para informar este artículo.,
Please select <b>Template Type</b> to download template,Seleccione <b>Tipo de plantilla</b> para descargar la plantilla,
Please select Customer first,Por favor seleccione Cliente primero,
Please select Item Code first,Seleccione primero el código del artículo,
Please select a Delivery Note,Por favor seleccione una nota de entrega,
Please select a Sales Person for item: {0},Seleccione una persona de ventas para el artículo: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Seleccione otro método de pago. Stripe no admite transacciones en moneda &#39;{0}&#39;,
Please select the customer.,Por favor seleccione el cliente.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Establezca un Proveedor contra los Artículos que se considerarán en la Orden de Compra.,
Please set account heads in GST Settings for Compnay {0},Configure los encabezados de las cuentas en la configuración de GST para Compnay {0},
Please set an email id for the Lead {0},Configure una identificación de correo electrónico para el Cliente potencial {0},
Please set default UOM in Stock Settings,Configure la UOM predeterminada en la configuración de stock,
Please set filter based on Item or Warehouse due to a large amount of entries.,Configure el filtro en función del artículo o almacén debido a una gran cantidad de entradas.,
Please set up the Campaign Schedule in the Campaign {0},Configure la programación de la campaña en la campaña {0},
Please set valid GSTIN No. in Company Address for company {0},Establezca un número GSTIN válido en la dirección de la empresa para la empresa {0},
Please set {0},Por favor establezca {0},customer
Please setup a default bank account for company {0},Configure una cuenta bancaria predeterminada para la empresa {0},
Please specify,"Por favor, especifique",
Please specify a {0},"Por favor, especifique un {0}",lead
Priority,Prioridad,
Priority has been changed to {0}.,La prioridad se ha cambiado a {0}.,
Priority {0} has been repeated.,La prioridad {0} se ha repetido.,
Processing XML Files,Procesando archivos XML,
Profitability,Rentabilidad,
Project,Proyecto,
Provide the academic year and set the starting and ending date.,Proporcione el año académico y establezca la fecha de inicio y finalización.,
Public token is missing for this bank,Falta un token público para este banco,
Publish 1 Item,Publicar 1 artículo,
Publish Items,Publicar artículos,
Publish More Items,Publica más artículos,
Publish Your First Items,Publica tus primeros artículos,
Publish {0} Items,Publicar {0} elementos,
Published Items,Artículos publicados,
Purchase Invoice cannot be made against an existing asset {0},La factura de compra no se puede realizar contra un activo existente {0},
Purchase Invoices,Facturas de compra,
Purchase Orders,Ordenes de compra,
Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,El recibo de compra no tiene ningún artículo para el que esté habilitada la opción Conservar muestra.,
Purchase Return,Devolución de compra,
Qty of Finished Goods Item,Cantidad de artículos terminados,
Quality Inspection required for Item {0} to submit,Inspección de calidad requerida para el Artículo {0} para enviar,
Quantity to Manufacture,Cantidad a fabricar,
Quantity to Manufacture can not be zero for the operation {0},La cantidad a fabricar no puede ser cero para la operación {0},
Quarterly,Trimestral,
Queued,En cola,
Quick Entry,Entrada Rápida,
Quiz {0} does not exist,El cuestionario {0} no existe,
Quotation Amount,Cantidad de cotización,
Rate or Discount is required for the price discount.,Se requiere tarifa o descuento para el descuento del precio.,
Reason,Razón,
Reconcile Entries,Conciliar entradas,
Reconcile this account,Conciliar esta cuenta,
Reconciled,Reconciliado,
Recruitment,Reclutamiento,
Red,Rojo,
Release date must be in the future,La fecha de lanzamiento debe ser en el futuro,
Relieving Date must be greater than or equal to Date of Joining,La fecha de liberación debe ser mayor o igual que la fecha de incorporación,
Rename,Renombrar,
Rename Not Allowed,Cambiar nombre no permitido,
Report Item,Reportar articulo,
Report this Item,Reportar este artículo,
Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Cantidad reservada para subcontrato: Cantidad de materias primas para hacer artículos subcontratados.,
Reset,Reiniciar,
Reset Service Level Agreement,Restablecer acuerdo de nivel de servicio,
Resetting Service Level Agreement.,Restablecimiento del acuerdo de nivel de servicio.,
Return amount cannot be greater unclaimed amount,El monto de devolución no puede ser mayor que el monto no reclamado,
Review,revisión,
Room,Habitación,
Room Type,Tipo de Habitación,
Row # ,Línea #,
Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Fila n.º {0}: el almacén aceptado y el almacén del proveedor no pueden ser iguales,
Row #{0}: Cannot delete item {1} which has already been billed.,Fila # {0}: no se puede eliminar el elemento {1} que ya se ha facturado.,
Row #{0}: Cannot delete item {1} which has already been delivered,Fila # {0}: no se puede eliminar el elemento {1} que ya se entregó,
Row #{0}: Cannot delete item {1} which has already been received,Fila # {0}: no se puede eliminar el elemento {1} que ya se ha recibido,
Row #{0}: Cannot delete item {1} which has work order assigned to it.,Fila # {0}: No se puede eliminar el elemento {1} que tiene una orden de trabajo asignada.,
Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Fila # {0}: No se puede eliminar el artículo {1} que se asigna a la orden de compra del cliente.,
Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,Fila # {0}: No se puede seleccionar el Almacén del proveedor mientras se suministran materias primas al subcontratista,
Row #{0}: Cost Center {1} does not belong to company {2},Fila # {0}: el centro de costos {1} no pertenece a la compañía {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}: la operación {1} no se completa para {2} cantidad de productos terminados en la orden de trabajo {3}. Actualice el estado de la operación a través de la Tarjeta de trabajo {4}.,
Row #{0}: Payment document is required to complete the transaction,Fila # {0}: se requiere un documento de pago para completar la transacción,
Row #{0}: Quantity for Item {1} cannot be zero.,Fila # {0}: La cantidad del artículo {1} no puede ser cero.,
Row #{0}: Serial No {1} does not belong to Batch {2},Fila # {0}: El número de serie {1} no pertenece al lote {2},
Row #{0}: Service End Date cannot be before Invoice Posting Date,Fila n.º {0}: la fecha de finalización del servicio no puede ser anterior a la fecha de contabilización de facturas,
Row #{0}: Service Start Date cannot be greater than Service End Date,Fila n.º {0}: la fecha de inicio del servicio no puede ser mayor que la fecha de finalización del servicio,
Row #{0}: Service Start and End Date is required for deferred accounting,Fila n.º {0}: se requiere la fecha de inicio y finalización del servicio para la contabilidad diferida,
Row {0}: Invalid Item Tax Template for item {1},Fila {0}: Plantilla de impuesto de artículo no válido para el artículo {1},
Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Fila {0}: Cantidad no disponible para {4} en el almacén {1} al momento de contabilizar la entrada ({2} {3}),
Row {0}: user has not applied the rule {1} on the item {2},Fila {0}: el usuario no ha aplicado la regla {1} en el elemento {2},
Row {0}:Sibling Date of Birth cannot be greater than today.,Fila {0}: la fecha de nacimiento del hermano no puede ser mayor que hoy.,
Row({0}): {1} is already discounted in {2},Fila ({0}): {1} ya está descontada en {2},
Rows Added in {0},Filas agregadas en {0},
Rows Removed in {0},Filas eliminadas en {0},
Save,Guardar,
Save Item,Guardar artículo,
Saved Items,Artículos guardados,
Search Items ...,Buscar artículos ...,
Search for a payment,Busca un pago,
Search for anything ...,Busca cualquier cosa ...,
Search results for,Resultados de la búsqueda para,
Select Difference Account,Seleccionar cuenta de diferencia,
Select a Default Priority.,Seleccione una prioridad predeterminada.,
Select a company,Selecciona una empresa,
Select finance book for the item {0} at row {1},Seleccione el libro de finanzas para el artículo {0} en la fila {1},
Select only one Priority as Default.,Seleccione solo una prioridad como predeterminada.,
Seller Information,Información del vendedor,
Send,Enviar,
Send a message,Enviar un mensaje,
Sending,Enviando,
Sends Mails to lead or contact based on a Campaign schedule,Envía correos para dirigir o contactar según un cronograma de campaña,
Serial Number Created,Número de serie creado,
Serial Numbers Created,Números de serie creados,
Serial no(s) required for serialized item {0},Número de serie requerido para el artículo serializado {0},
Series,Secuencia,
Server Error,Error del Servidor,
Service Level Agreement has been changed to {0}.,El acuerdo de nivel de servicio se ha cambiado a {0}.,
Service Level Agreement was reset.,Se restableció el acuerdo de nivel de servicio.,
Service Level Agreement with Entity Type {0} and Entity {1} already exists.,El acuerdo de nivel de servicio con el tipo de entidad {0} y la entidad {1} ya existe.,
Set Meta Tags,Establecer metaetiquetas,
Set {0} in company {1},Establecer {0} en la empresa {1},
Setup,Configuración,
Shift Management,Gestión de Turno,
Show Future Payments,Mostrar pagos futuros,
Show Linked Delivery Notes,Mostrar notas de entrega vinculadas,
Show Sales Person,Mostrar vendedor,
Show Stock Ageing Data,Mostrar datos de envejecimiento de stock,
Show Warehouse-wise Stock,Mostrar stock en almacén,
Size,Tamaño,
Something went wrong while evaluating the quiz.,Algo salió mal al evaluar el cuestionario.,
Sr,Sr,
Start,Iniciar,
Start Date cannot be before the current date,La fecha de inicio no puede ser anterior a la fecha actual,
Start Time,Hora de inicio,
Status,Estado,
Status must be Cancelled or Completed,El estado debe ser cancelado o completado,
Stock Balance Report,Informe de saldo de existencias,
Stock Entry has been already created against this Pick List,La entrada de stock ya se ha creado para esta lista de selección,
Stock Ledger ID,ID del libro mayor,
Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,El valor de las existencias ({0}) y el saldo de la cuenta ({1}) no están sincronizados para la cuenta {2} y sus almacenes vinculados.,
Stores - {0},Tiendas - {0},
Student with email {0} does not exist,El alumno con correo electrónico {0} no existe,
Submit Review,Enviar opinión,
Submitted,Validado,
Supplier Addresses And Contacts,Libreta de direcciones de proveedores,
Synchronize this account,Sincroniza esta cuenta,
Tag,Etiqueta,
Target Location is required while receiving Asset {0} from an employee,La ubicación de destino es necesaria mientras se recibe el activo {0} de un empleado,
Target Location is required while transferring Asset {0},La ubicación de destino es necesaria al transferir el activo {0},
Target Location or To Employee is required while receiving Asset {0},Se requiere la ubicación de destino o al empleado mientras recibe el activo {0},
Task's {0} End Date cannot be after Project's End Date.,La fecha de finalización {0} de la tarea no puede ser posterior a la fecha de finalización del proyecto.,
Task's {0} Start Date cannot be after Project's End Date.,La fecha de inicio {0} de la tarea no puede ser posterior a la fecha de finalización del proyecto.,
Tax Account not specified for Shopify Tax {0},Cuenta de impuestos no especificada para el impuesto de Shopify {0},
Tax Total,Total de impuestos,
Template,Plantilla,
The Campaign '{0}' already exists for the {1} '{2}',La campaña &#39;{0}&#39; ya existe para {1} &#39;{2}&#39;,
The difference between from time and To Time must be a multiple of Appointment,La diferencia entre tiempo y tiempo debe ser un múltiplo de cita,
The field Asset Account cannot be blank,El campo Cuenta de activo no puede estar en blanco,
The field Equity/Liability Account cannot be blank,El campo Equity / Liability Account no puede estar en blanco,
The following serial numbers were created: <br><br> {0},Se crearon los siguientes números de serie: <br><br> {0},
The parent account {0} does not exists in the uploaded template,La cuenta principal {0} no existe en la plantilla cargada,
The question cannot be duplicate,La pregunta no puede ser duplicada.,
The selected payment entry should be linked with a creditor bank transaction,La entrada de pago seleccionada debe estar vinculada con una transacción bancaria del acreedor,
The selected payment entry should be linked with a debtor bank transaction,La entrada de pago seleccionada debe estar vinculada con una transacción bancaria deudor,
The total allocated amount ({0}) is greated than the paid amount ({1}).,El monto total asignado ({0}) es mayor que el monto pagado ({1}).,
This Service Level Agreement is specific to Customer {0},Este Acuerdo de nivel de servicio es específico para el Cliente {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Esta acción desvinculará esta cuenta de cualquier servicio externo que integre ERPNext con sus cuentas bancarias. No se puede deshacer. Estas seguro ?,
This bank account is already synchronized,Esta cuenta bancaria ya está sincronizada,
This bank transaction is already fully reconciled,Esta transacción bancaria ya está completamente conciliada,
This page keeps track of items you want to buy from sellers.,Esta página realiza un seguimiento de los artículos que desea comprar a los vendedores.,
This page keeps track of your items in which buyers have showed some interest.,Esta página realiza un seguimiento de sus artículos en los que los compradores han mostrado cierto interés.,
Thursday,Jueves,
Title,Nombre,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.","Para permitir la facturación excesiva, actualice &quot;Asignación de facturación excesiva&quot; en la Configuración de cuentas o el Artículo.",
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Para permitir sobre recibo / entrega, actualice &quot;Recibo sobre recibo / entrega&quot; en la Configuración de inventario o en el Artículo.",
Total,Total,
Total Payment Request amount cannot be greater than {0} amount,El monto total de la solicitud de pago no puede ser mayor que el monto de {0},
Total payments amount can't be greater than {},El monto total de los pagos no puede ser mayor que {},
Totals,Totales,
Transactions already retreived from the statement,Transacciones ya retiradas del extracto,
Transfer Material to Supplier,Transferir material a proveedor,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,El recibo de transporte y la fecha son obligatorios para el modo de transporte elegido,
Tuesday,Martes,
Type,Tipo,
Unable to find the time slot in the next {0} days for the operation {1}.,No se puede encontrar el intervalo de tiempo en los próximos {0} días para la operación {1}.,
Unable to update remote activity,No se puede actualizar la actividad remota,
Unknown Caller,Llamador desconocido,
Unlink external integrations,Desvincular integraciones externas,
Unpublish Item,Artículo no publicado,
Unreconciled,No reconciliado,
Unsupported GST Category for E-Way Bill JSON generation,Categoría GST no compatible para la generación E-Way Bill JSON,
Update,Actualizar,
Update Taxes for Items,Actualizar impuestos para artículos,
"Upload a bank statement, link or reconcile a bank account","Cargue un extracto bancario, vincule o concilie una cuenta bancaria",
Upload a statement,Subir una declaración,
Use a name that is different from previous project name,Use un nombre que sea diferente del nombre del proyecto anterior,
User {0} is disabled,El usuario {0} está deshabilitado,
Users and Permissions,Usuarios y Permisos,
Valuation Rate required for Item {0} at row {1},Tasa de valoración requerida para el artículo {0} en la fila {1},
Values Out Of Sync,Valores fuera de sincronización,
Vehicle Type is required if Mode of Transport is Road,El tipo de vehículo es obligatorio si el modo de transporte es carretera,
Vendor Name,Nombre del vendedor,
Verify Email,Verificar correo electrónico,
View,Ver,
View all issues from {0},Ver todos los problemas de {0},
View call log,Ver registro de llamadas,
Warehouse,Almacén,
Warehouse not found against the account {0},Almacén no encontrado en la cuenta {0},
Welcome to {0},Bienvenido a {0},
Why do think this Item should be removed?,¿Por qué cree que este artículo debería eliminarse?,
Work Order {0}: Job Card not found for the operation {1},Orden de trabajo {0}: Tarjeta de trabajo no encontrada para la operación {1},
Workday {0} has been repeated.,El día laboral {0} ha sido repetido.,
XML Files Processed,Archivos XML procesados,
Year,Año,
Yearly,Anual,
You are not allowed to enroll for this course,No está permitido inscribirse en este curso.,
You are not enrolled in program {0},No está inscrito en el programa {0},
You can Feature upto 8 items.,Puede presentar hasta 8 elementos.,
You can also copy-paste this link in your browser,Usted puede copiar y pegar este enlace en su navegador,
You can publish upto 200 items.,Puede publicar hasta 200 elementos.,
You have to enable auto re-order in Stock Settings to maintain re-order levels.,Debe habilitar el reordenamiento automático en la Configuración de inventario para mantener los niveles de reordenamiento.,
You must be a registered supplier to generate e-Way Bill,Debe ser un proveedor registrado para generar una factura electrónica,
You need to login as a Marketplace User before you can add any reviews.,Debe iniciar sesión como usuario de Marketplace antes de poder agregar comentarios.,
Your Featured Items,Tus artículos destacados,
Your Items,Tus cosas,
Your Profile,Tu perfil,
Your rating:,Tu clasificación:,
and,y,
e-Way Bill already exists for this document,e-Way Bill ya existe para este documento,
woocommerce - {0},woocommerce - {0},
{0} Coupon used are {1}. Allowed quantity is exhausted,Los cupones {0} utilizados son {1}. La cantidad permitida se agota,
{0} Operations: {1},{0} Operaciones: {1},
{0} bank transaction(s) created,{0} transacciones bancarias creadas,
{0} bank transaction(s) created and {1} errors,Se crearon {0} transacciones bancarias y {1} errores,
{0} can not be greater than {1},{0} no puede ser mayor que {1},
{0} conversations,{0} conversaciones,
{0} is not a company bank account,{0} no es una cuenta bancaria de la empresa,
{0} is not a group node. Please select a group node as parent cost center,{0} no es un nodo de grupo. Seleccione un nodo de grupo como centro de costo primario,
{0} is not the default supplier for any items.,{0} no es el proveedor predeterminado para ningún artículo.,
{0} is required,{0} es requerido,
{0}: {1} must be less than {2},{0}: {1} debe ser menor que {2},
{} is required to generate E-Way Bill JSON,{} es necesario para generar E-Way Bill JSON,
"Invalid lost reason {0}, please create a new lost reason","Motivo perdido no válido {0}, cree un nuevo motivo perdido",
Profit This Year,Beneficio este año,
Total Expense,Gasto total,
Total Expense This Year,Gastos totales este año,
Total Income,Ingresos totales,
Total Income This Year,Ingresos totales este año,
Barcode,Código de barras,
Clear,Quitar,
Comments,Comentarios,
DocType,DocType,
Download,Descargar,
Left,Inactivo/Fuera,
Link,Enlace,
New,Nuevo,
Print,Impresión,
Reference Name,nombre de referencia,
Refresh,Actualizar,
Success,Éxito,
Time,Hora,
Value,Valor,
Actual,Real,
Add to Cart,Añadir a la Cesta,
Days Since Last Order,Días desde el último pedido,
In Stock,En inventario,
Mode Of Payment,Método de pago,
No students Found,No se encontraron estudiantes,
Not in Stock,No disponible en stock,
Please select a Customer,Seleccione un Cliente,
Received From,Recibido de,
Sales Person,Persona de ventas,
To date cannot be before From date,La fecha no puede ser anterior a la fecha actual,
Write Off,Desajuste,
{0} Created,{0} Creado,
Email Id,ID de Correo Electrónico,
No,No,
Reference Doctype,Referencia a 'DocType',
Yes,si,
Actual ,Actual,
Add to cart,Añadir a la Cesta,
Budget,Presupuesto,
Chart of Accounts,Catálogo de cuentas,
Customer database.,Base de datos de cliente.,
Days Since Last order,Días desde la última orden,
Download as JSON,Descargar como JSON,
End date can not be less than start date,la fecha final no puede ser inferior a fecha de Inicio,
For Default Supplier (Optional),Para el proveedor predeterminado (opcional),
From date cannot be greater than To date,La fecha 'Desde' no puede ser mayor que la fecha 'Hasta',
Group by,Agrupar por,
In stock,En stock,
Item name,Nombre del producto,
Minimum Qty,Cantidad mínima,
More details,Más detalles,
Nature of Supplies,Naturaleza de los suministros,
No Items found.,No se Encontraron Artículos.,
No students found,No se han encontrado estudiantes,
Not in stock,No disponible en stock,
Not permitted,No permitido,
Open Issues ,Incidencias Abiertas,
Open Projects ,Proyectos abiertos,
Open To Do ,Lista de tareas abiertas,
Operation Id,ID de operación,
Partially ordered,Parcialmente ordenado,
Please select company first,"Por favor, seleccione la empresa primero",
Please select patient,Seleccione Paciente,
Printed On ,Impreso en,
Projected qty,Cantidad proyectada,
Sales person,Vendedores,
Serial No {0} Created,Número de serie {0} creado,
Source Location is required for the Asset {0},La ubicación de origen es obligatoria para el activo {0},
Tax Id,Identificación del impuesto,
To Time,Hasta hora,
To date cannot be before from date,Hasta la fecha no puede ser anterior a la fecha Desde,
Total Taxable value,Valor imponible total,
Upcoming Calendar Events ,Calendario de Eventos Próximos,
Value or Qty,Valor o cantidad,
Variance ,Diferencia,
Variant of,Variante de,
Write off,Desajuste,
hours,horas,
received from,recibido de,
to,a,
Cards,Tarjetas,
Percentage,Porcentaje,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,"Error al configurar los valores predeterminados para el país {0}. Por favor, póngase en contacto con 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}: el artículo {1} no es un artículo serializado / en lote. No puede tener un No de serie / No de lote en su contra.,
Please set {0},"Por favor, configure {0}",
Please set {0},Por favor establezca {0},supplier
Draft,Sequía,"docstatus,=,0"
Cancelled,Cancelado,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Configure el Sistema de nombres de instructores en Educación&gt; Configuración de educación,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Configure Naming Series para {0} a través de Configuración&gt; Configuración&gt; Naming Series,
UOM Conversion factor ({0} -> {1}) not found for item: {2},Factor de conversión de UOM ({0} -&gt; {1}) no encontrado para el artículo: {2},
Item Code > Item Group > Brand,Código de artículo&gt; Grupo de artículos&gt; Marca,
Customer > Customer Group > Territory,Cliente&gt; Grupo de clientes&gt; Territorio,
Supplier > Supplier Type,Proveedor&gt; Tipo de proveedor,
The value of {0} differs between Items {1} and {2},El valor de {0} difiere entre los elementos {1} y {2},
Auto Fetch,Búsqueda automática,
Fetch Serial Numbers based on FIFO,Obtener números de serie basados en FIFO,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Suministros sujetos a impuestos en el exterior (distintos a cero, cero y exentos)",
"To allow different rates, disable the {0} checkbox in {1}.","Para permitir diferentes tarifas, inhabilite la casilla de verificación {0} en {1}.",
Asset{} {assets_link} created for {},Activo {} {assets_link} creado para {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Fila {}: la serie de nombres de activos es obligatoria para la creación automática del artículo {},
Assets not created for {0}. You will have to create asset manually.,Activos no creados para {0}. Tendrá que crear el activo manualmente.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} tiene asientos contables en la moneda {2} de la empresa {3}. Seleccione una cuenta por cobrar o por pagar con la moneda {2}.,
Invalid Account,Cuenta no válida,
Purchase Order Required,Orden de compra requerida,
Purchase Receipt Required,Recibo de compra requerido,
Account Missing,Cuenta Faltante,
Requested,Solicitado,
Partially Paid,Parcialmente pagado,
Invalid Account Currency,Moneda de la cuenta no válida,
"Row {0}: The item {1}, quantity must be positive number","Fila {0}: el artículo {1}, la cantidad debe ser un número positivo",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Configure {0} para el artículo por lotes {1}, que se utiliza para configurar {2} en Enviar.",
Expiry Date Mandatory,Fecha de caducidad obligatoria,
Variant Item,Elemento variante,
BOM 1 {0} and BOM 2 {1} should not be same,BOM 1 {0} y BOM 2 {1} no deben ser iguales,
Note: Item {0} added multiple times,Nota: elemento {0} agregado varias veces,
YouTube,Youtube,
Vimeo,Vimeo,
Publish Date,Fecha de publicación,
Duration,Duración,
Advanced Settings,Ajustes avanzados,
Path,Camino,
Components,componentes,
Verified By,Verificado por,
Invalid naming series (. missing) for {0},Serie de nombres no válida (falta.) Para {0},
Filter Based On,Filtro basado en,
Reqd by date,Requerido por fecha,
Manufacturer Part Number <b>{0}</b> is invalid,El número de pieza del fabricante <b>{0}</b> no es válido.,
Invalid Part Number,Número de pieza no válido,
Select atleast one Social Media from Share on.,Seleccione al menos una red social de Compartir en.,
Invalid Scheduled Time,Hora programada no válida,
Length Must be less than 280.,La longitud debe ser inferior a 280.,
Error while POSTING {0},Error al PUBLICAR {0},
"Session not valid, Do you want to login?","Sesión no válida, ¿quieres iniciar sesión?",
Session Active,Sesión activa,
Session Not Active. Save doc to login.,Sesión no activa. Guarde el documento para iniciar sesión.,
Error! Failed to get request token.,¡Error! No se pudo obtener el token de solicitud.,
Invalid {0} or {1},{0} o {1} no válido,
Error! Failed to get access token.,¡Error! No se pudo obtener el token de acceso.,
Invalid Consumer Key or Consumer Secret Key,Clave de consumidor o clave secreta de consumidor no válida,
Your Session will be expire in ,Tu sesión vencerá en,
 days.,dias.,
Session is expired. Save doc to login.,La sesión ha caducado. Guarde el documento para iniciar sesión.,
Error While Uploading Image,Error al cargar la imagen,
You Didn't have permission to access this API,No tenías permiso para acceder a esta API,
Valid Upto date cannot be before Valid From date,La fecha válida hasta no puede ser anterior a la fecha válida desde,
Valid From date not in Fiscal Year {0},Válido desde la fecha no en el año fiscal {0},
Valid Upto date not in Fiscal Year {0},Actualización válida no en el año fiscal {0},
Group Roll No,Rol de grupo No,
Maintain Same Rate Throughout Sales Cycle,Mantener mismo precio durante todo el ciclo de ventas,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Fila {1}: la cantidad ({0}) no puede ser una fracción. Para permitir esto, deshabilite &#39;{2}&#39; en UOM {3}.",
Must be Whole Number,Debe ser un número entero,
Please setup Razorpay Plan ID,Configure el ID del plan de Razorpay,
Contact Creation Failed,Error al crear el contacto,
Leaves Expired,Hojas caducadas,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Fila # {}: {} de {} debe ser {}. Modifique la cuenta o seleccione una cuenta diferente.,
Row #{}: Please asign task to a member.,Fila # {}: asigne una tarea a un miembro.,
Process Failed,Proceso fallido,
Tally Migration Error,Error de migración de Tally,
Please set Warehouse in Woocommerce Settings,Establezca Almacén en la configuración de Woocommerce,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Fila {0}: el almacén de entrega ({1}) y el almacén del cliente ({2}) no pueden ser iguales,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Fila {0}: la fecha de vencimiento en la tabla de condiciones de pago no puede ser anterior a la fecha de publicación.,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,No se puede encontrar {} para el artículo {}. Establezca lo mismo en Item Master o Stock Settings.,
Row #{0}: The batch {1} has already expired.,Fila nº {0}: el lote {1} ya ha caducado.,
Start Year and End Year are mandatory,El año de inicio y el año de finalización son obligatorios,
GL Entry,Entrada GL,
Cannot allocate more than {0} against payment term {1},No se puede asignar más de {0} contra el plazo de pago {1},
The root account {0} must be a group,La cuenta raíz {0} debe ser un grupo.,
Shipping rule not applicable for country {0} in Shipping Address,La regla de envío no se aplica al país {0} en la dirección de envío.,
Get Payments from,Obtener pagos de,
Set Shipping Address or Billing Address,Establecer dirección de envío o dirección de facturación,
Consultation Setup,Configuración de consulta,
Fee Validity,Validez de la Cuota,
Laboratory Setup,Configuración de laboratorio,
Dosage Form,Forma de dosificación,
Records and History,Registros e historia,
Patient Medical Record,Registro Médico del Paciente,
Rehabilitation,Rehabilitación,
Exercise Type,Tipo de ejercicio,
Exercise Difficulty Level,Nivel de dificultad del ejercicio,
Therapy Type,Tipo de terapia,
Therapy Plan,Plan de terapia,
Therapy Session,Sesión de terapia,
Motor Assessment Scale,Escala de evaluación motora,
[Important] [ERPNext] Auto Reorder Errors,[Importante] [ERPNext] Errores de reorden automático,
"Regards,","Saludos,",
The following {0} were created: {1},Se crearon los siguientes {0}: {1},
Work Orders,Órdenes de trabajo,
The {0} {1} created sucessfully,El {0} {1} creado con éxito,
Work Order cannot be created for following reason: <br> {0},No se puede crear una orden de trabajo por el siguiente motivo:<br> {0},
Add items in the Item Locations table,Agregar elementos en la tabla Ubicaciones de elementos,
Update Current Stock,Actualizar stock actual,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Retener muestra se basa en el lote, marque Tiene número de lote para retener la muestra del artículo.",
Empty,Vacío,
Currently no stock available in any warehouse,Actualmente no hay stock disponible en ningún almacén,
BOM Qty,Cant. De la lista de materiales,
Time logs are required for {0} {1},Se requieren registros de tiempo para {0} {1},
Total Completed Qty,Cantidad total completada,
Qty to Manufacture,Cantidad para producción,
Social Media Campaigns,Campañas de redes sociales,
From Date can not be greater than To Date,Desde la fecha no puede ser mayor que hasta la fecha,
Please set a Customer linked to the Patient,Establezca un cliente vinculado al paciente,
Customer Not Found,Cliente no encontrado,
Please Configure Clinical Procedure Consumable Item in ,Configure el artículo consumible del procedimiento clínico en,
Missing Configuration,Falta configuración,
Out Patient Consulting Charge Item,Artículo de carga de consultoría para pacientes,
Inpatient Visit Charge Item,Artículo de carga de visita para pacientes hospitalizados,
OP Consulting Charge,Cargo de Consultoría OP,
Inpatient Visit Charge,Cargo de visita para pacientes hospitalizados,
Appointment Status,Estado de la cita,
Test: ,Prueba:,
Collection Details: ,Detalles de la colección:,
{0} out of {1},{0} de {1},
Select Therapy Type,Seleccione el tipo de terapia,
{0} sessions completed,{0} sesiones completadas,
{0} session completed,{0} sesión completada,
 out of {0},de {0},
Therapy Sessions,Sesiones de terapia,
Add Exercise Step,Agregar paso de ejercicio,
Edit Exercise Step,Editar paso de ejercicio,
Patient Appointments,Citas de pacientes,
Item with Item Code {0} already exists,El artículo con el código de artículo {0} ya existe,
Registration Fee cannot be negative or zero,La tarifa de registro no puede ser negativa ni cero,
Configure a service Item for {0},Configurar un elemento de servicio para {0},
Temperature: ,Temperatura:,
Pulse: ,Legumbres:,
Respiratory Rate: ,La frecuencia respiratoria:,
BP: ,BP:,
BMI: ,IMC:,
Note: ,Nota:,
Check Availability,Consultar disponibilidad,
Please select Patient first,Primero seleccione Paciente,
Please select a Mode of Payment first,Primero seleccione una forma de pago,
Please set the Paid Amount first,"Primero, establezca el monto pagado",
Not Therapies Prescribed,No se prescriben terapias,
There are no Therapies prescribed for Patient {0},No se prescriben terapias para el paciente {0},
Appointment date and Healthcare Practitioner are Mandatory,La fecha de la cita y el médico son obligatorios,
No Prescribed Procedures found for the selected Patient,No se encontraron procedimientos recetados para el paciente seleccionado,
Please select a Patient first,Primero seleccione un paciente,
There are no procedure prescribed for ,No hay ningún procedimiento prescrito para,
Prescribed Therapies,Terapias prescritas,
Appointment overlaps with ,La cita se superpone con,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} tiene una cita programada con {1} a las {2} que tiene {3} minuto (s) de duración.,
Appointments Overlapping,Superposición de citas,
Consulting Charges: {0},Cargos por consultoría: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Cita cancelada. Revise y cancele la factura {0},
Appointment Cancelled.,Cita cancelada.,
Fee Validity {0} updated.,Se actualizó la validez de la tarifa {0}.,
Practitioner Schedule Not Found,Horario del médico no encontrado,
{0} is on a Half day Leave on {1},{0} tiene medio día de permiso el {1},
{0} is on Leave on {1},{0} está de permiso el {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} no tiene un horario para profesionales de la salud. Agréguelo en Healthcare Practitioner,
Healthcare Service Units,Unidades de servicio sanitario,
Complete and Consume,Completar y consumir,
Complete {0} and Consume Stock?,¿Completar {0} y consumir stock?,
Complete {0}?,¿Completar {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,La cantidad de stock para iniciar el Procedimiento no está disponible en el Almacén {0}. ¿Quieres registrar una entrada de stock?,
{0} as on {1},{0} como en {1},
Clinical Procedure ({0}):,Procedimiento clínico ({0}):,
Please set Customer in Patient {0},Establezca Cliente en Paciente {0},
Item {0} is not active,El elemento {0} no está activo,
Therapy Plan {0} created successfully.,El plan de terapia {0} se creó correctamente.,
Symptoms: ,Síntomas:,
No Symptoms,Sin síntomas,
Diagnosis: ,Diagnóstico:,
No Diagnosis,Sin diagnóstico,
Drug(s) Prescribed.,Medicamentos recetados.,
Test(s) Prescribed.,Prueba (s) prescritas.,
Procedure(s) Prescribed.,Procedimiento (s) prescrito.,
Counts Completed: {0},Recuentos completados: {0},
Patient Assessment,La evaluación del paciente,
Assessments,Evaluaciones,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Cuentas (o grupos) para el cual los asientos contables se crean y se mantienen los saldos,
Account Name,Nombre de la Cuenta,
Inter Company Account,Cuenta Inter Company,
Parent Account,Cuenta principal,
Setting Account Type helps in selecting this Account in transactions.,Al configurar el tipo de cuenta facilitará la seleccion de la misma en las transacciones,
Chargeable,Devengable,
Rate at which this tax is applied,Valor por el cual el impuesto es aplicado,
Frozen,Congelado(a),
"If the account is frozen, entries are allowed to restricted users.","Si la cuenta está congelado, las entradas estarán permitidas a los usuarios restringidos.",
Balance must be,El balance debe ser,
Lft,Lft,
Rgt,Rgt,
Old Parent,Antiguo Padre,
Include in gross,Incluir en bruto,
Auditor,Auditor,
Accounting Dimension,Dimensión contable,
Dimension Name,Nombre de dimensión,
Dimension Defaults,Valores predeterminados de dimensión,
Accounting Dimension Detail,Detalle de dimensión contable,
Default Dimension,Dimensión predeterminada,
Mandatory For Balance Sheet,Obligatorio para el balance general,
Mandatory For Profit and Loss Account,Obligatorio para la cuenta de pérdidas y ganancias,
Accounting Period,Período Contable,
Period Name,Nombre del Período,
Closed Documents,Documentos Cerrados,
Accounts Settings,Configuración de cuentas,
Settings for Accounts,Ajustes de contabilidad,
Make Accounting Entry For Every Stock Movement,Crear un asiento contable para cada movimiento de stock,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Los usuarios con este rol pueden establecer cuentas congeladas y crear / modificar los asientos contables para las mismas,
Determine Address Tax Category From,Determinar la categoría de impuestos de la dirección de,
Over Billing Allowance (%),Sobre la asignación de facturación (%),
Credit Controller,Controlador de créditos,
Check Supplier Invoice Number Uniqueness,Comprobar número de factura único por proveedor,
Make Payment via Journal Entry,Hace el pago vía entrada de diario,
Unlink Payment on Cancellation of Invoice,Desvinculación de Pago en la cancelación de la factura,
Book Asset Depreciation Entry Automatically,Entrada de depreciación de activos de libro de forma automática,
Automatically Add Taxes and Charges from Item Tax Template,Agregar automáticamente impuestos y cargos de la plantilla de impuestos de artículos,
Automatically Fetch Payment Terms,Obtener automáticamente las condiciones de pago,
Show Payment Schedule in Print,Mostrar horario de pago en Imprimir,
Currency Exchange Settings,Configuración de Cambio de Moneda,
Allow Stale Exchange Rates,Permitir Tipos de Cambio Obsoletos,
Stale Days,Días Pasados,
Report Settings,Configuración de Reportes,
Use Custom Cash Flow Format,Utilice el Formato de Flujo de Efectivo Personalizado,
Allowed To Transact With,Permitido para realizar Transacciones con,
SWIFT number,Número rápido,
Branch Code,Código de Rama,
Address and Contact,Dirección y contacto,
Address HTML,Dirección HTML,
Contact HTML,HTML de Contacto,
Data Import Configuration,Configuración de importación de datos,
Bank Transaction Mapping,Mapeo de transacciones bancarias,
Plaid Access Token,Token de acceso a cuadros,
Company Account,Cuenta de la compañia,
Account Subtype,Subtipo de cuenta,
Is Default Account,Es cuenta predeterminada,
Is Company Account,Es la Cuenta de la Empresa,
Party Details,Party Details,
Account Details,Detalles de la Cuenta,
IBAN,IBAN,
Bank Account No,Número de Cuenta Bancaria,
Integration Details,Detalles de integración,
Integration ID,ID de integración,
Last Integration Date,Última fecha de integración,
Change this date manually to setup the next synchronization start date,Cambie esta fecha manualmente para configurar la próxima fecha de inicio de sincronización,
Mask,Máscara,
Bank Account Subtype,Subtipo de cuenta bancaria,
Bank Account Type,Tipo de cuenta bancaria,
Bank Guarantee,Garantía Bancaria,
Bank Guarantee Type,Tipo de Garantía Bancaria,
Receiving,Recepción,
Providing,Siempre que,
Reference Document Name,Nombre del Documento de Referencia,
Validity in Days,Validez en Días,
Bank Account Info,Información de la Cuenta Bancaria,
Clauses and Conditions,Cláusulas y Condiciones,
Other Details,Otros detalles,
Bank Guarantee Number,Número de Garantía Bancaria,
Name of Beneficiary,Nombre del Beneficiario,
Margin Money,Dinero de Margen,
Charges Incurred,Cargos Incurridos,
Fixed Deposit Number,Número de Depósito Fijo,
Account Currency,Divisa de cuenta,
Select the Bank Account to reconcile.,Seleccione la cuenta bancaria para conciliar.,
Include Reconciled Entries,Incluir las entradas conciliadas,
Get Payment Entries,Obtener registros de pago,
Payment Entries,Entradas de Pago,
Update Clearance Date,Actualizar fecha de liquidación,
Bank Reconciliation Detail,Detalle de conciliación bancaria,
Cheque Number,Número de cheque,
Cheque Date,Fecha del cheque,
Statement Header Mapping,Encabezado del enunciado,
Statement Headers,Encabezados de estado,
Transaction Data Mapping,Mapeo de datos de Transacción,
Mapped Items,Artículos Mapeados,
Bank Statement Settings Item,Elemento de Configuración de Extracto Bancario,
Mapped Header,Encabezado Mapeado,
Bank Header,Encabezado del Banco,
Bank Statement Transaction Entry,Entrada de Transacción de Extracto Bancario,
Bank Transaction Entries,Entradas de Transacciones Bancarias,
New Transactions,Nuevas Transacciones,
Match Transaction to Invoices,Hacer coincidir la transacción con las facturas,
Create New Payment/Journal Entry,Crear Nuevo Pago / Entrada de Diario,
Submit/Reconcile Payments,Enviar / Conciliar Pagos,
Matching Invoices,Facturas Coincidentes,
Payment Invoice Items,Elementos de la Factura de Pago,
Reconciled Transactions,Transacciones Reconciliadas,
Bank Statement Transaction Invoice Item,Estado de Factura de Transacción de Extracto Bancario,
Payment Description,Descripción de Pago,
Invoice Date,Fecha de factura,
invoice,factura,
Bank Statement Transaction Payment Item,Elemento de Pago de Transacción de Extracto Bancario,
outstanding_amount,outstanding_amount,
Payment Reference,Referencia de Pago,
Bank Statement Transaction Settings Item,Elemento de Configuración de Transacción de Extracto Bancario,
Bank Data,Datos Bancarios,
Mapped Data Type,Tipo de Datos Asignados,
Mapped Data,Datos Mapeados,
Bank Transaction,Transacción bancaria,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,ID de transacción,
Unallocated Amount,Monto sin asignar,
Field in Bank Transaction,Campo en transacción bancaria,
Column in Bank File,Columna en archivo bancario,
Bank Transaction Payments,Pagos de transacciones bancarias,
Control Action,Acción de Control,
Applicable on Material Request,Aplicable en la Solicitud de Material,
Action if Annual Budget Exceeded on MR,Acción si el Presupuesto Anual excedió en MR,
Warn,Advertir,
Ignore,Pasar por alto,
Action if Accumulated Monthly Budget Exceeded on MR,Acción si el Presupuesto Mensual Acumulado excedió en MR,
Applicable on Purchase Order,Aplicable en Orden de Compra,
Action if Annual Budget Exceeded on PO,Acción si se excedió el Presupuesto Anual en Orden de Compra,
Action if Accumulated Monthly Budget Exceeded on PO,Acción si el Presupuesto Mensual Acumuladose excedió en Orden de Compra,
Applicable on booking actual expenses,Aplicable en la reserva de gastos reales,
Action if Annual Budget Exceeded on Actual,Acción si el Presupuesto Anual excedió el Real,
Action if Accumulated Monthly Budget Exceeded on Actual,Acción si el Presupuesto Mensual Acumulado excedió el real,
Budget Accounts,Cuentas de Presupuesto,
Budget Account,Cuenta de Presupuesto,
Budget Amount,Monto de Presupuesto,
C-Form,C - Forma,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,C -Form No,
Received Date,Fecha de recepción,
Quarter,Trimestre,
I,Yo,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,Detalle C -Form Factura,
Invoice No,Factura No.,
Cash Flow Mapper,Mapeador de Flujo de Caja,
Section Name,Nombre de la Sección,
Section Header,Encabezado de Sección,
Section Leader,Líder de la Sección,
e.g Adjustments for:,"por ejemplo, Ajustes para:",
Section Subtotal,Subtotal de la Sección,
Section Footer,Sección Pie de Página,
Cash Flow Mapping,Asignación de Fujo de Caja,
Select Maximum Of 1,Seleccione Máximo de 1,
Is Finance Cost,Es el Costo de las Finanzas,
Is Working Capital,Es Capital de Trabajo,
Is Finance Cost Adjustment,Es el Ajuste del Costo de las Finanzas,
Is Income Tax Liability,Es la Responsabilidad del Impuesto sobre la Renta,
Is Income Tax Expense,Es el Gasto de Impuesto a la Renta,
Cash Flow Mapping Accounts,Cuentas de mapeo de Flujo de Caja,
account,Cuenta,
Cash Flow Mapping Template,Plantilla de mapeo de Flujo de Caja,
Cash Flow Mapping Template Details,Detalles de la plantilla de asignación de Flujo de Caja,
POS-CLO-,POS-CLO-,
Custody,Custodia,
Net Amount,Importe Neto,
Cashier Closing Payments,Pagos de cierre del cajero,
Chart of Accounts Importer,Importador de plan de cuentas,
Import Chart of Accounts from a csv file,Importar plan de cuentas desde un archivo csv,
Attach custom Chart of Accounts file,Adjunte un archivo de plan de cuentas personalizado,
Chart Preview,Vista previa del gráfico,
Chart Tree,Árbol de cartas,
Cheque Print Template,Plantilla de impresión de cheques,
Has Print Format,Tiene Formato de Impresión,
Primary Settings,Ajustes Primarios,
Cheque Size,Cheque Tamaño,
Regular,Regular,
Starting position from top edge,Posición inicial desde el borde superior de partida,
Cheque Width,Ancho Cheque,
Cheque Height,Altura de Cheque,
Scanned Cheque,Cheque Scaneado,
Is Account Payable,Es cuenta por pagar,
Distance from top edge,Distancia desde el borde superior,
Distance from left edge,Distancia desde el borde izquierdo,
Message to show,Mensaje a mostrar,
Date Settings,Ajustes de Fecha,
Starting location from left edge,Posición inicial desde el borde izquierdo,
Payer Settings,Configuración del pagador,
Width of amount in word,Anchura del importe de palabra,
Line spacing for amount in words,interlineado de la suma en palabras,
Amount In Figure,Monto en Figura,
Signatory Position,Posición Signatario,
Closed Document,Documento Cerrado,
Track separate Income and Expense for product verticals or divisions.,Seguimiento de Ingresos y Gastos por separado para las verticales de productos o divisiones.,
Cost Center Name,Nombre del centro de costos,
Parent Cost Center,Centro de costos principal,
lft,Izquierda-,
rgt,rgt,
Coupon Code,Código promocional,
Coupon Name,Nombre del cupón,
"e.g. ""Summer Holiday 2019 Offer 20""","por ejemplo, &quot;Vacaciones de verano 2019 Oferta 20&quot;",
Coupon Type,Tipo de cupón,
Promotional,Promocional,
Gift Card,Tarjeta de regalo,
unique e.g. SAVE20  To be used to get discount,"Único, por ejemplo, SAVE20 Para ser utilizado para obtener descuento",
Validity and Usage,Validez y uso,
Valid From,Válida desde,
Valid Upto,Válida hasta,
Maximum Use,Uso maximo,
Used,Usado,
Coupon Description,Descripción del cupón,
Discounted Invoice,Factura con descuento,
Debit to,Débito a,
Exchange Rate Revaluation,Revalorización del tipo de cambio,
Get Entries,Obtener Entradas,
Exchange Rate Revaluation Account,Cuenta de revalorización del tipo de cambio,
Total Gain/Loss,Ganancia / Pérdida Total,
Balance In Account Currency,Saldo en Moneda de la Cuenta,
Current Exchange Rate,Tasa de Cambio Actual,
Balance In Base Currency,Saldo en Moneda Base,
New Exchange Rate,Nueva Tasa de Cambio,
New Balance In Base Currency,Nuevo Saldo en Moneda Base,
Gain/Loss,Pérdida/Ganancia,
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,**Año fiscal** representa un ejercicio financiero. Todos los asientos contables y demás transacciones importantes son registradas contra el **año fiscal**.,
Year Name,Nombre del Año,
"For e.g. 2012, 2012-13","Por ejemplo, 2012 , 2012-13",
Year Start Date,Fecha de Inicio de Año,
Year End Date,Fecha de Finalización de Año,
Companies,Compañías,
Auto Created,Creado Automáticamente,
Stock User,Usuario de almacén,
Fiscal Year Company,Año fiscal de la compañía,
Debit Amount,Importe débitado,
Credit Amount,Importe acreditado,
Debit Amount in Account Currency,Importe debitado con la divisa,
Credit Amount in Account Currency,Importe acreditado con la divisa,
Voucher Detail No,Detalle de Comprobante No,
Is Opening,De apertura,
Is Advance,Es un anticipo,
To Rename,Renombrar,
GST Account,Cuenta GST,
CGST Account,Cuenta CGST,
SGST Account,Cuenta SGST,
IGST Account,Cuenta IGST,
CESS Account,Cuenta CESS,
Loan Start Date,Fecha de inicio del préstamo,
Loan Period (Days),Periodo de préstamo (días),
Loan End Date,Fecha de finalización del préstamo,
Bank Charges,Cargos bancarios,
Short Term Loan Account,Cuenta de préstamo a corto plazo,
Bank Charges Account,Cuenta de Cargos Bancarios,
Accounts Receivable Credit Account,Cuentas por cobrar Cuenta de crédito,
Accounts Receivable Discounted Account,Cuentas por cobrar Cuenta con descuento,
Accounts Receivable Unpaid Account,Cuentas por cobrar Cuenta impaga,
Item Tax Template,Plantilla de impuestos de artículos,
Tax Rates,Las tasas de impuestos,
Item Tax Template Detail,Detalle de plantilla de impuesto de artículo,
Entry Type,Tipo de entrada,
Inter Company Journal Entry,Entrada de la revista Inter Company,
Bank Entry,Registro de Banco,
Cash Entry,Entrada de caja,
Credit Card Entry,Ingreso de tarjeta de crédito,
Contra Entry,Entrada contra,
Excise Entry,Registro de impuestos especiales,
Write Off Entry,Diferencia de desajuste,
Opening Entry,Asiento de apertura,
ACC-JV-.YYYY.-,ACC-JV-.YYYY.-,
Accounting Entries,Asientos contables,
Total Debit,Débito Total,
Total Credit,Crédito Total,
Difference (Dr - Cr),Diferencia (Deb - Cred),
Make Difference Entry,Crear una entrada con una diferencia,
Total Amount Currency,Monto total de divisas,
Total Amount in Words,Importe total en letras,
Remark,Observación,
Paid Loan,Préstamo Pagado,
Inter Company Journal Entry Reference,Referencia de entrada de Journal Inter Journal,
Write Off Based On,Desajuste basado en,
Get Outstanding Invoices,Obtener facturas pendientes de pago,
Write Off Amount,Amortizar la cantidad,
Printing Settings,Ajustes de impresión,
Pay To / Recd From,Pagar a / Recibido de,
Payment Order,Orden de Pago,
Subscription Section,Sección de Suscripción,
Journal Entry Account,Cuenta de asiento contable,
Account Balance,Balance de la cuenta,
Party Balance,Saldo de tercero/s,
Accounting Dimensions,Dimensiones contables,
If Income or Expense,Indique si es un ingreso o egreso,
Exchange Rate,Tipo de cambio,
Debit in Company Currency,Divisa por defecto de la cuenta de débito,
Credit in Company Currency,Divisa por defecto de la cuenta de credito,
Payroll Entry,Entrada de Nómina,
Employee Advance,Avance del Empleado,
Reference Due Date,Fecha de Vencimiento de Referencia,
Loyalty Program Tier,Nivel de programa de lealtad,
Redeem Against,Canjear Contra,
Expiry Date,Fecha de caducidad,
Loyalty Point Entry Redemption,Redención de entrada al punto de lealtad,
Redemption Date,Fecha de Redención,
Redeemed Points,Puntos Redimidos,
Loyalty Program Name,Nombre del programa de lealtad,
Loyalty Program Type,Tipo de programa de lealtad,
Single Tier Program,Programa de nivel único,
Multiple Tier Program,Programa de niveles múltiples,
Customer Territory,Territorio del Cliente,
Auto Opt In (For all customers),Auto Opt In (para todos los clientes),
Collection Tier,Nivel de Colección,
Collection Rules,Reglas de Recolección,
Redemption,Redención,
Conversion Factor,Factor de conversión,
1 Loyalty Points = How much base currency?,1 Puntos de lealtad = ¿Cuánta moneda base?,
Expiry Duration (in days),Duración de Vencimiento (en días),
Help Section,Sección de Ayuda,
Loyalty Program Help,Ayuda del programa de lealtad,
Loyalty Program Collection,Colección del Programa de Lealtad,
Tier Name,Nombre de Nivel,
Minimum Total Spent,Gasto Total Mínimo,
Collection Factor (=1 LP),Factor de Recolección (= 1 LP),
For how much spent = 1 Loyalty Point,Por cuánto gasto = 1 punto de lealtad,
Mode of Payment Account,Modo de pago a cuenta,
Default Account,Cuenta predeterminada,
Default account will be automatically updated in POS Invoice when this mode is selected.,La Cuenta predeterminada se actualizará automáticamente en Factura de POS cuando se seleccione este modo.,
**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.,** ** Distribución mensual ayuda a distribuir el presupuesto / Target a través de meses si tiene la estacionalidad de su negocio.,
Distribution Name,Nombre de la distribución,
Name of the Monthly Distribution,Defina el nombre de la distribución mensual,
Monthly Distribution Percentages,Porcentajes de distribución mensuales,
Monthly Distribution Percentage,Distribución mensual porcentual,
Percentage Allocation,Porcentaje de asignación,
Create Missing Party,Crear una Parte Perdida,
Create missing customer or supplier.,Crear Cliente o Proveedor faltante.,
Opening Invoice Creation Tool Item,Apertura de Elemento de Herramienta de Creación de Factura,
Temporary Opening Account,Cuenta de Apertura Temporal,
Party Account,Cuenta asignada,
Type of Payment,Tipo de Pago,
ACC-PAY-.YYYY.-,ACC-PAY-.YYYY.-,
Receive,Recibir/Recibido,
Internal Transfer,Transferencia interna,
Payment Order Status,Estado de la orden de pago,
Payment Ordered,Pago Ordenado,
Payment From / To,Pago de / a,
Company Bank Account,Cuenta bancaria de la empresa,
Party Bank Account,Cuenta bancaria del partido,
Account Paid From,De cuenta de pago,
Account Paid To,Cuenta pagado hasta,
Paid Amount (Company Currency),Monto pagado (Divisa por defecto),
Received Amount,Cantidad recibida,
Received Amount (Company Currency),Cantidad recibida (Divisa de Compañia),
Get Outstanding Invoice,Obtenga una factura excepcional,
Payment References,Referencias del Pago,
Writeoff,Pedir por escrito,
Total Allocated Amount,Monto Total Asignado,
Total Allocated Amount (Company Currency),Monto Total asignado (Divisa de la Compañia),
Set Exchange Gain / Loss,Ajuste de ganancia del intercambio / Pérdida,
Difference Amount (Company Currency),Diferencia de Monto (Divisas de la Compañía),
Write Off Difference Amount,Amortizar importe de la diferencia,
Deductions or Loss,Deducciones o Pérdida,
Payment Deductions or Loss,Deducciones de Pago o Pérdida,
Cheque/Reference Date,Cheque / Fecha de referencia,
Payment Entry Deduction,Deducción de Entrada de Pago,
Payment Entry Reference,Referencia de Entrada de Pago,
Allocated,Numerado,
Payment Gateway Account,Cuenta de Pasarela de Pago,
Payment Account,Cuenta de pagos,
Default Payment Request Message,Mensaje de solicitud de pago por defecto,
PMO-,PMO-,
Payment Order Type,Tipo de orden de pago,
Payment Order Reference,Referencia de Orden de Pago,
Bank Account Details,Detalles de cuenta bancaria,
Payment Reconciliation,Conciliación de pagos,
Receivable / Payable Account,Cuenta por Cobrar / Pagar,
Bank / Cash Account,Cuenta de Banco / Efectivo,
From Invoice Date,Desde Fecha de la Factura,
To Invoice Date,Fecha para Factura,
Minimum Invoice Amount,Monto Mínimo de Factura,
Maximum Invoice Amount,Importe Máximo de Factura,
System will fetch all the entries if limit value is zero.,El sistema buscará todas las entradas si el valor límite es cero.,
Get Unreconciled Entries,Verificar entradas no conciliadas,
Unreconciled Payment Details,Detalles de pagos no conciliados,
Invoice/Journal Entry Details,Factura / Detalles de diarios,
Payment Reconciliation Invoice,Factura para reconciliación de pago,
Invoice Number,Número de factura,
Payment Reconciliation Payment,Pago para reconciliación de saldo,
Reference Row,Fila de Referencia,
Allocated amount,Monto asignado,
Payment Request Type,Tipo de Solicitud de Pago,
Outward,Exterior,
Inward,Interior,
ACC-PRQ-.YYYY.-,ACC-PRQ-.YYYY.-,
Transaction Details,Detalles de la Transacción,
Amount in customer's currency,Monto en divisa del cliente,
Is a Subscription,Es una Suscripción,
Transaction Currency,moneda de la transacción,
Subscription Plans,Planes de Suscripción,
SWIFT Number,Número rápido,
Recipient Message And Payment Details,Mensaje receptor y formas de pago,
Make Sales Invoice,Crear Factura de Venta,
Mute Email,Email Silenciado,
payment_url,url_de_pago,
Payment Gateway Details,Detalles de Pasarela de Pago,
Payment Schedule,Calendario de Pago,
Invoice Portion,Porción de Factura,
Payment Amount,Importe Pagado,
Payment Term Name,Nombre del Término de Pago,
Due Date Based On,Fecha de Vencimiento basada en,
Day(s) after invoice date,Día(s) después de la fecha de la factura,
Day(s) after the end of the invoice month,Día(s) después del final del mes de la factura,
Month(s) after the end of the invoice month,Mes(es) después del final del mes de la factura,
Credit Days,Días de Crédito,
Credit Months,Meses de Crédito,
Allocate Payment Based On Payment Terms,Asignar el pago según las condiciones de pago,
"If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term","Si esta casilla de verificación está marcada, el monto pagado se dividirá y asignará según los montos en el programa de pago para cada plazo de pago.",
Payment Terms Template Detail,Detalle de Plantilla de Condiciones de Pago,
Closing Fiscal Year,Cerrando el año fiscal,
Closing Account Head,Cuenta principal de cierre,
"The account head under Liability or Equity, in which Profit/Loss will be booked","Cabecera de cuenta en Pasivo o Patrimonio Neto, en la que se contabilizarán los Resultados.",
POS Customer Group,POS Grupo de Clientes,
POS Field,Campo POS,
POS Item Group,POS Grupo de artículos,
Company Address,Dirección de la Compañía,
Update Stock,Actualizar el Inventario,
Ignore Pricing Rule,Ignorar la Regla Precios,
Applicable for Users,Aplicable para Usuarios,
Sales Invoice Payment,Pago de Facturas de Venta,
Item Groups,Grupos de productos,
Only show Items from these Item Groups,Sólo mostrar productos del siguiente grupo de artículos,
Customer Groups,Grupos de Clientes,
Only show Customer of these Customer Groups,Sólo mostrar clientes del siguiente grupo de clientes,
Write Off Account,Cuenta de Desajuste,
Write Off Cost Center,Desajuste de centro de costos,
Account for Change Amount,Cuenta para Monto de Cambio,
Taxes and Charges,Impuestos y cargos,
Apply Discount On,Aplicar de descuento en,
POS Profile User,Usuario de Perfil POS,
Apply On,Aplicar en,
Price or Product Discount,Precio o descuento del producto,
Apply Rule On Item Code,Aplicar regla en código de artículo,
Apply Rule On Item Group,Aplicar regla en grupo de artículos,
Apply Rule On Brand,Aplicar regla a la marca,
Mixed Conditions,Condiciones mixtas,
Conditions will be applied on all the selected items combined. ,Las condiciones se aplicarán a todos los elementos seleccionados combinados.,
Is Cumulative,Es acumulativo,
Coupon Code Based,Código de cupón basado,
Discount on Other Item,Descuento en otro artículo,
Apply Rule On Other,Aplicar regla en otro,
Party Information,Información del partido,
Quantity and Amount,Cantidad y cantidad,
Min Qty,Cantidad mínima,
Max Qty,Cantidad Máxima,
Min Amt,Min Amt,
Max Amt,Max Amt,
Period Settings,Configuraciones de período,
Margin,Margen,
Margin Type,Tipo de Margen,
Margin Rate or Amount,Tasa de margen o Monto,
Price Discount Scheme,Esquema de descuento de precio,
Rate or Discount,Tarifa o Descuento,
Discount Percentage,Porcentaje de descuento,
Discount Amount,Descuento,
For Price List,Por lista de precios,
Product Discount Scheme,Esquema de descuento de producto,
Same Item,Mismo articulo,
Free Item,Articulo libre,
Threshold for Suggestion,Umbral de sugerencia,
System will notify to increase or decrease quantity or amount ,El sistema notificará para aumentar o disminuir la cantidad o cantidad,
"Higher the number, higher the priority","Cuanto mayor sea el número, mayor es la prioridad",
Apply Multiple Pricing Rules,Aplicar múltiples reglas de precios,
Apply Discount on Rate,Aplicar descuento en tarifa,
Validate Applied Rule,Validar regla aplicada,
Rule Description,Descripción de la regla,
Pricing Rule Help,Ayuda de regla de precios,
Promotional Scheme Id,ID del esquema promocional,
Promotional Scheme,Esquema Promocional,
Pricing Rule Brand,Marca de regla de precios,
Pricing Rule Detail,Detalle de la regla de precios,
Child Docname,Docname hijo,
Rule Applied,Regla aplicada,
Pricing Rule Item Code,Código de artículo de regla de precios,
Pricing Rule Item Group,Grupo de elementos de regla de precios,
Price Discount Slabs,Losas de descuento de precio,
Promotional Scheme Price Discount,Descuento del precio del plan promocional,
Product Discount Slabs,Losas de descuento de producto,
Promotional Scheme Product Discount,Esquema promocional Descuento del producto,
Min Amount,Cantidad mínima,
Max Amount,Cantidad Máxima,
Discount Type,Tipo de descuento,
ACC-PINV-.YYYY.-,ACC-PINV-.YYYY.-,
Tax Withholding Category,Categoría de Retención de Impuestos,
Edit Posting Date and Time,Editar fecha y hora de envío,
Is Paid,Está pagado,
Is Return (Debit Note),Es Retorno (Nota de Débito),
Apply Tax Withholding Amount,Aplicar Monto de Retención de Impuestos,
Accounting Dimensions ,Dimensiones contables,
Supplier Invoice Details,Detalles de la factura del proveedor,
Supplier Invoice Date,Fecha de factura de proveedor,
Return Against Purchase Invoice,Devolución contra factura de compra,
Select Supplier Address,Seleccionar dirección del proveedor,
Contact Person,Persona de contacto,
Select Shipping Address,Seleccione la dirección de envío,
Currency and Price List,Divisa y listas de precios,
Price List Currency,Divisa de la lista de precios,
Price List Exchange Rate,Tipo de cambio para la lista de precios,
Set Accepted Warehouse,Asignar Almacén Aceptado,
Rejected Warehouse,Almacén rechazado,
Warehouse where you are maintaining stock of rejected items,Almacén en el cual se envian los productos rechazados,
Raw Materials Supplied,Materias primas suministradas,
Supplier Warehouse,Almacén del proveedor,
Pricing Rules,Reglas de precios,
Supplied Items,Productos suministrados,
Total (Company Currency),Total (Divisa por defecto),
Net Total (Company Currency),Total neto (Divisa por defecto),
Total Net Weight,Peso Neto Total,
Shipping Rule,Regla de envío,
Purchase Taxes and Charges Template,Plantilla de impuestos (compras),
Purchase Taxes and Charges,Impuestos y cargos sobre compras,
Tax Breakup,Disolución de Impuestos,
Taxes and Charges Calculation,Cálculo de impuestos y cargos,
Taxes and Charges Added (Company Currency),Impuestos y cargos adicionales (Divisa por defecto),
Taxes and Charges Deducted (Company Currency),Impuestos y gastos deducibles (Divisa por defecto),
Total Taxes and Charges (Company Currency),Total impuestos y cargos (Divisa por defecto),
Taxes and Charges Added,Impuestos y cargos adicionales,
Taxes and Charges Deducted,Impuestos y cargos deducidos,
Total Taxes and Charges,Total Impuestos y Cargos,
Additional Discount,Descuento adicional,
Apply Additional Discount On,Aplicar descuento adicional en,
Additional Discount Amount (Company Currency),Monto adicional de descuento (Divisa por defecto),
Additional Discount Percentage,Porcentaje de descuento adicional,
Additional Discount Amount,Cantidad de descuento adicional,
Grand Total (Company Currency),Suma total (Divisa por defecto),
Rounding Adjustment (Company Currency),Ajuste de Redondeo (Moneda de la Empresa),
Rounded Total (Company Currency),Total redondeado (Divisa por defecto),
In Words (Company Currency),En palabras (Divisa por defecto),
Rounding Adjustment,Ajuste de Redondeo,
In Words,En palabras,
Total Advance,Total anticipo,
Disable Rounded Total,Desactivar redondeo,
Cash/Bank Account,Cuenta de caja / banco,
Write Off Amount (Company Currency),Saldo de perdidas y ganancias (Divisa por defecto),
Set Advances and Allocate (FIFO),Establecer avances y asignar (FIFO),
Get Advances Paid,Obtener anticipos pagados,
Advances,Anticipos,
Terms,Términos.,
Terms and Conditions1,Términos y Condiciones,
Group same items,Agrupar mismos artículos,
Print Language,Lenguaje de impresión,
"Once set, this invoice will be on hold till the set date","Una vez configurado, esta factura estará en espera hasta la fecha establecida",
Credit To,Acreditar en,
Party Account Currency,Divisa de la cuenta de tercero/s,
Against Expense Account,Contra la Cuenta de Gastos,
Inter Company Invoice Reference,Referencia de factura de Inter Company,
Is Internal Supplier,Es un Proveedor Interno,
Start date of current invoice's period,Fecha inicial del período de facturación,
End date of current invoice's period,Fecha final del periodo de facturación actual,
Update Auto Repeat Reference,Actualizar la Referencia de Repetición Automática,
Purchase Invoice Advance,Factura de compra anticipada,
Purchase Invoice Item,Factura de compra del producto,
Quantity and Rate,Cantidad y Precios,
Received Qty,Cantidad recibida,
Accepted Qty,Cantidad aceptada,
Rejected Qty,Cant. Rechazada,
UOM Conversion Factor,Factor de Conversión de Unidad de Medida,
Discount on Price List Rate (%),Dto (%),
Price List Rate (Company Currency),Tarifa de la lista de precios (Divisa por defecto),
Rate ,Precio,
Rate (Company Currency),Precio (Divisa por defecto),
Amount (Company Currency),Importe (Divisa por defecto),
Is Free Item,Es un artículo gratis,
Net Rate,Precio neto,
Net Rate (Company Currency),Tasa neta (Divisa por defecto),
Net Amount (Company Currency),Importe neto (Divisa de la empresa),
Item Tax Amount Included in Value,Artículo Cantidad de impuestos incluida en el valor,
Landed Cost Voucher Amount,Monto de costos de destino estimados,
Raw Materials Supplied Cost,Costo materias primas suministradas,
Accepted Warehouse,Almacén Aceptado,
Serial No,Número de serie,
Rejected Serial No,No. de serie rechazado,
Expense Head,Cuenta de gastos,
Is Fixed Asset,Es activo fijo,
Asset Location,Ubicación del Activo,
Deferred Expense,Gasto Diferido,
Deferred Expense Account,Cuenta de Gastos Diferidos,
Service Stop Date,Fecha de Finalización del Servicio,
Enable Deferred Expense,Habilitar el Gasto Diferido,
Service Start Date,Fecha de Inicio del Servicio,
Service End Date,Fecha de Finalización del Servicio,
Allow Zero Valuation Rate,Permitir tasa de valoración cero,
Item Tax Rate,Tasa de impuesto del producto,
Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,"la tabla de detalle de impuestos se obtiene del producto principal como una cadena y es guardado en este campo, este es usado para los impuestos y cargos.",
Purchase Order Item,Producto de la orden de compra,
Purchase Receipt Detail,Detalle del recibo de compra,
Item Weight Details,Detalles del Peso del Artículo,
Weight Per Unit,Peso por Unidad,
Total Weight,Peso Total,
Weight UOM,Unidad de Medida (UdM),
Page Break,Salto de Página,
Consider Tax or Charge for,Considerar impuestos o cargos por,
Valuation and Total,Valuación y Total,
Valuation,Valuación,
Add or Deduct,Agregar o deducir,
Deduct,Deducir,
On Previous Row Amount,Sobre la línea anterior,
On Previous Row Total,Sobre la línea anterior al total,
On Item Quantity,En Cantidad de Item,
Reference Row #,Línea de referencia #,
Is this Tax included in Basic Rate?,¿Está incluido este impuesto en el precio base?,
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Si se selecciona, el valor del impuesto se considerará como ya incluido en el importe",
Account Head,Encabezado de cuenta,
Tax Amount After Discount Amount,Total impuestos después del descuento,
Item Wise Tax Detail ,Detalle de impuestos sabios del artículo,
"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.","Modelo de impuestos estándar que se puede aplicar a todas las operaciones de compras. Esta plantilla puede contener una lista de los encabezados de impuestos y también otros encabezados de gastos como ""Envío"",""Seguro"",""Manejo"" etc. Nota El tipo impositivo que defina aquí será el tipo impositivo estándar para todos los **Artículos**. Si hay **Productos** que tienen diferentes tipos, deben añadirse en la tabla **Impuesto sobre artículos** en el **Punto** maestro. Descripción de las columnas 1. Tipo de cálculo: - Esto puede ser en **Total neto** (es decir, la suma del importe base). Importe** (para impuestos o gastos acumulados). Si selecciona esta opción, el impuesto se aplicará como un porcentaje del importe o total de la fila anterior (en la tabla de impuestos). **Actual** (como se menciona). 2. Cabecera de cuenta: El libro de cuentas en el que se registrará este impuesto. Centro de coste: Si el impuesto/cargo es un ingreso (como gastos de envío) o gasto, es necesario que se contrate con un Centro de coste. 4. Descripción: Descripción del impuesto (que se imprimirá en las facturas / presupuestos). 5. Tasa: Tipo impositivo. 6. Importe: Importe del impuesto. 7. Total: Total acumulado hasta este punto. 8. Ingresar línea: Si se basa en ""Total de líneas anteriores"", puede seleccionar el número de línea que se tomará como base para este cálculo (el valor predeterminado es la línea anterior). 9. Considere Impuesto o Cargo para: En esta sección puede especificar si el impuesto / cargo es sólo para la valoración (no una parte del total) o sólo para el total (no agrega valor al artículo) o para ambos. 10. Agregar o deducir: Si desea agregar o deducir el impuesto.",
ACC-SINV-.YYYY.-,ACC-SINV-.YYYY.-,
Include Payment (POS),Incluir Pago (POS),
Offline POS Name,Transacción POS Offline,
Is Return (Credit Note),Es Devolución (Nota de Crédito),
Return Against Sales Invoice,Devolución Contra Factura de venta,
Update Billed Amount in Sales Order,Actualizar el Importe Facturado en la Orden de Venta,
Customer PO Details,Detalles de la OC del Cliente,
Customer's Purchase Order,Ordenes de compra de clientes,
Customer's Purchase Order Date,Fecha de pedido de compra del cliente,
Customer Address,Dirección del cliente,
Shipping Address Name,Nombre de dirección de envío,
Company Address Name,Nombre de la Empresa,
Rate at which Customer Currency is converted to customer's base currency,Tasa por la cual la divisa es convertida como moneda base del cliente,
Rate at which Price list currency is converted to customer's base currency,Tasa por la cual la lista de precios es convertida como base del cliente.,
Set Source Warehouse,Asignar Almacén Fuente,
Packing List,Lista de Embalaje,
Packed Items,Productos Empacados,
Product Bundle Help,Ayuda de 'conjunto / paquete de productos',
Time Sheet List,Lista de hojas de tiempo,
Time Sheets,Tablas de Tiempo,
Total Billing Amount,Importe total de facturación,
Sales Taxes and Charges Template,Plantilla de impuestos (ventas),
Sales Taxes and Charges,Impuestos y cargos sobre ventas,
Loyalty Points Redemption,Redención de Puntos de Lealtad,
Redeem Loyalty Points,Canjear Puntos de Lealtad,
Redemption Account,Cuenta de Redención,
Redemption Cost Center,Centro de Costos de Redención,
In Words will be visible once you save the Sales Invoice.,En palabras serán visibles una vez que guarde la factura de venta.,
Allocate Advances Automatically (FIFO),Asignar adelantos automáticamente (FIFO),
Get Advances Received,Obtener anticipos recibidos,
Base Change Amount (Company Currency),Importe de Cambio Base (Divisa de la Empresa),
Write Off Outstanding Amount,Balance de pagos pendientes,
Terms and Conditions Details,Detalle de términos y condiciones,
Is Internal Customer,Es Cliente Interno,
Is Discounted,Tiene descuento,
Unpaid and Discounted,Sin pagar y con descuento,
Overdue and Discounted,Atrasado y con descuento,
Accounting Details,Detalles de Contabilidad,
Debit To,Debitar a,
Is Opening Entry,Es una entrada de apertura,
C-Form Applicable,C -Forma Aplicable,
Commission Rate (%),Porcentaje de comisión (%),
Sales Team1,Equipo de ventas 1,
Against Income Account,Contra cuenta de ingresos,
Sales Invoice Advance,Factura de ventas anticipada,
Advance amount,Importe Anticipado,
Sales Invoice Item,Producto de factura de venta,
Customer's Item Code,Código del producto para clientes,
Brand Name,Marca,
Qty as per Stock UOM,Cantidad de acuerdo a la unidad de medida (UdM) de stock,
Discount and Margin,Descuento y Margen,
Rate With Margin,Tarifa con margen,
Discount (%) on Price List Rate with Margin,Descuento (%) en Tarifa de lista de precios con margen,
Rate With Margin (Company Currency),Tasa con Margen (Moneda de la Compañía),
Delivered By Supplier,Entregado por proveedor,
Deferred Revenue,Ingresos Diferidos,
Deferred Revenue Account,Cuenta de Ingresos Diferidos,
Enable Deferred Revenue,Habilitar Ingresos Diferidos,
Stock Details,Detalles de almacén,
Customer Warehouse (Optional),Almacén del cliente (opcional),
Available Batch Qty at Warehouse,Cantidad de lotes disponibles en almacén,
Available Qty at Warehouse,Cantidad Disponible en Almacén,
Delivery Note Item,Nota de entrega del producto,
Base Amount (Company Currency),Importe Base (Divisa de la Empresa),
Sales Invoice Timesheet,Registro de Horas de Factura de Venta,
Time Sheet,Hoja de horario,
Billing Hours,Horas de facturación,
Timesheet Detail,Detalle de Tabla de Tiempo,
Tax Amount After Discount Amount (Company Currency),Monto de impuestos después del descuento (Divisa por defecto),
Item Wise Tax Detail,Detalle de Impuestos,
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.","Modelo de impuestos estándar que se puede aplicar a todas las operaciones de ventas. Esta plantilla puede contener la lista de cabezas de impuestos y también otras cabezas de gastos/ingresos como ""Envío"",""Seguro"",""Manejo"" etc. Nota El tipo impositivo que defina aquí será el tipo impositivo estándar para todos los **Artículos**. Si hay **Productos** que tienen diferentes tipos, deben añadirse en la tabla **Impuesto sobre artículos** en el **Punto** maestro. Descripción de las columnas 1. Tipo de cálculo: - Esto puede ser en **Total neto** (es decir, la suma del importe base). Importe** (para impuestos o gastos acumulados). Si selecciona esta opción, el impuesto se aplicará como un porcentaje del importe o total de la fila anterior (en la tabla de impuestos). **Actual** (como se menciona). 2. Cabecera de cuenta: El libro de cuentas en el que se registrará este impuesto. Centro de coste: Si el impuesto/cargo es un ingreso (como gastos de envío) o gasto, es necesario que se contrate con un Centro de coste. 4. Descripción: Descripción del impuesto (que se imprimirá en las facturas / presupuestos). 5. Tasa: Tipo impositivo. 6. Importe: Importe del impuesto. 7. Total: Total acumulado hasta este punto. 8. Ingresar línea: Si se basa en ""Total de líneas anteriores"", puede seleccionar el número de línea que se tomará como base para este cálculo (el valor predeterminado es la línea anterior). 9. ¿Está incluido este Impuesto en la Tasa Básica?Si usted marca esta casilla, significa que este impuesto no se mostrará debajo de la tabla de artículos, sino que se incluirá en la Tasa Básica en su tabla de artículos principal. Esto es útil cuando se desea dar un precio global (incluidos todos los impuestos) al cliente.",
* Will be calculated in the transaction.,* Será calculado en la transacción.,
From No,Desde Nro,
To No,A Nro,
Is Company,Es la Compañia,
Current State,Estado Actual,
Purchased,Comprado,
From Shareholder,Del Accionista,
From Folio No,Desde Folio Nro,
To Shareholder,Para el accionista,
To Folio No,A Folio Nro,
Equity/Liability Account,Cuenta de Patrimonio / Pasivo,
Asset Account,Cuenta de Activos,
(including),(incluso),
ACC-SH-.YYYY.-,ACC-SH-.YYYY.-,
Folio no.,Folio Nro.,
Address and Contacts,Dirección y contactos,
Contact List,Lista de Contactos,
Hidden list maintaining the list of contacts linked to Shareholder,Lista oculta manteniendo la lista de contactos vinculados al Accionista,
Specify conditions to calculate shipping amount,Especificar condiciones para calcular el monto del envío,
Shipping Rule Label,Etiqueta de regla de envío,
example: Next Day Shipping,ejemplo : Envío express,
Shipping Rule Type,Tipo de Regla de Envío,
Shipping Account,Cuenta de Envíos,
Calculate Based On,Calculo basado en,
Fixed,Fijo,
Net Weight,Peso neto,
Shipping Amount,Monto de envío,
Shipping Rule Conditions,Condiciones de regla envío,
Restrict to Countries,Restringir a los Países,
Valid for Countries,Válido para Países,
Shipping Rule Condition,Regla de envío,
A condition for a Shipping Rule,Una condición para una regla de envío,
From Value,Desde Valor,
To Value,Para el valor,
Shipping Rule Country,Regla de envio del país,
Subscription Period,Periodo de Suscripción,
Subscription Start Date,Fecha de inicio de la Suscripción,
Cancelation Date,Fecha de Cancelación,
Trial Period Start Date,Fecha de Inicio del Período de Prueba,
Trial Period End Date,Fecha de Finalización del Período de Prueba,
Current Invoice Start Date,Fecha de Inicio de la Factura Actual,
Current Invoice End Date,Fecha de Finalización de la Factura Actual,
Days Until Due,Días Hasta el Vencimiento,
Number of days that the subscriber has to pay invoices generated by this subscription,Número de días que el suscriptor debe pagar las facturas generadas por esta suscripción,
Cancel At End Of Period,Cancelar al Final del Período,
Generate Invoice At Beginning Of Period,Generar Factura al inicio del periodo,
Plans,Planes,
Discounts,Descuentos,
Additional DIscount Percentage,Porcentaje de descuento adicional,
Additional DIscount Amount,Monto adicional de descuento,
Subscription Invoice,Factura de Suscripción,
Subscription Plan,Plan de Suscripción,
Cost,Costo,
Billing Interval,Intervalo de Facturación,
Billing Interval Count,Contador de Intervalo de Facturación,
"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","Número de intervalos para el campo de intervalo, por ejemplo, si el intervalo es &#39;Días&#39; y el recuento del intervalo de facturación es 3, las facturas se generarán cada 3 días",
Payment Plan,Plan de Pago,
Subscription Plan Detail,Detalle del Plan de Suscripción,
Plan,Plan,
Subscription Settings,Configuración de Suscripción,
Grace Period,Periodo de Gracia,
Number of days after invoice date has elapsed before canceling subscription or marking subscription as unpaid,Número de días posteriores a la fecha de la factura antes de cancelar la suscripción o marcar la suscripción como no pagada,
Prorate,Prorratear,
Tax Rule,Regla fiscal,
Tax Type,Tipo de impuestos,
Use for Shopping Cart,Utilizar para carrito de compras,
Billing City,Ciudad de facturación,
Billing County,Condado de facturación,
Billing State,Región de facturación,
Billing Zipcode,Código Postal de Facturación,
Billing Country,País de facturación,
Shipping City,Ciudad de envió,
Shipping County,País de envío,
Shipping State,Estado de envío,
Shipping Zipcode,Código Postal de Envío,
Shipping Country,País de envío,
Tax Withholding Account,Cuenta de Retención de Impuestos,
Tax Withholding Rates,Tasas de Retención de Impuestos,
Rates,Precios,
Tax Withholding Rate,Tasa de Retención de Impuestos,
Single Transaction Threshold,Umbral de Transacción único,
Cumulative Transaction Threshold,Umbral de Transacción Acumulativo,
Agriculture Analysis Criteria,Criterios de análisis de agricultura,
Linked Doctype,Doctype Vinculado,
Water Analysis,Análisis de Agua,
Soil Analysis,Análisis de Suelo,
Plant Analysis,Análisis de Planta,
Fertilizer,Fertilizante,
Soil Texture,Textura de la Tierra,
Weather,Clima,
Agriculture Manager,Gerente de Agricultura,
Agriculture User,Usuario de Agricultura,
Agriculture Task,Tarea de Agricultura,
Task Name,Nombre de tarea,
Start Day,Día de Inicio,
End Day,Día Final,
Holiday Management,Gestión de Vacaciones,
Ignore holidays,Ignorar vacaciones,
Previous Business Day,Día Hábil Anterior,
Next Business Day,Siguiente Día de Negocios,
Urgent,Urgente,
Crop Name,Nombre del Cultivo,
Scientific Name,Nombre Científico,
"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.. ","Aquí puede definir todas las tareas que se deben llevar a cabo para este cultivo. El campo del día se usa para mencionar el día en que se debe llevar a cabo la tarea, 1 es el primer día, etc.",
Crop Spacing,Recorte de Espacios,
Crop Spacing UOM,UOM de Separación de Cultivos,
Row Spacing,Distancia entre Filas,
Row Spacing UOM,UOM de Separación de Fla,
Perennial,Perenne,
Biennial,Bienal,
Planting UOM,Plantando UOM,
Planting Area,Área de Plantación,
Yield UOM,Rendimiento UOM,
Materials Required,Materiales Necesarios,
Produced Items,Artículos Producidos,
Produce,Produce,
Byproducts,Subproductos,
Linked Location,Ubicación vinculada,
A link to all the Locations in which the Crop is growing,Un enlace a todas las ubicaciones en las que crece la cosecha,
This will be day 1 of the crop cycle,Este será el día 1 del ciclo de cultivo,
ISO 8601 standard,Norma ISO 8601,
Cycle Type,Tipo de Ciclo,
Less than a year,Menos de un año,
The minimum length between each plant in the field for optimum growth,Longitud mínima entre cada planta en el campo para un crecimiento óptimo,
The minimum distance between rows of plants for optimum growth,Distancia mínima entre las filas de plantas para un crecimiento óptimo,
Detected Diseases,Enfermedades Detectadas,
List of diseases detected on the field. When selected it'll automatically add a list of tasks to deal with the disease ,"Lista de enfermedades detectadas en el campo. Cuando se selecciona, agregará automáticamente una lista de tareas para lidiar con la enfermedad",
Detected Disease,Enfermedad Detectada,
LInked Analysis,Análisis Vinculado,
Disease,Enfermedad,
Tasks Created,Tareas Creadas,
Common Name,Nombre Común,
Treatment Task,Tarea de Tratamiento,
Treatment Period,Período de Tratamiento,
Fertilizer Name,Nombre de Fertilizante,
Density (if liquid),Densidad (si es líquida),
Fertilizer Contents,Contenido del Fertilizante,
Fertilizer Content,Contenido de Fertilizante,
Linked Plant Analysis,Análisis de Plantas Vinculadas,
Linked Soil Analysis,Análisis de Suelo Vinculado,
Linked Soil Texture,Textura de Suelo Vinculado,
Collection Datetime,Colección Fecha y hora,
Laboratory Testing Datetime,Prueba de Laboratorio Fecha y Hora,
Result Datetime,Resultado Fecha y Hora,
Plant Analysis Criterias,Criterios de Análisis de Plantas,
Plant Analysis Criteria,Criterios de Análisis de Plantas,
Minimum Permissible Value,Valor Mínimo Permitido,
Maximum Permissible Value,Valor Máximo Permitido,
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,Criterios de Análisis de Suelos,
Soil Analysis Criteria,Criterios de Análisis de Suelos,
Soil Type,Tipo de Suelo,
Loamy Sand,Arena Arcillosa,
Sandy Loam,Suelo Arenoso,
Loam,Marga,
Silt Loam,Lodo limoso,
Sandy Clay Loam,Arcilla Arenosa Marga,
Clay Loam,Arcilla Magra,
Silty Clay Loam,Limo de Arcilla Arenosa,
Sandy Clay,Arcilla Arenosa,
Silty Clay,Arcilla limosa,
Clay Composition (%),Composición de arcilla (%),
Sand Composition (%),Composición de Arena (%),
Silt Composition (%),Composición del Limo (%),
Ternary Plot,Trama Ternaria,
Soil Texture Criteria,Criterio de Textura del Suelo,
Type of Sample,Tipo de Muestra,
Container,Envase,
Origin,Origen,
Collection Temperature ,Temperatura de Recolección,
Storage Temperature,Temperatura de Almacenamiento,
Appearance,Apariencia,
Person Responsible,Persona Responsable,
Water Analysis Criteria,Criterios de Análisis de Agua,
Weather Parameter,Parámetro Meteorológico,
ACC-ASS-.YYYY.-,ACC-ASS-.YYYY.-,
Asset Owner,Propietario del activo,
Asset Owner Company,Compañia Dueña del Activo,
Custodian,Custodio,
Disposal Date,Fecha de eliminación,
Journal Entry for Scrap,Entrada de diario para desguace,
Available-for-use Date,Fecha disponible para usar,
Calculate Depreciation,Calcular Depreciación,
Allow Monthly Depreciation,Permitir depreciación mensual,
Number of Depreciations Booked,Cantidad de Depreciaciones Reservadas,
Finance Books,Libros de Finanzas,
Straight Line,Línea Recta,
Double Declining Balance,Doble Disminución de Saldo,
Manual,Manual,
Value After Depreciation,Valor después de Depreciación,
Total Number of Depreciations,Número total de amortizaciones,
Frequency of Depreciation (Months),Frecuencia de Depreciación (Meses),
Next Depreciation Date,Siguiente Fecha de Depreciación,
Depreciation Schedule,Programación de la depreciación,
Depreciation Schedules,programas de depreciación,
Insurance details,Detalles del seguro,
Policy number,Número de Póliza,
Insurer,Asegurador,
Insured value,Valor Asegurado,
Insurance Start Date,Fecha de inicio del seguro,
Insurance End Date,Fecha de Finalización del Seguro,
Comprehensive Insurance,Seguro a Todo Riesgo,
Maintenance Required,Requiere Mantenimiento,
Check if Asset requires Preventive Maintenance or Calibration,Verifique si el activo requiere mantenimiento preventivo o calibración,
Booked Fixed Asset,Activo Fijo Reservado,
Purchase Receipt Amount,Importe de recibo de compra,
Default Finance Book,Libro de Finanzas Predeterminado,
Quality Manager,Gerente de Calidad,
Asset Category Name,Nombre de la Categoría de Activos,
Depreciation Options,Opciones de Depreciación,
Enable Capital Work in Progress Accounting,Habilitar la contabilidad del trabajo en curso de capital,
Finance Book Detail,Detalle del Libro de Finanzas,
Asset Category Account,Cuenta de categoría de activos,
Fixed Asset Account,Cuenta de activo fijo,
Accumulated Depreciation Account,Cuenta de depreciación acumulada,
Depreciation Expense Account,Cuenta de gastos de depreciación,
Capital Work In Progress Account,Cuenta Capital Work In Progress,
Asset Finance Book,Libro de Finanzas de Activos,
Written Down Value,Valor Escrito,
Expected Value After Useful Life,Valor esperado después de la Vida Útil,
Rate of Depreciation,Tasa de depreciación,
In Percentage,En porcentaje,
Maintenance Team,Equipo de Mantenimiento,
Maintenance Manager Name,Nombre del Administrador de Mantenimiento,
Maintenance Tasks,Tareas de Mantenimiento,
Manufacturing User,Usuario de Producción,
Asset Maintenance Log,Registro de mantenimiento de activos,
ACC-AML-.YYYY.-,ACC-AML-.YYYY.-,
Maintenance Type,Tipo de Mantenimiento,
Maintenance Status,Estado del Mantenimiento,
Planned,Planificado,
Has Certificate ,Tiene certificado,
Certificate,Certificado,
Actions performed,Acciones realizadas,
Asset Maintenance Task,Tarea de mantenimiento de activos,
Maintenance Task,Tarea de Mantenimiento,
Preventive Maintenance,Mantenimiento Preventivo,
Calibration,Calibración,
2 Yearly,2 años,
Certificate Required,Certificado Requerido,
Assign to Name,Asignar a nombre,
Next Due Date,Fecha de Vencimiento Siguiente,
Last Completion Date,Última Fecha de Finalización,
Asset Maintenance Team,Equipo de mantenimiento de activos,
Maintenance Team Name,Nombre del Equipo de Mantenimiento,
Maintenance Team Members,Miembros del Equipo de Mantenimiento,
Purpose,Propósito,
Stock Manager,Gerente de almacén,
Asset Movement Item,Elemento de movimiento de activos,
Source Location,Ubicación de Origen,
From Employee,Desde Empleado,
Target Location,Ubicación del Objetivo,
To Employee,Para el Empleado,
Asset Repair,Reparación de Activos,
ACC-ASR-.YYYY.-,ACC-ASR-.YYYY.-,
Failure Date,Fecha de Falla,
Assign To Name,Asignar a Nombre,
Repair Status,Estado de Reparación,
Error Description,Descripción del Error,
Downtime,Tiempo de Inactividad,
Repair Cost,Coste de la Reparación,
Manufacturing Manager,Gerente de Producción,
Current Asset Value,Valor de Activo Actual,
New Asset Value,Nuevo Valor de Activo,
Make Depreciation Entry,Hacer la Entrada de Depreciación,
Finance Book Id,ID de Libro de Finanzas,
Location Name,Nombre del Lugar,
Parent Location,Ubicación Padre,
Is Container,Es Contenedor,
Check if it is a hydroponic unit,Verifica si es una unidad hidropónica,
Location Details,Detalles de Ubicación,
Latitude,Latitud,
Longitude,Longitud,
Area,Zona,
Area UOM,Área UOM,
Tree Details,Detalles del árbol,
Maintenance Team Member,Miembro del Equipo de Mantenimiento,
Team Member,Miembro del Equipo,
Maintenance Role,Rol de Mantenimiento,
Buying Settings,Configuración de compras,
Settings for Buying Module,Ajustes para módulo de compras,
Supplier Naming By,Ordenar proveedores por,
Default Supplier Group,Grupo de Proveedores Predeterminado,
Default Buying Price List,Lista de precios por defecto,
Backflush Raw Materials of Subcontract Based On,Adquisición retroactiva de materia prima del subcontrato basadas en,
Material Transferred for Subcontract,Material Transferido para Subcontrato,
Over Transfer Allowance (%),Sobre asignación de transferencia (%),
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.,"Porcentaje que se le permite transferir más contra la cantidad solicitada. Por ejemplo: si ha pedido 100 unidades. y su asignación es del 10%, entonces puede transferir 110 unidades.",
PUR-ORD-.YYYY.-,PUR-ORD-.YYYY.-,
Get Items from Open Material Requests,Obtener elementos de solicitudes de materiales abiertas,
Fetch items based on Default Supplier.,Obtenga artículos según el proveedor predeterminado.,
Required By,Solicitado por,
Order Confirmation No,Confirmación de Pedido Nro,
Order Confirmation Date,Fecha de Confirmación del Pedido,
Customer Mobile No,Numero de móvil de cliente,
Customer Contact Email,Correo electrónico de contacto de cliente,
Set Target Warehouse,Asignar Almacén Destino,
Sets 'Warehouse' in each row of the Items table.,Establece &#39;Almacén&#39; en cada fila de la tabla Artículos.,
Supply Raw Materials,Suministro de materia prima,
Purchase Order Pricing Rule,Regla de precios de orden de compra,
Set Reserve Warehouse,Establecer almacén de reserva,
In Words will be visible once you save the Purchase Order.,La cantidad en palabras será visible una vez que guarde la orden de compra.,
Advance Paid,Pago Anticipado,
Tracking,Rastreo,
% Billed,% Facturado,
% Received,% Recibido,
Ref SQ,Ref. SQ,
Inter Company Order Reference,Referencia de pedido entre empresas,
Supplier Part Number,Número de pieza del proveedor.,
Billed Amt,Monto facturado,
Warehouse and Reference,Almacén y Referencia,
To be delivered to customer,Para ser entregado al cliente,
Material Request Item,Requisición de Materiales del Producto,
Supplier Quotation Item,Ítem de Presupuesto de Proveedor,
Against Blanket Order,Contra la orden general,
Blanket Order,Orden de la Manta,
Blanket Order Rate,Tasa de orden general,
Returned Qty,Cantidad devuelta,
Purchase Order Item Supplied,Producto suministrado desde orden de compra,
BOM Detail No,Detalles de Lista de materiales (LdM) No.,
Stock Uom,Unidad de media utilizada en el almacen,
Raw Material Item Code,Código de materia prima,
Supplied Qty,Cant. Suministrada,
Purchase Receipt Item Supplied,Recibo de compra del producto suministrado,
Current Stock,Inventario Actual,
PUR-RFQ-.YYYY.-,PUR-RFQ-.YYYY.-,
For individual supplier,Por proveedor individual,
Link to Material Requests,Enlace a solicitudes de material,
Message for Supplier,Mensaje para los Proveedores,
Request for Quotation Item,Ítems de Solicitud de Presupuesto,
Required Date,Fecha de solicitud,
Request for Quotation Supplier,Proveedor de Solicitud de Presupuesto,
Send Email,Enviar correo electronico,
Quote Status,Estado de la Cotización,
Download PDF,Descargar PDF,
Supplier of Goods or Services.,Proveedor de servicios y/o productos.,
Name and Type,Nombre y Tipo,
SUP-.YYYY.-,SUP-.YYYY.-,
Default Bank Account,Cuenta bancaria por defecto,
Is Transporter,Es transportador,
Represents Company,Representa a la Compañía,
Supplier Type,Tipo de proveedor,
Allow Purchase Invoice Creation Without Purchase Order,Permitir la creación de facturas de compra sin orden de compra,
Allow Purchase Invoice Creation Without Purchase Receipt,Permitir la creación de facturas de compra sin recibo de compra,
Warn RFQs,Avisar en Pedidos de Presupuesto (RFQs),
Warn POs,Avisar en las OCs,
Prevent RFQs,Evitar las Solicitudes de Presupuesto (RFQs),
Prevent POs,Prevenga las OCs,
Billing Currency,Moneda de facturación,
Default Payment Terms Template,Plantilla de Términos de Pago Predeterminados,
Block Supplier,Bloquear Proveedor,
Hold Type,Tipo de Retención,
Leave blank if the Supplier is blocked indefinitely,Déjelo en blanco si el Proveedor está bloqueado indefinidamente,
Default Payable Accounts,Cuentas por pagar por defecto,
Mention if non-standard payable account,Mencionar si la cuenta no  es cuenta estándar a pagar,
Default Tax Withholding Config,Configuración de Retención de Impuestos Predeterminada,
Supplier Details,Detalles del proveedor,
Statutory info and other general information about your Supplier,Información legal u otra información general acerca de su proveedor,
PUR-SQTN-.YYYY.-,PUR-SQTN-.YYYY.-,
Supplier Address,Dirección de proveedor,
Link to material requests,Enlace a las solicitudes de materiales,
Rounding Adjustment (Company Currency,Ajuste de Redondeo (Moneda de la Empresa,
Auto Repeat Section,Sección de Repetición Automática,
Is Subcontracted,Es sub-contratado,
Lead Time in days,Plazo de ejecución en días,
Supplier Score,Puntuación del Proveedor,
Indicator Color,Color del Indicador,
Evaluation Period,Periodo de Evaluación,
Per Week,Por Semana,
Per Month,Por Mes,
Per Year,Por Año,
Scoring Setup,Configuración de Calificación,
Weighting Function,Función de ponderación,
"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","Se pueden utilizar las variables de la tarjeta de puntuación, así como: {total_score} (la puntuación total de ese período), {period_number} (el número de períodos hasta la fecha)",
Scoring Standings,Clasificación de las puntuaciones,
Criteria Setup,Configuración de los Criterios,
Load All Criteria,Cargar todos los criterios,
Scoring Criteria,Criterios de Calificación,
Scorecard Actions,Acciones de Calificación de Proveedores,
Warn for new Request for Quotations,Avisar de nuevas Solicitudes de Presupuesto,
Warn for new Purchase Orders,Avisar para nuevas Órdenes de Compra,
Notify Supplier,Notificar al Proveedor,
Notify Employee,Notificar al Empleado,
Supplier Scorecard Criteria,Criterios de Calificación del Proveedor,
Criteria Name,Nombre del Criterio,
Max Score,Puntuación Máxima,
Criteria Formula,Fórmula de Criterios,
Criteria Weight,Peso del Criterio,
Supplier Scorecard Period,Período de Calificación de Proveedores,
PU-SSP-.YYYY.-,PU-SSP-.YYYY.-,
Period Score,Puntuación del Período,
Calculations,Cálculos,
Criteria,Criterios,
Variables,Variables,
Supplier Scorecard Setup,Configuración de la Calificación del Proveedor,
Supplier Scorecard Scoring Criteria,Criterios de calificación de la tarjeta de puntaje del proveedor,
Score,Puntuación,
Supplier Scorecard Scoring Standing,Puntuación actual de la tarjeta de puntuación de proveedor,
Standing Name,Nombre en uso,
Purple,Púrpura,
Yellow,Amarillo,
Orange,naranja,
Min Grade,Grado mínimo,
Max Grade,Grado máximo,
Warn Purchase Orders,Avisar en Órdenes de Compra,
Prevent Purchase Orders,Evitar Órdenes de Compra,
Employee ,Empleado,
Supplier Scorecard Scoring Variable,Variable de puntuación de tarjeta de calificación del proveedor,
Variable Name,Nombre de la Variable,
Parameter Name,Nombre del Parámetro,
Supplier Scorecard Standing,Tarjeta de puntuación de proveedores,
Notify Other,Notificar Otro,
Supplier Scorecard Variable,Variable de la Calificación del Proveedor,
Call Log,Registro de llamadas,
Received By,Recibido por,
Caller Information,Información de la llamada,
Contact Name,Nombre de contacto,
Lead ,Iniciativa,
Lead Name,Nombre de la iniciativa,
Ringing,Zumbido,
Missed,Perdido,
Call Duration in seconds,Duración de la llamada en segundos,
Recording URL,URL de grabación,
Communication Medium,Medio de comunicación,
Communication Medium Type,Tipo de medio de comunicación,
Voice,Voz,
Catch All,Atrapar a todos,
"If there is no assigned timeslot, then communication will be handled by this group","Si no hay un intervalo de tiempo asignado, la comunicación será manejada por este grupo",
Timeslots,Ranuras de tiempo,
Communication Medium Timeslot,Intervalo de tiempo medio de comunicación,
Employee Group,Grupo de empleados,
Appointment,Cita,
Scheduled Time,Hora programada,
Unverified,Inconfirmado,
Customer Details,Datos de Cliente,
Phone Number,Número de teléfono,
Skype ID,Identificación del skype,
Linked Documents,Documentos vinculados,
Appointment With,Cita con,
Calendar Event,Calendario de eventos,
Appointment Booking Settings,Configuración de reserva de citas,
Enable Appointment Scheduling,Habilitar programación de citas,
Agent Details,Detalles del agente,
Availability Of Slots,Disponibilidad de ranuras,
Number of Concurrent Appointments,Número de citas concurrentes,
Agents,Agentes,
Appointment Details,Detalles de la cita,
Appointment Duration (In Minutes),Duración de la cita (en minutos),
Notify Via Email,Notificar por correo electrónico,
Notify customer and agent via email on the day of the appointment.,Notifique al cliente y al agente por correo electrónico el día de la cita.,
Number of days appointments can be booked in advance,Número de días que las citas se pueden reservar por adelantado,
Success Settings,Configuraciones exitosas,
Success Redirect URL,URL de redireccionamiento correcto,
"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Dejar en blanco para el hogar. Esto es relativo a la URL del sitio, por ejemplo &quot;acerca de&quot; redirigirá a &quot;https://yoursitename.com/about&quot;",
Appointment Booking Slots,Ranuras de reserva de citas,
Day Of Week,Día de la semana,
From Time ,Desde hora,
Campaign Email Schedule,Programa de correo electrónico de campaña,
Send After (days),Enviar después (días),
Signed,Firmado,
Party User,Usuario Tercero,
Unsigned,No Firmado,
Fulfilment Status,Estado de Cumplimiento,
N/A,N/A,
Unfulfilled,Incumplido,
Partially Fulfilled,Parcialmente Cumplido,
Fulfilled,Cumplido,
Lapsed,Transcurrido,
Contract Period,Período de Contrato,
Signee Details,Detalles del Firmante,
Signee,Firmante,
Signed On,Firmado el,
Contract Details,Detalles del Contrato,
Contract Template,Plantilla de Contrato,
Contract Terms,Terminos y Condiciones,
Fulfilment Details,Detalles de Cumplimiento,
Requires Fulfilment,Requiere Cumplimiento,
Fulfilment Deadline,Fecha límite de Cumplimiento,
Fulfilment Terms,Términos de Cumplimiento,
Contract Fulfilment Checklist,Lista de Verificación de Cumplimiento del Contrato,
Requirement,Requisito,
Contract Terms and Conditions,Términos y Condiciones del Contrato,
Fulfilment Terms and Conditions,Términos y Condiciones de Cumplimiento,
Contract Template Fulfilment Terms,Términos de Cumplimiento de Plantilla de Contrato,
Email Campaign,Campaña de correo electrónico,
Email Campaign For ,Campaña de correo electrónico para,
Lead is an Organization,La Iniciativa es una Organización,
CRM-LEAD-.YYYY.-,CRM-LEAD-.YYYY.-,
Person Name,Nombre de persona,
Lost Quotation,Presupuesto perdido,
Interested,Interesado,
Converted,Convertido,
Do Not Contact,No contactar,
From Customer,Desde cliente,
Campaign Name,Nombre de la campaña,
Follow Up,Seguir,
Next Contact By,Siguiente contacto por,
Next Contact Date,Siguiente fecha de contacto,
Ends On,Termina el,
Address & Contact,Dirección y Contacto,
Mobile No.,Número móvil,
Lead Type,Tipo de iniciativa,
Channel Partner,Canal de socio,
Consultant,Consultor,
Market Segment,Sector de Mercado,
Industry,Industria,
Request Type,Tipo de solicitud,
Product Enquiry,Petición de producto,
Request for Information,Solicitud de información,
Suggestions,Sugerencias.,
Blog Subscriber,Suscriptor del Blog,
LinkedIn Settings,Configuración de LinkedIn,
Company ID,ID de la compañía,
OAuth Credentials,Credenciales de OAuth,
Consumer Key,Clave del consumidor,
Consumer Secret,Secreto del consumidor,
User Details,Detalles de usuario,
Person URN,Persona URN,
Session Status,Estado de la sesión,
Lost Reason Detail,Detalle de razón perdida,
Opportunity Lost Reason,Oportunidad Razón perdida,
Potential Sales Deal,Potenciales acuerdos de venta,
CRM-OPP-.YYYY.-,CRM-OPP-.YYYY.-,
Opportunity From,Oportunidad desde,
Customer / Lead Name,Cliente / Oportunidad,
Opportunity Type,Tipo de oportunidad,
Converted By,Convertido por,
Sales Stage,Etapa de Ventas,
Lost Reason,Razón de la pérdida,
Expected Closing Date,Fecha de cierre prevista,
To Discuss,Para discusión,
With Items,Con Productos,
Probability (%),Probabilidad (%),
Contact Info,Información de contacto,
Customer / Lead Address,Dirección de cliente / Oportunidad,
Contact Mobile No,No. móvil de contacto,
Enter name of campaign if source of enquiry is campaign,"Introduzca el nombre de la campaña, si la solicitud viene desde esta.",
Opportunity Date,Fecha de oportunidad,
Opportunity Item,Oportunidad Artículo,
Basic Rate,Precio Base,
Stage Name,Nombre del Escenario,
Social Media Post,Publicación en redes sociales,
Post Status,Estado de la publicación,
Posted,Al corriente,
Share On,Compartir en,
Twitter,Gorjeo,
LinkedIn,LinkedIn,
Twitter Post Id,ID de publicación de Twitter,
LinkedIn Post Id,ID de publicación de LinkedIn,
Tweet,Pío,
Twitter Settings,Configuración de Twitter,
API Secret Key,Clave secreta de API,
Term Name,Nombre plazo,
Term Start Date,Plazo Fecha de Inicio,
Term End Date,Plazo Fecha de finalización,
Academics User,Usuario Académico,
Academic Year Name,Nombre Año Académico,
Article,Artículo,
LMS User,Usuario LMS,
Assessment Criteria Group,Criterios de evaluación del Grupo,
Assessment Group Name,Nombre del grupo de evaluación,
Parent Assessment Group,Grupo de Evaluación de Padres,
Assessment Name,Nombre de la Evaluación,
Grading Scale,Escala de calificación,
Examiner,Examinador,
Examiner Name,Nombre del examinador,
Supervisor,Supervisor,
Supervisor Name,Nombre del supervisor,
Evaluate,Evaluar,
Maximum Assessment Score,Puntuación máxima de Evaluación,
Assessment Plan Criteria,Criterios de evaluación del plan,
Maximum Score,Puntuación Máxima,
Grade,Grado,
Assessment Result Detail,Detalle del Resultado de la Evaluación,
Assessment Result Tool,Herramienta Resultado de la Evaluación,
Result HTML,Resultado HTML,
Content Activity,Actividad de contenido,
Last Activity ,Última actividad,
Content Question,Pregunta de contenido,
Question Link,Enlace de pregunta,
Course Name,Nombre del curso,
Topics,Temas,
Hero Image,Imagen de héroe,
Default Grading Scale,Escala de Calificación por defecto,
Education Manager,Gerente de Educación,
Course Activity,Actividad del curso,
Course Enrollment,Inscripción al curso,
Activity Date,Fecha de actividad,
Course Assessment Criteria,Criterios de Evaluación del Curso,
Weightage,Asignación,
Course Content,Contenido del curso,
Quiz,Examen,
Program Enrollment,Programa de Inscripción,
Enrollment Date,Fecha de inscripción,
Instructor Name,Nombre del Instructor,
EDU-CSH-.YYYY.-,EDU-CSH-.YYYY.-,
Course Scheduling Tool,Herramienta de Programación de Cursos,
Course Start Date,Fecha de inicio del Curso,
To TIme,Hasta hora,
Course End Date,Fecha de finalización del curso,
Course Topic,Tema del curso,
Topic Name,Nombre del tema,
Education Settings,Configuración de Educación,
Current Academic Year,Año académico actual,
Current Academic Term,Término académico actual,
Attendance Freeze Date,Fecha de Congelación de Asistencia,
Validate Batch for Students in Student Group,Validar lote para estudiantes en grupo de estudiantes,
"For Batch based Student Group, the Student Batch will be validated for every Student from the Program Enrollment.","Para el grupo de estudiantes basado en lotes, el lote de estudiantes será validado para cada estudiante de la inscripción al programa.",
Validate Enrolled Course for Students in Student Group,Validar matriculados al Curso para estudiantes en grupo de alumnos,
"For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.","Para los grupos de estudiantes basados en cursos, el curso será validado para cada estudiante de los cursos inscritos en la inscripción al programa.",
Make Academic Term Mandatory,Hacer el término académico obligatorio,
"If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.","Si está habilitado, el término académico del campo será obligatorio en la herramienta de inscripción al programa.",
Skip User creation for new Student,Omitir la creación de usuarios para nuevos estudiantes,
"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.","De forma predeterminada, se crea un nuevo usuario para cada nuevo alumno. Si está habilitado, no se creará ningún usuario nuevo cuando se cree un estudiante nuevo.",
Instructor Records to be created by,Registros del Instructor que serán creados por,
Employee Number,Número de empleado,
Fee Category,Categoría de cuota,
Fee Component,Componente de Couta,
Fees Category,Categoría de cuotas,
Fee Schedule,Programa de Cuotas,
Fee Structure,Estructura de cuotas,
EDU-FSH-.YYYY.-,EDU-FSH-.YYYY.-,
Fee Creation Status,Estado de Creación de Cuota,
In Process,En Proceso,
Send Payment Request Email,Enviar Solicitud de Pago por Email,
Student Category,Categoría estudiante,
Fee Breakup for each student,Disminución de la Cuota para cada Estudiante,
Total Amount per Student,Cantidad total por Estudiante,
Institution,Institución,
Fee Schedule Program,Programa de Horarios de Cuotas,
Student Batch,Lote de Estudiante,
Total Students,Total de Estudiantes,
Fee Schedule Student Group,Programa de Cuotas Grupo de Estudiantes,
EDU-FST-.YYYY.-,EDU-FST-.YYYY.-,
EDU-FEE-.YYYY.-,EDU-FEE-.YYYY.-,
Include Payment,Incluir Pago,
Send Payment Request,Enviar Ssolicitud de Pago,
Student Details,Detalles del Estudiante,
Student Email,Correo electrónico del Estudiante,
Grading Scale Name,Nombre de  Escala de Calificación,
Grading Scale Intervals,Intervalos de Escala de Calificación,
Intervals,intervalos,
Grading Scale Interval,Intervalo de Escala de Calificación,
Grade Code,Código de Grado,
Threshold,Límite,
Grade Description,Descripción de Grado,
Guardian,Tutor,
Guardian Name,Nombre del Tutor,
Alternate Number,Número Alternativo,
Occupation,Ocupación,
Work Address,Dirección del trabajo,
Guardian Of ,Tutor de,
Students,Estudiantes,
Guardian Interests,Intereses del Tutor,
Guardian Interest,Interés del Tutor,
Interest,Interesar,
Guardian Student,Tutor del Estudiante,
EDU-INS-.YYYY.-,EDU-INS-.YYYY.-,
Instructor Log,Registro de Instructor,
Other details,Otros detalles,
Option,Opción,
Is Correct,Es correcto,
Program Name,Nombre del programa,
Program Abbreviation,Abreviatura del Programa,
Courses,Cursos,
Is Published,Esta publicado,
Allow Self Enroll,Permitir autoinscripción,
Is Featured,Es destacado,
Intro Video,Video de introducción,
Program Course,Programa de Curso,
School House,Casa Escolar,
Boarding Student,Estudiante de Embarque,
Check this if the Student is residing at the Institute's Hostel.,Marque esto si el estudiante está residiendo en el albergue del Instituto.,
Walking,Caminando,
Institute's Bus,Autobús del Instituto,
Self-Driving Vehicle,Vehículo auto-manejado,
Pick/Drop by Guardian,Recoger/Soltar por Tutor,
Enrolled courses,Cursos matriculados,
Program Enrollment Course,Inscripción al Programa Curso,
Program Enrollment Fee,Cuota de Inscripción al Programa,
Program Enrollment Tool,Herramienta de Inscripción a Programa,
Get Students From,Obtener Estudiantes Desde,
Student Applicant,Estudiante Solicitante,
Get Students,Obtener Estudiantes,
Enrollment Details,Detalles de Inscripción,
New Program,Nuevo Programa,
New Student Batch,Nuevo Lote de Estudiantes,
Enroll Students,Inscribir Estudiantes,
New Academic Year,Nuevo Año Académico,
New Academic Term,Nuevo Término Académico,
Program Enrollment Tool Student,Herramienta de Inscripción de Estudiante a Programa,
Student Batch Name,Nombre de Lote del Estudiante,
Program Fee,Cuota del Programa,
Question,Pregunta,
Single Correct Answer,Respuesta correcta única,
Multiple Correct Answer,Respuesta correcta múltiple,
Quiz Configuration,Configuración de cuestionario,
Passing Score,Puntaje de aprobación,
Score out of 100,Puntuación de 100,
Max Attempts,Intentos máximos,
Enter 0 to waive limit,Ingrese 0 para renunciar al límite,
Grading Basis,Base de calificación,
Latest Highest Score,Puntaje más alto más reciente,
Latest Attempt,Último intento,
Quiz Activity,Actividad de prueba,
Enrollment,Inscripción,
Pass,Pasar,
Quiz Question,Pregunta de prueba,
Quiz Result,Resultado del cuestionario,
Selected Option,Opcion Seleccionada,
Correct,Correcto,
Wrong,Incorrecto,
Room Name,Nombre de la habitación,
Room Number,Número de habitación,
Seating Capacity,Número de plazas,
House Name,Nombre de la casa,
EDU-STU-.YYYY.-,EDU-STU-.YYYY.-,
Student Mobile Number,Número móvil del Estudiante,
Blood Group,Grupo sanguíneo,
A+,A +,
A-,A-,
B+,B +,
B-,B-,
O+,O +,
O-,O-,
AB+,AB +,
AB-,AB-,
Nationality,Nacionalidad,
Home Address,Direccion de casa,
Guardian Details,Detalles del Tutor,
Guardians,Tutores,
Sibling Details,Detalles de hermanos,
Siblings,Hermanos,
Exit,Salir,
Date of Leaving,Fecha de partida,
Leaving Certificate Number,Número de certificado de salida,
Reason For Leaving,Razón para irse,
Student Admission,Admisión de Estudiantes,
Admission Start Date,Fecha de inicio de la admisión,
Admission End Date,Fecha de finalización de la admisión,
Eligibility and Details,Elegibilidad y Detalles,
Student Admission Program,Programa de Admisión de Estudiantes,
Minimum Age,Edad Mínima,
Maximum Age,Edad Máxima,
Application Fee,Cuota de solicitud,
Naming Series (for Student Applicant),Serie de nomenclatura (por Estudiante Solicitante),
LMS Only,Solo LMS,
EDU-APP-.YYYY.-,EDU-APP-.YYYY.-,
Application Date,Fecha de aplicacion,
Student Attendance Tool,Herramienta de asistencia de los estudiantes,
Group Based On,Grupo basado en,
Students HTML,HTML de Estudiantes,
Group Based on,Grupo Basado En,
Student Group Name,Nombre del grupo de estudiante,
Max Strength,Fuerza Máx,
Set 0 for no limit,Ajuste 0 indica sin límite,
Instructors,Instructores,
Student Group Creation Tool,Herramienta de creación de grupo de alumnos,
Leave blank if you make students groups per year,Deje en blanco si hace grupos de estudiantes por año,
Get Courses,Obtener Cursos,
Separate course based Group for every Batch,Grupo separado basado en el curso para cada lote,
Leave unchecked if you don't want to consider batch while making course based groups. ,Deje sin marcar si no desea considerar el lote mientras hace grupos basados en curso.,
Student Group Creation Tool Course,Curso herramienta de creación de grupo de alumnos,
Course Code,Código del curso,
Student Group Instructor,Instructor de Grupo Estudiantil,
Student Group Student,Estudiante Grupo Estudiantil,
Group Roll Number,Grupo Número de rodillos,
Student Guardian,Tutor del estudiante,
Relation,Relación,
Mother,Madre,
Father,Padre,
Student Language,Idioma del Estudiante,
Student Leave Application,Solicitud de Licencia para Estudiante,
Mark as Present,Marcar como Presente,
Student Log,Bitácora del Estudiante,
Academic,Académico,
Achievement,Logro,
Student Report Generation Tool,Herramienta de Generación de Informes Estudiantiles,
Include All Assessment Group,Incluir todo el Grupo de Evaluación,
Show Marks,Mostrar Marcas,
Add letterhead,Agregar membrete,
Print Section,Imprimir Sección,
Total Parents Teacher Meeting,Reunión total de Padres y Maestros,
Attended by Parents,Asistido por los Padres,
Assessment Terms,Términos de Evaluación,
Student Sibling,Hermano del Estudiante,
Studying in Same Institute,Estudian en el mismo Instituto,
NO,NO,
YES,Sí,
Student Siblings,Hermanos del Estudiante,
Topic Content,Contenido del tema,
Amazon MWS Settings,Configuración de Amazon MWS,
ERPNext Integrations,Integraciones ERPNext,
Enable Amazon,Habilitar Amazon,
MWS Credentials,Credenciales de MWS,
Seller ID,Identificación del Vendedor,
AWS Access Key ID,ID de clave de acceso AWS,
MWS Auth Token,Token de Autenticación MWS,
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,Reino Unido,
US,Estados Unidos,
Customer Type,Tipo de Cliente,
Market Place Account Group,Grupo de cuentas Market Place,
After Date,Después de la Fecha,
Amazon will synch data updated after this date,Amazon sincronizará los datos actualizados después de esta fecha,
Sync Taxes and Charges,Sincronizar impuestos y cargos,
Get financial breakup of Taxes and charges data by Amazon ,Obtener la desintegración financiera de los datos de impuestos y cargos por Amazon,
Sync Products,Productos de sincronización,
Always sync your products from Amazon MWS before synching the Orders details,Sincronice siempre sus productos de Amazon MWS antes de sincronizar los detalles de los pedidos,
Sync Orders,Sincronizar pedidos,
Click this button to pull your Sales Order data from Amazon MWS.,Haga clic en este botón para extraer los datos de su pedido de cliente de Amazon MWS.,
Enable Scheduled Sync,Habilitar sincronización programada,
Check this to enable a scheduled Daily synchronization routine via scheduler,Marque esto para habilitar una rutina programada de sincronización diaria a través del programador,
Max Retry Limit,Límite máximo de reintento,
Exotel Settings,Configuraciones de Exotel,
Account SID,SID de cuenta,
API Token,Token API,
GoCardless Mandate,Mandato GoCardless,
Mandate,Mandato,
GoCardless Customer,Cliente GoCardless,
GoCardless Settings,Configuración de GoCardless,
Webhooks Secret,Webhooks Secret,
Plaid Settings,Configuración de cuadros,
Synchronize all accounts every hour,Sincronice todas las cuentas cada hora,
Plaid Client ID,ID de cliente a cuadros,
Plaid Secret,Secreto a cuadros,
Plaid Environment,Ambiente a cuadros,
sandbox,salvadera,
development,desarrollo,
production,producción,
QuickBooks Migrator,Migrador de QuickBooks,
Application Settings,Configuraciones de la Aplicación,
Token Endpoint,Token Endpoint,
Scope,Alcance,
Authorization Settings,Configuraciones de Autorización,
Authorization Endpoint,Endpoint de Autorización,
Authorization URL,URL de Autorización,
Quickbooks Company ID,ID de la Empresa en Quickbooks,
Company Settings,Configuración de la compañía,
Default Shipping Account,Cuenta de Envío por Defecto,
Default Warehouse,Almacén por defecto,
Default Cost Center,Centro de costos por defecto,
Undeposited Funds Account,Cuenta de Fondos no Depositados,
Shopify Log,Log de Shopify,
Shopify Settings,Configuración de Shopify,
status html,estado html,
Enable Shopify,Habilitar Shopify,
App Type,Tipo de Aplicación,
Last Sync Datetime,Última Sincronización Fecha y hora,
Shop URL,URL de la Tienda,
eg: frappe.myshopify.com,por ejemplo: frappe.myshopify.com,
Shared secret,Secreto Compartido,
Webhooks Details,Detalles de Webhooks,
Webhooks,Webhooks,
Customer Settings,Configuración del Cliente,
Default Customer,Cliente predeterminado,
Customer Group will set to selected group while syncing customers from Shopify,El grupo de clientes se configurará en el grupo seleccionado mientras se sincroniza a los clientes de Shopify,
For Company,Para la empresa,
Cash Account will used for Sales Invoice creation,La cuenta de efectivo se usará para la creación de facturas de ventas,
Update Price from Shopify To ERPNext Price List,Actualizar precio de Shopify a la Lista de Precios de ERPNext,
Default Warehouse to to create Sales Order and Delivery Note,Almacén predeterminado para crear una Órden de Venta y una Nota de Entrega,
Sales Order Series,Serie de Órdenes de Venta,
Import Delivery Notes from Shopify on Shipment,Importar notas de entrega de Shopify en el envío,
Delivery Note Series,Serie de Notas de Entrega,
Import Sales Invoice from Shopify if Payment is marked,Importar factura de ventas de Shopify si el pago está marcado,
Sales Invoice Series,Serie de Factura de Ventas,
Shopify Tax Account,Cuenta de Impuestos de Shopify,
Shopify Tax/Shipping Title,Impuesto de Shopify / Título del Envío,
ERPNext Account,Cuenta ERPNext,
Shopify Webhook Detail,Detalle de Webhook de Shopify,
Webhook ID,ID de Webhook,
Tally Migration,Tally Migration,
Master Data,Datos maestros,
"Data exported from Tally that consists of the Chart of Accounts, Customers, Suppliers, Addresses, Items and UOMs","Datos exportados de Tally que consisten en el plan de cuentas, clientes, proveedores, direcciones, artículos y unidades de medida",
Is Master Data Processed,¿Se procesan los datos maestros?,
Is Master Data Imported,¿Se importan los datos maestros?,
Tally Creditors Account,Cuenta de acreedores de Tally,
Creditors Account set in Tally,Cuenta de acreedores establecida en Tally,
Tally Debtors Account,Cuenta de deudores de Tally,
Debtors Account set in Tally,Cuenta deudores configurada en Tally,
Tally Company,Tally Company,
Company Name as per Imported Tally Data,Nombre de la empresa según los datos de conteo importados,
Default UOM,Unidad de medida predeterminada,
UOM in case unspecified in imported data,UOM en caso no especificado en los datos importados,
ERPNext Company,ERPNext Company,
Your Company set in ERPNext,Su empresa en ERPNext,
Processed Files,Archivos procesados,
Parties,Fiestas,
UOMs,UdM,
Vouchers,Vales,
Round Off Account,Cuenta de redondeo por defecto,
Day Book Data,Datos del libro diario,
Day Book Data exported from Tally that consists of all historic transactions,Datos del libro diario exportados de Tally que consisten en todas las transacciones históricas,
Is Day Book Data Processed,¿Se procesan los datos del libro diario?,
Is Day Book Data Imported,¿Se importan los datos del libro diario?,
Woocommerce Settings,Configuración de Woocommerce,
Enable Sync,Habilitar Sincronización,
Woocommerce Server URL,URL del servidor WooCommerce,
Secret,Secreto,
API consumer key,Clave de Consumidor API,
API consumer secret,Clave Secreta de Consumidor API,
Tax Account,Cuenta de Impuestos,
Freight and Forwarding Account,Cuenta de Flete y Reenvío,
Creation User,Usuario de creación,
"The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.","El usuario que se utilizará para crear clientes, artículos y pedidos de venta. Este usuario debe tener los permisos relevantes.",
"This warehouse will be used to create Sales Orders. The fallback warehouse is ""Stores"".",Este almacén se utilizará para crear pedidos de ventas. El almacén de reserva es &quot;Tiendas&quot;.,
"The fallback series is ""SO-WOO-"".",La serie alternativa es &quot;SO-WOO-&quot;.,
This company will be used to create Sales Orders.,Esta empresa se utilizará para crear pedidos de ventas.,
Delivery After (Days),Entrega después (días),
This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Este es el desplazamiento predeterminado (días) para la Fecha de entrega en Pedidos de ventas. La compensación alternativa es de 7 días a partir de la fecha de colocación del pedido.,
"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Esta es la UOM predeterminada utilizada para artículos y pedidos de ventas. El UOM alternativo es &quot;Nos&quot;.,
Endpoints,Endpoints,
Endpoint,Punto Final,
Antibiotic Name,Nombre del Antibiótico,
Healthcare Administrator,Administrador de Atención Médica,
Laboratory User,Usuario del Laboratorio,
Is Inpatient,Es paciente hospitalizado,
Default Duration (In Minutes),Duración predeterminada (en minutos),
Body Part,Parte del cuerpo,
Body Part Link,Enlace de parte del cuerpo,
HLC-CPR-.YYYY.-,HLC-CPR-.YYYY.-,
Procedure Template,Plantilla de Procedimiento,
Procedure Prescription,Prescripción del Procedimiento,
Service Unit,Unidad de Servicio,
Consumables,Consumibles,
Consume Stock,Consumir Acciones,
Invoice Consumables Separately,Facturar consumibles por separado,
Consumption Invoiced,Consumo facturado,
Consumable Total Amount,Cantidad total consumible,
Consumption Details,Detalles de consumo,
Nursing User,Usuario de Enfermería,
Clinical Procedure Item,Artículo de Procedimiento Clínico,
Invoice Separately as Consumables,Factura por separado como consumibles,
Transfer Qty,Cantidad Transferida,
Actual Qty (at source/target),Cantidad real (en origen/destino),
Is Billable,Es facturable,
Allow Stock Consumption,Permitir el Consumo de Acciones,
Sample UOM,UOM de muestra,
Collection Details,Detalles del Cobro,
Change In Item,Cambio de artículo,
Codification Table,Tabla de Codificación,
Complaints,Quejas,
Dosage Strength,Fuerza de la Dosis,
Strength,Fuerza,
Drug Prescription,Prescripción de Medicamentos,
Drug Name / Description,Nombre / descripción del fármaco,
Dosage,Dosificación,
Dosage by Time Interval,Dosificación por intervalo de tiempo,
Interval,Intervalo,
Interval UOM,Intervalo UOM,
Hour,Hora,
Update Schedule,Actualizar Programa,
Exercise,Ejercicio,
Difficulty Level,Nivel de dificultad,
Counts Target,Cuenta objetivo,
Counts Completed,Recuentos completados,
Assistance Level,Nivel de asistencia,
Active Assist,Asistencia activa,
Exercise Name,Nombre del ejercicio,
Body Parts,Partes del cuerpo,
Exercise Instructions,Instrucciones de ejercicio,
Exercise Video,Video de ejercicio,
Exercise Steps,Pasos del ejercicio,
Steps Table,Tabla de pasos,
Exercise Type Step,Tipo de ejercicio Paso,
Max number of visit,Número máximo de visitas,
Visited yet,Visitado Todavía,
Reference Appointments,Citas de referencia,
Valid till,Válida hasta,
Fee Validity Reference,Referencia de validez de tarifa,
Basic Details,Detalles básicos,
HLC-PRAC-.YYYY.-,HLC-PRAC-.YYYY.-,
Mobile,Móvil,
Phone (R),Teléfono (R),
Phone (Office),Teléfono (Oficina),
Employee and User Details,Detalles de empleados y usuarios,
Hospital,Hospital,
Appointments,Citas,
Practitioner Schedules,Horarios de Practicantes,
Charges,Cargos,
Out Patient Consulting Charge,Cargo por consulta externa,
Default Currency,Divisa / modena predeterminada,
Healthcare Schedule Time Slot,Horario de atención médica Horario,
Parent Service Unit,Unidad de Servicio para Padres,
Service Unit Type,Tipo de Unidad de Servicio,
Allow Appointments,Permitir Citas,
Allow Overlap,Permitir Superposición,
Inpatient Occupancy,Ocupación de pacientes hospitalizados,
Occupancy Status,Estado de Ocupación,
Vacant,Vacante,
Occupied,Ocupado,
Item Details,Detalles del artículo,
UOM Conversion in Hours,Conversión de UOM en Horas,
Rate / UOM,Tasa / UOM,
Change in Item,Cambiar en el Elemento,
Out Patient Settings,Fuera de la Configuración del Paciente,
Patient Name By,Nombre del Paciente Por,
Patient Name,Nombre del Paciente,
Link Customer to Patient,Vincular cliente a paciente,
"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 se selecciona, se creará un cliente, asignado a Paciente. Se crearán facturas de pacientes contra este cliente. También puede seleccionar al cliente existente mientras crea el paciente.",
Default Medical Code Standard,Código Médico Estándar por Defecto,
Collect Fee for Patient Registration,Cobrar la cuota de registro del paciente,
Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,"Al marcar esto, se crearán nuevos pacientes con un estado deshabilitado de forma predeterminada y solo se habilitará después de facturar la tarifa de registro.",
Registration Fee,Cuota de Inscripción,
Automate Appointment Invoicing,Automatizar la facturación de citas,
Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Administrar factura de cita enviar y cancelar automáticamente para el Encuentro de pacientes,
Enable Free Follow-ups,Habilitar seguimientos gratuitos,
Number of Patient Encounters in Valid Days,Número de encuentros con pacientes en días válidos,
The number of free follow ups (Patient Encounters in valid days) allowed,El número de seguimientos gratuitos (encuentros de pacientes en días válidos) permitidos,
Valid Number of Days,Número válido de días,
Time period (Valid number of days) for free consultations,Plazo (número de días válido) para consultas gratuitas,
Default Healthcare Service Items,Elementos de servicio de atención médica predeterminados,
"You can configure default Items for billing consultation charges, procedure consumption items and inpatient visits","Puede configurar artículos predeterminados para facturación de cargos de consulta, artículos de consumo de procedimientos y visitas a pacientes hospitalizados",
Clinical Procedure Consumable Item,Artículo consumible del procedimiento clínico,
Default Accounts,Cuentas predeterminadas,
Default income accounts to be used if not set in Healthcare Practitioner to book Appointment charges.,Cuentas de ingresos predeterminados que se utilizarán si no se establece en el profesional de la salud para reservar cargos de cita.,
Default receivable accounts to be used to book Appointment charges.,Cuentas por cobrar predeterminadas que se utilizarán para contabilizar cargos por citas.,
Out Patient SMS Alerts,Alertas SMS de Pacientes,
Patient Registration,Registro del Paciente,
Registration Message,Mensaje de Registro,
Confirmation Message,Mensaje de Confirmación,
Avoid Confirmation,Evite Confirmación,
Do not confirm if appointment is created for the same day,No confirme si la cita se crea para el mismo día,
Appointment Reminder,Recordatorio de Cita,
Reminder Message,Mensaje de Recordatorio,
Laboratory Settings,Configuración del Laboratorio,
Create Lab Test(s) on Sales Invoice Submission,Crear pruebas de laboratorio en el envío de facturas de ventas,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,"Al marcar esto, se crearán las pruebas de laboratorio especificadas en la factura de venta en el momento del envío.",
Create Sample Collection document for Lab Test,Crear documento de colección de muestra para prueba de laboratorio,
Checking this will create a Sample Collection document  every time you create a Lab Test,"Al marcar esto, se creará un documento de Colección de muestras cada vez que cree una prueba de laboratorio",
Employee name and designation in print,Nombre y designación del empleado en la impresión,
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.,Marque esto si desea que el nombre y la designación del empleado asociado con el usuario que envía el documento se imprima en el informe de prueba de laboratorio.,
Do not print or email Lab Tests without Approval,No imprima ni envíe por correo electrónico pruebas de laboratorio sin aprobación,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,Marcar esto restringirá la impresión y el envío por correo electrónico de los documentos de la prueba de laboratorio a menos que tengan el estado Aprobado.,
Custom Signature in Print,Firma Personalizada en la Impresión,
Laboratory SMS Alerts,Alertas SMS de Laboratorio,
Result Printed Message,Mensaje impreso de resultado,
Result Emailed Message,Mensaje de resultado enviado por correo electrónico,
Check In,Registrarse,
Check Out,Check Out,
HLC-INP-.YYYY.-,HLC-INP-.YYYY.-,
A Positive,A Positivo,
A Negative,A Negativo,
AB Positive,AB Positivo,
AB Negative,AB Negativo,
B Positive,B Positivo,
B Negative,B Negativo,
O Positive,O Positivo,
O Negative,O Negativo,
Date of birth,Fecha de Nacimiento,
Admission Scheduled,Admisión Programada,
Discharge Scheduled,Descarga Programada,
Discharged,Descargado,
Admission Schedule Date,Fecha del Programa de Admisión,
Admitted Datetime,Fecha de Entrada Admitida,
Expected Discharge,Descarga esperada,
Discharge Date,Fecha de Alta,
Lab Prescription,Prescripción de Laboratorio,
Lab Test Name,Nombre de la prueba de laboratorio,
Test Created,Prueba Creada,
Submitted Date,Fecha de Envío,
Approved Date,Fecha Aprobada,
Sample ID,Ejemplo de Identificacion,
Lab Technician,Técnico de Laboratorio,
Report Preference,Preferencia de Informe,
Test Name,Nombre de la Prueba,
Test Template,Plantilla de Prueba,
Test Group,Grupo de Pruebas,
Custom Result,Resultado Personalizado,
LabTest Approver,Aprobador de Prueba de Laboratorio,
Add Test,Añadir Prueba,
Normal Range,Rango Normal,
Result Format,Formato del Resultado,
Single,Soltero,
Compound,Compuesto,
Descriptive,Descriptivo,
Grouped,Agrupado,
No Result,Sin resultados,
This value is updated in the Default Sales Price List.,Este valor se actualiza en la Lista de Precios de venta predeterminada.,
Lab Routine,Rutina de Laboratorio,
Result Value,Valor del Resultado,
Require Result Value,Requerir Valor de Resultado,
Normal Test Template,Plantilla de Prueba Normal,
Patient Demographics,Datos Demográficos del Paciente,
HLC-PAT-.YYYY.-,HLC-PAT-.YYYY.-,
Middle Name (optional),Segundo Nombre (Opcional),
Inpatient Status,Estado de paciente hospitalizado,
"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 &quot;Vincular cliente a paciente&quot; está marcado en Configuración de atención médica y no se selecciona un Cliente existente, se creará un Cliente para este Paciente para registrar transacciones en el módulo Cuentas.",
Personal and Social History,Historia Personal y Social,
Marital Status,Estado Civil,
Married,Casado,
Divorced,Divorciado,
Widow,Vdo.,
Patient Relation,Relación del Paciente,
"Allergies, Medical and Surgical History","Alergias, Historia Médica y Quirúrgica",
Allergies,Alergias,
Medication,Medicación,
Medical History,Historial Médico,
Surgical History,Historia Quirúrgica,
Risk Factors,Factores de Riesgo,
Occupational Hazards and Environmental Factors,Riesgos Laborales y Factores Ambientales,
Other Risk Factors,Otros Factores de Riesgo,
Patient Details,Detalles del Paciente,
Additional information regarding the patient,Información adicional sobre el paciente,
HLC-APP-.YYYY.-,HLC-APP-.YYYY.-,
Patient Age,Edad del Paciente,
Get Prescribed Clinical Procedures,Obtenga procedimientos clínicos recetados,
Therapy,Terapia,
Get Prescribed Therapies,Obtenga terapias recetadas,
Appointment Datetime,Fecha y hora de la cita,
Duration (In Minutes),Duración (en minutos),
Reference Sales Invoice,Factura de venta de referencia,
More Info,Más información,
Referring Practitioner,Practicante de Referencia,
HLC-PA-.YYYY.-,HLC-PA-.YYYY.-,
Assessment Template,Plantilla de evaluación,
Assessment Datetime,Fecha y hora de evaluación,
Assessment Description,Descripción de la evaluación,
Assessment Sheet,Hoja de evaluación,
Total Score Obtained,Puntaje total obtenido,
Scale Min,Escala mínima,
Scale Max,Escala Max,
Patient Assessment Detail,Detalle de la evaluación del paciente,
Assessment Parameter,Parámetro de evaluación,
Patient Assessment Parameter,Parámetro de evaluación del paciente,
Patient Assessment Sheet,Hoja de evaluación del paciente,
Patient Assessment Template,Plantilla de evaluación del paciente,
Assessment Parameters,Parámetros de evaluación,
Parameters,Parámetros,
Assessment Scale,Escala de evaluación,
Scale Minimum,Escala mínima,
Scale Maximum,Escala máxima,
HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
Encounter Date,Fecha de Encuentro,
Encounter Time,Tiempo de Encuentro,
Encounter Impression,Encuentro de la Impresión,
Symptoms,Síntomas,
In print,En la impresión,
Medical Coding,Codificación Médica,
Procedures,Procedimientos,
Therapies,Terapias,
Review Details,Detalles de la Revisión,
Patient Encounter Diagnosis,Diagnóstico de encuentro con el paciente,
Patient Encounter Symptom,Síntoma de encuentro con el paciente,
HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
Attach Medical Record,Adjuntar historial médico,
Spouse,Esposa,
Family,Familia,
Schedule Details,Detalles del horario,
Schedule Name,Nombre del Horario,
Time Slots,Ranuras de Tiempo,
Practitioner Service Unit Schedule,Horario de unidad de servicio de un practicante,
Procedure Name,Nombre del Procedimiento,
Appointment Booked,Cita Reservada,
Procedure Created,Procedimiento Creado,
HLC-SC-.YYYY.-,HLC-SC-.YYYY.-,
Collected By,Cobrado por,
Particulars,Datos Particulares,
Result Component,Componente del Resultado,
HLC-THP-.YYYY.-,HLC-THP-.YYYY.-,
Therapy Plan Details,Detalles del plan de terapia,
Total Sessions,Sesiones totales,
Total Sessions Completed,Total de sesiones completadas,
Therapy Plan Detail,Detalle del plan de terapia,
No of Sessions,No de sesiones,
Sessions Completed,Sesiones completadas,
Tele,Tele,
Exercises,Ejercicios,
Therapy For,Terapia para,
Add Exercises,Agregar ejercicios,
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),"Presencia de fiebre (temperatura &gt; 38,5 °C o temperatura sostenida &gt; 38 °C / 100,4 °F)",
Heart Rate / Pulse,Frecuencia Cardíaca / Pulso,
Adults' pulse rate is anywhere between 50 and 80 beats per minute.,La frecuencia de pulso de los adultos está entre 50 y 80 latidos por minuto.,
Respiratory rate,Frecuencia Respiratoria,
Normal reference range for an adult is 16–20 breaths/minute (RCP 2012),El rango de referencia normal para un adulto es de 16-20 respiraciones / minuto (RCP 2012),
Tongue,Lengua,
Coated,Saburral,
Very Coated,Muy Cubierto,
Normal,Normal,
Furry,Peludo,
Cuts,Cortes,
Abdomen,Abdomen,
Bloated,Hinchado,
Fluid,Fluido,
Constipated,Estreñido,
Reflexes,Reflejos,
Hyper,Hiper,
Very Hyper,Muy Hyper,
One Sided,Unilateral,
Blood Pressure (systolic),Presión Arterial (sistólica),
Blood Pressure (diastolic),Presión Arterial (diastólica),
Blood Pressure,Presión Sanguínea,
"Normal resting blood pressure in an adult is approximately 120 mmHg systolic, and 80 mmHg diastolic, abbreviated ""120/80 mmHg""","La presión sanguínea normal en reposo en un adulto es aproximadamente 120 mmHg sistólica y 80 mmHg diastólica, abreviada &quot;120/80 mmHg&quot;",
Nutrition Values,Valores Nutricionales,
Height (In Meter),Altura (en Metros),
Weight (In Kilogram),Peso (en kilogramo),
BMI,IMC,
Hotel Room,Habitación de Hotel,
Hotel Room Type,Tipo de Habitación del Hotel,
Capacity,Capacidad,
Extra Bed Capacity,Capacidad de Cama Extra,
Hotel Manager,Gerente del Hotel,
Hotel Room Amenity,Amenidades de la Habitación del Hotel,
Billable,Facturable,
Hotel Room Package,Paquete de Habitación de Hotel,
Amenities,Comodidades,
Hotel Room Pricing,Precios de Habitación de Hotel,
Hotel Room Pricing Item,Elemento de Precios de la Habitación del Hotel,
Hotel Room Pricing Package,Paquete de Precios de la habitación del hotel,
Hotel Room Reservation,Reserva de Habitación de Hotel,
Guest Name,Nombre del Invitado,
Late Checkin,Registro Tardío,
Booked,Reservado,
Hotel Reservation User,Usuario de Reserva de Hotel,
Hotel Room Reservation Item,Elemento de Reserva de Habitación de Hotel,
Hotel Settings,Configuración del Hotel,
Default Taxes and Charges,Impuestos y Cargos por Defecto,
Default Invoice Naming Series,Serie de Nomencaltura predeterminada de Factura de Venta,
HR,HR,
Date on which this component is applied,Fecha en que se aplica este componente,
Salary Slip,Nómina salarial,
HR User,Usuario de recursos humanos,
Job Applicant,Solicitante de empleo,
Body,Cuerpo,
Appraisal Template,Plantilla de evaluación,
Parent Department,Departamento de Padres,
Leave Block List,Dejar lista de bloqueo,
Days for which Holidays are blocked for this department.,Días en que las vacaciones / permisos se bloquearan para este departamento.,
Leave Approver,Supervisor de ausencias,
Expense Approver,Supervisor de gastos,
Required Skills,Habilidades requeridas,
Skills,Habilidades,
Driver,Conductor,
HR-DRI-.YYYY.-,HR-DRI-.YYYY.-,
Suspended,Suspendido,
Transporter,Transportador,
Applicable for external driver,Aplicable para controlador externo.,
Cellphone Number,Número Celular,
License Details,Detalles de Licencia,
License Number,Número de Licencia,
Issuing Date,Fecha de Emisión,
Driving License Categories,Categorías de Licencia de Conducir,
Driving License Category,Categoría de Licencia de Conducir,
Fleet Manager,Gerente de Fota,
Driver licence class,Clase de licencia de conducir,
HR-EMP-,HR-EMP-,
Employment Type,Tipo de empleo,
Emergency Contact,Contacto de emergencia,
Emergency Contact Name,nombre del contacto de emergencia,
Emergency Phone,Teléfono de Emergencia,
ERPNext User,Usuario ERPNext,
"System User (login) ID. If set, it will become default for all HR forms.","Si se define el ID de usuario 'Login', este sera el predeterminado para todos los documentos de recursos humanos (RRHH)",
Create User Permission,Crear Permiso de Usuario,
This will restrict user access to other employee records,Esto restringirá el acceso del usuario a otros registros de empleados,
Joining Details,Detalles de Unión,
Offer Date,Fecha de oferta,
Confirmation Date,Fecha de confirmación,
Contract End Date,Fecha de finalización de contrato,
Notice (days),Aviso (días),
Date Of Retirement,Fecha de jubilación,
Department and Grade,Departamento y Grado,
Reports to,Enviar Informes a,
Attendance and Leave Details,Asistencia y detalles de licencia,
Attendance Device ID (Biometric/RF tag ID),ID de dispositivo de asistencia (ID de etiqueta biométrica / RF),
Applicable Holiday List,Lista de días Festivos,
Default Shift,Shift predeterminado,
Salary Mode,Modo de pago,
Bank A/C No.,Núm. de cta. bancaria,
Health Insurance,Seguro de Salud,
Health Insurance Provider,Proveedor de Seguro de Salud,
Health Insurance No,Seguro de Salud Nro,
Prefered Email,Correo electrónico  preferido,
Personal Email,Correo electrónico personal,
Permanent Address Is,La dirección permanente es,
Rented,Arrendado,
Owned,Propiedad,
Permanent Address,Dirección permanente,
Prefered Contact Email,Correo electrónico de contacto preferida,
Company Email,Email de la compañía,
Provide Email Address registered in company,Proporcionar dirección de correo electrónico registrada en la compañía,
Current Address Is,La Dirección Actual es,
Current Address,Dirección Actual,
Personal Bio,Biografía Personal,
Bio / Cover Letter,Bio / Carta de Presentación,
Short biography for website and other publications.,Breve biografía para la página web y otras publicaciones.,
Passport Number,Número de pasaporte,
Date of Issue,Fecha de Emisión.,
Place of Issue,Lugar de emisión.,
Widowed,Viudo,
Family Background,Antecedentes familiares,
"Here you can maintain family details like name and occupation of parent, spouse and children","Aquí usted puede ingresar los detalles de la familia como el nombre y ocupación de los padres, cónyuge e hijos",
Health Details,Detalles de salud,
"Here you can maintain height, weight, allergies, medical concerns etc","Aquí usted puede ingresar la altura, el peso, alergias, problemas médicos, etc.",
Educational Qualification,Formación académica,
Previous Work Experience,Experiencia laboral previa,
External Work History,Historial de trabajos externos,
History In Company,Historia en la Compañia,
Internal Work History,Historial de trabajo interno,
Resignation Letter Date,Fecha de carta de renuncia,
Relieving Date,Fecha de relevo,
Reason for Leaving,Razones de renuncia,
Leave Encashed?,Vacaciones pagadas?,
Encashment Date,Fecha de Cobro,
New Workplace,Nuevo lugar de trabajo,
Returned Amount,Cantidad devuelta,
Advance Account,Cuenta anticipada,
Benefits Applied,Beneficios Aplicados,
Benefit Type and Amount,Tipo de Beneficio y Cantidad,
Task Weight,Peso de la Tarea,
Employee Education,Educación del empleado,
School/University,Escuela / Universidad.,
Graduate,Graduado,
Post Graduate,Postgrado,
Under Graduate,Estudiante,
Year of Passing,Año de Finalización,
Class / Percentage,Clase / Porcentaje,
Major/Optional Subjects,Principales / Asignaturas Optativas,
Employee External Work History,Historial de de trabajos anteriores,
Total Experience,Experiencia total,
Default Leave Policy,Política de Licencia Predeterminada,
Employee Group Table,Tabla de grupo de empleados,
ERPNext User ID,ERP ID de usuario siguiente,
Employee Internal Work History,Historial de trabajo del empleado,
Activities,Actividades,
Employee Onboarding Activity,Actividad de Incorporación del Empleado,
Employee Promotion Detail,Detalle de la Promoción del Empleado,
Employee Transfer Property,Propiedad de Transferencia del Empleado,
Unclaimed amount,Cantidad no Reclamada,
Holiday List Name,Nombre de festividad,
Total Holidays,Vacaciones Totales,
Add Weekly Holidays,Añadir Vacaciones Semanales,
Weekly Off,Semanal Desactivado,
Add to Holidays,Agregar a Vacaciones,
Holidays,Vacaciones,
Clear Table,Borrar tabla,
Retirement Age,Edad de retiro,
Enter retirement age in years,Introduzca la edad de jubilación en años,
Stop Birthday Reminders,Detener recordatorios de cumpleaños.,
Leave Settings,Configuración de Vacaciones,
Accepted,Aceptado,
Printing Details,Detalles de impresión,
Job Title,Título del trabajo,
Allocation,Asignación,
Select Employees,Seleccione los empleados,
Allocate,Asignar,
Max Leaves Allowed,Max Licencias Permitidas,
Maximum Continuous Days Applicable,Máximo de días continuos aplicables,
Select Payroll Period,Seleccione el Período de Nómina,
Abbr,Abreviatura,
Condition and Formula,Condición y Fórmula,
Total Working Hours,Horas de trabajo total,
Hour Rate,Salario por hora,
Bank Account No.,Cta. bancaria núm.,
Earning & Deduction,Ingresos y Deducciones,
Loan repayment,Pago de prestamo,
Employee Loan,Préstamo de Empleado,
Total Principal Amount,Monto Principal Total,
Total Interest Amount,Monto Total de Interés,
Total Loan Repayment,Amortización total del préstamo,
net pay info,información de pago neto,
Gross Pay - Total Deduction - Loan Repayment,Pago Bruto - Deducción total - Pago de Préstamos,
Net Pay (in words) will be visible once you save the Salary Slip.,Pago neto (en palabras) será visible una vez que guarde la nómina salarial.,
Staffing Plan Details,Detalles del plan de dotación de personal,
Optional,Opcional,
Costing,Presupuesto,
Vehicle,Vehículo,
License Plate,Matrículas,
Odometer Value (Last),Valor del cuentakilómetros (Última),
Acquisition Date,Fecha de Adquisición,
Chassis No,N° de Chasis,
Vehicle Value,El valor del vehículo,
Insurance Details,Detalles de Seguros,
Insurance Company,Compañía de seguros,
Policy No,N° de Política,
Additional Details,Detalles adicionales,
Fuel Type,Tipo de Combustible,
Petrol,Gasolina,
Diesel,Diesel,
Natural Gas,Gas natural,
Electric,Eléctrico,
Fuel UOM,UOM de Combustible,
Last Carbon Check,Último control de Carbono,
Wheels,Ruedas,
Doors,puertas,
last Odometer Value ,último valor del cuentakilómetros,
Service Detail,Detalle del servicio,
Hub Tracked Item,Artículo rastreado Hub,
Hub Node,Nodo del centro de actividades,
Image List,Lista de Omágenes,
Item Manager,Administración de artículos,
Hub User,Usuario de Hub,
Hub Password,Contraseña del concentrador,
Hub Users,Usuarios de Hub,
Marketplace Settings,Configuración del Mercado,
Disable Marketplace,Deshabilitar Marketplace,
Marketplace URL (to hide and update label),URL del mercado (para ocultar y actualizar la etiqueta),
Registered,Registrado,
Sync in Progress,Sincronización en Progreso,
Hub Seller Name,Nombre del vendedor de Hub,
Custom Data,Datos Personalizados,
Repay From Salary,Reembolso del Salario,
Regular Payment,Pago regular,
Loan Closure,Cierre de préstamo,
Rate of Interest (%) Yearly,Tasa de interés (%) Anual,
MAT-MSH-.YYYY.-,MAT-MSH-.YYYY.-,
Generate Schedule,Generar planificación,
Schedules,Programas,
Maintenance Schedule Detail,Detalles del calendario de mantenimiento,
Scheduled Date,Fecha prevista.,
Actual Date,Fecha Real,
Maintenance Schedule Item,Programa de mantenimiento de artículos,
Random,Aleatorio,
No of Visits,Número de visitas,
MAT-MVS-.YYYY.-,MAT-MVS-.YYYY.-,
Maintenance Date,Fecha de Mantenimiento,
Maintenance Time,Tiempo del Mantenimiento,
Completion Status,Estado de finalización,
Partially Completed,Parcialmente completado,
Fully Completed,Terminado completamente,
Unscheduled,Sin programación,
Breakdown,Desglose,
Purposes,Propósitos,
Customer Feedback,Comentarios de cliente,
Maintenance Visit Purpose,Propósito de Visita de Mantenimiento,
Work Done,Trabajo Realizado,
Against Document No,Contra el Documento No,
Against Document Detail No,Contra documento No.,
MFG-BLR-.YYYY.-,MFG-BLR-.YYYY.-,
Order Type,Tipo de orden,
Blanket Order Item,Artículo de Orden Combinado,
Ordered Quantity,Cantidad ordenada,
Item to be manufactured or repacked,Producto a manufacturar o re-empacar,
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Cantidad del producto obtenido después de la fabricación / empaquetado desde las cantidades determinadas de materia prima,
Set rate of sub-assembly item based on BOM,Fijar tipo de posición de submontaje basado en la lista de materiales,
Allow Alternative Item,Permitir Elemento Alternativo,
Item UOM,Unidad de medida (UdM) del producto,
Conversion Rate,Tasa de conversión,
Rate Of Materials Based On,Valor de materiales basado en,
With Operations,Con Operaciones,
Manage cost of operations,Administrar costo de las operaciones,
Transfer Material Against,Transferir material contra,
Routing,Enrutamiento,
Materials,Materiales,
Quality Inspection Required,Inspección de calidad requerida,
Quality Inspection Template,Plantilla de Inspección de Calidad,
Scrap,Desecho,
Scrap Items,Items de Desecho,
Operating Cost,Costo de Operación,
Raw Material Cost,Costo de materia prima,
Scrap Material Cost,Costo de Material de Desecho,
Operating Cost (Company Currency),Costo de funcionamiento (Divisa de la Compañia),
Raw Material Cost (Company Currency),Costo de materia prima (moneda de la empresa),
Scrap Material Cost(Company Currency),Costo de Material de Desecho (Moneda de la Compañia),
Total Cost,Coste total,
Total Cost (Company Currency),Costo total (moneda de la compañía),
Materials Required (Exploded),Materiales Necesarios (Despiece),
Exploded Items,Artículos explotados,
Show in Website,Mostrar en sitio web,
Item Image (if not slideshow),Imagen del producto (si no son diapositivas),
Thumbnail,Miniatura,
Website Specifications,Especificaciones del sitio web,
Show Items,Mostrar elementos,
Show Operations,Mostrar Operaciones,
Website Description,Descripción del Sitio Web,
BOM Explosion Item,Desplegar lista de materiales (LdM) del producto,
Qty Consumed Per Unit,Cantidad consumida por unidad,
Include Item In Manufacturing,Incluir artículo en fabricación,
BOM Item,Lista de materiales (LdM) del producto,
Item operation,Operación del artículo,
Rate & Amount,Tasa y Cantidad,
Basic Rate (Company Currency),Precio base (Divisa por defecto),
Scrap %,Desecho %,
Original Item,Artículo Original,
BOM Operation,Operación de la lista de materiales (LdM),
Operation Time ,Tiempo de operacion,
In minutes,En minutos,
Batch Size,Tamaño del lote,
Base Hour Rate(Company Currency),La tarifa básica de Hora (divisa de la Compañía),
Operating Cost(Company Currency),Costo de funcionamiento (Divisa de la Compañia),
BOM Scrap Item,BOM de Artículo  de Desguace,
Basic Amount (Company Currency),Importe Básico (divisa de la Compañía),
BOM Update Tool,Herramienta de actualización de Lista de Materiales (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.","Reemplazar una lista de materiales determinada en todas las demás listas de materiales donde se utiliza. Reemplazará el enlace de la lista de materiales antigua, actualizará el coste y regenerará la tabla ""Posición de explosión de la lista de materiales"" según la nueva lista de materiales. También actualiza el precio más reciente en todas las listas de materiales.",
Replace BOM,Sustituir la Lista de Materiales (BOM),
Current BOM,Lista de materiales (LdM) actual,
The BOM which will be replaced,La lista de materiales que será sustituida,
The new BOM after replacement,Nueva lista de materiales después de la sustitución,
Replace,Reemplazar,
Update latest price in all BOMs,Actualizar el último precio en todas las listas de materiales,
BOM Website Item,BOM de artículo del sitio web,
BOM Website Operation,Operación de Página Web de lista de materiales,
Operation Time,Tiempo de Operación,
PO-JOB.#####,PO-JOB. #####,
Timing Detail,Detalle de Sincronización,
Time Logs,Gestión de tiempos,
Total Time in Mins,Tiempo total en minutos,
Operation ID,ID de operación,
Transferred Qty,Cantidad Transferida,
Job Started,Trabajo comenzó,
Started Time,Hora de inicio,
Current Time,Tiempo actual,
Job Card Item,Artículo de Tarjeta de Trabajo,
Job Card Time Log,Registro de tiempo de tarjeta de trabajo,
Time In Mins,Tiempo en Minutos,
Completed Qty,Cantidad completada,
Manufacturing Settings,Ajustes de Producción,
Raw Materials Consumption,Consumo de materias primas,
Allow Multiple Material Consumption,Permitir el Consumo de Material Múltiple,
Backflush Raw Materials Based On,Adquisición retroactiva de materia prima basada en,
Material Transferred for Manufacture,Material Transferido para Manufacturar,
Capacity Planning,Planificación de capacidad,
Disable Capacity Planning,Desactivar planificación de capacidad,
Allow Overtime,Permitir horas extraordinarias,
Allow Production on Holidays,Permitir producción en días festivos,
Capacity Planning For (Days),Planificación de capacidad para (Días),
Default Warehouses for Production,Almacenes predeterminados para producción,
Default Work In Progress Warehouse,Almacén predeterminado de trabajos en proceso,
Default Finished Goods Warehouse,Almacén predeterminado de productos terminados,
Default Scrap Warehouse,Almacén de chatarra predeterminado,
Overproduction Percentage For Sales Order,Porcentaje de Sobreproducción para Orden de Venta,
Overproduction Percentage For Work Order,Porcentaje de Sobreproducción para Orden de Trabajo,
Other Settings,Otros ajustes,
Update BOM Cost Automatically,Actualizar automáticamente el coste de la lista de materiales,
Material Request Plan Item,Artículo de Plan de Solicitud de Material,
Material Request Type,Tipo de Requisición,
Material Issue,Expedición de Material,
Customer Provided,Proporcionado por el cliente,
Minimum Order Quantity,Cantidad Mínima de Pedido,
Default Workstation,Estación de Trabajo por defecto,
Production Plan,Plan de Producción,
MFG-PP-.YYYY.-,MFG-PP-.YYYY.-,
Get Items From,Obtener artículos de,
Get Sales Orders,Obtener ordenes de venta,
Material Request Detail,Detalle de Solicitud de Material,
Get Material Request,Obtener Solicitud de materiales,
Material Requests,Solicitudes de Material,
Get Items For Work Order,Obtener artículos para la Órden de Trabajo,
Material Request Planning,Planificación de Solicitud de Material,
Include Non Stock Items,Incluir Elementos no Disponibles,
Include Subcontracted Items,Incluir Artículos Subcontratados,
Ignore Existing Projected Quantity,Ignorar la cantidad proyectada existente,
"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>.","Para saber más sobre la cantidad proyectada, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">haga clic aquí</a> .",
Download Required Materials,Descargar materiales requeridos,
Get Raw Materials For Production,Obtener Materias Primas para Producción,
Total Planned Qty,Cantidad Total Planificada,
Total Produced Qty,Cantidad Total Producida,
Material Requested,Material Solicitado,
Production Plan Item,Plan de producción de producto,
Make Work Order for Sub Assembly Items,Hacer una orden de trabajo para los elementos del subconjunto,
"If enabled, system will create the work order for the exploded items against which BOM is available.","Si está habilitado, el sistema creará la orden de trabajo para los elementos explotados en los que BOM está disponible.",
Planned Start Date,Fecha prevista de inicio,
Quantity and Description,Cantidad y descripción,
material_request_item,material_request_item,
Product Bundle Item,Artículo del conjunto de productos,
Production Plan Material Request,Solicitud de Material del Plan de Producción,
Production Plan Sales Order,Plan de producción de ordenes de venta,
Sales Order Date,Fecha de las órdenes de venta,
Routing Name,Nombre de Enrutamiento,
MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
Item To Manufacture,Producto para Manufactura,
Material Transferred for Manufacturing,Material Transferido para la Producción,
Manufactured Qty,Cantidad Producida,
Use Multi-Level BOM,Utilizar Lista de Materiales (LdM)  Multi-Nivel,
Plan material for sub-assemblies,Plan de materiales para los subconjuntos,
Skip Material Transfer to WIP Warehouse,Saltar transferencia de material al almacén de WIP,
Check if material transfer entry is not required,Compruebe si la entrada de transferencia de material no es necesaria,
Backflush Raw Materials From Work-in-Progress Warehouse,Retroceda las materias primas del almacén de trabajo en progreso,
Update Consumed Material Cost In Project,Actualizar el costo del material consumido en el proyecto,
Warehouses,Almacenes,
This is a location where raw materials are available.,Esta es una ubicación donde hay materias primas disponibles.,
Work-in-Progress Warehouse,Almacén de trabajos en proceso,
This is a location where operations are executed.,Esta es una ubicación donde se ejecutan las operaciones.,
This is a location where final product stored.,Esta es una ubicación donde se almacena el producto final.,
Scrap Warehouse,Almacén de chatarra,
This is a location where scraped materials are stored.,Esta es una ubicación donde se almacenan los materiales raspados.,
Required Items,Artículos Requeridos,
Actual Start Date,Fecha de inicio real,
Planned End Date,Fecha de finalización planeada,
Actual End Date,Fecha Real de Finalización,
Operation Cost,Costo de operación,
Planned Operating Cost,Costos operativos planeados,
Actual Operating Cost,Costo de operación real,
Additional Operating Cost,Costos adicionales de operación,
Total Operating Cost,Costo Total de Funcionamiento,
Manufacture against Material Request,Fabricación contra Pedido de Material,
Work Order Item,Artículo de Órden de Trabajo,
Available Qty at Source Warehouse,Cantidad Disponible en Almacén Fuente,
Available Qty at WIP Warehouse,Cantidad Disponible en Almacén WIP,
Work Order Operation,Operación de Órden de Trabajo,
Operation Description,Descripción de la operación,
Operation completed for how many finished goods?,¿Operación completada para cuántos productos terminados?,
Work in Progress,Trabajo en proceso,
Estimated Time and Cost,Tiempo estimado y costo,
Planned Start Time,Hora prevista de inicio,
Planned End Time,Tiempo de finalización planeado,
in Minutes,En minutos,
Actual Time and Cost,Tiempo y costo reales,
Actual Start Time,Hora de inicio real,
Actual End Time,Hora final real,
Updated via 'Time Log',Actualizado a través de la gestión de tiempos,
Actual Operation Time,Hora de operación real,
in Minutes\nUpdated via 'Time Log',en minutos actualizado a través de bitácora (gestión de tiempo),
(Hour Rate / 60) * Actual Operation Time,(Tarifa por hora / 60) * Tiempo real de la operación,
Workstation Name,Nombre de la estación de trabajo,
Production Capacity,Capacidad de producción,
Operating Costs,Costos operativos,
Electricity Cost,Costos de Energía Eléctrica,
per hour,por hora,
Consumable Cost,Coste de consumibles,
Rent Cost,Costo de arrendamiento,
Wages,Salarios,
Wages per hour,Salarios por hora,
Net Hour Rate,Tasa neta por hora,
Workstation Working Hour,Horario de la estación de trabajo,
Certification Application,Solicitud de Certificación,
Name of Applicant,Nombre del Solicitante,
Certification Status,Estado de Certificación,
Yet to appear,Por aparecer,
Certified,Certificado,
Not Certified,No Certificado,
USD,USD,
INR,INR,
Certified Consultant,Consultor Certificado,
Name of Consultant,Nombre de la Consultora,
Certification Validity,Validez de Certificación,
Discuss ID,Discuss ID,
GitHub ID,ID de GitHub,
Non Profit Manager,Gerente sin Fines de Lucro,
Chapter Head,Jefe de Capítulo,
Meetup Embed HTML,Meetup Embed HTML,
chapters/chapter_name\nleave blank automatically set after saving chapter.,Los capítulos / nombre del capítulo dejan en blanco y se configuran automáticamente después de guardar el capítulo.,
Chapter Members,Miembros del Capítulo,
Members,Miembros,
Chapter Member,Miembro del Capítulo,
Website URL,URL del Sitio Web,
Leave Reason,Deja la Razón,
Donor Name,Nombre del Donante,
Donor Type,Tipo de Donante,
Withdrawn,Retirado,
Grant Application Details ,Detalles de Solicitud de Subvención,
Grant Description,Descripción de la Concesión,
Requested Amount,Monto Requerido,
Has any past Grant Record,Tiene algún registro de subvención anterior,
Show on Website,Mostrar en el Sitio Web,
Assessment  Mark (Out of 10),Marca de evaluación (de 10),
Assessment  Manager,Gerente de evaluación,
Email Notification Sent,Notificación de Correo Electrónico Enviada,
NPO-MEM-.YYYY.-,NPO-MEM-.YYYY.-,
Membership Expiry Date,Fecha de Vencimiento de Membresía,
Razorpay Details,Detalles de Razorpay,
Subscription ID,ID de suscripción,
Customer ID,Identificación del cliente,
Subscription Activated,Suscripción activada,
Subscription Start ,Inicio de suscripción,
Subscription End,Fin de suscripción,
Non Profit Member,Miembro sin Fines de Lucro,
Membership Status,Estado de Membresía,
Member Since,Miembro Desde,
Payment ID,ID de pago,
Membership Settings,Configuración de membresía,
Enable RazorPay For Memberships,Habilitar RazorPay para membresías,
RazorPay Settings,Configuración de RazorPay,
Billing Cycle,Ciclo de facturación,
Billing Frequency,Frecuencia de facturación,
"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 número de ciclos de facturación por los que se le debe cobrar al cliente. Por ejemplo, si un cliente está comprando una membresía de 1 año que debe facturarse mensualmente, este valor debe ser 12.",
Razorpay Plan ID,ID del plan de Razorpay,
Volunteer Name,Nombre del Voluntario,
Volunteer Type,Tipo de Voluntario,
Availability and Skills,Disponibilidad y Habilidades,
Availability,Disponibilidad,
Weekends,Fines de Semana,
Availability Timeslot,Intervalo de tiempo de disponibilidad,
Morning,Mañana,
Afternoon,Tarde,
Evening,Noche,
Anytime,En cualquier momento,
Volunteer Skills,Habilidades del Voluntario,
Volunteer Skill,Habilidad del Voluntario,
Homepage,Página Principal,
Hero Section Based On,Sección de héroe basada en,
Homepage Section,Sección de la página de inicio,
Hero Section,Sección de héroe,
Tag Line,tag Line,
Company Tagline for website homepage,Lema de la empresa para la página de inicio de la página web,
Company Description for website homepage,Descripción de la empresa para la página de inicio página web,
Homepage Slideshow,Presentación de diapositivas,
"URL for ""All Products""",URL de &quot;Todos los productos&quot;,
Products to be shown on website homepage,Productos que se muestran en la página de inicio de la página web,
Homepage Featured Product,Producto destacado en página de inicio,
route,ruta,
Section Based On,Sección basada en,
Section Cards,Tarjetas de sección,
Number of Columns,Número de columnas,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,Número de columnas para esta sección. Se mostrarán 3 cartas por fila si selecciona 3 columnas.,
Section HTML,HTML de sección,
Use this field to render any custom HTML in the section.,Use este campo para representar cualquier HTML personalizado en la sección.,
Section Order,Orden de sección,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Orden en el que deben aparecer las secciones. 0 es primero, 1 es segundo y así sucesivamente.",
Homepage Section Card,Tarjeta de sección de página de inicio,
Subtitle,Subtitular,
Products Settings,Ajustes de Productos,
Home Page is Products,La página de inicio son los productos,
"If checked, the Home page will be the default Item Group for the website","Si se selecciona, la página de inicio será el grupo por defecto del artículo para el sitio web",
Show Availability Status,Mostrar Estado de Disponibilidad,
Product Page,Página del producto,
Products per Page,Productos por Pagina,
Enable Field Filters,Habilitar filtros de campo,
Item Fields,Campos de artículos,
Enable Attribute Filters,Habilitar filtros de atributos,
Attributes,Atributos,
Hide Variants,Ocultar variantes,
Website Attribute,Atributo del sitio web,
Attribute,Atributo,
Website Filter Field,Campo de filtro del sitio web,
Activity Cost,Costo de Actividad,
Billing Rate,Monto de facturación,
Costing Rate,Costo calculado,
title,título,
Projects User,Usuario de proyectos,
Default Costing Rate,Precio de costo predeterminado,
Default Billing Rate,Monto de facturación predeterminada,
Dependent Task,Tarea dependiente,
Project Type,Tipo de proyecto,
% Complete Method,% Método completado,
Task Completion,Completitud de Tarea,
Task Progress,Progreso de Tarea,
% Completed,% Completado,
From Template,De la plantilla,
Project will be accessible on the website to these users,Proyecto será accesible en la página web de estos usuarios,
Copied From,Copiado de,
Start and End Dates,Fechas de Inicio y Fin,
Actual Time in Hours (via Timesheet),Tiempo real (en horas),
Costing and Billing,Cálculo de Costos y Facturación,
Total Costing Amount (via Timesheet),Monto Total de Costos (a través de Partes de Horas),
Total Expense Claim (via Expense Claim),Total reembolso (Vía reembolsos de gastos),
Total Purchase Cost (via Purchase Invoice),Costo total de compra (vía facturas de compra),
Total Sales Amount (via Sales Order),Importe de Ventas Total (a través de Ordenes de Venta),
Total Billable Amount (via Timesheet),Monto Total Facturable (a través de Partes de Horas),
Total Billed Amount (via Sales Invoice),Importe Total Facturado (a través de Facturas de Ventas),
Total Consumed Material Cost (via Stock Entry),Costo total del Material Consumido (a través de la Entrada de Stock),
Gross Margin,Margen bruto,
Gross Margin %,Margen bruto %,
Monitor Progress,Monitorear el Progreso,
Collect Progress,Recoge el Progreso,
Frequency To Collect Progress,Frecuencia para Recoger el Progreso,
Twice Daily,Dos veces al día,
First Email,Primer Correo Electrónico,
Second Email,Segundo Correo Electrónico,
Time to send,Hora de Enviar,
Day to Send,Día para Enviar,
Message will be sent to the users to get their status on the Project,Se enviará un mensaje a los usuarios para conocer su estado en el Proyecto.,
Projects Manager,Gerente de Proyectos,
Project Template,Plantilla de proyecto,
Project Template Task,Tarea de plantilla de proyecto,
Begin On (Days),Comience el (días),
Duration (Days),Duración (Días),
Project Update,Actualización del Proyecto,
Project User,usuario proyecto,
View attachments,Ver Adjuntos,
Projects Settings,Configuración de Proyectos,
Ignore Workstation Time Overlap,Ignorar la Superposición de Tiempo de la Estación de Trabajo,
Ignore User Time Overlap,Ignorar Superposición de Tiempo del Usuario,
Ignore Employee Time Overlap,Ignorar la Superposición de Tiempo del Empleado,
Weight,Peso,
Parent Task,Tarea Padre,
Timeline,Cronograma,
Expected Time (in hours),Tiempo previsto (en horas),
% Progress,% Progreso,
Is Milestone,Es un Hito,
Task Description,Descripción de la tarea,
Dependencies,Dependencias,
Dependent Tasks,Tareas dependientes,
Depends on Tasks,Depende de Tareas,
Actual Start Date (via Timesheet),Fecha de inicio real (a través de hoja de horas),
Actual Time in Hours (via Timesheet),Tiempo real (en horas),
Actual End Date (via Timesheet),Fecha de finalización real (a través de hoja de horas),
Total Expense Claim (via Expense Claim),Total reembolso (Vía reembolso de gastos),
Review Date,Fecha de Revisión,
Closing Date,Fecha de cierre,
Task Depends On,Tarea depende de,
Task Type,Tipo de tarea,
TS-.YYYY.-,TS-.YYYY.-,
Employee Detail,Detalle de los Empleados,
Billing Details,Detalles de facturación,
Total Billable Hours,Total de Horas Facturables,
Total Billed Hours,Total de Horas Facturadas,
Total Costing Amount,Importe total del cálculo del coste,
Total Billable Amount,Monto Total Facturable,
Total Billed Amount,Monto total Facturado,
% Amount Billed,% importe facturado,
Hrs,Horas,
Costing Amount,Costo acumulado,
Corrective/Preventive,Correctivo / preventivo,
Corrective,Correctivo,
Preventive,Preventivo,
Resolution,Resolución,
Resolutions,Resoluciones,
Quality Action Resolution,Resolución de acción de calidad,
Quality Feedback Parameter,Parámetro de retroalimentación de calidad,
Quality Feedback Template Parameter,Parámetro de plantilla de comentarios de calidad,
Quality Goal,Objetivo de calidad,
Monitoring Frequency,Frecuencia de monitoreo,
Weekday,Día laborable,
Objectives,Objetivos,
Quality Goal Objective,Objetivo de calidad Objetivo,
Objective,Objetivo,
Agenda,Agenda,
Minutes,Minutos,
Quality Meeting Agenda,Agenda de reuniones de calidad,
Quality Meeting Minutes,Actas de reuniones de calidad,
Minute,Minuto,
Parent Procedure,Procedimiento para padres,
Processes,Procesos,
Quality Procedure Process,Proceso de procedimiento de calidad,
Process Description,Descripción del proceso,
Link existing Quality Procedure.,Enlace Procedimiento de calidad existente.,
Additional Information,Información Adicional,
Quality Review Objective,Objetivo de revisión de calidad,
DATEV Settings,Configuraciones de DATEV,
Regional,Regional,
Consultant ID,ID del consultor,
GST HSN Code,Código GST HSN,
HSN Code,Código HSN,
GST Settings,Configuración de GST,
GST Summary,Resumen de GST,
GSTIN Email Sent On,Se envía el correo electrónico de GSTIN,
GST Accounts,Cuentas de GST,
B2C Limit,Límite B2C,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Establezca el valor de factura para B2C. B2CL y B2CS calculados en base a este valor de factura.,
GSTR 3B Report,Informe GSTR 3B,
January,enero,
February,febrero,
March,marzo,
April,abril,
August,agosto,
September,septiembre,
October,octubre,
November,noviembre,
December,diciembre,
JSON Output,Salida JSON,
Invoices with no Place Of Supply,Facturas sin lugar de suministro,
Import Supplier Invoice,Factura de proveedor de importación,
Invoice Series,Serie de facturas,
Upload XML Invoices,Subir facturas XML,
Zip File,Archivo zip,
Import Invoices,Importar facturas,
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.,Haga clic en el botón Importar facturas una vez que el archivo zip se haya adjuntado al documento. Cualquier error relacionado con el procesamiento se mostrará en el Registro de errores.,
Lower Deduction Certificate,Certificado de deducción más baja,
Certificate Details,Detalles del certificado,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,Certificado no,
Deductee Details,Detalles del deducible,
PAN No,PAN No,
Validity Details,Detalles de validez,
Rate Of TDS As Per Certificate,Tasa de TDS según certificado,
Certificate Limit,Límite de certificado,
Invoice Series Prefix,Prefijo de la Serie de Facturas,
Active Menu,Menú Activo,
Restaurant Menu,Menú del Restaurante,
Price List (Auto created),Lista de Precios (Creada Automáticamente),
Restaurant Manager,Gerente del Restaurante,
Restaurant Menu Item,Elemento del Menú del Restaurante,
Restaurant Order Entry,Entrada de Orden de Restaurante,
Restaurant Table,Mesa de Restaurante,
Click Enter To Add,Haga clic en Entrar para Agregar,
Last Sales Invoice,Última Factura de Venta,
Current Order,Orden actual,
Restaurant Order Entry Item,Elemento de Entrada de Pedido de Restaurante,
Served,Servido,
Restaurant Reservation,Reserva de Restaurante,
Waitlisted,En Lista de Espera,
No Show,No Mostrar,
No of People,Nro de Personas,
Reservation Time,Tiempo de Reserva,
Reservation End Time,Hora de finalización de la Reserva,
No of Seats,Nro de Asientos,
Minimum Seating,Asientos Mínimos,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Lleve un registro de las campañas de venta. Lleve un registro de conductores, Citas, pedidos de venta, etc de Campañas para medir retorno de la inversión.",
SAL-CAM-.YYYY.-,SAL-CAM-.YYYY.-,
Campaign Schedules,Horarios de campaña,
Buyer of Goods and Services.,Consumidor de productos y servicios.,
CUST-.YYYY.-,CUST-.YYYY.-,
Default Company Bank Account,Cuenta bancaria predeterminada de la empresa,
From Lead,Desde Iniciativa,
Account Manager,Gerente de cuentas,
Allow Sales Invoice Creation Without Sales Order,Permitir la creación de facturas de venta sin orden de venta,
Allow Sales Invoice Creation Without Delivery Note,Permitir la creación de facturas de venta sin nota de entrega,
Default Price List,Lista de precios por defecto,
Primary Address and Contact Detail,Dirección Principal y Detalle de Contacto,
"Select, to make the customer searchable with these fields","Seleccione, para que el usuario pueda buscar con estos campos",
Customer Primary Contact,Contacto Principal del Cliente,
"Reselect, if the chosen contact is edited after save","Vuelva a seleccionar, si el contacto elegido se edita después de guardar",
Customer Primary Address,Dirección Principal del Cliente,
"Reselect, if the chosen address is edited after save","Vuelva a seleccionar, si la dirección elegida se edita después de guardar",
Primary Address,Dirección Primaria,
Mention if non-standard receivable account,Indique si utiliza una cuenta por cobrar distinta a la predeterminada,
Credit Limit and Payment Terms,Límite de Crédito y Condiciones de Pago,
Additional information regarding the customer.,Información adicional referente al cliente.,
Sales Partner and Commission,Comisiones y socios de ventas,
Commission Rate,Comisión de ventas,
Sales Team Details,Detalles del equipo de ventas.,
Customer POS id,ID de POS del cliente,
Customer Credit Limit,Límite de crédito del cliente,
Bypass Credit Limit Check at Sales Order,Evitar el control de límite de crédito en la Orden de Venta,
Industry Type,Tipo de industria,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Fecha de Instalación,
Installation Time,Tiempo de Instalación,
Installation Note Item,Nota de instalación de elementos,
Installed Qty,Cantidad Instalada,
Lead Source,Fuente de de la Iniciativa,
Period Start Date,Fecha de Inicio del Período,
Period End Date,Fecha de Finalización del Período,
Cashier,Cajero,
Difference,Diferencia,
Modes of Payment,Modos de Pago,
Linked Invoices,Facturas Vinculadas,
POS Closing Voucher Details,Detalles del cupón de cierre de POS,
Collected Amount,Cantidad Cobrada,
Expected Amount,Monto Esperado,
POS Closing Voucher Invoices,Facturas de cupones de cierre de POS,
Quantity of Items,Cantidad de Artículos,
"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","Grupo Global de la ** ** Los productos que en otro artículo ** **. Esto es útil si usted está empaquetando unas determinadas Artículos ** ** en un paquete y mantener un balance de los ** Los productos envasados ** y no el agregado ** ** Artículo. El paquete ** ** Artículo tendrá &quot;Es el archivo de artículos&quot; como &quot;No&quot; y &quot;¿Es artículo de ventas&quot; como &quot;Sí&quot;. Por ejemplo: Si usted está vendiendo ordenadores portátiles y Mochilas por separado y tienen un precio especial si el cliente compra a la vez, entonces el ordenador portátil + Mochila será un nuevo paquete de productos de artículos. Nota: BOM = Lista de materiales",
Parent Item,Producto padre / principal,
List items that form the package.,Lista de tareas que forman el paquete .,
SAL-QTN-.YYYY.-,SAL-QTN-.YYYY.-,
Quotation To,Presupuesto para,
Rate at which customer's currency is converted to company's base currency,Tasa por la cual la divisa es convertida como moneda base de la compañía,
Rate at which Price list currency is converted to company's base currency,Tasa por la cual la lista de precios es convertida como base de la compañía,
Additional Discount and Coupon Code,Descuento adicional y código de cupón,
Referral Sales Partner,Socio de ventas de referencia,
In Words will be visible once you save the Quotation.,'En palabras' será visible una vez guarde el Presupuesto,
Term Details,Detalles de términos y condiciones,
Quotation Item,Ítem de Presupuesto,
Against Doctype,Contra 'DocType',
Against Docname,Contra Docname,
Additional Notes,Notas adicionales,
SAL-ORD-.YYYY.-,SAL-ORD-.YYYY.-,
Skip Delivery Note,Saltar nota de entrega,
In Words will be visible once you save the Sales Order.,En palabras serán visibles una vez que guarde el pedido de ventas.,
Track this Sales Order against any Project,Monitorear esta órden de venta sobre cualquier proyecto,
Billing and Delivery Status,Estado de facturación y entrega,
Not Delivered,No entregado,
Fully Delivered,Entregado completamente,
Partly Delivered,Parcialmente entregado,
Not Applicable,No aplicable,
%  Delivered,% Entregado,
% of materials delivered against this Sales Order,% de materiales entregados para esta orden de venta,
% of materials billed against this Sales Order,% de materiales facturados contra esta orden de venta,
Not Billed,No facturado,
Fully Billed,Totalmente Facturado,
Partly Billed,Parcialmente facturado,
Ensure Delivery Based on Produced Serial No,Garantizar la entrega en función del número de serie producido,
Supplier delivers to Customer,Proveedor entrega al Cliente,
Delivery Warehouse,Almacén de entrega,
Planned Quantity,Cantidad planificada,
For Production,Por producción,
Work Order Qty,Cantidad de Órdenes de Trabajo,
Produced Quantity,Cantidad Producida,
Used for Production Plan,Se utiliza para el plan de producción,
Sales Partner Type,Tipo de Socio de Ventas,
Contact No.,Contacto No.,
Contribution (%),Margen (%),
Contribution to Net Total,Contribución neta total,
Selling Settings,Configuración de ventas,
Settings for Selling Module,Ajustes para módulo de ventas,
Customer Naming By,Ordenar cliente por,
Campaign Naming By,Nombrar campañas por,
Default Customer Group,Categoría de cliente predeterminada,
Default Territory,Territorio predeterminado,
Close Opportunity After Days,Cerrar Oportunidad Después Días,
Default Quotation Validity Days,Días de Validez de Cotizaciones Predeterminados,
Sales Update Frequency,Frecuencia de Actualización de Ventas,
Each Transaction,Cada Transacción,
SMS Center,Centro SMS,
Send To,Enviar a,
All Contact,Todos los Contactos,
All Customer Contact,Todos Contactos de Clientes,
All Supplier Contact,Todos Contactos de Proveedores,
All Sales Partner Contact,Listado de todos los socios de ventas,
All Lead (Open),Todas las Oportunidades (Abiertas),
All Employee (Active),Todos los Empleados (Activos),
All Sales Person,Todos los vendedores,
Create Receiver List,Crear Lista de Receptores,
Receiver List,Lista de receptores,
Messages greater than 160 characters will be split into multiple messages,Los mensajes con más de 160 caracteres se dividirá en varios envios,
Total Characters,Total Caracteres,
Total Message(s),Total Mensage(s),
Authorization Control,Control de Autorización,
Authorization Rule,Regla de Autorización,
Average Discount,Descuento Promedio,
Customerwise Discount,Descuento de Cliente,
Itemwise Discount,Descuento de Producto,
Customer or Item,Cliente o artículo,
Customer / Item Name,Cliente / Nombre de Artículo,
Authorized Value,Valor Autorizado,
Applicable To (Role),Aplicable a (Rol),
Applicable To (Employee),Aplicable a ( Empleado ),
Applicable To (User),Aplicable a (Usuario),
Applicable To (Designation),Aplicables a (Puesto),
Approving Role (above authorized value),Aprobar Rol (por encima del valor autorizado),
Approving User  (above authorized value),Aprobar usuario (por encima del valor autorizado),
Brand Defaults,Valores predeterminados de marca,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Entidad Legal / Subsidiario con un Catalogo de Cuentas separado que pertenece a la Organización.,
Change Abbreviation,Cambiar abreviación,
Parent Company,Empresa Matriz,
Default Values,Valores predeterminados,
Default Holiday List,Lista de vacaciones / festividades predeterminadas,
Default Selling Terms,Términos de venta predeterminados,
Default Buying Terms,Términos de compra predeterminados,
Create Chart Of Accounts Based On,Crear plan de cuentas basado en,
Standard Template,Plantilla estándar,
Existing Company,Empresa existente,
Chart Of Accounts Template,Plantilla del catálogo de cuentas,
Existing Company ,Compañía existente,
Date of Establishment,Fecha de Fundación,
Sales Settings,Configuraciones de ventas,
Monthly Sales Target,Objetivo Mensual de Ventas,
Sales Monthly History,Historial Mensual de Ventas,
Transactions Annual History,Historial Anual de Transacciones,
Total Monthly Sales,Total de Ventas Mensuales,
Default Cash Account,Cuenta de efectivo por defecto,
Default Receivable Account,Cuenta por cobrar por defecto,
Round Off Cost Center,Centro de costos por defecto (redondeo),
Discount Allowed Account,Cuenta de descuento permitida,
Discount Received Account,Cuenta de descuento recibida,
Exchange Gain / Loss Account,Cuenta de Ganancias / Pérdidas en Cambio,
Unrealized Exchange Gain/Loss Account,Cuenta de Ganancia / Pérdida de Canje no Realizada,
Allow Account Creation Against Child Company,Permitir creación de cuenta contra empresa infantil,
Default Payable Account,Cuenta por pagar por defecto,
Default Employee Advance Account,Cuenta Predeterminada de Anticipo de Empleado,
Default Cost of Goods Sold Account,Cuenta de costos (venta) por defecto,
Default Income Account,Cuenta de ingresos por defecto,
Default Deferred Revenue Account,Cuenta de Ingresos Diferidos Predeterminada,
Default Deferred Expense Account,Cuenta de Gastos Diferidos Predeterminada,
Default Payroll Payable Account,La nómina predeterminada de la cuenta por pagar,
Default Expense Claim Payable Account,Cuenta Pagadera por Reclamación de Gastos Predeterminada,
Stock Settings,Configuración de inventarios,
Enable Perpetual Inventory,Habilitar Inventario Perpetuo,
Default Inventory Account,Cuenta de Inventario Predeterminada,
Stock Adjustment Account,Cuenta de ajuste de existencias,
Fixed Asset Depreciation Settings,Configuración de Depreciación de los Activos Fijos,
Series for Asset Depreciation Entry (Journal Entry),Series para la Entrada de Depreciación de Activos (Entrada de Diario),
Gain/Loss Account on Asset Disposal,Cuenta de ganancias/pérdidas por enajenación de activos fijos,
Asset Depreciation Cost Center,Centro de la amortización del coste de los activos,
Budget Detail,Detalle del Presupuesto,
Exception Budget Approver Role,Rol de aprobación de presupuesto de excepción,
Company Info,Información de la compañía,
For reference only.,Sólo para referencia.,
Company Logo,Logo de la Compañía,
Date of Incorporation,Fecha de Incorporación,
Date of Commencement,Fecha de Comienzo,
Phone No,Teléfono No.,
Company Description,Descripción de la Compañía,
Registration Details,Detalles de registro,
Company registration numbers for your reference. Tax numbers etc.,"Los números de registro de la compañía para su referencia. Números fiscales, etc",
Delete Company Transactions,Eliminar las transacciones de la compañía,
Currency Exchange,Cambio de Divisas,
Specify Exchange Rate to convert one currency into another,Especificar el tipo de cambio para convertir una moneda a otra,
From Currency,Desde Moneda,
To Currency,A moneda,
For Buying,Por Comprar,
For Selling,Para la Venta,
Customer Group Name,Nombre de la categoría de cliente,
Parent Customer Group,Categoría principal de cliente,
Only leaf nodes are allowed in transaction,Sólo las sub-cuentas son permitidas en una transacción,
Mention if non-standard receivable account applicable,Indique si una cuenta por cobrar no estándar es  aplicable,
Credit Limits,Límites de crédito,
Email Digest,Boletín por correo electrónico,
Send regular summary reports via Email.,Enviar informes resumidos periódicamente por correo electrónico.,
Email Digest Settings,Configuración del boletín de correo electrónico,
How frequently?,¿Con qué frecuencia?,
Next email will be sent on:,El siguiente correo electrónico será enviado el:,
Note: Email will not be sent to disabled users,Nota: El correo electrónico no se enviará a los usuarios deshabilitados,
Profit & Loss,Perdidas & Ganancias,
New Income,Nuevo Ingreso,
New Expenses,Los nuevos gastos,
Annual Income,Ingresos anuales,
Annual Expenses,Gastos Anuales,
Bank Balance,Saldo Bancario,
Bank Credit Balance,Saldo de crédito bancario,
Receivables,Cuentas por cobrar,
Payables,Cuentas por pagar,
Sales Orders to Bill,Órdenes de Ventas a Facturar,
Purchase Orders to Bill,Órdenes de compra a Bill,
New Sales Orders,Nueva orden de venta (OV),
New Purchase Orders,Nueva órdén de compra,
Sales Orders to Deliver,Órdenes de Ventas para Enviar,
Purchase Orders to Receive,Órdenes de compra para recibir,
New Purchase Invoice,Nueva factura de compra,
New Quotations,Nuevas Cotizaciones,
Open Quotations,Cotizaciones Abiertas,
Open Issues,Problemas abiertos,
Open Projects,Proyectos abiertos,
Purchase Orders Items Overdue,Órdenes de compra Artículos vencidos,
Upcoming Calendar Events,Próximos eventos del calendario,
Open To Do,Abierto para hacer,
Add Quote,Añadir Cita,
Global Defaults,Predeterminados globales,
Default Company,Compañía predeterminada,
Current Fiscal Year,Año fiscal actual,
Default Distance Unit,Unidad de distancia predeterminada,
Hide Currency Symbol,Ocultar el símbolo de moneda,
Do not show any symbol like $ etc next to currencies.,No volver a mostrar cualquier símbolo como $ u otro junto a las monedas.,
"If disable, 'Rounded Total' field will not be visible in any transaction","si es desactivado,  el campo 'Total redondeado' no será visible en ninguna transacción",
Disable In Words,Desactivar en palabras,
"If disable, 'In Words' field will not be visible in any transaction","Si se desactiva, el campo 'En Palabras' no será visible en ninguna transacción.",
Item Classification,Clasificación de Producto,
General Settings,Configuración General,
Item Group Name,Nombre del grupo de productos,
Parent Item Group,Grupo principal de productos,
Item Group Defaults,Valores predeterminados del grupo de artículos,
Item Tax,Impuestos del Producto,
Check this if you want to show in website,Seleccione esta opción si desea mostrarlo en el sitio web,
Show this slideshow at the top of the page,Mostrar esta presentación de diapositivas en la parte superior de la página,
HTML / Banner that will show on the top of product list.,HTML / Banner que aparecerá en la parte superior de la lista de productos.,
Set prefix for numbering series on your transactions,Establezca los prefijos de las numeraciones en sus transacciones,
Setup Series,Configurar secuencias,
Update Series,Definir Secuencia,
Change the starting / current sequence number of an existing series.,Defina el nuevo número de secuencia para esta transacción.,
Quotation Lost Reason,Razón de la Pérdida,
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuidor / proveedor / comisionista / afiliado / revendedor que vende productos de empresas a cambio de una comisión.,
Sales Partner Name,Nombre de socio de ventas,
Partner Type,Tipo de socio,
Address & Contacts,Dirección y Contactos,
Address Desc,Dirección,
Contact Desc,Desc. de Contacto,
Sales Partner Target,Metas de socio de ventas,
Targets,Objetivos,
Show In Website,Mostrar en el sitio web,
Referral Code,código de referencia,
To Track inbound purchase,Para rastrear la compra entrante,
Logo,Logo,
Partner website,Sitio web de colaboradores,
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Todas las transacciones de venta se pueden etiquetar para múltiples **vendedores** de esta manera usted podrá definir y monitorear objetivos.,
Name and Employee ID,Nombre y ID de empleado,
Sales Person Name,Nombre de vendedor,
Parent Sales Person,Persona encargada de ventas,
Select company name first.,Seleccione primero el nombre de la empresa.,
Sales Person Targets,Objetivos de ventas del vendedor,
Set targets Item Group-wise for this Sales Person.,Establecer objetivos en los grupos de productos para este vendedor,
Supplier Group Name,Nombre del Grupo de Proveedores,
Parent Supplier Group,Grupo de Proveedores Primarios,
Target Detail,Detalle de objetivo,
Target Qty,Cantidad estimada,
Target  Amount,Importe previsto,
Target Distribution,Distribución del objetivo,
"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.","Términos y Condiciones Estándar que se pueden agregar a compras y ventas.\n\n Ejemplos: \n\n 1. Validez de la oferta.\n 1. Condiciones de pago (por adelantado, el crédito, parte antelación etc).\n 1. ¿Qué es extra (o por pagar por el cliente).\n 1. Advertencia de Uso /  Seguridad.\n 1. Garantía si la hay.\n 1. Política de devolución.\n 1. Términos de envío, si aplica.\n 1. Formas de abordar disputas, indemnización, responsabilidad, etc. \n 1. Dirección y contacto de su empresa.",
Applicable Modules,Módulos Aplicables,
Terms and Conditions Help,Ayuda de Términos y Condiciones,
Classification of Customers by region,Clasificación de clientes por región,
Territory Name,Nombre Territorio,
Parent Territory,Territorio principal,
Territory Manager,Gerente de Territorio,
For reference,Para referencia,
Territory Targets,Metas de territorios,
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Establecer grupo de presupuestos en este territorio. también puede incluir las temporadas de distribución,
UOM Name,Nombre de la unidad de medida (UdM),
Check this to disallow fractions. (for Nos),Marque esta opción para deshabilitar las fracciones.,
Website Item Group,Grupo de productos en el sitio web,
Cross Listing of Item in multiple groups,Cruz Ficha de artículo en varios grupos,
Default settings for Shopping Cart,Ajustes por defecto para carrito de compras,
Enable Shopping Cart,Habilitar Carrito de Compras,
Display Settings,Configuración de Pantalla,
Show Public Attachments,Mostrar adjuntos públicos,
Show Price,Mostrar Precio,
Show Stock Availability,Mostrar Disponibilidad de Stock,
Show Contact Us Button,Mostrar botón Contáctenos,
Show Stock Quantity,Mostrar Cantidad en Stock,
Show Apply Coupon Code,Mostrar aplicar código de cupón,
Allow items not in stock to be added to cart,Permitir que los artículos no en stock se agreguen al carrito,
Prices will not be shown if Price List is not set,Los precios no se muestran si la lista de precios no se ha establecido,
Quotation Series,Series de Presupuestos,
Checkout Settings,Ajustes del Pedido,
Enable Checkout,Habilitar Pedido,
Payment Success Url,URL de Pago Exitoso,
After payment completion redirect user to selected page.,Después de la realización del pago redirigir el usuario a la página seleccionada.,
Batch Details,Detalles del lote,
Batch ID,ID de Lote,
image,imagen,
Parent Batch,Lote padre,
Manufacturing Date,Fecha de Fabricación,
Batch Quantity,Cantidad de lote,
Batch UOM,Unidad de medida por lotes,
Source Document Type,Tipo de documento de origen,
Source Document Name,Nombre del documento de origen,
Batch Description,Descripción de Lotes,
Bin,Papelera,
Reserved Quantity,Cantidad Reservada,
Actual Quantity,Cantidad real,
Requested Quantity,Cantidad requerida,
Reserved Qty for sub contract,Cantidad reservada para Subcontrato,
Moving Average Rate,Porcentaje de precio medio variable,
FCFS Rate,Cambio FCFS,
Customs Tariff Number,Número de arancel aduanero,
Tariff Number,Número de tarifa,
Delivery To,Entregar a,
MAT-DN-.YYYY.-,MAT-DN-.YYYY.-,
Is Return,Es un retorno,
Issue Credit Note,Emitir Nota de Crédito,
Return Against Delivery Note,Devolución contra nota de entrega,
Customer's Purchase Order No,Pedido de compra No.,
Billing Address Name,Nombre de la dirección de facturación,
Required only for sample item.,Solicitado únicamente para muestra.,
"If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Si ha creado una plantilla estándar de los impuestos y cargos de venta, seleccione uno y haga clic en el botón de abajo.",
In Words will be visible once you save the Delivery Note.,En palabras serán visibles una vez que se guarda la nota de entrega.,
In Words (Export) will be visible once you save the Delivery Note.,En palabras (Exportar) serán visibles una vez que guarde la nota de entrega.,
Transporter Info,Información de Transportista,
Driver Name,Nombre del Conductor,
Track this Delivery Note against any Project,Seguir este albarán en contra de cualquier proyecto,
Inter Company Reference,Referencia de empresa interna,
Print Without Amount,Imprimir sin importe,
% Installed,% Instalado,
% of materials delivered against this Delivery Note,% de materiales entregados contra esta nota de entrega,
Installation Status,Estado de la instalación,
Excise Page Number,Número Impuestos Especiales Página,
Instructions,Instrucciones,
From Warehouse,De Almacén,
Against Sales Order,Contra la orden de venta,
Against Sales Order Item,Contra la orden de venta del producto,
Against Sales Invoice,Contra la factura de venta,
Against Sales Invoice Item,Contra la factura de venta del producto,
Available Batch Qty at From Warehouse,Cantidad de lotes disponibles desde Almacén,
Available Qty at From Warehouse,Camtidad Disponible Desde el Almacén,
Delivery Settings,Ajustes de Entrega,
Dispatch Settings,Ajustes de despacho,
Dispatch Notification Template,Plantilla de notificación de despacho,
Dispatch Notification Attachment,Adjunto de Notificación de Despacho,
Leave blank to use the standard Delivery Note format,Deje en blanco para usar el formato estándar de Nota de entrega,
Send with Attachment,Enviar con Archivo Adjunto,
Delay between Delivery Stops,Retraso entre paradas de entrega,
Delivery Stop,Parada de Entrega,
Lock,Bloquear,
Visited,Visitado,
Order Information,Información del Pedido,
Contact Information,Información del contacto,
Email sent to,Correo electrónico enviado a,
Dispatch Information,Información de envío,
Estimated Arrival,Llegada Estimada,
MAT-DT-.YYYY.-,MAT-DT-.YYYY.-,
Initial Email Notification Sent,Notificación Inicial de Correo Electrónico Enviada,
Delivery Details,Detalles de la entrega,
Driver Email,Email del conductor,
Driver Address,Dirección del conductor,
Total Estimated Distance,Distancia Total Estimada,
Distance UOM,Distancia UOM,
Departure Time,Hora de Salida,
Delivery Stops,Paradas de Entrega,
Calculate Estimated Arrival Times,Calcule los Tiempos Estimados de Llegada,
Use Google Maps Direction API to calculate estimated arrival times,Use la API de dirección de Google Maps para calcular los tiempos de llegada estimados,
Optimize Route,Optimizar Ruta,
Use Google Maps Direction API to optimize route,Utilice la API de dirección de Google Maps para optimizar la ruta,
In Transit,En Transito,
Fulfillment User,Usuario de Cumplimiento,
"A Product or a Service that is bought, sold or kept in stock.","Un producto o un servicio que se compra, se vende o se mantiene en stock.",
STO-ITEM-.YYYY.-,STO-ITEM-.YYYY.-,
Variant Of,Variante 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 el artículo es una variante de otro artículo entonces la descripción, imágenes, precios, impuestos, etc. se establecerán a partir de la plantilla a menos que se especifique explícitamente",
Is Item from Hub,Es Artículo para Hub,
Default Unit of Measure,Unidad de Medida (UdM) predeterminada,
Maintain Stock,Mantener Stock,
Standard Selling Rate,Precio de venta estándar,
Auto Create Assets on Purchase,Creación automática de activos en la compra,
Asset Naming Series,Nomenclatura para Activos,
Over Delivery/Receipt Allowance (%),Sobre entrega / recibo de recibo (%),
Barcodes,Códigos de Barras,
Shelf Life In Days,Vida útil en Días,
End of Life,Final de vida útil,
Default Material Request Type,El material predeterminado Tipo de solicitud,
Valuation Method,Método de Valoración,
FIFO,FIFO,
Moving Average,Precio medio variable,
Warranty Period (in days),Período de garantía (en días),
Auto re-order,Ordenar Automáticamente,
Reorder level based on Warehouse,Nivel de reabastecimiento basado en almacén,
Will also apply for variants unless overridden,También se aplicará para las variantes menos que se sobre escriba,
Units of Measure,Unidades de medida,
Will also apply for variants,También se aplicará para las variantes,
Serial Nos and Batches,Números de serie y lotes,
Has Batch No,Posee número de lote,
Automatically Create New Batch,Crear Automáticamente Nuevo Lote,
Batch Number Series,Serie de Número de Lote,
"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.","Ejemplo: ABCD. #####. Si se establece una serie y no se menciona el No de lote en las transacciones, se creará un número de lote automático basado en esta serie. Si siempre quiere mencionar explícitamente el No de lote para este artículo, déjelo en blanco. Nota: esta configuración tendrá prioridad sobre el Prefijo de denominación de serie en Configuración de stock.",
Has Expiry Date,Tiene Fecha de Caducidad,
Retain Sample,Conservar Muestra,
Max Sample Quantity,Cantidad de Muestra Máxima,
Maximum sample quantity that can be retained,Cantidad máxima de muestra que se puede retener,
Has Serial No,Posee numero de serie,
Serial Number Series,Secuencia del número de serie,
"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.","Ejemplo:. ABCD ##### \n Si la serie se establece y el número de serie no se menciona en las transacciones, entonces se creara un número de serie automático sobre la base de esta serie. Si siempre quiere mencionar explícitamente los números de serie para este artículo, déjelo en blanco.",
Variants,Variantes,
Has Variants,Posee variantes,
"If this item has variants, then it cannot be selected in sales orders etc.","Si este producto tiene variantes, entonces no podrá ser seleccionado en los pedidos de venta, etc.",
Variant Based On,Variante basada en,
Item Attribute,Atributos del Producto,
"Sales, Purchase, Accounting Defaults","Ventas, Compras, Valores Predeterminados de Contabilidad",
Item Defaults,Valores por Defecto del Artículo,
"Purchase, Replenishment Details",Detalles de compra y reabastecimiento,
Is Purchase Item,Es un producto para compra,
Default Purchase Unit of Measure,Unidad de Medida de Compra Predeterminada,
Minimum Order Qty,Cantidad mínima de la orden,
Minimum quantity should be as per Stock UOM,La cantidad mínima debe ser según Stock UOM,
Average time taken by the supplier to deliver,Tiempo estimado por el proveedor para el envío,
Is Customer Provided Item,Es producto proveído por cliente,
Delivered by Supplier (Drop Ship),Entregado por el Proveedor (Envío Triangulado),
Supplier Items,Artículos de proveedor,
Foreign Trade Details,Detalles de Comercio Extranjero,
Country of Origin,País de origen,
Sales Details,Detalles de ventas,
Default Sales Unit of Measure,Unidad de Medida de Ventas Predeterminada,
Is Sales Item,Es un producto para venta,
Max Discount (%),Descuento máximo (%),
No of Months,Número de Meses,
Customer Items,Partidas de deudores,
Inspection Criteria,Criterios de inspección,
Inspection Required before Purchase,Inspección requerida antes de la compra,
Inspection Required before Delivery,Inspección requerida antes de la entrega,
Default BOM,Lista de Materiales (LdM) por defecto,
Supply Raw Materials for Purchase,Suministro de materia prima para la compra,
If subcontracted to a vendor,Si es sub-contratado a un proveedor,
Customer Code,Código de Cliente,
Default Item Manufacturer,Fabricante de artículo predeterminado,
Default Manufacturer Part No,Número de pieza del fabricante predeterminado,
Show in Website (Variant),Mostrar en el sitio web (variante),
Items with higher weightage will be shown higher,Los productos con mayor ponderación se mostraran arriba,
Show a slideshow at the top of the page,Mostrar una presentación de diapositivas en la parte superior de la página,
Website Image,Imagen del sitio web,
Website Warehouse,Almacén para el sitio web,
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.",Mostrar 'En stock' o 'No disponible' basado en el stock disponible del almacén.,
Website Item Groups,Grupos de productos en el sitio web,
List this Item in multiple groups on the website.,Listar este producto en múltiples grupos del sitio web.,
Copy From Item Group,Copiar desde grupo,
Website Content,Contenido del sitio web,
You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Puede usar cualquier marcado válido de Bootstrap 4 en este campo. Se mostrará en su página de artículos.,
Total Projected Qty,Cantidad Total Proyectada,
Hub Publishing Details,Detalle de Publicación del Hub,
Publish in Hub,Publicar en el Hub,
Publish Item to hub.erpnext.com,Publicar artículo en hub.erpnext.com,
Hub Category to Publish,Categoría de Hub para Publicar,
Hub Warehouse,Almacén del Hub,
"Publish ""In Stock"" or ""Not in Stock"" on Hub based on stock available in this warehouse.","Publique ""En existencia"" o ""No disponible"" en el Hub según las existencias disponibles en este Almacén.",
Synced With Hub,Sincronizado con Hub.,
Item Alternative,Artículo Alternativo,
Alternative Item Code,Código de Artículo Alternativo,
Two-way,Bidireccional,
Alternative Item Name,Nombre Alternativo del Artículo,
Attribute Name,Nombre del Atributo,
Numeric Values,Valores Numéricos,
From Range,Desde Rango,
Increment,Incremento,
To Range,A rango,
Item Attribute Values,Valor de los Atributos del Producto,
Item Attribute Value,Atributos del Producto,
Attribute Value,Valor del Atributo,
Abbreviation,Abreviación,
"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""","Esto se añade al código del producto y la variante. Por ejemplo, si su abreviatura es ""SM"", y el código del artículo es ""CAMISETA"", entonces el código de artículo de la variante será ""CAMISETA-SM""",
Item Barcode,Código de Barras del Producto,
Barcode Type,Tipo de Código de Barras,
EAN,EAN,
UPC-A,UPC-A,
Item Customer Detail,Detalle del producto para el cliente,
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Para la comodidad de los clientes , estos códigos se pueden utilizar en formatos impresos como facturas y notas de entrega",
Ref Code,Código de referencia,
Item Default,Artículo Predeterminado,
Purchase Defaults,Valores Predeterminados de Compra,
Default Buying Cost Center,Centro de costos (compra) por defecto,
Default Supplier,Proveedor predeterminado,
Default Expense Account,Cuenta de gastos por defecto,
Sales Defaults,Valores Predeterminados de Venta,
Default Selling Cost Center,Centro de costos por defecto,
Item Manufacturer,Fabricante del artículo,
Item Price,Precio de Productos,
Packing Unit,Unidad de Embalaje,
Quantity  that must be bought or sold per UOM,Cantidad que se debe Comprar o Vender por UOM,
Item Quality Inspection Parameter,Parámetro de Inspección de Calidad del producto,
Acceptance Criteria,Criterios de Aceptación,
Item Reorder,Reabastecer producto,
Check in (group),Registro (grupo),
Request for,solicitud de,
Re-order Level,Nivel mínimo de stock.,
Re-order Qty,Cantidad mínima para ordenar,
Item Supplier,Proveedor del Producto,
Item Variant,Variante del Producto,
Item Variant Attribute,Atributo de Variante de Producto,
Do not update variants on save,No actualice las variantes al guardar,
Fields will be copied over only at time of creation.,Los campos se copiarán solo al momento de la creación.,
Allow Rename Attribute Value,Permitir Cambiar el Nombre del Valor del Atributo,
Rename Attribute Value in Item Attribute.,Cambiar el nombre del valor del atributo en el atributo del elemento.,
Copy Fields to Variant,Copiar Campos a Variante,
Item Website Specification,Especificación del producto en la WEB,
Table for Item that will be shown in Web Site,la tabla del producto que se mosatrara en el sitio Web,
Landed Cost Item,Costos de destino estimados,
Receipt Document Type,Tipo de Recibo de Documento,
Receipt Document,Recepción de Documento,
Applicable Charges,Cargos Aplicables,
Purchase Receipt Item,Recibo de compra del producto,
Landed Cost Purchase Receipt,Recibo sobre costos de destino estimados,
Landed Cost Taxes and Charges,"Impuestos, cargos y costos de destino estimados",
Landed Cost Voucher,Comprobante de costos de destino estimados,
MAT-LCV-.YYYY.-,MAT-LCV-.YYYY.-,
Purchase Receipts,Recibos de compra,
Purchase Receipt Items,Productos del recibo de compra,
Get Items From Purchase Receipts,Obtener productos desde recibo de compra,
Distribute Charges Based On,Distribuir los cargos basados en,
Landed Cost Help,Ayuda para costos de destino estimados,
Manufacturers used in Items,Fabricantes utilizados en artículos,
Limited to 12 characters,Limitado a 12 caracteres,
MAT-MR-.YYYY.-,MAT-MR-.YYYY.-,
Partially Ordered,Parcialmente ordenado,
Transferred,Transferido,
% Ordered,% Ordenado,
Terms and Conditions Content,Contenido de los términos y condiciones,
Quantity and Warehouse,Cantidad y Almacén,
Lead Time Date,Hora de la Iniciativa,
Min Order Qty,Cantidad mínima de Pedido,
Packed Item,Artículo Empacado,
To Warehouse (Optional),Para almacenes (Opcional),
Actual Batch Quantity,Cantidad de lote real,
Prevdoc DocType,DocType Previo,
Parent Detail docname,Detalle principal docname,
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Generar etiquetas de embalaje, para los paquetes que serán entregados, usados para notificar el numero, contenido y peso del paquete,",
Indicates that the package is a part of this delivery (Only Draft),Indica que el paquete es una parte de esta entrega (Sólo borradores),
MAT-PAC-.YYYY.-,MAT-PAC-.YYYY.-,
From Package No.,Desde Paquete Nro.,
Identification of the package for the delivery (for print),La identificación del paquete para la entrega (para impresión),
To Package No.,Al paquete No.,
If more than one package of the same type (for print),Si es más de un paquete del mismo tipo (para impresión),
Package Weight Details,Detalles del peso del paquete,
The net weight of this package. (calculated automatically as sum of net weight of items),El peso neto de este paquete. (calculado automáticamente por la suma del peso neto de los materiales),
Net Weight UOM,Unidad de medida para el peso neto,
Gross Weight,Peso bruto,
The gross weight of the package. Usually net weight + packaging material weight. (for print),El peso bruto del paquete. Peso + embalaje Normalmente material neto . (para impresión),
Gross Weight UOM,Peso bruto de la unidad de medida (UdM),
Packing Slip Item,Lista de embalaje del producto,
DN Detail,Detalle DN,
STO-PICK-.YYYY.-,STO-PICK-.YYYY.-,
Material Transfer for Manufacture,Trasferencia de Material para Producción,
Qty of raw materials will be decided based on the qty of the Finished Goods Item,La cantidad de materias primas se decidirá en función de la cantidad del artículo de productos terminados,
Parent Warehouse,Almacén Padre,
Items under this warehouse will be suggested,Se sugerirán artículos debajo de este almacén,
Get Item Locations,Obtener ubicaciones de artículos,
Item Locations,Ubicaciones de artículos,
Pick List Item,Seleccionar elemento de lista,
Picked Qty,Cantidad elegida,
Price List Master,Lista de precios principal,
Price List Name,Nombre de la lista de precios,
Price Not UOM Dependent,Precio no dependiente de UOM,
Applicable for Countries,Aplicable para los Países,
Price List Country,Lista de precios del país,
MAT-PRE-.YYYY.-,MAT-PRE-.YYYY.-,
Supplier Delivery Note,Nota de Entrega del Proveedor,
Time at which materials were received,Hora en que se recibieron los materiales,
Return Against Purchase Receipt,Devolución contra recibo compra,
Rate at which supplier's currency is converted to company's base currency,Tasa por la cual la divisa del proveedor es convertida como moneda base de la compañía,
Sets 'Accepted Warehouse' in each row of the items table.,Establece &#39;Almacén aceptado&#39; en cada fila de la tabla de artículos.,
Sets 'Rejected Warehouse' in each row of the items table.,Establece &#39;Almacén rechazado&#39; en cada fila de la tabla de artículos.,
Raw Materials Consumed,Materias primas consumidas,
Get Current Stock,Verificar inventario actual,
Consumed Items,Artículos consumidos,
Add / Edit Taxes and Charges,Añadir / Editar Impuestos y Cargos,
Auto Repeat Detail,Detalle de Repetición Automática,
Transporter Details,Detalles de Transporte,
Vehicle Number,Número de Vehículo,
Vehicle Date,Fecha de Vehículos,
Received and Accepted,Recibidos y aceptados,
Accepted Quantity,Cantidad Aceptada,
Rejected Quantity,Cantidad rechazada,
Accepted Qty as per Stock UOM,Cantidad aceptada según UOM de stock,
Sample Quantity,Cantidad de Muestra,
Rate and Amount,Tasa y cantidad,
MAT-QA-.YYYY.-,MAT-QA-.YYYY.-,
Report Date,Fecha del reporte,
Inspection Type,Tipo de inspección,
Item Serial No,Nº de Serie del producto,
Sample Size,Tamaño de muestra,
Inspected By,Inspección realizada por,
Readings,Lecturas,
Quality Inspection Reading,Lecturas de inspección de calidad,
Reading 1,Lectura 1,
Reading 2,Lectura 2,
Reading 3,Lectura 3,
Reading 4,Lectura 4,
Reading 5,Lectura 5,
Reading 6,Lectura 6,
Reading 7,Lectura 7,
Reading 8,Lectura 8,
Reading 9,Lectura 9,
Reading 10,Lectura 10,
Quality Inspection Template Name,Nombre de Plantilla de Inspección de Calidad,
Quick Stock Balance,Balance de stock rápido,
Available Quantity,Cantidad disponible,
Distinct unit of an Item,Unidad distinta del producto,
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,El almacen sólo puede ser alterado a través de: Entradas de inventario / Nota de entrega / Recibo de compra,
Purchase / Manufacture Details,Detalles de compra / producción,
Creation Document Type,Creación de documento,
Creation Document No,Creación del documento No,
Creation Date,Fecha de creación,
Creation Time,Hora de Creación,
Asset Details,Detalles del Activo,
Asset Status,Estado del Activo,
Delivery Document Type,Tipo de documento de entrega,
Delivery Document No,Documento de entrega No.,
Delivery Time,Tiempo de entrega,
Invoice Details,Detalles de la factura,
Warranty / AMC Details,Garantía / Detalles de CMA,
Warranty Expiry Date,Fecha de caducidad de la garantía,
AMC Expiry Date,Fecha de caducidad de CMA (Contrato de Mantenimiento Anual),
Under Warranty,Bajo garantía,
Out of Warranty,Fuera de garantía,
Under AMC,Bajo CMA (Contrato de mantenimiento anual),
Out of AMC,Fuera de CMA (Contrato de mantenimiento anual),
Warranty Period (Days),Período de garantía (Días),
Serial No Details,Detalles del numero de serie,
MAT-STE-.YYYY.-,MAT-STE-.YYYY.-,
Stock Entry Type,Tipo de entrada de stock,
Stock Entry (Outward GIT),Entrada de stock (GIT externo),
Material Consumption for Manufacture,Consumo de Material para Fabricación,
Repack,Re-empacar,
Send to Subcontractor,Enviar al subcontratista,
Delivery Note No,Nota de entrega No.,
Sales Invoice No,Factura de venta No.,
Purchase Receipt No,Recibo de compra No.,
Inspection Required,Inspección Requerida,
From BOM,Desde lista de materiales (LdM),
For Quantity,Por cantidad,
As per Stock UOM,Unidad de Medida Según Inventario,
Including items for sub assemblies,Incluir productos para subconjuntos,
Default Source Warehouse,Almacén de origen,
Source Warehouse Address,Dirección del Almacén de Origen,
Default Target Warehouse,Almacen de destino predeterminado,
Target Warehouse Address,Dirección del Almacén de Destino,
Update Rate and Availability,Actualización de tarifas y disponibilidad,
Total Incoming Value,Valor total de entradas,
Total Outgoing Value,Valor total de salidas,
Total Value Difference (Out - In),Total diferencia  (Salidas - Entradas),
Additional Costs,Costes adicionales,
Total Additional Costs,Total de costos adicionales,
Customer or Supplier Details,Detalle de cliente o proveedor,
Per Transferred,Por transferido,
Stock Entry Detail,Detalles de entrada de inventario,
Basic Rate (as per Stock UOM),Precio base (según la UdM),
Basic Amount,Importe Base,
Additional Cost,Costo adicional,
Serial No / Batch,No. de serie / lote,
BOM No. for a Finished Good Item,Lista de materiales (LdM) para el producto terminado,
Material Request used to make this Stock Entry,Solicitud de materiales usados para crear esta entrada del inventario,
Subcontracted Item,Artículo Subcontratado,
Against Stock Entry,Contra entrada de stock,
Stock Entry Child,Niño de entrada de stock,
PO Supplied Item,Artículo suministrado por pedido,
Reference Purchase Receipt,Recibo de compra de referencia,
Stock Ledger Entry,Entradas en el mayor de inventarios,
Outgoing Rate,Tasa saliente,
Actual Qty After Transaction,Cantidad real después de transacción,
Stock Value Difference,Diferencia del valor de inventario,
Stock Queue (FIFO),Cola de inventario (FIFO),
Is Cancelled,Cancelado,
Stock Reconciliation,Reconciliación de inventarios,
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.,Esta herramienta le ayuda a actualizar o corregir la cantidad y la valoración de los valores en el sistema. Normalmente se utiliza para sincronizar los valores del sistema y lo que realmente existe en sus almacenes.,
MAT-RECO-.YYYY.-,MAT-RECO-.YYYY.-,
Reconciliation JSON,Reconciliación JSON,
Stock Reconciliation Item,Elemento de reconciliación de inventarios,
Before reconciliation,Antes de Reconciliación,
Current Serial No,Número de serie actual,
Current Valuation Rate,Tasa de valoración actual,
Current Amount,Cantidad actual,
Quantity Difference,Diferencia de Cantidad,
Amount Difference,Diferencia de monto,
Item Naming By,Ordenar productos por,
Default Item Group,Grupo de artículos predeterminado,
Default Stock UOM,Unidad de Medida (UdM) predeterminada para Inventario,
Sample Retention Warehouse,Almacenamiento de Muestras de Retención,
Default Valuation Method,Método predeterminado de valoración,
Show Barcode Field,Mostrar Campo de código de barras,
Convert Item Description to Clean HTML,Convertir la descripción del elemento a HTML Limpio,
Allow Negative Stock,Permitir Inventario Negativo,
Automatically Set Serial Nos based on FIFO,Ajusta automáticamente los números de serie basado en FIFO,
Auto Material Request,Requisición de Materiales Automática,
Inter Warehouse Transfer Settings,Configuración de transferencia entre almacenes,
Freeze Stock Entries,Congelar entradas de stock,
Stock Frozen Upto,Inventario congelado hasta,
Batch Identification,Identificación de Lote,
Use Naming Series,Usar Series de Nomenclatura,
Naming Series Prefix,Nombrar el Prefijo de la Serie,
UOM Category,Categoría UOM,
UOM Conversion Detail,Detalles de conversión de unidad de medida (UdM),
Variant Field,Campo de Variante,
A logical Warehouse against which stock entries are made.,Un Almacén lógico contra el que se crean las entradas de inventario,
Warehouse Detail,Detalles del Almacén,
Warehouse Name,Nombre del Almacén,
Warehouse Contact Info,Información del Contacto en el Almacén,
PIN,PIN,
ISS-.YYYY.-,ISS-.YYYY.-,
Raised By (Email),Propuesto por (Email),
Issue Type,Tipo de Problema,
Issue Split From,Problema dividido desde,
Service Level,Nivel de servicio,
Response By,Respuesta por,
Response By Variance,Respuesta por varianza,
Ongoing,En marcha,
Resolution By,Resolución por,
Resolution By Variance,Resolución por varianza,
Service Level Agreement Creation,Creación de acuerdo de nivel de servicio,
First Responded On,Primera respuesta el,
Resolution Details,Detalles de la resolución,
Opening Date,Fecha de apertura,
Opening Time,Hora de Apertura,
Resolution Date,Fecha de resolución,
Via Customer Portal,A Través del Portal del Cliente,
Support Team,Equipo de soporte,
Issue Priority,Prioridad de emisión,
Service Day,Día de servicio,
Workday,Jornada laboral,
Default Priority,Prioridad predeterminada,
Priorities,Prioridades,
Support Hours,Horas de Soporte,
Support and Resolution,Soporte y resolución,
Default Service Level Agreement,Acuerdo de nivel de servicio predeterminado,
Entity,Entidad,
Agreement Details,Detalles del acuerdo,
Response and Resolution Time,Tiempo de respuesta y resolución,
Service Level Priority,Prioridad de nivel de servicio,
Resolution Time,Tiempo de resolucion,
Support Search Source,Soporte Search Source,
Source Type,Tipo de Fuente,
Query Route String,Cadena de Ruta de Consulta,
Search Term Param Name,Nombre del Parámetro de Búsqueda,
Response Options,Opciones de Respuesta,
Response Result Key Path,Ruta clave del resultado de la respuesta,
Post Route String,Publicar cadena de ruta,
Post Route Key List,Publicar lista de claves de ruta,
Post Title Key,Clave de título de publicación,
Post Description Key,Clave de Descripción de Publicación,
Link Options,Opciones de Enlace,
Source DocType,DocType Fuente,
Result Title Field,Campo de título del resultado,
Result Preview Field,Campo de Vista Previa del Resultado,
Result Route Field,Campo de ruta de resultado,
Service Level Agreements,Acuerdos de Nivel de Servicio,
Track Service Level Agreement,Seguimiento del acuerdo de nivel de servicio,
Allow Resetting Service Level Agreement,Permitir restablecer el acuerdo de nivel de servicio,
Close Issue After Days,Cerrar Problema Después Días,
Auto close Issue after 7 days,Cierre automático de incidencia después de 7 días,
Support Portal,Portal de Soporte,
Get Started Sections,Obtener Secciones Comenzadas,
Show Latest Forum Posts,Mostrar las últimas publicaciones del Foro,
Forum Posts,Publicaciones del Foro,
Forum URL,URL del Foro,
Get Latest Query,Obtener la Última Consulta,
Response Key List,Lista de Claves de Respuesta,
Post Route Key,Publicar clave de ruta,
Search APIs,API de Búsqueda,
SER-WRN-.YYYY.-,SER-WRN-.YYYY.-,
Issue Date,Fecha de emisión,
Item and Warranty Details,Producto y detalles de garantía,
Warranty / AMC Status,Garantía / Estado de CMA,
Resolved By,Resuelto por,
Service Address,Dirección de servicio,
If different than customer address,Si es diferente a la dirección del cliente,
Raised By,Propuesto por,
From Company,Desde Compañía,
Rename Tool,Herramienta para renombrar,
Utilities,Utilidades,
Type of document to rename.,Indique el tipo de documento que desea cambiar de nombre.,
File to Rename,Archivo a renombrar,
"Attach .csv file with two columns, one for the old name and one for the new name","Adjuntar archivo .csv con dos columnas, una para el nombre antiguo y la otra para el nombre nuevo.",
Rename Log,Cambiar el nombre de sesión,
SMS Log,Registros SMS,
Sender Name,Nombre del remitente,
Sent On,Enviado por,
No of Requested SMS,Número de SMS solicitados,
Requested Numbers,Números solicitados,
No of Sent SMS,Número de SMS enviados,
Sent To,Enviado a,
Absent Student Report,Informe del alumno ausente,
Assessment Plan Status,Estado del Plan de Evaluación,
Asset Depreciation Ledger,Libro Mayor Depreciacion de Activos,
Asset Depreciations and Balances,Depreciaciones de Activos y Saldos,
Available Stock for Packing Items,Inventario Disponible de Artículos de Embalaje,
Bank Clearance Summary,Resumen de Cambios Bancarios,
Batch Item Expiry Status,Estado de Caducidad de Lote de Productos,
Batch-Wise Balance History,Historial de Saldo por Lotes,
BOM Explorer,BOM Explorer,
BOM Search,Buscar listas de materiales (LdM),
BOM Stock Calculated,BOM Stock Calculado,
BOM Variance Report,Informe de varianza BOM,
Campaign Efficiency,Eficiencia de la Campaña,
Cash Flow,Flujo de fondos,
Completed Work Orders,Órdenes de Trabajo completadas,
To Produce,Producir,
Produced,Producido,
Consolidated Financial Statement,Estado Financiero Consolidado,
Course wise Assessment Report,Informe de Evaluación del Curso,
Customer Acquisition and Loyalty,Compras y Lealtad de Clientes,
Customer Credit Balance,Saldo de Clientes,
Customer Ledger Summary,Resumen del Libro mayor de clientes,
Customer-wise Item Price,Precio del artículo sabio para el cliente,
Customers Without Any Sales Transactions,Clientes sin ninguna Transacción de Ventas,
Daily Timesheet Summary,Resumen Diario de Horas,
DATEV,DATEV,
Delayed Item Report,Informe de artículo retrasado,
Delayed Order Report,Informe de pedido retrasado,
Delivered Items To Be Billed,Envios por facturar,
Delivery Note Trends,Evolución de las notas de entrega,
Electronic Invoice Register,Registro Electrónico de Facturas,
Employee Billing Summary,Resumen de facturación de empleados,
Employee Birthday,Cumpleaños del empleado,
Employee Information,Información del empleado,
Employee Leave Balance,Balance de ausencias de empleado,
Employee Leave Balance Summary,Resumen de saldo de licencia de empleado,
Eway Bill,Eway Bill,
Expiring Memberships,Membresías Expiradas,
Fichier des Ecritures Comptables [FEC],Fichier des Ecritures Comptables [FEC],
Final Assessment Grades,Grados de Evaluación Final,
Fixed Asset Register,Registro de activos fijos,
Gross and Net Profit Report,Informe de ganancias brutas y netas,
GST Itemised Purchase Register,Registro detallado de la TPS,
GST Itemised Sales Register,Registro detallado de ventas de GST,
GST Purchase Register,Registro de Compra de TPS,
GST Sales Register,Registro de ventas de GST,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Ocupación de la Habitación del Hotel,
HSN-wise-summary of outward supplies,HSN-wise-sumario de los suministros exteriores,
Inactive Customers,Clientes Inactivos,
Inactive Sales Items,Artículos de venta inactivos,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Artículos Emitidos contra Orden de Trabajo,
Projected Quantity as Source,Cantidad proyectada como Fuente,
Item Balance (Simple),Balance del Artículo (Simple),
Item Price Stock,Artículo Stock de Precios,
Item Prices,Precios de los productos,
Item Shortage Report,Reporte de productos con stock bajo,
Item Variant Details,Detalles de la Variante del Artículo,
Item-wise Price List Rate,Detalle del listado de precios,
Item-wise Purchase History,Historial de Compras,
Item-wise Purchase Register,Detalle de compras,
Item-wise Sales History,Detalle de las Ventas,
Item-wise Sales Register,Detalle de Ventas,
Items To Be Requested,Solicitud de Productos,
Reserved,Reservado,
Itemwise Recommended Reorder Level,Nivel recomendado de reabastecimiento de producto,
Lead Details,Detalle de Iniciativas,
Lead Owner Efficiency,Eficiencia del Propietario de la Iniciativa,
Lost Opportunity,Oportunidad perdida,
Maintenance Schedules,Programas de Mantenimiento,
Material Requests for which Supplier Quotations are not created,Solicitudes de Material para los que no hay Presupuestos de Proveedor creados,
Open Work Orders,Abrir Órdenes de Trabajo,
Qty to Deliver,Cantidad a entregar,
Patient Appointment Analytics,Análisis de citas de pacientes,
Payment Period Based On Invoice Date,Periodos de pago según facturas,
Pending SO Items For Purchase Request,A la espera de la orden de compra (OC) para crear solicitud de compra (SC),
Procurement Tracker,Rastreador de compras,
Product Bundle Balance,Balance de paquete de productos,
Production Analytics,Análisis de Producción,
Profit and Loss Statement,Cuenta de pérdidas y ganancias,
Profitability Analysis,Cuenta de Resultados,
Project Billing Summary,Resumen de facturación del proyecto,
Project wise Stock Tracking,Seguimiento de stock por proyecto,
Project wise Stock Tracking ,Seguimiento preciso del stock--,
Prospects Engaged But Not Converted,Perspectivas comprometidas pero no convertidas,
Purchase Analytics,Analítico de compras,
Purchase Invoice Trends,Tendencias de compras,
Qty to Receive,Cantidad a Recibir,
Received Qty Amount,Cantidad recibida Cantidad,
Billed Qty,Cantidad facturada,
Purchase Order Trends,Tendencias de ordenes de compra,
Purchase Receipt Trends,Tendencias de recibos de compra,
Purchase Register,Registro de compras,
Quotation Trends,Tendencias de Presupuestos,
Received Items To Be Billed,Recepciones por facturar,
Qty to Order,Cantidad a Solicitar,
Requested Items To Be Transferred,Artículos solicitados para ser transferidos,
Qty to Transfer,Cantidad a Transferir,
Sales Analytics,Análisis de ventas,
Sales Invoice Trends,Tendencias de ventas,
Sales Order Trends,Tendencias de ordenes de ventas,
Sales Partner Commission Summary,Resumen de la comisión del socio de ventas,
Sales Partner Target Variance based on Item Group,Variación objetivo del socio de ventas según el grupo de artículos,
Sales Partner Transaction Summary,Resumen de transacciones del socio de ventas,
Sales Partners Commission,Comisiones de socios de ventas,
Invoiced Amount (Exclusive Tax),Importe facturado (impuesto exclusivo),
Average Commission Rate,Tasa de Comisión Promedio,
Sales Payment Summary,Resumen de Pago de Ventas,
Sales Person Commission Summary,Resumen de la Comisión de Personas de Ventas,
Sales Person Target Variance Based On Item Group,Varianza objetivo del vendedor basada en el grupo de artículos,
Sales Person-wise Transaction Summary,Resumen de transacciones por vendedor,
Sales Register,Registro de ventas,
Serial No Service Contract Expiry,Número de serie de expiracion del contrato de servicios,
Serial No Status,Estado del número serie,
Serial No Warranty Expiry,Garantía de caducidad del numero de serie,
Stock Ageing,Antigüedad de existencias,
Stock and Account Value Comparison,Comparación de acciones y valor de cuenta,
Stock Projected Qty,Cantidad de inventario proyectado,
Student and Guardian Contact Details,Detalles de Contacto de Alumno y Tutor,
Student Batch-Wise Attendance,Asistencia de Estudiantes por Lote,
Student Fee Collection,Cobro del Cuotas del Estudiante,
Student Monthly Attendance Sheet,Hoja de Asistencia Mensual de Estudiante,
Subcontracted Item To Be Received,Artículo subcontratado a recibir,
Subcontracted Raw Materials To Be Transferred,Materias primas subcontratadas para ser transferidas,
Supplier Ledger Summary,Resumen del libro mayor de proveedores,
Supplier-Wise Sales Analytics,Análisis de ventas (Proveedores),
Support Hour Distribution,Soporte de distribución de horas,
TDS Computation Summary,Resumen de Computación TDS,
TDS Payable Monthly,TDS pagables Mensualmente,
Territory Target Variance Based On Item Group,Variación objetivo del territorio basada en el grupo de artículos,
Territory-wise Sales,Ventas por territorio,
Total Stock Summary,Resumen de stock total,
Trial Balance,Balanza de Comprobación,
Trial Balance (Simple),Balance de Sumas y Saldos (Simple),
Trial Balance for Party,Balance de Terceros,
Warehouse wise Item Balance Age and Value,Balance de Edad y Valor de Item por Almacén,
Work Order Stock Report,Informe de stock de Órden de Trabajo,
Work Orders in Progress,Órdenes de Trabajo en progreso,
Automatically Process Deferred Accounting Entry,Procesar automáticamente asientos contables diferidos,
Bank Clearance,Liquidación bancaria,
Bank Clearance Detail,Detalle de liquidación bancaria,
Update Cost Center Name / Number,Actualizar nombre / número del centro de costos,
Journal Entry Template,Plantilla de entrada de diario,
Template Title,Título de la plantilla,
Journal Entry Type,Tipo de entrada de diario,
Journal Entry Template Account,Cuenta de plantilla de asiento de diario,
Process Deferred Accounting,Proceso de contabilidad diferida,
Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,¡No se puede crear una entrada manual! Deshabilite la entrada automática para contabilidad diferida en la configuración de cuentas e intente nuevamente,
End date cannot be before start date,La fecha de finalización no puede ser anterior a la fecha de inicio,
Total Counts Targeted,Total de recuentos objetivo,
Total Counts Completed,Total de recuentos completados,
Counts Targeted: {0},Recuentos orientados: {0},
Material Request Warehouse,Almacén de solicitud de material,
Select warehouse for material requests,Seleccionar almacén para solicitudes de material,
Transfer Materials For Warehouse {0},Transferir materiales para almacén {0},
Production Plan Material Request Warehouse,Almacén de solicitud de material de plan de producción,
Sets 'Source Warehouse' in each row of the items table.,Establece &#39;Almacén de origen&#39; en cada fila de la tabla de artículos.,
Sets 'Target Warehouse' in each row of the items table.,Establece &#39;Almacén de destino&#39; en cada fila de la tabla de artículos.,
Show Cancelled Entries,Mostrar entradas canceladas,
Backdated Stock Entry,Entrada de stock retroactiva,
Row #{}: Currency of {} - {} doesn't matches company currency.,Fila # {}: la moneda de {} - {} no coincide con la moneda de la empresa.,
{} Assets created for {},{} Activos creados para {},
{0} Number {1} is already used in {2} {3},{0} Número {1} ya se usa en {2} {3},
Update Bank Clearance Dates,Actualizar fechas de liquidación bancaria,
Healthcare Practitioner: ,Profesional de la salud:,
Lab Test Conducted: ,Prueba de laboratorio realizada:,
Lab Test Event: ,Evento de prueba de laboratorio:,
Lab Test Result: ,Resultado de la prueba de laboratorio:,
Clinical Procedure conducted: ,Procedimiento clínico realizado:,
Therapy Session Charges: {0},Cargos de la sesión de terapia: {0},
Therapy: ,Terapia:,
Therapy Plan: ,Plan de terapia:,
Total Counts Targeted: ,Recuentos totales objetivo:,
Total Counts Completed: ,Conteos totales completados:,
Is Mandatory,Es obligatorio,
Service Received But Not Billed,Servicio recibido pero no facturado,
Deferred Accounting Settings,Configuración de contabilidad diferida,
Book Deferred Entries Based On,Reservar entradas diferidas según,
Days,Dias,
Months,Meses,
Book Deferred Entries Via Journal Entry,Reservar entradas diferidas mediante entrada de diario,
Submit Journal Entries,Enviar entradas de diario,
If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,"Si no se marca, las entradas del diario se guardarán en estado de borrador y deberán enviarse manualmente",
Enable Distributed Cost Center,Habilitar el centro de costos distribuidos,
Distributed Cost Center,Centro de costos distribuidos,
Dunning,Reclamación,
DUNN-.MM.-.YY.-,DUNN-.MM .-. YY.-,
Overdue Days,Días atrasados,
Dunning Type,Tipo de reclamación,
Dunning Fee,Tarifa de reclamación,
Dunning Amount,Importe de reclamación,
Resolved,Resuelto,
Unresolved,Irresoluto,
Printing Setting,Configuración de impresión,
Body Text,Cuerpo de texto,
Closing Text,Texto de cierre,
Resolve,Resolver,
Dunning Letter Text,Texto de la carta de reclamación,
Is Default Language,Es el idioma predeterminado,
Letter or Email Body Text,Texto del cuerpo de la carta o correo electrónico,
Letter or Email Closing Text,Texto de cierre de carta o correo electrónico,
Body and Closing Text Help,Ayuda para el cuerpo y el texto de cierre,
Overdue Interval,Intervalo vencido,
Dunning Letter,Carta de reclamación,
"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.","Esta sección permite al usuario configurar el cuerpo y el texto de cierre de la carta de reclamación para el tipo de reclamación según el idioma, que se puede utilizar en impresión.",
Reference Detail No,Detalle de referencia No,
Custom Remarks,Comentarios personalizados,
Please select a Company first.,Primero seleccione una empresa.,
"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Fila # {0}: el tipo de documento de referencia debe ser pedido de cliente, factura de venta, asiento de diario o reclamación.",
POS Closing Entry,Entrada de cierre de POS,
POS Opening Entry,Entrada de apertura POS,
POS Transactions,Transacciones POS,
POS Closing Entry Detail,Detalle de entrada de cierre de POS,
Opening Amount,Importe de apertura,
Closing Amount,Monto de cierre,
POS Closing Entry Taxes,Impuestos de entrada al cierre de POS,
POS Invoice,Factura POS,
ACC-PSINV-.YYYY.-,ACC-PSINV-.YYYY.-,
Consolidated Sales Invoice,Factura de venta consolidada,
Return Against POS Invoice,Devolución contra factura POS,
Consolidated,Consolidado,
POS Invoice Item,Artículo de factura POS,
POS Invoice Merge Log,Registro de combinación de facturas de POS,
POS Invoices,Facturas POS,
Consolidated Credit Note,Nota de crédito consolidada,
POS Invoice Reference,Referencia de factura de punto de venta,
Set Posting Date,Establecer fecha de publicación,
Opening Balance Details,Detalles del saldo inicial,
POS Opening Entry Detail,Detalle de entrada de apertura de punto de venta,
POS Payment Method,Método de pago POS,
Payment Methods,Métodos de pago,
Process Statement Of Accounts,Estado de cuentas de proceso,
General Ledger Filters,Filtros del libro mayor,
Customers,Clientes,
Select Customers By,Seleccionar clientes por,
Fetch Customers,Obtener clientes,
Send To Primary Contact,Enviar a contacto principal,
Print Preferences,Preferencias de impresión,
Include Ageing Summary,Incluir resumen de envejecimiento,
Enable Auto Email,Habilitar correo electrónico automático,
Filter Duration (Months),Duración del filtro (meses),
CC To,CC para,
Help Text,texto de ayuda,
Emails Queued,Correos electrónicos en cola,
Process Statement Of Accounts Customer,Procesar el estado de cuentas del cliente,
Billing Email,Correo Electrónico de Facturas,
Primary Contact Email,Correo electrónico de contacto principal,
PSOA Cost Center,Centro de costos de PSOA,
PSOA Project,Proyecto PSOA,
ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.YYYY.-,
Supplier GSTIN,Proveedor GSTIN,
Place of Supply,Lugar de suministro,
Select Billing Address,Seleccione dirección de facturación,
GST Details,Detalles de GST,
GST Category,Categoría GST,
Registered Regular,Regular registrado,
Registered Composition,Composición registrada,
Unregistered,No registrado,
SEZ,SEZ,
Overseas,De ultramar,
UIN Holders,Titulares de UIN,
With Payment of Tax,Con pago de impuestos,
Without Payment of Tax,Sin pago de impuestos,
Invoice Copy,Copia de la factura,
Original for Recipient,Original para destinatario,
Duplicate for Transporter,Duplicar para Transporter,
Duplicate for Supplier,Duplicar para proveedor,
Triplicate for Supplier,Triplicado para proveedor,
Reverse Charge,Carga inversa,
Y,Y,
N,norte,
E-commerce GSTIN,GSTIN de comercio electrónico,
Reason For Issuing document,Razón de la emisión del documento,
01-Sales Return,01-Devolución de ventas,
02-Post Sale Discount,02-Descuento posterior a la venta,
03-Deficiency in services,03-Deficiencia en los servicios,
04-Correction in Invoice,04-Corrección en factura,
05-Change in POS,05-Cambio en TPV,
06-Finalization of Provisional assessment,06-Finalización de la evaluación provisional,
07-Others,07-Otros,
Eligibility For ITC,Elegibilidad para ITC,
Input Service Distributor,Distribuidor de servicios de entrada,
Import Of Service,Importación de servicio,
Import Of Capital Goods,Importación de bienes de capital,
Ineligible,Inelegible,
All Other ITC,Todos los demás ITC,
Availed ITC Integrated Tax,Impuesto integrado ITC disponible,
Availed ITC Central Tax,Impuesto central de ITC disponible,
Availed ITC State/UT Tax,Impuesto estatal / UT de ITC disponible,
Availed ITC Cess,Cess de ITC disponible,
Is Nil Rated or Exempted,Tiene calificación nula o está exento,
Is Non GST,No es GST,
ACC-SINV-RET-.YYYY.-,ACC-SINV-RET-.YYYY.-,
E-Way Bill No.,Factura E-Way No.,
Is Consolidated,Está consolidado,
Billing Address GSTIN,Dirección de facturación GSTIN,
Customer GSTIN,Cliente GSTIN,
GST Transporter ID,ID de transportador de GST,
Distance (in km),Distancia (en km),
Road,La carretera,
Air,Aire,
Rail,Carril,
Ship,Embarcacion,
GST Vehicle Type,Tipo de vehículo GST,
Over Dimensional Cargo (ODC),Carga sobredimensional (ODC),
Consumer,Consumidor,
Deemed Export,Exportación considerada,
Port Code,Código de puerto,
 Shipping Bill Number,Número de factura de envío,
Shipping Bill Date,Fecha de factura de envío,
Subscription End Date,Fecha de finalización de la suscripción,
Follow Calendar Months,Seguir meses del calendario,
If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,"Si se marca esta opción, se crearán nuevas facturas posteriores en las fechas de inicio del mes calendario y trimestre, independientemente de la fecha de inicio de la factura actual",
Generate New Invoices Past Due Date,Generar nuevas facturas vencidas,
New invoices will be generated as per schedule even if current invoices are unpaid or past due date,Las nuevas facturas se generarán según el cronograma incluso si las facturas actuales están impagas o vencidas,
Document Type ,Tipo de Documento,
Subscription Price Based On,Precio de suscripción basado en,
Fixed Rate,Tipo de interés fijo,
Based On Price List,Basado en la lista de precios,
Monthly Rate,Tasa mensual,
Cancel Subscription After Grace Period,Cancelar suscripción después del período de gracia,
Source State,Estado de origen,
Is Inter State,Es interestatal,
Purchase Details,Detalles de la compra,
Depreciation Posting Date,Fecha de contabilización de la depreciación,
"By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","De forma predeterminada, el nombre del proveedor se establece según el nombre del proveedor introducido. Si desea que los proveedores sean nombrados por un",
 choose the 'Naming Series' option.,elija la opción &#39;Serie de nombres&#39;.,
Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Configure la lista de precios predeterminada al crear una nueva transacción de compra. Los precios de los artículos se obtendrán de esta lista de precios.,
"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 esta opción está configurada como &#39;Sí&#39;, ERPNext le impedirá crear una Factura o Recibo de Compra sin crear primero una Orden de Compra. Esta configuración se puede anular para un proveedor en particular activando la casilla de verificación &#39;Permitir la creación de facturas de compra sin orden de compra&#39; en el maestro de proveedores.",
"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 esta opción está configurada como &#39;Sí&#39;, ERPNext le impedirá crear una Factura de Compra sin crear primero un Recibo de Compra. Esta configuración se puede anular para un proveedor en particular activando la casilla de verificación &quot;Permitir la creación de facturas de compra sin recibo de compra&quot; en el maestro de proveedores.",
Quantity & Stock,Cantidad y stock,
Call Details,Detalles de la llamada,
Authorised By,Autorizado por,
Signee (Company),Firmante (empresa),
Signed By (Company),Firmado por (empresa),
First Response Time,Tiempo de primera respuesta,
Request For Quotation,Solicitud de presupuesto,
Opportunity Lost Reason Detail,Detalle de motivo de pérdida de oportunidad,
Access Token Secret,Secreto de token de acceso,
Add to Topics,Agregar a temas,
...Adding Article to Topics,... Agregar artículo a temas,
Add Article to Topics,Agregar artículo a temas,
This article is already added to the existing topics,Este artículo ya está agregado a los temas existentes.,
Add to Programs,Agregar a programas,
Programs,Programas,
...Adding Course to Programs,... Agregar curso a programas,
Add Course to Programs,Agregar curso a programas,
This course is already added to the existing programs,Este curso ya está agregado a los programas existentes,
Learning Management System Settings,Configuración del sistema de gestión de aprendizaje,
Enable Learning Management System,Habilitar el sistema de gestión de aprendizaje,
Learning Management System Title,Título del sistema de gestión de aprendizaje,
...Adding Quiz to Topics,... Agregar cuestionario a los temas,
Add Quiz to Topics,Agregar cuestionario a temas,
This quiz is already added to the existing topics,Este cuestionario ya se agregó a los temas existentes.,
Enable Admission Application,Habilitar la solicitud de admisión,
EDU-ATT-.YYYY.-,EDU-ATT-.YYYY.-,
Marking attendance,Marcando asistencia,
Add Guardians to Email Group,Agregar tutores al grupo de correo electrónico,
Attendance Based On,Asistencia 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,Marque esto para marcar al estudiante como presente en caso de que el estudiante no asista al instituto para participar o representar al instituto en cualquier caso.,
Add to Courses,Agregar a cursos,
...Adding Topic to Courses,... Agregar tema a los cursos,
Add Topic to Courses,Agregar tema a los cursos,
This topic is already added to the existing courses,Este tema ya está agregado a los cursos existentes.,
"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 tiene un cliente en el pedido, mientras sincroniza los pedidos, el sistema considerará el cliente predeterminado para el pedido.",
The accounts are set by the system automatically but do confirm these defaults,"El sistema configura las cuentas automáticamente, pero confirme estos valores predeterminados",
Default Round Off Account,Cuenta de redondeo predeterminada,
Failed Import Log,Registro de importación fallido,
Fixed Error Log,Registro de errores fijos,
Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,La empresa {0} ya existe. Continuar sobrescribirá la empresa y el plan de cuentas.,
Meta Data,Metadatos,
Unresolve,No resolver,
Create Document,Crear documento,
Mark as unresolved,Marcar como no resuelto,
TaxJar Settings,Configuración de TaxJar,
Sandbox Mode,modo sandbox,
Enable Tax Calculation,Habilitar el cálculo de impuestos,
Create TaxJar Transaction,Crear transacción TaxJar,
Credentials,Cartas credenciales,
Live API Key,Clave de API en vivo,
Sandbox API Key,Clave de API de Sandbox,
Configuration,Configuración,
Tax Account Head,Jefe de cuenta fiscal,
Shipping Account Head,Jefe de cuenta de envío,
Practitioner Name,Nombre del practicante,
Enter a name for the Clinical Procedure Template,Ingrese un nombre para la plantilla de procedimiento clínico,
Set the Item Code which will be used for billing the Clinical Procedure.,Establezca el Código de artículo que se utilizará para facturar el Procedimiento clínico.,
Select an Item Group for the Clinical Procedure Item.,Seleccione un grupo de elementos para el elemento de procedimiento clínico.,
Clinical Procedure Rate,Tasa de procedimiento clínico,
Check this if the Clinical Procedure is billable and also set the rate.,Marque esto si el procedimiento clínico es facturable y también establezca la tarifa.,
Check this if the Clinical Procedure utilises consumables. Click ,Marque esto si el procedimiento clínico utiliza consumibles. Hacer clic,
 to know more,para saber mas,
"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.","También puede configurar el Departamento Médico para la plantilla. Después de guardar el documento, se creará automáticamente un Artículo para facturar este Procedimiento Clínico. A continuación, puede utilizar esta plantilla al crear procedimientos clínicos para pacientes. Las plantillas le ahorran tener que llenar datos redundantes cada vez. También puede crear plantillas para otras operaciones como pruebas de laboratorio, sesiones de terapia, etc.",
Descriptive Test Result,Resultado de la prueba descriptiva,
Allow Blank,Permitir en blanco,
Descriptive Test Template,Plantilla de prueba descriptiva,
"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Si desea realizar un seguimiento de la nómina y otras operaciones de HRMS para un practicante, cree un empleado y vincúlelo aquí.",
Set the Practitioner Schedule you just created. This will be used while booking appointments.,Establezca el horario del profesional que acaba de crear. Esto se utilizará al reservar citas.,
Create a service item for Out Patient Consulting.,Cree un artículo de servicio para la consulta externa.,
"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Si este profesional de la salud trabaja para el departamento de pacientes hospitalizados, cree un elemento de servicio para visitas de pacientes hospitalizados.",
Set the Out Patient Consulting Charge for this Practitioner.,Fije el cargo por consulta externa para este médico.,
"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Si este Médico también trabaja para el Departamento de Pacientes Internos, establezca el cargo de la visita al paciente internado para este Médico.",
"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 se marca, se creará un cliente para cada paciente. Las facturas del paciente se crearán contra este cliente. También puede seleccionar un Cliente existente mientras crea un Paciente. Este campo está marcado de forma predeterminada.",
Collect Registration Fee,Cobrar la tarifa de registro,
"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 su centro de atención médica factura los registros de pacientes, puede marcar esto y establecer la tarifa de registro en el campo a continuación. Al marcar esto, se crearán nuevos pacientes con un estado deshabilitado de forma predeterminada y solo se habilitará después de facturar la tarifa de registro.",
Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,"Al marcar esto, se creará automáticamente una factura de venta cada vez que se programe una cita para un paciente.",
Healthcare Service Items,Artículos de servicios de salud,
"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 ","Puede crear un elemento de servicio para el cargo por visita hospitalaria y configurarlo aquí. Del mismo modo, puede configurar otros Elementos del servicio de atención médica para la facturación en esta sección. Hacer clic",
Set up default Accounts for the Healthcare Facility,Configurar cuentas predeterminadas para el centro sanitario,
"If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.","Si desea anular la configuración predeterminada de las cuentas y configurar las cuentas de ingresos y de cobros para el cuidado de la salud, puede hacerlo aquí.",
Out Patient SMS alerts,Alertas por SMS para pacientes externos,
"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 desea enviar una alerta por SMS sobre el registro del paciente, puede habilitar esta opción. De manera similar, puede configurar alertas por SMS para pacientes ambulatorios para otras funcionalidades en esta sección. Hacer clic",
Admission Order Details,Detalles del pedido de admisión,
Admission Ordered For,Admisión ordenada para,
Expected Length of Stay,Duración prevista de la estancia,
Admission Service Unit Type,Tipo de unidad de servicio de admisión,
Healthcare Practitioner (Primary),Profesional de la salud (primaria),
Healthcare Practitioner (Secondary),Médico de atención médica (secundaria),
Admission Instruction,Instrucción de admisión,
Chief Complaint,Queja principal,
Medications,Medicamentos,
Investigations,Investigaciones,
Discharge Detials,Detials de descarga,
Discharge Ordered Date,Fecha de orden de alta,
Discharge Instructions,Instrucciones de descarga,
Follow Up Date,Fecha de seguimiento,
Discharge Notes,Notas de descarga,
Processing Inpatient Discharge,Procesamiento del alta hospitalaria,
Processing Patient Admission,Procesamiento de la admisión de pacientes,
Check-in time cannot be greater than the current time,La hora de entrada no puede ser mayor que la hora actual,
Process Transfer,Transferencia de proceso,
HLC-LAB-.YYYY.-,HLC-LAB-.YYYY.-,
Expected Result Date,Fecha de resultado esperada,
Expected Result Time,Tiempo de resultado esperado,
Printed on,Impreso en,
Requesting Practitioner,Practicante solicitante,
Requesting Department,Departamento solicitante,
Employee (Lab Technician),Empleado (técnico de laboratorio),
Lab Technician Name,Nombre del técnico de laboratorio,
Lab Technician Designation,Designación de técnico de laboratorio,
Compound Test Result,Resultado de la prueba compuesta,
Organism Test Result,Resultado de la prueba del organismo,
Sensitivity Test Result,Resultado de la prueba de sensibilidad,
Worksheet Print,Imprimir hoja de trabajo,
Worksheet Instructions,Instrucciones de la hoja de trabajo,
Result Legend Print,Impresión de leyenda de resultado,
Print Position,Posición de impresión,
Both,Ambos,
Result Legend,Leyenda de resultados,
Lab Tests,Pruebas de laboratorio,
No Lab Tests found for the Patient {0},No se encontraron pruebas de laboratorio para el paciente {0},
"Did not send SMS, missing patient mobile number or message content.","No envió SMS, falta el número de teléfono del paciente o el contenido del mensaje.",
No Lab Tests created,No se crearon pruebas de laboratorio,
Creating Lab Tests...,Creación de pruebas de laboratorio ...,
Lab Test Group Template,Plantilla de grupo de pruebas de laboratorio,
Add New Line,Agregar nueva línea,
Secondary UOM,Unidad de medida secundaria,
"<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>Único</b> : resultados que requieren una sola entrada.<br> <b>Compuesto</b> : resultados que requieren múltiples entradas de eventos.<br> <b>Descriptivo</b> : Pruebas que tienen múltiples componentes de resultados con entrada de resultados manual.<br> <b>Agrupadas</b> : plantillas de prueba que son un grupo de otras plantillas de prueba.<br> <b>Sin resultado</b> : las pruebas sin resultados se pueden solicitar y facturar, pero no se creará ninguna prueba de laboratorio. p.ej. Subpruebas para resultados agrupados",
"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Si no se marca, el artículo no estará disponible en Facturas de venta para facturación, pero se puede usar en la creación de pruebas grupales.",
Description ,Descripción,
Descriptive Test,Prueba descriptiva,
Group Tests,Pruebas grupales,
Instructions to be printed on the worksheet,Instrucciones para imprimir en la hoja de trabajo,
"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",La información para ayudar a interpretar fácilmente el informe de la prueba se imprimirá como parte del resultado de la prueba de laboratorio.,
Normal Test Result,Resultado de prueba normal,
Secondary UOM Result,Resultado de la unidad de medida secundaria,
Italic,Itálico,
Underline,Subrayar,
Organism,Organismo,
Organism Test Item,Elemento de prueba de organismo,
Colony Population,Población de la colonia,
Colony UOM,UOM de colonia,
Tobacco Consumption (Past),Consumo de tabaco (pasado),
Tobacco Consumption (Present),Consumo de tabaco (presente),
Alcohol Consumption (Past),Consumo de alcohol (pasado),
Alcohol Consumption (Present),Consumo de alcohol (presente),
Billing Item,Artículo de facturación,
Medical Codes,Códigos médicos,
Clinical Procedures,Procedimientos clínicos,
Order Admission,Admisión de pedidos,
Scheduling Patient Admission,Programación de la admisión de pacientes,
Order Discharge,Descarga de pedidos,
Sample Details,Detalles de la muestra,
Collected On,Recogido el,
No. of prints,No. de impresiones,
Number of prints required for labelling the samples,Número de impresiones necesarias para etiquetar las muestras,
HLC-VTS-.YYYY.-,HLC-VTS-.YYYY.-,
Payroll Cost Center,Centro de costos de nómina,
Approvers,Aprobadores,
The first Approver in the list will be set as the default Approver.,El primer Aprobador de la lista se establecerá como Aprobador predeterminado.,
Shift Request Approver,Aprobador de solicitud de turno,
Provident Fund Account,Cuenta del fondo de previsión,
MICR Code,Código MICR,
Repay unclaimed amount from salary,Reembolsar la cantidad no reclamada del salario,
Deduction from salary,Deducción del salario,
If this is not checked the loan by default will be considered as a Demand Loan,"Si no se marca, el préstamo por defecto se considerará Préstamo a la vista.",
This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Esta cuenta se utiliza para registrar los reembolsos de préstamos del prestatario y también para desembolsar préstamos al prestatario.,
This account is capital account which is used to allocate capital for loan disbursal account ,Esta cuenta es una cuenta de capital que se utiliza para asignar capital para la cuenta de desembolso de préstamos.,
This account will be used for booking loan interest accruals,Esta cuenta se utilizará para registrar acumulaciones de intereses de préstamos,
This account will be used for booking penalties levied due to delayed repayments,Esta cuenta se utilizará para las multas de reserva impuestas debido a retrasos en los pagos,
Variant BOM,Lista de materiales variante,
Template Item,Elemento de plantilla,
Select template item,Seleccionar elemento de plantilla,
Select variant item code for the template item {0},Seleccione el código de artículo de variante para el artículo de plantilla {0},
Downtime Entry,Entrada de tiempo de inactividad,
DT-,DT-,
Workstation / Machine,Estación de trabajo / máquina,
Operator,Operador,
In Mins,En minutos,
Downtime Reason,Razón del tiempo de inactividad,
Stop Reason,Detener la razón,
Excessive machine set up time,Tiempo de preparación excesivo de la máquina,
Unplanned machine maintenance,Mantenimiento no planificado de la máquina,
On-machine press checks,Controles de prensa en máquina,
Machine operator errors,Errores del operador de la máquina,
Machine malfunction,Mal funcionamiento de la máquina,
Electricity down,Electricidad bajada,
Operation Row Number,Número de fila de operación,
Operation {0} added multiple times in the work order {1},Operación {0} agregada varias veces en la orden de trabajo {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 está marcado, se pueden usar varios materiales para una sola orden de trabajo. Esto es útil si se fabrican uno o más productos que requieren mucho tiempo.",
Backflush Raw Materials,Materias primas de retrolavado,
"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.","La entrada de existencias de tipo &#39;Fabricación&#39; se conoce como toma retroactiva. Las materias primas que se consumen para fabricar productos terminados se conocen como retrolavado.<br><br> Al crear Entrada de fabricación, los artículos de materia prima se retroalimentan según la lista de materiales del artículo de producción. Si desea que los artículos de materia prima se regulen en función de la entrada de Transferencia de material realizada contra esa Orden de trabajo, puede configurarlo en este campo.",
Work In Progress Warehouse,Almacén de trabajo en curso,
This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Este almacén se actualizará automáticamente en el campo Almacén de trabajo en curso de Órdenes de trabajo.,
Finished Goods Warehouse,Almacén de productos terminados,
This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Este almacén se actualizará automáticamente en el campo Almacén de destino de la orden de trabajo.,
"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Si se marca, el costo de la lista de materiales se actualizará automáticamente en función de la tasa de valoración / tasa de lista de precios / última tasa de compra de materias primas.",
Source Warehouses (Optional),Almacenes de origen (opcional),
"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","El sistema recogerá los materiales de los almacenes seleccionados. Si no se especifica, el sistema creará una solicitud de material para la compra.",
Lead Time,Tiempo de espera,
PAN Details,Detalles PAN,
Create Customer,Crear cliente,
Invoicing,Facturación,
Enable Auto Invoicing,Habilitar facturación automática,
Send Membership Acknowledgement,Enviar reconocimiento de membresía,
Send Invoice with Email,Enviar factura con correo electrónico,
Membership Print Format,Formato de impresión de membresía,
Invoice Print Format,Formato de impresión de facturas,
Revoke <Key></Key>,Revocar&lt;Key&gt;&lt;/Key&gt;,
You can learn more about memberships in the manual. ,Puede obtener más información sobre las membresías en el manual.,
ERPNext Docs,ERPNext Docs,
Regenerate Webhook Secret,Regenerar secreto de webhook,
Generate Webhook Secret,Generar secreto de webhook,
Copy Webhook URL,Copiar URL de webhook,
Linked Item,Elemento vinculado,
Feedback By,Comentarios de,
Manufacturing Section,Sección de fabricación,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","De forma predeterminada, el nombre del cliente se establece según el nombre completo introducido. Si desea que los Clientes sean nombrados por un",
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Configure la lista de precios predeterminada al crear una nueva transacción de ventas. Los precios de los artículos se obtendrán de esta lista de precios.,
"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 esta opción está configurada como &#39;Sí&#39;, ERPNext le impedirá crear una factura de venta o una nota de entrega sin crear primero una orden de venta. Esta configuración se puede anular para un cliente en particular activando la casilla de verificación &#39;Permitir la creación de facturas de venta sin orden de venta&#39; en el maestro de clientes.",
"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 esta opción está configurada como &#39;Sí&#39;, ERPNext le impedirá crear una Factura de venta sin crear primero una Nota de entrega. Esta configuración se puede anular para un cliente en particular activando la casilla de verificación &#39;Permitir la creación de facturas de venta sin nota de entrega&#39; en el maestro de clientes.",
Default Warehouse for Sales Return,Almacén predeterminado para devolución de ventas,
Default In Transit Warehouse,Almacén de tránsito predeterminado,
Enable Perpetual Inventory For Non Stock Items,Habilitar el inventario permanente para artículos que no están en stock,
HRA Settings,Configuración de HRA,
Basic Component,Componente básico,
HRA Component,Componente HRA,
Arrear Component,Componente atrasado,
Please enter the company name to confirm,Ingrese el nombre de la empresa para confirmar,
Quotation Lost Reason Detail,Detalle de motivo de pérdida de cotización,
Enable Variants,Habilitar variantes,
Save Quotations as Draft,Guardar cotizaciones como borrador,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.YYYY.-,
Please Select a Customer,Seleccione un cliente,
Against Delivery Note Item,Contra el artículo de la nota de entrega,
Is Non GST ,No es GST,
Image Description,Descripción de la imagen,
Transfer Status,Estado de transferencia,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
Track this Purchase Receipt against any Project,Seguimiento de este recibo de compra contra cualquier proyecto,
Please Select a Supplier,Seleccione un proveedor,
Add to Transit,Agregar al tránsito,
Set Basic Rate Manually,Establecer tarifa básica manualmente,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","De forma predeterminada, el Nombre del artículo se establece según el Código de artículo ingresado. Si desea que los elementos tengan un nombre",
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Establecer un almacén predeterminado para transacciones de inventario. Esto se obtendrá en el Almacén predeterminado en el maestro de artículos.,
"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.","Esto permitirá que los artículos de stock se muestren en valores negativos. El uso de esta opción depende de su caso de uso. Con esta opción desmarcada, el sistema advierte antes de obstruir una transacción que está provocando un stock negativo.",
Choose between FIFO and Moving Average Valuation Methods. Click ,Elija entre los métodos de valoración FIFO y de media móvil. Hacer clic,
 to know more about them.,para saber más sobre ellos.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Muestre el campo &#39;Escanear código de barras&#39; encima de cada tabla secundaria para insertar elementos con facilidad.,
"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.","Los números de serie para las existencias se establecerán automáticamente en función de los artículos ingresados según el primero en entrar, primero en salir en transacciones como facturas de compra / venta, notas de entrega, etc.",
"If blank, parent Warehouse Account or company default will be considered in transactions","Si está en blanco, la cuenta de almacén principal o el incumplimiento de la empresa se considerarán en las transacciones",
Service Level Agreement Details,Detalles del acuerdo de nivel de servicio,
Service Level Agreement Status,Estado del acuerdo de nivel de servicio,
On Hold Since,En espera desde,
Total Hold Time,Tiempo total de espera,
Response Details,Detalles de respuesta,
Average Response Time,Tiempo promedio de respuesta,
User Resolution Time,Tiempo de resolución de usuario,
SLA is on hold since {0},El SLA está en espera desde {0},
Pause SLA On Status,Pausar SLA en estado,
Pause SLA On,Pausar SLA activado,
Greetings Section,Sección de saludos,
Greeting Title,Título de saludo,
Greeting Subtitle,Subtítulo de saludo,
Youtube ID,ID de Youtube,
Youtube Statistics,Estadísticas de Youtube,
Views,Puntos de vista,
Dislikes,No me gusta,
Video Settings,Ajustes de video,
Enable YouTube Tracking,Habilitar el seguimiento de YouTube,
30 mins,30 minutos,
1 hr,1 hora,
6 hrs,6 horas,
Patient Progress,Progreso del paciente,
Targetted,Destinado,
Score Obtained,Puntuación obtenida,
Sessions,Sesiones,
Average Score,Puntuación media,
Select Assessment Template,Seleccionar plantilla de evaluación,
 out of ,fuera de,
Select Assessment Parameter,Seleccionar parámetro de evaluación,
Gender: ,Género:,
Contact: ,Contacto:,
Total Therapy Sessions: ,Sesiones de terapia totales:,
Monthly Therapy Sessions: ,Sesiones de terapia mensuales:,
Patient Profile,Perfil del paciente,
Point Of Sale,Punto de venta,
Email sent successfully.,Correo electrónico enviado correctamente.,
Search by invoice id or customer name,Buscar por ID de factura o nombre de cliente,
Invoice Status,Estado de la factura,
Filter by invoice status,Filtrar por estado de factura,
Select item group,Seleccionar grupo de artículos,
No items found. Scan barcode again.,No se encontraron artículos. Escanee el código de barras nuevamente.,
"Search by customer name, phone, email.","Busque por nombre de cliente, teléfono, correo electrónico.",
Enter discount percentage.,Ingrese el porcentaje de descuento.,
Discount cannot be greater than 100%,El descuento no puede ser superior al 100%,
Enter customer's email,Ingrese el correo electrónico del cliente,
Enter customer's phone number,Ingrese el número de teléfono del cliente,
Customer contact updated successfully.,El contacto del cliente se actualizó correctamente.,
Item will be removed since no serial / batch no selected.,El artículo se eliminará ya que no se seleccionó ningún número de serie / lote.,
Discount (%),Descuento (%),
You cannot submit the order without payment.,No puede enviar el pedido sin pago.,
You cannot submit empty order.,No puede enviar un pedido vacío.,
To Be Paid,A pagar,
Create POS Opening Entry,Crear entrada de apertura de punto de venta,
Please add Mode of payments and opening balance details.,Agregue el modo de pago y los detalles del saldo inicial.,
Toggle Recent Orders,Alternar pedidos recientes,
Save as Draft,Guardar como borrador,
You must add atleast one item to save it as draft.,Debe agregar al menos un elemento para guardarlo como borrador.,
There was an error saving the document.,Hubo un error al guardar el documento.,
You must select a customer before adding an item.,Debe seleccionar un cliente antes de agregar un artículo.,
Please Select a Company,Seleccione una empresa,
Active Leads,Leads activos,
Please Select a Company.,Seleccione una empresa.,
BOM Operations Time,Tiempo de operaciones de la lista de materiales,
BOM ID,ID de lista de materiales,
BOM Item Code,Código de artículo de lista de materiales,
Time (In Mins),Tiempo (en minutos),
Sub-assembly BOM Count,Recuento de listas de materiales de subensamblaje,
View Type,Tipo de vista,
Total Delivered Amount,Importe total entregado,
Downtime Analysis,Análisis de tiempo de inactividad,
Machine,Máquina,
Downtime (In Hours),Tiempo de inactividad (en horas),
Employee Analytics,Análisis de empleados,
"""From date"" can not be greater than or equal to ""To date""",&quot;Desde la fecha&quot; no puede ser mayor o igual que &quot;Hasta la fecha&quot;,
Exponential Smoothing Forecasting,Pronóstico de suavizado exponencial,
First Response Time for Issues,Tiempo de primera respuesta para problemas,
First Response Time for Opportunity,Tiempo de primera respuesta para la oportunidad,
Depreciatied Amount,Monto depreciado,
Period Based On,Periodo basado en,
Date Based On,Fecha basada en,
{0} and {1} are mandatory,{0} y {1} son obligatorios,
Consider Accounting Dimensions,Considere las dimensiones contables,
Reserved Quantity for Production,Cantidad reservada para producción,
Projected Quantity,Cantidad proyectada,
 Total Sales Amount,Monto total de ventas,
Job Card Summary,Resumen de la tarjeta de trabajo,
Id,Carné de identidad,
Time Required (In Mins),Tiempo requerido (en minutos),
From Posting Date,Desde la fecha de publicación,
To Posting Date,Hasta la fecha de publicación,
No records found,No se encontraron registros,
Customer/Lead Name,Nombre del cliente / cliente potencial,
Production Planning Report,Informe de planificación de producción,
Order Qty,Cantidad,
Raw Material Code,Código de materia prima,
Raw Material Name,Nombre de la materia prima,
Allotted Qty,Cantidad asignada,
Expected Arrival Date,Fecha prevista de llegada,
Arrival Quantity,Cantidad de llegada,
Raw Material Warehouse,Almacén de materia prima,
Order By,Ordenar por,
Include Sub-assembly Raw Materials,Incluir materias primas de subensamblaje,
Program wise Fee Collection,Cobro de tarifas por programa,
Fees Collected,Tarifas cobradas,
Project Summary,Resumen del proyecto,
Total Tasks,Tareas totales,
Tasks Completed,Tareas completadas,
Tasks Overdue,Tareas vencidas,
Completion,Terminación,
Purchase Order Analysis,Análisis de órdenes de compra,
From and To Dates are required.,Las fechas desde y hasta son obligatorias.,
To Date cannot be before From Date.,Hasta la fecha no puede ser anterior a Desde la fecha.,
Qty to Bill,Cantidad a facturar,
Group by Purchase Order,Agrupar por orden de compra,
 Purchase Value,Valor de la compra,
Total Received Amount,Monto total recibido,
Quality Inspection Summary,Resumen de inspección de calidad,
 Quoted Amount,Monto cotizado,
Lead Time (Days),Plazo de ejecución (días),
Include Expired,Incluir caducado,
Requested Items to Order and Receive,Artículos solicitados para ordenar y recibir,
Sales Order Analysis,Análisis de órdenes de venta,
Amount Delivered,Cantidad entregada,
Delay (in Days),Retraso (en días),
Group by Sales Order,Agrupar por orden de venta,
 Sales Value,Valor de las ventas,
Stock Qty vs Serial No Count,Cantidad de stock vs serie sin recuento,
Serial No Count,Serie sin recuento,
Work Order Summary,Resumen de la orden de trabajo,
Produce Qty,Producir Cant.,
Lead Time (in mins),Plazo de ejecución (en minutos),
Charts Based On,Gráficos basados en,
YouTube Interactions,Interacciones de YouTube,
Published Date,Fecha de Publicación,
Barnch,Barnch,
Select a Company,Seleccione una empresa,
Opportunity {0} created,Oportunidad {0} creada,
Kindly select the company first,Por favor seleccione primero la empresa,
Please enter From Date and To Date to generate JSON,Ingrese la fecha desde y hasta la fecha para generar JSON,
Download DATEV File,Descargar archivo DATEV,
Numero has not set in the XML file,Numero no se ha establecido en el archivo XML,
Inward Supplies(liable to reverse charge),Suministros internos (sujeto a cargo revertido),
This is based on the course schedules of this Instructor,Esto se basa en los horarios de los cursos de este Instructor.,
Course and Assessment,Curso y evaluación,
Course {0} has been added to all the selected programs successfully.,El curso {0} se ha añadido correctamente a todos los programas seleccionados.,
Programs updated,Programas actualizados,
Program and Course,Programa y curso,
{0} or {1} is mandatory,{0} o {1} es obligatorio,
Mandatory Fields,Campos obligatorios,
Student {0}: {1} does not belong to Student Group {2},Estudiante {0}: {1} no pertenece al grupo de estudiantes {2},
Student Attendance record {0} already exists against the Student {1},El registro de asistencia del estudiante {0} ya existe contra el estudiante {1},
Course and Fee,Curso y tarifa,
Not eligible for the admission in this program as per Date Of Birth,No elegible para la admisión en este programa según la fecha de nacimiento,
Topic {0} has been added to all the selected courses successfully.,El tema {0} se ha agregado correctamente a todos los cursos seleccionados.,
Courses updated,Cursos actualizados,
{0} {1} has been added to all the selected topics successfully.,{0} {1} se agregó correctamente a todos los temas seleccionados.,
Topics updated,Temas actualizados,
Academic Term and Program,Término académico y programa,
Please remove this item and try to submit again or update the posting time.,Elimine este elemento e intente enviarlo de nuevo o actualice la hora de publicación.,
Failed to Authenticate the API key.,Error al autenticar la clave de API.,
Invalid Credentials,Credenciales no válidas,
URL can only be a string,La URL solo puede ser una cadena,
"Here is your webhook secret, this will be shown to you only once.","Aquí está su secreto de webhook, esto se le mostrará solo una vez.",
The payment for this membership is not paid. To generate invoice fill the payment details,El pago de esta membresía no se paga. Para generar factura complete los detalles de pago,
An invoice is already linked to this document,Ya hay una factura vinculada a este documento,
No customer linked to member {},Ningún cliente vinculado al miembro {},
You need to set <b>Debit Account</b> in Membership Settings,<b>Debe</b> configurar una <b>cuenta de débito</b> en la configuración de membresía,
You need to set <b>Default Company</b> for invoicing in Membership Settings,Debe configurar la <b>empresa predeterminada</b> para la facturación en la configuración de membresía,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Debe habilitar <b>Enviar correo electrónico</b> de confirmación en la configuración de membresía,
Error creating membership entry for {0},Error al crear la entrada de membresía para {0},
A customer is already linked to this Member,Un cliente ya está vinculado a este miembro,
End Date must not be lesser than Start Date,La fecha de finalización no debe ser menor que la fecha de inicio,
Employee {0} already has Active Shift {1}: {2},El empleado {0} ya tiene turno activo {1}: {2},
 from {0},de {0},
 to {0},a {0},
Please set {0} for the Employee or for Department: {1},Configure {0} para el empleado o para el departamento: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Incorporación de empleados: {0} ya es para el solicitante de empleo: {1},
Asset Value Analytics,Análisis de valor de activos,
Category-wise Asset Value,Valor del activo por categoría,
Total Assets,Los activos totales,
New Assets (This Year),Nuevos activos (este año),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Fila # {}: la fecha de contabilización de la depreciación no debe ser igual a la fecha de disponibilidad para uso.,
Incorrect Date,Fecha incorrecta,
Invalid Gross Purchase Amount,Importe de compra bruta no válido,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Hay mantenimiento activo o reparaciones contra el activo. Debes completarlos todos antes de cancelar el activo.,
% Complete,% Completo,
Back to Course,De vuelta al curso,
Finish Topic,Terminar tema,
Mins,Minutos,
by,por,
Back to,De regreso,
Enrolling...,Inscribiéndose ...,
You have successfully enrolled for the program ,Te has inscrito con éxito en el programa,
Enrolled,Inscrito,
Watch Intro,Ver introducción,
We're here to help!,¡Estamos aquí para ayudar!,
Frequently Read Articles,Artículos leídos con frecuencia,
Please set a default company address,Establezca una dirección de empresa predeterminada,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} no es un estado válido. Busque errores tipográficos o ingrese el código ISO de su estado.,
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,Se produjo un error al analizar el plan de cuentas: asegúrese de que no haya dos cuentas con el mismo nombre,
Plaid invalid request error,Error de solicitud de tela escocesa no válida,
Please check your Plaid client ID and secret values,Verifique su ID de cliente de Plaid y sus valores secretos,
Bank transaction creation error,Error de creación de transacción bancaria,
Unit of Measurement,Unidad de medida,
Fiscal Year {0} Does Not Exist,El año fiscal {0} no existe,
Row # {0}: Returned Item {1} does not exist in {2} {3},Fila n.º {0}: el artículo devuelto {1} no existe en {2} {3},
Valuation type charges can not be marked as Inclusive,Los cargos por tipo de valoración no se pueden marcar como inclusivos,
You do not have permissions to {} items in a {}.,No tienes permisos para {} elementos en un {}.,
Insufficient Permissions,Permisos insuficientes,
You are not allowed to update as per the conditions set in {} Workflow.,No se le permite actualizar según las condiciones establecidas en {} Flujo de trabajo.,
Expense Account Missing,Falta la cuenta de gastos,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} no es un valor válido para el atributo {1} del artículo {2}.,
Invalid Value,Valor no válido,
The value {0} is already assigned to an existing Item {1}.,El valor {0} ya está asignado a un artículo existente {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Para continuar con la edición de este valor de atributo, habilite {0} en Configuración de variantes de artículo.",
Edit Not Allowed,Editar no permitido,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Fila n.º {0}: el artículo {1} ya se recibió en su totalidad en la orden de compra {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},No puede crear ni cancelar ningún asiento contable dentro del período contable cerrado {0},
POS Invoice should have {} field checked.,La factura de POS debe tener el campo {} marcado.,
Invalid Item,Artículo no válido,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Fila # {}: no puede agregar cantidades positivas en una factura de devolución. Quite el artículo {} para completar la devolución.,
The selected change account {} doesn't belongs to Company {}.,La cuenta de cambio seleccionada {} no pertenece a la empresa {}.,
Atleast one invoice has to be selected.,Se debe seleccionar al menos una factura.,
Payment methods are mandatory. Please add at least one payment method.,Los métodos de pago son obligatorios. Agregue al menos un método de pago.,
Please select a default mode of payment,Seleccione una forma de pago predeterminada,
You can only select one mode of payment as default,Solo puede seleccionar un modo de pago por defecto,
Missing Account,Cuenta faltante,
Customers not selected.,Clientes no seleccionados.,
Statement of Accounts,Estado de cuentas,
Ageing Report Based On ,Informe de envejecimiento basado en,
Please enter distributed cost center,Ingrese el centro de costos distribuido,
Total percentage allocation for distributed cost center should be equal to 100,La asignación porcentual total para el centro de costos distribuido debe ser igual a 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,No se puede habilitar el centro de costos distribuido para un centro de costos ya asignado en otro centro de costos distribuido,
Parent Cost Center cannot be added in Distributed Cost Center,El centro de costos principal no se puede agregar en el centro de costos distribuido,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,No se puede agregar un centro de costos distribuidos en la tabla de asignación de centros de costos distribuidos.,
Cost Center with enabled distributed cost center can not be converted to group,El centro de costos con el centro de costos distribuido habilitado no se puede convertir en grupo,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,El centro de coste ya asignado en un centro de coste distribuido no se puede convertir a grupo,
Trial Period Start date cannot be after Subscription Start Date,La fecha de inicio del período de prueba no puede ser posterior a la fecha de inicio de la suscripción,
Subscription End Date must be after {0} as per the subscription plan,La fecha de finalización de la suscripción debe ser posterior al {0} según el plan de suscripción.,
Subscription End Date is mandatory to follow calendar months,La fecha de finalización de la suscripción es obligatoria para seguir los meses calendario,
Row #{}: POS Invoice {} is not against customer {},Fila # {}: Factura de punto de venta {} no es contra el cliente {},
Row #{}: POS Invoice {} is not submitted yet,Fila # {}: la factura de POS {} aún no se envió,
Row #{}: POS Invoice {} has been {},Fila # {}: Factura de punto de venta {} ha sido {},
No Supplier found for Inter Company Transactions which represents company {0},No se encontró ningún proveedor para transacciones entre empresas que represente a la empresa {0},
No Customer found for Inter Company Transactions which represents company {0},No se encontró ningún cliente para transacciones entre empresas que representen a la empresa {0},
Invalid Period,Período no válido,
Selected POS Opening Entry should be open.,La entrada de apertura de POS seleccionada debe estar abierta.,
Invalid Opening Entry,Entrada de apertura no válida,
Please set a Company,Establezca una empresa,
"Sorry, this coupon code's validity has not started","Lo sentimos, la validez de este código de cupón no ha comenzado",
"Sorry, this coupon code's validity has expired","Lo sentimos, la validez de este código de cupón ha expirado",
"Sorry, this coupon code is no longer valid","Lo sentimos, este código de cupón ya no es válido",
For the 'Apply Rule On Other' condition the field {0} is mandatory,"Para la condición &quot;Aplicar regla a otros&quot;, el campo {0} es obligatorio.",
{1} Not in Stock,{1} No disponible,
Only {0} in Stock for item {1},Solo {0} en stock para el artículo {1},
Please enter a coupon code,Ingrese un código de cupón,
Please enter a valid coupon code,Ingrese un código de cupón válido,
Invalid Child Procedure,Procedimiento de niño no válido,
Import Italian Supplier Invoice.,Importar factura de proveedor italiano.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.","Tasa de valoración para el artículo {0}, se requiere para realizar asientos contables para {1} {2}.",
 Here are the options to proceed:,Estas son las opciones para 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 el artículo está realizando transacciones como un artículo de tasa de valoración cero en esta entrada, habilite &quot;Permitir tasa de valoración cero&quot; en la {0} tabla de artículos.",
"If not, you can Cancel / Submit this entry ","De lo contrario, puede cancelar / enviar esta entrada",
 performing either one below:,realizando cualquiera de los siguientes:,
Create an incoming stock transaction for the Item.,Cree una transacción de stock entrante para el artículo.,
Mention Valuation Rate in the Item master.,Mencione Tasa de valoración en el maestro de artículos.,
Valuation Rate Missing,Falta la tasa de valoración,
Serial Nos Required,Se requieren números de serie,
Quantity Mismatch,Discrepancia de cantidad,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Reponga artículos y actualice la lista de selección para continuar. Para descontinuar, cancele la Lista de selección.",
Out of Stock,Agotado,
{0} units of Item {1} is not available.,Las {0} unidades del artículo {1} no están disponibles.,
Item for row {0} does not match Material Request,El artículo de la fila {0} no coincide con la solicitud de material,
Warehouse for row {0} does not match Material Request,El almacén de la fila {0} no coincide con la solicitud de material,
Accounting Entry for Service,Entrada contable para servicio,
All items have already been Invoiced/Returned,Todos los artículos ya han sido facturados / devueltos,
All these items have already been Invoiced/Returned,Todos estos artículos ya han sido facturados / devueltos,
Stock Reconciliations,Reconciliaciones de stock,
Merge not allowed,Fusionar no permitido,
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.,Los siguientes atributos eliminados existen en las variantes pero no en la plantilla. Puede eliminar las variantes o mantener los atributos en la plantilla.,
Variant Items,Elementos variantes,
Variant Attribute Error,Error de atributo de variante,
The serial no {0} does not belong to item {1},El número de serie {0} no pertenece al artículo {1},
There is no batch found against the {0}: {1},No se ha encontrado ningún lote en {0}: {1},
Completed Operation,Operación completada,
Work Order Analysis,Análisis de órdenes de trabajo,
Quality Inspection Analysis,Análisis de inspección de calidad,
Pending Work Order,Orden de trabajo pendiente,
Last Month Downtime Analysis,Análisis del tiempo de inactividad del mes pasado,
Work Order Qty Analysis,Análisis de cantidad de órdenes de trabajo,
Job Card Analysis,Análisis de la tarjeta de trabajo,
Monthly Total Work Orders,Órdenes de trabajo totales mensuales,
Monthly Completed Work Orders,Órdenes de trabajo mensuales completadas,
Ongoing Job Cards,Tarjetas de trabajo en curso,
Monthly Quality Inspections,Inspecciones de calidad mensuales,
(Forecast),(Pronóstico),
Total Demand (Past Data),Demanda total (datos anteriores),
Total Forecast (Past Data),Pronóstico total (datos anteriores),
Total Forecast (Future Data),Pronóstico total (datos futuros),
Based On Document,Basado en documento,
Based On Data ( in years ),Basado en datos (en años),
Smoothing Constant,Constante de suavizado,
Please fill the Sales Orders table,Por favor complete la tabla de Órdenes de Venta,
Sales Orders Required,Órdenes de venta requeridas,
Please fill the Material Requests table,Complete la tabla de solicitudes de material,
Material Requests Required,Solicitudes de material requeridas,
Items to Manufacture are required to pull the Raw Materials associated with it.,Los artículos a fabricar están obligados a extraer las materias primas asociadas.,
Items Required,Elementos requeridos,
Operation {0} does not belong to the work order {1},La operación {0} no pertenece a la orden de trabajo {1},
Print UOM after Quantity,Imprimir UOM después de Cantidad,
Set default {0} account for perpetual inventory for non stock items,Establecer la cuenta {0} predeterminada para el inventario permanente de los artículos que no están en stock,
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Fila n.º {0}: el elemento secundario no debe ser un paquete de productos. Elimine el elemento {1} y guarde,
Credit limit reached for customer {0},Se alcanzó el límite de crédito para el cliente {0},
Could not auto create Customer due to the following missing mandatory field(s):,No se pudo crear automáticamente el Cliente debido a que faltan los siguientes campos obligatorios:,
Please create Customer from Lead {0}.,Cree un cliente a partir de un cliente potencial {0}.,
Mandatory Missing,Falta obligatoria,
From Date can not be greater than To Date.,Desde la fecha no puede ser mayor que hasta la fecha.,
Row #{0}: Please enter the result value for {1},Fila # {0}: ingrese el valor de resultado para {1},
Mandatory Results,Resultados obligatorios,
Sales Invoice or Patient Encounter is required to create Lab Tests,Se requiere una factura de venta o un encuentro con el paciente para crear pruebas de laboratorio,
Insufficient Data,Datos insuficientes,
Lab Test(s) {0} created successfully,Las pruebas de laboratorio {0} se crearon correctamente,
Test :,Prueba :,
Sample Collection {0} has been created,Se ha creado la colección de muestra {0},
Normal Range: ,Rango normal:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Fila # {0}: la fecha y hora de salida no puede ser menor que la fecha y hora de entrada,
"Missing required details, did not create Inpatient Record","Faltan detalles obligatorios, no se creó el registro de paciente hospitalizado",
Unbilled Invoices,Facturas no facturadas,
Standard Selling Rate should be greater than zero.,La tasa de venta estándar debe ser mayor que cero.,
Conversion Factor is mandatory,El factor de conversión es obligatorio,
Row #{0}: Conversion Factor is mandatory,Fila # {0}: el factor de conversión es obligatorio,
Sample Quantity cannot be negative or 0,La cantidad de muestra no puede ser negativa o 0,
Invalid Quantity,Cantidad inválida,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Establezca los valores predeterminados para el grupo de clientes, el territorio y la lista de precios de venta en la configuración de ventas.",
{0} on {1},{0} en {1},
{0} with {1},{0} con {1},
Appointment Confirmation Message Not Sent,Mensaje de confirmación de cita no enviado,
"SMS not sent, please check SMS Settings","SMS no enviado, compruebe la configuración de SMS",
Healthcare Service Unit Type cannot have both {0} and {1},El tipo de unidad de servicio sanitario no puede tener {0} y {1},
Healthcare Service Unit Type must allow atleast one among {0} and {1},El tipo de unidad de servicio sanitario debe permitir al menos uno entre {0} y {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Establezca el tiempo de respuesta y el tiempo de resolución para la prioridad {0} en la fila {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,El tiempo de respuesta para la {0} prioridad en la fila {1} no puede ser mayor que el tiempo de resolución.,
{0} is not enabled in {1},{0} no está habilitado en {1},
Group by Material Request,Agrupar por solicitud de material,
Email Sent to Supplier {0},Correo electrónico enviado al proveedor {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","El acceso a la solicitud de cotización del portal está deshabilitado. Para permitir el acceso, habilítelo en la configuración del portal.",
Supplier Quotation {0} Created,Cotización de proveedor {0} creada,
Valid till Date cannot be before Transaction Date,La fecha válida hasta la fecha no puede ser anterior a la fecha de la transacción,
Unlink Advance Payment on Cancellation of Order,Desvincular el pago por adelantado en la cancelación de un pedido,
"Simple Python Expression, Example: territory != 'All Territories'","Expresión simple de Python, ejemplo: territorio! = &#39;Todos los territorios&#39;",
Sales Contributions and Incentives,Contribuciones e incentivos de ventas,
Sourced by Supplier,Obtenido por proveedor,
Total weightage assigned should be 100%.<br>It is {0},El peso total asignado debe ser del 100%.<br> Es {0},
Account {0} exists in parent company {1}.,La cuenta {0} existe en la empresa matriz {1}.,
"To overrule this, enable '{0}' in company {1}","Para anular esto, habilite &quot;{0}&quot; en la empresa {1}",
Invalid condition expression,Expresión de condición no válida,
Please Select a Company First,Primero seleccione una empresa,
Please Select Both Company and Party Type First,Primero seleccione tanto la empresa como el tipo de partido,
Provide the invoice portion in percent,Proporcione la parte de la factura en porcentaje,
Give number of days according to prior selection,Dar número de días según selección previa,
Email Details,Detalles de correo electrónico,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Seleccione un saludo para el receptor. Por ejemplo, Sr., Sra., Etc.",
Preview Email,Vista previa del correo electrónico,
Please select a Supplier,Seleccione un proveedor,
Supplier Lead Time (days),Plazo de ejecución del proveedor (días),
"Home, Work, etc.","Hogar, trabajo, etc.",
Exit Interview Held On,Entrevista de salida retenida,
Sets 'Target Warehouse' in each row of the Items table.,Establece &#39;Almacén de destino&#39; en cada fila de la tabla Artículos.,
Sets 'Source Warehouse' in each row of the Items table.,Establece &#39;Almacén de origen&#39; en cada fila de la tabla Artículos.,
POS Register,Registro POS,
"Can not filter based on POS Profile, if grouped by POS Profile","No se puede filtrar según el perfil de POS, si está agrupado por perfil de POS",
"Can not filter based on Customer, if grouped by Customer","No se puede filtrar según el Cliente, si está agrupado por Cliente",
"Can not filter based on Cashier, if grouped by Cashier","No se puede filtrar según el cajero, si está agrupado por cajero",
Payment Method,Método de pago,
"Can not filter based on Payment Method, if grouped by Payment Method","No se puede filtrar según el método de pago, si está agrupado por método de pago",
Supplier Quotation Comparison,Comparación de cotizaciones de proveedores,
Price per Unit (Stock UOM),Precio por unidad (UOM de stock),
Group by Supplier,Agrupar por proveedor,
Group by Item,Agrupar por artículo,
Remember to set {field_label}. It is required by {regulation}.,Recuerde configurar {field_label}. Es requerido por {regulación}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},La fecha de inscripción no puede ser anterior a la fecha de inicio del año académico {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},La fecha de inscripción no puede ser posterior a la fecha de finalización del período académico {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},La fecha de inscripción no puede ser anterior a la fecha de inicio del período académico {0},
Future Posting Not Allowed,Publicaciones futuras no permitidas,
"To enable Capital Work in Progress Accounting, ","Para habilitar la contabilidad del trabajo de capital en curso,",
you must select Capital Work in Progress Account in accounts table,debe seleccionar Cuenta Capital Work in Progress en la tabla de cuentas,
You can also set default CWIP account in Company {},También puede configurar una cuenta CWIP predeterminada en la empresa {},
The Request for Quotation can be accessed by clicking on the following button,Se puede acceder a la Solicitud de Cotización haciendo clic en el siguiente botón,
Regards,Saludos,
Please click on the following button to set your new password,Haga clic en el siguiente botón para establecer su nueva contraseña,
Update Password,Actualiza contraseña,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Fila # {}: la tasa de venta del artículo {} es menor que su {}. La venta {} debe ser al menos {},
You can alternatively disable selling price validation in {} to bypass this validation.,"Alternativamente, puede deshabilitar la validación del precio de venta en {} para omitir esta validación.",
Invalid Selling Price,Precio de venta no válido,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,La dirección debe estar vinculada a una empresa. Agregue una fila para Compañía en la tabla Vínculos.,
Company Not Linked,Empresa no vinculada,
Import Chart of Accounts from CSV / Excel files,Importar plan de cuentas desde archivos CSV / Excel,
Completed Qty cannot be greater than 'Qty to Manufacture',La cantidad completa no puede ser mayor que la &#39;Cantidad para fabricar&#39;,
"Row {0}: For Supplier {1}, Email Address is Required to send an email","Fila {0}: para el proveedor {1}, se requiere la dirección de correo electrónico para enviar un correo electrónico.",
"If enabled, the system will post accounting entries for inventory automatically","Si está habilitado, el sistema registrará entradas contables para el inventario automáticamente",
Accounts Frozen Till Date,Cuentas congeladas hasta la fecha,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Los asientos contables están congelados hasta esta fecha. Nadie puede crear o modificar entradas excepto los usuarios con el rol especificado a continuación,
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Función permitida para configurar cuentas congeladas y editar entradas congeladas,
Address used to determine Tax Category in transactions,Dirección utilizada para determinar la categoría fiscal en las transacciones,
"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 porcentaje que se le permite facturar más contra la cantidad solicitada. Por ejemplo, si el valor del pedido es de $ 100 para un artículo y la tolerancia se establece en el 10%, entonces puede facturar hasta $ 110",
This role is allowed to submit transactions that exceed credit limits,Este rol puede enviar transacciones que excedan los límites de crédito.,
"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;Meses&quot;, se registrará una cantidad fija como ingreso o gasto diferido para cada mes, independientemente de la cantidad de días en un mes. Se prorrateará si los ingresos o gastos diferidos no se registran durante un mes completo.",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Si no se marca esta opción, se crearán entradas directas de libro mayor para registrar los ingresos o gastos diferidos",
Show Inclusive Tax in Print,Mostrar impuestos incluidos en la impresión,
Only select this if you have set up the Cash Flow Mapper documents,Solo seleccione esta opción si ha configurado los documentos de Cash Flow Mapper,
Payment Channel,Canal de pago,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,¿Se requiere una orden de compra para la creación de facturas y recibos de compra?,
Is Purchase Receipt Required for Purchase Invoice Creation?,¿Se requiere un recibo de compra para la creación de una factura de compra?,
Maintain Same Rate Throughout the Purchase Cycle,Mantenga la misma tasa durante todo el ciclo de compra,
Allow Item To Be Added Multiple Times in a Transaction,Permitir que el artículo se agregue varias veces en una transacción,
Suppliers,Proveedores,
Send Emails to Suppliers,Enviar correos electrónicos a proveedores,
Select a Supplier,Seleccione un proveedor,
Cannot mark attendance for future dates.,No se puede marcar la asistencia para fechas futuras.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},¿Quieres actualizar la asistencia?<br> Presente: {0}<br> Ausente: {1},
Mpesa Settings,Configuración de Mpesa,
Initiator Name,Nombre del iniciador,
Till Number,Hasta el número,
Sandbox,Salvadera,
 Online PassKey,PassKey en línea,
Security Credential,Credencial de seguridad,
Get Account Balance,Obtener saldo de cuenta,
Please set the initiator name and the security credential,Establezca el nombre del iniciador y la credencial de seguridad,
Inpatient Medication Entry,Entrada de medicación para pacientes hospitalizados,
HLC-IME-.YYYY.-,HLC-IME-.YYYY.-,
Item Code (Drug),Código de artículo (medicamento),
Medication Orders,Órdenes de medicación,
Get Pending Medication Orders,Obtenga pedidos de medicamentos pendientes,
Inpatient Medication Orders,Órdenes de medicamentos para pacientes hospitalizados,
Medication Warehouse,Almacén de medicamentos,
Warehouse from where medication stock should be consumed,Almacén desde donde se debe consumir el stock de medicamentos,
Fetching Pending Medication Orders,Obtención de pedidos de medicamentos pendientes,
Inpatient Medication Entry Detail,Detalle de entrada de medicación para pacientes hospitalizados,
Medication Details,Detalles de la medicación,
Drug Code,Código de drogas,
Drug Name,Nombre de la droga,
Against Inpatient Medication Order,Contra la orden de medicación para pacientes hospitalizados,
Against Inpatient Medication Order Entry,Contra la entrada de pedidos de medicamentos para pacientes hospitalizados,
Inpatient Medication Order,Orden de medicación para pacientes hospitalizados,
HLC-IMO-.YYYY.-,HLC-IMO-.YYYY.-,
Total Orders,Pedidos totales,
Completed Orders,Pedidos completados,
Add Medication Orders,Agregar pedidos de medicamentos,
Adding Order Entries,Agregar entradas de pedido,
{0} medication orders completed,{0} pedidos de medicamentos completados,
{0} medication order completed,{0} pedido de medicamentos completado,
Inpatient Medication Order Entry,Entrada de pedidos de medicamentos para pacientes hospitalizados,
Is Order Completed,¿Se completó el pedido?,
Employee Records to Be Created By,Registros de empleados que serán creados por,
Employee records are created using the selected field,Los registros de empleados se crean utilizando el campo seleccionado,
Don't send employee birthday reminders,No envíe recordatorios de cumpleaños a los empleados,
Restrict Backdated Leave Applications,Restringir las solicitudes de permisos retroactivos,
Sequence ID,ID de secuencia,
Sequence Id,ID de secuencia,
Allow multiple material consumptions against a Work Order,Permitir múltiples consumos de material contra una orden de trabajo,
Plan time logs outside Workstation working hours,Planifique registros de tiempo fuera del horario laboral de la estación de trabajo,
Plan operations X days in advance,Planifique las operaciones con X días de anticipación,
Time Between Operations (Mins),Tiempo entre operaciones (minutos),
Default: 10 mins,Predeterminado: 10 minutos,
Overproduction for Sales and Work Order,Sobreproducción para ventas y órdenes de trabajo,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Actualice el costo de la lista de materiales automáticamente a través del programador, según la última tasa de valoración / tasa de lista de precios / tasa de última compra de materias primas",
Purchase Order already created for all Sales Order items,Orden de compra ya creada para todos los artículos de orden de venta,
Select Items,Seleccionar articulos,
Against Default Supplier,Contra proveedor predeterminado,
Auto close Opportunity after the no. of days mentioned above,Oportunidad de cierre automático después del no. de los días mencionados anteriormente,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,¿Se requiere una orden de venta para la creación de facturas de venta y notas de entrega?,
Is Delivery Note Required for Sales Invoice Creation?,¿Se requiere una nota de entrega para la creación de facturas de venta?,
How often should Project and Company be updated based on Sales Transactions?,¿Con qué frecuencia se deben actualizar el proyecto y la empresa en función de las transacciones de ventas?,
Allow User to Edit Price List Rate in Transactions,Permitir al usuario editar la tarifa de lista de precios en las transacciones,
Allow Item to Be Added Multiple Times in a Transaction,Permitir que el artículo se agregue varias veces en una transacción,
Allow Multiple Sales Orders Against a Customer's Purchase Order,Permitir múltiples órdenes de venta contra la orden de compra de un cliente,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Validar el precio de venta del artículo frente a la tasa de compra o la tasa de valoración,
Hide Customer's Tax ID from Sales Transactions,Ocultar el número de identificación fiscal del cliente de las transacciones de ventas,
"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 porcentaje que se le permite recibir o entregar más en comparación con la cantidad solicitada. Por ejemplo, si ha pedido 100 unidades y su asignación es del 10%, se le permite recibir 110 unidades.",
Action If Quality Inspection Is Not Submitted,Acción si no se envía la inspección de calidad,
Auto Insert Price List Rate If Missing,Tarifa de lista de precios de inserción automática si falta,
Automatically Set Serial Nos Based on FIFO,Establecer números de serie automáticamente basados en FIFO,
Set Qty in Transactions Based on Serial No Input,Establecer la cantidad en transacciones según la entrada sin serie,
Raise Material Request When Stock Reaches Re-order Level,Aumente la solicitud de material cuando el stock alcance el nivel de pedido,
Notify by Email on Creation of Automatic Material Request,Notificar por correo electrónico sobre la creación de una solicitud de material automática,
Allow Material Transfer from Delivery Note to Sales Invoice,Permitir transferencia de material de la nota de entrega a la factura de venta,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Permitir la transferencia de material desde el recibo de compra a la factura de compra,
Freeze Stocks Older Than (Days),Congelar existencias anteriores a (días),
Role Allowed to Edit Frozen Stock,Función permitida para editar stock congelado,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,La cantidad no asignada de Entrada de pago {0} es mayor que la cantidad no asignada de la transacción bancaria,
Payment Received,Pago recibido,
Attendance cannot be marked outside of Academic Year {0},La asistencia no se puede marcar fuera del año académico {0},
Student is already enrolled via Course Enrollment {0},El estudiante ya está inscrito a través de la inscripción al curso {0},
Attendance cannot be marked for future dates.,La asistencia no se puede marcar para fechas futuras.,
Please add programs to enable admission application.,Agregue programas para habilitar la solicitud de admisión.,
The following employees are currently still reporting to {0}:,Los siguientes empleados todavía están reportando a {0}:,
Please make sure the employees above report to another Active employee.,Asegúrese de que los empleados anteriores denuncien a otro empleado activo.,
Cannot Relieve Employee,No se puede relevar al empleado,
Please enter {0},Ingrese {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Seleccione otro método de pago. Mpesa no admite transacciones en la moneda &#39;{0}&#39;,
Transaction Error,Error de transacción,
Mpesa Express Transaction Error,Error de transacción de Mpesa Express,
"Issue detected with Mpesa configuration, check the error logs for more details","Problema detectado con la configuración de Mpesa, consulte los registros de errores para obtener más detalles",
Mpesa Express Error,Error de Mpesa Express,
Account Balance Processing Error,Error de procesamiento del saldo de la cuenta,
Please check your configuration and try again,Verifique su configuración e intente nuevamente,
Mpesa Account Balance Processing Error,Error de procesamiento del saldo de la cuenta de Mpesa,
Balance Details,Detalles del saldo,
Current Balance,Saldo actual,
Available Balance,Saldo disponible,
Reserved Balance,Saldo reservado,
Uncleared Balance,Saldo no liquidado,
Payment related to {0} is not completed,El pago relacionado con {0} no se completó,
Row #{}: Item Code: {} is not available under warehouse {}.,Fila # {}: Código de artículo: {} no está disponible en el almacén {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Fila # {}: la cantidad de existencias no es suficiente para el código de artículo: {} debajo del almacén {}. Cantidad disponible {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Fila # {}: seleccione un número de serie y un lote contra el artículo: {} o elimínelo para completar la transacción.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Fila # {}: No se ha seleccionado ningún número de serie para el artículo: {}. Seleccione uno o elimínelo para completar la transacción.,
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Fila # {}: No se seleccionó ningún lote para el artículo: {}. Seleccione un lote o elimínelo para completar la transacción.,
Payment amount cannot be less than or equal to 0,El monto del pago no puede ser menor o igual a 0,
Please enter the phone number first,Primero ingrese el número de teléfono,
Row #{}: {} {} does not exist.,Fila # {}: {} {} no existe.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Fila # {0}: {1} es obligatorio para crear las {2} facturas de apertura.,
You had {} errors while creating opening invoices. Check {} for more details,Tuvo {} errores al crear facturas de apertura. Consulte {} para obtener más detalles,
Error Occured,Ocurrió un error,
Opening Invoice Creation In Progress,Creación de factura de apertura en curso,
Creating {} out of {} {},Creando {} a partir de {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,(Número de serie: {0}) no se puede consumir ya que está reservado para cumplir con el pedido de venta {1}.,
Item {0} {1},Elemento {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,La última transacción de existencias para el artículo {0} en el almacén {1} fue el {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Las transacciones de stock para el artículo {0} en el almacén {1} no se pueden contabilizar antes de esta hora.,
Posting future stock transactions are not allowed due to Immutable Ledger,No se permite la contabilización de transacciones de stock futuras debido al Libro mayor inmutable,
A BOM with name {0} already exists for item {1}.,Ya existe una lista de materiales con el nombre {0} para el artículo {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} ¿Cambió el nombre del elemento? Póngase en contacto con el administrador / soporte técnico,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},En la fila n.º {0}: el ID de secuencia {1} no puede ser menor que el ID de secuencia de fila anterior {2},
The {0} ({1}) must be equal to {2} ({3}),El {0} ({1}) debe ser igual a {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, complete la operación {1} antes de la operación {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,No se puede garantizar la entrega por número de serie ya que el artículo {0} se agrega con y sin Asegurar entrega por número de serie,
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,El artículo {0} no tiene un número de serie. Solo los artículos serializados pueden tener una entrega basada en el número de serie.,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,No se encontró ninguna lista de materiales activa para el artículo {0}. No se puede garantizar la entrega por número de serie,
No pending medication orders found for selected criteria,No se encontraron pedidos de medicamentos pendientes para los criterios seleccionados,
From Date cannot be after the current date.,Desde la fecha no puede ser posterior a la fecha actual.,
To Date cannot be after the current date.,Hasta la fecha no puede ser posterior a la fecha actual.,
From Time cannot be after the current time.,Desde la hora no puede ser posterior a la hora actual.,
To Time cannot be after the current time.,Hasta la hora no puede ser posterior a la hora actual.,
Stock Entry {0} created and ,Entrada de stock {0} creada y,
Inpatient Medication Orders updated successfully,Los pedidos de medicamentos para pacientes hospitalizados se actualizaron correctamente,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Fila {0}: no se puede crear una entrada de medicación para pacientes hospitalizados contra una orden de medicación para pacientes hospitalizados cancelada {1},
Row {0}: This Medication Order is already marked as completed,Fila {0}: este pedido de medicamento ya está marcado como completado,
Quantity not available for {0} in warehouse {1},Cantidad no disponible para {0} en el almacén {1},
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Habilite Permitir stock negativo en la configuración de stock o cree Entrada de stock para continuar.,
No Inpatient Record found against patient {0},No se encontraron registros de pacientes hospitalizados del paciente {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Ya existe una orden de medicación para pacientes hospitalizados {0} contra el encuentro con el paciente {1}.,
Allow In Returns,Permitir devoluciones,
Hide Unavailable Items,Ocultar elementos no disponibles,
Apply Discount on Discounted Rate,Aplicar descuento sobre tarifa con descuento,
Therapy Plan Template,Plantilla de plan de terapia,
Fetching Template Details,Obteniendo detalles de la plantilla,
Linked Item Details,Detalles del artículo vinculado,
Therapy Types,Tipos de terapia,
Therapy Plan Template Detail,Detalle de la plantilla del plan de terapia,
Non Conformance,No conformidad,
Process Owner,Dueño del proceso,
Corrective Action,Acción correctiva,
Preventive Action,Acción preventiva,
Problem,Problema,
Responsible,Responsable,
Completion By,Finalización por,
Process Owner Full Name,Nombre completo del propietario del proceso,
Right Index,Índice derecho,
Left Index,Índice izquierdo,
Sub Procedure,Subprocedimiento,
Passed,Aprobado,
Print Receipt,Imprimir el recibo,
Edit Receipt,Editar recibo,
Focus on search input,Centrarse en la entrada de búsqueda,
Focus on Item Group filter,Centrarse en el filtro de grupo de artículos,
Checkout Order / Submit Order / New Order,Realizar pedido / Enviar pedido / Nuevo pedido,
Add Order Discount,Agregar descuento de pedido,
Item Code: {0} is not available under warehouse {1}.,Código de artículo: {0} no está disponible en el almacén {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Los números de serie no están disponibles para el artículo {0} en almacén {1}. Intente cambiar de almacén.,
Fetched only {0} available serial numbers.,Solo se obtuvieron {0} números de serie disponibles.,
Switch Between Payment Modes,Cambiar entre modos de pago,
Enter {0} amount.,Ingrese {0} monto.,
You don't have enough points to redeem.,No tienes suficientes puntos para canjear.,
You can redeem upto {0}.,Puede canjear hasta {0}.,
Enter amount to be redeemed.,Ingrese el monto a canjear.,
You cannot redeem more than {0}.,No puede canjear más de {0}.,
Open Form View,Abrir vista de formulario,
POS invoice {0} created succesfully,Factura de punto de venta {0} creada correctamente,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,La cantidad de existencias no es suficiente para el código de artículo: {0} en el almacén {1}. Cantidad disponible {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Número de serie: {0} ya se ha transferido a otra factura de punto de venta.,
Balance Serial No,No de serie de la balanza,
Warehouse: {0} does not belong to {1},Almacén: {0} no pertenece a {1},
Please select batches for batched item {0},Seleccione lotes para el artículo por lotes {0},
Please select quantity on row {0},Seleccione la cantidad en la fila {0},
Please enter serial numbers for serialized item {0},Ingrese los números de serie del artículo serializado {0},
Batch {0} already selected.,Lote {0} ya seleccionado.,
Please select a warehouse to get available quantities,Seleccione un almacén para obtener las cantidades disponibles,
"For transfer from source, selected quantity cannot be greater than available quantity","Para la transferencia desde la fuente, la cantidad seleccionada no puede ser mayor que la cantidad disponible",
Cannot find Item with this Barcode,No se puede encontrar el artículo con este código de barras,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} es obligatorio. Quizás no se crea el registro de cambio de moneda para {1} a {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} ha enviado elementos vinculados a él. Debe cancelar los activos para crear una devolución de compra.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,No se puede cancelar este documento porque está vinculado con el activo enviado {0}. Cancele para continuar.,
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Fila # {}: el número de serie {} ya se ha transferido a otra factura de punto de venta. Seleccione un número de serie válido.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Fila # {}: Los números de serie {} ya se han transferido a otra factura de punto de venta. Seleccione un número de serie válido.,
Item Unavailable,Artículo no disponible,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Fila # {}: No de serie {} no se puede devolver porque no se tramitó en la factura original {},
Please set default Cash or Bank account in Mode of Payment {},Establezca una cuenta bancaria o en efectivo predeterminada en el modo de pago {},
Please set default Cash or Bank account in Mode of Payments {},Establezca la cuenta bancaria o en efectivo predeterminada en el modo de pago {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Asegúrese de que la cuenta {} sea una cuenta de balance. Puede cambiar la cuenta principal a una cuenta de balance o seleccionar una cuenta diferente.,
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Asegúrese de que la {} cuenta sea una cuenta a pagar. Cambie el tipo de cuenta a Pagable o seleccione una cuenta diferente.,
Row {}: Expense Head changed to {} ,Fila {}: la cabeza de gastos cambió a {},
because account {} is not linked to warehouse {} ,porque la cuenta {} no está vinculada al almacén {},
or it is not the default inventory account,o no es la cuenta de inventario predeterminada,
Expense Head Changed,Cabeza de gastos cambiada,
because expense is booked against this account in Purchase Receipt {},porque el gasto se registra en esta cuenta en el recibo de compra {},
as no Purchase Receipt is created against Item {}. ,ya que no se crea ningún recibo de compra para el artículo {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Esto se hace para manejar la contabilidad de los casos en los que el recibo de compra se crea después de la factura de compra.,
Purchase Order Required for item {},Se requiere orden de compra para el artículo {},
To submit the invoice without purchase order please set {} ,"Para enviar la factura sin orden de compra, configure {}",
as {} in {},como en {},
Mandatory Purchase Order,Orden de compra obligatoria,
Purchase Receipt Required for item {},Se requiere recibo de compra para el artículo {},
To submit the invoice without purchase receipt please set {} ,"Para enviar la factura sin el recibo de compra, configure {}",
Mandatory Purchase Receipt,Recibo de compra obligatorio,
POS Profile {} does not belongs to company {},El perfil de POS {} no pertenece a la empresa {},
User {} is disabled. Please select valid user/cashier,El usuario {} está inhabilitado. Seleccione un usuario / cajero válido,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Fila # {}: la factura original {} de la factura de devolución {} es {}.,
Original invoice should be consolidated before or along with the return invoice.,La factura original debe consolidarse antes o junto con la factura de devolución.,
You can add original invoice {} manually to proceed.,Puede agregar la factura original {} manualmente para continuar.,
Please ensure {} account is a Balance Sheet account. ,Asegúrese de que la cuenta {} sea una cuenta de balance.,
You can change the parent account to a Balance Sheet account or select a different account.,Puede cambiar la cuenta principal a una cuenta de balance o seleccionar una cuenta diferente.,
Please ensure {} account is a Receivable account. ,Asegúrese de que la {} cuenta sea una cuenta por cobrar.,
Change the account type to Receivable or select a different account.,Cambie el tipo de cuenta a Cobrar o seleccione una cuenta diferente.,
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} no se puede cancelar ya que se canjearon los puntos de fidelidad ganados. Primero cancele el {} No {},
already exists,ya existe,
POS Closing Entry {} against {} between selected period,Entrada de cierre de POS {} contra {} entre el período seleccionado,
POS Invoice is {},La factura de POS es {},
POS Profile doesn't matches {},El perfil de POS no coincide {},
POS Invoice is not {},La factura de POS no es {},
POS Invoice isn't created by user {},La factura de punto de venta no la crea el usuario {},
Row #{}: {},Fila #{}: {},
Invalid POS Invoices,Facturas POS no válidas,
Please add the account to root level Company - {},Agregue la cuenta a la empresa de nivel raíz - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Al crear la cuenta para la empresa secundaria {0}, no se encontró la cuenta principal {1}. Cree la cuenta principal en el COA correspondiente",
Account Not Found,Cuenta no encontrada,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.","Al crear una cuenta para la empresa secundaria {0}, la cuenta principal {1} se encontró como una cuenta contable.",
Please convert the parent account in corresponding child company to a group account.,Convierta la cuenta principal de la empresa secundaria correspondiente en una cuenta de grupo.,
Invalid Parent Account,Cuenta principal no válida,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.","Solo se permite cambiar el nombre a través de la empresa matriz {0}, para evitar discrepancias.",
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Si {0} {1} cantidades del artículo {2}, el esquema {3} se aplicará al artículo.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Si {0} {1} vale el artículo {2}, el esquema {3} se aplicará al artículo.",
"As the field {0} is enabled, the field {1} is mandatory.","Como el campo {0} está habilitado, el campo {1} es obligatorio.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Como el campo {0} está habilitado, el valor del campo {1} debe ser superior a 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},No se puede entregar el número de serie {0} del artículo {1} ya que está reservado para cumplir con el pedido de cliente {2},
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","Pedido de venta {0} tiene reserva para el artículo {1}, solo puede entregar reservado {1} contra {0}.",
{0} Serial No {1} cannot be delivered,No se puede entregar el {0} número de serie {1},
Row {0}: Subcontracted Item is mandatory for the raw material {1},Fila {0}: el artículo subcontratado es obligatorio para la materia prima {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Como hay suficientes materias primas, la Solicitud de material no es necesaria para Almacén {0}.",
" If you still want to proceed, please enable {0}.","Si aún desea continuar, habilite {0}.",
The item referenced by {0} - {1} is already invoiced,El artículo al que hace referencia {0} - {1} ya está facturado,
Therapy Session overlaps with {0},La sesión de terapia se superpone con {0},
Therapy Sessions Overlapping,Superposición de sesiones de terapia,
Therapy Plans,Planes de terapia,
"Item Code, warehouse, quantity are required on row {0}","El código de artículo, el almacén y la cantidad son obligatorios en la fila {0}",
Get Items from Material Requests against this Supplier,Obtener artículos de solicitudes de material contra este proveedor,
Enable European Access,Habilitar el acceso europeo,
Creating Purchase Order ...,Creando orden 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.","Seleccione un proveedor de los proveedores predeterminados de los artículos a continuación. En la selección, se realizará una orden de compra contra los artículos que pertenecen al proveedor seleccionado únicamente.",
Row #{}: You must select {} serial numbers for item {}.,Fila # {}: debe seleccionar {} números de serie para el artículo {}.,
Add Comment,Agregar comentario,
More...,Más...,
Notes,Notas,
Payment Gateway,Pasarela de Pago,
Payment Gateway Name,Nombre de Pasarela de Pago,
Payments,Pagos.,
Plan Name,Nombre del Plan,
Portal,Portal,
Scan Barcode,Escanear Código de Barras,
Some information is missing,Falta información,
Successful,Exitoso,
Tools,Herramientas,
Use Sandbox,Utilizar Sandbox,
Busy,Ocupado,
Completed By,Completado Por,
Payment Failed,Pago Fallido,
Column {0},Columna {0},
Field Mapping,Mapeo de campo,
Not Specified,No especificado,
Update Type,Tipo de actualización,
Dr,Dr.,
End Time,Hora de finalización,
Fetching...,Atractivo...,
"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.","Parece que hay un problema con la configuración de la banda del servidor. En caso de falla, la cantidad será reembolsada a su cuenta.",
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Parece que alguien le envió a una URL incompleta. Por favor, pídeles que revisen.",
Master,Maestro,
Pay,Pagar,
You can also copy-paste this link in your browser,Usted puede copiar y pegar este enlace en su navegador,
Verified By,Verificado por,
Invalid naming series (. missing) for {0},Serie de nombres no válida (falta.) Para {0},
Phone Number,Número de teléfono,
Account SID,SID de cuenta,
Global Defaults,Predeterminados globales,
Is Mandatory,Es obligatorio,
WhatsApp,WhatsApp,
Make a call,Haz una llamada,
Approve,Aprobar,
Reject,Rechazar,
